Rf haberleşme hatası çizgi izleyen robot prj
  • Merhaba hatasız çalışan çizgi izleyen robot projesine 433 mhz verici eklemek için
    void setup() altına , vw_setup(2000);

    satırını yazdığım da robot hareket etmiyor. bu satır silinip tekrar derlenip yüklendiğinde hata yok.

    (#include satırı programın ilk satırında mevcut ve arduino kütüphanesinde klasör olarakta eklenmiş olmasına rağmen.
    yorumunuz ne olur ,muhtemelen bir şeyleri atlıyorum.


  • benim bildiğim bant genişliği0-10000 arasında olabiliyor.
    vw_set_tx_pin(12);
    vw_setup (4000);
    ayrıca alıcı ve verici mantığıyla çalıştığından alıcının da frekansı vericiyle aynı olması gerekmekte.
    ve de kütüphane dosyasının içinin boş olmadığından emin ol. bazen .h bomboş olabiliyor başıma geldi.
  • #include
    char *controller;
    int c;
    int a;
    int ena=10; //PWM için enable pin giriş pini tanımlanır SOL P
    int in1=6; //Motor1 için (+) pin giriş pini tanımlanır SOL G
    int in2=7; //Motor1 için (-) pin giriş pini tanımlanır SOL İ
    int enb=11; //PWM için enable pin giriş pini tanımlanır SAĞ P
    int in3=8; //Motor2 için (+) pin giriş pini tanımlanır SAĞ İ
    int in4=9; //Motor2 SAĞ G
    const int sol_sensor = 2;
    const int sag_sensor = 3;
    const int ort_sensor = 5;
    const int led=13;
    int sol_durum, sag_durum, ort_durum; // sol ve sağ sensörün durum değişkenleri tanımlandı


    void ilet(){

    for(c=1;c<5;c++){<br />vw_set_tx_pin(4);
    vw_setup(4000);
    controller="1" ;
    vw_send((uint8_t *)controller, strlen(controller));
    vw_wait_tx(); // Wait until the whole message is gone
    digitalWrite(13,1);
    delay(2000);
    controller="0" ;
    vw_send((uint8_t *)controller, strlen(controller));
    vw_wait_tx(); // Wait until the whole message is gone
    digitalWrite(13,0);
    delay(2000);
    if(c==5){loop();}
    }
    }


    void setup()
    {

    pinMode(13,OUTPUT);
    pinMode(ena,OUTPUT);
    pinMode(in1,OUTPUT);
    pinMode(in2,OUTPUT);
    pinMode(enb,OUTPUT);
    pinMode(in3,OUTPUT);
    pinMode(in4,OUTPUT);
    pinMode(sag_sensor, INPUT); // sensör pinleri giriş pini olarak atandı
    pinMode(sol_sensor, INPUT);
    pinMode(ort_sensor, INPUT);
    pinMode(13,OUTPUT);



    }

    void loop()
    {
    c==0;
    sol_durum = digitalRead(sol_sensor); // sol ve sağ sensör okunup değişkenlere kaydedildi.
    sag_durum = digitalRead(sag_sensor);
    ort_durum = digitalRead(ort_sensor);


    if (sol_durum == LOW && sag_durum == LOW && ort_durum ==LOW){ // iki sensör de siyah görmüyor ise motorlar ileri gidecek şekilde çalışıtırıldı.

    digitalWrite(7,HIGH); //Sol
    analogWrite(10,195);
    digitalWrite(8,HIGH); //Sag
    analogWrite(11,195);
    }

    else if (sol_durum == LOW && sag_durum == HIGH && ort_durum == LOW) // sağ sensör siyah görüyor ise motorlar sağa dönecek şekilde çalıştırıldı.
    {
    digitalWrite(7,HIGH);
    analogWrite(10,190);
    digitalWrite(8,LOW); //Sag
    analogWrite(11,255);
    }

    else if (sol_durum == HIGH && sag_durum == LOW && ort_durum == LOW) // sol sensör siyah görüyor ise motorlar sola dönecek şekilde çalıştırıldı.
    {
    digitalWrite(7,LOW); //Sol
    analogWrite(10,255);
    digitalWrite(8,HIGH);
    analogWrite(11,190);
    }

    else if (ort_durum == HIGH ) //arka sensör siyah görüyor ise yavaşla ve dur.
    {
    delay(200);
    digitalWrite(7,LOW); //Sol // DUR
    analogWrite(10,255);
    digitalWrite(8,LOW); //Sag
    analogWrite(11,255);
    delay(1000);
    ilet();
    }

    }
  • Merhaba bu hali ile ,yani " vw_setup(4000); " satırı void setup altında değilde ilet etiketinin altında iken 1 kez robot normal ilerleyip "ort_ durum sensörü high olduğunda verici ile karşıya bilgi gönderiyor fakat sonra sağ motor sürekli dönüyor.Eğer " vw_setup(4000); " satırı void setup() altında olur ise robot hiç hareket etmiyor. bu arada ilk baştaki include satırı virtualwire olarak devam ediyor aslında aa kopyalar iken çıkmamış.

Howdy, Stranger!

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

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