A rover is a space exploration vehicle designed to move across the surface of a planet or other celestial body. Some rovers have been designed to transport members of a human spaceflight crew; others have been partially or fully autonomous robots. Rovers usually arrive at the planetary surface on a lander-style spacecraft.

This definition for the rover has been changed over these days because we can build our own intelligence rover at home with the available cutting edge development boards and platforms. My idea was to develop the autonomous obstacle avoidance rover using Ultrasonic range sensors. This was the project with Intel Edison SoC with few sensors from the Intel Grover sensor kit.

Step 1: Components Used

Intel Edison kit for Arduino, servo motor, DC motor, IR sensor, and Ultrasonic range sensor, power adapter.

Few legos components were used to build it for the base of the rover and for mounting the sensors and motors

Step 2: Description

Initially, I started with the IR sensor for calculating the distance or to detect the obstacle. For making it more robust, I connected the IR sensor for the servo motor for checking the obstacle in all the direction. The servo motor acted as the pan motor which can sweep 180° and I used to scan for the obstacle in the 3 positions – left, right, and straight. An algorithm was developed to calculate the distance of the obstacle and control the DC motor connected to drive the wheels. IR sensor had drawbacks namely, not working under bright sunlight conditions, it is the only digital sensor and cannot measure the distance of the obstacle. IR sensor has a range of 20cm. But with the Ultrasonic range sensor, I was able to calculate the distance in all direction and decide on how far is the obstacle and then decide in which direction it should move. It has a good range of 4m distance and can accurately measure the distance. The sensor was placed on the pan servo motor which sweeps 180° once the obstacle is detected in the path. The algorithm was developed to check for the distance in all the direction and then autonomously decide the path with obstacle detected relatively far in all the other direction. DC motors were used to drive the rover wheels. By controlling the pulse for the DC motors terminal we can move the rover forward, backward, turn left, turn right. Depending on the decision made by the controller logic the input for the DC motors were given. The algorithm was written in such a way that, if some obstacle is detected in the front of the rover, it looks left by turning the pan servo motor to the left and ultrasonic range sensor check for the distance in the left then same is calculated in the other directions. After we have the distance in the different directions, the controller decides the best suitable path where the obstacle is furthest by comparing the distances measured. If the obstacle is at the same distance in all the direction, then the rover moves a few steps backward then check for the same again. One more IR sensor was connected behind the rover to avoid hitting while moving backward. The threshold value was set in all the direction for the minimum distance to avoid thrashing.

Step 3: Application

This has application in many fields, one of them was integrated this into indoor positioning project for tracking and testing the accuracy of the measured position of the object in the indoor environment.



    • Arduino Contest 2019

      Arduino Contest 2019
    • Tape Contest

      Tape Contest
    • Trash to Treasure

      Trash to Treasure