This website uses browsing/session and functional cookies to ensure you get the best experience. Learn More

LegsFineCalibration

From Wiki for iCub and Friends
Jump to: navigation, search

This procedure describes how to correct small errors in the calibration of the iCub legs. It applies mainly to the leg joints (joint0...joint5).

  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 0] [deg]. A possible posture is given in the pictures below.

LegCalib1.jpg LegCalib2.jpg

  1. Step 2: read the robot legs 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 (see also iCubInterface config file) in the iCubInterface configuration file. Note: the legs have a unique configuration file (e.g. icub_legs_safe.ini). The first six joints (j0, j1, j2, j3, j4, j5) in this file corresponds to the six joints of the left leg; the last six joints (j6, j7, j8, j9, j10, j11) corresponds to the right leg.

As an example if you want to change the left leg calibration (when using the icubSafe.ini initialization file), edit the icub_legs_safe.ini file as follows:

BEFORE: Zeros  aaa bbb ccc ddd eee fff ggg hhh iii lll mmm nnn....
AFTER:  Zeros  aaa+Delta(0) ... fff+Delta(5) ggg hhh iii lll mmm nnn....

If you want to change the right leg calibration (when using the icubSafe.ini initialization file), edit the icub_legs_safe.ini file as follows:

BEFORE: Zeros  aaa bbb ccc ddd eee fff ggg hhh iii lll mmm nnn....
AFTER:  Zeros  aaa bbb ccc ddd eee fff ggg+Delta(0) ... nnn+Delta(5)

IMPORTANT: You can also use this excel worksheet fine_calibration.xls to quickly compute the needed zero parameters, given the RobotMotorGui encoder readings.

Personal tools
Namespaces

Variants
Actions
Navigation
Print/export
Toolbox