| Literature DB >> 35336465 |
Sreekanth Kana1, Juhi Gurnani1, Vishal Ramanathan1, Sri Harsha Turlapati1, Mohammad Zaidi Ariffin1, Domenico Campolo1.
Abstract
Accurate kinematic modelling is pivotal in the safe and reliable execution of both contact and non-contact robotic applications. The kinematic models provided by robot manufacturers are valid only under ideal conditions and it is necessary to account for the manufacturing errors, particularly the joint offsets introduced during the assembling stages, which is identified as the underlying problem for position inaccuracy in more than 90% of the situations. This work was motivated by a very practical need, namely the discrepancy in terms of end-effector kinematics as computed by factory-calibrated internal controller and the nominal kinematic model as per robot datasheet. Even though the problem of robot calibration is not new, the focus is generally on the deployment of external measurement devices (for open loop calibration) or mechanical fixtures (for closed loop calibration). On the other hand, we use the factory-calibrated controller as an 'oracle' for our fast-recalibration approach. This allows extracting calibrated intrinsic parameters (e.g., link lengths) otherwise not directly available from the 'oracle', for use in ad-hoc control strategies. In this process, we minimize the kinematic mismatch between the ideal and the factory-calibrated robot models for a Kinova Gen3 ultra-lightweight robot by compensating for the joint zero position error and the possible variations in the link lengths. Experimental analysis has been presented to validate the proposed method, followed by the error comparison between the calibrated and un-calibrated models over training and test sets.Entities:
Keywords: industrial robots; kinematic modelling; kinematic re-calibration; linear regression; parameter identification; positional accuracy; robot calibration
Mesh:
Year: 2022 PMID: 35336465 PMCID: PMC8952642 DOI: 10.3390/s22062295
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Brief comparison of kinematic calibration techniques.
| Paper | Type of Calibration | FK Measurement Technique (for Ground Truth) | Calibration Method | Type of Regression | Application | Final Position Error | Error Reduction % |
|---|---|---|---|---|---|---|---|
| Li et al., 2019 [ | Open-loop | Leica Geosystems Absolute Tracker (AT960) | Dual quaternion-based calibration (DQBC) algorithm based on FK obtained from DH notation and; modified DQBC | Least-squares | An error model for serial robot kinematic calibration based on dual quaternions. Used to calibrate dual arm 7-DoF SDA5F robot. | Arm1: 0.4523 mm | 86.56 |
| Wang et al., 2014 [ | Open-loop | FARO arm to measure ball target position. | Product of Exponential (POE) and adjoint transformation based FK | Least-squares | Analytical approach to determine and eliminate the redundant model parameters in serial-robot kinematic calibration based on the POE formula | Max. error | - |
| Li et al., 2016 [ | Open-loop | FARO Laser Tracker ION | Product of Exponential (POE) for FK. Algorithm based on the ACS (axis configuration space) and adjoint error mode | Least-squares | Novel kinematic calibration algorithm based on the ACS and Adjoint error model. It is computationally efficient and can easily handle additional assumptions on joint axes relations. | Mean error | - |
| Liu et al., 2018 [ | Open-loop | Leica Laser Tracker | Product of Exponential (POE) | Least-squares | Calibration of serial robot based on local POE formula for fastener hole drilling in aircraft assembly. | Mean error | - |
| Gharaaty et al., 2018 [ | Open-loop | C-Track 780 from Creaform | Dynamic pose correction with PID controller | Root Mean Square (RMS) | Online pose correction of 6 DoF industrial robots, FANUC LR Mate 200iC and FANUC M20iA, using an optical CMM system for high accuracy applications such as riveting, drilling and spot welding. | Max. error | 79.17 |
| Motta et al., 2016 [ | Open-loop | ITG ROMER | Levenberg–Marquardt algorithm to solve non-linear least squares problem | Non-linear least-squares | Calibration optimization of a 5-DoF robot for repairing the surface profiles of hydraulic turbine blades. | Max. error | - |
| Joubair et al., 2015 [ | Closed-loop | Two-in datum spheres separated by precisely known distances measured on a CMM | Mathematical optimization | RMS error minimization | Geometric Calibration of a six-axis serial industrial robot, FANUC LR Mate 200iC in a specific target workspace using distance and sphere constraints. | Mean error | 87.68 |
| Lattanzi et al., 2020 [ | Open-loop | FARO Vantage laser tracker | Levenberg-Marquardt mathematical optimization | Non-linear least squares solver | Geometric calibration of 6-axis, DENSO VS-087 and 7-DoF TIAGo robotic arms for high accuracy manufacturing task. | Mean error | - |
| Proposed Method: Fast kinematic re-calibration | Open-loop | Factory calibrated feedback from the robot controller (No additional equipment required) | Compensating for the joint and link length offsets to calibrate the ideal robot model | Least-squares | Quick kinematic re-calibration of Kinova Gen3 Ultralightweight 7-DoF robot arm by compensating for joint and link length offsets. | Mean error | 87.15 |
Figure 1Kinova Gen3 joint frames at zero configuration.
Homogeneous transformation matrices for Kinova Gen3 7DoF robot (provided by manufacturer).
| Transformation (Frame |
|
|
|---|---|---|
| Frame 1 to Base frame |
|
|
| Frame 2 to Frame 1 |
|
|
| Frame 3 to Frame 2 |
|
|
| Frame 4 to Frame 3 |
|
|
| Frame 5 to Frame 4 |
|
|
| Frame 6 to Frame 5 |
|
|
| Frame 7 to Frame 6 |
|
|
| Frame 7 to end-effector frame |
|
|
Figure 2Commanded robot joint motion to generate the training dataset. (a) Joint 1. (b) Joint 2. (c) Joint 3. (d) Joint 4. (e) Joint 5. (f) Joint 6. (g) Joint 7.
Calibration parameters for Model 1.
| Joint Frame ( | ||
|---|---|---|
| Base frame | NA | NA |
| frame 1 | 0.0044 | [0.0085, 0.0003, −0.0083] |
| frame 2 | 0.0088 | [−0.0068, 0, 0] |
| frame 3 | −0.0035 | [−0.0001, −0.0041, 0.0028] |
| frame 4 | −0.0043 | [−0.0003, 0.0015, 0] |
| frame 5 | 0.0068 | [0.0001, 0, 0] |
| frame 6 | 0.0026 | [−0.0003, −0.0001, −0.0024] |
| frame 7 | −0.0084 | [0.0009, 0, 0] |
| End-effector frame | NA | [0.0009, −0.0003, 0] |
Figure 3The plot for the resultant end-effector position error for the training set before and after calibration (top) and the motion of each of the robot joints during the training set generation (bottom).
Resultant position error before and after calibration.
| Error | Before Calibration (mm) | With Angular Offsets (mm) | % Reduction in Error with Angular Offsets | With Linear and Angular Offsets (mm) | % Reduction in Error with Angular Linear and Angular Offsets |
|---|---|---|---|---|---|
| Max error | 19.4 | 14.5 | 25.26 | 5.9 | 69.59 |
| Mean error | 9.1 ± 2.7 | 5.3 ± 3.3 | 41.76 | 0.8 ± 1.1 | 91.29 |
Figure 4Error in end-effector orientation for the training dataset before and after calibration (where and are the end-effector rotation matrices obtained using the kinematic model and the feedback respectively).
Resultant orientation error before and after calibration.
| Error | Before Calibration ( | With Angular Offsets ( | With Linear and Angular Offsets ( | % Reduction in Error | |
|---|---|---|---|---|---|
|
| Max error | 1.71 | 1.15 | 1.15 | 32.75 |
| Mean error | 0.51 ± 0.39 | 0.35 ± 0.28 | 0.35 ± 0.28 | 31.37 | |
|
| Max error | 1.94 | 1.44 | 1.44 | 25.77 |
| Mean error | 0.70 ± 0.43 | 0.39 ± 0.4 | 0.39 ± 0.4 | 44.29 | |
|
| Max error | 1.08 | 0.29 | 0.29 | 73.15 |
| Mean error | 0.15 ± 0.17 | 0.074 ± 0.075 | 0.07 ± 0.075 | 53.33 |
Figure 5Spatial data points are generated to collect test dataset. While the robot moves to each of the locations with a raster motion, the position and the orientation of the end-effector along with the joint angle are logged. (a) Top view. (b) Perspective view.
Figure 6Estimated end-effector position before and after calibration (down-sampled by 5) plotted along with the feedback positions. (a) Top view (X-Y plane). (b) side view (X-Z plane).
Figure 7Resultant end-effector position error for the test set before and after calibration.
Figure 8Error in end-effector orientation error for the test dataset before and after calibration.
Resultant position error before and after calibration.
| Error | Before Calibration (mm) | With Angular Offsets (mm) | % Error Reduction with Angular Offsets | With Linear and Angular Offsets (mm) | % Error Reduction with Linear and Angular Offsets |
|---|---|---|---|---|---|
| Max error | 14.9 | 8.2 | 44.97 | 9.1 | 38.93 |
| Mean error | 12.5 ± 1.5 | 6.4 ± 0.9 | 48.8 | 5.8 ± 1.5 | 53.6 |
Resultant orientation error before and after calibration.
| Error | Before Calibration ( | With Angular Offset ( | With Linear and Angular Offsets ( | % Reduction in the Calibration Error | |
|---|---|---|---|---|---|
|
| Max error | 1.69 | 0.69 | 0.69 | 59.17 |
| Mean error | 1.35 ± 0.11 | 0.40 ± 0.93 | 0.40 ± 0.93 | 70.30 | |
|
| Max error | 0.76 | 0.46 | 0.46 | 39.47 |
| Mean error | 0.31 ± 0.2 | 0.17 ± 0.09 | 0.17 ± 0.09 | 45.60 | |
|
| Max error | 1.31 | 0.41 | 0.41 | 68.70 |
| Mean error | 0.57 ± 0.35 | 0.22 ± 0.11 | 0.22 ± 0.11 | 61.40 |
Figure 9Test set position error along individual axes.
Figure 10For localized calibration a work volume is defined (formed by the blue lines), within which 58 spatial points (red circles) were generated. The robot moves to each of the 3D points, and the simultaneous logging of the robot position and the orientation populate the training set.
Calibration parameters for Model 2.
| Joint Frame ( | ||
|---|---|---|
| Base frame | NA | NA |
| frame 1 | 0.0048 | [0.0082, 0.0003, −0.0078] |
| frame 2 | 0.0080 | [−0.0063, −0.0029, 0] |
| frame 3 | −0.0076 | [−0.0000, 0, 0] |
| frame 4 | −0.0034 | [ 0.0000, 0, −0.0043] |
| frame 5 | 0.0110 | [0.0001, −0.0020, −0.0017] |
| frame 6 | 0.0025 | [−0.0023, −0.0000, 0] |
| frame 7 | −0.0090 | [0.0026, 0.0004, 0] |
| End-effector frame | NA | [ 0.0007, −0.0006, 0] |
Figure 11Resultant end-effector position error for the training set before and after calibration. The error corresponding to the additional training data starts at sample number 1940.
Figure 12Error in end-effector orientation error for the training dataset before and after calibration.
Resultant position error before and after calibration.
| Error | Before Calibration (mm) | With Angular Offsets (mm) | % Reduction in Error with Angular Offsets | With Linear and Angular Offsets (mm) | % Reduction in Error with Angular Linear and Angular Offsets |
|---|---|---|---|---|---|
| Max error | 19.43 | 14.27 | 26.56 | 6.04 | 68.91 |
| Mean error | 9.66 ± 2.61 | 5.80 ± 2.88 | 39.95 | 1.26 ± 1.08 | 86.96 |
Resultant orientation error before and after calibration.
| Error | Before Calibration ( | With Angular Offsets ( | With Linear and Angular Offsets ( | % Reduction in Error | |
|---|---|---|---|---|---|
|
| Max error | 1.71 | 1.16 | 1.16 | 32.16 |
| Mean error | 0.63 ± 0.41 | 0.31 ± 0.28 | 0.31 ± 0.28 | 50.79 | |
|
| Max error | 1.94 | 1.45 | 1.45 | 25.26 |
| Mean error | 0.81 ± 0.45 | 0.35 ± 0.37 | 0.35 ± 0.37 | 56.79 | |
|
| Max error | 2.16 | 0.58 | 0.58 | 73.15 |
| Mean error | 0.38 ± 0.46 | 0.09 ± 0.10 | 0.09 ± 0.10 | 76.32 |
Figure 13Spatial data points are created within the pre-defined work volume and the test data samples are collected as the robot moves to each of the locations.
Figure 14Estimated end-effector position before and after calibration (down-sampled by 10) plotted along with the feedback positions. (a) Top view (X-Y plane). (b) side view (X-Z plane).
Figure 15Resultant end-effector position error for the training set before and after calibration.
Figure 16Resultant error in end-effector orientation error for the training dataset before and after calibration.
Resultant position error before and after calibration.
| Error | Before Calibration (mm) | With Angular Offsets (mm) | % Reduction in Error with Angular Offsets | With Linear and Angular Offsets (mm) | % Reduction in Error with Angular Linear and Angular Offsets |
|---|---|---|---|---|---|
| Max error | 13.52 | 8.52 | 36.98 | 2.87 | 78.77 |
| Mean error | 11.44 ± 1.21 | 7.08 ± 0.80 | 38.11 | 1.47 ± 0.66 | 87.15 |
Resultant orientation error before and after calibration.
| Error | Before Calibration ( | With Angular Offsets ( | With Linear and Angular Offsets ( | % Reduction in Error | |
|---|---|---|---|---|---|
|
| Max error | 1.22 | 0.56 | 0.56 | 54.10 |
| Mean error | 0.83 ± 0.17 | 0.22 ± 0.13 | 0.22 ± 0.13 | 73.49 | |
|
| Max error | 1.70 | 0.31 | 0.31 | 81.76 |
| Mean error | 1.34 ± 0.28 | 0.26 ± 0.15 | 0.26 ± 0.15 | 80.60 | |
|
| Max error | 1.34 | 0.41 | 0.41 | 69.40 |
| Mean error | 0.83± 0.30 | 0.12 ± 0.10 | 0.12 ± 0.10 | 85.54 |
Figure 17Test set position error along individual axes.
Figure 18Comparison of the error along the coordinates axes for Model 1 and Model 2.