Thursday, April 22, 2021
Home » How To's » Arduino Autonomous Upgrade Module for MINDS-i 4×4 Robot 3-in-1 Kit

Arduino Autonomous Upgrade Module for MINDS-i 4×4 Robot 3-in-1 Kit

Modular rover platform equips you to develop a mini-DARPA Challenge platform!

In the last issue of Robot, on our letters page, we introduced the MINDS-i Arduino-powered Autonomous Upgrade Module, which is a tray-like module that you easily attach to the popular 4×4 Robot 3-in-1 base kit chassis. The standard 4×4 Robot Kit enables you to build one of three configurations, including leaf spring, four-link, and an independent suspension chassis. Add this new module to any one of these base configurations and you have an autonomous vehicle that is able to self-navigate and avoid obstacles.


The module includes an Arduino Uno and the YourDuino Sensor Shield that is mounted in the center of the robot chassis under a protective housing. The top cover of the protective housing is vacuumformed out of thin flexible plastic material. Access openings are cut from the housing for the I/O ports that will be used. The instructions are clear and easy to follow.


Three Parallax Ultrasonic Ping))) sensors mounted on the front work together to perform the primary autonomous obstacle avoidance functions. When an obstacle is detected with the center Ping))) sensor, the Arduino sends a signal to the electronic speed controller (ESC).

Minds-I 4×4 Lunar Rover with solar voltaic battery charging. We reported on this model in the September- October 2011 issue of Robot (no. 30).

The brakes are then applied to stop the robot, and it backs-up and turns. The other two Ping))) sensors are mounted at a 45 degree angle on the front left and right sides. When one of these detect an obstacle, the Arduino sends a signal to the front Hitec HS-485HB Metal Gear Steering Servo, turning the wheels of the robot to effectively avoid the obstacle without having to stop and back-up. This enables the robot to approach a wall, then turn away from it and cruise along the length of the wall without running into it, as the video shows.

Ping))) Sensors are pointed ahead and at 45° angles to either side.

Additional higher level logic is also imbedded in the code (scan the barcode to download the source code). The three front Ping))) sensors are used to make various decisions about whether to stop, back-up, turn left, or turn right. After an object is detected, the Arduino compares the distance reported by the left and right sensors, then backs up the robot to face the direction that has the fewest obstacles. Two rearward facing YourDuino Infrared Distance Sensors are mounted on the aft end of the chassis. These work in unison with the Ping))) sensors that are mounted on the front. While the robot is backing up, the two distance IR sensors are set to detect an object to avoid a collision. It is tons of fun watching it find it s way and make decisions to extricate itself from confined areas.


Ultrasonic Ping))) Sensors were chosen for the front of the robot, because they cast a wider signal for detecting obstacles of various shapes and heights, and they operate at greater distances than the IR sensors we used. The signals from the three front Ping))) sensors overlap, minimizing potential blind spots.

Detail of sensor back.

The IR distance sensors at the aft end were specified for a different reason. The IR distance sensors cast a very narrow beam. They are activated when the robot is backing-up and turning. The IR beam is cast in a sweeping motion across the horizontal plain, and this is an effective obstacle detector.

The instructions provided by MINDS-i include a quick-start guide for downloading the default program, you will be playing with your autonomous robot in short order. The code is straightforward and clearly understandable—which is typical for Arduino source code. You can modify the code to change the behavior of the robot, and it is fun to coordinate the different parameters. Increasing the default speed of the robot, for example, will require extending the distance measured by the Ping))) sensors that signal an avoidance move. That avoidance decision at a higher speed needs to be made sooner as it will take less time to get to the obstacle. You can also program steering into the rear wheels for much tighter turning.


YourDuino IR Distance Sensor detail.

The MINDS-i team is rapidly developing additional gear that will supplement the Arduino Autonomous Upgrade Module. This will include GPS, encoders and an accelerometer, to name a few. The new modules will allow following GPS waypoints and recognizing and avoiding steep inclines. Encoders will be able to identify if the rover getsstuck by watching wheel rotation as well as track distance and speed. The new Arduino Autonomous Upgrade Module will also be available for the 6×6 Super Rover Kits, as well as other MINDS-i platforms and configurations.

In conclusion, the modular approach allows the experimenter to upgrade in a way that is affordable and that can be matched to advancing skill levels.The robot shown can be fine-tuned and is a great platform for entry level roboticists to practice programming.


MINDS-i, (509) 252-5767