From Wiki for iCub and Friends
Revision as of 18:20, 8 January 2010 by VVV09 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This procedure describes how to correct small errors in the calibration of the iCub head. It applies mainly to the head joints (joint0...joint5). Note: this procedure has to be done after the calibration of the arms.

  1. Step 1: put the iCub in a suitable posture and let's call this configuration theta_desired in accordance to the convention you decided to use. As an example, if you decide to use the convention described in ICubForwardKinematics, you might decide to use the posture in the pictures which corresponds to theta_desired = [0 0 0 0 0] [deg] (remember we are just considering the five dof of the head).

Head1.JPG Head2.jpg Head3.jpg

  1. Step 2: read the robot posture as reported by the iCubInterface (e.g. using the robotMotorGui). Let's call this configuration theta.
  2. Step 3: for each joint compute the difference between theta and theta_desired. Let's call this difference Delta = theta - theta_desired.
  3. Step 4: consider Delta for joint i, called Delta(i). Add Delta(i) to the suitable Zeros entry in the iCubInterface configuration file. As an example if you want to change the left arm calibration (when using the icubSafe.ini initialization file), edit the icub_head_torso_safe.ini file as follows:
BEFORE: Zeros  xxx yyy .... zzz 
AFTER:  Zeros  xxx+Delta(0) yyy+Delta(1)  ... zzz+Delta(5)