Description
In this project, I build a wheeled robot and programmed it to navigate autonomously through a
series of tasks, Using Arduino, motors, encoders and distance sensors.
Take a look at the project on my GitHub page.
The autonomous vehicle
Tasks
The main goal was to successfully pass a series of tasks in an obstacle course, as fast as
possible:
- Maze navigation and exploration - Navigating through a maze
- Angle control - Driving through changing-slope path, keeping constant roll
- Distance control - Following curved wall, keeping constant distance from it
- Velocity control - Driving on a changing-gradient slope, keeping constant speed
- Feature detection - Locating and reaching the finish line flag
The autonomous vehicle in the obstacle course
System Description
I used several components to control the robot motion:
- Control - Arduino Mega 2560 R3
- Motors & encoders:
- - PMW motor and encoder - One on each rear wheel to activate and control the motion
- - Servo motor - Located on the front of the vehicle and used to rotate the TOF
sensor to desired scanning angle
- Sensors:
- - IR sensor - One on each side of the vehicle to measure side distance
- - TOF (Time of Flight) sensor - Assembled on the servo motor to scan the surrounding
space
- - US (ultrasonic) sensor - Located on the top of the vehicle to measure distance
from objects above the vehicle
- - IMU 9250 (9 DOF) - Measures orientation (Gyroscope) and acceleration
(Accelerometer). Compass is not in use
- Visual indication - Led matrix, Indicates mission number and mission success/fail
The system