Development of a simple autonomous vehicle using Arduino
The basic idea
The autonomous rc car (1:12 scale) starts from a specific point and autonomously navigates itself to reach the target point, by avoiding static obstacles. A* algorithm was used for the optimal path design.
Because of memory issues, the A* algorithm could not be executed in Arduino to produce the directions for the optimal path. Thus, the A* algorithm was compiled and executed in a linux environment and the results were manually passed into the arduino code.
The project consists of two folders.
-- The "astar" folder containing the implementation of A* algorithm in C programming language.
-- The "arduino" folder containing the Arduino code and an auxiliary library.
In the following image, the autonomous vehicle is presented.
The following image depicts the visual map that is handled by the vehicle.
The results from the A* algorithm for given start and target points. The weight of each point is presented in the map.
Demonstration video link: