A Fully Programmable Mobile Robot
paxmaniac writes "iRobot has announced Create: a new fully programmable mobile robot based on the Roomba robotic vacuum cleaner. People have been hacking the Roomba since the day it came out. Well, hacking just got a whole lot easier. A command module for the Create provides a programmable 8-bit Atmel micro controller, four DB-9 ports for your own sensors, and a number of sample programs that can be compiled and uploaded to the command module via USB. Botmag has more details and some cool applications. This looks like the perfect robotics platform for hobbyists, schools, and universities alike."
I always thought that Lego Mindstorms was the "the perfect robotics platform for hobbyists, schools, and universities alike", especially after the release of their NXT kit.
Hell, if you look here, you can see that they've:
* Released the source to the firmware, so people can write code right down to the metal.
* Provided *hardware* schematics, so people can hack their own gear.
* Fully opened the specs to the programming environment, bytecode, etc, on the shipped firmware.
* Opened up the Bluetooth protocol used by the NXT firmware.
Additionally, they've opened the doors to third party accessories.
Seriously, what can a hacked Roomba offer that's better than all that?
It's based on Atmel AVR, so you don't need help with programming environment, bytecode, etc. It's an AVR.
Not only can you therefore write the code right down to the metal, but you have access to at least two fully supported languages (they will support C, atmel provides tools for asm as well and they're quite good) and it's an excellent processor to boot.
NXT is very cool, and I want some a whole lot. But this has its place. Lego constructions are less sturdy than machines made with purpose-built components. On one hand, this device is less configurable than legos. On the other hand, this device is lighter, more powerful, and more durable.
In other words, this doesn't supplant NXT. Arguably, you might find a case in which you would like to use them both together. you could also use the former mindstorms; AVR chips are good at providing you RS-232 and routines are typically provided for this purpose, so you could use the serial IR tower from mindstorms on your robot.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
Human-like robots are a nice dream, and I understand that people are still working on them.
But there is an advantage to Roomba-type robots: they are cute.
The same sci-fi that makes androids look plausible can make them look scary. If they clearly can do anything we can, and they have AI minds of their own, how do we know they won't turn on us? And if they look like persons, then we can easily imagine them acting like persons. We're not doing much toward Asimov's Three Laws yet--hey, even then there's a risk that a robot will discover the Zeroth Law and use it in ways we object to--so any true humanoid robot might feel risky.
Roombas are attractive mobile discs. They clearly are functional; the ones that know how and when to go to their charging stations are getting smart. But they are small, they don't look scary, and they don't look like people. Hey, you can push most of them aside with your foot (obviously excluding the little disc lawnmower), and we haven't (yet) built one that can climb stairs or dares try. So people feel safe around them.
If androids try to take over the world, humanity will be shooting them down or hitting their off switches quickly. If all the Roombas tried to take over the world, most of us humans won't even realize it at first, and we'll be very surprised when we do figure out what's going on.
There is a fine line between recklessness and courage... -- Paul McCartney
Comment removed based on user account deletion
In my experience, the biggest problem that's hindering development of anthropomorphic robots is lack of standardized parts, and their likelihood of being affordable. Most amateur robot builders start from the very scratch and work their way up and in this process find that, while they can themselves afford to take some shortcuts, many have to waste their budgets on what seems the silliest of things in the great scheme of things. In the end, the enthusiasm behind robot building ends up in the designer spreading themselves thin across the details of a project.
For example, they might have wanted to create a robot that will locate a TV's well-used remote controller once everyone leaves the house, and put it on a designated area on the living room table and then plug themselves into the wall to recharge.
This task is fairly easily defined in pseudo-code and by use of common sense, sensors can be used to simplify the execution of this task. The problem is, the designer would have to work on mechanical and electrical issues such as H-bridges for motors or motor controllers, instead of just software to make the robot do what it is supposed to. That spreads their patience thin and causes them to give up on the project at some point or settle for a quality they wanted to avoid in the first place.
So.. as a good example, the DARPA challenge that took place a few years ago showed us what happens when you have to deal with both hardware (vehicles) and computers (software-figuratively speaking, I know it's technically hardware as well..). If my memory serves me correctly, a great deal of competitors ended up with disabled vehicles from purely mechanical reasons. Imagine what would have happened if all the competitors had the exact same vehicles in exact same conditions, exact same sensors, and were just left to develop software to guide it? I suspect the contest would have yielded better results.
So the question is, how much of your time do you spend actually designing what the robot will do, and how much of your task do you deal with its hardware and how it will perform its tasks? In my humble opinion, I believe that the hardware development is causing a major slowdown in robotics. It would help if some affordable standardization existed.
I would be more productive if I purchased a "blank mac-formatted robot" (ala Futurama) and spent my time writing software for it instead of working out on just how to make a 2KB PIC microcontroller communicate with 20 sensors and 10 actuators using one signal wire and I2C.
Someone should fund me so I can start an open-source robotics project: to make geeks of the world unite in our struggle against physical labor!