Mach3 Tarzı Program Yapmak

Konu açılalı epey zaman olmus ancak belki baskalarına faydalı olur düşüncesi ile bende deneyimlerimi paylaşmak istedim.
Mach3 tarzı bir program yazmaya bende çalıstım.kendime yetecek kadarını basardım.
1. Ekrandaki bir görüntüyü(2 eksen olarak) vb6.0 da pixel pixsel taratarak (renk ayrımı=>mesela beyaz ekranda siyah noktaların koordinatlarını bularak)bir metin dosyasına kaydettim.
2.sonra bu bilgileri yine aynı program sayesinde kücükten büyüge sırayalarak x e karsılık gelen y leri bulmus oldum.
3.simdi bu bulunan x,y koordinat bilgilerine göre makinanın hareketini saglamak için ana mantık eksendeki her iki motorunda aynı anda baslayıp işi aynı anda bitirmeleri gerekiyor.Buna enterpolasyon diyorlar.Bunu step veya servo motora aktarırken pc de motorlardan birinin hızını kendim varsayılan olarak seçiyorum digerini ise x/y oranı ile hesaplamıs oluyorum.
4.bu elde ettigim bilgiler ile ister dogrudan pc ile istersende elde ettigin dataları(her iki metodlada calıstırdım) bir mikroişlemciye göndererek(veya önceden kaydederek)hareketleri saglayabilirsin.
5.kullandıgım microişlemci cok yuksek seviyeli olmadıgından hesaplamarı pc ye hareketleri yaptırma işlemini microişlemciye yaptırdım.Yani önemli olan elinde x e karsılık gelen Y nin elinde hazır olması,gerisi kolay.diyelimki y=2x egrisini çizecegiz,yani x 1 birim giderken y 2 birim gidecek,buna göre mesela x=10mm y=20mm olsun,kalibrasyona göre x'in 10mm gitmesi için üretmem gereken mesela 15000 adetse,y nin 20mm gitmesi için üretmem gereken puls sayısı 30000 adet olacaktır,buna göre her iki motorda aynı anda baslayıp aynı anda işi bitirmeleri gerektigine göre,x/y oranından x in puls suresini 10 mili saniye secersem(buda makinanın hızını belirlemis oluyor) y nin puls süresi 5 mili saniye olması gerekiyor.Böylelikle 15000*10=30000*5 esitligi saglanmıs oldu ve her iki motorda aynı anda baslayıp aynı anda işi bitirmis oldu.
Not:Bu tarz hesaplamaları pc ye yaptıracaksınız(mcu da cok zor oluyor,yuksek seviye programlama dilleri kullanmak gerekiyor)ancak dikkat etmeniz gereken en önemli husus carpma bölme işlemlerinde rakamlar herzaman küsüratsız cıkmıyor,buda binlerce datadaki hataların toplamı sayesinde makinada ayarsızlıklara sebep oluyor,bunu onlemenin metodu ise hataları(küsüratları) bir yerde tutup yedire yedire makinaya işlem yaptırmanız.örnegin yarım puls yaptırmanız gerektigi cıktı,böyle bir puls olmayacagından kenarda tutup bir sonrakine eklediginizde hatayı kaybetmiş olursunuz.
 

Forum istatistikleri

Konular
128,149
Mesajlar
915,478
Kullanıcılar
449,892
Son üye
bekmezci

Yeni konular

Geri
Üst