Let's Make Robots!

I.C.R. The Internet Controlled Robot

Programs.zip808 bytes

Because I have not posted anything in a long time I have decided to post my "Sub Project" I.C.R. the Internet Controlled Robot. This project is really parallel with my robot butler and was built as a proof of concept for internet control but I figured it deserved its own post.

I.C.R. is basically a stinger platform with a webcam and phidgets HC motor controller. All this is powered by a single 9.6v Ni-Cd battery.

To control I.C.R. over the internet I used a combination of four languages.

  1. XHTML/CSS: Used to create the webpage that the robot is controlled from.
  2. AJAX: Sends commands to the PHP code running on the server without having to refresh the page every time.
  3. PHP: Receives the commands sent by the AJAX and writes them to a .txt file also hosted on the server.
  4. Python: Reads the file using the url library, processes, and sends the command to the phidgets motor controller.

This is a complex way to do a simple task and needs refinement but as a proof of concept it works brilliantly.

Currently all this takes place on a HP laptop and an old Dell OPTIPLEX 160L running Windows Server 2003.
The laptop runs the python code and RoboRealm which relays the webcam image to the control page using a iFrame. The Dell hosts the files which is something that I have always wanted to be able to do.

I hope to at some point post a link to the control page and let people drive the bot around but I have no way of regulating the number of users or preventing two people from using it at the same time. Also because it is not wireless its wires are easily ripped out. If you feel a burning desire to control the robot send me a P.M. and I will give you the link.

For now here is a screen shot of the G.U.I. and there is a video of me controlling the bot.

Note: I will be posting a tutorial on how to turn a computer into a web server and possible one about why and how to internet control a robot.

For now here is the code used to run everything.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Awesome! I've been thinking about making an ssh controlled bot; now that I think about it, it wouldn't be very hard to pound out a cgi script for browser-based control. This is great.