MACH 3'de 4.EKSENE SABİT HATVE NASIL VERİLİR?

omerclk_07

Üye
Katılım
14 Ara 2011
Mesajlar
6
Puanları
1
Yaş
35
Merhaba arkadaşlar,

Mach3'le çalışan 4 eksen mini cnc'mizde otomasyon şeklinde rulo saçdan çeşitli kesimler yapmak istiyorum.4. eksenimiz pistonlu bir mengeneye bağlı.Bu eksenin kesim yapıldıktan sonra belirlediğim hatvede ruloyu çekmesini istiyorum.Bu hatve oranını aşağıda verdiğim örnekteki gibi G-code aralarına yazabiliyorum ancak kesilecek parçalar yüzlerce olunca bunu yazmak pek mantıklı olmuyor.Her kesimin arkasına hatvenin katlarını tek tek yazmak zorunda kalıoyrum A50..A100..A150 ... gibi devam ediyor..

-Mach 3'de 4. eksen için bu hatve mesafesini nasıl verebirilriim? (Daha basit bir g-code yazarakmı, makro yazarakmı,wizardlamı?)

-m47 komutu ile program bittiğinde tekrar başlat komutu yağtığımda a ekseni yani 4.eksen ruloyu tekrar ilk baştaki pozisyunua sardığı için bu komutu kullanamıyorum.Bu komutun yerine her kesim işlemi bittiğinde bulunduğu yeri sıfır noktası kabul edecek(en azından a eksenini) bir komut varmıdır?

Örnek olarak yazdığım g-code
M3 (mengene kapa)
G0Z10.000
G0X0.000Y0.000
G0X5Y0.000Z10.000
G1Z0.000F900.0
G1X200F2520.0
X5Y10.000
Y0.000
G0X0.000Y0.000Z10.000
M5(Mengene aç)
A50 ----> 50 mm sac levhayı sür
M3 (mengene kapa)
G0Z10.000
G0X0.000Y0.000
G0X5Y0.000Z10.000
G1Z0.000F900.0
G1X200F2520.0
X5Y10.000
Y0.000
G0X0.000Y0.000Z10.000
M5(Mengene aç)
A100
.
.
.


Şimdiden yardımlarınız için teşşekürler.

Ömer ÇELİK
 
En güzeli bir döngü makrosu içinde G-code ları text dosyadan okuyup 4.ekseni her kesimden sonra sıfırlayacak bir uygulama olurdu.
Hem G-code ların değişmesinde yeterli esnekliği verir. Hemde A ekseninin ilerlemesinde aynı esneklik kullanılabilir.
Döngü içinde olduğundan parça bitene kadar işini yapar ('Malzeme bitmesi için bir kontrolde konulabilir ayrıca').
Macro komutları için bakınız.

Anahtar kelimeleriniz.
GetDRO() , SetDRO() , SetMachZero,

Example:
‘ Load the roadrunner demo file
LoadFile(“C:\Mach3\Gcode\roadrunner.tap”)
‘ Now run it
RunFile() ,


LoadRun
Sub LoadRun(Filepath As String)
This function loads the G-code file specified by Filepath, then immediately begins
execution. This is exactly equivalent to a LoadFile() followed by a RunFile().
Arguments:
Filepath is the String path to the G-code file to be run.
Return Value:
None
Example:
‘ Load and run the roadrunner demo file
LoadRun(“C:\Mach3\Gcode\roadrunner.tap”)



http://www.machsupport.com/docs/Mach3_V3.x_Macro_Prog_Ref.pdf
 
Son düzenleme:
Macro lara ek olarak :

Tek eksen özel sürücüler var.
Panel üzerinden değer girilebiliyor.
Mengene aç komutu ile çalışır yazılan miktar ilerletir .
İlerleme bittiğinde cycle start için ( input pin kullanılabilir ) çıkış verir .

--------
A ekseninin dir komutu harici olarak verilir.
Step pulsleri ilerletir.
Mach3 sıfırlama yaparken değeri sıfıra getirir ve fakat dir sinyali ters dönmesini sağlayamaz .
Ve ya dir sinyali ters döndüğünde enable ucu pasifleştirilirse motor ters dönmemiş olur (araya küçük bir devre mesela nand kapısı )...

---
Output / input - encoder pinleri kullanılarak daha değişik şeyler yapılabilir.
 
Merhaba arkadaşlar,

Mach3'le çalışan 4 eksen mini cnc'mizde otomasyon şeklinde rulo saçdan çeşitli kesimler yapmak istiyorum.4. eksenimiz pistonlu bir mengeneye bağlı.Bu eksenin kesim yapıldıktan sonra belirlediğim hatvede ruloyu çekmesini istiyorum.Bu hatve oranını aşağıda verdiğim örnekteki gibi G-code aralarına yazabiliyorum ancak kesilecek parçalar yüzlerce olunca bunu yazmak pek mantıklı olmuyor.Her kesimin arkasına hatvenin katlarını tek tek yazmak zorunda kalıoyrum A50..A100..A150 ... gibi devam ediyor..

-Mach 3'de 4. eksen için bu hatve mesafesini nasıl verebirilriim? (Daha basit bir g-code yazarakmı, makro yazarakmı,wizardlamı?)

-m47 komutu ile program bittiğinde tekrar başlat komutu yağtığımda a ekseni yani 4.eksen ruloyu tekrar ilk baştaki pozisyunua sardığı için bu komutu kullanamıyorum.Bu komutun yerine her kesim işlemi bittiğinde bulunduğu yeri sıfır noktası kabul edecek(en azından a eksenini) bir komut varmıdır?

Örnek olarak yazdığım g-code
M3 (mengene kapa)
G0Z10.000
G0X0.000Y0.000
G0X5Y0.000Z10.000
G1Z0.000F900.0
G1X200F2520.0
X5Y10.000
Y0.000
G0X0.000Y0.000Z10.000
M5(Mengene aç)
A50 ----> 50 mm sac levhayı sür
M3 (mengene kapa)
G0Z10.000
G0X0.000Y0.000
G0X5Y0.000Z10.000
G1Z0.000F900.0
G1X200F2520.0
X5Y10.000
Y0.000
G0X0.000Y0.000Z10.000
M5(Mengene aç)
A100
.
.
.


Şimdiden yardımlarınız için teşşekürler.

Ömer ÇELİK

Yukarıda yazılan cevaplara ilave olarak basitçe bir de aşağıdaki kodu dener misin?

P5 değerini istersen kullanmaya bilirsin. Mengene açılma kapanma esnasında bir süre bekleme yapmak için. Değeri yükseltip düşürebilirsin.

Bu kod sabit 50 birim ilerletmek için. Yani sürekli 50-50-50... olarak gidecek. Ölçüne göre bununla da oynayabilirsin.

Kolay gelsin.

M3 P5
G90
G0Z10.000
G0X0.000Y0.000
G0X5Y0.000Z10.000
G1Z0.000F900.0
G1X200F2520.0
X5Y10.000
Y0.000
G0X0.000Y0.000Z10.000
M5 P5
G91 A50
M47
 
M3 (mengene kapa)
G0Z10.000

G0X0.000Y0.000
G0X5Y0.000Z10.000
G1Z0.000F900.0
G1X200F2520.0
X5Y10.000
Y0.000
G0X0.000Y0.000Z10.000
M5(Mengene aç)
A50 ----> 50 mm sac levhayı sür
M3 (mengene kapa)
G0Z10.000
G0X0.000Y0.000
G0X5Y0.000Z10.000
G1Z0.000F900.0
G1X200F2520.0
X5Y10.000
Y0.000
G0X0.000Y0.000Z10.000
M5(Mengene aç)

buraya kadar olan kodu bir makronun içerisie yaz ve kayıt et arkadaşım. örnek; makromuza m1001 gibi isim verelim ve kodları içerisine yazıp kayıt ettikten sonra, işletmek istediğimiz yere sadece m1001 yazarak programın bizim yazdığımız kodu işleme almasını sağlarız.... basit bir uygulama ama ola ki yapamaz isen özel mesaj yada mail at yazar yollarım.
 
Bu kod nasıl döngü yapacak? A eksenini her kesimde 50 mm 50 mm sürecek mi
 
Arkadaşlar hepinize yardımlarınız için tek tek teşşekür ediyorum.... gkeper2003 nickli arkadaşın yazdığı g-code'la yapmak istediğim işe ulaştım , sanırım burada kritik kod G91
 
Ek olarak mach3'te kullanılan kodların(G Kodları M Kodları ve diğerleri) anlamları ve ne tür işlerde kullanabilceğimiz bir ortam oluşturabilirsek ve mach3 bölümünde sabit konu olarak ekleyebilirsek ,tüm arkadaşların faydanlanmasını sağlayabilriz.(Bu kodlarla ilgili olarak ingilizce dökümanlar var ancak türkçe olması ve tam olarak ne işe yaradıklarını yazılması herkes için yararlı olacaktır.)
 

Forum istatistikleri

Konular
128,188
Mesajlar
915,702
Kullanıcılar
449,956
Son üye
CharmanDear

Yeni konular

Geri
Üst