Overview
This semester-long group project for INFO4320 (Intro to Rapid Prototyping and Physical Computing) focuses on infusing innovation, accessibility, and playfulness into musical instruments. Our creation is an Arduino-powered automated ukulele designed to play melodies and music notes. All components were either handmade, 3D modeled and printed, or laser-cut. The software program was implemented using Arduino language (C++). Our final project was exhibited at Ithaca Sciencenter. This project provided me with an introduction to physical product design and prototyping. My understanding and application of design iterations were deepened during the creation of the hardware components.
Period
August 2023 - December 2023
My Main Contribution
3D Printing, Wiring, Coding, Music Theory
QUICK DEMO
Motivation
The motivation for UkuMaestro originates from a desire to explore the intersections between music and technology. This project seeks to revolutionize the way humans interact with musical instruments, making them more accessible to individuals, regardless of their musical proficiency.
Design Goals
We aim to create an autoplaying ukulele based on predefined melodies or user-input notes through an Arduino program interface. The hardware component is divided into three units:
String pressing unit: Positioned on the fretboard of the ukulele. Its goal is to facilitate flexible, precise, and fast pressing, ensuring accurate single note and chord production.Â
String plucking unit: Positioned near the sound hole of the ukulele. Its goal is to achieve precise and natural plucking of each string in accordance with a given tempo and rhythm.
Structure board: To securely assemble the ukulele and all other hardware components onto a structure board to maintain stability.
Design Iterations
String Pressing Unit: Solution 1
A 4x3 matrix of pistons mounted on a rail can be used to press chords. Since most ukulele chords only cover three frets, the matrix is designed to have three columns. If the matrix can't cover a desired fret, the rail will move the matrix to the desired position to play the chord.Â
This is a side view of the rail that uses a pair of guide rails and a belt. The mounting structure has both sides mounted on a pair of guide rails, which limits its motion in the horizontal direction. The belt is driven by a drive pulley connected to a motor.
Rationale
Although the design of piston matrix will reduce overall movement along the fret and press strings faster, pistons can't satisfy our goal of naturally pressing a string for any given period of time. Also, since the spacing between strings is limited (~8mm), it's hard to place four pistons in a row without conflicting each other. A piston matrix and a rail structure is also costly to implement.
String Pressing Unit: Solution 2
Four gear racks are used to control four strings independently. Each gear rack is a longitudinal bar aligned parallel to each string, with a presser on the end to press the strings. This gear rack system also needs motion limiters to navigate along the strings. As the gear rack moves, the presser will exert a force to the string at different fret positions, enabling playing different music notes.
Rationale
This design is more flexible, because it allows a broader range of chords than the piston matrix. The gear rack system also eliminates the issue of limited spacing between strings, as it's feasible to use four gears with 8mm width. Aesthetically, this approach is more congruent with our design principles, closely mimicking the dynamics of human finger movement. Economically, the gear racks is more cost-effective than the piston matrix.
String Plucking Unit Solution
We designed to use 4 pistons, each controlling a string. A pick is attached to the head of each piston. Each time the piston moves outward or inward, the pick plucks the string.
Cardboard Prototype
We adopted the design of gear rack system for the string pressing unit. For the string plucking unit, we discovered that a better solution is to replace pistons with 4 servo motors mounted above the strings, because it follows the dynamics of human finger movement and reduces movement interference.
We limited the cardboard prototype demo to 2 strings:
Design Modification
The width of each gear rack needed to be at most 8mm.
There needed to be 1-2 more motion limiters for gear racks. Each motion limiter needs to precisely mirror the distance between strings/gear racks.
Four servo motors were used, each attached a pick to pluck the string when the servo motor rotates to a specific angle. The optimal spacing and height of the pick needed to be further measured.
Initial Hardware Prototype
In the initial prototype, we demoed the pressing and plucking of only 1 string (the 2nd string of ukulele).
String Pressing Unit
An 8mm 0.5mod metal gear rack
A stepper motor: It drives the rack to move linearly through a gear. It's tightly adhered to a foam to reduce noise.
A 3d-printed 0.5mod 100-tooth gear: It's attached to the stepper motor. It has 100 teeth to increase the movement speed of the gear rack.
A 0.5mod 25-tooth metal gear: It's on the top of the gear rack to exert a topdown force.
A 3d-printed rod: The rod serves as a rotation axis for the small gear in the motion limiter.
Two acrylic motion limiters: One is under the stepper motor and the other one is above the fretboard.
A string presser: It's made of foam and wood. We maintained a distance between the presser and the end of the gear rack to ensure the stability of the gear rack when the presser isn't pressing down on the string.
Challenges
The weight of the stepper motor wasn't balanced.
The stepper motor generated great noise.
The force of pressing the string was insufficient.
String Plucking Unit
A servo motor: It rotates back and forth at a calculated angle.
An acrylic bridge: Supports the servo motor.
Challenges
Adjusting the position of the pick was not flexible.
The weight of the servo motor wasn't balanced.
The strength of the servo motor is insufficient.
Other Challenges
More limiters were needed to fix the ukulele firmly.
Effective space arrangement was needed to assembly the hardware for 4 strings.
The design should be more precise by utilizing 3d modeling and printing technologies.
Final Prototype
String Pressing Unit Modification
To reduce noise: We used 3d-printed boxes to wrap the stepper motors. A layer of foam was added in between the stepper motor and the wrapper box.
To balance the weight of stepper motors: We used a thicker acrylic board to support the motors and gear racks.
To increase the force of pressing: We used two 3d-printed small gears to exert a topdown force on each gear rack. In this way, the pressing force is greater and more evenly distributed to the gear rack. 3D-printed shaft sleeves were used to fix the position of each gear within the range of its corresponding gear rack.
To strength the string presser: Originally, the presser was made of foam and wood. To enhance its strength, we replaced the foam layer with short metal springs. This modification prevented the string presser from sliding to either side of the string. Additionally, we incorporated slopes at both ends of the presser, resembling a boat shape, to reduce friction when sliding past the beginning of a string.
Future Improvements
Minimize the noise produced by the gear rack sliding against the acrylic structure.
Upgrade the stepper motors to high-quality ones to prevent overheating.
Reduce the top-down force applied to the gear racks to minimize friction.
String Plucking Unit Modification
To enhance flexibility: We 3d-printed a structure consisting of an axis and axis sleeve, allowing the axis to move inside the sleeve. This created an easier adjustment of the pick position.
To use space efficiently and reduce noise: We used micro servo motors and placed them in 2 rows.
To balance the weight of servo motors: We used a thicker acrylic board to make the bridge.
Future Improvements
Upgrade the micro servo motors to high-quality ones to prevent motor fatigue.
Rearrange the position of the bridge to ensure the picks pluck near the sound hole, resulting in improved sound quality and volume.
Final Showcase
Our project was exhibited at Ithaca Sciencenter, a local hands-on science museum, and attracted over 100 visitors within a span of 2 hours. We demoed the song called We Wish You A Merry Christmas: