18 Mar 2008 RoboDo   » (Journeyer)

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.

Latest blog entries     Older blog entries

Share this page