DIGITAL DEBUSSY
a pair of smart robot arms playing simple songs on the piano
INTRODUCTION
Our digital debussy is capable of playing several songs! Click on the video below to play one of the songs! For more songs that the robot plays, please visit our videos page.
FINGER DESIGN
We went through several iterations to arrive at the simple and elegant design.
In the final product, the fingers are 3D printed. Each finger is pulled by a string that is attached to a servo. The servo rotates back and forth to create the pressing and releasing movement of the finger. A rubber band is attached on finger top to help quickly releasing the finger.
HAND DESIGN
The spacing between the fingers of both hands are specifically designed to mach piano key width. The fingers on the right hand are placed adjacently to play melodies. The fingers on the left hand are more spread out to play larger chords on the bottom end.
HAND MOVEMENT
The hands achieve their linear movement through two sets of ball screws run by DC motors. The range of each hand is equal to half width of a full size piano. With the help of encoders, we can control the position of the hands in the control code.
TEAM
From left to right: Yuyan Shi, Quy Chau, Bosen Ding, Jason Jeon
This is a great team and we had a lot of fun working together on this!
CONTROL
We implemented two algorithms; one Python algorithm to generate the robot commands and one Arduino algorithm to execute the commands. The first code reads a MIDI music file, computes the minimum hand movement needed and produces a sequence of control commands for each finger. The second algorithm then reads the sequence of commands and execute them by controlling motors and servos. If you would like to read a detailed explanation of our algorithm and a list of our mechatronic parts, click here!