Summary
We didn't reach our full MVP this sprint, but we made significant progress on the leaf actuation. We also reached an MVP of light and sound integration for running away. The majority of our time was spent iterating on our physical system and determining better manufacturing methods so we could quickly finish the physical system next sprint.
Progress
We mostly focused on mechanical integration this sprint and choosing compatible dimensions for each part. To achieve this we created a CAD model of our entire final robot, and started to source parts to match our constraints. This let us test new parts without fabrication to make sure that they would fit in our system
Several hours were spent trying to CAD a flowerpot that would be cut with a living spine design out of hardboard, but the dimensions wouldn’t fit in the lasercutter so we decided to obtain an actual pre-made flower pot. We then created a lasercut chassis to fit the new flower pot, and a lasercut top to mount our 3D printed stems in. We went through a couple iterations of stems, because they were designed to have a system with two actuator lines. The first line collapses the stem and pulls on the leaf to make it shrink. The second strand of fishing line pulls the stem back into its upright position. Our intention is to hook up the shrinking lines to servos, and use a rubber band on the other line to pull the stem back into shape when the leaf is released. |
The microphone code from the last sprint was completed to detect loud sounds from different directions. The basic algorithm was the same in the last sprint, but this time we made sure that the orientation of the incoming sound would be correctly detected relative to the positions of the three microphones. However, there was one problem. The sound detection code took 50 milliseconds to run, and as a result, the light detection would not work for the duration. In other words, the light detection had a delay of 50 milliseconds because of the new integration of the microphone. Therefore, we had to change our code so that the microphone and the sound systems could work together independently. In order to achieve that, we had to get rid of the while loop used in the sound system completely and use time stamps for the sound detection system.
We integrated all sensing this sprint so the robot could run away from loud sounds and shadows from humans. The two components work independently, allowing us to easily test them separately. The light and sound systems mostly worked, but weren’t always reliable. A lot of the time the microphones didn’t respond because the microphones were mounted facing inward (inside the pot) so they could not directly detect the sound, and the shadow avoidance had issues with timing and direction.
We integrated all sensing this sprint so the robot could run away from loud sounds and shadows from humans. The two components work independently, allowing us to easily test them separately. The light and sound systems mostly worked, but weren’t always reliable. A lot of the time the microphones didn’t respond because the microphones were mounted facing inward (inside the pot) so they could not directly detect the sound, and the shadow avoidance had issues with timing and direction.
After successfully detecting the direction of the sound and integrating it with the light system, we needed to create a reaction behavior for our robot to use when it detects a loud noise. We chose to make it rotate quickly to the direction opposite of the incoming sound and then move forward for a short period of time before switching back to its normal behavior. The quick rotating action makes the robot look like got startled and reacted quickly to the loud noise. We also replaced the wall adapter with batteries so that the robot could run without being tethered to the wall. In the last sprint, we got into troubles with not having enough Analog pins because we planned to use at least 6 of them for the light sensors and microphones. Therefore, in this sprint, we decided to invest on the MEGA so that we could have more pins to work with. |