A conducting robot

I play the flute in The Essendon Symphony orchestra, and in the lead-up to our March concert, the conductor asked if I might borrow a robot from work. The concert was a celebration of comics, movies and pop culture, so the robot ended up conducting part of a Dr Who music number. For those interested, here’s how I got a robot to conduct an orchestra.

The robot in question is a version 5 NAO Robot, and is a type of programmable robot used in certain high schools and universities around the world. It is about 60cm (2 feet) high, and can walk, talk, respond to speech, identify faces, and move its limbs like a human. There are Python and C++ SDKs for writing software, or you can use (like I did) a visual programming tool called Choregraphe.

Different versions of NAO are supported by different versions of Choregraphe. Based on descriptions from the NAO documentation, I could tell I had V5, and hence I needed to download V2.1 of Choregraphe from the NAO software resources webpage.

It was easy enough to follow some of the NAO tutorials to learn how to use Choregraphe. The project that I wrote is available in a GitHub repo for general interest.

The project has blocks for conducting in 3/4 time (used in the project) and 4/4 time (not used in the project). It is set up to automatically start when the middle head sensor is touched, by using the launch trigger condition MiddleTactilTouched. After saying some amusing words, it conducts for 17 bars, controlled by the Counter box. At the same time, it is sensing for whether either of the other two head sensors are touched, and if they are, the Counter will stop the conducting. The robot will then say some more hilarious stuff, pause for a bit (for the real conductor to turn it around to face the audience), and then it will wave. Ta dah!

Learning how to use the tools and program the robot to do this sort of project took only a couple of days, so I can see how it could be useful in a highschool or university setting. The level of articulation in the joints is pretty amazing, and I look forward to this sort of technology becoming more widely available.

One issue: after getting the robot to conduct for a long period, it started to complain of over-heating, so I was comfortable with 17 bars, but I don’t think it could conduct a whole concert. But, not that the orchestra would want that!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.