PWM Motor Kontrolü Tepki süresi sorunu
  • Herkese iyi günler,
    Projemde sensörle engel arasındaki mesafe 25 cm oldugunda durmasını veya yavaşlamasını istiyorum fakat 5 cm kala duruyor. Yani tepki süresi çok yavaş. Yazmış oldugum program aşağıdaki gibidir. Donanımsal olarak bir PN2222 ile bir motor sürüyorum ve sensör olarak HC-SR04 kullanıyorum sensörüde D2 ve D4 pinlerine bağladım. Şimdi motoru yavaşlatmak için PWM kontrol yapmaya çalıştım fakat işe yaramadı yavaşlatmam için kullanabileceğim başka -PWM kontrol için- bir komut var mı veya ne önerirsiniz?

    Şimdiden çok teşekkür ederim... İyi çalışmalar...
  • motorda enerjiyi kestiğinizde kendi ataletiyle harekete devam ediyordur bunu engellemek için ters akım verilerek frenleme yapılabilir; motorun artı bacağını kısa bir süre eksiye çekmek bir çözüm olabilir.
  • Kullandığın diğer devre elemanları(hc-sr04) ile ilgili de özet bilgi verirsen sorununu okuyan arkadaşlar için daha faydalı olacaktır.
  • alt fonksiyonlar kullanman lazım yoksa tepkileri cok yavas kalır
  • void loop parantezini kapattıktan sonra bunları kendine uyarla yaz void ult_on()//ön ultrasonic mesafe değeri { digitalWrite(trpin1, LOW); delayMicroseconds(2); digitalWrite(trpin1, HIGH); delayMicroseconds(10); digitalWrite(trpin1, LOW); sn1 = pulseIn(ecpin1, HIGH); cm1 = sn1/58; if(cm1>300||cm1<=0) cm1=300; } void loop un içindede cm1 ve sn1 degişkenlerini kullanabilmek için fonksiyonu cagırcaksın void loop parantezinin içine ' ult_on(); ' yazarsan olur
  • .<.b.r ./.> bu kısmı sil

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Açık kaynak kültürü gereği, çözdüğünüz problemlerin çözümlerini paylaşmayı lütfen unutmayın.