Soru:
G kodu satır satır okundu mu?
Arthur Mamou-Mani
2018-11-14 21:40:07 UTC
view on stackexchange narkive permalink

Yazdırılan satır için baskıyı duraklatmak ve geri çekmek için

G4 P4000 G1 F4000 E-50

satırını eklemeye çalışıyorum kuruması için (dikey olarak havada baskı). Yukarıdaki kod çalışıyor mu yoksa satırları atlamalı mıyım yoksa hiç önemli değil mi?

G4 P4000
G1 F4000 E-50

aşağıdaki satır da aynı şeyi yapıyor?

G4 P5000 E-50

Temel olarak, satır başına yalnızca bir "Gx" komutu. Aşağıdaki her şey, komutu değiştiren bir parametre listesidir.
Belki de tam olarak ne yapmak istediğinizi açıklamak için soruyu güncellemelisiniz, ör. başka bir filamanla değiştirmek ister misiniz, ör. duraklama sırasında geri çekilmek için durur musunuz? Şimdi olduğu gibi, baskı duraklar, duraklamadan sonra filamanı geri çekersiniz ve ardından kod satırları arasına yerleştirildiğinde baskı filament olmadan devam eder. Lütfen duraklamanın nerede gerçekleştiğini açıklayın.
Lütfen sorunuzu istenen bilgileri içerecek şekilde [düzenleyin]!
Teşekkürler @0scar ben açıklığa kavuşturdum.
Iki yanıtlar:
0scar
2018-11-14 22:07:03 UTC
view on stackexchange narkive permalink

Evet, G kodu satır satır okunur. G kodu, sayısal bir kontrol programlama dilidir. Temel olarak, makineye belirli bir görevi yapması için sırayla satır satır talimat verir. Yazıcı, satırları sonuna kadar tek tek yürütür.

Yazıcıya beklemesini söylerseniz ( G4 bekleme), önce bekle / bekle işlemini yapar ve filamanı geri çekmek için bir sonraki komutu yürütecek. Bu nedenle, duraklama sırasında filamanı geri çekmek istiyorsanız örnekleriniz işe yaramayacaktır, bunu başarmak istiyorsanız işlemi tersine çevirdiniz.

Örneğin, örneğin, bir duraklama (basit) eklemek için filament değiştiğinde, kafaya belirli bir konuma gitmesi, filamenti çıkarması ve şimdi duraklat / beklet komutunu girmesi talimatını vermelisiniz. Başlığı takmak ve doldurmak için kendinize yeterince zaman verin ve yazdırmaya devam etmek için son konuma geri dönün.

Şunun gibi bir şey ekleyebilirsiniz (örneğin, G1 Zx.xx 'den önce katman değişikliği arasına):

  ... G1 X0 Y0 F2000 ; Baskı kafasının yerini değiştirin G1 F4000 E-50; Filamenti geri çekin G4 P40000; 40 saniye bekleyin G92 E50; Yeni filament bu değerde devam etmelidir ... G1 Zx.xx  

G1 Zx.xx 'den sonra ne olduğuna bağlı olarak, kafayı ayarlamanız gerekebilir G1 X0 Y0 F2000 'den önceki konuma geri dönün.

Duraklama komut dosyalarının / eklentilerin mevcut olduğunu unutmayın. Ultimaker Cura ve ayrıca belirli bellenim için etkinleştirilebilen bir filament değiştirme komutu M600 vardır (bu sizin nihai hedefinizse).

Kullanma Ultimaker Cura'nın bir işlem sonrası eklentisi, duraklatan bir komut dosyası şuna benzer:

 ... G0 X137.692 Y105; TIME_ELAPSED: 707.873599; TÜR: ÖZEL; post işleme ile eklenen kod; komut dosyası: PauseAtHeight.py; akım z: 5; akım yüksekliği: 5.0M83G1 F300 Z6G1 F9000 X190 Y190G1 F300 Z15M104 S0; bekleme sıcaklığıM0; Gerçek duraklamayı yapM109 S200; devam sıcaklığıG1 F300 Z6G1 F9000 X133.423 Y105G1 F9000M82G92 E911.50045; LAYER: 24G0 X137.692 Y105 Z5 ... 

G0 ve G1 'in "taşı" konum talimatları olduğunu unutmayın (yine de farklı bir yolla, hızlı hareket ve doğrusal hareket) . Yakından bakarsanız, duraklamadan sonra yazıcının duraklamadan önce kaldığı XY konumuna geri döndüğünü görürsünüz ( X137.692 Y105 ).


Yan not:
Bazı donanım yazılımı çeşitleri arabelleğe almaya izin verir, ancak her ifade sıralı olarak yürütülür.

Doğru bir şekilde belirttiğiniz gibi, "G0" ve "G01" tam olarak aynı şey değildir ... "G0", hızlı hızda doğrusal enterpolasyon anlamına gelirken "G01", besleme hızında doğrusal enterpolasyon anlamına gelir. OP'nin "G01" e ihtiyacı olacaktır (ilerleme hızında).
Davo
2018-11-14 22:03:54 UTC
view on stackexchange narkive permalink

Bunun, ikinci örneğinizdeki gibi iki satırda olması gerekir:

G4 P4000
G1 F4000 E-50

RepRap'e bakın Daha fazla bilgi için Gcode Wiki. https://reprap.org/wiki/G-code

DÜZENLEME: Gerçekten geri çekmek ve SONRA duraklamak istiyorsanız, tersine çevirin:

G1 F4000 E-50
G4 P4000

Bu işe yaramaz, "G1" bekleme süresinden sonra çalıştırılır, bu yüzden şimdi bekler, filamenti çıkarır ve hemen devam eder, bunu tam tersi şekilde yapmalısınız.
Kesinlikle haklısınız (bekle ve geri çek), ancak yazıcının bu işlemden sonra filamentsiz devam etmesi faydasız olacaktır. Sanırım OP'nin bu dizinin amacının ne olduğunu ve kodunun neresinde olduğunu açıklaması gerekiyor.


Bu Soru-Cevap, otomatik olarak İngilizce dilinden çevrilmiştir.Orijinal içerik, dağıtıldığı cc by-sa 4.0 lisansı için teşekkür ettiğimiz stackexchange'ta mevcuttur.
Loading...