STEP MOTOR FREN(BREAK) KULLANIMI HK.
  • Selam arkadaşlar şöyle bir sorum olacak belirli mesafelere gönderdiğim ray üzerinde giden bir araç durdugunda ivmeden dolayı kaymalar oluşuyor bu durumda ben fren(break) kodunu nasıl kullanabılırım acaba
  • step motorda zaten motor bobinleri kontrol altında olduğu için frene gerek olmaz yolladığın her adım puls dan sonra frene geçer. motor freni step kontrolu olmayan motorlarda mesela silecek motoru gibi motorlarda gerekir bunun için de motorun +besleme hattına kısa sureli olarak (-) verildiğinde motor olduğu yere çakılır.
  • okoman selamlar hocam;
    bu kodda motor pozisyon , i sayacı değerine ulaşıncaya kadar ilerliyor ve motor kitliyor kendini kitlemesine ama bu seferde l293D SHEİLD ısınmaya başlıyor EL Yakacak kadar taki ben motor.release(); kodunu ekleyene kadar bu kodu ekleyınce motor duruyor ısınmada oluşmuyor tabi bu seferde step motorun milini elimle cevirebiliyorum bu kodu koymadan önce imkansı elimle ceviremiyorum ben bu kodda şu fren olayını nasıl yapcam hocam


    while(mesafe < i) {

    motor.step(pozisyon, BACKWARD, INTERLEAVE);
    i--;
    Serial.println(i);
    bluetooth.println(i);
    motor.release();
  • Motor.release den önce delay koy step durduktan sonra kısa bi fren etkisi olur ivme sonlandıktan sonra frenede gerek kalmaz. Tahrik kayışla ise dikey eksende motru tutmadıkça kayma sürekli olur.yatay eksende sorun olmaz.

    while(mesafe < i) {

    motor.step(pozisyon, BACKWARD, INTERLEAVE);
    i--;
    Serial.println(i);
    bluetooth.println(i);
    Delay(500);
    motor.release();

    Gibi..

  • hocam selamlar dediğiniz gibi şimdi denedim bu seferde adım adım ilerliyor (dur,ilerle,dur ,ilerle ) gibi sanırım her adım artışı için kodu baştan sona doğru okudugu için delayda durma olayı oluşuyor yani direk

    while(mesafe < i) {
    motor.step(pozisyon, BACKWARD, INTERLEAVE);
    i--;
    bu komuttan devam etmiyor onun için komutu while döngüsünün dışında yaptırmak lazım
  • delay(200);
    motor.release();
    mesafe=hedef-pozisyon;
    while(i motor.step(hedef, FORWARD, INTERLEAVE);
    i++;
    Hocam verdiğin fikir için teşekkürler öncelikle delay komutunu ve release komutunu başa eklediğimde fren olayı oluşuyor tabi delayı artırırsam bu sefer butona bastığımda delay değeri kadar bekletip öyle ilerletiyor motoru
  • Anladım. O zaman delay komutunu ve release komutunu when döngüsünün önünde if ile butonların low şartına göre çalıştır.

    İf buton a = low && b = low diğer butonlar vs..
    Delay 200
    Motor release

    Gibi.

Howdy, Stranger!

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

Login with Facebook

Tagged

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