MadCow graphic header
THE REAL SCOUSE MOUSE

the ego trip
-- home page
-- about me

other things
-- backstage
-- gallery
-- real scouse mouse
-- network battleships
-- web design
-- winamp playlist

geographics
-- ash
-- guildford
-- woking
-- the city of bath
-- up north

amusement
-- beerskittles

 

Valid XHTML 1.0 Strict
Valid CSS!

An introduction to Micromouse

Micromouse UK is a competition for autonomous robot "mice" that must find their way into and out of an unseen maze, guided by logic and peripheral sensors attached to the mouse body. The full rules are featured on the official website for the competition.

My final year project at The University of Bath Department of Electronic and Electrical Engineering was to design such a mouse. Hence, my mouse goes by the monika "The Real Scouse Mouse" :).

Photographs and further details will appear in The Gallery.

Mechanical Design

The Scouse Mouse was based loosely on the "Turtle" robot that many of us will have seen on TV or in primary school. The turtle robot was capable of moving forwards or backwards and performing on-the-spot turns which is basically what is required for the Micromouse competition.

The Scouse Mouse is circular and will has two separately driven wheels on an axis that runs through the centre of the baseplate. Stabilisation is be provided by a rollerball which acts like the ball in a non-optical computer mouse or a ball-point pen.

The mechanical aspects of this project needed to be minimised due to the complexity of the electronic and software elements and as such the chassis is not particularly aesthetically pleasing. Plywood was chosen for easy modification and processing.

Electronic Design

The Mouse is controlled by the industry standard 8031 microcontroller. It features 16K of program ROM and 8K of RAM together. The RS-232 functionality of the 8031 has been harnessed to provide debugging information on the RAM contents.

The drive system consists of two 12 volt 7.5 degree stepping motors that are driven by the 8031 via a dedicated driver chip. Matched infra-red transmitters and receivers are interfaced directly into the 8031 data bus, via some encoder logic, such that the sensors appear in the 8031 memory map. This frees up an extra 8031 I/O port for motor control.

The PCB for the mouse consists of two 85mm square double-sided, plated through hole boards which will be mounted in the centre of the chassis disc in a two tier structure. Board interconnections and connections to the motors and sensor heads will be made via colour-coded cables.

System Architecture and Software Design

The use of stepper motors greatly simplifies the task of driving the mouse, relying on the CPU calculating the distance travelled by the number of steps the motor has made.

The software is being written in pure assembler for speed and makes minimum use of interrupts for simplicity. The software is structured into layers with a low-level "driver layer" to handle the hardware interfacing, a mid-level Hardware Abstraction and the top-level algorithm processing functions. The permits modification of either the driver or logic code independantly of the other for maximum design convenience.

The code was written using UltraEdit-32 from IDM Computer Solutions with a customised word file for mnemonic highlighting. Assembly was performed using asm51.

Useful Data