Let's Make Robots!

MASTER Mk.1


MASTER - Multi All-Surface and TErrain Robot.

Current Status - Motors installed, nothing else works.

Concept: MASTER is an idea that I came up with for a fairly large robot, with 8 legs. At the end of each leg are wheels, which combines the versitility of legs, with the ease of use of wheels. I came up with a fairly complex control system, and realised that I was unable to put it all together immediately, so I am building the Mk. 1 version. This has most of the control system, but is in a conventional chassis. This is in order to iron out all of the bugs (I'm sure there will be plenty) in the control, and get something that moves.

Although the final version was inspired by the curiosity rover (Wheels on the end of legs), the Mk.1 was based on something somewhat simpler (and cheaper). The roomba robotic hoover. I read about someone combining a roomba with a raspberry pi, and it looked quite impressive, so I thought I would create something similar. Unable to afford a roomba, just to take apart, I went for an ad-hoc solution, and 'borrowed' a cake tin. This then became the chassis of MASTER Mk.1.

The control system consists of the following:

Laptop, communicating with robot via an Xbee Radio chip.

 

Arduino in the robot recieves radio, and sends it to Raspberry Pi via I2C

Pi takes camera feed from webcam (mounted on top), and data from arduino, decides where the robot should go, and sends this data back to arduino.

Arduino sends data to the pickaxes which drive each leg (or wheel in the Mk.1).

Picaxes decode the data into a speed for their motor, and servo commands for the leg servos (not on the Mk.1)

Arduino also reads in various sensor data (I intend to insall temperature sensors, Ultrasonic type sensors, and other similar things) and transmits it both to the Pi and the laptop.

 

Laptop recieves sensor data (and a low-res camera image), and the operator decides where to go.

Commands issued by the operator override the automation of the robot, but if no command is issued for a short time, the robot functions automatically, driving around until it encounters an obsticle, then turning to avoid it (like the start here robot).

I will probably start a blog on day to day progress, and keep this for when something actually gets achieved (i.e. never)

Current Progress (21/12/12): Motors installed in chassis. Pi is running an OS, but I intend to install custom OS in it. Arduino can receive data from computer, send it to picaxe, and drive motors. (but not by radio). No electronics currently installed.

Current Progress (22/12/12): Pi now running correct OS, but SSH not working. Motors can be driven by pickaxes, and speed/direction data successfully decoded and used.