For sprint 4, we set our goal to be:
Our overall goal for the final sprint was to have an robust humanoid drummer that plays along with a song using 3 appendages. For this to happen, we were hoping to get a the foot to be able to play a bass in time and calibrate the drummer to play with a song.
We accomplished:
The primary focus of this sprint was to reconstruct the the mechanical system and get the drummer to beat with a song. This sprint we reconstructed the moving appendages out of metal in order to make it more robust. Additionally we disassembled the wooden structure to stain it. The beat detection circuit was entirely completed before this final sprint so there was very minimal work done on this.
We also got the back of our head more organized with mounts for each arduino and the circuit to make the system more robust to changes in the environment. It is also more organized to allow for better debugging.
The dedicated the most amount of time this sprint to calibration. Although the robot was able to detect and play a beat at a certain speed, it didn’t always sync up with the metronome or song that was playing. We wanted it to sync up as closely as possible so that it could play along with things. After a lot of testing the whole project with timer delays and recalibration every few seconds. This was often dude to inconsistencies in the time it took the mechanical system to complete its actions and the lack of feedback on the arm motors. We decided to pivot. By the end of this sprint we were able to have a manual calibration. After the robot started playing off beat, we could press keys on the keyboard to help sync it up by delaying when it played for a shorter or longer time. We also changed how exactly the different appendages were controlled. The foot’s position was controlled by a potentiometer to ensure clean movement, and the arm moved for the same amount of time everytime, we just changed the wait time between strikes, depending on the speed of the beat. Doing these things created better timing and more consistent playing from the drummer.
In order to read from a song we pivoted away from PulseIn in arduino in favor of analog read which allowed for debouncing. This made possible a robust bpm calculation.
We didn’t accomplish for the final demo was getting three appendages working simultaneously. We have a working hand and foot, the hand can play well with a song, the foot can play concretely with a metronome, but calibrating the two of those was enough work that we weren’t able to play both the snare and the bass drum at the same time.
Our overall goal for the final sprint was to have an robust humanoid drummer that plays along with a song using 3 appendages. For this to happen, we were hoping to get a the foot to be able to play a bass in time and calibrate the drummer to play with a song.
We accomplished:
The primary focus of this sprint was to reconstruct the the mechanical system and get the drummer to beat with a song. This sprint we reconstructed the moving appendages out of metal in order to make it more robust. Additionally we disassembled the wooden structure to stain it. The beat detection circuit was entirely completed before this final sprint so there was very minimal work done on this.
We also got the back of our head more organized with mounts for each arduino and the circuit to make the system more robust to changes in the environment. It is also more organized to allow for better debugging.
The dedicated the most amount of time this sprint to calibration. Although the robot was able to detect and play a beat at a certain speed, it didn’t always sync up with the metronome or song that was playing. We wanted it to sync up as closely as possible so that it could play along with things. After a lot of testing the whole project with timer delays and recalibration every few seconds. This was often dude to inconsistencies in the time it took the mechanical system to complete its actions and the lack of feedback on the arm motors. We decided to pivot. By the end of this sprint we were able to have a manual calibration. After the robot started playing off beat, we could press keys on the keyboard to help sync it up by delaying when it played for a shorter or longer time. We also changed how exactly the different appendages were controlled. The foot’s position was controlled by a potentiometer to ensure clean movement, and the arm moved for the same amount of time everytime, we just changed the wait time between strikes, depending on the speed of the beat. Doing these things created better timing and more consistent playing from the drummer.
In order to read from a song we pivoted away from PulseIn in arduino in favor of analog read which allowed for debouncing. This made possible a robust bpm calculation.
We didn’t accomplish for the final demo was getting three appendages working simultaneously. We have a working hand and foot, the hand can play well with a song, the foot can play concretely with a metronome, but calibrating the two of those was enough work that we weren’t able to play both the snare and the bass drum at the same time.