iki sarı gear motor klon arduino unu l298n motor sürücü ile bir araba projesi
yapacaktım ancak bir sorun yaşadım
sorun şu
ileri fonksiyonunu çalıştırdığımda ileri gidiyor ama geri sol sağa dönmesini istediğimde sanki enerji yetmiyor muş gibi ses çıkarıyor bağlantı şemam doğru peki sorun nedir yardımcı ola bilir misiniz çünkü bir yıldır bir sonuç bulamadım
pil olarak 1.5 volt duracell pil kullanıyorum kod aşağıda
`const int enA = 10;
const int in1 = 9;
const int in2 = 8;
const int enB = 11;
const int in3 = 7;
const int in4 = 6;
void setup() {
// Motor pinlerini çıkış olarak ayarla
pinMode(enA, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(enB, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
// Seri haberleşmeyi başlat
Serial.begin(9600);
}
void loop() {
sol(); // 1 saniye sağa dön
delay(1000);
ileri(); // 2 saniye ileri git
delay(2000);
sag(); // 1 saniye sağa dön
delay(1000);
geri(); // 2 saniye geri git
delay(2000);
sol(); // 1 saniye sola dön
delay(1000);
dur(); // 1 saniye dur
delay(1000);
}
void ileri() {
// Sağ motor ileri
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
analogWrite(enA, 210); // Hızı 235 olarak ayarla
// Sol motor ileri
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
analogWrite(enB, 210); // Hızı 235 olarak ayarla
}
void geri() {
// Sağ motor geri
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
analogWrite(enA, 210); // Hızı 235 olarak ayarla
// Sol motor geri
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
analogWrite(enB, 210); // Hızı 235 olarak ayarla
}
void sag() {
// Sağ motor ileri
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
analogWrite(enA, 220); // Hızı 235 olarak ayarla
// Sol motor dur
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
analogWrite(enB, 0); // Sol motoru durdur
}
void sol() {
// Sağ motor dur
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
analogWrite(enA, 0); // Sağ motoru durdur
// Sol motor geri
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
analogWrite(enB, 225); // Hızı 235 olarak ayarla
}
void dur() {
// Sağ motor dur
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
analogWrite(enA, 0); // Sağ motoru durdur
// Sol motor dur
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
analogWrite(enB, 0); // Sol motoru durdur
}
6`ğıda