Issues with servo-mounted ultrasonic sensor on autonomous car - SOLVED
i working on autonomous rc car (http://arduino.cc/forum/index.php/topic,98763.msg746374.html). for obstacle avoidance, using ping ultrasonic sensor mounted on servo sweeps , forth. while can servo , sensor work fine independently, can't them work together. i think due problem wiring. any ideas on how solve it?
here wiring used in cases.

alone, servo works.
http://www.youtube.com/watch?v=emdmovtuyk0
alone, sensor works.
http://www.youtube.com/watch?v=li_qkz5nrsw
but, when try put them together, servo sweeps erratically , sensor outputs bad data. any ideas how fix issue?
http://www.youtube.com/watch?v=k3epij6ccte
thanks help.
here wiring used in cases.
alone, servo works.
http://www.youtube.com/watch?v=emdmovtuyk0
code: [select]
#include <servo.h>
servo sensingservo;
int pos = 1300;
void setup()
{
serial.begin(9600);
sensingservo.attach(5);
}
void loop() {
//sweep
// results in 1 on , pass each second
// @ resolution of 36 measurements each pass
for(pos = 800; pos < 1700; pos += 25)
{
sensingservo.writemicroseconds(pos);
serial.print("position: ");
serial.print(pos);
serial.print("\n");
}
for(pos = 1700; pos > 800; pos -= 25)
{
sensingservo.writemicroseconds(pos);
serial.print("position: ");
serial.print(pos);
serial.print("\n");
}
}
alone, sensor works.
http://www.youtube.com/watch?v=li_qkz5nrsw
code: [select]
#include <servo.h>
// setup ultrasonic distance sensor
const int pingpin = 2;
unsigned int duration, distance;
void setup() {
serial.begin(9600);
}
void loop() {
// read , print ultrasonic sensor distance
pinmode(pingpin, output);
digitalwrite(pingpin, low);
delaymicroseconds(2);
digitalwrite(pingpin, high);
delaymicroseconds(5);
digitalwrite(pingpin, low);
pinmode(pingpin, input);
duration = pulsein(pingpin, high);
distance = duration / 74 / 2;
serial.print(" distance: ");
serial.print(distance);
serial.print("\n");
}
but, when try put them together, servo sweeps erratically , sensor outputs bad data. any ideas how fix issue?
http://www.youtube.com/watch?v=k3epij6ccte
code: [select]
#include <servo.h>
servo sensingservo;
int pos = 1300;
// setup ultrasonic distance sensor
const int pingpin = 2;
unsigned int duration, distance;
void setup()
{
serial.begin(9600);
sensingservo.attach(5);
}
void loop() {
for(pos = 800; pos < 1700; pos += 25)
{
sensingservo.writemicroseconds(pos);
// read , print ultrasonic sensor distance
pinmode(pingpin, output);
digitalwrite(pingpin, low);
delaymicroseconds(2);
digitalwrite(pingpin, high);
delaymicroseconds(5);
digitalwrite(pingpin, low);
pinmode(pingpin, input);
duration = pulsein(pingpin, high);
distance = duration / 74 / 2;
serial.print("position: ");
serial.print(pos);
serial.print(" distance: ");
serial.print(distance);
serial.print("\n");
}
for(pos = 1700; pos > 800; pos -= 25)
{
sensingservo.writemicroseconds(pos);
// read , print ultrasonic sensor distance
pinmode(pingpin, output);
digitalwrite(pingpin, low);
delaymicroseconds(2);
digitalwrite(pingpin, high);
delaymicroseconds(5);
digitalwrite(pingpin, low);
pinmode(pingpin, input);
duration = pulsein(pingpin, high);
distance = duration / 74 / 2;
serial.print("position: ");
serial.print(pos);
serial.print(" distance: ");
serial.print(distance);
serial.print("\n");
}
}
thanks help.
hi,
read 2 links in signature, it's quite power issue, second link has video showing problem, first link presents solutions.
duane b
rcarduino.blogspot.com
read 2 links in signature, it's quite power issue, second link has video showing problem, first link presents solutions.
duane b
rcarduino.blogspot.com
Arduino Forum > Using Arduino > Project Guidance > Issues with servo-mounted ultrasonic sensor on autonomous car - SOLVED
arduino
Comments
Post a Comment