Introduction: Rover 5 Tank , Arduino Outdoor Programming Challenge
This project originally started to see if we could program out own remote controlled rover but turned into more then that,we ordered 3 Rover 5 units as they seems to have a very easy to use driver board form sparkfun. Below is the steps to make yours work with the use of VirtualWire library and Arduino. The code is very basic and could be done a very different way but as it is now almost anyone can understand it.
the current code allows the rover to be driver in 8 directions namely.
5) Forward/Right ( drives to the right )
6) Forward/Left ( drives to the left )
See steps below to built your own !
Step 1: Step 1: Wire Up the Rover.
Attached is the manual for the driver board and description of the pin-outs and below is how to wire the Arduino Mega to the driver board.
1) Arduino Mega 2560
2) Sparkfun Rover 5 Driver board
3) Cheap 433Mhz data radio's
Mega Driver board
22 // Direction pin ch1 front right motor
28 // Direction pin ch2 front left motor
24 // Direction pin ch3 back right motor
26 // Direction pin ch4 back left motor
2 //Speed Ch1 PWM 1
3 //Speed Ch2 PWM 2
4 //Speed Ch3 PWM 3
5 //Speed Ch4 PWM 4
11 // Data Receive pin
The Rover 5 is available in 4WD or 2WD the code is written for a 4WD rover but wiring it up as below for the 2WD should still work the same.
Step 2: Step 2: Build Remote and Plug Into UNO
The Sparkfun joystick remote was an easy choice as it had n joystick and 4 buttons ( explained later )
Solder the pins onto the board. and plug it into a UNO.( presolder units is also available form them )
The data radio data pin must be connected to PIN 11 on the Uno! and POS to 5v and NEG to GND.
there are many online tutorials on the making of antenna's for the data radios but i found a 164.5mm lenght of solid copter wire gets a range of a around 42 meters.( code can be changed to use RC )
after you have done this you can find the "Rover_TX"pde attached copy ,past and upload to UNO.
NOTE( please remember you need to download and install "VirtualWire" library before the code will compile.
From the picture above you can see I have proceeded to make my remote smaller by using a Ariduino Pro Micro Board ( if anyone requires i will give pin layout and code but this is a very tricky and really unnecessary evil)
Step 3: Step 3: Load the Code
Attached is the two .pde's to be used drag and drop and upload if all is connected correctly you should have a working rover !!! Enjoy
Now coming back to the Buttons on the remote, our plan is to advance the code to include a pan tilt servo on the front with a IR laser acting as a "Canon" and on the other rovers have IR Receivers. this would be used with FPV gear to play real world "battle tank" . one of these function has already been implemented in the code. for example
if your rover is working. press and hold button D5 done then press the joystick down ( also a button) you should see your rover jump back ( mimic of the canon shot recoil) ;-)
this project was intended for short to medium range ( 10- 40 meters) as this is what you can expect from the cheap 433mhz data radios.
hope you guys enjoy!