Robot Calibration

 

    James Trevelyan Updated December 1998

Keywords: kinematic parameter identification, error model of manipulator

Update: There has been considerable interest in this page recently. I will extend it with a more complete description. In the meantime here is some software you can download. A student has prepared a major set of pages which might help you....

CAL.ZIP - Software written in C for DOS (Borland C) using the Little-X graphics package (manual)

cleary.zip - Software written in C, Visual Basic for optical calibration method using laser and CCD camera - provides accuracy on our ABB1400 robot to about 0.05mm. Please be patient - I need to put a student's thesis on the web which you can download and read to understand how we did this.

Some of the recent enquiries have been from the following:

  • Lukas Beyer <Lukas.Beyer@UniBw-Hamburg.DE>
  • Dr. K. V. Rajaram <rajue@mech.iitkgp.ernet.in>
  • Paul Leaney <P.G.Leaney@lboro.ac.uk>
  • Patrick Salvia <salviap@ulb.ac.be>
  • Luis Paulo Laus <laus@corvo.cpgei.cefetpr.br>
  • Craig Tischler <craigt@mame.mu.OZ.AU>

Because of the time I am spending on helping with mine clearance efforts I don't have much time to keep up to date on robot calibration. The aim of putting these addresses here is to suggest you all work together. The techniques can be simply implemented in MATLAB.

 

 

We have developed a simple way of calibrating any serial manipulatorarm robot using a grid marked on a table-top, a spirit level, a measuringtape and our software. You will not achieve the ultimate in accuracy thisway, but you should reduce your absolute pose errors to less than onedegree and less than 1mm.The software is free to research and educational users. Send us Email if you would like to try it. It comes with technical papers and a printed manual.

An Introduction to Robot Calibration

Although robots are made with precisely machined parts, many small errors in the mechanism during manufacture or assembly may contribute to large errors in the final arm pose. "Calibration" is a procedure for determining these errors by measurement so a robot controller can compensate for them. Typically they are measured by inference: the uncalibrated robot pose is compared with the expected pose for a robot without errors (ideal pose) and the errors are inferred from a number of such measurements. The inferred errors are then used to define a kinematic model of the robot which can be used to control the robot pose with greater accuracy.

While several calibration methods have been reported with satisfactory results, the measurement techniques have seldom been appropriate for in-situ calibration of industrial manipulators. An ideal calibration method can be applied to an industrial robot and its workcell surroundings without having to modify the tool (end-effector) or fixtures. Most reported calibration methods focus on the robot itself, and require special calibration tools to be fitted. The geometry of the tool is part of any kinematic model, so changing the tool alters the model. Changing a tool may cause further pose errors if there are significant deflections due to gravity.

The aim of our work is to explore convenient calibration methods for robots and workcell fixtures, and for correcting the effects of these errors. By convenient, we mean that a method must be readily applicable to existing industrial robots and workcell fixtures in situ, not require substantial modification of the robots, and not rely on complex instrumentation being installed and calibrated. It should also guarantee a given residual error level. Needless to say, the measurement procedure should be routine and reasonably quick.

 

Kinematic Calibration

Kinematic calibration is based on the assumption that the robot mechanism is stiff, so that elastic deflections are not significant, and that mechanical transmission errors (e.g. in the gears) can be neglected. These effects are usually referred to as "non-geometric errors". Results reported for several robots, based on this assumption, have shown that the absolute positioning error can be reduced from 20 mm to less than 1 mm.

However, there are several reports stressing the need to allow for non-geometric errors when extreme accuracy is needed

.Usually, the kinematics of the manipulator are written in terms of two inputs:i) joint positions,ii) robot geometry: the base position, the link geometries and tool location on last link.

What's New about our method?

First, the measurement technique is simple and can be performed, with care, usingsimple equipment which is available anywhere.

Second, unlike nearly every other method, our kinematic modelling techniquewill represent any kind of serial manipulator arm.

Third, unlike nearly every other method, our computational method is robust, anddoes not need special consideration of redundant kinematic parameters.Our software is written in ANSI "C" for the most part, though a specialcomponent program used to visualize models and calibration results is based on our Little-XGraphical User Interface toolkit.

|Robotics and Automation Lab| School of Mechanical Engineering| UWA Home Page|