Chico joint calibration: Difference between revisions
Jump to navigation
Jump to search
| Line 13: | Line 13: | ||
* Open <code>$ICUB_ROOT/app/iCubLisboa01/conf/iCub_Calibration_Lisboa_001.xls</code> | * Open <code>$ICUB_ROOT/app/iCubLisboa01/conf/iCub_Calibration_Lisboa_001.xls</code> | ||
* Go to the desired joint section; edit the yellow fields with the <code>robotMotorGui</code> values that you have previously noted down; observe and write the resulting red values | * Go to the desired joint section; edit the yellow fields with the <code>robotMotorGui</code> values that you have previously noted down; observe and write the resulting red values. | ||
* Edit <code>$ICUB_ROOT/app/iCubLisboa01/conf/icub_<limb>_safe.ini</code> and write the new "red" values that you have just read in the XLS. The rows to edit are typically: Zeros, Min, Max, Encoders, Calibration1, Calibration3. | * Edit <code>$ICUB_ROOT/app/iCubLisboa01/conf/icub_<limb>_safe.ini</code> and write the new "red" values that you have just read in the XLS. The rows to edit are typically: Zeros, Min, Max, Encoders, Calibration1, Calibration3. | ||
Revision as of 16:09, 13 November 2009
We explain here to how calibrate Chico's joint encoders.
General calibration procedure
- Power-cycle (i.e., switch off and on) the board controlling the joint that you want to calibrate.
- Launch
iCubInterface --config $ICUB_ROOT/app/iCubLisboa01/conf/icubRaw.ini- the emergency/fault button must be pressed down
- Launch
robotMotorGui
- Manually align the joints to a desired zero position and write down the values provided by
robotMotorGui
- Open
$ICUB_ROOT/app/iCubLisboa01/conf/iCub_Calibration_Lisboa_001.xls
- Go to the desired joint section; edit the yellow fields with the
robotMotorGuivalues that you have previously noted down; observe and write the resulting red values.
- Edit
$ICUB_ROOT/app/iCubLisboa01/conf/icub_<limb>_safe.iniand write the new "red" values that you have just read in the XLS. The rows to edit are typically: Zeros, Min, Max, Encoders, Calibration1, Calibration3.
- Update
$ICUB_ROOT/app/iCubLisboa01/conf/icub_<limb>.inias well.
- Launch
iCubInterface --config $ICUB_ROOT/app/iCubLisboa01/conf/icubSafe.ini- again, the emergency/fault button must be pressed down
- Verify these things:
- that the zero position makes physical sense, i.e., it is really close to the desired zero;
- manually move the joints a bit around the zero position, check that the values provided robotMotorGui are changing continuously, without glitches or jumps
- Calibration is now complete. You are ready to run
iCubInterfacewith the motors enabled (emergency button up).
Example: shoulder calibration
- With
canLoader20, flash the old firmware version 1.51 to board number 2 (example for right shoulder: pcan, net 2, board 2).
- For the
icubRaw.iniphase, follow the instructions of the general calibration procedure above. Manually place the 3 shoulder joints to a position that is consistent to the desired values (0, 0, any). This corresponds to the arm being vertical and perpendicular to the floor. Write down the first two encoder values; let's call these "first value" and "second value" inrobotMotorGui.
- Next, manually put the shoulder to position (first value - 30, second value + 30, 0), which means that the third joint is in a position that corresponds to the desired zero. Take note of the "third value" provided by
robotMotorGui.
- Update the XLS file as per general procedure.
- With
canLoader20, flash back to the new firmware version 1.53.