You are here

CellBots: using mobile phones as a robot's control computer

Imagine a robot control computer with a GPS receiver, built-in high resolution cameras, 3-axis compass, accelerometer and gyroscope, high resolution camera, and network connectivity using Wifi or 3G/GPRS/HSPDA data services and also Bluetooth communication. On some cases, Near Field Communication (NFC) is also included for landmark recognition using RFID. Imagine that this control computer has programming libraries and frameworks for voice recognition and synthesis that can be easily used in several languages. The processing power is based on low power ARM processors faster than 1GHz with one or multi-core CPUs and using 1GB or more of memory. Finally, imagine that this control computer is manufactured in the scale of millions so that it costs much less than buying all these sensors alone and building a robotic platform.

Such control computer exists and it might be in your pocket. Smartphones are the perfect fit for robots' computers. In fact, IEEE Spectrum Magazine and Robotics and Automation Magazine published articles earlier this year pointing "Smartphone controlled robots: the new brain of robots" as one top robotics trend for the year of 2012.

One of the first CellBots projects were presented by a group of hobbyists and documented at their website (http:/www.cellbots.com) on 2010. Most of these projects rely on Bluetooth communication from the phone to microcontrollers connected to the actuators and sensors of the robot.

In 2011 we proposed a simple and low cost alternative based on an audio interface, allowing CellBots to be built using a mobile phone and a few cheap electronics parts (http://www.mdpi.com/1424-8220/12/2/1572), without the need of microcontrollers. The mobile phone generates audio tones that are decoded by a circuit that control the motors, while sensors's states are encoded also using audio which, is connected to the phone's microphone input. The phone uses a FFT to recognize the audio frequencies and detected the states of several sensors.

In that way, we have been working at the NatalNet laboratory (UFRN-Brazil), in solutions for research and educational robots powered by mobile phones. One of our last projects is a networked robot based on a smartphone that can be programmed and controlled remotely thanks to a web-server embedded on the phone that is attached to the robot. The programming environment that we created is fully web based, so programs can be written and executed using simply a web browser. Users can type and run their programs in several programming languages such as Python and LUA, or even use block based programming (also via web).

All our projects are open source and are freely available. For downloads and more information, please refer to the NatalNet laboratory webpage dedicated to CellBots: http://www.natalnet.br/~aroca/