Picproje Elektronik Sitesi

ENDÜSTRiYEL OTOMASYON => Motorlar & Sürücüler => Konuyu başlatan: bulutay - 24 Temmuz 2014, 22:45:07

Başlık: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 24 Temmuz 2014, 22:45:07
arkadaşlar cnc için 3 yada iki adet step motorun aynı anda çalışması gerekiyor. tecrübesi olan arkadaşlar dan yardım bekleniyor.
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: sezgin05 - 25 Temmuz 2014, 02:10:00
Evet cnc lerde birden fazla step motorun aynı anda çalıştırılması gerekebilir. Bunun 2 yöntemi vardır. 1.si tek 2X gücünde sürücüye paralel bağlı 2 adet 1X gücünde step motoru bağlamak. 2.si ise 2 adet 1X gücünde sürücünün girişlerini paralel bağlayarak 2 adet 1X gücünde step motoru ayrı ayrı sürmek.Uygulamalar arasında maliyet dışında pek bir şey değişmez.
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: gumush - 25 Temmuz 2014, 10:59:13
Kontrol karti kullanilarsaniz eksen sayisi yeterli ise istediginiz ekseni coklayabilirsiniz.

Ornegin 4 eksen kartiniz var 3 eksen cnc'nizde x eksenini 2 motorlu yapacaksiniz. Bu durumda 4.eksene bu motoru takacaksiniz. Mach3 icinde slave olarak ayarlayinca ayni ekseni birden fazla motorla kullanabileceksiniz.
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 25 Temmuz 2014, 15:36:10
arkadaşlar teşekkürler ama ögrenmek istedigim step motor çoklama degil. iki step motorun aynı anda çalışmasından kastım. biri 200 adım aterken digeri de 50 adım atacak.
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: magnetron - 25 Temmuz 2014, 16:02:59
@bulutay ,

bahsettiğin şeyin adı interpolasyon

en basitinden bir interpolasyon x ve y eksenlerinin
freze bıçağını bir derece açıyla hareket ettirmesidir örneğin

bu durumda x ve y eksenlerinin hızları şöyle bulunur

diyelim X ve Y ilgili eksende gitmesi gereken yol
FEEDAUTO ise trajectory üzerindeki yani gidilen yoldaki hız
bu durumda FEEDX FEEDY X ve Y eksenlerinin hızları

       hip = X*X + Y*Y
        hipo = karekök ( hip)
   FEEDX= ((FEEDAUTO*X) / hipo);
   FEEDY= ((FEEDAUTO*Y) / hipo);

bu arada yaptığın hardware'in resmini koyarsan memnun olurum
bende aynı konuda uğraşıyorum
4 x 200 KHz puls üreten bir kart da ben tasarladım
bu kartla 4 eksen sürebiliyorum
ama vakit bulup sistem software 'ini bitiremedim henüz
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: Salih - 25 Temmuz 2014, 16:03:45
Alıntı yapılan: bulutay - 25 Temmuz 2014, 15:36:10
arkadaşlar teşekkürler ama ögrenmek istedigim step motor çoklama değil. iki step motorun aynı anda çalışmasından kastım. biri 200 adım aterken digeri de 50 adım atacak.

O zaman iki motor için iki ayrı sürücü kartın olacak.
İki sürücüye uygulayacağın palsleri aynı anda başlatacaksın.
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 25 Temmuz 2014, 16:22:37
benim yazdıgım sistemde nerdeyse pic de hiç bir şey yok. 3 adet ileri 3 adet de geri metodu var. o kadar. diger her şey pc de olup bitiyor. sizin dediginiz gibi her motor için bir pic , picleride kontrol eden bir pic yani 4 adet pic ile 3 adet motor dairesel ve dogrusal interpolasyon yaptırılarak rahatça sürülebilir.

teşekkürler.
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: Salih - 25 Temmuz 2014, 16:33:46
O zaman şöyle hazır CNC kontrol kartı alıp kullanacaksın.
Bazı örnek kartlar.

http://www.robosan.com.tr/motion/usbcnc.htm (http://www.robosan.com.tr/motion/usbcnc.htm)

http://www.sanalpazar.com/3-Eksen-Tb6560-Toshiba-Cnc-Step-Motor-Surucu-Karti__isp14635579 (http://www.sanalpazar.com/3-Eksen-Tb6560-Toshiba-Cnc-Step-Motor-Surucu-Karti__isp14635579)
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 25 Temmuz 2014, 16:44:13
kartı kendim yapabiliyorum. yaptıgım kart da interpolasyon yoktu. önce x ekseni hareket ediyor. daha y ekseni hareket ediyor. daha sonra z ekseni hareket ediyor. bu da tek bir pic le çalışıyor. ama dairesel yada dogrsal interpolasyon yaptırabilmek için 4 pic gerekiyor. yeni fark ettim bu olayı. tek bir pic le olmuyor. aynı anda degil ama aynı zamanda hareket saglanabiliyor. zaten iki eksen  yeterli interpolasyon için
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: Salih - 25 Temmuz 2014, 16:50:23
Tek pic le yapabilirsin. Önemli olan pals üretme algoritman. Bu algoritma da palsleri aynı anda
üretmeye başlarsan problem çözülür.
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 25 Temmuz 2014, 17:06:26
pals üretme algoritmasını pic de yapıp diger iki sinyal göndermek üzerine yogunlaştım. şu anda bana kolay gelen bu. verdiginiz linkteki sürücülere baktım. evet. teşekkürler. ama benim ihtiyacımı karşılamıyor ikisi de . pic de algoritma çalıştıktan sonra mesela b1 ve b2 high oldugunda diger pic deki metotlar çalışacak gibi
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: iyildirim - 25 Temmuz 2014, 17:27:51
Alıntı yapılan: bulutay - 25 Temmuz 2014, 16:44:13
kartı kendim yapabiliyorum. yaptıgım kart da interpolasyon yoktu. önce x ekseni hareket ediyor. daha y ekseni hareket ediyor. daha sonra z ekseni hareket ediyor. bu da tek bir pic le çalışıyor. ama dairesel yada dogrsal interpolasyon yaptırabilmek için 4 pic gerekiyor. yeni fark ettim bu olayı. tek bir pic le olmuyor. aynı anda değil ama aynı zamanda hareket saglanabiliyor. zaten iki eksen  yeterli interpolasyon için

Motor sürücüleri ni de kendiniz yapmak isteseniz dahi 4 ayrı PIC kullanmak bana pek mantıklı gelmedi. Uygun mcu seçimi ile hem motor kontrolünü hem de puls-dır konusunu tek mcu içerisinde halletmek mümkün.

Özellikle de motor sürücülerini hazır kullandığınız durumda, PIC ile sadece motor sürücüler için puls-dir sinyalleri ürettiğiniz  durumda tek bir PIC içerisinde olayı çözümlemek daha iyidir. Gereksiz iletişim rutinlerinden ve gecikmelerden de kaçınmış olursunuz.

İnterpolasyon konusunda daha önce de dediğim gibi genellikle Bresenham gibi algoritmalar kullanılır. Doğrusal interpolasyon için her bir eksen için bir timer kullanmak gibi çözümler olsada, özellikle akselerasyon kısmında senkronizasyonu sağlamak sıkıntı oluşturur. Ki dairesel interpolasyon da düşünüldüğünde Bresenham kullanmak en basit, en iyi  yoldur..

Stl dosyalarını işlemek gibi şeylerden bahsetmişsiniz.
Amaç bu ise cam proses denen işlemleri PC de işleyip G-code u PC de ürettikten sonra oluşan g-code u mcu da işlemek en sağlıklı çözüm bana göre. Sadece mcu üzerinde hiç olmazsa bir kaç yüz ms lik bir buffer oluşturusanız gayet güzel çalışır.
G-code işlemede asıl olan g0-g1-d2-g3 gibi kodları işlemek, g40-41-42 gibi kodların dışında ki her komutu bu komutların ardışık olarak işletilmesi ile karşılayabilirsiniz.

İşlemci olarak da önerim en azından 16 bitlik PIC ler veya 32 bit ARM-PIC olur..
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 29 Temmuz 2014, 14:48:36
S.A.

g0-g1-d2-g3  bu kodları pc tarafında işledigimiz zaman çok kolay oluyor. interpolasyonda ara deger bulma metodu ile yapıldıgı zaman çok basit bir şekilde oluyor. takıldıgım nokta for döngüsünde . for döngüsünün serial port.write dan gönderilen veri kadar dönmesi gerekiyor. pic tarafında bir türlü olmadı. konu açtım bakalım. c# ile yazıyorum. pc tarafı tamam gibi. ama pic tarafı biraz zorluyor.
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 08 Ağustos 2014, 16:29:22
bu linkte g kod işleme programı yazılmış

GCode Interpreter using C# (http://www.youtube.com/watch?v=kiM0h6oSIdk#)
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: engerex - 08 Ağustos 2014, 17:27:49
PC'den PIC'e nasıl veri gönderiyorsun?
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 08 Ağustos 2014, 19:30:46
serial port ile
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: engerex - 08 Ağustos 2014, 20:27:39
Alıntı yapılan: bulutay - 08 Ağustos 2014, 19:30:46
serial port ile
PIC e G kodlarını mı yolluyorsun yoksa başka veriler mi?
Başlık: Ynt: 2 adet step motoru aynı anda çalıştırma
Gönderen: bulutay - 09 Ağustos 2014, 01:26:42
başka veriler. g kodlarının oldugu text dosyası işleniyor. step motor vs. hareket bilgileri pic e gönderiliyor.