#### Abstract

This paper presents a predictive control of omnidirectional mobile robot with three independent driving wheels based on kinematic and dynamic models. Two predictive controllers are developed. The first is based on the kinematic model and the second is founded on the dynamic model. The optimal control sequence is obtained by minimizing a quadratic performance criterion. A comparison has been done between the two controllers and simulations have been done to show the effectiveness of the predictive control with the kinematic and the dynamic models.

#### 1. Introduction

In recent years, researches on mobile robots have increased significantly due to their flexible motions. With the complex environment for robots applications, higher requirements are put forward on the robots movements’ forms and movements’ abilities. Omnidirectional mobile robots compared with two-wheeled and four-wheeled mobile robots [1–7] have shown quick ability to move in any direction and to attain any orientation simultaneously in narrow workspaces, which greatly improves their adaptability and work ability. Each wheel is driven by a separate motor while wheel rolls rotate passively around their axes. Depending on combination of direction and speed of each wheel, a robot moves freely in any desired direction, without changing directions of wheels. Many researchers have investigated the modeling and control of the omnidirectional mobile robots: authors of [8] presented the concepts for a family of holonomic wheeled platforms that feature full omnidirectionality with simultaneous and independently controlled and translational capabilities. In [9], the researchers constructed a kind of omnidirectional base, derived its kinematical and dynamic models, and then presented a fuzzy controller to steer the robot. On the other hand, a mechanical design process and an independent PID wheel controllers have been introduced in [10] for the omnidirectional mobile platform, whereas in [11] a method of generating near-optimal trajectories for an omnidirectional robot is proposed; this method provided an efficient method of path planning and allowed a large number of possible scenarios to be explored in real time. Authors of [12] presented a PI feedback control method for an omnidirectional mobile platform which is equipped with three lateral orthogonal-wheel assemblies.

In the other side, there are many methods to address the optimal control law of the mobile robot. In [13], the genetic algorithm (GA) is used for autonomous robot navigation and in [14] an optimal fuzzy PID controller is proposed. The neural networks were applied to solve the path planning problem of mobile robot [15].

Trajectory tracking of mobile robots and path following are two of the major problems of motion control of autonomous vehicles as it can be seen in [16, 17]. The authors of [18] developed a process of generating near-optimal trajectories for an omnidirectional mobile robot and in [19] the point stabilization and trajectory tracking method are proposed via backstepping.

MPC (model based predictive control) techniques are nowadays pretty popular in academic as well as in industrial control engineering [20]. In the concept of mobile robotics predictive strategies to path following and trajectory tracking also appeared to be very promising.

Nevertheless, for computational reasons, MPC applications widely have been narrowed to linear models; consequently, in context of mobile robot, most model based predictive controllers utilize a linear model of robot’s kinematic to predict future system outputs [21, 22].

This work includes an omnidirectional mobile robot modeling using the kinematic and the dynamic of the robot. We develop two predictive controllers based on, respectively, the kinematic and dynamic models.

The rest of this paper is organized as follows. In Section 2, the kinematic model of the omnidirectional wheeled mobile platform is presented in Cartesian-coordinates. Section 3 presents a dynamic model of the robot with its motors’ dynamics. In Section 4, the predictive controller is applied to address the path following problem. Section 5 conducts several simulations that are used for illustration of the effectiveness of the proposed control law joined with the proposed models. Section 6 concludes the paper.

#### 2. Kinematic Model

Figure 1 depicts the symmetric structure and geometry that is used to find the kinematic model of the mobile robot, where *ϕ* denotes the vehicle orientation.

Due to structural symmetry, the vehicle has the property that the center of geometry coincides with the center of mass.

The parameter* L* is the distance from each wheel to the center of mass, and* V*_{1},* V*_{2},* V*_{3} denote the translational velocities of each wheel.

Wheels are numbered 1, 2, and 3 and are assigned clockwise with the angle between any two neighboring wheels being . In the global frame* OXY*, the robot position can be represented by (,). The orientation of the robot is denoted by . is the wheel orientation with respect to mobile robot frame. The kinematic model of the three-wheeled omnidirectional mobile robot is described in [8] and is summarized byThen we havewithThus,In general cases, is nonsingular; we can then deductAs described in the next sections, the model predictive control law is computed in discrete time. Thus a discrete-time representation of this model becomes a necessity. We consider then a sampling period and a sampling instant and by applying Euler’s approximate to the kinematic model, we obtain these formulae:We can write it in a compact form , where We consider here the time-varying trajectory tracking problem. Given the time-varying path , one defines the following tracking error vector:We associate a virtual robot having the same model as the controlled one with the desired trajectory; we then sample as* X* and we write it in When we write (9) in a compact way,

We then linearize the system model by calculating an error model with respect to a reference trajectory and we develop the kinematic model in Taylor series around the point at each sampling time* k.* The formula of Taylor series development is as follows:We obtain then the developed equations from (6) using (10):By using (11) and considering (9) in her compact form, we can find the following discrete-time system model:with being its associated error control input.

#### 3. Dynamic Model

The derivation of the dynamic model is begun by the application of Newton’s second law:where is the mass of the mobile robot, is the moment of inertia of the mobile robot, and are the Cartesian forces with respect to the world frame, and is the moment acting upon the gravity center of the mobile robot.

We have the following relation between and and and : and are detailed as follows:The derivation of (22) gives us Equation (14) needs to be transformed to the moving frame to aid the derivations. After transformation, we find the following equations [23]:where and refer to the Cartesian position with respect to the world frame in terms of the mobile robot frame.

, and are given bywith being the driving force for each wheel.

In addition, the dynamic characteristics of the driven system of each wheel are given by the following [23]:where is the viscous friction factor of the wheel, is the radius of the wheel, is the moment of inertia of the wheel around the driving shaft, is the rotational angle of the wheel, is the driving gain factor, and is the driving input torque.

The inverse kinematic equations for the mobile robot with respect to the mobile robot frame that relates with are shown as follows:We have used (22) and its derivates, we then plugged them into (21), and we solved to calculate the driving force due to each wheel. We subsequently substitute these values into (19) and then into (20). We write finally the following equations of motion. We considered here :

We have to formulate (21) in the absolute frame; we use then the relation between and .

To transform the previous equation system to a state space model, we take the following state variables:

Defining as the state variable for the robot and the manipulated variable yields to the following state equation:whereModel (25) is discretized using zero-order hold on the inputs and a suitable sampling time.

The discrete model has the following equation:

#### 4. Predictive Control

The basic idea of predictive control consists in calculating, at each sampling instant, a control sequence on a prediction horizon aimed at minimizing a quadratic cost function. The control algorithm is based on the following:(i)The use of a model to predict, on a future horizon, the output of the process(ii)Computing the control sequence which minimizes a performance criterion which involves a sequence of the predicted outputWe use the state space model to find the following relation:where varies from 0 to and is the prediction horizon.

We define the error vectors; . The objective function is formulated as follows: where and are weighting matrices for the error in the state and control variables.

##### 4.1. Predictive Control for the Kinematic Model

We first introduce these vectors:Introducing the vectors in (30) with the function (29) allows us to write the cost function:with and

We write from (11)where and are defined in (34) and (35) with being given by We then write the objective function in a quadratic form by using (31) and (32). Then we obtain (37).

is a* Hessian* matrix, and it is definite positive. It depicts the quadratic part of the objective function, and the vector which describes the linear part is* f*. We note that* d* is independent of and has no influence on solving for the optimal input; thus (37) turns to a standard expression used in QP problems and the optimization problem that would be solved at each sampling time is written as follows:where

##### 4.2. Predictive Control for the Dynamic Model

Using the vectors (30), the successive computing of the states of (27) and making the difference, respectively, between the state and the control with the desired ones yield to this formula of the state model:with

Introducing the relation of (38) in the cost function (29), the function to be minimized is then written as (37); however,* H*,* f*, and* d* have these formulae:

The resolution of (37) gives us the optimal control input.

#### 5. Simulation Results

The aims of the simulations are to examine the effectiveness and performance of the predictive controllers based on the proposed kinematic and dynamic models. We have applied the above control strategy to the omnidirectional mobile robot. It was assumed that the control sampling period is 100 ms. The physical parameters of the mobile robot are as follows:

We use the state variables at each sample time to calculate the state matrices of the robot because they change at each sample time depending on the state variables. We discretize it at each sample time; we have then an online variation of the model. We use the model predictive control to track the desired trajectory. We used here the prediction horizon and the weighting matrices and :where and are identity matrices with dimensions (3*N*, 3*N*) and (2*N*, 2*N*), respectively.

The translational velocity of the robot in the absolute coordinate system is and the azimuth of the robot in the absolute coordinate system is . We found then

So that we note that the omnidirectional mobile robot can separately achieve the translational motion and the rotational motion around the gravity center in the two-dimensional plane. To confirm this holonomic property we have fixed the desired rotation angle = *π*/4 rad.

The path following is about following a predefined path which does not involve time as a constraint. Thus, the important thing is to follow the path and to reach the goal. The speed of the robot is a minor thing. On the contrary, trajectory tracking involves time as a constraint.

*(i) Path Following*. We use the lemniscates trajectory which seems to be the most provocative trajectory tracking cases which has constant change of rotation radius with constant linear velocity. This trajectory is described by the following formula:The robot’s angular switches according to the following equations:The robot’s model begins from the initial position as initial condition.

The path following, the rotation angular, and the linear velocity are presented in Figures 2–7. These figures show the perfect trajectory tracking of the predictive control based on the dynamic model unlike the kinematic model. Figure 2 shows that the posture error is kept different from zero. On the other hand, in Figure 5, the error is equal to zero. In addition to that, the convergence of the control input to the fixed value 0.1 is faster in Figure 6 than that of the kinematic model in Figure 3; the rotation angle also is stabilized to the desired value at in a fewer time in Figure 7 than Figure 4. The dynamic model eliminates also the oscillations present in the linear velocity and the rotation angle.

Figure 4 shows the holonomic property of the robot that makes the robot follows and with a fixed angular rotation.

*(ii) Trajectory Tracking*. The desired trajectory is defined as follows with a duration of movement = 10 s.

We used the cubic splines with a bang-bang speed profile and the trajectory reference would have these formulae:The performances of the kinematic model are ameliorated from the path following case because here the trajectory is known in every sample time in advance; trajectory tracking, linear velocity, and rotation angle are shown in Figures 8–11. Nevertheless the dynamic model keeps a perfect resolution of the problem of trajectory tracking as the path following. The robot tracks and trajectories perfectly, which is shown in Figures 12 and 13, and converges to desired velocity and desired rotation angle in a short time, which is clear in Figures 14 and 15.

The aim of the simulation results is to examine the effectiveness and performance of the proposed predictive control with the kinematic model and the dynamic model of the omnidirectional mobile robot. So we proposed two cases: the path following with no constraint of time and the trajectory tracking with a fixed time. The simulation results show that the predictive control is capable of steering the omnidirectional mobile platform to exactly track the desired cubic splines trajectory and follow the lemniscates path. Although the kinematic model is easier in formulation, the dynamic model uses more details that makes it better than the kinematic model since it is more reliable, fast, and exact.

*(iii) Future Works*. Omnidirectional mobile robots are useful in many indoor service applications: industrial, medical, and domestic. The use of omnidirectional mobile robots instead of conventional robots with two independent wheels has full omnidirectionality with simultaneous and independently controlled rotational and translational motion. We have introduced here a kinematic model and dynamic model and developed a control system with high performances and our perspectives are to continue the experimental implementation.

#### 6. Conclusion

This paper has presented an application of the model predictive control to solve problem of trajectory tracking and path following of omnidirectional mobile robot. Two different models are considered: the kinematic model and the dynamic model. Control algorithm has been applied for the path following using lemniscates path and trajectory tracking using cubic splines with a bang-bang velocity profile. These two cases are performed by using simulation program. The results show the effectiveness of the dynamic model in comparison with the kinematic one to track the trajectory and path without posture errors and to converge to the desired control value (linear velocity) and the desired rotation angle rapidly and without oscillations.

#### Conflicts of Interest

There are no conflicts of interest in this work.