Practical Navigation of a Mecanum-Wheel Robot on High-Friction Carpet
Motor Deadzone Compensation, Rotation Asymmetry, and Multi-Phase Goal Management
DOI:
https://doi.org/10.31224/7347Keywords:
Mecanum Wheel, carpet friction, motor deadzone, rotation asymmetry, ROS2, Nav2, Sensor Fusion, Extended Kalman Filter, AMCL, omnidirectional robot, indoor navigation, proportional scaling, doorway transitAbstract
Mecanum-wheel robots offer omnidirectional mobility for indoor navigation, but their performance degrades severely on high-friction carpeted surfaces. This paper presents three software-based solutions to carpet-induced navigation failures, developed and validated on a physical robot platform (Yahboom ROSMASTER X3, ROS 2 Jazzy, RPLIDAR A1, Intel RealSense D435). First, a proportional deadzone compensation algorithm uniformly scales motor commands to preserve the velocity direction vector while overcoming carpet static friction thresholds. Empirical characterization reveals a binary deadzone at PWM 30–35 on loop-pile carpet versus PWM 15–20 on hard floor—a 75% wider deadzone that standard navigation stacks cannot detect. Second, rotation asymmetry testing across two wheel configurations (80 mm plastic and 100 mm TPU rubber) demonstrates that carpet fiber grain creates direction-dependent friction that varies with roller material: 80 mm plastic wheels exhibit consistent counterclockwise-only success (mean 180° vs. 22° CW in 10 s), while 100 mm TPU wheels show reduced but unpredictable asymmetry. Third, a multi-phase goal management architecture (Goal Manager V4) decomposes navigation into separate rotation, translation, and doorway transit phases with IMU-based stall detection and kickstart recovery, maintaining full compatibility with the standard ROS 2 Nav2 stack. Experimental testing across five navigation trials achieves 100% success on a 14 m bedroom- to-kitchen route including autonomous doorway transit, where standard Nav2 alone fails. All solutions are implemented as standalone ROS 2 nodes requiring no modification to the Nav2 framework. The source code is publicly available at https://github.com/akkexd/ ros2-mecanum-robot.
Downloads
Downloads
Posted
License
Copyright (c) 2026 Aung Khant Ko

This work is licensed under a Creative Commons Attribution 4.0 International License.