Getting Started with Aibo and Getting Started with Aibo and Tekkotsu Tekkotsu QuickTime™ and a TIFF (Uncompressed) decom are needed to see this Aperios - firmware OS in Aibo Aibo (“friend”) OPENR-SDK - basic developers kit from Sony (model specific) Tekkotsu - (“iron bones”) - Controller overlay and development environment from CMU
Tekkotsu - (“iron bones”) - Controller overlay and development environment from CMU. Getting Started with Aibo and Tekkotsu. OPENR-SDK - basic developers kit from Sony (model specific). Aperios - firmware OS in Aibo. Aibo (“friend”). AIBO. Hardware. - PowerPoint PPT Presentation
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Getting Started with Aibo and Getting Started with Aibo and TekkotsuTekkotsu
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Aperios - firmware OS in Aibo
Aibo (“friend”)
OPENR-SDK - basic developers kit from Sony (model specific)
Tekkotsu - (“iron bones”) - Controller overlay and development environment from CMU
AIBOAIBO
HardwareHardwareSensors - 320 line CCD camera with color
segmentation hardware IR distance sensors (2 on ERS-7),
one on ERS 210 Position encoders for all joints
actuator motors (see below) Stereo Microphone Touch sensors (switches) head (1),
back (3/ers7, 1/ers210), chin Accelerometer for detecting falls
and pick-ups Switch sensors on each paw pad
Actuation motors and OutputsJoint actuation motors (one per paren) Tail: (left/right)
Neck: (up/down)Head: (left/right) (up/down)Hip/shoulder- per leg: (in/out)
An Aibo “program” is a collection of concurrent/event driven threads An Aibo “program” is a collection of concurrent/event driven threads called “BEHAVIORS”called “BEHAVIORS”
Look for object
Point head at object
Bark and wag tail
Monitor the battery charge
Example: Head tracks of object in visual field, barks and wags tail when object found
Behavior (foreground)
Behavior (background)
Behavior (foreground)
Behavior (foreground)
Shared ObjectsShared Objects WorldState ObjectWorldState Object- Shared memory region that - Shared memory region that
holds the current state of all sensors and holds the current state of all sensors and actuatorsactuators Updated in background every 30msUpdated in background every 30ms read by behaviorread by behavior
Motion ObjectsMotion Objects - one unique object for each - one unique object for each motion, i.e. move head to a specific positionmotion, i.e. move head to a specific position Several canned ones w/Tekkotsu or you can write your Several canned ones w/Tekkotsu or you can write your
ownown Named <motion>MC.cc (.h) by conventionNamed <motion>MC.cc (.h) by convention Executed through the “motion manager” processExecuted through the “motion manager” process
class happyBehavior : public BehaviorBase {class happyBehavior : public BehaviorBase {
public:public: happyBehavior() : BehaviorBase(),happyBehavior() : BehaviorBase(), stand_id(MotionManager::invalid_MC_ID),stand_id(MotionManager::invalid_MC_ID), stand()stand() {{ // initialiation of stand up behavior// initialiation of stand up behavior stand->setPlayTime(700); // 700 milliseconds to stand upstand->setPlayTime(700); // 700 milliseconds to stand up stand->setPose(PostureEngine("/ms/data/motion/situp.pos"));stand->setPose(PostureEngine("/ms/data/motion/situp.pos")); }} virtual void DoStart();virtual void DoStart(); virtual void DoStop();virtual void DoStop(); virtual void processEvent(const EventBase& event);virtual void processEvent(const EventBase& event);
virtual std::string getName() const {virtual std::string getName() const { // Name is used for menus, or debugging.// Name is used for menus, or debugging. return "happyBehavior";}return "happyBehavior";}protected:protected: MotionManager::MC_ID stand_id;MotionManager::MC_ID stand_id; SharedObject< MotionSequenceMC<MotionSequence::SizeSmall> > stand;SharedObject< MotionSequenceMC<MotionSequence::SizeSmall> > stand;};};#endif#endif
Beh
avio
r Cla
ss B
eh
avio
r Cla
ss te
mp
late
tem
pla
te
Includes for Motions Events Base-behaviors
Constructor must run constructor for base class
DoStart()• runs each time behavior activates
EventHander(event)•Runs on incoming event
DoStop()• runs each time behavior deactivates
Intermal data structures
For debugging
How Tekkotsu WorksHow Tekkotsu Workswww.tekkotsu.org