Trajectory Tracking of an Omni-Directional Wheeled Mobile Robot Using a Model Predictive Control Strategy

This paper addresses trajectory tracking of an omni-directional mobile robot (OMR) with three mecanum wheels and a fully symmetrical configuration. The omni-directional wheeled robot outperforms the non-holonomic wheeled robot due to its ability to rotate and translate independently and simultaneously. A kinematics model of the OMR is established and a model predictive control (MPC) algorithm with control and system constraints is designed to achieve point stabilization and trajectory tracking. Simulation results validate the accuracy of the established kinematics model and the effectiveness of the proposed MPC controller.


Introduction
Industrial automation is a prerequisite for intelligent manufacturing, and mobile robots represent a core component of industrial automation systems.In recent decades, due to the broad applications for mobile robots, the core issues in motion control of mobile robots, including point stabilization, path planning, trajectory tracking, and real-time avoidance, have attracted considerable attention from both academic scholars and practitioners [1][2][3][4][5].
Although large numbers of mobile robots have begun to enter homes, hospitals, and many other industrial areas, mobile robots with new structures (as opposed to the traditional dual-drive wheeled mobile robots), are required to meet continuously increasing demands with respect to high flexibility, efficiency, and safety of complex and diverse applications in reality.Omni-directional mobile robots (OMRs) with mecanum wheels provide an alternative and have drawn much attention from researchers.In [6,7], two different omni-directional mobile structures with mecanum wheels were proposed.In [7,8], the kinematics of OMRs were analyzed and the motion control of robots was achieved.In [9], a comprehensive omni-directional soccer player robot with no head direction was proposed and it was capable of more sophisticated behaviors, such as ball passing and goal keeping.Compared with the traditional nonholonomic dual-drive wheeled robot, the omni-directional mobile robot is able to synchronize steering and linear motion in any direction.This advantage not only improves the flexibility of the robot greatly in order to achieve fast target tracking and obstacle avoidance, but also provides more references for robot motion control methods.
Motion control is a core issue in the mobile robot system and guarantees the smooth movement of the robot.Due to the diversity of motion and increasing performance requirements, motion control algorithms are becoming more and more complex.In [10], a receding horizon (RH) controller was developed for the tracking control of a nonholonomic mobile robot.In [11], a novel biologically inspired tracking control approach for real-time navigation of a nonholonomic mobile robot was proposed by integrating a backstepping technique and a neurodynamics model.In [12], an approach was proposed for complete characterization of the shortest paths to a goal position and it was used for path planning of the robot.A novel method referred to as the visibility binary tree algorithm for robot navigation with global information was introduced in [13].The set of all complete paths between the robot and target in the global environment with some circle obstacles was obtained by using the tangent visibility graph.Then, an algorithm based on the visibility binary tree created for the shortest paths was run to obtain the optimal path for the robot.In [14], a real-time obstacle avoidance approach for mobile robots was presented based on the artificial potential field concept.The motion control of omni-directional mobile robot has also been investigated and many results have been reported [15][16][17][18].Among them, the model predictive control (MPC) algorithm is the most common control method used for trajectory tracking of the OMR.
The MPC algorithm is an efficient predictive control technique and is composed of model prediction, rolling optimization, and feedback correction.The MPC algorithm has been widely used in industrial control applications and is able to take various constraints into consideration.The core of MPC control problem finding the optimal solution of a cost function constructed according to the error between system output at the sampling time and the predicted output of the established prediction system model.The optimal solution is taken as the optimal control input in the future prediction time domain and the first control vector of the optimal solution is used as the real control input.The advantages of the MPC algorithm are: (1) It is easy to model; (2) It has a rolling optimization strategy with good dynamic control effect; (3) It can correct the output by feedback which improves the robustness of the control system; (4) As a computer optimization control algorithm, it is easy to realize on a computer.In recent years, the MPC algorithm has also been widely used to achieve optimized motion control of mobile robots.In [19], a novel visual servo-based model predictive control method was proposed to steer a wheeled mobile robot moving in a polar coordinate.In [20], a model-predictive trajectory-tracking controller, which used linearized tracking-error dynamics to predict future system behavior, was presented.In [21], a state feedback MPC method was proposed and applied for trajectory tracking of a three-wheeled OMR.The cost function in the proposed MPC method is constructed over finite horizon and is optimized in the linear matrix inequalities (LMI) framework.In [22], a virtual-vehicle concept and an MPC strategy were combined to handle robot motion constraints and the path-following problem.
In this paper, the kinematic analysis of the OMR is conducted and then an MPC algorithm for point stabilization and trajectory tracking is proposed.In the proposed MPC controller, the rotation speeds of the three wheels and the state outputs of the robot are taken as manipulated variables and controlled variables, respectively.In stabilization control of the robot, a target point and an arbitrary initial direction, which lie within a given constraint range of the coordinate, are set and then the robot tracks the target point and stabilizes itself automatically.In the trajectory tracking of the robot, a pulsed route is planned and different target angles at each node point are set.The robot can move from the start point of the trajectory to the end point along the given route with target angles.This paper is organized as follows: A brief description and kinematics analysis of the considered OMR are given in Section 2. Section 3 presents the MPC strategy including MPC elements and the optimization method.Simulation results of the proposed MPC algorithm are presented in Section 4. Finally, Section 5 concludes the work in this paper.

Omni-Directional Mobile Structure
The concept of the mecanum wheel was proposed by a Swedish mecanum company.The mecanum wheel is mainly composed of a motor-controlled wheel hub and some passive rollers, which are evenly distributed at a certain angle along the outer edge of the wheel.
The mecanum wheels used in this paper are light-load 90 • omni-directional CL-10 wheels produced by Chengdu Hangfa Hydraulic Engineering Co., Ltd.(Chengdu, China).As shown in Figure 1, the outer diameter of the mecanum wheel is 101.6 mm and it has 16 rollers distributed in both of outer sides.The rollers can rotate in a perpendicular direction to the hub rotation and the envelopes on the outside of these rollers form a cylindrical surface, which enables smooth movement of the wheel.Each roller is equipped with two nylon sliding bearings, which gives the wheels good wear resistance and flexibility.Each wheel can withstand loads of up to 50 kg.Therefore, this series of mecanum wheels is a good choice for lightly-loaded omni-directional wheeled mobile platforms.As shown in the bottom view of the OMR in Figure 2b, the platform is equipped with three motors and each motor is used to control one mecanum wheel.The axes of these three motors join at the center of the chassis and the angles between the neighboring two motors are the same.In Figure 2a,c, the front view and the overall model of the platform diagram are shown, respectively.Based on the characteristics of mecanum wheel and the analysis of system model, the platform can conduct omnidirectional motion with the advantages of strong adaptability, high sensitivity, good stability, and flexible rotation.

Kinematics Model
For the OMR, each wheel has two position parameters: the position relative to the center of the platform, and the respective attitude angle.The coordinates of the mecanum wheel are shown in Figure 3.In this figure, xoy is the coordinate frame attached to the center of the platform, x o y is a coordinate frame attached to the axis center of one mecanum wheel, i represents the order of the mecanum wheel, α i is the deflection angle of each roller, β i is the angle between lines oo , and ox, l ix , l iy , θ i are the wheel's location and pose, respectively, in the coordinate xoy.l ix and l iy can be expressed as The structure of mecanum wheel is shown in Figure 4.In this figure, r denotes radius of the mecanum wheel, V ir denotes velocity vector of the roller center, and ω i denotes rotation velocity of the motor.There are three speed vectors.v x v y ω T describes the center speed of the platform relative to the ground, v ix v iy ω i T presents the center speed of the mecanums wheels relative to the coordinate xoy, and v ix v iy ω i T denotes the center speed of the mecanums relative to the coordinate x o y .
The kinematic models of the OMR are described as Based on Equations ( 3) and ( 4) , the inverse kinematics equation of the system can be obtained as and det (K i2 K i1 ) = 0. Assuming that then, the inverse kinematics equation of each mecanum wheel is derived as where the rotating speed of mecanum wheels is expressed as Based on the relationship v = rω, Equation ( 7) can be transformed into Actually, the Cartesian motion control problems are the main issues in the research on mobile robots.The state of the OMR in Cartesian coordinate x c o c y c is denoted as (x c , y c , θ c ) and is shown in Figure 5.According to Figure 5, it is derived that Assuming that the inverse kinematics equation of the OMR in Cartesian coordinate can be transformed into The Jacobian matrix of the inverse kinematics equation of the OMR is Actually, the Jacobi matrix of the inverse kinematics equation determines the OMR's omnidirectionality.If the Jacobi matrix is in the state of dissatisfied rank, there are some nonholonomic constraints in the structure and the degree of freedom movement is reduced, which means that the system cannot achieve all-round movement [23].It can be derived that the necessary condition to achieve the all-round movement of OMR is rank (R) = 3.
Through tests, the parameters of the OMR are obtained.They are shown in Figure 6 and Table 1.Table 1.The parameters of system structure.

MPC Strategy
The MPC algorithm has been widely used in motion control of mobile robots and it has three basic characteristics: model prediction, rolling optimization, and feedback correction.It has unique advantages for solving motion control problems, such as point stabilization and trajectory tracking of mobile robots.Traditional methods often neglect or simplify the robot kinematics and dynamics constraints which have a significant impact on the robot's control performance.Meanwhile, the MPC algorithm takes the constraints into consideration to improve the system robustness.The existing controllers have high requirements with respect to the accuracy of the system model and tend to obtain effective control parameters based on the model and multiple experimental tests;.However, the MPC algorithm has low requirements with respect to the accuracy of the system model and can acquire the control parameters through simple experiments.Through applying the characteristics of rolling optimization and feedback correction, the influence of time-delay in the closed-loop system can be effectively reduced or even eliminated, and the motion control is optimized to achieve improved control performance.Particularly, the MPC algorithm can handle multivariate and constrained problems effectively.
The MPC problem can be described as solving the optimal solution of the cost function.At each sampling time, the outputs of the future N sampling instants are predicted according to the system model, and the cost function is constructed based on the errors between the predicted outputs and the true state outputs of the system.The optimal control inputs of the next N sampling instants are obtained by minimizing the cost function, however, only the first control vector is used as the system input.At the next sampling time, this process is repeated and rolling optimization is performed.
In this section, an MPC-based kinematic controller is designed to ensure that the mobile robot can be driven to the desired position accurately, smoothly, and stably.
Define q = [x c y c θ c ] T as the state of mobile robot in coordinate x c o c y c and S = [S 1 S 2 S 3 ] T = R −1 .Then, it can be derived that q (t) = S (t) v (t) where Based on zero-order hold (ZOH), a continuous-time system can be transformed into a discrete-time form with a sampling period T.
The discrete-time system ( 14) can be transformed into a discrete state space system as where The parameter n is the number of state variables and m is the number of input variables.The matrix A is a constant identity matrix, and matrix B is determined by orientation of the system dynamically.
Based on the state space model (15), the MPC algorithm is designed to control the system.Here, a cost function is required and optimized through solving a quadratic program (QP) problem to obtain the optimal control sequence in predictive horizon N. The cost function for the MPC can be defined as where Q ∈ R n×n and R ∈ R m×m are appropriate weighting matrices.q(k + j|k) and u(k + j − 1|k) denote the predicted state and control vector in predictive horizon at time k.
Through solving the following finite-horizon optimal control problem online, the optimal control sequence can be obtained.
Since the torques generated by motors are limited by the performance of the motors, the u(k) has an upper and lower bound, and the range of state variable q(k) is also constrained.Thus, the following constraints should be imposed on the system: In order to solve the optimal control problem, Equation ( 17) is transformed into a standard quadratic form which a QP solver can solve.The following prediction vector is defined: Based on Equation ( 15), the relationship between vectors q(k) and ū(k) can be described as where Two block diagonal matrices are defined: Thus, the optimal control problem ( 17) can be rewritten as where ūmin and ūmax are the lower and upper bounds of the control vector in predictive horizon, respectively.qmin and qmax are the lower and upper bounds of the predictive state vector, respectively.
After some algebraic manipulations, the optimization problem ( 23) is transformed into a standard quadratic form: with where matrix W(k) denotes the quadratic part of the objective function and the vector C(k) describes the linear part.
The QP problem (26) can be solved online to obtain an optimal prediction control sequence.The first control vector of the sequence is applied to the system at time k.In the next sampling instant, this process is repeated to achieve rolling optimization.

Simulation Verification
In this section, the simulation is carried out to verify the accuracy of the derived kinematic model of the OMR and the performance of the MPC algorithm.In this simulation, the range of motion for the OMR is set to (−10 m, 10 m) and it serves as the state constraint; The rotation velocity of each mecanum wheel is set to (−2 m/s, 2 m/s), which is treated as the input constraint.Two tests, point stabilization and trajectory tracking, are performed.In the point stabilization test, the OMR moves to a target point and changes the orientation in the moving process.In the trajectory tracking test, the OMR moves along a known pulse trajectory with different target orientations at different nodes.

Point Stabilization
In this test, the goal and initial states are predefined.Here, the goal and initial position are set to (3 m, 2 m, π/3 rad) and (0 m, 0 m, 0 rad), respectively.In order to simulate the real movement of the OMR, the noise is added to the output state.
In each prediction period, a control matrix ū is obtained through solving the QP problem (26).The ū is the velocity input sequence to control the movement of the OMR.Actually, only the first control vector in u (j) is used as the effective velocity input.The velocity input throughout the whole motion process is shown in Figure 7.In this figure, there are two red dotted horizontal lines, which present the velocity constraints.It can be seen from this figure, with the application of MPC algorithm, that the control velocities of three wheels converge to zero gradually and smoothly.Meanwhile, velocity u 3 is affected by the maximum control input constraint at the beginning.The state trajectories of the OMR in Cartesian coordinates are shown in Figure 8. Two position parameters, x c and y c , are given in the upper subfigure of Figure 8.The initial position of (x c , y c ) is set to (0 m, 0 m) and the target position is set to (3 m, 2 m).The orientation angle θ c of the OMR in the moving process is presented in the lower subfigure of Figure 8.The initial orientation angle is 0 rad and the target orientation angle is set to π/3 rad.As shown in Figure 8, the MPC controller can steer the OMR to the target quickly and steadily.The coordinates, (x c , y c ), of the OMR in moving process are shown in Figure 9.It can be seen from this figure that the movement trajectory is very close to the target trajectory.The tracking error between the movement trajectory and the target trajectory is shown in Figure 10.The maximal tracking error is about 4 cm.From Figures 8 and 10, it can be seen that the OMR moves along the predefined target trajectory to the target point, which demonstrates the effectiveness of the developed MPC algorithm.

Trajectory Tracking
In this test, the trajectory tracking of the OMR along a pulse trajectory is conducted to evaluate the performance of the proposed MPC strategy.The node parameters of the trajectory are shown in Table 2.There are six nodes, including the starting point and end point, in the pulse trajectory.The trajectory tracking is achieved by tracking each node according to the position and target direction given in Table 2.In order to simulate the real state of the OMR, the noise is added to the output state.
The linear velocity and angular velocity curves of the OMR in the trajectory-tracking process are shown in Figure 11.It can be seen from this figure that at each node, the axis component of linear velocity fluctuates due to steering action, but converges to zero soon.The comparisons of true and tracked trajectory and direction are shown in Figures 12 and 13, respectively.As shown in these figures, the position and angle of the OMR change at the same time and the angle reaches the target faster than the position.The trajectory tracking error is presented in Figure 14.The maximal tracking error of the OMR is about 0.08 m.The omni-directivity and flexibility of the kinematic structure of the OMR are verified through these two tests.The OMR can achieve movement of any direction without turning, which solves the problem that nonholonomic wheeled mobile robots are not flexible in real-time avoidance.In addition, the results of the first test show that the MPC algorithm can be applied in stabilization control of the robot and the target position and angle can be reached quickly and steadily.

Conclusions
This paper considers the trajectory tracking of an omni-directional mobile robot with three fully symmetric distribution mecanum wheels.The kinematic analysis of the OMR is conducted and the kinematic model is established.An MPC-based target-tracking motion controller with input and output state constraints is designed and guarantees the optimal solution is effective for the OMR.In addition, the advantages of the omni-directional structure compared with the traditional dual-wheeled structure with nonholonomic constraints are also discussed.The effectiveness of point stabilization and trajectory tracking of the OMR by using the designed MPC controller is demonstrated through two tests.

Figure 1 .
Figure 1.The structure of the mecanum wheel.

Figure 3 .
Figure 3.The wheel location and pose in the platform center.

Figure 4 .
Figure 4.The wheel location and pose in the platform center.

Figure 5 .
Figure 5.The state of the OMR in Cartesian coordinates.

Figure 6 .
Figure 6.Three-wheeled structure layout of the platform.

Figure 8 .
Figure 8.The state trajectories of the OMR in Cartesian coordinates.

Figure 11 .
Figure 11.The line velocity and angular velocity of the OMR.

Figure 12 .Figure 13 .
Figure 12.The real trajectory of the OMR.

Figure 14 .
Figure 14.The trajectory offset of the OMR.

Table 2 .
The node parameters of the tracking trajectory.