ccs c pwm keskin dönüşler

Başlatan datasheet, 05 Şubat 2013, 02:55:02

datasheet

Selamun Aleykum arkadaşlar çizgi izleyen robotla uğraşıyorum bu aralar , robot çalışıyor sıkıntı yok robotu pwm ile yapmak istedim oldumu bilmiyorum  keskin olmayan virajlarda bile çizgiden çıkıyor ,KESKİN virajları dönebilmek için pwm değerinin ne olması gerekir ?

devrede l293d nin enable bacaklarını 16f628a nın 9 nolu pinine(ccp1) bağladım .

kod:


void main()

{
set_tris_a(0x00); 
set_tris_b(0xFF); 
setup_ccp1(ccp_pwm);

while(true)  

{

if(  input(pin_b2)==1 )
{
set_pwm1_duty(5000);
output_low(pin_a0);   
output_high(pin_a1);
output_high(pin_a2);
output_low(pin_a3);
}


if( input(pin_b1)==1)
{
set_pwm1_duty(130);
output_low(pin_a0);   
output_high(pin_a1);
output_high(pin_a2);
output_high(pin_a3);
}
if( input(pin_b4)==1 )
{
set_pwm1_duty(130);
output_high(pin_a0);   
output_high(pin_a1);
output_high(pin_a2);
output_low(pin_a3);
}

}



kod bu şekildemi yazılacak arkadaşlar pwm i işleme konusunda çok yetersizim birisi balık tutmayı öğretirse çok sevinirim hayırlı geceler

datasheet

arkadaşlar değerlerle oynadım fakat pek bişey değişmedi ,pwm etki etmiyormu acaba kod yazımı yanlışmı ?

skara1214

burada  tek pwm yi kullanıyorsun yön nasıl veriyorsun? 2 motoru 2 ayrı pwm ile kontrol edersen virajlarda birisini diğerinden daha yavaş hale getirerek güzel bir dönüş yakalarsın bu 1. ile 2. arasındaki oranı deneye yanıla bulursun
Herkes ölür ama herkes gerçekten yaşamaz

datasheet

#3
Alıntı yapılan: skara1214 - 05 Şubat 2013, 12:44:19
burada  tek pwm yi kullanıyorsun yön nasıl veriyorsun? 2 motoru 2 ayrı pwm ile kontrol edersen virajlarda birisini diğerinden daha yavaş hale getirerek güzel bir dönüş yakalarsın bu 1. ile 2. arasındaki oranı deneye yanıla bulursun

normalde pwm kullanmadan yapmıştım sonra yazılım geliştiriyim diye yolları değiştirdim pici değiştiremediğimden picin tek ccp  çıkışına gönderdim.hocam 877a kullanırsam enable1 i ccp1  enable2 yi ccp2 ye göndercem değilmi?

son olarakta kod bu şekildemi olcak hocam ? pwm bu şekildemi kullanılıyor teşekkürler

skara1214

hangi motor sürücüyü kullanıyorsun bilmiyorum ama l298 ise enable yi highta tut bacaklara pwm uygula bu şekildede çalışması gerekli enable'a pwm koymak virajlarda işe yaramaz tamamen sistemin hızını arttırır yada azaltır.Yazdığın kodun normalde böyle çalışıp çalışmadığını bilmiyorum
Herkes ölür ama herkes gerçekten yaşamaz

datasheet

Alıntı yapılan: skara1214 - 05 Şubat 2013, 14:42:45
hangi motor sürücüyü kullanıyorsun bilmiyorum ama l298 ise enable yi highta tut bacaklara pwm uygula bu şekildede çalışması gerekli enable'a pwm koymak virajlarda işe yaramaz tamamen sistemin hızını arttırır yada azaltır.Yazdığın kodun normalde böyle çalışıp çalışmadığını bilmiyorum
http://a1302.hizliresim.com/16/5/jsyvg.png

bu şekilde bağlantım ,bu şekilde kontrol sağ ve sol motorları ayrı ayrı kontrol edemiyormuyum ?

skara1214

evet edebilirsin bu şekilde  ama enable pini ne kadarlık pwmye tepki veriyor onu bilmiyorum optimum değeri sen bulacaksın
Herkes ölür ama herkes gerçekten yaşamaz