Innovation Days 2009

From ISRWiki
Jump to navigation Jump to search

In this page we will explain how to take good care of Chico during the Innovation Days 2009 exhibition that takes place in the Feira Internacional de Lisboa from 18 to 20 June 2009.

Setup

The demo inventory consists of:

  • Chico the robot (duh), which has a pc104 CPU (10.10.1.50, username icub) in its head.
  • icubsrv Dell XPS laptop: 10.10.1.51, username icub. No need to use or modify this machine, it contains a hard disk drive that gets mounted by Chico's read-only pc104 CPU at boot time. Don't worry about this machine, just keep it switched on.
  • chico3 Tsunami 17" laptop, 10.10.1.53, username icub. We will use this machine for YARP and all demo management.

Below Chico's table, looking from bottom to top, we have:

  • APC UPS (Uninterruptible power supply)
  • Xantrex XFR 60-46 power supply unit (the thick one) for motors
  • Xantrex XFR 35-35 power supply unit (the thin one) for pc104 and other motors
  • iCubBrain chassis containing two servers to be used for computation: icubbrain1 (10.10.1.41, usual username) and icubbrain2 (10.10.1.42)

Starting YARP components

Launch the graphical Cluster Manager application on the chico3 laptop, by typing this in a terminal:

  cd $ICUB_ROOT/app/default/scripts
  ./icub-cluster.py $ICUB_ROOT/app/$ICUB_ROBOTNAME/scripts/vislab-cluster.xml

yarpserver

Click 'Run' to start yarpserver on chico3. The light above the 'Stop' button will become green.

yarprun

Now we are ready to start 'yarprun' on all the machines we need (necessary for the distributed YARP modules that make up a demo to communicate with one another). In the 'Select' column, make sure that only the following machines are selected with a red light:

  • chico3
  • pc104
  • icubbrain1

Click 'Run Selected' and wait a bit so that all machines can turn on their green 'On' light. The pc104 can be slow and, sometimes, unpredictable.

Do all the selected machines have their 'On/Off' switch green by now? If so, proceed to the next step. If not, click on 'Check All' and see if we have a green light from the pc104 now. You should see something like this:

Cameras

Open a chico3 console and type:

  cd $ICUB_ROOT/app/default/scripts
  ./cameras start

Sometimes we need to manually establish these connections in order for images to display:

  yarp connect /icub/cam/right /icub/view/right
  yarp connect /icub/cam/left /icub/view/left

To turn off the cameras:

  ./cameras stop

To change the size of images:

  nano -w $ICUB_ROOT/app/default/scripts/config.sh

Running a demo

  • Turn on icubsrv (Dell XPS laptop)
  • Turn on chico3 (Ts" laptop), which we will use to actually control the demos
  • Turn on the Chico's Xantrex power supply units
  • Turn on the green switches behind Chico
  • Start the needed YARP components with the GUI: one instance of yarpserver and all necessary instances of yarprun, one per machine

Yoga demo

  • Run iCubInterface on the pc104
  • On any machine, type:
  iCubDemoY3 --config /app/demoy3/fullBody.txt

Facial expressions

  • Start the facial expression driver on the pc104:
  cd $ICUB_DIR/app/faceExpressions/scripts
  ./emotions.sh $ICUB_DIR/app/iCubLisboa01/conf
  • Start the facial expression demo by typing one of these two commands on any machine:
  $ICUB_DIR/app/faceExpressions/scripts/cycle.sh

or

  yarp rpc /icub/face/emotions/in
  set all hap // full face happy
  set all sad // full face sad
  set all ang // full face angry
  set all neu // full face neutral
  set mou sur // mouth surprised
  set eli evi // eyelids evil
  set leb shy // left eyebrow shy
  set reb cun // right eyebrow cunning
  set all ta1 // mouth talking position 1 (mouth closed)
  set all ta2 // mouth talking position 2 (mouth open)

Ball following

This demo uses the left eye and the right arm of Chico. Assumption: left eye is running at a resolution of 320x240 pixels.

  • Make sure cameras are running
  • Make sure iCubInterface is running
  • Run image rectifier on icubbrain1
  cd 0.icub_3D_ball_tracker
  ./0.LEFT_320x240_image_rectifier.sh
  • Set left camera colour parameters and run tracker [ON icubbrain2?]
  cd 0.icub_3D_ball_tracker
  ./1.LEFT320x240.iCub_set_parameters_of_framegrabber_REALISTIC.sh
  ./2.execute_the_tracker.sh
  • Start a viewer on chico3
  yarpview /viewer
  • Run expression module on icubbrain1 [CHECK THIS]
  cd 0.icub_3D_ball_tracker
  ./3.execute_trackerExpressions.sh
  • Run arm inverse kinematics module on icubbrain1
  cd iCub/bin
  ./iKinArmCtrl --onlyXYZ
  • Connect all ports from icubbrain1. Careful: the robot will start moving after this step!
  cd 0.icub_3D_ball_tracker
  ./4.LEFT.iCub_connect_ports.sh
  ./6.connect_LeftEyeToRoot.sh
  • [OPTIONAL] Read the 3D position of the ball in the root reference frame (from any machine)
  yarp read ... /icub/LeftEyeToRoot/ballPositionOut

SIFT Object Detection and Tracking

Attention system