This will describe some of the methods which MyRobotLab can communicate to micro-controllers or other computers.  The purpose would be to empower simple robots with more advanced software, networking, and augmented computational power.  Some of this is described here

Direct Cable - most common micro-controllers (Arduino, Propeller, etc) can be communicated to through a USB cable.  Typically this cable is either a FDTI chip on it or on the micro-controller itself.  This means it "appears" to the computer as a standard serial port.  MyRobotLab currently supports connecting to an Arduino directly at 115K.

Range: cable length
Baud: 115 K
Pros: inexpensive, high data rate, error free, no batteries with cabled power cord 
Cons: not much mobility


Radio Communication - 434 MHz Modules

Range: ~100 meters?
Baud: 2400 - 4800
Pros: very inexpensive
Cons: requires 2 micro-controllers, low baud rate, can be susceptible to errors, can conflict with pwm and other functionality of some micro controllers

The radio modules prices are very difficult to beat.  They are prone to errors, but there are a variety of software routines and techniques which help reduce these issues.  VirtualWire for Arduino does encoding and error checking, which helps reduce the number of errors when communicating with these modules.



Infrared Communication - 38 KHz Modules

Range: Direct line of site, can be further depending on strength and reflective surfaces
Baud: 2400



Bluetooth - Smirf




WiFi - TCP/IP - This can occur when the robot is composed of a computer which is wifi enabled.  Control can be done from a different computer through TCP or UDP directly or HTTP over TCP through an applet on a browser.

Range: Internet range (everywhere)
Baud: ranges between 56K and 15 Mbs or higher
Pros: internet range ! nearly error free
Cons: depending on distance there can be a high amount of latency