Go Down

Topic: How to make wall/obstacle avoiding robot with arduino uno atmega 328 (Read 6861 times) previous topic - next topic


manju123

I'm try the code in robot. sensor is working (sending distance to serial monitor) well but motors are on same position without turning :/

oric_dan

As I originally suggested, the best thing to do is learn how to operate the motors separately from the sensors, and the sensors separately from the motors, and after you do that, only then combine the two together.

manju123

HELP ME PLEASE  !                                                                          HELP ME PLEASE !                                                                       HELP ME PLEASE ![/color][/color]


manju123

sensors are working  :| and send details to serial monitor.but motors are not working I tried it by even removing sensor but it wasn't work  :(

PaulS

Quote
but motors are not working

All we know so far is where one end of each of 4 wires go. Where is the rest of the schematic? Where is the code?

You need to do some stuff yourself.

manju123

this is the code I used

int ENA=5;//connected to arduino's port 5 (output pwm)
int IN1=2;//connected to arduino's port 2
int IN2=3;//connected to arduino's port 3
int ENB=6;//connected to arduino's port 5 (output pwm)
int IN3=4;//connected to arduino's port 4
int IN4=7;//connected to arduino's port 7

const int trigPin = 13;
const int echoPin = 12;

void setup() {
  // initialize serial communication:
  Serial.begin(9600);
}

void loop()
{

analogWrite (ENA,200);//start driving motorA
  analogWrite (ENB,200);//start driving motorB

  // establish variables for duration of the ping,
  // and the distance result in inches and centimeters:
  long duration, inches, cm;

  // The sensor is triggered by a HIGH pulse of 10 or more microseconds.
  // Give a short LOW pulse beforehand to ensure a clean HIGH pulse:
  pinMode(trigPin, OUTPUT);
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // Read the signal from the sensor: a HIGH pulse whose
  // duration is the time (in microseconds) from the sending
  // of the ping to the reception of its echo off of an object.
  pinMode(echoPin, INPUT);
  duration = pulseIn(echoPin, HIGH);

  // convert the time into a distance
  inches = microsecondsToInches(duration);
  cm = microsecondsToCentimeters(duration);
 
  Serial.print(inches);
  Serial.print("in, ");
  Serial.print(cm);
  Serial.print("cm");
  Serial.println();
 
if ( inches < 10) {
 
 
  analogWrite (ENA,255);//start driving motorA
  analogWrite (ENB,1);//start driving motorB
 
  delay (500);
 
}



}

long microsecondsToInches(long microseconds)
{
  // According to Parallax's datasheet for the PING))), there are
  // 73.746 microseconds per inch (i.e. sound travels at 1130 feet per
  // second).  This gives the distance travelled by the ping, outbound
  // and return, so we divide by 2 to get the distance of the obstacle.
  // See: http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf
  return microseconds / 74 / 2;
}

long microsecondsToCentimeters(long microseconds)
{
  // The speed of sound is 340 m/s or 29 microseconds per centimeter.
  // The ping travels out and back, so to find the distance of the
  // object we take half of the distance travelled.
  return microseconds / 29 / 2;
}

PaulS

Quote
this is the code I used

Wonderful. So, now what we know is that you STILL can't post code correctly. Still NOTHING about where the other end of the wires go.

All I can say at this point is good luck.

oric_dan


he he don't say so  =( =( I'm new to arduino and I like to go throug but I don't know how to do it and no time to learn on this project because it want to be finish before end of this month

Yes, we all have this trouble, don't we. No time to learn how to do our own projects, so better to find someone else to do them for us.

You're off to a VERY BAD start here.

You didn't listen to anything I said previously, so I'll just point you back to read those earlier posts, reply #6 and #9. I'm done here, got other things to do, so good luck.

Go Up