# Non-Parametric Calibration of the Inverse Kinematic Matrix of a Three-Wheeled Omnidirectional Mobile Robot Based on Genetic Algorithms

^{*}

## Abstract

**:**

## Featured Application

**Odometry calibration of a three-wheeled omnidirectional mobile robot.**

## Abstract

## 1. Introduction

#### New Contribution

## 2. Materials and Methods

#### 2.1. APR-02 Three-Wheeled Omnidirectional Mobile Robot

#### 2.2. Odometry Estimation

#### 2.3. Calibration Trajectories

#### 2.4. Dataset of Training and Validation Trajectories

## 3. Procedure for Genetic Algorithm Calibration of the Inverse Kinematic Matrix

^{−6}, which is the default value used in standard GA searches.

## 4. Results

#### 4.1. Reference Theoretical Value of the Inverse Kinematic Matrix

#### 4.2. Reference Parametric Optimization of the Inverse Kinematic Matrix (from [17])

#### 4.3. Non-Parametic Inverse Kinematic Matrix Calibrated with Genetic Algorithms

^{−17}. Alternatively, the result of the parametric calibration performed in [17] (displayed in Equation (8)) showed ${\mathrm{m}}_{1,2}$ to reach the value of $-0.00056$, which is very difficult to interpret as a parametric inaccuracy originated during the assembling the robot. The differences between the parametric and non-parametric calibration of the inverse kinematic matrices are small but cannot be neglected because the odometry is cumulatively updated ten times per second with the displacement information provided by the encoders.

## 5. Discussion and Conclusions

## Author Contributions

## Funding

## Conflicts of Interest

## References

- Borenstein, J.; Feng, L. Measurement and correction of systematic odometry errors in mobile robots. IEEE Trans. Robot. Autom.
**1996**, 12, 869–880. [Google Scholar] [CrossRef] [Green Version] - Štefek, A.; Pham, V.T.; Krivanek, V.; Pham, K.L. Optimization of Fuzzy Logic Controller Used for a Differential Drive Wheeled Mobile Robot. Appl. Sci.
**2021**, 11, 6023. [Google Scholar] [CrossRef] - Ding, T.; Zhang, Y.; Ma, G.; Cao, Z.; Zhao, X.; Tao, B. Trajectory tracking of redundantly actuated mobile robot by MPC velocity control under steering strategy constraint. Mechatronics
**2022**, 84, 102779. [Google Scholar] [CrossRef] - Thai, N.H.; Ly, T.T.K.; Dzung, L.Q. Trajectory tracking control for differential-drive mobile robot by a variable parameter PID controller. Int. J. Mech. Eng. Robot. Res.
**2022**, 11. [Google Scholar] [CrossRef] - de Jesús Rubio, J.; Aquino, V.; Figueroa, M. Inverse kinematics of a mobile robot. Neural Comput. Appl.
**2013**, 23, 187–194. [Google Scholar] [CrossRef] - Sousa, R.B.; Petry, M.R.; Moreira, A.P. Evolution of Odometry Calibration Methods for Ground Mobile Robots. In Proceedings of the IEEE International Conference on Autonomous Robot Systems and Competitions (ICARSC), Ponta Delgada, Portugal, 15–17 April 2020; pp. 294–299. [Google Scholar] [CrossRef]
- Hijikata, M.; Miyagusuku, R.; Ozaki, K. Wheel Arrangement of Four Omni Wheel Mobile Robot for Compactness. Appl. Sci.
**2022**, 12, 5798. [Google Scholar] [CrossRef] - Maddahi, Y.; Maddahi, A.; Sepehri, N. Calibration of omnidirectional wheeled mobile robots: Method and experiments. Robotica
**2013**, 31, 969–980. [Google Scholar] [CrossRef] - Lin, P.; Liu, D.; Yang, D.; Zou, Q.; Du, Y.; Cong, M. Calibration for Odometry of Omnidirectional Mobile Robots Based on Kinematic Correction. In Proceedings of the 14th International Conference on Computer Science & Education (ICCSE), Toronto, ON, Canada, 19–21 August 2019; pp. 139–144. [Google Scholar] [CrossRef]
- Maulana, E.; Muslim, M.A.; Hendrayawan, V. Inverse kinematic implementation of four-wheels mecanum drive mobile robot using stepper motors. In Proceedings of the 2015 International Seminar on Intelligent Technology and Its Applications (ISITIA), Surabaya, Indonesia, 20–21 May 2015; pp. 51–56. [Google Scholar] [CrossRef]
- Jia, Q.; Wang, M.; Liu, S.; Ge, J.; Gu, C. Research and development of mecanum-wheeled omnidirectional mobile robot implemented by multiple control methods. In Proceedings of the 2016 23rd International Conference on Mechatronics and Machine Vision in Practice (M2VIP), Nanjing, China, 28–30 November 2016; pp. 1–4. [Google Scholar] [CrossRef]
- Xu, H.; Yu, D.; Wang, Q.; Qi, P.; Lu, G. Current Research Status of Omnidirectional Mobile Robots with Four Mecanum Wheels Tracking based on Sliding Mode Control. In Proceedings of the 2019 IEEE International Conference on Unmanned Systems and Artificial Intelligence (ICUSAI), Xi’an, China, 22–24 November 2019; pp. 13–18. [Google Scholar] [CrossRef]
- Li, Y.; Ge, S.; Dai, S.; Zhao, L.; Yan, X.; Zheng, Y.; Shi, Y. Kinematic Modeling of a Combined System of Multiple Mecanum-Wheeled Robots with Velocity Compensation. Sensors
**2020**, 20, 75. [Google Scholar] [CrossRef] [Green Version] - Savaee, E.; Hanzaki, A.R. A New Algorithm for Calibration of an Omni-Directional Wheeled Mobile Robot Based on Effective Kinematic Parameters Estimation. J. Intell. Robot. Syst.
**2021**, 101, 28. [Google Scholar] [CrossRef] - Bożek, A. Discovering Stick-Slip-Resistant Servo Control Algorithm Using Genetic Programming. Sensors
**2022**, 22, 383. [Google Scholar] [CrossRef] - Prados Sesmero, C.; Buonocore, L.R.; Di Castro, M. Omnidirectional Robotic Platform for Surveillance of Particle Accelerator Environments with Limited Space Areas. Appl. Sci.
**2021**, 11, 6631. [Google Scholar] [CrossRef] - Palacín, J.; Rubies, E.; Clotet, E. Systematic Odometry Error Evaluation and Correction in a Human-Sized Three-Wheeled Omnidirectional Mobile Robot Using Flower-Shaped Calibration Trajectories. Appl. Sci.
**2022**, 12, 2606. [Google Scholar] [CrossRef] - Sharma, H.P.; Pant, M.; Agarwal, R.; Karatangi, S.V. Self-directed Robot for Car Driving Using Genetic Algorithm. In Technology Innovation in Mechanical Engineering. Lecture Notes in Mechanical Engineering; Chaurasiya, P.K., Singh, A., Verma, T.N., Rajak, U., Eds.; Springer: Singapore, 2022. [Google Scholar] [CrossRef]
- Tagliani, F.L.; Pellegrini, N.; Aggogeri, F. Machine Learning Sequential Methodology for Robot Inverse Kinematic Modelling. Appl. Sci.
**2022**, 12, 9417. [Google Scholar] [CrossRef] - Zhu, Z.; Liu, Y.; He, Y.; Wu, W.; Wang, H.; Huang, C.; Ye, B. Fuzzy PID Control of the Three-Degree-of-Freedom Parallel Mechanism Based on Genetic Algorithm. Appl. Sci.
**2022**, 12, 11128. [Google Scholar] [CrossRef] - Cardoza Plata, J.E.; Olguín Carbajal, M.; Herrera Lozada, J.C.; Sandoval Gutierrez, J.; Rivera Zarate, I.; Serrano Talamantes, J.F. Simulation and Implementation of a Mobile Robot Trajectory Planning Solution by Using a Genetic Micro-Algorithm. Appl. Sci.
**2022**, 12, 11284. [Google Scholar] [CrossRef] - Rahmaniar, W.; Rakhmania, A. Mobile Robot Path Planning in a Trajectory with Multiple Obstacles Using Genetic Algorithms. J. Robot. Control.
**2021**, 3, 1–7. [Google Scholar] [CrossRef] - Batlle, J.A.; Font-Llagunes, J.M.; Barjau, A. Calibration for mobile robots with an invariant Jacobian, Robot. Auton. Syst.
**2010**, 58, 10–15. [Google Scholar] [CrossRef] - Clotet, E.; Martínez, D.; Moreno, J.; Tresanchez, M.; Palacín, J. Assistant Personal Robot (APR): Conception and Application of a Tele-Operated Assisted Living Robot. Sensors
**2016**, 16, 610. [Google Scholar] [CrossRef] [Green Version] - Palacín, J.; Clotet, E.; Martínez, D.; Martínez, D.; Moreno, J. Extending the Application of an Assistant Personal Robot as a Walk-Helper Tool. Robotics
**2019**, 8, 27. [Google Scholar] [CrossRef] [Green Version] - Palacín, J.; Martínez, D.; Clotet, E.; Pallejà, T.; Burgués, J.; Fonollosa, J.; Pardo, A.; Marco, S. Application of an Array of Metal-Oxide Semiconductor Gas Sensors in an Assistant Personal Robot for Early Gas Leak Detection. Sensors
**2019**, 19, 1957. [Google Scholar] [CrossRef] [Green Version] - Penteridis, L.; D’Onofrio, G.; Sancarlo, D.; Giuliani, F.; Ricciardi, F.; Cavallo, F.; Greco, A.; Trochidis, I.; Gkiokas, A. Robotic and Sensor Technologies for Mobility in Older People. Rejuvenation Res.
**2017**, 20, 401–410. [Google Scholar] [CrossRef] [PubMed] [Green Version] - Palacín, J.; Martínez, D.; Rubies, E.; Clotet, E. Suboptimal Omnidirectional Wheel Design and Implementation. Sensors
**2021**, 21, 865. [Google Scholar] [CrossRef] - Bitriá, R.; Palacín, J. Optimal PID Control of a Brushed DC Motor with an Embedded Low-Cost Magnetic Quadrature Encoder for Improved Step Overshoot and Undershoot Responses in a Mobile Robot Application. Sensors
**2022**, 22, 7817. [Google Scholar] [CrossRef] - Palacín, J.; Rubies, E.; Clotet, E.; Martínez, D. Evaluation of the Path-Tracking Accuracy of a Three-Wheeled Omnidirectional Mobile Robot Designed as a Personal Assistant. Sensors
**2021**, 21, 7216. [Google Scholar] [CrossRef] - Lluvia, I.; Lazkano, E.; Ansuategi, A. Active Mapping and Robot Exploration: A Survey. Sensors
**2021**, 21, 2445. [Google Scholar] [CrossRef] [PubMed] - Palacín, J.; Martínez, D.; Rubies, E.; Clotet, E. Mobile Robot Self-Localization with 2D Push-Broom LIDAR in a 2D Map. Sensors
**2020**, 20, 2500. [Google Scholar] [CrossRef] [PubMed] - Popovici, A.-T.; Dosoftei, C.-C.; Budaciu, C. Kinematics Calibration and Validation Approach Using Indoor Positioning System for an Omnidirectional Mobile Robot. Sensors
**2022**, 22, 8590. [Google Scholar] [CrossRef] - Mora, A.; Prados, A.; Mendez, A.; Barber, R.; Garrido, S. Sensor Fusion for Social Navigation on a Mobile Robot Based on Fast Marching Square and Gaussian Mixture Model. Sensors
**2022**, 22, 8728. [Google Scholar] [CrossRef] - Fraser, A. Simulation of genetic systems by automatic digital computers. I. Introduction. Aust. J. Biol. Sci.
**1957**, 10, 484–491. [Google Scholar] [CrossRef] [Green Version] - George, P.H. Styan, Hadamard products and multivariate statistical analysis. Linear Algebra Its Appl.
**1973**, 6, 217–240. [Google Scholar] [CrossRef] [Green Version] - Boanta, C.; Brișan, C. Estimation of the Kinematics and Workspace of a Robot Using Artificial Neural Networks. Sensors
**2022**, 22, 8356. [Google Scholar] [CrossRef] [PubMed]

**Figure 1.**APR-02 mobile robot performing a transversal (or lateral) displacement: (

**a**) starting point; (

**b**,

**c**) intermediate points; and (

**d**) destination point.

**Figure 2.**Detail of the omnidirectional motion system of the APR-02 mobile robot. $\left({X}_{R},{Y}_{R}\right)$ is the mobile robot frame in which ${X}_{R}$ represents the front and forward direction of the robot.

**Figure 3.**Parametric definition of the omnidirectional motion system of the APR-02 mobile robot. $\left({X}_{R},{Y}_{R}\right)$ represents the mobile robot frame in which ${X}_{R}$ is the front of the mobile robot.

**Figure 4.**Diagram of the Genetic Algorithm search performed to calibrate the inverse kinematic matrix of the APR-02 mobile robot.

**Figure 5.**Sample trajectory followed by the APR-02 mobile robot for the motion command $\left(v,\alpha ,\omega \ne 0\right)$ = (0.2 m/s, 30°, 0.35 rad/s). The ground truth trajectory was estimated from the information of the LIDAR (red line) while the odometry was estimated with the theoretical value of the inverse kinematic matrix of the mobile robot (blue line).

**Figure 6.**Comparison between the ground truth trajectory followed by the mobile robot (red line) and the odometry estimated with: the theoretical IK (green line), the parametric IK (brown line) and the non-parametric IK (magenta line). Trajectories originated by the following motion commands, $\left(v,\alpha ,\omega \right)$: (

**a**) (0.2 m/s, 30°, 0.35 rad/s); (

**b**) (0.2 m/s, 210°, 0.35 rad/s); (

**c**) (0.2 m/s, 120°, 0.35 rad/s); and (

**d**) (0.2 m/s, 300°, 0.35 rad/s).

**Figure 7.**Detail of the final position of the robot corresponding to the full trajectories displayed in Figure 6. Ground truth trajectory of the mobile robot (red) and odometry of the mobile robot computed using the theoretical IK (green), the parametric IK [17] (brown) and the noon-parametric IK (magenta).

Parameter | Description |
---|---|

$\left(v,\alpha ,\omega ,d\right)$ | Target motion command for the robot $v$: translational velocity of the displacement of the robot, (m/s) $\alpha $: angular orientation of the displacement, (°) $\omega $: angular rotational speed of the robot during the displacement, (rad/s) $d$: linear distance to be achieved during the displacement, (m) |

$\left({\omega}_{Ma},{\omega}_{Mb},{\omega}_{Mc}\right)$ | Target angular velocities for the wheels ${\omega}_{Mi}$: target angular velocity defined for the motor of the wheel $i$, computed when receiving the motion command, (rpm) |

${\omega}_{a,b,c}=\left[\begin{array}{c}t\left(k=1\dots F\right)\\ {\omega}_{a}\left(k=1\dots F\right)\\ {\omega}_{b}\left(k=1\dots F\right)\\ {\omega}_{c}\left(k=1\dots F\right)\end{array}\right]$ | Angular velocities of the wheels provided by the encoders $t\left(k\right)$: time the update $k$ was received, (s) ${\omega}_{i}$: instantaneous angular velocity measured by the encoder of the motor $i$, updated periodically at a frame rate of 10 ms, (rpm) |

$\left(x,y,\theta \right)=\left[\begin{array}{c}x\left(k=1\dots F\right)\\ y\left(k=1\dots F\right)\\ \theta \left(k=1\dots F\right)\end{array}\right]$ | Trajectory of the mobile robot estimated with the odometry $x,y$: location of the robot, (m) $\theta $: angular orientation of the robot, (°) |

$LIDAR=\left[\begin{array}{ccc}{t}_{LIDAR}\left(p=1\right)& & {t}_{LIDAR}\left(p=N\right)\\ {\left[\begin{array}{c}d\left(1\right)\\ \dots \\ d\left(1080\right)\end{array}\right]}^{1}& \dots & {\left[\begin{array}{c}d\left(1\right)\\ \dots \\ d\left(1080\right)\end{array}\right]}^{N}\end{array}\right]$ | Scans provided by the onboard LIDAR ${t}_{LIDAR}\left(p\right)$: time the scan $p$ was received, (s) $d\left(r\right)$: distance scan corresponding to the angular orientation $r$, updated periodically at a frame rate from 200 to 300 ms, (mm) |

${\left(x,y,\theta \right)}_{LIDAR}=\left[\begin{array}{c}{x}_{LIDAR}\left(p=1\dots N\right)\\ {y}_{LIDAR}\left(p=1\dots N\right)\\ {\theta}_{LIDAR}\left(p=1\dots N\right)\end{array}\right]$ | Ground Truth trajectory of the mobile robot estimated with SLAM ${x}_{LIDAR},{y}_{LIDAR}$: location of the robot, (m) ${\theta}_{LIDAR}$: angular orientation of the robot, (°) |

**Table 2.**Values of the cost function obtained when computing the odometry of the 180 trajectories included in the training dataset with the theoretical and calibrated inverse kinematic matrices.

${\mathit{M}}^{-1}$ | $\mathit{C}{\mathit{F}}_{\mathit{T}\mathit{h}\mathit{e}\mathit{o}\mathit{r}\mathit{e}\mathit{t}\mathit{i}\mathit{c}\mathit{a}\mathit{l}\mathit{I}\mathit{K}}$ | $\mathit{C}{\mathit{F}}_{\mathit{T}\mathit{R}\mathit{A}\mathit{I}\mathit{N}\mathit{I}\mathit{N}\mathit{G}}$ | Improvement |
---|---|---|---|

Theoretical IK | 0.1234 | - | - |

Parametric IK [17] | 0.1234 | 0.0215 | 82.61% |

Non-parametric IK * | 0.1234 | 0.0215 * | 82.60% * |

**Table 3.**Values of the cost function obtained when computing the odometry of the 180 trajectories included in the validation dataset with the theoretical and calibrated inverse kinematic matrices.

${\mathit{M}}^{-1}$ | $\mathit{C}{\mathit{F}}_{\mathit{T}\mathit{h}\mathit{e}\mathit{o}\mathit{r}\mathit{e}\mathit{t}\mathit{i}\mathit{c}\mathit{a}\mathit{l}\mathit{I}\mathit{K}}$ | $\mathit{C}{\mathit{F}}_{\mathit{V}\mathit{A}\mathit{L}\mathit{I}\mathit{D}\mathit{A}\mathit{T}\mathit{I}\mathit{O}\mathit{N}}$ | Improvement |
---|---|---|---|

Theoretical IK | 0.1251 | - | - |

Parametric IK [17] | 0.1251 | 0.0229 | 81.68% |

Non-parametric IK * | 0.1251 | 0.0227 * | 81.81% * |

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |

© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Palacín, J.; Rubies, E.; Bitrià, R.; Clotet, E.
Non-Parametric Calibration of the Inverse Kinematic Matrix of a Three-Wheeled Omnidirectional Mobile Robot Based on Genetic Algorithms. *Appl. Sci.* **2023**, *13*, 1053.
https://doi.org/10.3390/app13021053

**AMA Style**

Palacín J, Rubies E, Bitrià R, Clotet E.
Non-Parametric Calibration of the Inverse Kinematic Matrix of a Three-Wheeled Omnidirectional Mobile Robot Based on Genetic Algorithms. *Applied Sciences*. 2023; 13(2):1053.
https://doi.org/10.3390/app13021053

**Chicago/Turabian Style**

Palacín, Jordi, Elena Rubies, Ricard Bitrià, and Eduard Clotet.
2023. "Non-Parametric Calibration of the Inverse Kinematic Matrix of a Three-Wheeled Omnidirectional Mobile Robot Based on Genetic Algorithms" *Applied Sciences* 13, no. 2: 1053.
https://doi.org/10.3390/app13021053