So after the unboxing and mounting the rover, also the basic test, it's time to give it some senses and intelligence.
To do so, I added an ultrasound sensor I have around, and I modified the former code for test including the sensor part and simple decision branch. With all together the rover keeps going until it finds an obstacle. Then it goes backwards for a moment, then turn left and then keeps going forward.
It is not a very complex program but just to see how it can perform easy tasks easy. The software is attached and commented below.
Here are the connections for the ultrasound sensor:
Adding more sensors and decisions possibilities will give it more flexibility. The rover is not fast, but when it founds a small obstacle it can pass over it without any doubt. Also it can go over more type of surfaces than the typical wheeled ones.
Here you have the arduino file to make this robot autonomous with the commented hardware in this post. It’s just a simple example but you can see it moves by itself. It’s up to you to improve it so please explain your experience in the comments. Thanks!