Bipolar Step Motor DRIVER?

Başlatan mahoaga, 28 Eylül 2005, 22:04:50

mahoaga

Öncelikle herkese SELAM,

Benim bir problemim var. 4 uçlu bir bipolar step motoru Sinus darbe şekli ile sürmek istiyorum. Motora fazları kaçık sinüs verildiğinde 90 derecelik bir açıya kadar motor ufak adımlarla 1 tam adımı tamamlıyor. Elimde 90 derece için 256 sample değeri var. 180 derecede 1 ufak adım attığımı varsayarsam, 256*2=512 tane samplede bir 1 ufak adım atacağım demek olur. Buda 512*20Khz=39Hz yapacaktır. Yani motora en yavaş 39Hz de bir mikro adım attırabiliyorum. Ancak ben daha yavaş hareket etmek istiyorum. Mesela 1Hz ile, Filtreler 20Khz ye göre ayarlandığından 1 samplenin frekansını düşüremiyorum. Elimdede maksimum 180 derece için 512 tane mikro adım değeri var. Size 1 kaç sorum olacak bilgili arkadaşlar yanıtlarlarsa sevinirim.

180 derece için 512 PWM değeri ile 39 HZ lik(Yarım Peryot) sinüs verirsem motor bu frekanstaki bir sinüs darbe şeklinde fazın kaymasını algılayabilirmi? Dönermi? Kaçırırmı?

Ayrıca motoru daha düşük devirde çevirebilmemin  bir yolu varmı?(Motorun 180 derece sonunda 1 tam adımı atacak kadar fazı kaydırdığını varsayarsak)

Önerilerinizi merakla bekliyorum.

Erol YILMAZ

20 kHz i nereden buldun diye sorsam...

Step motor gayet yavas hareket edebilir. 1 Hz ve daha altida olabilir.

Macera

Benim başka sorum var.
Stepperde mikrostep sürmek için PMW mi daha iyidir yoksa bir DAC dan çıkan değişken voltajı karşılaştırma referansı alan chopper sistemimi iyidir?

Yukardaki 20kHz chopper frekansımı PWM frekansımı?
Sistemi biraz açıklarmısın?Mümkünse bir şemasını buraya koysan !
"Art without engineering is dreaming; engineering without art is calculating." -- Steven K. Roberts

mahoaga

İlgilenen tüm arkadaşlara teşekkür ederim.

20Khz sinüsü oluşturan PWM sinyallerinin örnekleme frekansı oluyor. Bu Snubber köprüsü ile filtrelenmekte. Onun için 20Khz 1 PWM değerini oluşturmakta. Mesela motora vereceğiniz hıza bağlı olarak çıkılan sample sayısı ve bu 20Khz değeriyle belli bir tolerans dahilinde oynamak gerekiyor. Ama 20Khz yi çok aşağıya çekmek çözüm olabilrmi bilmiyorum. Bu durmda Sunubber filtresi çalışmayıp sürücüye zarar verebilir. Sonuçta filtre belli frekansları filtreliyor.

PWM olması ve DAC bulunmaması chooper sürücü olduğunu göstermez. Buradaki PWM sinyalleri, daha önceden örneklenmiş sinüs değerlerini oluşturacak PWM değerleri. Yani  DSP tarafından, 1 step motor için 2 adet H Bridge sürücüye PWM sinyalleri veriliyor ve motorun bobinin şoklamasıyla skopta sinüs izleniyor.

Sanırım sorumu tam anlamamış olmalısınız. Step motora 1 micro step attırıp örneğin 10sn bekler ve tekrar 1 microstep attırısanız motorunuz 10 saniyede 1 adımda atmış olabilir. Ama benim istediğim motorun durmadan (Mesela 10 saniyede 1 micro adım atması ki bu 10Saniyede 1 sinüsün motora uygulanması demek olur). Daha anlaşılır bir örnek verecek olursak arabanızın bir yerden diğer nir noktaya ilerlerken (Arabayı tamamen durdurmadan) hep belirli bir hızda istenilen noktaya ulaşabilmesi. Dediğim gibi 512 adet sample değeri 1 yarım peryot sinüsü oluşturuyor. Bu durmda 18 HZ lik tam bir sinüs elde ediliyor.  Acaba bu frekansı motora verirsen motor Dönecekmi? Isınacakmı? Adım Kaçıracakmı? ben bunu sormak istemiştim. Yani çok düşük frekanstaki sinüsler Step motora verilirse motor nasıl davranacak? Diğer sorum ise bu 512 sample ile motoru daha yavaş çevirebilmek için bir algoritma varmıydı? Henüz sorularıma cevap bulabilmiş değilim.

Erol YILMAZ

@mahoaga
İlk once sunda anlasalım.
2 bobin var. A Bobini ve B bobini
A Bobinine Sinus, B Bobinine de Cos degerli akım uygulanıyor.

Sinus mesela 0 dereceden başlayıp 360 a kadar giderse (Cos te gidecek.) sadece 1 tam adım atılmış olur.

Mikrostep için aradaki değerleri kullanıyoruz. 360 derecelik sinyal şeklindeki akımı 256 adımda verirsek mikrostep adımlarımız 1/256 tam adım olur.

Bu akımı ne ile ayarlarsan ayarla. İster Analog yap ister dijital.
Yani PWM frekansı ile dönmenin hızı arasında direkt bir ilişki yok.
Sen diyelim ki A Bobinine Sin 0, B Bobinine Cos 0 uyguladın.
Referans noktamız bu olsun.

256 mikrostep için bahsedersek bir sonraki adımımızda A bobinine
Sin (360/(1/256)) x I kadar akım uygulayacaksın.

Bunu ne zaman uygularsan o adıma o zaman geçersin. Sonuçta palsleri tek tek uygularsın.

z

Step motorlar doğaları gereği lineer elemanlar değildir. Motoru bu denli düşük devirlerde sabit açısal hızla döndürme isteğiniz konumlamada doğrusallık problemlerini beraberinde getirir.

Döndürmekte ısrarlıysanız yüksek çözünürlüklü shaft encoder ile kapalı çevrim kontrol yapmanız gerekir. Genede doğrusal olmayan sistemlerin kontrol problemi güçlüğüyle karşılaşılabilir.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com