- Boe-Bot Robot Shield for Arduino
- Arduino Uno
- Small screwdriver
This project was a great introduction to the field of robotics and a good extension for my learning of the Arduino programming language. Parallax, the company that makes the Boe-Bot, provides a comprehensive tutorial that starts off with Arduino basics, then follows up with construction of the robot and programming the onboard Arduino to react to environmental factors such as light, distance and more.
Results and Challenges
Assembling the robot was very straight-forward, and the tutorials prepare you well for getting all the wiring set up correctly for each mini project. The ultimate goal is to program the robot to navigate its environment independently.
In the video below you will see how this robot is programmed to avoid structures it confronts along its path. It does this by using the two black "eyes", actually infrared (IR) LEDs, which shoot out infrared light that is then reflected by objects in front of them, and captured by IR receivers mounted directly behind the LEDs. When the IR receivers detect the infrared light coming back (meaning they are bouncing off an object), the robot backs up, turns a little, then goes forward again, thereby avoiding contact with the object.
There were some missteps in this process. I was getting a lot of false readings in the beginning, and it appears to be due to other florescent lights in the room, which can throw the sensors off. Another issue was where the IR LEDs pointed. If they were both straight ahead, it was hard for the robot to detect something at a slight angle. Small adjustments here and there seemed to do the trick.
Since shooting this video, I have uploaded new code that allows the Boe-bot to navigate a bit more smoothly, and to avoid objects ahead of time, before needing to back up. It's not perfect, and there's more I want to experiment with, so another blog entry on this topic may come in the future.