RoboDo: Overall Control Ideas, Awareness
RoboDo should be able to amuse, entertain, educate... and
fight. In order to do these things, the robot will need a
certain awareness.
The most basic levels of awareness will operate
automatically, no matter what the control mode. These
include...
RoboDo should be aware of its body position, center of
gravity, and current and upcoming motions in order to
maintain its balance. A 2 axis gyro/3 axis accelerometer
combo will be the main sensor in this sub-system, and
corrections should be applied in real time, without
involving upper level subsystems.
RoboDo should be aware of its environment. Mapping (including
sonic mapping) will be a key process, at least in most
modes. The head mounted Ping ultrasonic sensor, head mounted
sound detectors, and hip
mounted Sharp IR sensors will provide the data. This
environmental data will
automatically limit the robot's actions. For example, the
"walk forward" command would be disabled if there was a wall
directly ahead.
This lower level data (balance and mapping) would be used by
the mid level subsystems...
The localization sub-system would add the "you are here"
sticker to our map. This subsystem would use data from the
onboard compass, mapping sensors, and vision system to
determine the robot's position. (The ceiling, with its
uncluttered straight lines and clear intersections might
prove useful here)
The tracking subsystem will use the vision system to detect
and track moving objects. This will probably involve
capturing several frames and comparing them to see what's
changed. The camera will have servo control of tilt and pan
and automatically track the closest object in certain
modes.
Upper level subsystems related to awareness include the
actions subsystem, which maintains an array containing all
of the actions RoboDo can perform. Mode constraints will
eliminate some of these possible actions. For example, the
"do a cartwheel right" action isn't available in "Explore
and Map" mode. Map constraints further limit the actions,
and other subsystems may limit the available actions
too.
These subsystems will work together to provide a certain sensory
awareness. Through them, RoboDo will be aware of its body
position and center of gravity, it will sense its
environment and know where it can and can't go... what it
can and can't do. It will also recognize and track other
moving objects in its environment.
Anyway, that's the general idea as it stands now.

del.icio.us
Digg
Google bookmark
reddit
Simpy
StumbleUpon
Furl
Newsvine
Technorati
Tailrank