fatiherdem.net üstresimdir
Adım(step) Motor Sürelim / 10 Temmuz 2008

Başlığımız “step motor sürelim”! Hangi özellikte nasıl bir step motor diyeceksiniz, motorumuz eski bir yazıcıdan çıkma 7.5 derece adımlı unipolar step motor(6 uçlu).

Step motorlar ve servolar… işlev olarak çok yakınlar ve çoğu uygulamada birbirleri yerine kullanılabiliyorlar. Bu iki motora da açı(veya pozisyon) kontrollü hareket yaptırabiliyoruz. Ancak step motorlar yapı itibariyle servolardan çok daha basit, step motorlar sabit mıknatıs ve sarımlardan oluşurken servoların içinde bir kontrol devresi bulunmaktadır. Bu iki motorun da çok geniş bir kullanım alanı var ancak ben step motorları en çok CNC makinelerinin eksen hareketlerinde görüyorum, servoları ise açılı hareketin çok önemli olduğu robot kolu uygulamalarında çokça görüyorum.

Bizim sürdüğümüz step motor ise hepsinden basit :) Torku ancak yazıcıya kağıt alabilecek büyüklükte olan mütevazı bir motor. Step motorlarda rotor(ortada dönen parça) sabit mıknatıslardan oluşuyor stator(rotoru çepeçevre saran hareketsiz bölüm) da ise sarımlar var. Rotordaki sabit mıknatıs sayısı ve statordaki sarım sayısı tamamen motorun özellikleriyle ilgili. Sarımlar rotor etrafını sarmış sıralı bir şekilde duruyor(resmi aşağıda-bir resim altta-):
Sabit mıknatıslardan oluşan rotor:
Step motorumuzun kalıcı(permenant) mıknatıslardan oluşan rotoru
Resim www.overclockers.com dan alınmıştır.

Statordaki sarımlar(4 tane):
Rotorun etraındaki sarımlar

Resim www.allaboutcircuits.com dan alınmıştır.

Motorun sürülmesi işlemi ise bu sarımları belirli bir sırayla mıknatıslandırmaktan ibaret, teker teker veya 2 li 1 li 2li… gibi bir sırayla mıknatıslandırarak motorumuzu sürebiliriz. Sarımı mıknatıslandırmak? Sarıma akım vererek mümkün tabi. Akım vereceğiz ancak önce motorumuzdan çıkan kabloların hangisi hangi sarıma ait bunu bilmeliyiz. Sarımlarda bazı uçlar ortak olmuş olabilir(aşağıdaki gibi) veya tüm sarımların uçları dışarı verilmiş olabilir. Tüm bunları anlamanın yolu bir ohmetre ile bakmaktan geçiyor. Her bir sarımın yaklaşık 80-100 ohm civarında bir direnci var, ohm metreyi elinize alın ve başlayaın 2 şerli ölçüm almaya. Çiftlerin birinde 100 ohm okudunuz! Hah! bir sarımı buldunuz demektir. 200 ohm okuduysanız bir ortaklık var demektir, ortak ucu bulmaya çalışın :) Bu şekilde tüm sarımları keşfettikten sonra sürücü devre işlemine başlayabiliriz.

Herhangi bir sarımı mıknatıslandırdığımızda rotordaki en yakın mıknatıs mıknatıslandırdığımız sarımın manyetik doğrultusuna girer. Sonra bir yandaki sarımı mıknatıslandırırız ve rotordaki en yakın mıknatıs yeni mıknatıslanan sarımın manyetik doğrultusuna girer, rotordaki sabit mıknatısların ve statordaki sarımların yerleşim biçimi bu iki hareketle motorun bir adım ileri atmasını sağlar. Aşağıdaki resim rotorda sadece tek sabit mıknatıs olsaydı ne olacağını gösteriyor, bizim tarif etmeye çalıştığımızın aşağıdaki olaydan tek farkı rotorda tek mıknatıs değil birden çok mıknatıs olmasıdır(Rotorumuzun resmini yukarıda verdik). Hangi mıknatısa göre yön belirlenecek sorusunu sorabilirsiniz, rotordaki sabit mıknatıslardan mıknatıslanan sarıma en yakın olan mıknatısa göre :) Umarım anlatabilmişimdir, olay çok kolay ancak anlatımım o kadar iyi olmayabilir. Bu hareketli gösterimde a ve b sarımları için ortak uçlar ayrı, bunlar da ortak olabilir yani 4 sarımın da bir tek ortak ucu olabilirdi, bu durumda motorumuz 6 uçlu değil 5 uçlu olurdu.

Resim :http://www.cefetrs.tche.br/tro/alunos/motordepasso/toppage1.htm adresinden alınmıştır.

Resmi aldığım adrese bakarsanız bu resmin yanında yarım adım sürme ile ilgili resim var, 2 li 1li derken onu anlatmaya çalışmıştım, hareketli gösterimde çok güzel anlatılmış. Hazırlayanların eline sağlık.

Sarımları mıknatıslandırma işlemi için bir devre düşünelim. Şartlarımız:
1) İstediğimiz sarımı istediğimiz zaman mıknatıslandırabilmeliyiz (mikrodenetleyici kontrollü -eğer tek tip sürüş yapacaksak senkron(clock sinyali ile çalışan) bir lojik devre ile de sürebiliriz)
2) Devremiz tarafından yeterli akım sağlanmalı

İstediğimiz sarımı istediğimiz zaman dedik! Ancak burda birkaç nokta var: Herhangi bir sarıma uzun süre akım uygulamak sarımdaki tellerin yanmasına sebep olabilir, malum zaten çok düşük dirençliler, bu yüzden motorumuzu herhangi bir pozisyonda uzun süre tutmak motora zarar verebilir. Ne yapıyoruz? Sürüyoruz, akım ateşten bir top sarımlar ise bu topu tutmak istemeyen el gibi, sürekli birbirlerine veriyorlar :) Ancak bu hızı da bir yere kadar arttırabiliriz, bir sarıma akım vererek mıknatıslandırıp rotoru gelmesi gereken pozisyona gelmeden diğer sarıma geçersek motorumuz bu hıza cevap vermeyecektir. Bu süreyi nasıl ayarlayacağız? Ben hız denemesi yapmadım, aşağıda verdiğim programdan da anlaşılacağı üzere adımlar arasında 500 ms beklemişim(epey uzun bir süre), siz bu süreyi kısaltarak ne kadar kısaltabileceğinizi test edebilir, motorunuzun ne kadar hıza ulaşabileceğini görebilirsiniz.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <16f628.H>
#fuses INTRC_IO, NOMCLR, NOPROTECT, NOWDT, NOLVP
#use delay(clock=4000000)
main(){
//int a[8]={1,3,2,6,4,12,8,9};
//int a[4]={1,2,4,8};
//int a[2]={1,4};
int a[4]={8,4,2,1};
int i=0;
while(1){
 
output_b(a[i]);
delay_ms(500);
i+=1;
 
if(i==4){
i=0;
}
 
}

Tekrar devremize dönersek: İlk aklımıza gelen herhangi tip bir transistorü anahtar(switch) olarak kullanıp bu anahtarları mikrodenetleyici veya lojik devre ile kontrol etmek . Bu işi önceden yapan arkadaşların devrelerine baktığımız zaman ULN2003 adlı bir entegrenin sıkça kullanıldığını görüyoruz. Bu entegrenin içinde 8 tane darlington var, bahsettiğimiz ilk yöntemden farklı değil, sadece daha yüksek akım için darlington yapısı kullanılmış.
Bizim motorumuzun keşfettiğimiz 4 tane sarımı vardı. 6 uçlu(kablolu) bir motordu, 2 sarımın da ortak olduğu bir nokta vardı, bu uçları +VCC ye bağlamıştık(aşağıdaki resmi inceleyeiniz, bunu yapıp yapmamakta serbestiz, farklı kombinasyonlarla farklı sürüşler uygulanabilir) ve kalan uçlarından hangisini toprağa çekersek o sarım mıknatıslanıyordu. Yani sürme işlemi için ULN2003 ün 8 darlingtonundan 4 tanesi bizim için yeterli. Devre şemamız ise şöyle:

Hızlıca hazırladığım(hata olabilir) Proteus Simülasyon ve CCS C kaynak kodunu indirmek için buraya tıklayınız.
Videosu:

“Adım(step) Motor Sürelim” için 3 Yorum

  1. hüsamettin

    elinize saglık bitirme ödevim asansör sistemiydi onun içinde adım motor kullanacaktım. insallah çalışırsa bu devre ysrdımıyla yapıcam. ve eger izin verirsenizde ödevimi diger arkadaşlara faydalı olması amacıyla bu sitede teşhir edicegim.

  2. Yusuf

    Oldukça açıklayıcı olmuş (videodaki led ler özellikle), verdiğin bilgiler için teşekkür ederim.

  3. ayhan

    elinize ve emeginize saglık siteniz güzel olmus kolay gelsin

Yorum Yapın

2007 © fatiherdem.net | İrtibat Formu | RSS