About Me
Contact Me

Electronic Projects

Robotic Projects
MJ12-SRRV Rover

Misc. Projects

MJ12-SRRV Rover


The MJ12-SRRV was designed and built to satisfy a Design course for a final year project in college. The robot is essentially a really fancy RC car with a wireless camera and a 3-axis arm on top. The project was broken into 4 sections: the Base station, the Rover/Arm controller, the wireless communication and the motor controller. All circuit boards were built and etched by hand. The project lasted for around six months and Mountain Dew was heavily abused during the design.

Basestation Overview

The base station contains all the components needed to wirelessly control the rover. The wireless camera receiver was housed inside the box. The LCD screen was a modified Game Cube portable screen. The base station interfaced to a PSone controller that was used to control the rover. The character LCD on the front panel displayed systems stats such as battery voltage and rover internal temperature. The red and green LEDs on the right side were used to warn the operator if one of the motors had current limited or if the arm current limited.

Basestation Construction

The base station was built from 1/8" plywood and was held together with aluminum angle and screws.

Basestation Internals

The top board in the stack is the base station controller board. The second board from the top is the base station side of the communications interface. The silver box on the bottom is the 2.4GHz wireless camera receiver. The lead weights were added to the front in an attempt to prevent the box from flipping over if the screen was pushes to far back. The little board on the bottom was a serial LED driver that controlled the LEDs that are on the front panel.

Basestation: Control Board

The base station controller card has the job of polling the playstation controller for movement and sending that data to he rover. The base station controller is powered by a PIC16F877A. The PIC also controls the LCD and the front panel LEDs.

Basestation: Wireless Communications Board

The wireless communications card did all of the data encoding and decoding for transmission using the RF transmitter and receiver. The RF devices are from Linx Technologies. They provide a stable data rate but do not provide any encoding. The decoder for the data was a modified Veterbi decoder that was divided into three Atmel Atmega8s. One did the encoding and two did the decoding. The communications happened at 4800 baud and was stable with up to a 20% error rate.

Rover Chassis Prototype

Before the chassis was created a prototype of the rover was created. The body was an old cd-rom case that I had laying around. The arm was mocked up using some scrap Plexiglas from another projects. Prototyping was dune to determine the approximate size of the vehicle and to determine if the motors were suitable for this application.

Rover Chassis

The final chassis was created from ABS plastic that was laser cut by Pololu. The chassis is held together with aluminum angle that had been drilled and tapped to hold 6-32 hardware. The CD was placed in the picture to give a sense of scale for the robot.

Rover Propulsion

The rover was propelled by four Hsian Heng 100:1 12V Gearmotors. These motors provided plenty of power to climb over all sorts of things. The wheels are Proline Off-Road Tires. They are a bit over kill but they make the rover look cool. The adapters to mound the Proline tires to the motor shafts were purchased from Lynxmotion.

Rover: Motor Controller Board

The motor controller is built around two L293Ds and a PIC16F877A. The motor controller uses back-emf to estimate the load that the motor is under and adjusts the torque to the motors accordingly. The motor current is monitored to prevent damage if the rover crashes into something.

Rover: Controller and Wireless Communications Board

This board contains the servo controller, the rover processor and the rover side of the wireless link. The servo controller(top left in picture) was coded into a PIC16F628. The servo controller had a SPI interface and would control up to 5 servos independently. The rover processor was a Atmel Atmega8. The rover processor monitored the battery voltages, received commands from the base station, communicated with the motor controller and sent commands to the servo controller.

Rover: Arm

The arm was scratched designed from pictures of an arm that Lynxmotion sells. There are 2 servos at the base, one in the shoulder, one to rotate the wrist and one to open/close the gripper. All the parts of the arm were modeled and cut by Pololu from transparent blue acrylic. The arm has pretty good dexterity an enjoyed moving cans around.

Sytem Prototype

Before anything was committed to circuit card the entire system was constructed on bread boards. There were a total of six breadboards used to make the system. Believe it or not the whole system actually worked the first time it was all hooked up.

Basestation Data Sheet

Size 6.5 in(W) x 7.75 in(L) x 6.5 in(H) Closed x 11.5 in(H) Open
Frame 1/8" plywood held together with aluminum and screws.
CPUs Four total: One PIC16F877A and three Atmega8s
Assembly all the way around.
Power 12V at 1.5A when everything was on.
Wireless Camera Old version of This one
User Controller Playstation Controller
Screen 5.4" Gamecube LCD screen
Range Video: ~100ft
Control: ~150ft LoS

Rover Data Sheet

Robot class ROV
Size 11.5 in(W) x 12.0 in(L) x 9.0 in(H)
Frame 1/4" ABS plastic combined aluminum angle and 6-32 screws
CPUs Six Total: Four Atmel Atmega8s, one PIC16F877 and one PIC16F628
Assembly all the way around.
Power Motors run on a 12V 10 cell NiCD pack. Arm runs on 4.8V 4 cell NiCD pack. Processors run on a 9.6V 8 cell pack that is regulated to 5V.
Motors Four Hsian Heng 100:1 12V Gearmotors
Motor driver Custom based on a L293D
Speed Control Hardware generated Pulse Width Modulation.
Drive System 4WD using four motors
Tires Four Proline Off-Road Tires
Wierless Camera Old version of This one

MJ12-SRRV code and schematics

Unfortunately most of the schematics were drawn in an old version of Microsim Pspice and I have been unable to reload the software to convert them to PDFs. If I ever get them converted I will post them.

As for the code, it is scattered all over the place. If you have a question about a specific piece of the project let me know and I might be able to find something.

This information is supplied in the hope it may be useful but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.

Web site and all contents Copyright Steven Easley 2005-2008, All rights reserved.