|The DFRobotShop Rover is an Arduino-complete robot that is a collaborative development between RobotShop and DF Robot. Its only $90; an attractive price for the delivered functionality. Everything but the batteries and USB cable are included in the kit. The kit is built from many standard parts packaged into the kit; a lot easier than trying to buy all the parts individually. The metal side mounts and the large circuit board are custom made for the Rover.
The Rover circuit board contains an embedded standard Arduino Duemilanove CPU board with several useful additions. It has a voltage converter that converts any input voltage to the 5 volts required by the Arduino. It also has two full H-bridge circuits to control the two motors. Four LEDs automatically show the forward/reverse direction of the motors. Six controllable blue LEDs have been added for nifty visual effects; a jumper controls whether theyre on/off or they can be wired to an output pin for user control via software.
The CPU section is the standard Arduino board laid out on the larger Rover board. It uses an Atmel AtMega328P CPU equipped with 32K of FLASH memory and 2K of RAM. This is ample memory space for even the most demanding projects. Arduino circuit boards are extremely popular among hobbyists because of their ease of use and simplicity. The hardware is a simple open (i.e. all the schematics are publically available) hardware design for a single-board microcontroller. A simple standard programming language based on C++ has been developed for the Arduino. There are tens of thousands of Arduino users in a very active community with lots of source code and sample programs available for download via the web.
The board is fully assembled and simply connects to the side frames using nuts and bolts at each corner.
Theres enough empty space on the circuit board for adding a small solderless breadboard if you want to eventually add some custom circuitry like additional sensors.
The drive train uses Tamiyas standard two-motor gear box and tank treads. The gear box is the most complicated assembly step; everything else about the Rover is easy to put together. The gearbox comes as a lot of separate small plastic and metal parts that are finicky to assemble. This is the second one that Ive assembled. The first one took me three hours including taking it apart twice because I did not assemble it properly. This time it took me just over an hour and I only had to take it apart once. There are three different configurations that can be assembled to provide different gear reduction ratios between the high speed motors and the output drive. Only one of them mechanically fits with the Rover; the tank treads are the wrong size for the other two. RobotShop has heard the user input that Tamiyas assembly instructions are too brief and has put together their own video on assembly. Make sure you watch it!
Each of the treads comes in four sections that need to be joined into a continuous loop. The treads are made of a flexible plastic rubber-like compound and joining them together is a bit like pushing a button through a very tight buttonhole. I was needlessly worried about stretching too much and tearing the plastic; you will have to stretch them a bit! And they dont have to tear to get them to fit!
ELECTRICAL AND BATTERY
Inclusion of a boost voltage regulator on the main circuit board was a great idea. The nominal operating voltage of the motors is 3 to 4.5 volts whereas the Arduino requires 5V. The standard Rover comes with a 4 x AA battery box for nominal 4.8V. The regulator adapts 3V to 9V input to 5V. The motors are powered directly from the batteries and the Arduino from the regulator output. As the batteries discharge with use they can drop well below the 4.8V but the regulator will continue to provide 5V to the Arduino.
|The most challenging part of assembly is the Tamiya gear box transmission.|
LIPO BATTERY OPTION AND CHARGER SHIELD
RobotShop sells an optional add-on kit consisting of a 3.7V Lithium Polymer battery and a charger shield. Shields are Arduinos name for small circuit boards that insert into the connectors on the top of the Arduino board. The charger shield contains a small IC that charges the battery from power taken from a USB cable to your PC; no external transformer is required. It takes a couple of hours to fully charge the battery.
Motor control is provided by two on-board H-Bridge circuits. HBridges are circuits that use the low voltage / low current signals output from the CPU to turn on/off the higher voltage/current battery to the motors. Variable speed is achieved by controlling the percentage of time the battery is enabled versus disconnected via a switching mechanism. Forward and backward motion is achieved by reversing which of the two outputs is + and -. There is no soldering required. Everything fits together with connectors except for the wires to the motors which can be crimped. I soldered them instead so that theyll never come loose.
SOFTWARE AND PROGRAMMING
Youll need a mini-USB cable to connect the Rover to your PC for programming. The easy to use Arduino programming environment is downloadable from the web. Theres a few Rover specific examples available from RobotShop that provides basic forward, reverse and left/right turning control. For my Rover software testing I used a preliminary version of ROBOTC for Arduino. ROBOTC is a very user friendly programming environment and development system that currently supports the LEGO Mindstorms and Innovation FIRST products. By time of publication, the new version that includes Arduino support should be available for trial download. Check www.robotc.net for details. One of the key ROBOTC differentiating features is an integrated real-time debugger.
|Board layout details
A. Motor driver
B. Arduino duemilanove controller
c. Voltage boost circuit
|Rocky and Buffy check out the rover.|
SENSORS & LINE FOLLOWING
The Rover circuit board comes with a built-in temperature sensor and light sensor on the circuit board. These are connected to analog inputs on the Arduino. I havent used them yet. I did use the Pololu analog light sensor array to build a line following robot. It was easy to connect to the Arduino; a power wire, a ground wire and five wires for the five analog sensors that I used. I only used five; the array comes with eight. The Pololu board needs to be about 1/8-inch of an inch off the ground for line following use; I built a small adaptor using parts from my junk box and used one of the mounting holes near the front of the Rovers circuit board.
On a scale of 1 (absolute beginner) to 10 (very advanced) the Rover fits the range of 2 to 7. Its easy to assemble other than the gearbox which is really just a matter of paying attention to details. And it can be easily disassembled and rebuilt if you get it wrong the first time. You gain experience with several aspects of robotics construction, assembly and programming with the Arduino. The Arduino is a wise choice for control because of its simplicity, popularity and ease of programming. And the kit has expandability (e.g. the line following sensor) if you want to go beyond the bounds of its initial functionality. The kit is competitively priced with other small robots. The quality of the materials is high
|LinksRobotC, www.robotc.netRobotShop, www.robotshop.com, (866) 627-3178
Words by Dick Swan