# 3D Yazıcı Kalibrasyon Programı Web tabanlı, profesyonel 3D yazıcı kalibrasyon ve G-code üretici programı. ![Version](https://img.shields.io/badge/version-1.0.0-blue.svg) ![License](https://img.shields.io/badge/license-MIT-green.svg) ## 📋 İçindekiler - [Özellikler](#-özellikler) - [Kurulum](#-kurulum) - [Kullanım](#-kullanım) - [Kalibrasyon Türleri](#-kalibrasyon-türleri) - [Teknik Detaylar](#-teknik-detaylar) - [Sık Sorulan Sorular](#-sık-sorulan-sorular) ## ✨ Özellikler ### 🎯 5 Farklı Kalibrasyon Türü - **X Ekseni Kalibrasyonu** - Yatay eksen hassasiyet ayarı - **Y Ekseni Kalibrasyonu** - Derinlik ekseni hassasiyet ayarı - **Z Ekseni Kalibrasyonu** - Dikey eksen hassasiyet ayarı - **Extruder Kalibrasyonu** - Filament akış miktarı ayarı - **Çarpıklık Kalibrasyonu** - XY, XZ, YZ eksenleri çarpıklık düzeltme ### 🔧 Ana Özellikler - ✅ Anlık hesaplama ve sonuç gösterimi - ✅ Otomatik G-code üretimi - ✅ G-code önizleme özelliği - ✅ İndirilebilir .gcode dosyaları - ✅ Firmware komutları ve açıklamaları - ✅ Responsive (mobil uyumlu) tasarım - ✅ Türkçe arayüz - ✅ Kullanım talimatları dahil ## 🚀 Kurulum ### Gereksinimler - Modern bir web tarayıcı (Chrome, Firefox, Safari, Edge) - Web sunucusu (Apache, Nginx, veya basit bir HTTP sunucusu) ### Yöntem 1: Statik HTML Olarak Kullanım 1. **Dosyaları Hazırlayın** ```bash mkdir 3d-printer-calibration cd 3d-printer-calibration ``` 2. **index.html dosyası oluşturun:** ```html 3D Yazıcı Kalibrasyon
``` 3. **app.jsx dosyasına React kodunu yapıştırın** (Artifact'taki kodu kullanın) 4. **Lucide-react ikonları için CDN ekleyin:** ```html ``` 5. **Web sunucunuza yükleyin** ### Yöntem 2: Apache ile Kullanım ```bash # Dosyaları Apache web dizinine kopyalayın sudo cp -r 3d-printer-calibration /var/www/html/ # Tarayıcıdan erişin http://localhost/3d-printer-calibration ``` ### Yöntem 3: Nginx ile Kullanım ```bash # Dosyaları Nginx web dizinine kopyalayın sudo cp -r 3d-printer-calibration /usr/share/nginx/html/ # Tarayıcıdan erişin http://localhost/3d-printer-calibration ``` ### Yöntem 4: Python ile Basit HTTP Sunucusu ```bash # Proje dizininde cd 3d-printer-calibration # Python 3 ile sunucu başlatın python3 -m http.server 8000 # Tarayıcıdan erişin http://localhost:8000 ``` ### Yöntem 5: Node.js ile Basit HTTP Sunucusu ```bash # http-server paketini yükleyin (bir kere) npm install -g http-server # Proje dizininde sunucuyu başlatın http-server -p 8000 # Tarayıcıdan erişin http://localhost:8000 ``` ## 📖 Kullanım ### Genel Ayarlar 1. **Sıcaklık Ayarları** - Tabla Sıcaklığı: Filament tipine göre ayarlayın (PLA: 50-60°C, ABS: 80-110°C) - Nozzle Sıcaklığı: Filament tipine göre ayarlayın (PLA: 190-220°C, ABS: 220-250°C) - Nozzle Çapı: Yazıcınızın nozzle çapını girin (genellikle 0.4mm) ### Kalibrasyon Adımları #### 1️⃣ X/Y/Z Ekseni Kalibrasyonu **Adım 1:** Hedef mesafeyi belirleyin ``` Örnek: 100mm (önerilen) ``` **Adım 2:** Mevcut steps/mm değerini girin ``` Yazıcınızın firmware'inden öğrenin (genellikle M503 komutu ile) Varsayılan değerler: - X/Y: 80 steps/mm - Z: 400 steps/mm ``` **Adım 3:** G-code'u indirin ve yazıcıya gönderin **Adım 4:** Hareketi tamamlandıktan sonra gerçek mesafeyi ölçün ``` Kumpas veya cetvel ile hassas ölçüm yapın ``` **Adım 5:** Ölçülen değeri girin ``` Program otomatik olarak yeni steps/mm değerini hesaplayacak ``` **Adım 6:** Yeni değeri firmware'e uygulayın ```gcode M92 X80.25 ; Yeni X steps/mm değeri M500 ; Ayarları kaydet ``` #### 2️⃣ Extruder Kalibrasyonu **Adım 1:** Filamenti hazırlayın ``` 1. Filamenti nozzle'a yükleyin 2. Extruder girişinden 120mm yukarıya işaret koyun ``` **Adım 2:** Mevcut E steps/mm değerini girin ``` Varsayılan: 93 steps/mm (değişkenlik gösterir) ``` **Adım 3:** G-code'u indirin ve çalıştırın ``` Program 100mm filament ekstrüzyonu yapacak ``` **Adım 4:** Kalan mesafeyi ölçün ``` İşaretten kalan mesafe = 120mm - Ekstrüd edilen miktar Örnek: 20mm kaldı ise, 100mm ekstrüd edildi ``` **Adım 5:** Gerçek ekstrüzyon miktarını girin ``` Ölçülen değer: 100mm ``` **Adım 6:** Yeni E steps/mm değerini uygulayın ```gcode M92 E95.50 ; Yeni E steps/mm değeri M500 ; Ayarları kaydet ``` #### 3️⃣ Çarpıklık Kalibrasyonu **Adım 1:** Test baskısı yapın ``` 100x100mm kalibrasyon karesi bastırın En az 0.2mm katman yüksekliği 2-3 katman yeterli ``` **Adım 2:** Köşegen mesafeleri ölçün ``` AC: Sol üst - Sağ alt köşegen (ideal: 141.4mm) BD: Sağ üst - Sol alt köşegen (ideal: 141.4mm) AD: Dikey köşegen (ideal: 141.4mm) ``` **Adım 3:** Değerleri girin ``` Program otomatik olarak çarpıklık açılarını hesaplayacak ``` **Adım 4:** Düzeltmeyi uygulayın ```gcode M852 I0.0520 J-0.0235 K0.0100 ; Çarpıklık değerleri M500 ; Ayarları kaydet ``` ## 🔬 Kalibrasyon Türleri ### X Ekseni Kalibrasyonu **Amaç:** Yatay (sağ-sol) hareketin hassasiyetini ayarlar **Ne Zaman Gerekir:** - Baskılar istenenden daha geniş/dar çıkıyorsa - X ekseni boyutları tutmuyorsa **Beklenen Sonuç:** ±0.1mm hassasiyet ### Y Ekseni Kalibrasyonu **Amaç:** Derinlik (ön-arka) hareketin hassasiyetini ayarlar **Ne Zaman Gerekir:** - Baskılar istenenden daha derin/sığ çıkıyorsa - Y ekseni boyutları tutmuyorsa **Beklenen Sonuç:** ±0.1mm hassasiyet ### Z Ekseni Kalibrasyonu **Amaç:** Dikey (yukarı-aşağı) hareketin hassasiyetini ayarlar **Ne Zaman Gerekir:** - Katman yükseklikleri tutmuyorsa - Baskılar istenenden daha kısa/uzun çıkıyorsa **Beklenen Sonuç:** ±0.05mm hassasiyet ### Extruder Kalibrasyonu **Amaç:** Doğru miktarda filament akışını sağlar **Ne Zaman Gerekir:** - Aşırı ekstrüzyon (fazla plastik) - Eksik ekstrüzyon (az plastik) - İlk katman problemleri **Beklenen Sonuç:** ±1mm hassasiyet ### Çarpıklık Kalibrasyonu **Amaç:** Eksenlerin birbirine göre açısal sapmasını düzeltir **Ne Zaman Gerekir:** - Dikdörtgen baskılar eğik çıkıyorsa - Köşeler 90° değilse - Montaj problemleri **Beklenen Sonuç:** <0.1° sapma ## 🛠️ Teknik Detaylar ### Hesaplama Formülleri **Steps/mm Hesaplama:** ``` Yeni Steps = (Hedef Mesafe / Ölçülen Mesafe) × Mevcut Steps ``` **Çarpıklık Hesaplama:** ``` Çarpıklık Açısı = arctan((Ölçülen Köşegen - İdeal Köşegen) / 100) × (180 / π) ``` ### Desteklenen G-code Komutları | Komut | Açıklama | |-------|----------| | G28 | Home all axes (tüm eksenleri sıfırla) | | G90 | Absolute positioning (mutlak konumlandırma) | | G1 | Linear move (doğrusal hareket) | | M92 | Set axis steps per unit (eksen adımlarını ayarla) | | M104 | Set extruder temperature (extruder sıcaklığı) | | M140 | Set bed temperature (tabla sıcaklığı) | | M109 | Wait for extruder temperature (extruder sıcaklığını bekle) | | M190 | Wait for bed temperature (tabla sıcaklığını bekle) | | M400 | Wait for moves to finish (hareketleri tamamla) | | M500 | Save settings to EEPROM (ayarları kaydet) | | M852 | Skew correction (çarpıklık düzeltme) | ### Tarayıcı Uyumluluğu | Tarayıcı | Minimum Versiyon | |----------|------------------| | Chrome | 90+ | | Firefox | 88+ | | Safari | 14+ | | Edge | 90+ | ## ❓ Sık Sorulan Sorular ### G-code dosyası neden boş? **Cevap:** JavaScript'in çalışması için dosyaların bir web sunucusu üzerinden sunulması gerekir. Dosyayı direkt olarak açmayın (file://), bir HTTP sunucusu kullanın. ### Hesaplanan değerler çok farklı çıkıyor? **Cevap:** 1. Ölçümlerinizi kontrol edin 2. Yazıcınızın mekaniğini kontrol edin 3. Kayış gerginliğini kontrol edin 4. %10'dan fazla fark varsa mekanik bir sorun olabilir ### Kalibrasyon sonrası baskılar hala tutmuyor? **Cevap:** 1. M500 ile ayarları kaydettiğinizden emin olun 2. Yazıcıyı yeniden başlatın 3. M503 komutu ile değerleri kontrol edin 4. Flow rate (akış oranı) ayarlarını kontrol edin ### Mobil cihazda çalışmıyor? **Cevap:** Program responsive tasarıma sahiptir, ancak G-code indirme mobil tarayıcılarda farklı davranabilir. Masaüstü tarayıcı önerilir. ### Çarpıklık kalibrasyonu destekleniyor mu? **Cevap:** M852 komutu Marlin 2.0+ firmware'lerinde desteklenir. Eski firmware versiyonlarında çalışmayabilir. ## 📝 Notlar - ⚠️ **Kalibrasyon öncesi yazıcınızın mekanik durumunu kontrol edin** - ⚠️ **Her kalibrasyon sonrası M500 ile kaydetmeyi unutmayın** - ⚠️ **Aşırı değişiklikler mekanik sorun işareti olabilir** - ⚠️ **Test baskıları soğuduktan sonra ölçüm yapın** - ⚠️ **Hassas ölçüm için kumpas kullanın** ## 🔄 Güncelleme Geçmişi ### v1.0.0 (2024) - ✨ İlk sürüm - 5 kalibrasyon türü - G-code üretimi - Türkçe arayüz ## 📄 Lisans MIT License - Detaylar için LICENSE dosyasına bakın. ## 🤝 Katkıda Bulunma Bu proje açık kaynaklıdır. Katkılarınızı bekliyoruz! ## 📧 İletişim Sorularınız için issue açabilirsiniz. --- **Made with ❤️ for 3D Printing Community**