Ben Buchwald's Portfolio

Toy Robotics Initiative

January 2003
Client: CMU Robotics Institute

Project Description

A professor in robotics at Carnegie Mellon received a batch of prototype "Stayton" robotics control boards designed by Intel. Two weeks prior to attending an Intel sponsored conference and tutorial about the new boards,
Kids using the drawbot demo
he was looking for volunteers to experiment with them and see if we could build some working robots to demo at the conference. I volunteered, along with three other computer scientists and two mechanical engineers. The first week was primarily discovering how to use the board and what it was capable of. In the second week we designed and build three simple robotics projects. Our three demos were the only working demos at the conference, including Intel's own demo which they could not get to work.

The first project was a tele-operated drawing robot. Using an off the shelf base capable of omnidirectional movement, we added a pen attached to a servo motor and a Stayton board with 802.11 wireless networking. The robot, itself, ran a web server hosting a Java applet that allowed anyone with a browser to directly drive the robot or draw a shape that robot would then reproduce by moving and raising and lowering its pen.

Wireless robot arm and exoskeleton
The second project was a model three degree of freedom robotic arm. In addition to the arm, we built an exoskeleton-like brace that a person would wear on their arm. Connected to a Stayton board with wireless networking, the brace would send joint angles to the robotic arm which would match your arm position.

Two robots playing tag
The final project was 2 wheeled robots that would play a game of tag with each other. We used prebuilt differential drive bases and added to them cameras and infrared distance sensors. On startup the two robots would decide for one of them to be "it" and the other to run away. One would run and avoid walls, while the other used its camera to locate a distinctive colored object on its prey and then home in on it. When the "it" robot would reach the other it would send "tag" over the wireless network and they would switch roles.

My Role

I signed on to the project because they were looking for someone with Linux expertise since the new Stayton boards were actually full microprocessors running Linux. The first week was mostly me spent figuring how to build, configure, and install software and drivers onto the board. Part of the challenge was working with a very small amount of memory and untested hardware. Once I had built support for PCMCIA wireless cards, USB to serial adaptors, and a web server, we were able to start using them for robotics. Although, to do robotics you typically need the ability to read from sensors and control servos and motors, but these boards didn't have any way to do that. Therefore we coupled them via a serial connection with another circuit board capable of doing these things. I also wrote the C library that we used for communicating with the sensor board. For the projects themselves, I did all of the programming for the drawing robot, including the java web applet and the robot itself, and both halves of the robotic arm. I also handled the networked startup and tagging for the tag playing robots. I currently host a website thoroughly documenting the process for working with these boards and the projects we built with them.


Drawing robot video

Robotic arm video

Tag-bot video
« Back