15-494 Cognitive Robotics Spring 2009 |
|
Part I: Looking Glass "Hello World"
1. Compile the behavior LGdemo:
#include "Behaviors/BehaviorBase.h" #include "Events/EventRouter.h" #include "Wireless/LGmixin.h" class LGdemo : public BehaviorBase, public LGmixin { public: LGdemo() : BehaviorBase("LGdemo"), LGmixin() {} void DoStart() { erouter->addListener(this, EventBase::buttonEGID, RobotInfo::GreenButOffset, EventBase::activateETID); } void processEvent(const EventBase &) { uploadFile("ms/lg/file1.htm"); displayHtmlFile("file1.htm"); } }; Notice that when you upload a file from the robot to the Looking Glass client you must give the path name beginning with the ms directory. The Looking Glass client stores uploaded files in a temporary directory on the PC, and does not know the path they originated from on the robot. So when you display a file that has been uploaded this way, (e.g. displayHtmlFile()) do not include path name information. 2. On the robot (not your AFS directory) create the subdirectory ~/project/ms/lg. Then create the file project/ms/lg/file1.htm with the following content: 3. Run Tekkotsu on the robot and start the LGdemo behavior, but do not push the green button yet.<html><body> <center><font size=+5 color=red>Hello world!</center> </body></html> 4. In a separate terminal window, cd to Tekkotsu/tools/mon, then type: where the robot name is something like chiara3e or an IP address. Nothing will happen until the next step.java org.tekkotsu.mon.LGClient <robot_name> 5. Now make sure the robot is un-stopped, and press the green button. A Looking Glass screen should pop up on your PC. Part II: Speech
Modify your LGdemo program to speak some words when it displays the message
on the Looking Glass. To do this you must write:
#include "Sound/SoundManager.h" ... sndman->speak("Looking Glass demo"); Part III: "Both Sides Now"
In this exercise you are going to take pictures of a landmark
configuration viewed from two locations. Start by reviewing the
LGmixin::uploadCameraImage function, which takes a snapshot and
uploads it to the Looking Glass client as a JPEG file.
Turn in your answers by Friday, April 3.
Set up two dissimilar landmarks, such as an orange can and a green game piece, so that one is to the left of the other, with a gap in between. Write a behavior to do the following:
Dave Touretzky and Ethan Tira-Thompson |