motor state is not changing

anyone can help me...

i have written a 2 motor drive bot program.
but in this program motor state is not changing its only moving forward.

please check my code.

const int RMF = 5;
const int RMB = 6;
const int LMF = 3;
const int LMB = 4;

void setup() {

pinMode (RMF, OUTPUT);
pinMode (RMB, OUTPUT);
pinMode (LMF, OUTPUT);
pinMode (LMB, OUTPUT);

}

void loop() {

delay (3000);
//to move forward.

digitalWrite(RMF, HIGH);
digitalWrite(RMB, LOW);
digitalWrite(LMF, HIGH);
digitalWrite(LMB, LOW);

delay(3000);
//to move backward.
digitalWrite(RMF, LOW);
digitalWrite(RMB, HIGH);
digitalWrite(LMF, LOW);
digitalWrite(LMB, HIGH);

delay(3000);
//take right turn.
digitalWrite(RMF, LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, HIGH);
digitalWrite(LMB, LOW);

delay(3000);
//take left turn.
digitalWrite(RMF,HIGH);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);

delay(10000);
//to stop.
digitalWrite(RMF,LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);

}

first_robo_car_2_wheel.ino (834 Bytes)

I don't see anything wrong with your code so it is probably a wiring problem. Make a simple pencil drawing showing clearly how everything is connected and post a photo of the drawing. See this Simple Image Guide

...R

To tell if the code is o.k. we need to know what motors you have and how you are driving them. I hope they are not connected directly to the Arduino pins.

Steve

anyone can help me...

i have written a 2 motor drive bot program.
but in this program motor state is not changing its only moving forward.

please check my code.

const int RMF = 5;
const int RMB = 6;
const int LMF = 3;
const int LMB = 4;

void setup() {

pinMode (RMF, OUTPUT);
pinMode (RMB, OUTPUT);
pinMode (LMF, OUTPUT);
pinMode (LMB, OUTPUT);

}

void loop() {

delay (3000);
//to move forward.

digitalWrite(RMF, HIGH);
digitalWrite(RMB, LOW);
digitalWrite(LMF, HIGH);
digitalWrite(LMB, LOW);

delay(3000);
//to move backward.
digitalWrite(RMF, LOW);
digitalWrite(RMB, HIGH);
digitalWrite(LMF, LOW);
digitalWrite(LMB, HIGH);

delay(3000);
//take right turn.
digitalWrite(RMF, LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, HIGH);
digitalWrite(LMB, LOW);

delay(3000);
//take left turn.
digitalWrite(RMF,HIGH);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);

delay(10000);
//to stop.
digitalWrite(RMF,LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);

}

i ve connected digital pin 3, 4, 5, 6 to motor IN 1, IN 2, IN 3 ,IN 4.

L298 Gnd To arduino GND,
L298 5V to arduino 5V,

Battery -ve to L298 GND and +ve to L298 12v.

Left motor connected to L298 on OUT 1, OUT 2.
Right motor connected to L298 on OUT 3, OUT 4.

@tambolideepak24, why are you repeating your question?

Did you read and carefully consider Replies #1 and 2 ? Or are the people just wasting their time trying to help you?

...R

For the left turn, you should have

digitalWrite(LMB, HIGH);

and right turn

digitalWrite(RMB, HIGH);

See here for example

please help

i have gone through the program and circuit so many times.
i had made changes which is suggested.

but all is vain motor is moving in forward direction only.

What does your L298 board look like? Can you provide a reference or a picture? Or maybe you use the bare circuit?

my bot picture is attached with it.

where ?

Help us help you. Provide a diagram or schematic of your circuit as you were asked.

thanks to all for your kind support.

now my bot moving according to my code.

here i made following changes in my code.

const int RMF = 5;
const int RMB = 6;
const int LMF = 3;
const int LMB = 4;

void setup() {

pinMode (RMF, OUTPUT);
pinMode (RMB, OUTPUT);
pinMode (LMF, OUTPUT);
pinMode (LMB, OUTPUT);

}

void loop() {

delay (3000);
digitalWrite(RMF, LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);
delay(3000);

//forward
digitalWrite(RMF, HIGH);
digitalWrite(RMB, LOW);
digitalWrite(LMF, HIGH);
digitalWrite(LMB, LOW);
delay(5000);

digitalWrite(RMF, LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);
delay(3000);

//backward
digitalWrite(RMF, LOW);
digitalWrite(RMB, HIGH);
digitalWrite(LMF, LOW);
digitalWrite(LMB, HIGH);
delay(5000);

digitalWrite(RMF, LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);
delay(3000);

//right turn
digitalWrite(RMF, LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, HIGH);
digitalWrite(LMB, LOW);
delay(5000);

digitalWrite(RMF, LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);
delay(3000);

//left turn
digitalWrite(RMF,HIGH);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);
delay(5000);

digitalWrite(RMF,LOW);
digitalWrite(RMB, LOW);
digitalWrite(LMF, LOW);
digitalWrite(LMB, LOW);
delay(3000);

}