Universal Trajectory Optimization Framework for Differential Drive Robot Class

Various differential-drive (DD) robots, kinematics models and planning results. (a) Two-wheeled differential-drive (SDD) robot. (b) Skid-steering (SKDD) robot. (c) Tracked (TDD) robot.

The optimized trajectory and the simulated execution results for two types of robots in narrow environments. The robots should map online to perceive the environment and replan to avoid obstacles. To verify the performance of the planner, a specifically designed map requires the robot to execute rotations or reversals at both the start and end points. In the upper right corner, from left to right, snapshots showcase the motion and mapping of the TDD robot, which moves with lateral slip. In the lower left corner, from right to left, is the SDD robot, which does not exist lateral slip.

Abstract

Differential drive robots are widely used in various scenarios thanks to their straightforward principle, from household service robots to disaster response field robots. There are several types of driving mechanisms for real-world applications, including two-wheeled, four-wheeled skid-steering, tracked robots, and so on. The differences in the driving mechanisms usually require specific kinematic modeling when precise control is desired. Furthermore, the nonholonomic dynamics and possible lateral slip lead to different degrees of difficulty in getting feasible and high-quality trajectories. Therefore, a comprehensive trajectory optimization framework to compute trajectories efficiently for various kinds of differential drive robots is highly desirable. In this paper, we propose a universal trajectory optimization framework that can be applied to differential drive robots, enabling the generation of high-quality trajectories within a restricted computational timeframe. We introduce a novel trajectory representation based on polynomial parameterization of motion states or their integrals, such as angular and linear velocities, which inherently matches the robots' motion to the control principle. The trajectory optimization problem is formulated to minimize complexity while prioritizing safety and operational efficiency. We then build a full-stack autonomous planning and control system to demonstrate its feasibility and robustness. We conduct extensive simulations and real-world testing in crowded environments with three kinds of differential drive robots to validate the effectiveness of our approach.

Simulation results

Planning results without(a) and with(b) considering lateral slip. To better reflect the discrepancy between the two results, we locally enlarged the trajectory sections with large curvature.

Visual comparison of different methods. Proposed method and TEB are set to allow move backward. We use Jump Point Search (JPS) as initial value, Differential-flatness Based Method, Timed Elastic Band (TEB) as benchmark.

Patrolling with DFB and Proposed methods, the next target is provided to the planner upon nearing the current target. ① is the starting position, with the initial state directed towards the positive right-hand side. We use the gradient color to show the angular velocity in ②-④. The robot moves around the obstacle in ②. In ③ and ④, a new target is provided to the planner, prompting the robot to turn towards the new target.
Simulation results for replanning. We use 360° radar simulator to create maps during runtime. The upper figure shows the simulation results of the U-shaped environment. The lower figure shows a specially designed environment containing many obstacles that may be sheltered.

Experiments

Two-wheel differential drive robot

TRACER MINI is employed as our two-wheel differential drive robot platform, which is controlled through linear and angular velocity. Map is pre-built and the motion capture system is utilized for localization.

Skid-steering robot

SCOUT MINI is employed as our skid-steering robot platform, which is controlled via linear and angular velocity. We randomly place obstacles and use fastlio for localization, simulating the real-world application.

Online mapping and re-planning
Update the known map.

All examples are Online mapping and re-planning

Tracked robot

All examples are Online mapping and re-planning