Public Data:

Popular Project Sites: Project Sites:

Luke Cole

Donate to Luke Cole
Locations of visitors to this page

MiC Robot

Welcome to the home page for the MiC robot.

MiC, pronounced "mick", meaning Mobile interactive Computer is being developed as a cheap research platform for advancements in robotics by research hobbyists. The mobile robot will be upgradable and reconfigurable using DROS as the base software and designed to fit ATX style motherboards. Luke Cole's MiC Robot - Model

Autonomous research and cost efficiency are the main concerns for the project. MiC is targeted for at the robotic hobbiest/researcher or the general hardware/programmer enthusiast wishing to explore controlling movable hardware or develop machine intelligence.

Luke Cole's MiC Robot - Photo

Since MiC is designed for ATX style motherboards, primary electronics such computers are cheap. This also means it is easy to interface hardware such as Serial, Parport, USB since one can load and configure Linux with ease.

Photos and Videos can be found here.



Max Dimensions

  • Base: 400(L) x 400(W) x 300(H)mm
  • Complete: 400(L) x 400(W) mm


  • Weight of Robot = 2000N
  • Safe Load (inc robot) = 3000N

Avg Velocity

  • Linear: max = 5m/s, min = slow as possible
  • Angular: max = (pi/4)rad/s, min = slow as possible


  • Self: Bumper (and other sensor) detection
  • Human: idle if possible collision detected

Other requirements

  • 1Gbps wired and 56kbps wireless LAN

Real-time Concerns

Using Real-time Kernel: Specialised Kernel Space Drivers

RTLinux (or some other real-time kernel) is most definitly a solution to provide real-time performance. However this means programs rely on a specialise kernel, which make a real-time kernel an undesirable option.

Using Standard Linux Kernel: User Space Drivers

Running real-time required programs from user space would allow the use of the standard header files, however busy waiting problems would most probably make this option impossible for any real-time required programs.

Using Standard Linux Kernel: Kernel Space Drivers

Running real-time required programs from kernel space may cause the system to lock up if any modules contain bugs, futhermore debugging programs in kernel space can be difficult. However running the modules in kernel space will avoid busy waiting. Furthermore the Linux 2.6.x kernel provides an operating frequency of 1kHz (compared to 250Hz in 2.4.x), which can provide almost real-time performance when using the Linux scheduler.

Available Drivers

Below is a list (current very lonely) of Linux kernel space drivers to provide real-time performance using a standard Linux 2.6.x kernel:


Default Hardware

Drive Control System (Base Level)

  • Wheels: 2x 200mm (Richmond RN8874); 4x 40mm Castors
  • Bearings: 4x 12d shaft (UCP201)
  • Gearboxs: 4x 40d mm chainwheels and chains
  • Motors: 2x 12V windscreen wiper motors
  • Encoders: 2x Home Made
  • Material: (2 + N)x 260x300x6 Alm. plate; 2x 100x100x6 Alm. plate; (4 * (N + 1))x 140x20x20x3 Alm. Channel; 2x 135x12d steel rod. Where N = Number of Layers

Primary Electronics and Sensors

  • Power Supply System: 2x 12V 20Ah (in parallel)
  • Computer: Mini-ITX Motherboard, Jetway J7F4 1.5GHz CPU Fanless, 1Gbps wired LAN, 1GB DDR2 RAM, USB2.0 16.0GB HDD, USB2.0 802.11g Wireless Ethernet, 12V DC unregulated input
  • Circuits: 1x Drive Control; 1x Regulated Power Supply; 1x Generic IO circuit (for sensors); 1x Generic Encoder circuit; 1x Generic Servos circuit; 8x Generic Microcontroller circuit (to control for IO/Encoder/Servos)
  • Sensors: 1x Active Stereo Vision USB2.0 Cams, 1x USB2.0 Cam w/ Fish-eye lens, 2x USB2.0 microphone, 2x Opto/Encoder, 24x Ultrasonic, 24x IR (GP2D120), 1x Compass, 1x Accelerometer, 2x Inclimeter, 2x Temperature, 2x Smoke, 2x Pressure

Alternative Hardware

Track Mechanism + Power Supply System

  • Tracks: 20x 36t, 28x 44t chainwheels and chains
  • Bearings: 16x 25d shaft (UCF-205-16)
  • Motors: 2x 12V windscreen wiper motors
  • Encoders: 2x
  • Batterys: 2x 12V 20Ah
  • Material: Alm Sheet, Alm. Square Channel; 2x 25d steel rod.


Primary Research and Development

  • Long-term usage (i.e. where the robot is never turned off) via self-recharging.
  • Basic mobility (e.g. flat terrain) with successful collision avoidance.
  • SLAM.

Secondary Research and Development

  • Active Stereo Vision.
  • Able to hold a basic conversation.

Future Research and Development

  • Moving objects via an arm & hand.
  • Advanced mobility (e.g. stairs, heavy terrain) with successful collision avoidance.
  • Vacuum cleaning.
  • Fire detection and extinguishment.
  • Intruder detection and removal.


DROS People

Ongoing Robotic Operating System Project

David Austin

2004, Default Design Input and Machining

Lance Cole

2004, Machining

Alex Talberg

2000-2002, Base Track Mechanism Module


© 2000-2024 Luke Cole
All rights reserved