Arduino Bluetooth Kontrollü Araba Tekerler Ters Dönüyor

682784

Hectopat
Katılım
16 Ocak 2022
Mesajlar
5.736
Makaleler
6
Çözümler
27
Sorun başlıktaki gibi. Model yüzünden motorların ikisini ters takmak zorunda kaldık. İki teker ileri giderken ikisi geri gidiyor. Nasıl düzenlenir yardımcı olabilir misiniz?

[CODE title="ARABA KODLARI"]
char t;

void setup() {
pinMode(13,OUTPUT); //Sol İleri Motor
pinMode(12,OUTPUT); //Sol Geri Motor
pinMode(11,OUTPUT); //Sağ İleri Motor
pinMode(10,OUTPUT); //Sağ Geri Motor
Serial.begin(9600);
}
void loop() {
if(Serial.available()){
t = Serial.read();
Serial.println(t);
}
if(t == 'F'){ //ileri hareket et (tüm motorlar ileri yönde döner)
digitalWrite(13,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,LOW);
digitalWrite(10,LOW);
}
else if(t == 'B'){ //geri hareket et (tüm motorlar ters yönde döner)
digitalWrite(12,HIGH);
digitalWrite(10,HIGH);
digitalWrite(13,LOW);
digitalWrite(11,LOW);
}
else if(t == 'L'){ //sağa dönün (sol taraftaki motorlar ileri yönde döner, sağ taraftaki motorlar dönmez)
digitalWrite(11,HIGH);
digitalWrite(13,LOW);
digitalWrite(12,LOW);
digitalWrite(10,LOW);
}
else if(t == 'R'){ //// sola dön (sağ taraftaki motorlar ileri yönde döner, sol taraftaki motorlar dönmez)
digitalWrite(13,HIGH);
digitalWrite(12,LOW);
digitalWrite(11,LOW);
digitalWrite(10,LOW);
}

}
else if(t == 'S'){ //STOP (all motors stop)
digitalWrite(13,LOW);
digitalWrite(12,LOW);
digitalWrite(11,LOW);
digitalWrite(10,LOW);
}
delay(100);
}[/CODE]
@Affansen
 

Dosya Ekleri

  • 10279547404338.jpg
    10279547404338.jpg
    22,7 KB · Görüntüleme: 77
Son düzenleyen: Moderatör:
Sorun başlıktaki gibi. Model yüzünden motorların ikisini ters takmak zorunda kaldık. İki teker ileri giderken ikisi geri gidiyor. Nasıl düzenlenir yardımcı olabilir misiniz?

[CODE title="ARABA KODLARI"]
char t;

void setup() {
pinMode(13,OUTPUT); //Sol İleri Motor
pinMode(12,OUTPUT); //Sol Geri Motor
pinMode(11,OUTPUT); //Sağ İleri Motor
pinMode(10,OUTPUT); //Sağ Geri Motor
Serial.begin(9600);
}
void loop() {
if(Serial.available()){
t = Serial.read();
Serial.println(t);
}
if(t == 'F'){ //ileri hareket et (tüm motorlar ileri yönde döner)
digitalWrite(13,HIGH);
digitalWrite(11,HIGH);
digitalWrite(12,LOW);
digitalWrite(10,LOW);
}
else if(t == 'B'){ //geri hareket et (tüm motorlar ters yönde döner)
digitalWrite(12,HIGH);
digitalWrite(10,HIGH);
digitalWrite(13,LOW);
digitalWrite(11,LOW);
}
else if(t == 'L'){ //sağa dönün (sol taraftaki motorlar ileri yönde döner, sağ taraftaki motorlar dönmez)
digitalWrite(11,HIGH);
digitalWrite(13,LOW);
digitalWrite(12,LOW);
digitalWrite(10,LOW);
}
else if(t == 'R'){ //// sola dön (sağ taraftaki motorlar ileri yönde döner, sol taraftaki motorlar dönmez)
digitalWrite(13,HIGH);
digitalWrite(12,LOW);
digitalWrite(11,LOW);
digitalWrite(10,LOW);
}

}
else if(t == 'S'){ //STOP (all motors stop)
digitalWrite(13,LOW);
digitalWrite(12,LOW);
digitalWrite(11,LOW);
digitalWrite(10,LOW);
}
delay(100);
}[/CODE]
@Affansen
Motor sürücü kullanıyorsunuz sanırım. Diğer yönde döndürmek istediğiniz tekerlerin kablolarını ters bağlayın.
 
Motor sürücü kullanıyorsunuz sanırım. Diğer yönde döndürmek istediğiniz tekerlerin kablolarını ters bağlayın.
Evet motor sürücüsü kullanıyorum. Ters bağlamaktan kastınız tam olarak nasıl acaba resimde göstermeniz mümkündür?
 

Dosya Ekleri

  • arduinogeneluygulama_003_0.jpg
    arduinogeneluygulama_003_0.jpg
    63,2 KB · Görüntüleme: 76
Sol taraftaki motordaki sarı kabloyu yeşilin olduğu yere, yeşili de sarının olduğu yere takın. Aynı işlemi sağ taraftaki motora da uygulayın.
Teşekkürler hocam şu an deneme fırsatım yok. Yarın deneyip ekleme yaparım işe yararsa çözüm olarak işaretlerim.
Hocam sürücüler ile uğraşmak yerine koda ekleme yaparak düzeltme imkanımız yok mu?
 
Hocam sürücüler ile uğraşmak yerine koda ekleme yaparak düzeltme imkânımız yok mu?
Hayır. Bağlantılarla alakalı bir sorun olduğu için siz kodu istediğiniz kadar değiştirin, yine de o motorlar ters yöne dönecek. Siz iki kanallı motor sürücü kullanıyorsunuz, bu şekilde motorları ayrı olarak kontrol etmek mümkün değil. Mesela ön taraftakiler yerine sağ taraftakileri ters yönde hareket ettirmek istiyorum deseydiniz mümkün olurdu ama ön/arka olarak isterseniz olmaz. Şu anda tek yol maalesef kabloları değiştirmek. Eğer kablolar motora lehimliyse kabloların motora bağlı olan uçları değil motor sürücüye bağlı olan uçları da değiştirebilirsiniz. Daha kolay olur.
 
Dediklerinizi yapacaktım lakin nedenini anlamadığım şekilde kodu yüklemiyor yardımınız için teşekkürler eğer kodu halledebilisem dönüş yapacağım.
 

Technopat Haberler

Geri
Yukarı