你好,我有一個RC汽車有兩個3V電機(一個左/右,另一個前/後)。左右電機工作正常,但當我嘗試旋轉另一個電機時,它只能旋轉回來。我已經單獨嘗試了電機,並且在沒有控制器的情況下雙向工作。電機只有一個方向與L293D控制器
我的代碼如下:
int enablePinMotorAF = 3;
int in1PinMotorAF = 5;
int in2PinMotorAF = 6;
int enablePinMotorLR = 11;
int in1PinMotorLR = 10;
int in2PinMotorLR = 9;
boolean reverse = true;
void setup() {
pinMode(enablePinMotorAF, OUTPUT);
pinMode(in1PinMotorAF, OUTPUT);
pinMode(in2PinMotorAF, OUTPUT);
pinMode(enablePinMotorLR, OUTPUT);
pinMode(in1PinMotorLR, OUTPUT);
pinMode(in2PinMotorLR, OUTPUT);
}
void loop() {
//go forward ->not working
analogWrite(enablePinMotorAF, 230); //max speed
digitalWrite(in1PinMotorAF, reverse);
digitalWrite(in2PinMotorAF, !reverse);
delay(3000);
//go back -> working
analogWrite(enablePinMotorAF, 230); //max speed
digitalWrite(in1PinMotorAF, !reverse);
digitalWrite(in2PinMotorAF, reverse);
delay(3000);
//go right -> working
analogWrite(enablePinMotorLR, 230); //max speed
digitalWrite(in1PinMotorLR, !reverse);
digitalWrite(in2PinMotorLR, reverse);
delay(3000);
//go left -> working
analogWrite(enablePinMotorLR, 230); //max speed
digitalWrite(in1PinMotorLR, reverse);
digitalWrite(in2PinMotorLR, !reverse);
delay(3000);
}
這裏是接線太:
的綠色和橙色線是藍牙模塊。
你有什麼想法我該如何解決這個問題,並使其工作?
謝謝。
問題是我必須將引腳6與引腳3互換,因爲它們被聲明爲錯誤。現在的方向是好的,它的工作原理,但我經過一些測試,它只是非常緩慢地旋轉,左/右馬達只是在搖晃。我嘗試了一種新電池,結果相同。所以你的意思是@JLH,我應該將4個IN引腳連接到非PWM端口?這可能是問題嗎? –
不需要。簡單地說:這兩個引腳,不管它們是做analogWrites的,它們都需要連接到L293上的使能引腳。其他的引腳並不關心他們在Arduino上的連接,只要你可以使用digitalWrites()來關閉它們(前進和後退)。 – TomServo
現在我有這樣的:兩個啓用引腳連接到6,11(PWM端口),我做模擬寫速度改變,其他(IN1,IN2,IN3,IN4)連接到其他PWM端口,我做digitalWrite改變方向。但他們仍然行動緩慢。這是爲什麼? –