encoder ile motor hız kontrolü ve konumu

ymncn

Üye
Katılım
18 Nis 2012
Mesajlar
8
Puanları
1
merhaba arkadslar benm encoder ile motor hız kontrolü ve konumunu belirleyecğim microişlemcler projem var. 18f4431 pic almam gerektiğini söledilerde bu konuda pek bi bilgim yokta yardmcı olrsanz sevinirim
 
kullanıcagın encoder nasıl bir devre?
encoderdan gelecek sinyaller uclar falan nedir ?
veya bu encoderıda senmi yapıcaksın ?
mikrokontrollor 18f4431 kullanman gerekiyor diye bir zorunluluk yok. mikro kontrolor Kontrol etmek istedigin devrenin tasarımına baglı olarak uygun birşey olarak seçilir zaten.
 
sıradan bişey olsunda motor hızını kontroll ve konumunu ayarlıcam sağ-sol durumunu belirlicem. malzeme olarak ne kullanabilirim? bi yazarsanz cok makbule gecer
 
Motorun Konumunu Belirlicem derken belirlemek istedigin "Sağ tarafamı donuyor yoksa sol tarafamı dondugu" veya Motorun Pozisyonumu ? yani Servo veya Step motrodaki gibi Durdugu acımı ?

Encoder ile hic ugrasmadım. ama Teorik olarak biraz bilgim var.

hazır aldıgın bir modul varsa ve A,B olarak 2 cıkıs ucu varsa
A ve B ucundan gelen datayı kontrol et ve kayded. Yeni gelen data ile bir önce kaydedtigin data farklı ise önceki data ve yeni datanın birlerini Xor yapınca Cıkan sonuca gore Saga veya Sola dondugunu anlayabilirsin
Hızını ise ;
A ucu Picin Interupt pinine baglayıp her interrupta Bir degiskenin degerini artırırsın.
1 sn sonunda Bu degiskenin okudugunda Saniyedeki tur sayısını bulmus olursun..
Okuduktan sonra Silip 0 dan tekrar baslatırsın..
Bu tip bir encoder 'ı kendin yapıcaksan AveB pinlerinden cıkan sinyal arasında 90 fark var..
http://en.wikipedia.org/wiki/Rotary_encoder#Absolute_encoder_output_formats
Bahsettigim A ve B deki datayı bu linkten bakarsan daha iyi anlarsın.
Ayrıca orda farklı encoder tipleride var ..Belki fikir verir.


Birde Cok basit ve pratik olarak Sunuda deneyebilirsin.
Bir pot'u Motor miline baglayıp Pic ten anaolog degerini okursun. (potun 360 derece donmesi icin pota ufak bir oynama yapman lazım )

ilk kaydettigin deger yeni okudugun degerden kucukse bir tarafa buyukse Diger tarafa dondugunu anlarsın
Hızı ise Potun Enkucuk degerini her okudugunda yukarıdaki gibi degiskeni bir arttır ve 1 sn sonunda Sn deki hızını bulup degisşkeni sıfırla.. Ayrıca Bu sistem ile servo gibi pozisyonlamada yapabilirsin. PWM ile veya Seri baglantı yada Parelel baglantı ile bir deger gonderirsin .. Pottan okudugun deger bu degere eşit olunca Motoru Durdurursun. ve Motora istedigın posizyonu vermiş olursun..
 
cok tesekkürler öncelikle dediklernz sayesinde kafamda bişeyler olştu. Sağ tarafamı donuyor yoksa sol tarafamı dondugu" veya Motorun Pozisyonyla ilgili tüm mesele bu. switch ve potda kullancam. ona göre ilk sölediklernzden bişeyler cıkardm bana malzeme olarak ne kullanabilirm onuda yzarsanz cok sewnrm. varsa linki atarsanz ben bakarm. protesutan similasyonunu gerceklestrmm lazm bu konuda elinzde kaynak varsa onlarda yardmcı olabilir.alıp derhal baslamam gerekioda
 
encoder ile ilgili daha once birşey yapmadım encoder modulu hazır bulunuyormu yoksa motorla berabermi satılıyor bilmiyorum..
Sen Elekronikcilere ve Motor satan yerlerde bunu iyice arastır. motor uzerinde hazır encoder bulursan iyi olur.

Encoder kendin yapacakisende dedigim gibi bir potu modifiye edip 360 derece doner hale getir.. motorun miline bagla.
pic 16f628 kullanabilirsin .. USB haberleşme ile olucaksa ozaman 18f serisi bir pic kullanırsın
basitce Potun Bir ucu + ya bir ucunu gnd ye orta ucunu Picin Anaolog pinlerine takılır..

Peki hangi Programlama dilini kullancan Pic icin ?
 
c dilini kullancamda encoder kendim yapmıcam encoderlı motor alim ben en iyisi. tesekkürler saolasn
 
tekrardan merhaba motor hız kontrolü ve konumunu proteus programıyla cizdimde ccs de programı yazmaya calışıomda bi sürü hata verio. varsa elinizde ccs programındaki yazılımını alabilirmyim?
 
Vakit bulamadıgımdan ve proton basice daha iyi hakim oldugundan Kodu hızlıca proton basic ile yaptım
Mantıgı anlarsan CCS C bilgin yeterliyse yapabilirsin.. Umarım işine yarar..
Olmassa MikroC kodu olarakta daha sonra eklerim. ama malesef CCS C bilmiyorum


Proton basic ile su sekilde

 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…