I. Initial Idea
Initially, Terrence and I revisited the Breitenberg reading to gather inspiration in order to decide which robot we would try to build. We were particularly drawn to the ‘shadow fearing robot’ and thought to create something opposite of this: a ‘light fearing robot’. Rather than avoid shadows, this robot avoids bright light. Upon detection of bright light, it turns away by stopping the left wheels, and moves along.
However, we ran into a roadblock once we started the coding portion. We discovered that there was no code to call the light sensor using python. The only way for us to implement that would be to use other sensors, which posed a learning curve and time constraint challenge. We struggled for a while with this troubleshooting, and eventually decided to cut our losses for the time being.. making the goal a bit more simple: instructing the robot to follow a ‘shadow’. This still draws inspiration from the shadow fearing robot, except our robot is attracted to the shadow. We decided to use makecode for this, in order to utilize the full spectrum of our microbit’s capabilities.
Here is the MakeCode:
II. Testing / Troubleshooting
We sent the code to microbit, but it wasn’t properly following the shadow for the first few trials. We returned back to our MakeCode and discovered a simple typo: We hadn’t specified the motor.
III. Success
Upon fixing our coding syntax, the robot was operating successfully. Here are some videos of our successful trials!
IV. Reflection
This lab definitely reminded me that there are some ideas in robotics which are “too ambitious”. Yes, everything is possible… however, it is important to be realistic given the time constraints and knowledge we have in the moment. This robot we created reminded me of the motorized street cleaners we see in China. They seem to follow along the side of the curb, blowing water onto the street. I wonder if we can make these cleaning devices robotic, like robotic vacuum cleaners. We always see people in hotels pushing the floor cleaners, but what if there was a way to automate this process, instructing the robot to avoid places it has already gone, as well as spots that are ‘darker’ as a result of water being dispensed.