Hi all,
I want to build a robot that reaches a certain target given a known starting position while avoiding any obstacle it faces along the way.
I have a Rover 5 chassis, Rover 5 motor driver board, Arduino Uno, Ultrasonic Range finders, and can buy IMU (Gyro + Accelerometer) board.
Can anyone help with that?
Thanks in advance
Can you already reach the target without obstacle avoidance?
DrDiettrich:
Can you already reach the target without obstacle avoidance?
Wish I could, Obstacle avoidance is the easy part. I have no idea how to make the robot reach a certain position
Navigation without rails, beacons or other absolute "landmarks" is not very reliable 
The Rover 5 chassis looks like the base of the Ez-Revolution Roli, which is usually steered by a camera and two powerful microcontrollers.
Mahmoud-elgeziry:
I have no idea how to make the robot reach a certain position
Then just work on that part of the project and leave obstacle avoidance for later.
...R
Robin2:
Then just work on that part of the project and leave obstacle avoidance for later.
Do you have any idea how to accomplish this target reaching thing?
DrDiettrich:
Navigation without rails, beacons or other absolute "landmarks" is not very reliable 
Rover 5 also comes with encoders, can I use that to determine the distance traveled?
Mahmoud-elgeziry:
Do you have any idea how to accomplish this target reaching thing?
No -
but I'm sure if you sit down and think about it for an hour or two you will get some ideas.
How will you define the target for the Robot?
How far is it from the start point?
Will the robot be moving on a level floor indoors or over rough terrain outdoors?
If the robot is moving towards the target but not in quite the correct direction how will it detect the error and make an adjustment?
...R
According to the unspecific manual, you may need H-bridge driver modules for the motors. Search the Forum or Learning section for related information and sample code on DC motors and quadrature encoders. Eventually you should use a separate power source (batteries...) for the Arduino.
Have a lengthy USB cable for the first tests, then you can send the robot commands from the Serial Monitor window. Later on you can add some communication device (e.g. RF, IR...) for remote control.
When you give the target coordinates in polar coordinates (angle and distance), first turn the robot into the right direction, then let it move the required number of encoder steps. You'll have to determine the scaling factors yourself, for the number of steps for a full or 90° turn, and movement by e.g. 10 cm or inches.
Measuring acceleration will not help much, IMO. Tracking encoder steps will already suffer from slick and uneven ground, integrating accelerations adds more complications (earth rotation...). Eventually a compass module can help in turning the robot into the right direction.