Elektronik ve Teknoloji Merkezi Elektrotekno.com
Elektronik ve Teknoloji Merkezi



Click here to go to the original topic
Sayfaya git 1, 2  Sonraki
Elektrotekno.com Ana Sayfa Microchip Pic Serisi
Yazar Mesaj
fractal
Tarih: 25.09.2008, 08:09 Mesaj konusu: STEP MOTOR'larda hızlanma yavaşlama picc de nasıl yazılır?

Arkadaşlar bu konuda cok uğraştım ancak tam bir cözüm bulamadım.accelaration ve deccelartion yapmak istiyorum yani herhangi bir devire belli bir sürede cıkıp belli bir süre çalıştıktan sonrada belli bir yavaşlama eğrisi ile durmak istiyorum.ve
hızlanma+istenilen devir+yavaşlama =gitmek istediğim tur sayısı şeklinde kontrol etmek istiyorum.bunu picc de nasıl yazabilirim.ordaki pwm modülünü kullandım for döngüsü yaptım belli zamanlarda frekansı azalttım ama tam bir sonuç alamadım.yardımcı olacak arkadaşlara cok teşekkürler....
-----------------------------------------------------

TigerX
Tarih: 25.09.2008, 10:45 Mesaj konusu:

Merhaba...

Öncelikle elinizdeki motorun maksimum kaç devir ve kaç volt olduğunu iyi bilmeniz lazım. Daha sonra diğer işlemlere geçebiliriz.

- Motorun devri gönderilen puls sayısına bağlıdır. Sizin yaptığınız gibi PWM ile pulse genişliini değiştirerek motrun hızını değiştiremezsiniz.

- Motorun hızını motor sargılarına gönderilen pulsların frekansını değiştirmek sureti ile ancak yapabilirsiniz.

- Motorun besleme voltajına uygun besleme kaynağını temin ediniz.

- Motorun uçlarını doğru olarak bulup bağlantıyı doğru yapınız.

Tüm bunlar doğru ise sıra geldi pulslari göndermeye...

- Eğer PWM kullanmak isterseniz bu durumda PWM frekansını programda sürekli değiştirmeniz lazım. Module edilmiş sinyalin genliğini değiştirmeniz pek bir işe yaramayacaktır.

- Eğer bu yazdıklarım yeterli olmazsa daha önce yaptığım bir çalışmamı ilk fırsatta buraya eklerim. CCS C dilince yazılmış bir uygulama.

Selamlar...
Eyüp/Gaziantep
fractal
Tarih: 25.09.2008, 14:33 Mesaj konusu:

cevap için teşekkürler.projemi anlatayım biraz.öncelikle benim adım motorumun hazır biri sürücüsü var.onun üzerinde pwm girişi var.enable,yön ,gibi girişlerde var.ben gereken ayarlarını yaptım. 1tur 400 adım.30 n tork güçlü bir motor.
en fazla 3000 rpm kadar cıkabildiğini söylediler aldığım yer.ben 2000 rpm de çalıştırdım.buda pwm sinyalinin 20 khz olduğu zamanda.zaten motor birden cıkmaz 2000 rpm ben kendi yazdığım programla gecikme vererk cıktım bu devire.ama protesu da olsun gerçekte olsun zamanlar tutmuyor.arada bir frekanslarda atlama oluyor.ben mesela 4 snde cıksın diyorum 0 dan 2000 rpm ama gerçekte zaman uymuyor.

frekans artımları tam liner olmadığı icin sanırım.bazıları picc de olmaz diyor.burda şıkıştım ben.istediğim zamanda motorun izin verdiği devirlere nasıl cıkıcam ve nasıl düşücem..

istediğim belli bir adımı hızlanma normal hız ve yavaşlama toplamı olarak katetme işlemi....
TigerX
Tarih: 25.09.2008, 16:50 Mesaj konusu:

Bir konuyu tam olarak anlayamadım:

- Motorun kendi sürücüsü var diyorsunuz. Bu durumda gerekli ayarlamaları bu sürücünün yapacağı fikri ilk akla gelen. Siz kendiniz yapmaya uğraştığınıza göre demek ki; sürücü bunu yapamıyor ve sizin kendinizin yapması gerekiyor.

- Bunu sağlayabilmek için de sürücünün sanırım bir adet PWM girişi var ve oradan siz uygun PWM gönderdiğiniz zaman motor istediğiniz devirde dönüyor.

Yani motoru sürerken sürücü dediğiniz alet, PWM girişinden sinyal almadan motoru süremiyor. İllaki dışarıdan bir sinyal alacak ki; ona göre motorun hızını ayarlasın.

Ben böyle anladım. Acaba doğru mu anladım?

Bir de şema veya resim gibi, hatta proteus dan bahsetmişiniz bir örnek varsa ekleseniz, neler yaptığınızı yazsanız sanırım daha net olacak.

Selamlar...
Eyüp/Gaziantep
fractal
Tarih: 26.09.2008, 14:53 Mesaj konusu:

evet.doğru analiz etmişsiniz.ben sadece sürücüye pwm sinyali gönderiyorum.oda ona göre motoru kontrol ediyor.

daha önce bahsettiğim gibi ben keypad ve lcd ekran ile menü yaptım pic16f877 kullandım.menüden motor ayarları kısmı var orda lazım olcağını düşündüğüm 4 secenek var dışardan giriliyor yada işlemci tarafından hesaplanıp diğer değer değerlere göre ilgili satırda gözükküyor.
hız=... hızlanlanma:....
yavaşlama:... adım sayısı:.....

şekil ve imaj hazırlayıp koyacağımda...

hızı giriyorum mesela 1000 rpm yada(frekans olarak)

benim alacağım mesafe 100 birim olsun.
motor bir tur attığında (400 adım) ve gerekli kayış kasnak dişli ayarlanmış olsun.100 birimi örneğin 4 turda almış olsun yani 1600 adım..

şimdi..bu hızlanma yavaşlama bu örneğe göre nasıl olcak?ben hızlanamaya 1 sn de yazarım 10 saniyede .cıkacağıhızı bu ayarları nasıl yapabilirim...zaman cok uzun olursa istediğim hıza cıkana ,sürene ve sıfıra düşene kadar fazla adım atmış olur.
hız ,hızlanma,yavaşlama,adım arasındaki bağıntılar nasıl olmalıdır?...
ete
Tarih: 26.09.2008, 16:00 Mesaj konusu:

Bu işin en basit yöntemi için;
- Önce rampa süresini tayin etmeniz gerek. Yani motorun kalkabileceği min frekanstan başlayıp normal çalışma frekansına (yani devire) ne kadarlık bir zaman dilimi içinde çıkacaksınız?. Diyelimki buna karar verdiniz ve süreyi 3 sn yada 3000 ms olarak aldınız.
- Bu durumda Yapılacak iş. Sizin uyguladığınız PWM frekansını Motorun kalkabileceği min frekansdan (genelde 200 Hz ) başlayarak 3 sn lik peryot içinde kademeler halinde artırmak. Nasıl dersen;
Hemen çalışma frekansına (yani normal çalışma devrinize) bakmanız gerek. Diyelimki bu devir için gerekli frekans 2000 Hz olacak. Peki min frekans ile max. arasında ne kadar fark var? 2000 - 200 = 1800 Hz lik bir fark vardır. Bunu 10'a bölersek 180 adet kademe buluruz.
Yani 200 den başlayarak 3000 ms içinde 2000 Hz ye 180 kademede çıkmam gerekiyor. O halde beher kademede ne kadarlık bir bekleme yapmam gerekecek bunu hesaplamamız gerek.

Bizim gecikme süremiz 3000 ms olduğuna göre her kademede 3000/180=16,6 bulunur bu değeri 17 olarak alabiliriz.
O halde
- Önce frekansı 200 Hz ye ayarlarım.
- Sonra 0 ile 180 arasında çalışan bir döngü kurarım
- Frekans=Frekans+10 yaparım
- 17 ms beklerim
- Bu işlemi 180 defa tekrarlarım ve
- döngüyü tamamlarım.
Sonunda frekansı 2000 Hz ye fikslerim.

İşte bu kadar al sana 200 Hz den 2000 Hz ye 3 sn de yükselen bir devir tablosu.

Umarım anlamışsındır.
Ete,
fractal
Tarih: 26.09.2008, 16:30 Mesaj konusu:

ete konuya verdiğin önem için cok teşekkürler.bu yönetemi denedim ancak tam sonuc alamamıştım.tekrar deneyeceğim anlattığın gibi.180 kademe demişsinya örneğin bunun 150 kademesi için normal çalışıyor ondan sonraki artımlarda motor vurma yapıyor yada atıyorum 170 incide tak diye bir ses geliyor devrini alıyor ama bunları neden yapıyor?
frekansı ölçüyorum tam.
ama bazen farklı frekanslar görüyorum bu neden olabilir?..
ete
Tarih: 26.09.2008, 16:42 Mesaj konusu:

Bir çok defa kullandığım bir yöntemdir bu. Başka türlüde yapılamaz zaten.
Burada önemli olan motorun min dev ve maksimum devir frekanslarını bilmek. Çünki Step motor belirli bir frekansın altında dönme yerine inleme yapıyor. Aynı şekilde belirli bir frekansın üstünde de pals kaçırmaya başlıyor. İşte motorun sağlıklı olarak dönebildiği min frekans ile maksimum frekansı beirledikten sonra istediğin gibi rampa vermen mümkün.
Aralığın dışına taşarsan dediğim sorunlar olur ve genelde maksimum frekanslarda motor pals kaçırmaya başlayınca bahsini ettiğin olaylar meydana gelir.

Bir diğer olabilecek husus da rampa süresinin çok hızlı olmasından dolayı motorun yeterince pals alamaması olabilir. Diyelimki 0-180 kademeyi 3000 ms de değilde 1000 ms de uygularsanız motor yeterince pals alamayabilir ve yine pals kaçırabilir. Bana kalırsa uygulamalarını rampa süresini biraz artırarak yeniden dene. Şayet olmuyor ise maksimum frekansı düşür.

Ete
esb72
Tarih: 27.09.2008, 00:51 Mesaj konusu: link

selam fractal,
aşağıdaki linke bir göz at istersen.belki sana fikir verebilir.
kolay gelsin
http://www.antrak.org.tr/gazete/042001/nusret.htm
fractal
Tarih: 27.09.2008, 08:49 Mesaj konusu:

ete bu söylediklerini yüzeysel olarak düşünmüştüm ama dediğin şeyleri farkedememişim.motoru aldığım yer bana 2000 devirin üstünde çalışabilir demişti ama net hangi frekanslar arasında sürüleceğini bilmiyordum.manuel kataloğu var ordada 3000 rpm kadar cıkabilir.diyor ama bu puls kaybından sözetmiyordu.bir ikinci hususta şimdi geldi aklıma

bu pic de setup_timer_2(T2_DIV_BY_16,x,x) burda bölme oranı 1,4,16 var mesela ben 200 hz başlayıp 20khz (aslında bu aralık min frekans ile max freknas arası buda tek bölme oranını içermiyor) çıkmaya başyacağımda bölme oranında değiştirmem lazım.excel taplosu yaptım bunları frekansa göre cıkardım sanırım bu geçişlerdede sorun oluyor.

ne yapabilirim acaba?
Elektrotekno.com Ana Sayfa Microchip Pic Serisi
1. sayfa (Toplam 2 sayfa)
Sayfaya git 1, 2  Sonraki

STEP MOTOR'larda hızlanma yavaşlama picc de nasıl yazılır?

Gizlilik Politikası

PLC programming