Robot Resume: Blinky

Name: Blinky
Birth Date: November 17, 2010
Height: 32 cm (13 in)
Weight: 1.5 kg (3 lbs)
Primary Skill: Balancing
Origin of Name: He is named Blinky because he has animated eyes that blink

Blinky is a two-wheeled balancing robot. He uses a Chumby One for his head and brain. The Chumby is sold as an internet appliance. It is very hackable because the software and hardware are open source. It runs Linux and a C compiler is available.

There have been three versions of Blinky. Each version is described in the following sections:

 

Blinky, Version 1
This version of Blinky was presented at the November 2010 Home Brew Robotics Club meeting. He could talk, move, and animate his eyes, but he never balanced.

Here is a short movie showing Blinky 1 in action.

Blinky, Version 2
This is the first version of Blinky that could balance. He took his first roll on March 30, 2011.

Blinky 2 is significant because the Chumby was hacked to perform the following duties that would normally require a robot controller board:

  • Generating PWM outputs to control the speed of the motors
  • Reading static acceleration via the built-in accelerometer
  • Setting general purpose IO pins
  • Converting the analog voltage from the gyro to a digital value

You can find articles describing the hacks on ozbotz.org.

A balancing robot requires both an accelerometer and a gyro. The Chumby includes a Freescale MMA7455 three-axis accelerometer, which is works well for a balancing robot. I mounted a dual axis gyro inside the Chumby case so that the analog output from the gyro would be close to the analog input on the Chumby processor.

Blinky 2 contains the following electronics:

  • Chumby One, out of stock at chumby.com, available on ebay for about $100
  • 5V power regulator, Pololu part #2110, $14.95
  • Motor driver, Pololu part #1213, $39.95
  • Dual Axis Gyro, Pololu part #1267, $19.95
  • 8 AA rechargable batteries, $20

The ability of Blinky 2 to balance is limited because he is not reading the quadrature encoders to sense wheel position. The processor on the Chumby had extra input pins that could have been used to read the encoders, but I decided the work on the next version of Blinky instead. The following movie shows Blinky 2 as he took his first roll.

In the video, Blinky is a bit wobbly, in part because he is not using the quadrature encoders on the wheels. He also needed a bit of PID tuning. He also has a power cord attached in the video, but he can run on batteries.

Blinky, Version 3
In the third version of Blinky, I added a BaseBoard4 robot controller from Demand Peripherals. The BaseBoard4 becomes Blinky’s nervous system: it controls the motors, and it reads input from the gyro, an external accelerometer (not the one in the Chumby), and quadrature encoders. The BaseBoard4 will also control servos for the arms and neck that will be added to a future version of Blinky.

Blinky 3 first balanced on April 16, 2011, just in time to make an appearance at RoboGames. I didn’t sign up in time to compete, so Blinky entered the Balancer Race as a non-competing participant.

Blinky waiting for his turn to try the balancer course. His eyes are closing; I think he’s getting tired.
Blinky trying to make it up the ramp on the balancer course.

Blinky was not able to complete the course, but we’ll try again next year!

What’s Next
Two major enhancements are planned for future versions of Blinky:

  1. Adding servo controlled arms so that he can pick stuff up and pick himself up when he falls over.
  2. Adding vision. I’ve been working a lot with OpenCV, and I would like to use vision to help Blinky navigate.

Check back here for updates on our progress!

Osman & Blinky