Saturday, October 31, 2009

Circle Detection with Harpia

I was thinking the other day that is would be great if there was a tool for Linux that you could use to build a series of common computer vision operations with a GUI and live preview for quick testing. What would be better is if the program could export these operations as OpenCV code and compile it in C/C++ so it can run in real-time. What would be even better than that is if someone else wrote the program so I didn't have to.

Today I found Harpia while testing Ubuntu 9.10 aka Karmic Koala. This is a great tool for developing ideas for computer vision tasks quickly and since it exports C code that links with OpenCV it is extremely fast.

Friday, October 30, 2009

Robotic Flower


Wednesday, October 28, 2009

Hero 2000

iRobot Create Surgery Photos

Here are some photos of the internals of an iRobot Create. These photos might be useful if you are considering the idea of opening the robot.

The panel that says "Remove to activate wheel drop sensors." should read "Unscrew this panel last."

Tuesday, October 27, 2009

This New Lab: Measure twice, Print once

3D Printers are great for making useful little things around the lab. This is a wall mount holder for Wiha hex drivers.

Unfortunately someone failed to measure the size of the hex drivers properly and they don't actually fit quite right. So the lesson is measure twice, and print once.

Now I need to see about making a magnetic mount.

Monday, October 26, 2009


This is the future of telecommuting. I wonder if I should get a WowWee Rovio, an iRobot Create or make my own for this years holiday travel.

Saturday, October 24, 2009

Gundam Battle!!

[From: holypongのチャレンジ日記]


The Nokia N900 Maemo Linux based smartphone/MID/whatever looks awesome and when we heard about PUSH N900 contest Nokia was running we knew we had an entry.

N’Bot is a Mobile Robotics Development Platform for the Nokia N900. Arudino compatible microcontroller and Bluetooth allow the robot to be driven by the N900 manually using a graphical interface or autonomously when the phone is docked with the robot.

Friday, October 23, 2009

Wednesday, October 21, 2009

Gripper Testing

Willow Garage is posting production photos from their assembly line and burn-in process. The gripper design looks great and I can't wait to see one in person.

Getting a head *

I suppose this is kind of like kitbashing technology instead of model air planes.

Here is the Stereo Logitech Quickcam 9000 Pro setup. There appears to be some minor measurement errors in hole place with the CAD file I posted earlier, but overall it seems to work well. One of the images is upside down, but it should not have any significant impact on achieving real-time performance.

Starting to look like a head...

Initial design for a custom made case for a Gumstix Overo Air with the Summit Expansion board. I am going to need an injection molding machine soon.

Here is the inside view. Right now it is using electrical tape for hinges but the next version will have something a little better.


Modified USB hub with MiniA, which is what you need to connect to the gumstix.

Now I just need to design the head.

* Pun intended...

Monday, October 19, 2009

Oh wait, I guess it's the future now

I won't mind if the future doesn't have flying cars, if I can have a giant robot instead.

Even a small one will do.

Gundam Head

Continuing our week of robot head coverage, here is a robot head from Japan.

Canonboy3 has some pictures of this Gundam head made with a Cupcake CNC. It is now only a matter of time before Bandai starts selling Robo-One class Gundams.

Also check out this one.

Plastic Pals has more on 3D printing for robot prototypes.

Robot Riders

This multi-legged robot was developed at ASO College of Automotive Engineering and Technology. Inspired by Dutch Artist Theo Jansen, it is capable of transporting 100 kg. The video is available here. Click on the images at the bottom that say 動画, which is Japanese for video.

[From: Robot Watch]

Sunday, October 18, 2009

Design-A-Head: Initial Entries

Here are some of the initial entries...

Saturday, October 17, 2009

Contest!! Help design a robot head!

Design Contest
The new prototype for the Quickcam 9000 based stereo camera system is just about done. The old face looked kinda weird, so I want to see if anyone else has ideas for a cool robot head design.

After reading about the sensor head designed by Willow Garage I have decided to see how well crowd sourcing works and make the design process a contest.

Design a robot head using MS Paint, GIMP or Photoshop.

1) Robot head should have a minimum of 2 cameras, additional sensors are optional.

2) Contestant must license their image under the Creative Commons Attribution Share Alike License

3) Contestant authorizes I Heart Robotics a division of I Heart Engineering the non exclusive use of the likeness of the robot head shown in the submitted image.

4) To be eligible to receive a prize, the winning entrant must provide a physical mailing address.

5) To be eligible to receive a prize, entrants who are US Residents must be 18 or Older.

6) Prizes may or may not be awarded to non US residents at the judges discretion. Ie. If you live in Japan don't expect anything bigger than paper 3D glasses or stickers.

7) Entries must be emailed to iheartrobotics at g mail and received by Midnight EST Friday October 23rd.

8) Offer void where or when prohibited. <- This seems redundant.

The contest ends on Saturday October 24th. Entries will be judged by the staff of I Heart Robotics and the winner announced by Sunday October 25th. Prizes will be mailed Monday October 26th.

Grand Prize
  • Fame?
  • 3D Glasses

  • A surprise?

  • 3D Glasses


Current Camera Layout

A STL file of the final head design will be posted to Thingiverse if you want to build your own.

Post comments if you have any questions.

Example Entry

Thursday, October 15, 2009

Robot SLAM

This is a video of a 3D Visualization for a 2D SLAM system.

Wednesday, October 14, 2009

Effects of autofocus

Macro Focus

Telephoto Focus

Macro Focus

Focal Length: fc = [ 1178.66797 1181.15151 ] ± [ 1.86813 1.79633 ]
Principal point: cc = [ 618.46199 459.29765 ] ± [ 1.76481 1.98827 ]
Skew: alpha_c = [ 0.00000 ] ± [ 0.00000 ] => angle of pixel axes = 90.00000 ± 0.00000 degrees
Distortion: kc = [ -0.02074 0.15073 -0.00083 -0.00249 -0.00000 ] ± [ 0.00569 0.02501 0.00055 0.00057 0.00000 ]
Pixel error: err = [ 0.29254 0.27918 ]

Telephoto Focus

Focal Length: fc = [ 1042.37150 1057.40693 ] ± [ 6.24922 5.87439 ]
Principal point: cc = [ 606.96519 414.09653 ] ± [ 1.87835 3.74890 ]
Skew: alpha_c = [ 0.00000 ] ± [ 0.00000 ] => angle of pixel axes = 90.00000 ± 0.00000 degrees
Distortion: kc = [ 0.02206 -0.06737 -0.00293 0.00225 0.00000 ] ± [ 0.00456 0.01213 0.00072 0.00072 0.00000 ]
Pixel error: err = [ 0.19551 0.20738 ]

For computer vision tasks it is often important to have an accurate camera model to describe the focal length, camera distortion and other parameters. The camera calibration models shown above were created for a Quickcam 9000 Pro using the MATLAB Camera Calibration Toolbox. These camera models are fairly rough estimates based on 16 images each. The focal length is in pixels for a 1280x1024 image.

Looking at these rough calibration models for each end of the range of focus, it is clear that the auto-focus effects the camera model significantly. Unfortunately based on these results it looks like a look up table will need to be used to map between the current state of the camera's auto-focus and the appropriate camera calibration, or you can just turn off auto-focus.

Tuesday, October 13, 2009

Robo-One Simulator

Go Simulation! from Techno Road is a simulator for Robo-One robots that supports rigid body dynamics to properly simulate walking and environmental interaction. It is able to import STL files to describe robot geometry and appears to use ZMP control for walking. Runs in Japanese on Windows XP and Vista.

[From: Robot Watch]

Sunday, October 11, 2009

ROS 0.9

ROS 0.9 robotics framework released.

Friday, October 9, 2009


Thursday, October 8, 2009

Linux Broadband2Go Novatel Cell Modem

On a previous episode of I Heart Robotics the weblog, I suggested that the Broadband2Go pre-paid cellular data plan looked pretty interesting. Unfortunately getting these things working under Linux can sometimes be tricky. It also reminds me of one xkcd comic or another.

So apparently Linux is supported, and it's not. I won't get these hours of my life back, but at least now you won't waste time as well. The truth is...

Actual support seems to be coming in Linux kernel 2.6.31 which is shipping with Ubuntu 9.10 in 21 days! The bug id is here.

Additionally, the Novatel Ovation MC720 supposedly has built-in GPS, which may or may not work. However, I can't see any satellites at the moment. It also has support for an external antenna for extended range.

How to get Linux Broadband2Go working

  1. Boot into windows, start it in a vm or whatever...
  2. Unplug and/or disable all of your network connections. If you don't windows gets confused.
  3. Insert usb cell modem
  4. Install windows drivers from virtual cdrom drive
  5. Struggle with the horrible Virgin Mobile usa website. If the Top-Up card does not work as payment try logging out and logging back in. It may help to rewatch Colbert throwing water at Richard Branson. The Virgin Mobile site is pretty bad.
  6. After finally activating your account, eject the Broadband2Go cdrom. This triggers some USB magic which starts the serial ports.
  7. modprobe -r usbserial
  8. modprobe usbserial vendor=0x1410 product=0x6002
  9. Network manager should now show 3 CDMA connections
  10. Select the first one, one of the others should be GPS.
  11. Done!

The Sprint linux setup guide is also pretty good and has how to disable multifunction device CD Mode.

Wednesday, October 7, 2009

Haptic Robot Command Center + Halluc II

This amazing robotic control system was developed by the Future Robotics Technology Center at the Chiba Institute of Technology.

If you thought that was awesome check out this video showing more information about the robot being driven around. The Halluc II supports a wheeled mode and two walking modes with gait patterns that correspond to both multil-legged animals and insects.

Voice Recognition Options

There appear to be a few interesting voice recognition options available for robot control. While initial testing showed that all of the recognition systems available for Linux are just about useless, it was then discovered that my microphone is receiving significant interference.

  • Simon
    Simon looks fairly easy to get working by itself but looks more difficult to integrate into your robotics framework

  • Julius
    Julius is designed for Japanese though basic english support is available

  • PocketSphinx
    This voice recognition system is based on CMU Sphinx2, however it has been optimized for speed and small devices.

  • Voxforge
    This is an opensource project to develop acoustic models for speech recognition based on user contributed audio files. Several audio models are available for download.

Tuesday, October 6, 2009

Robot Jobs: Heartland Robotics

More information has been posted about positions open at Heartland Robotics, a manufacturing robotics startup in Cambridge, Massachusetts.

One dimensional DIY AUV

This little AUV floats and sinks with automatic buoyancy control. From the video it sounds like they managed to build it in about 10 weeks. It looks like it could be useful for all sorts of science experiments.

Cool Tool: V Tap Guide

The V tap guide will help make ensure that your tap is properly aligned when starting the tap. The V groove helps ensure that set screw holes are properly threaded in round stock without interfering with its ability to aid in tapping into flat surfaces. It also allows square surfaces to be tapped in the corner. Available in both metric and imperial units.

Monday, October 5, 2009


Gigantor, also known as Tetsujin 28-gō, has been spotted in Kobe Japan where the giant, 15 meter tall, robot attended a ribbon cutting ceremony. After the ceremony, Gigantor saved several buildings from destruction by malfunctioning construction robots.

The new street lamps in Kobe look like a great replacement for the ones that were destroyed during the Super Robot Wars.

Friday, October 2, 2009

Graffiti Robot

Yet another graffiti robot, should probably start categorising them at this point.

Thursday, October 1, 2009


And there appears to be source code...