# Design of a Model Predictive Trajectory Tracking Controller for Mobile Robot Based on the Event-Triggering Mechanism

Authors: Ning He; Lipeng Qi; Ruoxia Li; Yuesheng Liu
Journal: Mathematical Problems in Engineering
 (2021)

---

## Abstract

A novel model predictive control- (MPC-) based trajectory tracking controller for mobile robot is proposed using the event-triggering mechanism, and the aim is to solve the problem that the MPC optimization problem requires a large amount of online computation and communication resources. This method includes two different event-triggering strategies, namely, the event-triggering based on threshold curve and the event-triggering based on threshold band. The selection of the triggering threshold is achieved by applying the statistical method to the historical data of the trajectory tracking of the mobile robot under the classic MPC method. Simulation and experimental tests illustrate that the proposed approach is able to significantly reduce the computation and communication burdens without affecting the control performance. Furthermore, the experimental results show that compared with the classic MPC-based tracking method, the proposed two event-triggering strategies can reduce 28.1% and 75.7% of the computation load and 0.886 s and 2.385 s communication time.


---

## Body

## 1. Introduction

With the rapid development of computer engineering, electronic engineering, network communication engineering, and other disciplines, mobile robot technology has made great progress and has been widely used in scientific exploration, national defense and military, risk relief, life services, and other fields. Therefore, the trajectory tracking method of mobile robot using a conventional control strategy is difficult to achieve the desired control performance, so it is urgent to study the trajectory tracking strategy of a robot based on advanced control algorithms.In recent years, many research achievements have been made on the trajectory tracking control of mobile robots. The mainstream tracking control algorithms at this stage included sliding mode control, model predictive control (MPC), and optimal control [1–4]. Due to the advantages in handling system constraints and balancing multiple control objectives, MPC has been applied in more and more practical mobile robots, such as wheeled robots [5–9] and underwater autonomous navigation robots [10, 11]. In [8], the authors designed a MPC-based trajectory tracking control method, which could ensure that the unmanned vehicle track the reference trajectory quickly and stably; the distance error and heading error are in a reasonable range, and the real-time performance meet the requirements. [9] proposed a real-time optimization scheme to reduce the control horizon and the control update frequency for MPC-based robot path tracking control, which could balance the real-time requirements and control accuracy. An MPC-based path tracking controller for the constrained under-driven autonomous underwater vehicle (AUV) system is designed in [10], and it is pointed out that a long prediction horizon could be chosen to ensure the final convergence of the control system. In addition, [11] proposed a new MPC method for the trajectory tracking of underwater robots, which used the linearized error model to formulate the MPC optimization problem such that the speed jump problem could be avoided without violating the control constraints.As MPC controllers solve a constrained optimization problem at each sampling instant, the online computation burden is quite large and needs to be further optimized. In [12], the authors proposed a MPC strategy based on the event-triggering mechanism, in which the optimization is only triggered when the difference between the predicted and the actual trajectories exceeded a certain threshold, which effectively reduced the online computation. [13] proposed an event-based MPC method and further proved the closed-loop stability property by constructing terminal constraint and terminal cost function. In [14], the authors proposed a novel aperiodic adaptive event-triggered communication mechanism for master-slave synchronization problem with aperiodic sampled data, which can effectively reduce the transmission load. For more details regarding communication links in tracking control, the reader is referred to [15] and references therein. [16] proposed an event-based MPC approach for linear discrete systems subject to external perturbation, in which the optimization problem included a time-vary tightened state constraint. It should be emphasized that compared with the standard MPC applied in practical robots, the above event-triggered MPC algorithms including additional items such as terminal and tightened constraints, which cannot be directly adopted, and therefore, the event-triggering mechanism should be further studied for MPC-based tracking control of robot systems.Aiming at solving the abovementioned problems, this study proposes a more practical event-triggered MPC-based trajectory tracking method for mobile robot subject to external disturbances. Two novel event-triggering strategies, i.e., event-triggering based on the threshold curve and event-triggering based on the threshold band are developed. Furthermore, the selection of the threshold curve and threshold band is achieved via applying the statistical approach to the recorded historical trajectory data of the robot system with the classic MPC method. Finally, simulation and experimental tests show that the developed event-triggered MPC method can significantly reduce the computation and communication resources occupied by the MPC controller.It is worth mentioning that the main motivation of this manuscript is that in order to facilitate the theoretical analysis, the majority of the existing event-triggered MPC methods have extra assumptions about the robot system and require additional items (e.g., terminal cost) in the MPC setting, which makes the corresponding MPC controller too computational expensive for many real robot systems. Since robot systems with relatively low hardware configuration are an important portion of industrial robots, it is of great importance to develop the event-triggered MPC method suitable for those robot systems. Furthermore, the main contribution of the proposed method can be illustrated in two aspects. On the one hand, compared with the event-triggered MPC with terminal cost/constraint, the proposed method employed the standard robot kinematic model with no extra assumption and has no additional terms in the MPC cost function, which can be directly applied to real robot systems. On the other hand, compared with event-triggered MPC with standard MPC framework, the proposed technique incorporated the external disturbances into the development of the triggering condition and adopted statistical methods to construct two different kinds of triggering strategies for performance improvement (Section5.2).


## 2. Description of the Robot System

### 2.1. Kinematic Model of the Robot System

First, the kinematic model of the mobile robot is constructed. It is assumed that the robot system conforms to nonholonomic constraints, and the robot body has no lateral sliding. Considering that the velocity of the robot is generally low and the lateral acceleration such as centrifugal acceleration has little influence during steering [17], the kinematic model for the mobile robot can be established as(1)ddtxyφ=cosφ0sinφ001vω,where the state is denoted as xyφT, consisting of the position of the mobile robot xy, as well as its orientation φ. The input signal is represented as vωT, including linear velocity and angular velocity of the mobile robot.The above kinematic model can then be expressed in a more general state space form as(2)ξ˙=fξ,u,ξ=x,y,φT,u=v,ωT,where ξ is the state, and u is the input; f(·) represents the corresponding mapping relationship. Since the trajectory status of the reference system is known, the relationship of the state vector and control vector of the reference system is expressed as(3)ξ˙r=fξr,ur,ξr=xr,yr,φrT,ur=vr,ωrT.Expand equation (2) by Taylor series at any reference point (ξr, ur) and retain only the first-order terms and ignore the higher-order terms. The following equation can be obtained:(4)ξ˙=fξr,ur+∂f∂ξ|ξ=ξru=urξ−ξr+∂f∂u|ξ=ξru=uru−ur.By making a difference between equations (3) and (4), the linearized error model is obtained as(5)ξ¯˙=x˙−x˙ry˙−y˙rφ˙−φ˙r=00−vrsinφr00vrcosφr000x−xry−yrφ−φr+sinφr0cosφr001v−vrω−ωr.The linearized error model of the mobile robot is further discretized by Euler method as(6)ξ¯k+1|t=Akξ¯k+Bku¯k,where Ak=10−Tvrsinφr01Tvrcosφr001,Bk=Tsinφr0Tcosφr00T, and T is the sampling time.


### 2.2. Augmented State Space Model

To ease the development of the model predictive trajectory tracking controller, an augmented state space model is constructed. Given the discrete time linear model of the mobile robot in (6), an augmented state is set as(7)μk|t=ξ¯k|tu¯k−1|t.Thus, the desired discrete state space equation is obtained:(8)μk+1|t=A˜k,tμk|t+B˜k,tΔUk|t,ηk|t=C˜k,tμk|t,where A˜k,t=AkBk;0m×nIm is the system matrix, B˜k,t=Bk;Im is the control matrix, and C˜k,t=In0 is the output matrix, and m, n are the dimensions of the state and control vectors. To simplify the representation, the following expressions are employed:(9)A˜k,t=A˜t,k=1,…,t+Nh−1,B˜k,t=B˜t,k=1,…,t+Nh−1,C˜k,t=C˜t,k=1,…,t+Nh−1,where Nh is the horizon (including prediction horizon and control horizon).


## 2.1. Kinematic Model of the Robot System

First, the kinematic model of the mobile robot is constructed. It is assumed that the robot system conforms to nonholonomic constraints, and the robot body has no lateral sliding. Considering that the velocity of the robot is generally low and the lateral acceleration such as centrifugal acceleration has little influence during steering [17], the kinematic model for the mobile robot can be established as(1)ddtxyφ=cosφ0sinφ001vω,where the state is denoted as xyφT, consisting of the position of the mobile robot xy, as well as its orientation φ. The input signal is represented as vωT, including linear velocity and angular velocity of the mobile robot.The above kinematic model can then be expressed in a more general state space form as(2)ξ˙=fξ,u,ξ=x,y,φT,u=v,ωT,where ξ is the state, and u is the input; f(·) represents the corresponding mapping relationship. Since the trajectory status of the reference system is known, the relationship of the state vector and control vector of the reference system is expressed as(3)ξ˙r=fξr,ur,ξr=xr,yr,φrT,ur=vr,ωrT.Expand equation (2) by Taylor series at any reference point (ξr, ur) and retain only the first-order terms and ignore the higher-order terms. The following equation can be obtained:(4)ξ˙=fξr,ur+∂f∂ξ|ξ=ξru=urξ−ξr+∂f∂u|ξ=ξru=uru−ur.By making a difference between equations (3) and (4), the linearized error model is obtained as(5)ξ¯˙=x˙−x˙ry˙−y˙rφ˙−φ˙r=00−vrsinφr00vrcosφr000x−xry−yrφ−φr+sinφr0cosφr001v−vrω−ωr.The linearized error model of the mobile robot is further discretized by Euler method as(6)ξ¯k+1|t=Akξ¯k+Bku¯k,where Ak=10−Tvrsinφr01Tvrcosφr001,Bk=Tsinφr0Tcosφr00T, and T is the sampling time.


## 2.2. Augmented State Space Model

To ease the development of the model predictive trajectory tracking controller, an augmented state space model is constructed. Given the discrete time linear model of the mobile robot in (6), an augmented state is set as(7)μk|t=ξ¯k|tu¯k−1|t.Thus, the desired discrete state space equation is obtained:(8)μk+1|t=A˜k,tμk|t+B˜k,tΔUk|t,ηk|t=C˜k,tμk|t,where A˜k,t=AkBk;0m×nIm is the system matrix, B˜k,t=Bk;Im is the control matrix, and C˜k,t=In0 is the output matrix, and m, n are the dimensions of the state and control vectors. To simplify the representation, the following expressions are employed:(9)A˜k,t=A˜t,k=1,…,t+Nh−1,B˜k,t=B˜t,k=1,…,t+Nh−1,C˜k,t=C˜t,k=1,…,t+Nh−1,where Nh is the horizon (including prediction horizon and control horizon).


## 3. Design of a Model Predictive Trajectory Tracking Controller

The objective function of the predictive controller contains information such as system state error and the change of control, based on which the optimal control problem can be formulated to ensure the mobile robot to track the reference trajectory quickly and smoothly. In this work, the cost function is formulated as(10)Jξt,ΔUt=∑i=1Npηt+i|t−ηreft+i|tQ2+∑i=1Nc−1Δut+kR2+αε2.where Q and R denote the state-weighting matrix and input-weighting matrix, respectively, ε is the relaxing factor, and α is the associated weighting coefficient. In this objective function, the first element shows the capability of the system to track the set point, and the second element illustrates its ability to constrain the change of the control input. The cost function (10) determines the closed-loop performance of the MPC system. More specifically, the dynamic and steady-state performances as well as the energy consumption of the robot system can be tuned by the design parameters (such as prediction horizon Np, control horizon Nc, and weighting matrices Q and R) in (10). The prediction horizon Np mainly affects the stability and rapidity of the system. When Np is small, the rapidity of the system response is guaranteed, but the robustness of the system is relatively poor. Therefore, the choice of Np mainly involves the trade-off between robust stability and rapidity of the system. The control horizon Nc mainly affects the dynamic characteristics of the system. The smaller the Nc is selected, the worse the tracking performance of the system will be. A larger Nc makes the control signal more flexible and improves the overall dynamic characteristics of the system, but it is also prone to robust stability problems. The weighting matrices Q and R restrict each other. The rapid response performance of the system can be improved by reducing R (or increasing Q), and the steady-state performance and the energy consumption can be improved via increasing R (or reducing Q), since the change of the control signal can be effectively suppressed and the control cost can be reduced. The relaxing factor and its weighting coefficient can be tuned to guarantee that MPC admits an optimal input trajectory at each sampling instant, which indirectly guarantees the feasibility of the optimal problem.The prediction of the system outputY(t) during the prediction horizon is obtained:(11)Yt=Ψtμk|t+ΘtΔUt,where Yt=ηt+1|tηt+2|t⋮ηt+Nc|t⋮ηt+Np|t,Ψt=C˜tA˜tC˜tA˜2t⋮C˜tA˜tNc⋮C˜tA˜tNp, ΔUt=Δut|tΔut+1|t⋮Δut+Nc|t, and Θt=C˜tB˜t000C˜tA˜tB˜tC˜tB˜t00⋯⋯⋱⋯C˜tA˜tNc−1B˜tC˜tA˜tNc−2B˜t⋯C˜tB˜tC˜tA˜tNcB˜tC˜tA˜tNc−1B˜t⋯C˜tA˜tB˜t⋮⋮⋱⋮C˜tA˜tNp−1B˜tC˜tA˜tNp−2B˜t⋯C˜tA˜tNp−Nc−1B˜t.By substituting equation (11) into the cost function in (10), the output deviation in the prediction horizon can be denoted as(12)Et=Ψtξ¯t|t−Yreft,where Yref=ηreft+1|t,…,ηreft+Np|tT. Through some standard matrix operations, the cost function can be adjusted as(13)Jξt,ut−1,ΔUt=ΔUtT,εTHtΔUtT,ε+GtΔUtT,ε+Pt,where Ht=ΘtTQΘt+R00α, Gt=2EtTQΘt0, and Pt=EtTQEt.Then, it can be shown that the constrained optimization problem of the predictive controller at each step is equivalent to the quadratic programming (QP) problem as(14)MinΔUt,εΔUtT,εTHtΔUtT,ε+GtΔUtT,εsubject toΔUmin≤ΔUk≤ΔUmaxUmin≤ut−1+∑i=1kΔUi≤UmaxYmin−ε≤Ψtμk|t+ΘtΔUt≤Ymax−εk=t,…,t+Nc−1,ε>0,where ΔUmin and ΔUmax are the system control incremental sequence constraints, Umin and Umax are the system control sequence constraints, and Ymin and Ymax are the system output sequence constraints.By solving problem (14) at a given sampling instant, the incremental control sequence ΔUt∗=Δut∗,Δut+1∗,…,Δut+Nc−1∗T can be obtained. The first item in the sequence is applied as the actual control signal increment, i.e., ut=ut−1+Δut∗. Then, the newly obtained state is utilized to update the optimization problem for the next instant. The aforementioned procedure is recursively performed, until the control process is completed. Besides, the convergence speed of the proposed MPC control algorithm can be controlled by the tunable parameters in the MPC cost function, namely, prediction horizon Np, control horizon Nc, and weighting matrices Q and R. In general, when convergence speed of the system response needs to be improved, a larger Nc and a smaller Np are usually selected, and R is reduced (or Q is increased). It should be noted that in the physical sense, Nc <= Np needs to be satisfied, and the functions of the weighting matrices Q and R are mutually restricted.


## 4. Design of Event-Triggering Strategies

Compared with classic time-triggered MPC, event-triggered MPC has the characteristic of only performing actions at the time when a predetermined event occurs, such as the error exceeds a certain threshold, and thus, it can effectively reduce the frequency of system sampling and update, which could effectively reduce computation and communication load.Due to the inevitable existence of various disturbances in actual mobile robot systems, such as model mismatch and parameter perturbation, the design of triggering conditions should further consider the external disturbances of the considered system. Denote the disturbance signal asw∈W with W being a compact set. Then, on the basis of the nominal model in equation (1), a perturbed model of the robot system can be described as ξ˙=fξ,u+ρ, where ρ≜supw∈Wwt denotes the upper bound of disturbance.It is worth nothing that although the external disturbances can be handled via incorporating terminal cost function, terminal constraint, and tightening set to the MPC algorithm in (10); these additional items will significantly increase the amount of online computation and seriously affect the real-time property and performance of the controller. For the robot system with limited computation ability, such modified MPC optimization problem may not be solved in time to update the control signals, which will lead to system performance deterioration and even instability. To solve the abovementioned problems, this study proposes an event-triggered MPC-based trajectory tracking method for the robot systems, which can effectively deal with the influence of external disturbances on the system without increasing the amount of online computation.


### 4.1. Event-Triggering Strategy Based on Threshold Curve

A triggering strategy based on the threshold curve is proposed in this section. More specifically, at each sampling time, if any component of the position coordinate of robot exceeds the corresponding component of the threshold curve vector, the MPC update is executed, based on which the next triggering time can defined as(15)t¯k+1≜infs>tks|ξ1s|tk−σxs|tk>0orξ2s|tk−σys|tk>0orξ3s|tk−σφs|tk>0,s∈tk,tk+Nc,where tk is the current triggering time, ξ1, ξ2, and ξ3 are the values of position components of the systems x, y, and φ. And σx, σy, and σφ denote the event-triggering threshold corresponding to the state components, respectively.Note that the threshold curve parametersσx,σy, and σφ can be selected via taking the mean values of the position coordinates of the robot from N groups of historical data collected during the similar working condition under the classic MPC, and thus, the three thresholds at each sampling time can be obtained through statistical processing via(16)σx1,…,k=∑i=1Nxi,kN,σy1,…,k=∑i=1Nyi,kN,σφ1,…,k=∑i=1Nφi,kN,where xi,k, yi,k, and φi,k are the position and the orientation information of the mobile robot in ith group historical data, k is the kth sampling time; σx(k), σy(k), and σφ(k) are the obtained thresholds corresponding to the position and orientation of the robot at sampling time k, respectively.


### 4.2. Event-Triggering Strategy Based on Threshold Band

To further reduce the frequency of solving the optimization problem and save computation resources, the second event-triggering strategy, which is based on threshold band, is proposed in this section. More specifically, at some sampling time, when the position coordinate of any state component of the mobile robot exceeds the upper or lower bound of the threshold band, it is considered to be the case where the triggering condition is satisfied. To formulate the event-triggering strategy, the triggering instantt¯k+1 is defined as(17)t¯k+1≜infs>tks|ξ1s|tk−σx_us|tk>0orξ1s|tk−σx_ds|tk<0orξ2s|tk−σy_us|tk>0orξ2s|tk−σy_ds|tk<0orξ3s|tk−σφ_us|tk>0orξ3s|tk−σφ_ds|tk<0,s∈tk,tk+Nc,where σx_u, σx_d, σy_u, σy_d, σφ_u, and σφ_d denote the upper and lower threshold bounds of the position and orientation.The selection method of the threshold band is that under the condition that the control effect does not decline; the threshold band can be formed by using the relationship between the threshold curve and the maximum disturbance. In actual working conditions, due to the existence of uncertain factors such as measurement noise, load changes, and external disturbances of the system, it is difficult to obtain accurate values of the parameters of the mobile robot model. Based on this, the model mismatch and parameter perturbation of the system are usually treated as a total disturbance.According to a large number of historical data, the disturbance upper bound of the usual working scene can be measured, and a threshold band can be obtained by subtracting the disturbance upper bound from the threshold curve. Using the threshold band as the triggering condition can improve the robustness of the system, and the threshold band can be obtained as(18)σx_u1,…,k=σx1,…,k+ρ,σx_d1,…,k=σx1,…,k−ρ,σy_u1,…,k=σy1,…,k+ρ,σy_d1,…,k=σy1,…,k−ρ,σφ_u1,…,k=σφ1,…,k+ρ,σφ_d1,…,k=σφ1,…,k−ρ,where σx_u(k), σy_u(k), σφ_u(k), σx_d(k), σy_d(k), and σφ_d(k) are the upper and lower threshold limits corresponding to the position and orientation of the robot at sampling time k.Remark 1.
The method proposed in this study relies on the robot state information mainly in two aspects, namely, calculating the triggering threshold and determining the triggering instant; the former needs to process a large amount of historical complete state information, and the latter needs to know the current complete state information of the robot. However, in certain scenarios (such as linear trajectory tracking), the complete state information can be reduced to only state information containing the horizontal and vertical coordinates. In addition, we can also reduce the limit of requiring the complete state information by changing the triggering condition, e.g., developing a new condition with only the horizontal and vertical coordinates, but it may affect the control performance to some extent and needs further investigation.


### 4.3. Design of the Event-Triggered MPC Algorithm

Based on the event-triggering mechanism proposed in Sections4.1 and 4.2, the event-triggered MPC algorithm is provided. Note that Np = Nc is utilized based on the practical experience. In the developed algorithm, the online optimization is executed only when the triggering condition is satisfied. To further lessen the times to solve the optimization problem, the last element in the control sequence is continuously used after the control horizon expires. Thus, the control law is constructed as(19)ΔUtk∗=Δutk∗,Δutk+1∗,…,Δutk+Nc−1∗T,tk≤t≤tk+Nc−1,Δutk+Nc−1∗,…,Δutk+Nc−1∗T,t>tk+Nc−1.The pseudocode of the proposed event-triggered MPC algorithm is given in Algorithm1.Algorithm 1:Threshold curve/band-based event-triggered MPC approach.
Input: Prediction horizon Np; triggering level σ; weighting matrices Q and Rinitial state ξ0=x0y0φ0T; indices k = 0, i = 0.1
CalculateΔUtk∗=Δutk∗,Δutk+1∗,…,Δutk+Nc−1∗T by solving the problem in (14)2
Apply control inputui|tk=ΔUtk∗i3
while the triggering condition is not satisfied do4
Apply control inputui+1|tk=ui|tk+ΔUtk∗i+15
i=i+16
end while7
k=k+1, i = 08
CalculateΔUtk∗=Δutk∗,Δutk+1∗,…,Δutk+Nc−1∗T by solving the problem in (14)9
return 3Remark 2.
Note that the computational complexity is minor while applying the proposed event-triggering mechanism. The reason is that only a simple-triggering condition is checked at each sampling instant, and the associated computation is quite simple in the machine level implementation, as operands in the operation register of the instruction can be used directly. More specifically, the (classic) MPC controller needs to solve a nonlinear optimization problem at each sampling instant, and if the associated computational complexity is O(MIN_ITER) with MIN_ITER being the minimum number of iterations to find a solution to the nonlinear optimization, the computational complexity for the developed triggering mechanism is only O(1), and therefore, the complexity of the triggering mechanism is minor and would not add much computational burden to the robot system. Besides, introducing the event-triggering mechanism to the MPC can effectively reduce the number of the sampling and updating instants, and thus, the entire computation resources will actually be significantly saved compared with its time-triggered counterpart.
Interpretations of Algorithm1:(1)
The initialization parameters of the algorithm include prediction horizonNp, initial state ξ0=x0y0φ0T, triggering condition level σ (including threshold curve and threshold band), and weighting matrices Q and R(2)
Whentk = 0, the optimization problem in (14) is solved to obtain the control sequence ΔUtk∗=Δutk∗,Δutk+1∗,…,Δutk+Nc−1∗T, which uses the first element to form the control input utk=utk−1+ΔUtk∗1, where utk−1=0, and utk is applied to the system to obtain the new state vector ξi+1|tk(3)
The triggering conditions are checked via substitutingξi+1|tk into equations (15) and (17) to see whether the predetermined thresholds are met(4)
When the triggering conditions are not valid, the elements in the input sequence are continuously applied without computing the optimization; otherwise, the optimization problem (14) is solved for the new control sequence, and the new input is utilized for getting the new state vector; then, the algorithm is back to step (3).
In order to quantify the computation and communication resources saved by using the event-triggering mechanism,S1 and S2 are defined as(20)S1=1−TeTt,(21)S2=Tt−Ted,where Te and Tt are the event-triggering times and time-triggering times, and d is the measured mean network delay in a standard experimental environment. Therefore, equations (20) and (21) can quantificationally calculate the saved computation and communication resources.
It is worth nothing that a large amount of historical data is normally collected when the robot is controlled by the classical MPC before using the above strategy. Therefore, in view of different working conditions, the control strategy can also be used after statistical analysis of the previous historical data. Therefore, the control strategies proposed in this study also have a strong adaptability.


## 4.1. Event-Triggering Strategy Based on Threshold Curve

A triggering strategy based on the threshold curve is proposed in this section. More specifically, at each sampling time, if any component of the position coordinate of robot exceeds the corresponding component of the threshold curve vector, the MPC update is executed, based on which the next triggering time can defined as(15)t¯k+1≜infs>tks|ξ1s|tk−σxs|tk>0orξ2s|tk−σys|tk>0orξ3s|tk−σφs|tk>0,s∈tk,tk+Nc,where tk is the current triggering time, ξ1, ξ2, and ξ3 are the values of position components of the systems x, y, and φ. And σx, σy, and σφ denote the event-triggering threshold corresponding to the state components, respectively.Note that the threshold curve parametersσx,σy, and σφ can be selected via taking the mean values of the position coordinates of the robot from N groups of historical data collected during the similar working condition under the classic MPC, and thus, the three thresholds at each sampling time can be obtained through statistical processing via(16)σx1,…,k=∑i=1Nxi,kN,σy1,…,k=∑i=1Nyi,kN,σφ1,…,k=∑i=1Nφi,kN,where xi,k, yi,k, and φi,k are the position and the orientation information of the mobile robot in ith group historical data, k is the kth sampling time; σx(k), σy(k), and σφ(k) are the obtained thresholds corresponding to the position and orientation of the robot at sampling time k, respectively.


## 4.2. Event-Triggering Strategy Based on Threshold Band

To further reduce the frequency of solving the optimization problem and save computation resources, the second event-triggering strategy, which is based on threshold band, is proposed in this section. More specifically, at some sampling time, when the position coordinate of any state component of the mobile robot exceeds the upper or lower bound of the threshold band, it is considered to be the case where the triggering condition is satisfied. To formulate the event-triggering strategy, the triggering instantt¯k+1 is defined as(17)t¯k+1≜infs>tks|ξ1s|tk−σx_us|tk>0orξ1s|tk−σx_ds|tk<0orξ2s|tk−σy_us|tk>0orξ2s|tk−σy_ds|tk<0orξ3s|tk−σφ_us|tk>0orξ3s|tk−σφ_ds|tk<0,s∈tk,tk+Nc,where σx_u, σx_d, σy_u, σy_d, σφ_u, and σφ_d denote the upper and lower threshold bounds of the position and orientation.The selection method of the threshold band is that under the condition that the control effect does not decline; the threshold band can be formed by using the relationship between the threshold curve and the maximum disturbance. In actual working conditions, due to the existence of uncertain factors such as measurement noise, load changes, and external disturbances of the system, it is difficult to obtain accurate values of the parameters of the mobile robot model. Based on this, the model mismatch and parameter perturbation of the system are usually treated as a total disturbance.According to a large number of historical data, the disturbance upper bound of the usual working scene can be measured, and a threshold band can be obtained by subtracting the disturbance upper bound from the threshold curve. Using the threshold band as the triggering condition can improve the robustness of the system, and the threshold band can be obtained as(18)σx_u1,…,k=σx1,…,k+ρ,σx_d1,…,k=σx1,…,k−ρ,σy_u1,…,k=σy1,…,k+ρ,σy_d1,…,k=σy1,…,k−ρ,σφ_u1,…,k=σφ1,…,k+ρ,σφ_d1,…,k=σφ1,…,k−ρ,where σx_u(k), σy_u(k), σφ_u(k), σx_d(k), σy_d(k), and σφ_d(k) are the upper and lower threshold limits corresponding to the position and orientation of the robot at sampling time k.Remark 1.
The method proposed in this study relies on the robot state information mainly in two aspects, namely, calculating the triggering threshold and determining the triggering instant; the former needs to process a large amount of historical complete state information, and the latter needs to know the current complete state information of the robot. However, in certain scenarios (such as linear trajectory tracking), the complete state information can be reduced to only state information containing the horizontal and vertical coordinates. In addition, we can also reduce the limit of requiring the complete state information by changing the triggering condition, e.g., developing a new condition with only the horizontal and vertical coordinates, but it may affect the control performance to some extent and needs further investigation.


## 4.3. Design of the Event-Triggered MPC Algorithm

Based on the event-triggering mechanism proposed in Sections4.1 and 4.2, the event-triggered MPC algorithm is provided. Note that Np = Nc is utilized based on the practical experience. In the developed algorithm, the online optimization is executed only when the triggering condition is satisfied. To further lessen the times to solve the optimization problem, the last element in the control sequence is continuously used after the control horizon expires. Thus, the control law is constructed as(19)ΔUtk∗=Δutk∗,Δutk+1∗,…,Δutk+Nc−1∗T,tk≤t≤tk+Nc−1,Δutk+Nc−1∗,…,Δutk+Nc−1∗T,t>tk+Nc−1.The pseudocode of the proposed event-triggered MPC algorithm is given in Algorithm1.Algorithm 1:Threshold curve/band-based event-triggered MPC approach.
Input: Prediction horizon Np; triggering level σ; weighting matrices Q and Rinitial state ξ0=x0y0φ0T; indices k = 0, i = 0.1
CalculateΔUtk∗=Δutk∗,Δutk+1∗,…,Δutk+Nc−1∗T by solving the problem in (14)2
Apply control inputui|tk=ΔUtk∗i3
while the triggering condition is not satisfied do4
Apply control inputui+1|tk=ui|tk+ΔUtk∗i+15
i=i+16
end while7
k=k+1, i = 08
CalculateΔUtk∗=Δutk∗,Δutk+1∗,…,Δutk+Nc−1∗T by solving the problem in (14)9
return 3Remark 2.
Note that the computational complexity is minor while applying the proposed event-triggering mechanism. The reason is that only a simple-triggering condition is checked at each sampling instant, and the associated computation is quite simple in the machine level implementation, as operands in the operation register of the instruction can be used directly. More specifically, the (classic) MPC controller needs to solve a nonlinear optimization problem at each sampling instant, and if the associated computational complexity is O(MIN_ITER) with MIN_ITER being the minimum number of iterations to find a solution to the nonlinear optimization, the computational complexity for the developed triggering mechanism is only O(1), and therefore, the complexity of the triggering mechanism is minor and would not add much computational burden to the robot system. Besides, introducing the event-triggering mechanism to the MPC can effectively reduce the number of the sampling and updating instants, and thus, the entire computation resources will actually be significantly saved compared with its time-triggered counterpart.
Interpretations of Algorithm1:(1)
The initialization parameters of the algorithm include prediction horizonNp, initial state ξ0=x0y0φ0T, triggering condition level σ (including threshold curve and threshold band), and weighting matrices Q and R(2)
Whentk = 0, the optimization problem in (14) is solved to obtain the control sequence ΔUtk∗=Δutk∗,Δutk+1∗,…,Δutk+Nc−1∗T, which uses the first element to form the control input utk=utk−1+ΔUtk∗1, where utk−1=0, and utk is applied to the system to obtain the new state vector ξi+1|tk(3)
The triggering conditions are checked via substitutingξi+1|tk into equations (15) and (17) to see whether the predetermined thresholds are met(4)
When the triggering conditions are not valid, the elements in the input sequence are continuously applied without computing the optimization; otherwise, the optimization problem (14) is solved for the new control sequence, and the new input is utilized for getting the new state vector; then, the algorithm is back to step (3).
In order to quantify the computation and communication resources saved by using the event-triggering mechanism,S1 and S2 are defined as(20)S1=1−TeTt,(21)S2=Tt−Ted,where Te and Tt are the event-triggering times and time-triggering times, and d is the measured mean network delay in a standard experimental environment. Therefore, equations (20) and (21) can quantificationally calculate the saved computation and communication resources.
It is worth nothing that a large amount of historical data is normally collected when the robot is controlled by the classical MPC before using the above strategy. Therefore, in view of different working conditions, the control strategy can also be used after statistical analysis of the previous historical data. Therefore, the control strategies proposed in this study also have a strong adaptability.


## 5. Simulation and Experimental Verifications

To verify the effectiveness of the proposed threshold curve/band-based MPC method, the simulation test and experimental verification are carried out, respectively.


### 5.1. Simulation Test

The simulation is performed on the MATLAB platform. Given the differential motion model of the mobile robot in equation (1), the objective of the mobile robot is to follow a given trajectory y = 10 from the initial position [0, 0, 0]. Simulation set-up sampling time T = 0.05 s, simulation steps Ns = 250, prediction and control horizons Np=Nc=5, weighting matrices Q = [1 0 0; 0 1 0; 0 0 0.5], R = [0.1 0; 0 0.1], weighting coefficient α = 10, relaxing factor ε = 0.025, the upper bound of the disturbance ρ = 0.05, input incremental constraint −0.05≤Δu≤0.05, input constraint −0.2≤u≤0.2, and N = 10 is chosen to set the thresholds. In order to obtain the threshold curve and threshold band, 10 groups of logged coordinate data for trajectory tracking in previous tests with the classic MPC under a similar simulation environment are utilized. The threshold curve and band are then obtained by using the threshold selection method (equations (16) and (18)) proposed in Section 4, and the obtained values are shown in Figure 1.Figure 1
The obtained threshold curve and threshold band.
(a)(b)(c)Then, the control effect is compared with the standard time-triggering strategy, and the results are shown in Figure2, in which TT denotes the time-triggered method, while ET1 and ET2 denote the event-triggering strategies using the threshold curve and threshold band methods, respectively.Figure 2
Trajectory tracking results.Figure2 illustrates that the proposed two event-triggering strategies have similar tracking performance compared with the standard time-triggered method. In fact, we can see that the event-triggering strategies both have faster response speed, indicating the advantage of the event-triggered controller with some practical and meaningful condition. In addition, the proposed method has been compared with an existing event-triggered MPC approach developed in literature [18], and the results show that event-triggering strategy proposed in this study can achieve better tracking performance and response speed (as illustrated in Figure 2).Besides, Table1 provides the effect of changing the design parameters on the closed-loop performance of the robot system for the proposed method. From Table 1, it is observed that weighting matrices Q and R are mutually restricted, and by reducing R (or increasing Q), the rapid response performance of the system can be improved; by increasing R (or reducing Q), the control cost can be reduced and the steady-state performance of the system can be improved. As for the prediction horizon Np and control horizon Nc, due to physical limitations, Nc <= Np must be satisfied, and in order to maintain the degree of freedom for the MPC optimization, Nc = Np is normally considered in real applications. Given such a setting, it is observed that a larger prediction horizon Np/control horizon Nc can provide a faster response speed but a certain compromise in steady-state performance will also be resulted.Table 1
Performance comparison of different design parameters for the proposed method.
Prediction horizon (Np)Control horizon (Nc)State-weighting matrix (Q)Control-weighting matrix (R)Max. steady-state errorxmymφrad55100010000.50.1000.10.0330.0540.011550.50000.50000.250.1000.10.0280.0380.01388100010000.50.1000.10.0420.0530.037Figure3 shows the tracking error of state components x, y, and φ from the corresponding reference. Specifically, Figure 3 shows that the event-triggering strategies have faster response speeds than their time-triggering counterparts, and the threshold band method also has a faster response speed than the threshold curve method. Note that due to the existing of the external disturbance, the state components are changing slightly around the origin, rather than remain constants.Figure 3
Trajectory tracking results of state components.
(a)(b)(c)Furthermore, the triggering instants are shown in Figure4, in which the triggered time steps of ET1 and ET2 are marked with red and blue circles with value 1. Note that the time-triggered MPC needs to update at every single sampling time (250 times in total), and the curve-based event-triggering strategy needs 184 times, and the band-based strategy only needs 65 times. Hence, the proposed strategies can significantly reduce the number of MPC update times to achieve trajectory tracking. According to equation (20), 26.4% and 74% computation resources are saved, respectively.Figure 4
Triggering instants of the proposed methods.
(a)(b)


### 5.2. Experimental Verification

Then, the experiment test is carried out. Figure5 shows the utilized crawler mobile robot and the experimental environment. The robot body is driven by two DC servo motors equipped with rotary encoders. The reference trajectory is a diagonal line within an 8 m × 8  m rectangle.Figure 5
Mobile robot and the experimental environment.The operating system on the robot is the Indigo version of the robot operating system (ROS). In order to establish communication with the same version of the ROS laptop, the 54 M bandwidth 802.11 g wireless communication protocol is used to realize remote wireless connection and control the movement of the robot. After network testing, the average network communication delay is about 17.04 ms, as shown in Figure6.Figure 6
Network environment test.Due to the error between the expected velocity command transmitted by the MPC node to the motion controller and the actual velocity measured by the encoder, it is necessary to calibrate the velocity of the mobile robot before the experiment. Let the robot travel a distance of 3 m at velocities of 0.1, 0.2, and 0.3 m/s, and each velocity was measured three times, and the average velocity is recorded, based on which the error can be calculated, and the detail data are shown in Table2.Table 2
Velocity calibration of mobile robot.
Desired velocity (m/s)Before calibrationAfter calibrationv (m/s)Error (%)v (m/s)Error (%)0.10.080819.20.09475.30.20.157321.40.19174.20.30.239720.10.28694.4The initial position is [0, 0, 0], the target position is [8, 8,π/4], the prediction and control horizons are Np=Nc=20, the controller sampling frequency is 20 Hz, the input constraint is −0.3≤u≤0.3, the disturbance limit is ρ = 0.05, the group number for constructing the triggering condition is N = 10, and other parameters are the same as the simulation. The upper bound of disturbance is selected as the maximum steady-state error in the experiment.The real-time position and speed information of the mobile robot is obtained through wireless communication, and the ROS visualization (Rviz) tool and stageros tool in the host computer are used to record the real-time trajectory, as shown in Figure7.Figure 7
The real-time trajectory of mobile robot in host computer.
(a)(b)(c)In addition, coordinate values recorded by a mobile robot in the global coordinate system are imported into MATLAB. According to equations (16) and (18), the threshold curve and threshold band can be calculated, as shown in Figure 8. Through the recorded data, we can get the tracking error of each state component under time-triggered and event-triggered methods, as shown in Figure 9.Figure 8
Threshold curve and threshold band in experiment.
(a)(b)(c)Figure 9
Trajectory tracking results of state components in experiment.
(a)(b)(c)It is observed that compared with the time-triggered method, the maximum error of each state component is 0.0268, 0.0141, and 0.0157 m for the curve-based event-triggering strategy, and the maximum error is 0.0258, 0.0333, and 0.0275 m for the band-based strategy, which illustrates that the developed event-triggering mechanism has a similar control effect as the standard method. Besides, from the 3rd subplot of Figure9, the robot mainly completes the orientation adjustment process at 1.9 s and then gradually reduces the horizontal and vertical coordinate errors.Figure10 illustrates the corresponding triggering instants. Note that the time-triggered method needs to update the controller for 185 times in total with sampling time being 0.05 s, and event-triggering strategies only need 133 times and 45 times, respectively. Therefore, compared to the time-triggered counterpart, event-triggering strategies are able to significantly lessen the number of updates for the optimization problem. Furthermore, according to equation (20), it can be obtained that ET1 and ET2 can save 28.1% and 75.7% of computation resources, respectively. From equation (21) and communication delay from Figure 6, the communication time is reduced by 0.886 s and 2.385 s, respectively.Figure 10
Event-triggering instants in experiment.
(a)(b)


## 5.1. Simulation Test

The simulation is performed on the MATLAB platform. Given the differential motion model of the mobile robot in equation (1), the objective of the mobile robot is to follow a given trajectory y = 10 from the initial position [0, 0, 0]. Simulation set-up sampling time T = 0.05 s, simulation steps Ns = 250, prediction and control horizons Np=Nc=5, weighting matrices Q = [1 0 0; 0 1 0; 0 0 0.5], R = [0.1 0; 0 0.1], weighting coefficient α = 10, relaxing factor ε = 0.025, the upper bound of the disturbance ρ = 0.05, input incremental constraint −0.05≤Δu≤0.05, input constraint −0.2≤u≤0.2, and N = 10 is chosen to set the thresholds. In order to obtain the threshold curve and threshold band, 10 groups of logged coordinate data for trajectory tracking in previous tests with the classic MPC under a similar simulation environment are utilized. The threshold curve and band are then obtained by using the threshold selection method (equations (16) and (18)) proposed in Section 4, and the obtained values are shown in Figure 1.Figure 1
The obtained threshold curve and threshold band.
(a)(b)(c)Then, the control effect is compared with the standard time-triggering strategy, and the results are shown in Figure2, in which TT denotes the time-triggered method, while ET1 and ET2 denote the event-triggering strategies using the threshold curve and threshold band methods, respectively.Figure 2
Trajectory tracking results.Figure2 illustrates that the proposed two event-triggering strategies have similar tracking performance compared with the standard time-triggered method. In fact, we can see that the event-triggering strategies both have faster response speed, indicating the advantage of the event-triggered controller with some practical and meaningful condition. In addition, the proposed method has been compared with an existing event-triggered MPC approach developed in literature [18], and the results show that event-triggering strategy proposed in this study can achieve better tracking performance and response speed (as illustrated in Figure 2).Besides, Table1 provides the effect of changing the design parameters on the closed-loop performance of the robot system for the proposed method. From Table 1, it is observed that weighting matrices Q and R are mutually restricted, and by reducing R (or increasing Q), the rapid response performance of the system can be improved; by increasing R (or reducing Q), the control cost can be reduced and the steady-state performance of the system can be improved. As for the prediction horizon Np and control horizon Nc, due to physical limitations, Nc <= Np must be satisfied, and in order to maintain the degree of freedom for the MPC optimization, Nc = Np is normally considered in real applications. Given such a setting, it is observed that a larger prediction horizon Np/control horizon Nc can provide a faster response speed but a certain compromise in steady-state performance will also be resulted.Table 1
Performance comparison of different design parameters for the proposed method.
Prediction horizon (Np)Control horizon (Nc)State-weighting matrix (Q)Control-weighting matrix (R)Max. steady-state errorxmymφrad55100010000.50.1000.10.0330.0540.011550.50000.50000.250.1000.10.0280.0380.01388100010000.50.1000.10.0420.0530.037Figure3 shows the tracking error of state components x, y, and φ from the corresponding reference. Specifically, Figure 3 shows that the event-triggering strategies have faster response speeds than their time-triggering counterparts, and the threshold band method also has a faster response speed than the threshold curve method. Note that due to the existing of the external disturbance, the state components are changing slightly around the origin, rather than remain constants.Figure 3
Trajectory tracking results of state components.
(a)(b)(c)Furthermore, the triggering instants are shown in Figure4, in which the triggered time steps of ET1 and ET2 are marked with red and blue circles with value 1. Note that the time-triggered MPC needs to update at every single sampling time (250 times in total), and the curve-based event-triggering strategy needs 184 times, and the band-based strategy only needs 65 times. Hence, the proposed strategies can significantly reduce the number of MPC update times to achieve trajectory tracking. According to equation (20), 26.4% and 74% computation resources are saved, respectively.Figure 4
Triggering instants of the proposed methods.
(a)(b)


## 5.2. Experimental Verification

Then, the experiment test is carried out. Figure5 shows the utilized crawler mobile robot and the experimental environment. The robot body is driven by two DC servo motors equipped with rotary encoders. The reference trajectory is a diagonal line within an 8 m × 8  m rectangle.Figure 5
Mobile robot and the experimental environment.The operating system on the robot is the Indigo version of the robot operating system (ROS). In order to establish communication with the same version of the ROS laptop, the 54 M bandwidth 802.11 g wireless communication protocol is used to realize remote wireless connection and control the movement of the robot. After network testing, the average network communication delay is about 17.04 ms, as shown in Figure6.Figure 6
Network environment test.Due to the error between the expected velocity command transmitted by the MPC node to the motion controller and the actual velocity measured by the encoder, it is necessary to calibrate the velocity of the mobile robot before the experiment. Let the robot travel a distance of 3 m at velocities of 0.1, 0.2, and 0.3 m/s, and each velocity was measured three times, and the average velocity is recorded, based on which the error can be calculated, and the detail data are shown in Table2.Table 2
Velocity calibration of mobile robot.
Desired velocity (m/s)Before calibrationAfter calibrationv (m/s)Error (%)v (m/s)Error (%)0.10.080819.20.09475.30.20.157321.40.19174.20.30.239720.10.28694.4The initial position is [0, 0, 0], the target position is [8, 8,π/4], the prediction and control horizons are Np=Nc=20, the controller sampling frequency is 20 Hz, the input constraint is −0.3≤u≤0.3, the disturbance limit is ρ = 0.05, the group number for constructing the triggering condition is N = 10, and other parameters are the same as the simulation. The upper bound of disturbance is selected as the maximum steady-state error in the experiment.The real-time position and speed information of the mobile robot is obtained through wireless communication, and the ROS visualization (Rviz) tool and stageros tool in the host computer are used to record the real-time trajectory, as shown in Figure7.Figure 7
The real-time trajectory of mobile robot in host computer.
(a)(b)(c)In addition, coordinate values recorded by a mobile robot in the global coordinate system are imported into MATLAB. According to equations (16) and (18), the threshold curve and threshold band can be calculated, as shown in Figure 8. Through the recorded data, we can get the tracking error of each state component under time-triggered and event-triggered methods, as shown in Figure 9.Figure 8
Threshold curve and threshold band in experiment.
(a)(b)(c)Figure 9
Trajectory tracking results of state components in experiment.
(a)(b)(c)It is observed that compared with the time-triggered method, the maximum error of each state component is 0.0268, 0.0141, and 0.0157 m for the curve-based event-triggering strategy, and the maximum error is 0.0258, 0.0333, and 0.0275 m for the band-based strategy, which illustrates that the developed event-triggering mechanism has a similar control effect as the standard method. Besides, from the 3rd subplot of Figure9, the robot mainly completes the orientation adjustment process at 1.9 s and then gradually reduces the horizontal and vertical coordinate errors.Figure10 illustrates the corresponding triggering instants. Note that the time-triggered method needs to update the controller for 185 times in total with sampling time being 0.05 s, and event-triggering strategies only need 133 times and 45 times, respectively. Therefore, compared to the time-triggered counterpart, event-triggering strategies are able to significantly lessen the number of updates for the optimization problem. Furthermore, according to equation (20), it can be obtained that ET1 and ET2 can save 28.1% and 75.7% of computation resources, respectively. From equation (21) and communication delay from Figure 6, the communication time is reduced by 0.886 s and 2.385 s, respectively.Figure 10
Event-triggering instants in experiment.
(a)(b)


## 6. Conclusion

This study proposes a novel MPC-based trajectory tracking control method based on the event-triggering mechanism for mobile robot. The method includes two event-triggering strategies, the triggering strategy based on the threshold curve and the threshold band, respectively. The construction of the threshold curve and the threshold band is to employ the statistical method to process the recorded historical trajectory data. The simulation result and experimental verification show that compared with the classic time-triggered MPC, the proposed method can significantly reduce the update times of the optimization problem such that the computation and communication burdens can be effectively reduced without affecting the control performance of the system. In the future, the method to optimally select the design parameters in the event-triggering conditions and the way to handle more complex working conditions, e.g., other types of model uncertainties, time delays, and cyber attacks, are considered as potential research directions, and the target is to enhance the practicability of the event-triggered control technology.



---

*Source: 5573467-2021-04-12.xml*