A High-Precision Odometry Calibration Method for Mecanum-Wheeled Mobile Robots Based on ZUPT and Closed-Loop Pose Estimation
TL;DR
This study presents a two-level closed-loop calibration framework that combines L2-norm displacement feedback, normalized angular increment integration, relay control with a tolerance deadband, and zero-velocity-based adaptive covariance switching that can reduce both motion-dependent odometry scale errors and stationary pose drift under the tested surface conditions.
Abstract
Highlights What are the main findings? This study presents a two-level closed-loop calibration framework that combines L2-norm displacement feedback, normalized angular increment integration, relay control with a tolerance deadband, and zero-velocity-based adaptive covariance switching. Across the three tested surfaces, the mean absolute longitudinal odometry error was reduced from 53.18 mm to 9.69 mm. For rotational calibration, the Error Reduction Rate ranged from 59.13% to 96.58%. The adaptive covariance method was also evaluated with EKF, UKF, RCKF, and a graph-based SLAM optimization framework implemented by slam_toolbox. Across the evaluated back-ends, it reduced the positional RMSE relative to /odom, with reduction rates ranging from 19.38% to 67.44%. What are the implications of the main findings? By correcting scale errors during motion and limiting pose drift when the robot is stationary, the proposed method improves the quality of the odometry input used by different pose estimation back-ends. It does not require an additional zero-velocity pseudo-measurement node and allows the calibration parameters to be updated online through ROS 2. These features make the framework suitable for stop-and-go warehouse transport and mobile manipulation tasks performed on approximately level surfaces. Abstract A two-level closed-loop calibration framework is proposed to reduce odometry scale errors during motion and pose drift during stationary periods in Mecanum-wheeled mobile robots. At the upper calibration level, the planar displacement between the initial and final poses is calculated using the L2-norm, which reduces the influence of lateral deviation on distance measurements based on a single coordinate axis. Rotational displacement is obtained by accumulating normalized angular increments, thereby avoiding discontinuities when the yaw angle crosses the ±π boundary. A relay controller with a tolerance deadband is also introduced to reduce static-friction-induced stalling and oscillation near the target during low-speed calibration. At the lower odometry interface, the covariance assigned to wheel odometry measurements is adjusted according to the commanded zero-velocity state. During stationary periods, this adjustment increases the contribution of near-zero velocity measurements and limits the effect of residual velocity estimates and sensor noise on the fused pose. The identified longitudinal and rotational compensation factors are then updated online in the dead-reckoning node through an ROS 2 service. Unlike conventional ZUPT implementations, the proposed method does not require an additional zero-velocity pseudo-measurement node. Experiments were conducted on three near-horizontal surfaces: ceramic tile, epoxy resin, and asphalt. Across 720 bidirectional in-place rotation trials, the angular Error Reduction Rate ranged from (59.13%) to (96.58%). In 540 straight-line trials covering nine combinations of surface type and target distance, the overall mean absolute error decreased from 53.22 mm before calibration to 9.69 mm after calibration. Intermittent stop-and-go experiments were further performed using the EKF, UKF, RCKF, and a graph-based SLAM optimization framework implemented by slam_toolbox. For each estimation back-end, the estimated trajectory was evaluated by calculating its deviation from the corresponding synchronized /odom trajectory under the fixed-covariance and proposed ZUPT-based adaptive-covariance configurations; /odom was used as a common comparison baseline rather than as an absolute localization ground truth. The adaptive covariance strategy reduced the positional RMSE by (19.38%–67.44%) across the evaluated filtering back-ends. These results show that the proposed framework can reduce both motion-dependent odometry scale errors and stationary pose drift under the tested surface conditions.