Part I: Walking the Dog
Goal: learn how to boot up the AIBO, connect to it via a PC, and
teleoperate it using
TekkotsuMon.
- Insert the pink memory stick into the dog; there's a slot for it
in the dog's underside. The memory stick label faces outward,
i.e., toward the dog's side, not toward its midline. Then place the
dog back on the charger, making sure it seats properly. When it does,
the charger display will light up.
- Boot the dog by pressing the power button between its shoulders,
at the base of its neck. Note: if the dog is booted without a memory
stick installed, it will run Sony's standard AIBO personality
software, not Tekkotsu. Power it down again and then insert the
memory stick.
- Start up the ControllerGUI. If you are using dog #6, you would type:
> cd ~/Tekkotsu
> tools/mon/ControllerGUI cogrob6.wv.cs.cmu.edu
- Open a telnet connection to the dog on port 59000 so you can read
console messages:
> telnet cogrob6.wv.cs.cmu.edu 59000
Note: you can open additional tabs in your xterm window by typing
control-shift-T. Then use the mouse, or control-Page-Up and
control-Page-Down, to switch between tabs.
- Click the "RawCam" button in the ControllerGUI window. Turn the AIBO's
head to look at you, and check the camera image.
- For safety reasons, Tekkotsu starts up in Emergency Stop (E-Stop)
mode, which prevents the dog from moving. Turn off E-Stop by clicking
on the Un-Stop button in the ControllerGUI. When you do this, the dog gives
a short bark to indicate that it is ready for action.
Another way to toggle E-Stop mode is to double press the dog's back
button. Try it out. Notice that the dog makes a "screeching tires"
sound to indicate that E-Stop mode has been activated. Also, the
status indicator in the ControllerGUI window changes from green to
red. Try activating and deactivating E-Stop mode several times.
- From the ControllerGUI menu, select the TekkotsuMon submenu. You
can do this either by double clicking on the entry, or by selecting
the entry (single click, or arrow keys) and then hitting Enter. From
the TekkotsuMon submenu, activate HeadRemoteControl.
- Use the HeadRemoteControl tool to move the dog's head around. If
the head doesn't move, it's because you forgot to turn off E-Stop.
- Put the AIBO on the floor. Be careful when handling it that you
don't accidentally press the back or head buttons.
- In the ControllerGUI, activate the WalkRemoteControl. Take the
dog for a short walk.
- Get a pink ball from the AIBO supply cabinet.
- In the ControllerGUI, go to the Root Control menu, then go to
Mode Switch, and activate the Chase Ball behavior. Hold the ball in
front of the AIBO and it should run after it Clicking on Chase Ball
again will deactivate the behavior. Or you can use E-stop to
temporarily disable the behavior.
- Shut down the dog by clicking the power button. After it powers
down, remove the memory stick.
Part II: Compiling Tekkotsu Behaviors
- Make up a name for your team, e.g., "poodles". (Don't use this;
make up your own name.)
- Create a fresh project directory with your team name:
> cvs checkout -d ~/poodles project
> cd ~/poodles
- Copy the standard behavior template to create a new behavior:
> cp templates/behavior.h PoodleDemo.h
- Behaviors are instances of classes. Edit PoodleDemo.h to fill in
the template for the PoodleDemo class. Specifically, replace
CLASSNAME with PoodleDemo, and replace YOURNAMEHERE and DESCRIPTION
with appropriate text.
- In the body of PoodleDemo's DoStart() method, add the following
startup code:
std::cout << "PoodleDemo is starting up." << std:endl;
Put a similar message in the shutdown code in the body of the DoStop()
method.
- Edit the file StartupBehavior_SetupModeSwitch.cc. You will need to
copy two lines of code:
- Search for the #include of SampleBehavior.h, and insert a line
just below it to include PoodleDemo.h
- Search for the addItem entry for SampleBehavior, and insert a line
just below it to do an addItem of PoodleDemo. Note that both instances
of SampleBehavior on this line must be changed to PoodleDemo.
- Insert the memory stick into the writer; the label should face to
the left. Type "make update" from within your project directory.
Wait until the memory stick has been unmounted before removing it.
- Reboot the dog and try out your new behavior, which you will find
listed under the Mode Switch menu in the ControllerGUI.
Dave Touretzky and
Ethan Tira-Thompson
|