Chico: Difference between revisions

From ISRWiki
Jump to navigation Jump to search
m (→‎Preliminaries: correct chico2 IP address)
(→‎iCub health checkup week: move to Archive subpage)
 
(40 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Chico Instructions =
This article describes '''Chico''' (code-name iCubLisboa01, [http://wiki.icub.org/wiki/ICub_versions iCub version] 1.2.1), the whole-body humanoid robot of [[Vislab]].


== Preliminaries ==
''For demo instructions, refer to [[iCub instructions]].''


ICub has a PC104 with a flash disk configured to 10.10.1.50
''Note: see [[Chico/Archive]] about historical information.''
It mounts the repositories that are on the laptop 10.10.1.51 (icub icub)
There is a support machine called chico2 (10.10.1.52) for running the yarp server, launching scripts and visualization.


TODO: to be completed and updated, in particular the firmware information below is obsolete.


The laptop has 2 repositories
= Preliminaries =
/export/code_64 for the laptop (compiled for 32bit)
/export/code_pc104 for the robot (compiled for 64bit)
They are anonymous, so changes are not commitable (DO NOT CHANGE)


Everything running with /icub namespace
* the iCub has a [[pc104|PC104]] with a flash disk configured with IP 10.10.1.50
* it mounts the repositories that are on the '''icub-laptop''' machine (10.10.1.53)


== Running a demo ==
= Maintenance =


1 - Turn on chico2
== Arm fine calibration ==
       
        set the namespace to /icub
        "yarp namespace /icub"


        run the yarp server (note that "yarpserver" is just one word. This way Cluster Manager can kill it)
Refer to http://wiki.icub.org/wiki/ArmFineCalibration
        "yarpserver"


        run the yarp run server
Basically, with yarpmotorgui set the arm joints to [-90 15 15 90]. Visually compare the arm angles with the reference picture.
        "yarp run --server /chico2"
   


2 - Turn on the laptop
== Hardware ==


        '''not needed'''
CAN 0, board 14 is just a spare board that lies in Chico's head (inherited from the design of the previous version of the head), not being used at the moment. It can slow down the CAN communication because the board is present and responding. If needed, we can disconnect it as shown:
        set the namespace to /icub
        "yarp namespace /icub"


        '''not needed'''
[[Image:ICub_headV2_CAN0_board14_disconnected.jpg|600px|How to disconnect board 14.]]
        make sure the name server is visible
        "yarp where" should detect the name server (10.10.1.???)


        '''not needed'''
When a joint/encoder breaks, refer to [[Chico joint calibration]].
        run the yarp run server
        "yarp run --server /icubsrv"
     
2- Turn on the robot (it will mount the repository that is stored on the laptop)
       
        switch on the power supply units (grey boxes under the table)


        switch on the cpu and motors of the iCub (green switches behind the iCub)
== Firmware ==


        '''not needed'''
Keep same Release and Version numbers; only increment Build number. Refer to [http://wiki.icub.org/wiki/Firmware this page] from the official iCub manual, using the following script:
        log in to pc104
  ./updateRobot.sh updateLisboa01.txt
        ssh icub@10.10.1.50
 
        '''not needed'''
        set the namespace to /icub
        "yarp namespace /icub"
 
        '''not needed'''
        make sure the name server is visible
        "yarp where" should detect the name server (10.10.1.???)
 
        '''not needed'''
        run the yarp run server
        "yarp run --server /pc104"
 
        '''make sure''' "./yarp run --server /pc104" is running on pc104 and that "/pc104" is seen by the yarp server (by doing a "yarp name list").
        if is not, "killall yarp" on pc104 and "./yarp run --server /pc104"
 
 
3- (Skip this for now) Start yarp run
 
        cd /iCub/app/default/scripts/
        ./icub-cluster.sh run
        ./icub-cluster.sh check
        there must be 3 ok messages
 
        if some problem
        ./icub-cluster.sh check
        ./icub-cluster.sh stop
        killall yarp
 
        killall yarp on pc104
 
        ./icub-cluster.sh run
 
 
4- turn on cameras
 
        On chico2 do:
 
        cd $ICUB_DIR/app/default/scripts
        ./cameras start
 
        sometimes connections must be established manually
        "yarp connect /icub/cam/right /icub/view/right"
        "yarp connect /icub/cam/left /icub/view/left"
 
        To turn off the cameras do:
        ./cameras stop
 
        To change the size of the images edit file:
        $ICUB_DIR/app/default/scripts/config.sh
 
 
 
 
5- Run iCubInterface (hardware except cameras)
 
        UNLOCK THE RED BUTTON SWITCH
        open a pc104 console
        iCubInterface --config $ICUB_ROOT/app/iCubLisboa01/conf/icubSafe.ini
        wait for all boards to answer ( < 1 min )
        control^C to cancel
 
 
6- Run YOGA demo
 
        on pc104 or chico2:
        iCubDemoY3 --config /app/demoy3/fullBody.txt
 
 
7- Start facial expressions driver
 
        Open a pc104 console:
        cd $ICUB_DIR/app/faceExpressions/scripts
        ./emotions.sh $ICUB_DIR/app/iCubLisboa01/conf
 
8 - Start facial expresions demo
 
        In 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)
 
9 - Run the ball following demo
       
        [[ballFollowingDemo]]
 
10 - Run the SIFT Object detection and tracking demo
 
      In any machine:
      $ICUB_DIR/app/iCubLisboa01/scripts/controlGazeManual.sh
      $ICUB_DIR/app/iCubLisboa01/scripts/attentionObjects/noEgoSetup/CalibBothStart.sh
 
      In any other machine (requires lots of processing power):
      $ICUB_DIR/app/iCubLisboa01/scripts/attentionObjects/noEgoSetup/startSiftObjectRepresentation.sh
 
      To change configuration:
      $ICUB_DIR/app/iCubLisboa01/conf/icubEyes.ini
 
== Useful information ==
 
{| border="1"
|+ IP address list
! name !! IP address
|-
|pc104 || 10.10.1.50
|-
|icubsrv || 10.10.1.51
|-
|chico2 || 10.10.1.52
|-
|cortex1 || 10.10.1.1
|-
|cortex2 || 10.10.1.2
|-
|cortex3 || 10.10.1.3
|-
|cortex4 || 10.10.1.4
|-
|cortex5 || 10.10.1.5
|-
|}
 
== ToDo for this page ==
 
ToDo: add information to the wiki on how to quit the demos/turn the iCub off.


[[Category:Robots]]
[[Category:Robots]]
[[Category:Vislab]]
[[Category:Vislab]]

Latest revision as of 16:02, 10 July 2017

This article describes Chico (code-name iCubLisboa01, iCub version 1.2.1), the whole-body humanoid robot of Vislab.

For demo instructions, refer to iCub instructions.

Note: see Chico/Archive about historical information.

TODO: to be completed and updated, in particular the firmware information below is obsolete.

Preliminaries

  • the iCub has a PC104 with a flash disk configured with IP 10.10.1.50
  • it mounts the repositories that are on the icub-laptop machine (10.10.1.53)

Maintenance

Arm fine calibration

Refer to http://wiki.icub.org/wiki/ArmFineCalibration

Basically, with yarpmotorgui set the arm joints to [-90 15 15 90]. Visually compare the arm angles with the reference picture.

Hardware

CAN 0, board 14 is just a spare board that lies in Chico's head (inherited from the design of the previous version of the head), not being used at the moment. It can slow down the CAN communication because the board is present and responding. If needed, we can disconnect it as shown:

How to disconnect board 14.

When a joint/encoder breaks, refer to Chico joint calibration.

Firmware

Keep same Release and Version numbers; only increment Build number. Refer to this page from the official iCub manual, using the following script:

 ./updateRobot.sh updateLisboa01.txt