Self playing Violin

This one-week final project was built in the course: Mu 2801 “Making Music with Machines.” This automaton can be programmed to play just about any song.

How It Works

To finger each note, there are 4 servo motors, one for each string, that are each in charge of the pressure placement on that string. On the end of each laser cut wooden finger is a 3D printed TPU finger cap with a groove the thickness of the string to allow for easy guiding while changing notes.

Example of how the Violin would pluck a string. Also, the inner mechanism of a TPU printed wheel on an N20 DC motor attached to the end of a servo horn to move the spinning wheel up and down.

This was the approach to create a synthetic bowing sound without an actual bow.

The wiring of this project went through one iteration in its week lifespan. Its final form consists of an ESP32 microcontroller and two Adafruit motor drivers. Its final layout is on a single split breadboard fit to attach to the wooden brace in construction.

First test performance on the violin

Twinkle Twinkle Little Star

What I Would Do Differently, Knowing What I Know Now

The novel approach of using 3D printed TPU wheels was ingenious at the time, but their need to use rosin does not make them a sustainable approach. Replacing the TPU wheels with a wheel made of Delrin could prove more sustainable. The outer wall of the wheel should be etched with dashes along it, like what you would find on a hand twist screw, and this would allow for more friction and surface area when bowing the string, inherently making a smoother sound. The need of Rosin would be eliminated as there would be enough lubricant and friction in the Delrin wheel.

The fingering mechanism should be replaced with a solenoid-based system so that pressure can be accurately attained at the correct positions. We ran into issues with the fingers sliding to the notes and creating incorrect pitches. With no given budget and only materials we had at hand, our only option was servo motors. Whether it be 4 solenoids that move up and down the neck, or one solenoid for each string, the accurate pressure and positioning of a solenoid would result is more correct pitches

An obvious change would be to switch out the breadboard for a PCB design. This would make all the wiring neater, and we would have the choice of using custom crimps and connectors to attach the motors. Its design is very simple of only needing a few H bridges and an ESP32 module, with those components costing next to nothing, however due to time and shipping costs, this approach was not feasible.

One day :)

Previous
Previous

4DOF Robot Arm

Next
Next

Major Qualifying Project