Programming robots would be an excellent way to learn Python. There are two robot programming contests in the U.S., Botball and Robocup. Both use the Lego RCX brick or microprocessor based controllers, neither of which have an available version of Python.

Robo Cup

Robo Cup Junior is an international robot soccer competition using two autonomous robots on a 4 foot by 8 foot field.

Senior level Robocup is in several sizes, micro with a ping-pong ball and six 6 inch cube robots, Abio with 3 sony dogs, large with a full size ball on a 30 x 60 foot field with 6 robots, and software simulation.

I could see many schools in the Seattle area fielding a team that would compete in weekly matches and a final double elimination tournament.

This is the Robo Cup Junior web site with links to Senior Robo Cup, http://www.demo.cs.brandeis.edu/rcj2001/index.html

Bot Ball

There will be a BotBall competition at the Seattle Robotics Society Robothon on May 3rd and 4th at the Seattle Center, Center House:

Botball is an annual contest held in the U.S. sponsored by the KISS Institute of Practical Robotics. The contests are similar to the MIT 6.270 contest that I am sure you have seen on TV. The robots are built from the supplied material of Legos, a RCX brick and a handyboard.

The two drawbacks of Botball are the entry fee ($2000) and the programming paradigm.

The entry fee gets you gobs of lego components, the robot cpus, and additional sensors and motors (a $500-1000 value). Also it includes a training session for three teachers. But the entry fee is the same every year, even if you already have the parts. If they get 16 teams in an region, they will run the regional tournament and help get the winning team to the national tournament.

Botball expects that the kids use Instant C, a version of c that includes an interactive prompt. I have argued with David Miller (the developer of Botball and the Sojourn mars robot) about the evils of distorting childrens brains with c to no avail. He says that he wants to help create more (c language) computer programmers and says that it would be ok to use other (not available for handyboard) programming languages with Botball. I believe that programming should be for everyone and that requires a more gentle yet robust language like Python.

Here is the Botball web site, http://www.botball.org/

Seattle Robot teams

If you are interested in getting Python to work on the Lego RCX Brick and the handyBoard, Botball might be an interesting way of demonstrating the merits of Python. Or if you have a company that would like to sponsor 16 Seattle area teams (a $32K donation) I can round up the schools.

As an alternative, a Robocup league could be popular considering the interest in youth soccr in the Seattle area. Again there is a need to get Python on the RCX brick and other embedded controller boards like the handyboard.

Python on the RCX brick, this project never made it off the ground. Python is just to big to put onto a 16bit micro-controller computer.

Could this work now with the new Lego robot which is significantly more powerful?

Python RCX brick connection: http://www.hare.demon.co.uk/lego/pylnp.html

A virtual robot battle could be engaging for the students, especially if we could accept entrys over the web and stream the contest out to the web. It looks like all that real time battle needs is a standard i/o connection. It seems that Python would be a good language to create virtual robots for real time battle.

Here is the real time battle link: http://realtimebattle.sourceforge.net

Karel the Robot

Jeff, are you familiar with KarelTheRobot? It's a learning language similar to Logo. I have rewritten Karel in Python. Kids can learn Karel, which is a brutally simple language, then they can move on to Python. My program actually translates their Karel code to Python, so that their first Python program will be very familiar to them. -- SteveHowell

Yes, Steve, I first encountered Karel when it was used for learning Pascal. Karl the Robot demonstrates how compelling programming a robot can be to help children and others learn how to program. I'll have to try out the Python version of Karel. Thanks -- JeffSandys

Standard Robot OS

One of the issues that the Botball people bring up is the need for a computing and hardware standard for robots or a robot OS. This would allow code written for any standard robot OS to run on any other standard robot OS. Then libraries of primitive robot behaviors could be created and used to build more complex robots. Today everyone starts with a microprocessor and writes their own code to control motor speed. The Bot Ball people are leaning towards a Linux c++ environment, but I don't see why it couldn't be Linux Python.

Hello, there! This is a great idea, and it has begun! Check out Pyro (for Python Robotics). Currently, it takes a bit to get everything installed, but that will get better over the next few months. -- DougBlank

ER1 Robot

The Evolution Robotics Robot uses Python for the Robot's SDK. I don't know if the Robot itself uses Python or if just the user interface is written in Python. ER1 Python Developer Kit


Bikini Contest

PythonRobots (last edited 2008-03-04 08:33:06 by localhost)