15-494/694 Cognitive Robotics Lab 10: Calypso for Cozmo
I. Calypso for Cozmo
- Set up Cozmo and connect it to the workstation.
- Plug an Xbox controller into the workstation.
- Make sure the workstation's speakers are powered on and the volume is turned up.
- Run Calypso on the workstation by typing the following in a terminal window:
/opt/calypso
- Use the controller to enter
the Let
Me Drive rule below. Note that controller button help appears
in the top left corner of the Calypso window. If you switch to
using the keyboard, the help switches to keyboard help.
WHEN gamepad DO move
- Run the program by pressing the "back" button on the Controller
or the Backspace key on the keyboard.
- Use the controller to drive the robot around. Refer to the
button help: you can control the head and the lift too.
- Put a cube where the robot can see it and observe its appearance on the world map.
- Move or rotate the cube and observe the world map. Try putting
the cube on its side or upside-down and see how the world map
representation changes.
- Using the controller, make the robot pick up a cube.
- Leave execution mode by pressing the Back button on the controller or
the Backspace key on the keyboard.
- To turn off "Novice mode": bring up the Home menu by pressing
the Start button on the controller or clicking on the Home icon in
the top right corner of the screen. Then select Settings.
- Add
a Pursue
and Consume idiom to your program using the following rules:
WHEN gamepad DO move
WHEN see cube DO move toward it
WHEN bumped cube DO grab it
WHEN DO say "I have a cube"
Note: to indent a rule, put the pencil on the WHEN tile, pick up
the rule using the A button, slide it to the right using the left
stick, then put it back down. Aternatively, you can click and drag on the
WHEN tile with the mouse.
- Put one cube behind the robot and hide the other cubes. Run the program.
- Use the controller to turn the robot until it sees the cube.
II. Calypso Map Layouts
- You will need to complete this lab on the real robot, but you
can do some of your development work at home
using Cloud Calypso if you wish.
- Have a look at the Calypso curriculum.
- Show the robot the shack you constructed, and using the Let Me Drive idiom, have it explore the shack so
the walls appear on the world map.
- Click on the map menu in the top left corner of the world map and select Snapshot to copy the map to the Map Layout editor.
- Leave execution mode and switch to the Map Layout view.
- Clean up the map layout and add two blank walls to complete the shack.
- Drag a room onto the map layout and adjust it to cover most of
the interior of the shack. Rename the room to "interior".
- Drag two other rooms to locations outside of the shack, and give them names.
- Write a state machine to get the robot to visit each of your three rooms.
- Run your program and switch to the state machine view to see the robot change state.
- Save your program. The map layout will be saved with it. Note
that your program will be saved in ~/Documents/Calypso.
III. Are You Smarter Than a Fifth Grader?
- Watch this video of the Cozmo baking companion for inspiration.
- Write your own Cozmo demo in Calypso. It must satisfy the following requirements:
- Program Cozmo plus at least one other character (a cube or the "world").
- Cozmo's program should involve multiple pages of code.
- Use at least two rooms. You can use the shack if you wish. If you choose not to use your shack,
you may want to keep it in the background to provide stable landmarks so the robot can reliably
navigate to the rooms.
- Take some photos and screenshots to document your demo.
Hand In
Hand in the following in a file called handin.zip:
- Your Calypso program file.
- Screenshots of your Calypso world map when running your program.
|