John’s Status Report for 10/8

This week, I helped the team discuss our plans for the physical system and review the concepts and action plans we laid out through our design presentation. I am planning to write Arduino sketch code to simulate data serially flowing into the shift registers that encode the data for which solenoids to trigger and at what speeds. This will first involve sending the solenoids binary, on-off data to test how to trigger the solenoid at different rates. Next we will add in PWM encoding into our on/off signal to try and trigger the solenoid at different speeds, thus trigger different volume levels from the piano note. We will simulate sending different encodings to different solenoids and test if we can create a simple pattern of key pressing. This will give us good data on just how to interact with the physical system. This will inform the audio processing on how to best encode the note data as well.

Team Status Report for 10/8

This week, after scoping out our project extensively for our design presentation, we began focusing on our proof of concept design.  We also received the raspberry pi, five solenoids, transistors, and shift registers we ordered for testing out specific metrics for our physical system. To accomplish this, we defined what metrics we want to collect and how we can determine a successful proof of concept. For the metrics, we plan on first testing the extension length of the solenoid piston and how far we will need to position it on top of the keys. This will impact our overall physical design and help us understand the structure of the system. Next, we will write simple test programs on a microcontroller to drive the solenoid at different rates and with various PWM encodings to get an optimal range of pressing speed and power. We will use this data to map the amplitude data gathered from the audio processing to how we press the piano key to best represent this. Additionally, we will create preliminary circuit to isolate the whole physical system pipeline within just 5 solenoids. In our testing, we will serially send out bits to our SIPO (Serial-in, Parallel-out) shift registers representing which notes to play. The parallel output is connected to the transistors, which control the flow of current from the power source to the solenoids.(See diagram below from our design presentation)

Building a scaled-down version of our physical system pipeline will allow us to not only understand how to use our parts and tools to create the whole flow of data, but also to measure our current draw and voltage requirements and extrapolate the proper power source requirements for the whole system for our 5- solenoid test. By colleting all these metrics, we will have a good understanding of the feasibility of scaling the system up to 69 keys and it will highlight any design choices that we need to focus from the rest of the project to best facilitate the physical system.

John’s Status Report for 10/1/22

This week, I have been mainly focused on hashing out the specifics of the project with the rest of the team and gathering ideas on what exact requirements and metrics are needed from my part of the project (web app interface). After having a very productive conversation with Professor Byron on Wednesday about how to best go about testing our metrics and requirements, I went back to the drawing board with the team and we were able to not only gain a better understanding of our own design, but also have more clarity on the next steps of testing and implementation.

We ordered parts early this week and they came in already. Upon planning out how we will set up our physical proof of concept, we will build it out this following week and set up a series of experiments to understand our optimal circuitry and communication requirements. We have already begun to draft up some ideas of experiments to understand or PWM period for the solenoids, how fast we can press a piano key, how to encode our data signal such that notes can be sustained over many samples, how much time to sample the incoming audio to take the Fourier transform of, etc… Hopefully in the coming week, we will have many answers to these questions that will guide us in our design.

John’s Status Report for 9/24

This week I helped prepare our proposal presentation and presented it to the class. Reading up on the feedback really helped realign some of our team design goals and put our project into perspective. I have begun formulating ideas for our piano playing interface proof of concept. To do this, I went to the music technologies classroom in the basement of HOA and took many measurements of the piano we will building our system based off of. These gave us some insight in the overall size of our build. I have also begun planning how  the website to host UI controls for our project. This has involved prioritizing base playback (pause/play) features and organizing our gantt chart to reflect our priorities. Luckily we are on schedule as it’s early on and this next week I hope to finalize our proof of concept circuit design, order some physical interface parts, and begin the website.