For our flex project, we decided to do a horror theme. While we were brainstorming, the output we wanted to connect our circuit playground to is the micro servo, which is new to both of us. The input is the light sensor. We wanted the visual elements to elicit fear, so the object of horror we chose is someone who terrified us both: the Other Mother from Coraline.
The proposed final design is attaching a cutout to the microservo, and attaching said servo at the edge of a table in a room. In doing so, if the light level in the room reach below a certain set point, then the micro servo would start rotating 180 degrees continously. The plan is assuming that the room is dark when a person initially walks in and they see the Other Mother's face rotating, gets scared, then turns the lights on for the full reveal of her face.
The physical aspect of the project was relatively easy. We tested the micro servo to see if it had enough power to rotate a piece of A4 paper, which it did. We then printed out the Other Mother's face and attached the paper cutout to the servo with tape.
However, the real conundrum happened with the coding aspects of our plan. The micro servo would not move if the light sensor elements were uploaded to the circuit playground. Initially we thought it was a logic error in our codes, so we tested the two elements separately. Both worked well individually. We then started debugging the combined codes by adding print statements to see if the loops were executing and checking the light sensors' value to make sure that it was detecting the right amount of light. In the end, we were stumped and started playing around with the alligator clips attached the cirucit playground. We found that if we were to stimulate the clips, the servo would sporadically move, so we hypothesized that this was potentially a voltage issue. The motor and light sensor are both functioning, but there seems to be insufficient power to power the two elements even with both the battery and computer connected.
Our original code with the light sensor included but could not move the servo. If we had enough power this should work.
The code that we use to just move the Microservo.
Not having multiple perspectives makes an obstacle seem like it is harder to overcome than it actually is. Whenever I face a problem, without shifting my perspectives, I tend to get stuck in a hole. The issue always seem larger and more complex because it subconsciously signifies that whatever problem I have to handle is outside of what I already know how to handle, and it almost feels like I ran out of tools in my toolbox. However, if I were to be aware of my mindset and subsequently shift it, I can really get creative and realize the potential growth opportunities that can help me obtain my goal. For instance, although we could not successfully incorporate both the light sensor and micro servo, it definitely helped when we thought about the coding process in multiple perspectives, and expedited the process of finding a plausible reason as to why it would not work.
Having cognitive flexibility is important in a liberal arts setting because we are required to explore multiple disciplinary. As such, as a senior I felt pretty confident in choosing to take a poetry class this semester even though I have been only taking stem courses for the past two years. In doing so, I can see that it is enhancing my problem solving skills like when I was in my poetry class, I kept on making references to machine learning algorithms subconsciously to communicate more effectively.
Back in my sophomore year, I got stuck on finding a campus job, which I should have been more persistent about so that now I would feel like I have more experiences within the community. I think I should have talked to someone like my advisor or the CDC so that they could give me some advice on what to do next.
Similarly, I can think of multiple times where I commited to different student committees without really knowing what they were and how I would fit in with them. I was in retrospect just trying new things, however I had a really slow pivot rate where if I were to commit I just didn't leave even if it wasn't working out for me anymore.