Robot Pianist Runs On Arduino Nano

The piano has been around for a long time now. Not long after its invention, humans started contemplating how they could avoid playing it by getting a machine to do the job instead. [vicenzobit] is the latest to take on this task, building a “Robot Pianista” that uses a simple mechanism to play a tune under electronic command (Spanish language, Google Translate link).

An Arduino Nano is the heart of the build, paired with a shield that lets it run a number of servo motors. The servos, one per key, are each assembled into a 3D-printed bracket with a cam-driven rod assembly. When the servo turns, the cam turns, and pushes down a rod that presses the piano key.

The build is limited in the sense that you can only play as many keys as you have servo channels, but nonetheless, it does the job. With eight servos, it’s able to play a decent rendition of Ode to Joy at a steady tempo, and that’s an excellent start.

We’ve featured some great mechanized instruments before, too. Video after the break.

7 thoughts on “Robot Pianist Runs On Arduino Nano

  1. In my work just looking at uneven keys is enough. But servos? They have lag and are useless without a lot of pre-compensation for the lag. Eighths and sixteenths make a mess of things with the lag making it unmusical.
    Solenoids.

  2. From my (limited) knowledge of pianos, volume of a note is set by how hard (fast) you hit the key. That gets translated into the speed a hammer hits the piano string.
    If you aren’t changing volume, why not just hit the string directly?

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

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