Skip to main content

Trajectory Tracking of Autonomous Vehicle with the Fusion of DYC and Longitudinal–Lateral Control

Abstract

The current research of autonomous vehicle motion control mainly focuses on trajectory tracking and velocity tracking. However, numerous studies deal with trajectory tracking and velocity tracking separately, and the yaw stability is seldom considered during trajectory tracking. In this research, a combination of the longitudinal–lateral control method with the yaw stability in the trajectory tracking for autonomous vehicles is studied. Based on the vehicle dynamics, considering the longitudinal and lateral motion of the vehicle, the velocity tracking and trajectory tracking problems can be attributed to the longitudinal and lateral control. A sliding mode variable structure control method is used in the longitudinal control. The total driving force is obtained from the velocity error in order to carry out velocity tracking. A linear time-varying model predictive control method is used in the lateral control to predict the required front wheel angle for trajectory tracking. Furthermore, a combined control framework is established to control the longitudinal and lateral motions and improve the reliability of the longitudinal and lateral direction control. On this basis, the driving force of a tire is allocated reasonably by using the direct yaw moment control, which ensures good yaw stability of the vehicle when tracking the trajectory. Simulation results indicate that the proposed control strategy is good in tracking the reference velocity and trajectory and improves the performance of the stability of the vehicle.

Introduction

With the development of science and technology, autonomous vehicles are gradually coming into view. An autonomous vehicle is one that is equipped with a self-driving system and can automate driving without an intervention. At present, the definition of an autonomous vehicle has developed by shifting from having an underlying control to a decision-making control. An ideal autonomous driving system can change the vehicle’s motion in real time as a driver according to the movement state and surrounding environment [1]. From its birth to the present, the concept of autonomous driving has been given new connotation with the development of science and technology, i.e., changing from the initial autonomous driving system based on an autonomous trajectory tracking system to the present one based on a perception and decision-making system.

At present, the motion control in an autonomous vehicle is mainly focused on ACC (Adaptive Cruise Control) [2] and trajectory tracking [3]. For the trajectory tracking problem, it is generally considered as a lateral control, which mainly considers the accuracy of the reference trajectory under a constant velocity. However, the velocity of an autonomous vehicle is not constant actually, and this requires us to consider not only the accuracy of the trajectory tracking but also the velocity tracking problem. In most of the current literature, the trajectory tracking and velocity tracking are considered separately [4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19] and an automatic steering algorithm mainly solves the problem of trajectory tracking. Research shows that the realization of a steering strategy is largely affected by the velocity of the vehicle and uncertainty of the dynamic model. Many complex control methods can be used to improve the overall performance of automatic steering. For example, Ref. [4] proposed a composite path tracking control strategy for an underactuated tractor–trailer vehicle, which could achieve a coordinated control effect for sophisticated tractor–trailer vehicles. However, here, the certification of the stability performance of the fuzzy controller is complex. An adaptive terminal sliding-mode state observer based on a local recurrent neural network (RNN) was proposed in Ref. [5] to construct the adaptive trajectory tracking control law; however, its main problem is the requirement to build a large number of typical conditions for the training sample. Ref. [6] presented an approach for improving the gain scheduling state feedback controller for vehicle lateral stability, which could also keep the vehicle stable at a high velocity. However, its problem is that the tracking of the trajectory will be inaccurate when the tire model is linearized. In Ref. [7], an improved robust internal model control (IMC) algorithm blending model tracking and the IMC were put forward for an active steering system in order to achieve a high performance of yaw rate tracking with certain robustness. However, its problem is that the impact of the tire slip phenomenon on the trajectory tracking process is not fully taken into account. In addition, artificial intelligence model-based control methods have been studied. In these studies, the model predictive control (MPC) achieved satisfactory results [8, 9]. MPC is effective for solving the control problem of nonlinear and uncertain systems [10].

Automatic driving is also concerned with the velocity tracking problem, which is named as longitudinal control. Cruise control (CC) is widely used to adjust vehicle velocity. ACC is an extension of CC, which uses external information to control the vehicle velocity and distance. An ACC method based on the sliding mode control was verified by an experimental method in Ref. [11]. The work in Ref. [12] proposed longitudinal control based on a gain scheduling technique. In fact, for an internal combustion engine vehicle, the engine and characteristic of the transmission system are the key issues for vehicle control. Usually, the operation of a mechanical system is optimized by a controller. However, for electrical autonomous vehicles, their operation is achieved by the torque output characteristic of the motor. It is important to note that the stability analysis of a control method cannot be proved directly. The longitudinal control problem in Ref. [13] was solved directly by the method of Lyapunov. The method guaranteed the dynamic characteristics of the longitudinal model by means of a robust stability design. A longitudinal velocity control strategy based on GPS road information was proposed in Ref. [14]. The control strategy took into account the vehicle’s longitudinal and lateral acceleration and performance capabilities, which could effectively improve the vehicle safety performance under dangerous conditions, but the method was sensor sensitive. Ref. [15] presented a method to regulate the driving wheel slip ratio and used a coordinated cascade control method with two sliding-mode variable structure controllers. Ref. [16] presented a novel vehicular ACC system that could comprehensively address the issues of tracking capability, fuel economy, and driver desired response.

In the literature above, the longitudinal and lateral control problems are considered separately. On one hand, to solve the problem of lateral motion control, a large number of studies assumed that the velocity of the vehicle was a constant. On the other hand, most of the longitudinal control studies did not consider the lateral motion. However, a single lateral control or single longitudinal control cannot adapt to a complicated and fast-changing traffic environment. Therefore, in order to improve the control effect in a wide range of vehicles, longitudinal and lateral control must be considered simultaneously. In many literatures, different control methods are proposed to solve the problems, for example, the longitudinal and lateral control in Ref. [17] was based on the sliding mode. The idea was to obtain the tire steering angle by calculating the required tire force. However, a disadvantage is that this method is too complicated. The work in Ref. [18] described the design of driving control system, including both longitudinal and lateral controllers, for the Kuafu-II autonomous vehicle. Moreover, the controllers could achieve system robustness under diversified circumstances. Ref. [19] dealt with a longitudinal–lateral control based on the nonlinear backstepping control theory and adaptive fuzzy sliding mode control. The control inputs in Refs. [18] and [19] were the brake, throttle, and steering. In the references above, MPC, sliding mode control (SMC), gain-scheduling and feedback methods were usually used to solve the control of longitudinal and lateral vehicle dynamics.

At present, most of the relevant research works are carried out on longitudinal and lateral control separately, and the dynamic performance of the vehicle cannot be reflected in the actual operation. Thus, the tracking performance of the vehicle to the desired trajectory cannot be accurately characterized. On the other hand, the existing research on longitudinal and lateral joint control rarely consider the yaw stability of the vehicle. This work aims to overcome the issues when a vehicle is controlled in the lateral direction while considering the longitudinal velocity at the same time and takes into consideration the overall stability of the vehicle. A simple and clear global control structure is proposed in order to improve the active safety performance of autonomous vehicles.

To sum up, in this study, the longitudinal control is considered at the same time when studying the lateral control of the vehicle, and a kind of global control structure is established. The structure of this paper is as follows: Section 2 presents the main work of building the vehicle model that is needed for the controller design. In Section 3, the designing of the vehicle longitudinal controller and lateral controller is presented. The controllers have good robustness. In Section 4, the integrated control framework and driving force distribution method are proposed. Section 5 is on the virtual test verification.

Vehicle Model

In this research, a seven-degrees-of-freedom (7-DoFs) vehicle dynamic model was employed to study the motion characteristics during the trajectory tracking. The 7-DoFs were the longitudinal motion, lateral motion, yaw, and rotation of the four wheels. These motions have been able to reflect the dynamic characteristics of real vehicles accurately. The vehicle’s coordinate system and vehicle dynamic model [20] are shown in Figure 1.

$$m\ddot{x} = m\dot{y}\gamma + F_{xfl} + F_{xfr} + F_{xrl} + F_{xrr} ,$$
(1)
$$m\ddot{y} = - m\dot{x}\gamma + F_{yfl} + F_{yfr} + F_{yrl} + F_{yrr} ,$$
(2)
$$\begin{aligned} I\dot{\gamma } & = l_{f} \left( {F_{yfl} + F_{yfr} } \right) - l_{r} \left( {F_{yrl} + F_{yrr} } \right) \hfill \\ & \quad + \frac{{T_{f} }}{2}\left( {F_{xfl} - F_{xfr} } \right) + \frac{{T_{r} }}{2}\left( {F_{xrl} - F_{xrr} } \right), \hfill \\ \end{aligned}$$
(3)
Figure 1
figure 1

Vehicle dynamic model

where \(F_{xfl}\), \(F_{xfr}\), \(F_{xrl}\), and \(F_{xrr}\) are the tire longitudinal forces of the left front wheel, right front wheel, left rear wheel, and right rear wheel, respectively; \(F_{yfl}\), \(F_{yfr}\), \(F_{yrl}\), and \(F_{yrr}\) are tire lateral forces of the left front wheel, right front wheel, left rear wheel, and right rear wheel, respectively; \(l_{f}\) and \(l_{r}\) are the distances from the front axle to the centroid and from the rear axle to the centroid, respectively; \(T_{f}\) and \(T_{r}\) are the tracks of the front axis and rear axis, respectively; \(I\) is the moment of inertia; and \(\gamma\) is the yaw rate of the vehicle.

The vehicle overall coordinates are transferred as follows:

$$\dot{X} = \dot{x}\cos \psi - \dot{y}\sin \psi ,$$
(4)
$$\dot{Y} = \dot{x}\sin \psi + \dot{y}\cos \psi ,$$
(5)

where \(\psi\) is the yaw angle, and it is known that

$$\gamma = \dot{\psi }.$$
(6)

In the tire coordinate system, the longitudinal force and lateral force of the tires can be obtained from the following equations:

$$F_{xi} = F_{ti} \cos \delta_{i} - F_{si} \sin \delta_{i} ,$$
(7)
$$F_{yi} = F_{ti} \sin \delta_{i} + F_{si} \cos \delta_{i} ,$$
(8)

where \(i = fl,fr,rl,rr\).

The rotational motion of the wheel is given by the following equation [21]:

$$I_{w} \dot{\omega }_{i} = - R_{w} F_{ti} + T_{i} ,$$
(9)

where \(I_{w}\) is the moment of inertia of the tire, \(\omega_{i}\) is the tire angular velocity, \(T_{i}\) is the tire traction torque (braking torque), and \(R_{w}\) is the tire rolling radius.

Tire models can be divided into two kinds. The first is a semi-empirical equation or empirical equation type, which needs a large number of experimental data to describe the tire mechanical characteristic, such as the magic formula equation. The second is a theoretical model that uses a mathematical method to describe the structure and deformation of the tire. Moreover, it uses an expression to describe the relationship between the tire force and related variables, e.g., the Taehyun tire model, Gim model. In this study, we use the Dugoff tire model [22], from the second category of theoretical models, to describe the mechanical parameters of the vehicle model equation.

In the Dugoff tire model, all the tire sideslip angles are different, which can be expressed as αi

$$\alpha_{fl,r} = \delta_{fl,r} - \arctan \left( {\frac{V + ar}{{U \pm \frac{1}{2}T_{f} r}}} \right),$$
(10)
$$\alpha_{rl,r} = \delta_{rl,r} + \arctan \left( {\frac{br - V}{{U \pm \frac{1}{2}T_{r} r}}} \right).$$
(11)

In addition, the wheel considered here is not in a pure rolling situation, but includes a longitudinal slip ratio. The calculation is described as follows [23]:

$$S_{i} = \left\{ \begin{aligned} \frac{{R_{\omega } \omega_{i} - u_{i} }}{{u_{i} }} ,\;R_{\omega } \omega_{i} \le u_{i} , \hfill \\ \frac{{R_{\omega } \omega_{i} - u_{i} }}{{R_{\omega } \omega_{i} }} ,\;R_{\omega } \omega_{i} \ge u_{i} , \hfill \\ \end{aligned} \right.$$
(12)

where ui is the longitudinal velocity of the center of each wheel [24], and

$$u_{fl,r} = \left( {U \pm \frac{1}{2}T_{f} r} \right)\cos \delta_{fl,r} + \left( {V + ar} \right)\sin \delta_{fl,r} ,$$
(13)
$$u_{rl,r} = \left( {U \pm \frac{1}{2}T_{r} r} \right)\cos \delta_{rl,r} + \left( {V - br} \right)\sin \delta_{rl,r} .$$
(14)

In our study, the self-aligning torque is small, and its influence on the movement of the vehicle is little, which can be ignored. At this time, longitudinal force of a tire \(F_{ti}\) and lateral force \(F_{si}\) can be expressed as

$$F{}_{si} = \frac{{C_{\alpha } \tan \alpha_{i} }}{{1 - S_{i} }}f\left( \lambda \right),$$
(15)
$$F_{ti} = \frac{{C_{i} S}}{{1 - S_{i} }}f\left( \lambda \right),$$
(16)
$$\lambda = \frac{{\mu F_{zi} \left[ {1 - \varepsilon_{r} u_{i} \sqrt {S_{i}^{2} + \tan^{2} \alpha_{i} } } \right]\left( {1 - S_{i} } \right)}}{{2\sqrt {C_{i}^{2} S_{i}^{2} + C_{\alpha }^{2} \tan^{2} \alpha_{i} } }},$$
(17)
$$f (\lambda ) = \left\{ \begin{array}{l} \lambda ( 2- \lambda ) ,\;\lambda { < 1,} \hfill \\ 1 ,\;\lambda > 1 ,\hfill \\ \end{array} \right.$$
(18)

where \(C_{f}\) is the tire longitudinal stiffness, \(C_{\alpha }\) is the tire cornering stiffness, \(\varepsilon_{r}\) is the road friction coefficient reduction factor, and \(\mu\) is the road friction coefficient.

Longitudinal and Lateral Control

Longitudinal Control

The velocity of an autonomous vehicle is not static, and it is needed to adjust the velocity according to the road information. When such a vehicle turns, the velocity needs to be reduced appropriately so that the vehicle can safely go through curves. When the vehicle runs on a long straight road, the velocity needs to be improved appropriately to make the vehicle go through the road as quickly as possible. Thus, the longitudinal control of the vehicle is of great significance.

The following will introduce the design method of the vehicle longitudinal control.

Considering the resistance from Eq. (1), the following equation is obtained:

$$m\dot{v}_{x} = mv_{y} \gamma + F - F_{r} ,$$
(19)

where \(v_{x}\) and \(v_{y}\) are the longitudinal velocity and lateral velocity of the vehicle, respectively, \(F\) is the traction force of the vehicle, and \(F_{r}\) is the resistance of the vehicle. \(F\) is controlled by the driving force and braking force of the tire. \(F_{r}\) is given by the following equation [25]:

$$F_{r} = F_{a} + F_{g} + F_{\omega } ,$$
(20)
$$F_{a} = \frac{1}{2}\rho C_{d} v_{x}^{2} ,$$
(21)
$$F_{g} = mg\sin \theta ,$$
(22)
$$F_{\omega } = C_{r} mg,$$
(23)

where \(F_{a}\) is the air resistance, \(F_{g}\) is the grade resistance, \(F_{\omega }\) is the rolling resistance, \(\rho\) is the air density, \(C_{d}\) is the frontal area of the vehicle, \(g\) is the gravity acceleration,\(\theta\) is the slope, and \(C_{r}\) is the rolling resistance coefficient.

Taking Eq. (9) into account, we can get [26]:

$$I_{\omega } \dot{\omega } = - F_{t} R_{\omega } + T.$$
(24)

During the trajectory tracking in this study, the tire longitudinal force has an optimal distribution so as to have sufficient longitudinal force margin. Under this condition, the wheel slip can be kept in a narrow range so as to get the following relationship:

$$v_{x} = \omega R_{\omega } ,$$
(25)
$$F = F_{t} ,$$
(26)

where \(F_{t}\) is the longitudinal force of a tire. From Eqs. (24) and (26), the following equation is obtained:

$$F = \frac{1}{{R_{\omega } }}(T - I_{\omega } \dot{\omega }).$$
(27)

Substituting Eq. (27) into Eq. (19), we can get:

$$\left( {m + \frac{{I_{\omega } }}{{R_{\omega }^{2} }}} \right)\dot{v}_{x} = \frac{T}{{R_{\omega} }} - F_{r} + mv_{y} \gamma .$$
(28)

In this study, the sliding mode variable structure theory is applied for the longitudinal control of the vehicle. The driving force (braking force) of the tires is used as the control object. The tracking target is the longitudinal velocity of the vehicle. The tracking error is

$$e = v_{xd} - v_{x} ,$$
(29)

where \(v_{xd}\) is the reference velocity of the vehicle. The tracking error on the derivative of time is

$$\dot{e} = \dot{v}_{xd} - \dot{v}_{x} .$$
(30)

Then the switching function is

$$s = e,$$
(31)
$$\dot{s} = \dot{e} = \dot{v}_{xd} - \dot{v}_{x} = slaw,$$
(32)

where \(slaw\) is the reaching law.

Substituting Eq. (28) into the equation above, the control law is

$$\begin{aligned} T^{ * } & = \left( {mR_{\omega } + \frac{{I_{\omega } }}{{R_{\omega } }}} \right)\left( {\dot{v}_{xd} - slaw} \right) \hfill \\ & \quad + F_{r} R_{\omega } - R_{\omega } mv_{y} \gamma . \hfill \\ \end{aligned}$$
(33)

Taking the reaching law as:

$$slaw = - k_{e} e - k\text{sgn} (e),$$
(34)

where \(k_{e}\) and \(k\) are all integers. In order to ensure the stability of the system, we get following equation:

$$\frac{1}{2}\frac{\text{d}}{{{\text{d}}t}}s^{2} = s\dot{s} \le 0,$$
(35)

and

$$s\dot{s} = e (- k_{e} - k{\text{sgn(}}e ) ) { = } - k_{e} e^{2} - k\left| e \right|.$$
(36)

In order to meet the conditions of Eq. (35), both \(k_{e}\) and \(k\) need to be positive.

Substituting Eq. (34) into Eq. (33), finally the driving force (braking force) of the tires is given by

$$\begin{aligned} T^{ * } & = \left( {mR_{\omega } + \frac{{I_{\omega } }}{{R_{\omega } }}} \right)\left( {\dot{v}_{xd} + k_{e} e + k\text{sgn} \left( e \right)} \right) \hfill \\ & \quad + F_{r} R_{\omega } - R_{\omega } mv_{y} \gamma . \hfill \\ \end{aligned}$$
(37)

Lateral Control

In the previous section, the longitudinal control method of an autonomous vehicle is presented. In this section, we will introduce the lateral control method. The vehicle lateral control objectives are that the vehicle can track the trajectory and the vehicle has a good stability. However, it is difficult to achieve effectively both the control objectives if only a single wheel angle control is used. Therefore, it is necessary to control the wheel angle and yaw moment simultaneously so that the vehicle has a good yaw stability.

Trajectory Tracking

In this study, a linear time-varying model predictive control algorithm is used to control the vehicle. The control variable is the front wheel angle. A linear time-varying model predictive control algorithm is one of the most widely used methods in the field of MPC using a linear time-varying model.

If Eqs. (1)–(3) and the tire model are combined, we can establish a more complex vehicle dynamics model. However, this model is too complicated for the design of the model predictive controller. When the vehicle lateral acceleration is low, we can take the following equations to approximate the longitudinal force and lateral force of a tire [27]:

$$F_{t} = C_{l} s_{l} ,$$
(38)
$$F_{s} = C_{c} \alpha ,$$
(39)

where \(C_{l}\) is the tire longitudinal stiffness,\(C_{c}\) is the tire cornering stiffness, \(s_{l}\) is the tire slip, and \(\alpha\) is the tire slip angle. Because a general productive vehicle has a front wheel steering and commonly the control variable of MPC in trajectory tracking is the front wheel angle, the rear wheel angle is set to zero. Therefore, the slip angle calculation equation is as follows [28]:

$$\alpha_{f} = \frac{{\dot{y} + l_{f} \gamma }}{{\dot{x}}} - \delta_{f} ,$$
(40)
$$\alpha_{r} = \frac{{\dot{y} - l_{r} \gamma }}{{\dot{x}}},$$
(41)

where \(\alpha_{f}\) and \(\alpha_{r}\) are respectively the front and rear wheel slip angles and \(\delta_{f}\) is the front wheel steering angle. Because wheel angle \(\delta_{f}\) is small, we get:

$$\cos \delta_{f} = 1,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \sin \delta_{f} = \delta_{f} .$$
(42)

We substitute Eqs. (38)–(42) and Eqs. (7), (8) into Eqs. (1)–(3) and assume the vehicle is symmetrical. Thus, \(F_{xfl} = F_{xfr} ,F_{xrl} = F_{xrr}\). We can get:

$$m\ddot{y} = - m\dot{x}\gamma + 2\left[ {C_{cf} \left( {\delta_{f} - \frac{{\dot{y} + l_{f} \gamma }}{{\dot{x}}}} \right) + C_{cr} \frac{{b\gamma - \dot{y}}}{{\dot{x}}}} \right],$$
(43)
$$m\ddot{x} = m\dot{y}\gamma + 2\left[ {C_{lf} s_{l} + C_{cf} \left( {\delta_{f} - \frac{{\dot{y} + l_{f} \gamma }}{{\dot{x}}}} \right)\delta_{f} + C_{lr} s_{r} } \right],$$
(44)
$$I\dot{\gamma } = 2\left[ {l_{f} C_{cf} \left( {\delta_{f} - \frac{{\dot{y} + l_{f} \gamma }}{{\dot{x}}}} \right) - l_{r} C_{cr} \frac{{b\gamma - \dot{y}}}{{\dot{x}}}} \right],$$
(45)

where \(C_{cf} ,C_{cr}\) are the front and rear cornering stiffness, respectively, and \(s_{f} ,s_{r}\) are the front and rear tire slips, respectively. Equations (43)–(45) and Eqs. (4)–(6) are the vehicle dynamics model for predictive control [29]. In this system, the state is \(\xi_{dn} = \left[ {\dot{y},\dot{x},\psi ,\gamma ,Y,X} \right]\). The control variable is \(u_{dn} = \delta_{f}\).

The dynamic model above is a nonlinear system. In this study, a linear time-varying model predictive control is used. Therefore, it is necessary to linearize the nonlinear system.

At any time, the state for the reference system is

$$\dot{x}_{r} = f\left( {x_{r} ,u_{r} } \right).$$
(46)

At any point in the Taylor expansion, keeping only the first-order terms, we can obtain:

$$\dot{x} = f\left( {x_{r} ,u_{r} } \right) + A(t)\left( {x - x_{r} } \right) + B(t)\left( {u - u_{r} } \right),$$
(47)

where \(A\left( t \right)\) is the Jacobi matrix for \(f\) relative to \(x\) and \(B\left( t \right)\) is the Jacobi matrix for \(f\) relative to \(u\). Subtracting Eq. (47) from Eq. (46), we can get:

$$\dot{\tilde{x}} = A\left( t \right)\tilde{x} + B\left( t \right)\tilde{u},$$
(48)

where \(\tilde{x} = x - x_{r} ,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \tilde{u} = u - u_{r}\).

As the equation is continuous, it cannot be directly used in the design of the model predictive controller. Therefore, it is necessary to carry out discretization. In this study, a discrete method is used, i.e.,

$$A_{k,t} = I + TA\left( t \right),$$
(49)
$$B_{k,t} = TB\left( t \right).$$
(50)

From Eqs. (49), (50) and Eq. (48), the following equation can be obtained:

$$\tilde{x}\left( {k + 1} \right) = A_{k,t} \tilde{x}\left( k \right) + B_{k,t} \tilde{u}\left( k \right).$$
(51)

On this basis, we assume

$$\xi \left( {\left. k \right|t} \right) = \left[ {\begin{array}{*{20}c} {x\left( {\left. k \right|t} \right)} \\ {u\left( {\left. {k - 1} \right|t} \right)} \\ \end{array} } \right].$$
(52)

A new state space expression can be obtained as:

$$\xi \left( {\left. {k + 1} \right|t} \right) = \tilde{A}_{k,t} \xi \left( {\left. k \right|t} \right) + \tilde{B}_{k,t} \Delta u\left( {\left. k \right|t} \right),$$
(53)
$$\eta \left( {\left. k \right|t} \right) = \tilde{C}_{k,t} \xi \left( {\left. k \right|t} \right).$$
(54)

Above, the matrices are defined as follows:

$$\tilde{A}_{k,t} = \left[ {\begin{array}{*{20}c} {A_{k,t} } & {B_{k,t} } \\ 0 & {I_{m} } \\ \end{array} } \right],\;\tilde{B}_{k,t} = \left[ {\begin{array}{*{20}c} {B_{k,t} } \\ {I_{m} } \\ \end{array} } \right],\;\tilde{C}_{k,t} = \left[ {\begin{array}{*{20}c} {C_{k,t} } & 0 \\ \end{array} } \right].$$

Because the tracking target of the model predictive controller is a lateral displacement, we take

$$\tilde{C}_{k,t} = \left[ {\begin{array}{*{20}c} 0 & 0 & 0 & 0 & 1 & 0 \\ \end{array} } \right].$$

Therefore, \(\eta \left( {\left. k \right|t} \right) = Y\left( {\left. k \right|t} \right) - Y_{ref} \left( {\left. k \right|t} \right)\).

In order to further simplify the calculation, we assume that:

$$\tilde{A}_{k,t} = \tilde{A}_{t} ,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} k = t, \ldots ,t + N_{p} - 1,$$
$$\tilde{B}_{k,t} = \tilde{B}_{t} ,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} k = t, \ldots ,t + N_{p} - 1.$$

Assuming the system’s prediction time domain is \(N_{p}\) and control time domain is \(N_{c}\), the output expression of the system in the future [30] is:

$$Z\left( t \right) = \phi_{t} \xi \left( {\left. t \right|t} \right) + \varTheta_{t} \Delta U\left( t \right),$$
(55)

where

$$Z\left( t \right) = \left[ {\begin{array}{*{20}c} {\eta \left( {\left. {t + 1} \right|t} \right)} \\ {\eta \left( {\left. {t + 2} \right|t} \right)} \\ \vdots \\ {\eta \left( {\left. {t + N_{c} } \right|t} \right)} \\ \vdots \\ {\eta \left( {\left. {t + N_{p} } \right|t} \right)} \\ \end{array} } \right],\;\;\;\;\phi_{t} = \left[ {\begin{array}{*{20}c} {\tilde{C}_{t} \tilde{A}_{t} } \\ {\tilde{C}_{t} \tilde{A}_{t}^{2} } \\ \vdots \\ {\tilde{C}_{t} \tilde{A}_{t}^{{N_{c} }} } \\ \vdots \\ {\tilde{C}_{t} \tilde{A}_{t}^{{N_{p} }} } \\ \end{array} } \right],$$
$$\Delta U\left( t \right) = \left[ {\begin{array}{*{20}c} {\Delta u\left( {\left. t \right|t} \right)} \\ {\Delta u\left( {\left. {t + 1} \right|t} \right)} \\ \vdots \\ {\Delta u\left( {\left. {t + N_{c} } \right|t} \right)} \\ \end{array} } \right],\;\;\;\;\varTheta_{t} = \left[ {\begin{array}{*{20}c} {\tilde{C}_{t} \tilde{B}_{t} } & 0 & 0 & 0 \\ {\tilde{C}_{t} \tilde{A}_{t} \tilde{B}_{t} } & {\tilde{C}_{t} \tilde{B}_{t} } & 0 & 0 \\ \vdots & \vdots & \vdots & \vdots \\ {\tilde{C}_{t} \tilde{A}_{t}^{{N_{c} - 1}} \tilde{B}_{t} } & {\tilde{C}_{t} \tilde{A}_{t}^{{N_{c} - 2}} \tilde{B}_{t} } & \ldots & {\tilde{C}_{t} \tilde{B}_{t} } \\ {\tilde{C}_{t} \tilde{A}_{t}^{{N_{c} }} \tilde{B}_{t} } & {\tilde{C}_{t} \tilde{A}_{t}^{{N_{c} - 1}} \tilde{B}_{t} } & \ldots & {\tilde{C}_{t} \tilde{A}_{t} \tilde{B}_{t} } \\ \vdots & \vdots & \vdots & \vdots \\ {\tilde{C}_{t} \tilde{A}_{t}^{{N_{p} - 1}} \tilde{B}_{t} } & {\tilde{C}_{t} \tilde{A}_{t}^{{N_{p} - 2}} \tilde{B}_{t} } & \ldots & {\tilde{C}_{t} \tilde{A}_{t}^{{N_{p} - N_{c} - 1}} \tilde{B}_{t} } \\ \end{array} } \right].$$

Next, the optimization is carried out. \(Z\left( t \right)\) and \(U\left( t \right)\) can be chosen as the optimization objectives of the state, and we can also choose \(Z\left( t \right)\) and \(\Delta U\left( t \right)\). The former optimization uses the control variable as the state in the objective function. Its structure is simple and easy to implement. However, an obvious disadvantage is that the increment in the control variable cannot be accurately constrained. This study chooses the latter: the increment in the control variable is used as the state. Therefore, its optimization objective function is

$$J = \sum\limits_{i = 1}^{{N_{p} }} {\left\| {\eta \left( {\left. {t + i} \right|t} \right)} \right\|}_{Q}^{2} + \sum\limits_{i = 1}^{{N_{c} }} {\left\| {\Delta u\left( {\left. {t + i} \right|t} \right)} \right\|}_{R}^{2} + \rho \varepsilon^{2} ,$$
(56)

where the first item is the effect of the system tracking the reference trajectory, and the second item reflects the stability of the increment in the control variable. \(Q,R\) are the respective weight coefficients of the two items. Because the model is time-varying, we cannot guarantee that every time the optimization goal can yield a feasible solution. Therefore, we need to add a relaxation factor to the optimization objective, i.e., \(\rho \varepsilon^{2}\).

Taking \(D\left( t \right) = \phi_{t} \xi \left( {\left. t \right|t} \right)\), the optimization objective can be rewritten as:

$$J = \left[ {\Delta U\left( t \right)^{\text{T}} ,\varepsilon } \right]H_{t} \left[ {\Delta U\left( t \right)^{\text{T}} ,\varepsilon } \right]^{\text{T}} {\kern 1pt} + G_{t} \left[ {\Delta U\left( t \right)^{\text{T}} ,\varepsilon } \right]^{\text{T}} + L_{t} ,$$
(57)

where \(H_{t} = \left[ {\begin{array}{*{20}c} {\varTheta_{t}^{\text{T}} Q\varTheta_{t} } & 0 \\ 0 & \rho \\ \end{array} } \right],\) \(G_{t} = \left[ {\begin{array}{*{20}c} {2D\left( t \right)^{\text{T}} Q\varTheta_{t} } & 0 \\ \end{array} } \right],\) and \(L_{t} = D\left( t \right)^{\text{T}} QD\left( t \right).\)

In the equation above, \(L_{t}\) is a constant. Therefore, every step of the optimization problem with constraints in the model prediction is equivalent to solving the following quadratic programming problems:

$$\begin{aligned} & \mathop {\text{min} }\limits_{{\Delta U_{t} ,\varepsilon }} \left\{ {\left[ {\Delta U\left( t \right)^{\text{T}} ,\varepsilon } \right]H_{t} \left[ {\Delta U\left( t \right)^{\text{T}} ,\varepsilon } \right]^{\text{T}} + G_{t} \left[ {\Delta U\left( t \right)^{\text{T}} ,\varepsilon } \right]^{\text{T}} } \right\}, \hfill \\ & {\text{s}} . {\text{t}} ., \Delta U_{\text{min} } \le \Delta U\left( k \right) \le \Delta U_{\text{max} } , \hfill \\ & U_{\text{min} } \le u\left( {t - 1} \right) + \sum\limits_{i = 1}^{k} {\Delta U\left( i \right)} \le U_{\text{max} } . \hfill \\ \end{aligned}$$
(58)

The optimal solution of the design variable is the control increment sequence of the vehicle system currently:

$$\Delta {\varvec{U}}_{t}^{ * } = \left[ {\begin{array}{*{20}c} {\Delta {\varvec{u}}_{t}^{ * } } & {\Delta {\varvec{u}}_{t + 1}^{ * } } & \cdots & {\Delta {\varvec{u}}_{{t + N_{c} - 1}}^{ * } } \\ \end{array} } \right]^{\text{T}} .$$
(59)

However, the MPC algorithm is not the type in which the vehicle system’s control increment sequence, \(\Delta {\varvec{U}}_{t}^{ * }\), is applied to the system one by one, instead the current control increment to the system is:

$${\varvec{u}}(t) = {\varvec{u}}(t - 1) + \Delta {\varvec{u}}_{t}^{ * } .$$
(60)

Until the next moment, the prediction of the time domain and control time domain is updated over time. Through such cyclic steps, we can realize the autonomous vehicle’s trajectory tracking control.

Vehicle Stability Control

The AFS (active front steering) technology changes the tire sideslip angle through the active control of the front wheel steering angle to apply a lateral force to the vehicle and then completes the steering motion. Therefore, the forces during the steering are provided by the tire lateral force. However, when the vehicle is under extreme conditions, the lateral acceleration, sideslip angle, and yaw rate will be large. At this time, the tire lateral force is easy to reach saturation. Only changing the tire sideslip angle cannot effectively improve the tire cornering force; therefore, it is not enough to provide the vehicle with the desired lateral force for steering. At this time, the simple active front steering control cannot improve the vehicle’s yaw stability. We can control each tire by driving or braking and adjusting the distribution of the longitudinal force of the tire to affect the torque of the vehicle in order to solve the problem of vehicle instability caused by the tire lateral force saturation and to improve the vehicle yaw stability. This is called the direct yaw moment control [31].

Because the sliding mode can be set in advance and has nothing to do with the object parameters and disturbances, this makes the sliding mode variable structure control response quick and insensitive to the parameter variations and disturbances. Therefore, sliding mode variable structure control is convenient to realize. Therefore, we use it to calculate the yaw moment.

In order to redistribute the longitudinal forces, make \(\Delta M = \frac{{T_{f} }}{2}\left( {F_{xfl} - F_{xfr} } \right) + \frac{{T_{r} }}{2}\left( {F_{xrl} - F_{xrr} } \right).\)

Equation (3) is transformed into the following form [32]:

$$I\dot{\gamma } = l_{f} \left( {F_{yfl} + F_{yfr} } \right) - l_{r} \left( {F_{yrl} + F_{yrr} } \right) + \Delta M,$$
(61)

where \(\Delta M\) is the direct yaw moment. Therefore, Eq. (45) gets the following form:

$$I\dot{\gamma } = 2\left[ {l_{f} C_{cf} \left( {\delta_{f} - \frac{{\dot{y} + l_{f} \gamma }}{{\dot{x}}}} \right) - l_{r} C_{cr} \frac{{b\gamma - \dot{y}}}{{\dot{x}}}} \right]{ + }\Delta M.$$
(62)

The controller is realized by using the sliding mode variable structure algorithm. Considering the error from the yaw rate tracking:

$$e_{e} = \gamma_{d} - \gamma ,$$
(63)

where \(\gamma_{d}\) is the reference yaw rate [33]. Assuming \(C_{e} = \left[ {\begin{array}{*{20}c} {c_{1} } & 1 \\ \end{array} } \right]\) and error vector \(E_{e} = \left[ {\begin{array}{*{20}c} {\int {e_{e} } } & e \\ \end{array} } \right]^{\text{T}} ,\) its switching function is:

$$s = C_{e} E_{e} = c_{1} \int {e_{e} } + e_{e} ,$$
(64)
$$\dot{s} = c_{1} e_{e} + \dot{e}_{e} = c_{1} e_{e} + \dot{\gamma }_{d} - \dot{\gamma } = slaw{ = } - c_{2} {\text{sat}}\left( s \right) - c_{3} s,$$
(65)

where \(c_{1}\), \(c_{2}\), \(c_{3}\) are positive integers and \({\text{sat}}\left( s \right)\) is the saturation function.

The control rate is

$$\begin{aligned} \Delta M^{ * }& = (c_{1} e_{e} + \dot{\gamma }_{d} - slaw)I - l_{f} \left( {F_{yfl} + F_{yfr} } \right) \hfill \\ &\quad { + }l_{r} \left( {F_{yrl} + F_{yrr} } \right). \hfill \\ \end{aligned}$$
(66)

Driving Force Distribution

In Section 3.2, the difference between the actual vehicle motion and desired vehicle motion was adjusted by direct yaw moment \(\Delta M^{ * }\). Moreover, the longitudinal velocity of the vehicle was controlled by the total driving force. The direct yaw moment and driving force (the braking force) were correctly distributed in the four tires. All kinds of control strategies are closely linked together (its structure is shown in Figure 2). It is an important problem for the present study to achieve a more reasonable optimization of the vehicle power to ensure the condition that direct yaw moment \(\Delta M^{ * }\) is correctly executed at the same time. The full tire longitudinal force distribution algorithm will optimize the distribution of direct yaw moment \(\Delta M^{ * }\) and driving force (braking force) \(F_{xq}\), which are calculated to make the vehicle stable, where \(F_{xq} = T^{ * } /R_{\omega }\). Moreover, in the calculation, the longitudinal forces of the four wheels are the control targets for improving the vehicle handling and stability.

Figure 2
figure 2

Control strategy structure diagram

In order to ensure that the vehicle has good stability, optimization objectives for the characterization of the load state of the road are introduced in the longitudinal force distribution, as shown below:

$$\text{min} J = \sum\limits_{i = 1}^{4} {\frac{{F_{xi}^{2} + F_{yi}^{2} }}{{(\mu F_{zi} )^{2} }}} .$$
(67)

Because the lateral forces of the tires cannot be controlled directly, the control strategy of this study is to simplify the optimization objective given in Eq. (67). Considering the difference of each tire at the same time, the optimization goal is changed to

$$\text{min} J = \sum\limits_{i = 1}^{4} {\frac{{c_{i} (T_{i} /R_{w} )^{2} }}{{(\mu F_{zi} )^{2} }} = } \sum\limits_{i = 1}^{4} {\frac{{c_{i} T_{i}^{2} }}{{(\mu F_{zi} R_{w} )^{2} }}} .$$
(68)

Owing to the restrictions of the road surface adhesion and vertical load, the tire longitudinal forces cannot be infinite. Therefore, they need to be restricted. The limiting condition is as follows:

$${\kern 1pt} {\kern 1pt} - A_{i} \le F_{xi} \le A_{i} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \left( {A_{i} = \sqrt {\mu^{2} F_{zi}^{2} - F_{yi}^{2} } } \right).$$
(69)

Therefore, the four-tire longitudinal force distribution module can be simplified to quadratic programming problems with linear constraints.

$$\left\{ \begin{aligned}& \text{min} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} f = \frac{{c_{1} F_{xfl}^{2} }}{{\mu^{2} F_{zfl}^{2} }} + \frac{{c_{2} F_{xfr}^{2} }}{{\mu^{2} F_{zfr}^{2} }} + \frac{{c_{3} F_{xrl}^{2} }}{{\mu^{2} F_{zrl}^{2} }} + \frac{{c_{4} F_{xrr}^{2} }}{{\mu^{2} F_{zrr}^{2} }}, \hfill \\ & {\text{s}} . {\text{t}} . ,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} F_{xfl} + F_{xfr} + F_{xrl} + F_{xrr} = F_{xq} , \hfill \\ &{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \left( {F_{xfl} - F_{xfr} } \right)T_{f} /2 + \left( {F_{xrl} - F_{xrr} } \right)T_{r} /2 = \Delta M^{ * } , \hfill \\ &{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} - A_{i} \le F_{xi} \le A_{i} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \left( {A_{i} = \sqrt {\mu^{2} F_{zi}^{2} - F_{yi}^{2} } } \right), \hfill \\ \end{aligned} \right.$$
(70)

where \(A_{i}\)(i = \(fl,fr,rl,rr\)) is the current state of the tire longitudinal force margin and \(c_{i}\)(i = \(fl,fr,rl,rr\)) is the weight of the margin. With the load transfer during steering and driving/braking, the increased vertical load \(F_{zij}\) on the tires will be distributed with more longitudinal/lateral forces.

Figure 3 shows the four-tire longitudinal force distribution algorithm diagram. The four-tire longitudinal force distribution control systems contain three parts. They are quadratic programming, a control target adjustment system, and a weight coefficient regulating system. The control objective first determines whether the constraint condition in Eq. (70) is satisfied. If the solution space exists, it goes directly to the next layer of the weight coefficient regulating system. If the constraint is not satisfied, the control objective will be adjusted, and then the weight coefficient regulating system is entered. Finally, the longitudinal forces of the four tires are solved by the constrained optimization algorithm.

Figure 3
figure 3

Four-tire longitudinal force distribution algorithm flow chart

As mentioned above, the existence of the solution space in Eq. (70) determines whether the corresponding constrained optimization algorithm can be used. In order to simplify the equation, new parameters \(S_{1} = F_{xfl} + F_{xrl}\) and \(S_{2} = F_{xfr} + F_{xrr}\) are introduced. Typically, the front and rear tracks are the same, i.e., \(T_{f} = T_{r}\). Therefore, \(F_{xm} = 2\Delta M^{ * } /T_{f}\). Substituting the above equation in Eq. (70), we can get:

$$\left\{ \begin{aligned} S_{1} = \frac{{F_{xq} + F_{xm} }}{2}, \hfill \\ S_{2} = \frac{{F_{xq} - F_{xm} }}{2}. \hfill \\ \end{aligned} \right.$$
(71)

After the elimination of \(F_{xrl}\) and \(F_{xrr}\), Eq. (70) can be rewritten as follows:

$$\left\{ \begin{aligned} &- A_{1} \le F_{xfl} \le A_{1} , \hfill \\ & - A_{3} + \frac{{F_{xq} + F_{xm} }}{2} \le F_{xfl} \le A_{3} + \frac{{F_{xq} + F_{xm} }}{2}, \hfill \\ &- A_{2} \le F_{xfr} \le A_{2} , \hfill \\ &- A_{4} + \frac{{F_{xq} - F_{xm} }}{2} \le F_{xfr} \le A_{4} + \frac{{F_{xq} - F_{xm} }}{2}. \hfill \\ \end{aligned} \right.$$
(72)

From the equation above, the necessary and sufficient condition for the existence of the solution space is:

$$\left\{ \begin{aligned} - 2\left( {A_{1} + A_{3} } \right) \le F_{xq} + F_{xm} \le 2\left( {A_{1} + A_{3} } \right), \hfill \\ - 2\left( {A_{2} + A_{4} } \right) \le F_{xq} - F_{xm} \le 2\left( {A_{2} + A_{4} } \right). \hfill \\ \end{aligned} \right.$$
(73)

When Eq. (73) is satisfied by direct yaw moment \(F_{xm}\) and longitudinal driving/braking force \(F_{xq}\), the solution space of Eq. (70) exists. At the same time, \(F_{xm}\) and \(F_{xq}\) are objects that can be adjusted. If the system can actively adjust \(F_{xm}\) and \(F_{xq}\) or one of them according to the requirement under different driving conditions, we can guarantee that the solution set is not empty.

The algorithm above is concerned with which goals should be met: the direct yaw moment or the vehicle’s longitudinal dynamics. When the velocity is high, the road adhesion performance is poor and the algorithm should reduce the longitudinal dynamic target constraints and try to ensure there is enough direct yaw moment. On the contrary, when the velocity is low, the road adhesion is good and the needed direct yaw moment is small. At this point, the yaw moment target should be adjusted and the longitudinal dynamic target should be tried to keep unchanged in order to maintain a good dynamic performance.

The adjusted targets are set as \(F_{xq}^{{\prime }}\) and \(F_{xm}^{{\prime }}\). The relationships between the original and adjusted targets are as follows:

$$\left\{ \begin{aligned} &F_{xq}^{\prime } = k_{x} F_{xq} , \hfill \\ &F_{xm}^{\prime } = k_{z} F_{xm} . \hfill \\ \end{aligned} \right.$$
(74)

In order to ensure that the targets are realistic, \(0 \le k_{x} ,k_{z} \le 1\) are required. The adjustment of the control objectives can be expressed by the multi-objective optimization problem:

$$\left\{ \begin{aligned} & \text{max} {\kern 1pt} {\kern 1pt} \left[ {k_{x} ,k_{z} } \right], \hfill \\ & 0 \le k_{x} \le 1, \hfill \\ & 0 \le k_{z} \le 1, \hfill \\ & - 2\left( {A_{1} + A_{3} } \right) \le k_{x} F_{xq} + k_{z} F_{xm} \le 2\left( {A_{1} + A_{3} } \right), \hfill \\ & - 2\left( {A_{2} + A_{4} } \right) \le k_{x} F_{xq} - k_{z} F_{xm} \le 2\left( {A_{2} + A_{4} } \right). \hfill \\ \end{aligned} \right.$$
(75)

In summary, the multi-objective constrained optimization problem can be divided into 3 parts:

  1. (1)

    In order to make \(k_{z}\) as large as possible and then make \(k_{x}\) large enough, adjust \(F_{xq}\) first.

  2. (2)

    In order to make \(k_{x}\) as large as possible and then make \(k_{z}\) large enough, adjust \(F_{xm}\) first.

  3. (3)

    In the intermediate process, weight coefficient \(\eta\) (0 < \(\eta\) < 1) is introduced. The objective function of the multi-objective constrained optimization problem can be written as \(\text{max} {\kern 1pt} {\kern 1pt} \eta k_{x} + \left( {1 - \eta } \right)k_{z}\).

Thus, it can be solved as a single objective optimization problem instead of as a multi-objective optimization problem. The adjustment of the weight coefficient, \(\lambda\), depends on the velocity and road adhesion.

After the dynamic optimization, there must be a solution to the original quadratic programming problems. \(S_{1}\) and \(S_{2}\) are introduced. Thus, \(F_{xrl} = S_{1} - F_{xfl}\), \(F_{xrr} = S_{2} - F_{xfr}\). For simplification, \(k_{i} = 1/\left( {\mu^{2} F_{zi}^{2} } \right)\) is introduced again. Equation (70) can be equivalent to:

$$\left\{ \begin{aligned} & \text{min} \left[ {\left( {k_{fl} + k_{rl} } \right)\left( {F_{xfl} - \frac{{k_{rl} S_{1} }}{{k_{fl} + k_{rl} }}} \right)^{2} + \frac{{k_{fl} k_{rl} S_{1}^{2} }}{{k_{fl} + k_{rl} }}} \right. \hfill \\ & \quad \left. { + \left( {k_{fr} + k_{rr} } \right)\left( {F_{xfr} - \frac{{k_{rr} S_{2} }}{{k_{fr} + k_{rr} }}} \right)^{2} + \frac{{k_{fr} k_{rr} S_{2}^{2} }}{{k_{fr} + k_{rr} }}} \right], \hfill \\ & - A_{1} \le F_{xfl} \le A_{1} , \hfill \\ & - A_{3} + S_{1} \le F_{xfl} \le A_{3} + S_{1} , \hfill \\ & - A_{2} \le F_{xfr} \le A_{2} , \hfill \\ & - A_{4} + S_{2} \le F_{xfr} \le A_{4} + S_{2} . \hfill \\ \end{aligned} \right.$$
(76)

From the above, the solution space of the quadratic function with constraints is reduced to:

$$\left\{ \begin{aligned} m_{1} = \left\{ {\text{max} \left( { - A_{1} , - A_{3} + S_{1} } \right) \le x \le \text{min} \left( {A_{1} ,A_{3} + S_{1} } \right)} \right\}, \hfill \\ m_{2} = \left\{ {\text{max} \left( { - A_{2} , - A_{4} + S_{1} } \right) \le x \le \text{min} \left( {A_{2} ,A_{4} + S_{1} } \right)} \right\}. \hfill \\ \end{aligned} \right.$$
(77)

Therefore, the results are presented in Table 1.

Table 1 Solution

Virtual Test Verification

To verify the efficiency of the proposed control strategy structures, the dynamic performance of a vehicle trajectory tracking is simulated with an 8-DoFs vehicle model by using the MATLAB/ Simulink software, and the main parameters of the vehicle model are listed in Table 2. This study uses the typical lane change virtual test environment to inspect the trajectory tracking ability of the autonomous vehicle. The reference trajectory of the lane change is shown in Figure 4.

Table 2 Main parameters used in the simulation
Figure 4
figure 4

Reference trajectory

Constant Velocity Condition

In this study, we first carried out the research of trajectory tracking with a constant velocity. The vehicle velocity was set as 9 m/s, 13 m/s, and 17 m/s, and the vehicle trajectory tracking and dynamic response were investigated using different road friction coefficients.

μ = 0.9

Figure 5(a)–(f) show the simulation results when the road friction coefficient is 0.9.

Figure 5
figure 5

Simulation results under μ = 0.9

As is shown in Figure 5(a), because of the high road friction coefficient, the friction force between the ground and tires is enough to make the vehicle steer quickly and accurately, and the trajectory error of 17 m/s at the peak is slightly large. However, under velocities of 9 m/s and 13 m/s, the vehicle can track the reference trajectory accurately. From Figure 5(b), we can see that when the velocities are 9 m/s and 13 m/s, the front wheel steering angle, which is calculated by the MPC controller, is smooth, but when the velocity is 17 m/s, the front steering angle slightly fluctuates. Moreover, as the velocity increases, in order to enable the vehicle to track the reference trajectory, the vehicle needs to steer in advance. Figure 5(c) shows that in general the sideslip angle is within a small range during the maneuvers; the proposed method can effectively control the vehicle sideslip angle at a high velocity by a direct yaw moment control, which greatly reduces the possibility of skidding. From Figure 5(d)–(f), it is known that the yaw rate can be tracked well and the vehicle has a good yaw stability with the high road friction coefficient.

μ = 0.3

Figure 6(a)–(f) show the simulation results when the vehicle follows a desired trajectory on an ice-snow covered road (μ = 0.3). Comparing Figure 6(a) and Figure 5(a) shows that the vehicle can track the reference trajectory well at a low velocity. However, when the velocity increases to 17 m/s and travels to a large curvature of the road, the trajectory error becomes bigger under the low road friction coefficient. The reason is that the road cannot provide enough tire lateral forces to make the vehicle steer in accordance to the desired trajectory in a short period of time. From Figure 6(b) it is known that because of the poor road conditions, when the velocity reaches 13 m/s, the front steering angle has a slight jitter, but in general, the front steering angle is still controllable. Figure 6(c) shows that in spite of the poor road conditions, the sideslip angles remain at lower values, even when the vehicle’s velocity reaches 17 m/s. The maximum values of the sideslip angles do not exceed 2°, which is within the scope of security, and the vehicle is under control. Figure 6(d)–(f) show that the effect of the yaw rate tracking is good at 9 m/s, but when the velocity reaches 13 m/s and the front steering angle becomes large, the tire forces reach saturation and the reference yaw rate cannot be tracked well. Owing to the low road friction coefficient, the road is unable to provide sufficient yaw moment.

Figure 6
figure 6

Simulation results under μ = 0.3

Time-varying Velocity Condition

In actual situations, a vehicle should drive or brake according to the road conditions, such as when a vehicle runs into a large curvature bend, slowing down in advance is necessary. After a vehicle go through a bend and enters a straight road, the necessary acceleration should be applied. Therefore, in this study, a time-varying velocity condition is considered. According to the lane change, we design the reference velocity, as shown in Figure 7.

Figure 7
figure 7

Reference velocities under a time-varying velocity condition

The vehicle speed is determined by the road environment, and the most important factor is the curvature of the road. According to the curvature of the road, the reference speed of the vehicle is calculated by [25]:

$$u_{\text{max} } \le \sqrt {\frac{0.4g}{{\rho_{r} }}} ,$$
(78)

where \(\rho_{r}\) is the curvature of the road and \(g\) is the gravitational acceleration. However, the road curvature changes dramatically in a virtual test. If the maximum value of the longitudinal velocity acquires any value during the simulation, the changing rate of the velocity is too fast, so that the acceleration of the vehicle is too large. This is not in accordance with the actual situation; therefore, some of the key points of maximum longitudinal velocity were employed, and then a linear change was made between the key points. Based on this principle, the reference longitudinal velocity was obtained, as shown in Figure 7.

Figure 8(a)–(f) show the results when the road friction coefficient is 0.4 and 0.8.

Figure 8
figure 8

Simulation results under a time-varying velocity condition

From Figure 8(a), it can be seen that the vehicle has a good tracking performance on the road; no matter the friction coefficient is high or low, the vehicle on a good road surface performs better.

Figure 8(b) shows that the vehicle has a good performance for tracking the time-varying velocity on either road surfaces, which also verifies that the longitudinal velocity control method proposed is efficient and accurate under various road conditions.

According to Figure 8(c), it can be known that the peak value of the steering angle is small and the steering motion is stable at a high road friction coefficient. However, a bigger steering angle is needed to track the trajectory in the low road friction coefficient condition.

Figure 8(d) and (a) show that the vehicle’s tracking performance is improved at the cost of the sideslip angle at the high road friction coefficient. This expense is acceptable because a slight increase in the vehicle’s sideslip angle does not cause a great impact on the vehicle stability at the high road friction coefficient.

According to Figure 8(e), (f), the reference yaw rate is tracked well at the high road friction coefficient, but at the low road friction coefficient, the road cannot provide enough tire forces. Therefore, when the steering angle is big, the reference yaw rate cannot be tracked very well.

Effect of Yaw Control

Figure 9(a)–(e) show the results when the road friction coefficient is 0.6. The results indicate the influence of the yaw control on the vehicle.

Figure 9
figure 9

Simulation results under DYC

According to Figure 9(a), the yaw control contributes to tracking the trajectory. Figure 9(b) shows that the yaw control reduces the peak value of the front wheel steering angle, and reduces the burden of the driver. From Figure 9(c), we can see that the yaw control reduces the sideslip angles and reduce the risk of sideslip and skidding on a bad road. It also shows that the proposed algorithm improves the vehicle’s handling and stability. From Figure 9(d), (e), it is seen that the real yaw rate cannot track the reference yaw rate in the curve without yaw control; However, the vehicle has a good tracking performance with yaw control. Therefore, the proposed method in this work is effective.

Conclusions

  1. (1)

    In this research, a control framework is proposed with a combination of longitudinal–lateral control and yaw moment control for an autonomous vehicle. Vehicle longitudinal control, named as the velocity tracking problem, is solved by a sliding mode variable structure control method. Vehicle lateral control, named as the vehicle trajectory tracking problem, is solved by a predictive control method based on a linear time-varying model.

  2. (2)

    In order to improve the vehicle yaw stability during trajectory tracking, the yaw moment control is integrated into the longitudinal–lateral control system. The trajectory tracking and yaw stability are considered at the same time.

  3. (3)

    The proposed lateral control makes the vehicle track the trajectory and maintain the yaw stability. The vehicle can accurately track the expected trajectory and velocity, even if a bend has a large curvature and the reference velocity is time-varying.

  4. (4)

    The control of the direct yaw moment in the framework allows a reasonable distribution of the driving force of the tire. During trajectory tracking, it reduces the burden of the driver. At the same time, it greatly improves the vehicle’s handling and stability performance.

References

  1. U Ozguner, T Acarman, K Redmill. Autonomous ground vehicles. Boston: Artech House, 2011.

    Google Scholar 

  2. Y G Liu, C Pan, H L Gao, et al. Cooperative spacing control for interconnected vehicle systems with input delays. IEEE Transactions on Vehicular Technology, 2017, 66(12): 10692–10704.

    Article  Google Scholar 

  3. P Song, B L Gao, S G Xie, et al. Optimal predictive control for path following of a full drive-by-wire vehicle at varying speeds. Chinese Journal of Mechanical Engineering, 2017, 30(3): 711–721.

    Article  Google Scholar 

  4. M Yue, X Q Hou, W B Hou. Composite path tracking control for tractor–trailer vehicles via constrained model predictive control and direct adaptive fuzzy techniques. Journal of Dynamic Systems Measurement & Control-Trans of the ASME, 2017, 139(11): 111008.

    Article  Google Scholar 

  5. Z Z Chu, D Q Zhu, S X Yang. Observer-based adaptive neural network trajectory tracking control for remotely operated vehicle. IEEE Transactions on Neural Networks and Learning Systems, 2017, 28(7): 1633–1645.

    Article  MathSciNet  Google Scholar 

  6. H Zhang, X J Zhang, J M Wang. Robust gain-scheduling energy-to-peak control of vehicle lateral dynamics stabilisation. Vehicle System Dynamics, 2014, 52(3): 309–340.

    Article  Google Scholar 

  7. J Wu, Y H Liu, F B Wang, et al. Vehicle active steering control research based on two-DOF robust internal model control. Chinese Journal of Mechanical Engineering, 2016, 29(4): 739–746.

    Article  Google Scholar 

  8. M Jalali, S Khosravani, A Khajepour, et al. Model predictive control of vehicle stability using coordinated active steering and differential brakes. Mechatronics, 2017, 48: 30–41.

    Article  Google Scholar 

  9. J Jie, A Khajepour, W W Melek, et al. Path planning and tracking for vehicle collision avoidance based on model predictive control with multiconstraints. IEEE Transactions on Vehicular Technology, 2017, 66(2): 952–964.

    Article  Google Scholar 

  10. X Q Sun, Y F Cai, S H Wang. A hybrid approach to modeling and control of vehicle height for electronically controlled air suspension. Chinese Journal of Mechanical Engineering, 2016, 29(1): 152–162.

    Article  Google Scholar 

  11. X G Guo, J L Wang, F Liao, et al. Distributed adaptive sliding mode control strategy for vehicle-following systems with nonlinear acceleration uncertainties. IEEE Transactions on Vehicular Technology, 2017, 66(2): 981–991.

    Article  Google Scholar 

  12. P Shakouri, J Czeczot, A Ordys. Simulation validation of three nonlinear model-based controllers in the adaptive cruise control system. Journal of Intelligent & Robotic Systems, 2015, 80(2): 207–229.

    Article  Google Scholar 

  13. K E Majdoub, F Giri, H Ouadi, et al. Vehicle longitudinal motion modeling for nonlinear control. Control Engineering Practice, 2012, 20(1): 69–81.

    Article  Google Scholar 

  14. H A Hamersma, P S Els. Longitudinal vehicle dynamics control for improved vehicle safety. Journal of Terramechanics, 2014, 54: 19–36.

    Article  Google Scholar 

  15. M X Kang, L Li, H Z Li, et al. Coordinated vehicle traction control based on engine torque and brake pressure under complicated road conditions. Vehicle System Dynamics, 2012, 50(9): 1473–1494.

    Article  Google Scholar 

  16. S B Li, K Q Li, Rajamani R, et al. Model predictive multi-objective vehicular adaptive cruise control. IEEE Transactions on Control Systems Technology, 2011, 19(3): 556–566.

  17. A Dias, E Jullierme, P Silva, et al. Longitudinal model identification and velocity control of an autonomous car. IEEE Transactions on Intelligent Transportation Systems, 2015, 16(2): 776–786.

    Google Scholar 

  18. L H Xu, Y Z Wang, H B Sun, et al. Integrated longitudinal and lateral control for Kuafu-II autonomous vehicle. IEEE Transactions on Intelligent Transportation Systems, 2016, 17(7): 2032–2041.

    Article  Google Scholar 

  19. J H Guo, P Hu, R B Wang. Nonlinear coordinated steering and braking control of vision-based autonomous vehicles in emergency obstacle avoidance. IEEE Transactions on Intelligent Transportation Systems, 2016, 17(11): 3230–3240.

    Article  Google Scholar 

  20. J Chen, J Song, L Li, et al. A novel pre-control method of vehicle dynamics stability based on critical stable velocity during transient steering maneuvering. Chinese Journal of Mechanical Engineering, 2016, 29(3): 475–485.

    Article  MathSciNet  Google Scholar 

  21. L Li, G Jia, J Chen, et al. A novel vehicle dynamics stability control algorithm based on the hierarchical strategy with constrain of nonlinear tyre forces. Vehicle System Dynamics, 2015, 53(8): 1093–1116.

    Article  Google Scholar 

  22. H Lu, Q W Liu, Y Shi, et al. Estimation of vehicle sideslip angle and individual tyre-road forces based on tyre friction circle concept. International Journal of Vehicle Autonomous Systems, 2017, 13(4): 274–305.

    Article  Google Scholar 

  23. L Li, X Ran, K H Wu, et al. A novel fuzzy logic correctional algorithm for traction control systems on uneven low-friction road conditions. Vehicle System Dynamics, 2015, 53(6): 711–733.

    Article  Google Scholar 

  24. H J Zhu, L Li, M J Jin, et al. Real-time yaw rate prediction based on a non-linear model and feedback compensation for vehicle dynamics control. Proceedings of the Institution of Mechanical Engineers, Part D: Journal of Automobile Engineering, 2013, 227(10): 1431–1445.

    Google Scholar 

  25. Attia R, Orjuela R, Basset M. Combined longitudinal and lateral control for automated vehicle guidance. Vehicle System Dynamics, 2014, 52(2): 261–279.

    Article  Google Scholar 

  26. H Z Li, L Li, L He, et al. PID plus fuzzy logic method for torque control in traction control system. International Journal of Automotive Technology, 2012, 13(3): 441–450.

    Article  Google Scholar 

  27. L Li, G Jia, X Ran, et al. A variable structure extended Kalman filter for vehicle sideslip angle estimation on a low friction road. Vehicle System Dynamics, 2014, 52(52): 280–308.

    Article  Google Scholar 

  28. L Li, H Z LI, X L Zhang, et al. Real-time tire parameters observer for vehicle dynamics stability control. Chinese Journal of Mechanical Engineering, 2010, 23(5): 620–626.

  29. Falcone P, Borrelli F, Asgari J, et al. Predictive active steering control for autonomous vehicle systems. Control Systems Technology, IEEE Transactions on, 2007, 15(3): 566–580.

    Article  Google Scholar 

  30. P Wang, H Chen, X P Yang, et al. Design and analysis of a model predictive controller for active queue management. Isa Transactions, 2012, 51(1): 120–131.

    Article  Google Scholar 

  31. Z P Yu, B Leng, L Xiong, et al. Direct yaw moment control for distributed drive electric vehicle handling performance improvement. Chinese Journal of Mechanical Engineering, 2016, 29(3): 486–497.

    Article  Google Scholar 

  32. H Zhang, G G Zhang, J M Wang. H∞ observer design for LPV systems with uncertain measurements on scheduling variables: Application to an electric ground vehicle. IEEE/ASME Transactions on Mechatronics, 2016, 21(3): 1659–1670.

    Article  Google Scholar 

  33. H Zhang, J M Wang. Vehicle lateral dynamics control through AFS/DYC and robust gain-scheduling approach. IEEE Transactions on Vehicular Technology, 2016, 65(1): 489–494.

    Article  Google Scholar 

Download references

Authors’ Contributions

FL was in charge of the whole trial; YZ wrote the manuscript; YZ, GY, HZ, and KW assisted with sampling and laboratory analyses. All authors read and approved the final manuscript.

Authors’ Information

Fen Lin, born in 1980, is currently an associate professor at Nanjing University of Aeronautics and Astronautics, China. He received his PhD degree from Nanjing University of Aeronautics and Astronautics, China, in 2009. His research interests include vehicle dynamics and control, vehicle structural mechanics.

Yaowen Zhang, born in 1992, is currently a master candidate at Nanjing University of Aeronautics and Astronautics, China. He received his bachelor degree from Nanjing University of Aeronautics and Astronautics, China, in 2014. His research interest is vehicle dynamics and control.

Youqun Zhao, born in 1968, is currently a professor at Nanjing University of Aeronautics and Astronautics, China. He received his PhD degree from Jilin University, China, in 1998. His research interests include vehicle dynamics and control, vehicle structural mechanics, vehicle active safety and chassis control.

Guodong Yin, born in 1976, is currently a professor at Southeast University, China. He received his PhD degree from Southeast University, China, in 2007. His research interests include new energy vehicle design and control, vehicle dynamics and control.

Huiqi Zhang, born in 1993, is currently a master candidate at Nanjing University of Aeronautics and Astronautics, China. He received his bachelor degree from Northeast Forestry University, China, in 2016. His research interest is vehicle dynamics and control.

Kaizheng Wang, born in 1992, is currently a master candidate at Nanjing University of Aeronautics and Astronautics, China. He received his bachelor degree from Nanjing University of Aeronautics and Astronautics, China, in 2015. His research interest is vehicle dynamics and control.

Competing Interests

The authors declare that they have no competing interests.

Funding

Supported by National Natural Science Foundation of China (Grant Nos. 51575103, 11672127, U1664258), Fundamental Research Funds for the Central Universities of China (Grant No. NT2018002), China Postdoctoral Science Foundation (Grant Nos. 2017T100365, 2016M601799), and the Fundation of Graduate Innovation Center in NUAA (Grant No. kfjj20180207).

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Fen Lin.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Lin, F., Zhang, Y., Zhao, Y. et al. Trajectory Tracking of Autonomous Vehicle with the Fusion of DYC and Longitudinal–Lateral Control. Chin. J. Mech. Eng. 32, 16 (2019). https://doi.org/10.1186/s10033-019-0327-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s10033-019-0327-9

Keywords

  • Autonomous vehicle
  • Trajectory tracking
  • Direct yaw moment control (DYC)
  • Model predictive control (MPC)
  • Longitudinal–lateral control