|
Balancing Robot Odyssey Robot Tabletop Challenge Fire-Fighter Teamwork Bots Lego Bots AIME Bot BotStack My Electronics Lab Robot CAD Symbols Robotic Events Robot Links
| | Home -> Robots -
> BotStack

Bob Allen and I have collaborated on many robot projects.
We both have dreamed of building robots out of re-usable electronic components,
that would isolate the sensory equipment from the main processor in a way, where
everything could run in parallel, and sit on an infinitely expandable bus.
We built an initial version of this dream and used it to power our
tabletop challenge robots. We have
continually improved on the design since then, and now all of our robots are
using this same board stack as the brains, and sensory interface. Now,
even the balancing robots work off of these
same boards.
We have recently had lots of interest from others who would like
to use these boards in their robots too. If you would be interested in
seeing them produced as a kit, please don't hesitate to drop me an email, so we
can determine how many people might be interested in it.
Here is an overview of the various boards in the stack and what
they accomplish:
Mainboard/Motor Driver:
 |
The main board contains the primary
essential for all robots, the ability to drive motors, power regulation,
and the connective and mounting point for the rest of the stack.
All the boars in the stack use I2C bus to communicate. The main
board has a PIC18F252 onboard, an L298 for driving motors, and can both
divide and decode 2 optical shaft encoders with quadrature for motor
feedback. With the right software, this board can either be just a
motor board with full PID motor control, or it can completely balance a
balancing robot with tlit-optimized velocity control. The
main board can function as an I2C slave or stand-alone for just doing
balancing. |
Sensor Board:
 |
The sensor board is a IO nexus for dealing
with many sensory devices and presenting them up to the I2C bus in a
standardized manner. It can take input from up to 5-infrared
rangers, 4-digital sonar modules, 2-I2C sonar modules, 4-line detectors,
5-bump sensors, 2-general analog ports, and can control 4-hobby servos
for sweeping sonar, IR, or positioning of sensors. |
CPU Board (Main Brain):
 |
This is one example of the 3 CPU boards we
have for the BotStack. We have two PIC CPU boards, one is based on
the PIC18F452, and the other is based on the PIC18F6621 (pictured).
The third board, takes a 40-pin BS2-40p Basic Stamp. All three
boards have sockets for I2C eeproms for storing data, pull-up resistors
to function as an I2C master, a 9v relay for switching a fan, I2C bus
ports, and two
RoboBrix
ports. |
Camera Board:
 |
The camera board is designed for isolating
and controlling a
CMUcam, or CMUcam 2
vision sensor on the BotStack. This board talks directly to
the CMUcam, at 115200 bps to retrieve and process target tracking data,
and run a PID controlled pan/tilt camera head, and provide simple
angular offset and distance geometry back to the I2C master. This
is the board used to control the object tracking on both
Tracker bot, and
ISIS Jr. |
Fire Fighting Board:
 |
The firefighting board is designed for use
in a Trinity firefighting event. It has the ability to constantly
monitor an Hanamatsu Flame detector, an Eltec Pyroelectric sensor, and
listen for the 3-4khz fire alarm tone for sound activation. The
board can also drive 2 servos using PID for mounting the Eltec sensor on
a pan-tilt head. All the sensors are interrupt driven, so there is
no way the robot is going to miss a flame if it even glimpses it. |
Sound Board:
 |
This is one of the newer boards I
designed, and have yet to write the software for it. This board
has a library of preprogrammed tones, sounds, and tunes onboard that you
can call up by number. This is the perfect board for giving a
robot the ability to bleep, blop, jingle, and play a tune.
You can even add your own sounds to the library. It has 512k of
nvram onboard, so if you know the tones to make a sound or tune, you can
load them over the bus and it won't forget it. |
CF Board:
 |
This board allows you to interface a CF
card to the BotStack. The primary purpose of this board is to
interface an 802.11b card, for connecting a robot to a wireless network.
With this capability, you can perform teamwork tasks with other robots,
or embed a web server in your robot and control it over the internet. |
RoboBrix Carrier Board:
 |
This carrier board is designed to make
interfacing RoboBrix to the BotStack easy. It has mounting holes
so you can mount RoboBrix right to the card, and interface them to the
I2C bus without knowing anything about I2C. You can use the
standard RoboBrix communications protocol to talk to any of our other
BotStack boards. RoboBrix were designed by
Wayne Gramlich, another Home Brew
Robotics Club member, and they are sold through the
Robot Store. It is our
hope that this board could be used to control a balancing robot using
RoboBrix, and be able to outfit it with RoboBrix controlled sensors. |
BotStack in Action:
Here are some snapshots of the stack in action on both my firefighting robot,
FlameOut, and Bob's balancing robot
ISIS Jr.
Phew that was a-lot of info......all can think of for now.
More on this later!
|