I had the great opportunity to meet many of the Aldebaran NAO Robot Development Program participants in Paris last weekend when I was asked to be on the jury rating all of the projects they submitted during the codathon. The work that they're doing is innovative and often surprising, so it would be hard to single out anyone's project as being outstanding or extremely unique. Nevertheless, there were some projects that I want to talk about in upcoming posts because I feel they may interest and hopefully inspire my readers.
A good example is "Play With Red Ball", the Spring 2012 NAO Developer Days project developed by Franck Calzada. The concept seems simple enough - just have your humanoid robot bend over, reach out with its hand, and pickup a red ball. However, in the real world that sequence that you and I as human beings take for granted, is extremely complex.
Using its vision system the robot has to locate the ball, walk over to it, position itself properly without inadvertently kicking the ball out of place (another major challenge), bend over while maintaining its balance, open its hand - again without hitting or disturbing the ball, grasp the ball accurately and firmly, and stand back up again without dropping the ball that it worked so hard to capture.
Many NAO users, including several that work for Aldebaran, had attempted similar challenges in the past without much success. Franck, with a lot of hard work and experimentation, was able to succeed using just the standard NAO robot configuration and software tools provided to every participant in the developer program. It was a major accomplishment and surprised a lot of us at the event, including other developers.
Here's a video of Franck's robot picking up the ball (taken prior to the competition):
Franck earned fourth place in the competition and might have placed higher except for one totally unforeseen problem. To keep the competition fair, and to insure that everyone was using totally standard robots, their projects had to run on the NAO provided by Aldebaran. And, through some stroke of bad luck for Franck, the NAO used for the competition turned out to be orange - almost the same color as the ball. After a couple of failed tries, we realized that the vision system was confused when the ball was right at NAOs feet.
Removing the robots orange foot bumpers helped somewhat, but it still seemed as if the vision system was picking up the orange marking on its chest. Afterwards, Franck successfully demonstrated the project using his own grey NAO.
It's one of those situations that is often difficult, if not impossible, to predict no matter how much testing you do in the lab.
The potential for Franck's application is significant since it enables NAO to be used to play interactive games, like catch.
I'm really looking forward to seeing what Franck and others in the NAO developer community come up with.