Ynt: dc motor kontrolü hk

Başlatan gkn666, 27 Mart 2015, 20:52:19

arius

Yeni bir konu açmamak için buradan sorumu sormak istiyorum.
16f84a ile dc motor kontrolü yapmaya çalışıyorum.kurmuş olduğum transistörlü H köprüsü ile sürüyorum.
yazılım olarak ccs c kullanıyorum
b0 ve b3 portuna bağlı 2 adet sınır anahtarı var.
b1 ve b2 ye bağlı 2 adet buton. ileri geri yön kontrolü için.
motor ileri giderken sınır anahtarları çalışıyor ve durduruyorum.
ancak geri gelirken durdurmayı yapamıyorum.
simülasyonda düzgün çalışıyor.
sizce neden bu sorunu yaşıyorum. teşekkürler.

Cemre.

Alıntı yapılan: arius - 26 Aralık 2016, 12:45:39
Yeni bir konu açmamak için buradan sorumu sormak istiyorum.
16f84a ile dc motor kontrolü yapmaya çalışıyorum.kurmuş olduğum transistörlü H köprüsü ile sürüyorum.
yazılım olarak ccs c kullanıyorum
b0 ve b3 portuna bağlı 2 adet sınır anahtarı var.
b1 ve b2 ye bağlı 2 adet buton. ileri geri yön kontrolü için.
motor ileri giderken sınır anahtarları çalışıyor ve durduruyorum.
ancak geri gelirken durdurmayı yapamıyorum.
simülasyonda düzgün çalışıyor.
sizce neden bu sorunu yaşıyorum. teşekkürler.

Şema ve kod paylaşırsanız daha hızlı cevap alırsınız, naçizane tavsiyem..

arius

Kod Aşağıdaki gibi.delay komutu olmadan yaptığımda da  değişen bir şey olmadı.
void main()                
{                           
                    
 while(true)              
 {   
 
 if(input(pin_b1)== 0) 
 {
 delay_us(10); 
 output_high(pin_a0); 
 output_low(pin_a1); 
 }                     
                       
  if(input(pin_b0)== 0) 
 {                           
 delay_us(10); 
 output_low(pin_a0); 
 output_low(pin_a1);  
 
 
 }                                                                       
                        
                             
 if(input(pin_b2)== 0) 
 { 
 delay_us(10); 
 output_low(pin_a0); 
 output_high(pin_a1); 
 }                                 
                  
 if(input(pin_b3)== 0) 
 { 
 delay_us(10); 
 output_low(pin_a0); 
 output_low(pin_a1); 
 
 
 }                    
   }                       
}     




devre de yukardaki gibi ama ledler yerine H köprüsünü sürüyorum.
bazen ileri giderken bazen geri giderken sorun çıkarıyor.

eeburakdemir

Buton okurken ark sorununu minimize edebilmen için elbetteki gecikme koymalısın, fakat buton bırakılana kadar ibaresini herbir buton okumana eklersen ark olayını da halletmiş olursun. Gecikmeleri 10-20ms yapsanız yeterlidir. Gerçek devreniz nasıl bilmiyorum ama eğer board üstünde deniyorsanız bile ledlerin önüne akım sınırlandırma dirençlerini koymayı ihmal etmeyiniz.

while(input(!buton1));
Asla pes etme...