Ana sayfa | Hakkımda | İletişim | Sosyal platform
PIC CCS C & ASM / Uygulamalar
Bipolar step motor sürme uygulaması

Bu uygulama bipolar step motoru kontrol etme yazılımı yazdık. Yazılımda step motor sürmenin yanında hız ayarı ve yön değiştirebileceğiniz butonlar mevcut.

Basit bir bipolar step motoru sürmek için;

            x   y   z   w     

  • A girişi: 1   0   0   0
  • B girişi: 0   1   0   0
  • C girişi: 0   0   1   0
  • D girişi: 0   0   0   1 

Step motorda q yönü için sırayla x-y-z-w sütunları, q' üssü yönü için w-z-y-x sütunları işlemi alınmalıdır. Ve diğer adımlar için bu döngünün sürekli tekrar etmesi gerekiyor.  Step motorun hızı 1 adımı tamamlama hızıyla doğru orantılıdır.  Bir adım tamamlanmadan diğer adım için komut verildiğinde motor ters yönde tepki verecektir. 

ISIS simülasyonun step motorun adım açısı 1.8 derece olarak ayarlanmıştır. 

Uygulamayı buraya tıklayarak indirebilirsiniz. Arşiv şifresi isterse elektrocavus.com giriniz.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <16f84A.h>
#fuses XT, NOWDT
#use delay(clock=4M)

#define arttir      input(pin_b0)
#define azalt       input(pin_b1)
#define yon_test    input(pin_b2)



unsigned int16 hiz=90;
unsigned int8  step_tanim_1[4]={2,4,8,1};
unsigned int8  adim=0;
         int1  yon=1;

Void buton_test(){
if(arttir){  While(arttir);  if(hiz!=90)hiz-=10;        }
if(azalt){   While(azalt);   if(hiz!=500)hiz+=10;       }
if(yon_test){While(yon_test);if(yon==1)yon=0;else yon=1;}
}


Void STEP_KOMUT(int yon){
output_a(step_tanim_1[adim]);
delay_ms(hiz);
if(yon==1){
adim++; if(adim==4)adim=0;
}else if(yon==0){
 if(adim==0)adim=4; adim--;
 }
}

Void main(){
  For(;;){
  buton_test();
  STEP_KOMUT(yon);
  }
}
ELEKTRO ÇAVUŞ
Ana sayfa | Hakkımda | İletişim | Sosyal platform
ELEKTRO ÇAVUŞ2012 | elektrocavus.com