The Bugbot Lab
Created by RJ & K Electronics, the Bugbot is an inexpensive, deceptively simple robot built on a behavior-based (“bottom-up”) architecture. It is assumed that students who work with this Bugbot module will have already completed the online behavior-based robotics curriculum featuring two behavior-based virtual robotics labs. The behavior-based curriculum is just one part of our Introduction to Robotics.
Building & Using Your Bugbot
This module has two different versions. If students begin with the unassembled parts from a "bugbot kit" then students will perform both Step A and Step B of this activity. If students begin with a Bugbot that is already assembled, then this activity consists of Step B only.
STEP A: Constructing Your Bugbot
In addition to the parts of the Bugbot itself (as described in the “Assembly Instructions”), construction of the Bugbot requires the following materials:
- Worktables for constructing the Bugbot.
- Ventilation system to manage fumes from the soldering activities. [One fan for each 6t table table serving as many as 4 teams of 2 students each.]
- Required Tools:
- Needle nose pliers
- Hot glue gun
- Soldering iron
- Side cutters
- Safety lighter
- Wire strippers
The Equipment listed above may be purchased HERE [ADD LINK HERE]
Assembly of the Bugbots by teams of 1-4 students each should take from xx to xx minutes.
STEP B: “Programming” & Testing Your Bugbot
Once your Bugbot is constructed it is time to “program” it to function in its environment. This means that first you must choose an environment for your robot to inhabit. Hallways work well because they have walls close by to re-direct your robot’s movement. If you only have a very large, open-space you may want to create a more confined space for your robot to “live” by creating a fenced-in area. You can always create walls out of large, empty cardboard boxes.
If you have already completed The Mind Project’s online robotics curriculum, you will know that “programming” a behavior-based robot (like the Bugbot) is not the same as programming a classic robot. [add links to classic and behavior] A behavior-based robot does not have a centralized “brain” that controls its movements. Rather, it has one or more stimulus-response “behaviors.” That is, when the robot detects a certain feature present in it environment (i.e., a stimulus), there is a mechanized response (a behavior) that is hardwired into the robot. Complex robots of this kind can have many behaviors that are ranked in hierarchical order – with those behaviors taking priority at the top of the hierarchy.
The bugbot has two basic behaviors: “move forward” and “avoid (when a feeler detects an obstacle)”. The avoidance behavior has priority – and overrides the “move forward” behavior in situations where one of the bugbot’s feelers in pressed by an object. In that case, the robot performs an “avoidance” behavior that consists of one or both of the bugbot’s motors reversing until the feeler is released. While the behavior hierarchy is hardwired into the robot – so that part of the programming can’t be changed. However, another part of the programming can be altered – because the shape of each feeler can be altered and with each change in its shape, the way it behaves changes as well. So there are an endless number of different behaviors that can be “programmed” in simply by bending the feelers. Now you don’t want to get carried away – you can bend the feeler into shapes where they don’t function well at all or they even break. But there is room for creativity here.