pwm frekansı ayarlama

Merhaba arkadaşlar, Ben L298N motor sürücü ile Dc motor devresi yaptım, bunu sürmek için gerekli yazılımı yaptım, girişlere pwm uygulayarak hız kontrolü yapıyorum ve çift yönde kullanabiliyorum, fakat motorları daha verimli sürmek için farklı frekans değerleri girmem gerekiyor. Benim sormak istediğim asıl konu burada pwm’in frekansını nasıl ayarlayabilirim. Arduino mega kullanıyorum ve çıkışlar genellikle 490hz, ben 1-5 khz arasından değiştirmek istiyorum. İnternetten araştırdıklarım ile net bir bilgi bulamadım. Bu konuda yardımcı olursanız sevinirim. Teşekkürler, iyi çalışmalar.

Burada PWM Frekansı ile iki yazı yazılmış, görmüşsünüzdür belki ama frekans ayarlama ile ilgili örnekler bunlar sanırım. http://arduino.cc/en/Tutorial/SecretsOfArduinoPWM http://playground.arduino.cc/Code/PwmFrequency

Teşekkür ederim daha önce görmüştüm evet fakat orada, pinMode(3, OUTPUT); pinMode(11, OUTPUT); TCCR2A = _BV(COM2A1) | _BV(COM2B1) | _BV(WGM21) | _BV(WGM20); TCCR2B = _BV(CS22); OCR2A = 180; OCR2B = 50; Bu şekilde register üzerinden pwm frekansı ayarlamamı sağlıyacak bir komut vardı bunu nasıl kullanmam gerekir. Aynen bu şekilde döngü içinde kullandığımda çıkış alamadım.

Sanırım yarım köprü kullanarak da yapabilirsiniz. Başka bir yerde çalışma mantığını anlatmaya çalışmıştım. http://www.kontrolkalemi.com/forum/guc-elektronigi/61902-pwm-dc-motor-kontrolu/sayfa2.html#post520985 Biraz uzun bir bağlantı olacak ama işlemsel yükselteç kullanarak da sinyalin doluluk boşluk oranını değiştirebilirsiniz. http://www.falstad.com/circuit/#%24+1+5.0E-6+10.634267539816555+63+5.0+50 a+128+320+240+320+0+15.0+-15.0+1000000.0 w+128+336+128+400+0 w+128+400+240+400+0 r+240+320+240+400+0+100000.0 a+352+336+464+336+0+15.0+-15.0+1000000.0 r+240+400+320+400+0+40000.0 w+320+400+464+400+0 w+464+400+464+336+0 w+464+336+464+272+0 c+352+272+464+272+0+5.0E-7+-5.664856662909097 w+352+272+352+320+0 g+352+352+352+368+0 w+128+304+96+304+0 g+96+304+96+336+0 r+352+272+288+272+0+5000.0 r+352+320+288+320+0+40000.0 d+240+272+288+272+1+0.805904783 d+288+320+240+320+1+0.805904783 w+240+272+240+320+0 r+512+336+608+336+0+1000.0 r+528+416+592+416+0+1000.0 a+672+352+784+352+1+15.0+-15.0+1000000.0 R+496+432+496+464+0+0+40.0+6.0+0.0+0.0+0.5 r+832+368+832+416+0+1000.0 r+832+448+832+496+0+1000.0 a+864+288+944+288+0+12.0+-12.0+1000000.0 r+864+112+864+160+0+1000.0 r+752+208+832+208+0+1000.0 w+464+336+512+336+0 w+608+336+608+416+0 w+608+416+592+416+0 w+528+416+496+416+0 w+496+416+496+432+0 w+608+336+672+336+0 w+672+368+672+416+0 w+672+416+832+416+0 w+832+416+832+448+0 w+832+368+832+352+0 w+832+352+784+352+0 g+832+512+832+528+0 g+736+240+736+256+0 w+736+240+736+208+0 w+832+208+864+208+0 w+864+208+864+160+0 w+832+208+832+272+0 w+832+272+864+272+0 w+864+304+832+304+0 w+832+304+832+352+0 w+832+496+832+512+0 w+736+208+752+208+0 R+864+80+864+48+0+0+40.0+12.0+0.0+0.0+0.5 w+864+112+864+80+0 w+944+288+992+288+0 o+28+64+0+34+10.0+0.003125+0+-1 o+38+64+0+34+20.0+0.003125+1+-1 o+52+64+0+34+20.0+9.765625E-5+2+-1

Teşekkürler, evet bu bir yöntem kullanılabilir. Fakat şuan bir çok dc motor kontrolünü arduino üzerinden yapacağım, ben deniyorum fakat arduino’nun pwm çıkışlarını değiştiremiyorum. Arduino pwm frekansını ayarlamaya ihtiyac duyuyorum. Pwm frekansı heseplarken normalde bölme oranı vs. değerler belirlenir, bu şekilde bir frekans değişimi yapılabilir mi ?

Aşağıda anlatılıyor. Sade ve başarılı… http://www.youtube.com/watch?v=iP\_f0KY7lx8