s.a iyigünler arkadaşlar birçok araştırma yaptım ama derdime çare ne yazıkki bulamadım öncelikle elimde bipolar 5 çıkışlı bi step motor var benim sorunum sürücü devrelerinden sonra max torkla dc kaynakla ken di kendine atıyorum 2 dakika çalışıp 5 dakika durması 3 looptan sonra ters yöne bu hareketi tekrarlaması ben elek elektro müh son sınıf öğrencisiyim algoritma hakkında yardımcı olabilecek arkadaşlardan yardım istiyorum birde step motor seçiminde çok pahalı olmayan stabil motor satan yerleri nerden bulabilirim eskişehirdeyim
/****************************************************** PIC16F877 ile Step Motor Uygulaması (ULN2003A İle) *******************************************************/
// Giriş ve çıkış pinlerine isim atanıyor #define buton_ileri pin_a0 #define buton_geri pin_a1
int i=0,hiz=10;
const int yarim_adim[]={0x01,0x03,0x02,0x06,0x04,0x0C,0x08,0x09}; // Step motor yarım adım dönüş adımları
/********* ANA PROGRAM FONKSİYONU********/
void main ( ) { setup_psp(PSP_DISABLED); // PSP birimi devre dışı setup_timer_1(T1_DISABLED); // T1 zamanlayıcısı devre dışı setup_timer_2(T2_DISABLED,0,1); // T2 zamanlayıcısı devre dışı setup_adc_ports(NO_ANALOGS); // ANALOG giriş yok setup_adc(ADC_OFF); // ADC birimi devre dışı setup_CCP1(CCP_OFF); // CCP1 birimi devre dışı setup_CCP2(CCP_OFF); // CCP2 birimi devre dışı
output_b(0x00);
while(1) // Sonsuz döngü {
if (input(buton_ileri)) // İLERİ Butonuna basıldı ise { output_b(yarim_adim); // Step motor 1 adım ileri while(input(buton_ileri));// Basılan tuş bırakılana kadar bekle delay_ms(hiz); // Adımlar arası bekleme süresi
if (i==7) // i değişkeni 7 olunca i değeri -1 olsun i=-1; i++; // i değişkenini 1 arttır
}
if (input(buton_geri)) // GERİ Butonuna basıldı ise { if (i==0) // i değişkeni 0 ise i değeri 8 olsun i=8; i--; // i değişkenini 1 azalt output_b(yarim_adim); // Step motora 1 adım geri while(input(buton_geri)); // Basılan tuş bırakılana kadar bekle delay_ms(hiz); // Adımlar arası bekleme süresi } } }
Bu devre altaş yayıncılığın CCS ile PIC Programlama kitabından alınmıştır.