I'm trying to control 130RA motors using GoPlus (not GoPlus2).
But it rotates only one direction.
Anyone have same problem??
I'm using,
My Investigation are following.
I uploaded this simple code to my GoPlus module.
//GoPlus Motor Debug code for Atmega328
const int IN_0 = 9;
const int IN_1 = 10;
const int IN_2 = 11;
const int IN_3 = 3;
void setup() {
pinMode(IN_0, OUTPUT);
pinMode(IN_1, OUTPUT);
pinMode(IN_2, OUTPUT);
pinMode(IN_3, OUTPUT);
}
void loop() {
digitalWrite(IN_0, LOW);
digitalWrite(IN_1, LOW);
digitalWrite(IN_2, LOW);
digitalWrite(IN_3, LOW);
delay(2000);
digitalWrite(IN_0, HIGH); //M0 ---NG--------
digitalWrite(IN_1, LOW);
digitalWrite(IN_2, HIGH); //M2 --OK: but rotates Intermittently--
digitalWrite(IN_3, LOW);
delay(2000);
digitalWrite(IN_0, HIGH);
digitalWrite(IN_1, HIGH);
digitalWrite(IN_2, HIGH);
digitalWrite(IN_3, HIGH);
delay(2000);
digitalWrite(IN_0, LOW); //M0 --OK: but rotates Intermittently--
digitalWrite(IN_1, HIGH);
digitalWrite(IN_2, LOW); //M2 --NG--------
digitalWrite(IN_3, HIGH);
delay(2000);
digitalWrite(IN_0, LOW);
digitalWrite(IN_1, LOW);
digitalWrite(IN_2, LOW);
digitalWrite(IN_3, LOW);
delay(2000);
digitalWrite(IN_0, LOW); //M0 --OK: rotates Continuously--
digitalWrite(IN_1, HIGH);
digitalWrite(IN_2, HIGH); //M2 --OK: rotates Continuously--
digitalWrite(IN_3, LOW);
delay(2000);
}
Only following case works well, but others don't...
digitalWrite(IN_0, LOW); //M0 --OK--
digitalWrite(IN_1, HIGH);
digitalWrite(IN_2, HIGH); //M2 --OK--
digitalWrite(IN_3, LOW);
- The voltage(HIGH / LOW) of IN_0 to IN_3 of LV8548 are correct for all cases.
- I replaced to another GoPlus module, but it was exactly the same.
To drive 130RA motor, GoPlus is too weak??