Skip to main content

How to build junkbots: Drinks can, unbalanced motor

The junkbots project has now being running for 18 months in Northamptonshire, UK. But how have the junkbots being built? A video produced by one of the particpants can be found here, showing some of the examples.

Several ways have been investigated by the participants in the next few blogs some of these will be talked about.

Let's start with the main approach, simplest way and probably the quickest:- A drink can and an unbalanced motor - shaking its way around.

Take a 330ml drinks can and put it on its side. Fix an electric motor over one end of the can, packing tape is good for this (but not very environmentally friendly). Attach something to the motor's spindle that unbalances the motor, the goal is to get it vibrating. Broken propellers, cogs with Blu-tak, cogs with modelling clay have all being tried.

The problem with this, is turn the motor on and the junkbots rolls over onto it side and goes around in circles. A couple of fixes students have tried, adding outriggers at the bottom of the robots (marker pens are pretty good for this). The other main way been tried is 'legs'; straws, ice-lolly sticks taped to the side.

The vibration makes the junkbot move but it is not controllable. A modification tried by one group of students has the tank-track principle. Add two unbalanced motors and by using one or both motors at any time there is a lot more controllability added.

A feature of a lot of the junkbots  that slowed them down is too much weight (unlike the one shown above - minus the can), in many cases lots of extra decoration was added to the junkbots that lead to slower junkbots (or in some cases stationary junkbots).

Popular posts from this blog

Blog usage statistics

Popular posts

How to build junkbots: Old toysIn a previous blog entry the idea of using drinks can and an unbalanced motor was discussed. but what else have the projects participants t...How to build junkbots: Drinks can, unbalanced motorThe junkbots project has now being running for 18 months in Northamptonshire, UK. But how have the junkbots being built? A video produced by...How to build junkbots: Wheels don’t always work wellBack to the main approach, simplest way and probably the quickest:- A body (drinks can and drinks bottles usually) and an unbalanced motor -...Huxlow Pt 2: Lego Robots The second half (programming lego robots) on the junkbots project has been carried out at  Huxlow Science College  on 28th February 2011. ...Toys from trashArvind Gupta has produced a lot of work on turning junk into toys that aim to demonstrate the engineering ideas in an very interesting (wel...Brooke Weston EventStudents at Brooke Weston School, Corby have been working with the University of N…

Controlling a junkbot with a Micro:bit

A new direction has been developed for the junkbot project (; previously Raspberry Pis have been used to control the junkbot’s movement ( – but what about the recently released Micro:Bits; can it be used to control a junkbot?
Matthew Hole, a student from Wrenn Academy, Northamptonshire ; has been investigating this idea whilst on a Nuffield Research Placement ( working with Dr Scott Turner, University of Northampton. The project was to look into developing junkbots controlled using a Micro:bit and also to produce some materials for schools to use with or without outside assistance.

What is a Junkbot?For this project, it is a moving ‘bot’ made from waste materials, combined with an electric motor and a programmable device (in this case a Micro:Bit) to control (or try) it. An example is shown above. More details on junk…

Do it yourself: 'Radio' Controlled Micro:Bit Junkbot

In an earlier post, I showed how you could build a Micro:Bit controlled Junkbot. In this post I want to show a modification to it, to use one Micro:Bit to control the junkbot controlled by another Micro:Bit. A nice feature of the Micro:Bit using micropython, is it can send and receive simple messages via radio - so here is my take on it.

The first problem is the Python editor available on does not seem to work with the radio API. One solution to this is to change to the mu editor.

Two pieces of code are needed.

Sending Code for the 'remote' control:
Essentially it is set up to send two messages, via the built-in radio module, spinl or spinr depending on which button is pressed.

import radio
from microbit import button_a, button_b


while True:
   if button_a.is_pressed():
   if button_b.is_pressed():


Junkbot Code
This takes an adapted form of the previous Junkbot code to work by; on r…