Introduction
Road safety is an important issue in these years. The number of deaths on roadways are 1.35 million around the world each year [1] and the main reason of an accident could depend of the actions of the driver [2]. Recently manufactured cars are investing in research to create autonomous system able to prevent and avoid risky situations. One of these dangerous conditions regards a context in which the driver loses the control of the car: sliding or braking sharply by external and unexpected events. Different systems may detect these anomalous states: some using the human like a sensor by EEG signal [3] or biometric t-shirt [4]. Recent research advancements in technology focuses on active safety technology (AST) regarding the ADAS that assists drivers in driving. In [5] is shown how this technology can reduce the number of crashes by considering different possible traffic situations. Another positive aspect regards the reduction of fuel consuption and traffic congestions through vehicle control optimization and platooning [6].
In this context, it is important to provide alternative systems able to detect the risky situation and improve the safety on road. The focus of the control system proposed in this paper is to improve the technology of the ADAS.
In this paper, the proposed system does not consider only a specific speed or a position for the car which covers a straight lane, but its focuses on the detection of the risk situations through the data coming from the automotive system as the slip angle. According to the acquired data, the model takes the full control of the car in order to recover from errors due to human operator and restore a safe state. In these cases, a process able to increase the autonomy level in the human-machine system is fundamental [7]. Another positive aspect is the resilience of the system to the external events [8]. The slip angle is extremely useful in many safety application [9] to prevent some risk situation. The slip angle can be estimated using the steering torque [10] or using the wheel speed and lateral acceleration [11]. Those latter automotive data is evaluated by sensors located in the car in order to shift toward a state of autonomous system in order to take the control and react without human intervention. In this paper the slip value is evaluated by a Kalman Filter that estimates the lateral speed of the chassis and computes the sideslip angle.
Methods and materials
Vehicle model
The linear yaw-plane bicycle model (Figure 1) is adopted to design the Model Predictive Control and it is used to make predictions on the states of the vehicle.
Figure 1: Vehicle bicycle model.
and
are the lateral forces generated by the wheel and depend on the characteristics of the wheel itself.
Where:
• y is the lateral displacement;
• is the lateral speed;
• is the yaw angle;
• is the yaw rate;
• δ is the steering angle of the front wheels while it is assumed that the rear wheel is not able to turn;
• and are the lateral forces generated by the wheel
• a is the distance from the front axis and the Centre of Gravity (CG);
• b is distance from the rear axis and the CG;
The adopted model considers a linear tyre model where the wheels dynamics are linearized with a constant stiffness coefficient Cf for the front wheel, Cr for the rear wheel) as shown in Figure 2.
Figure 2: Comparison of a Non-Linear tyre model (such as the Magic Formula) and the linearized model (dotted line) with the stiffness coefficient [13].
Thus, the forces and are defined as follows:
(1)
Where αf and αr are the drift angle of the front and rear wheel, defined as:
(2)
The linearization of the wheel model implies a less accurate computation of the lateral and longitudinal force generated by the wheel while driving and breaking; however, since the goal of the system is to keep the vehicle in the linear region of the wheels dynamics it is possible to use this approximation. Further improvements of the system include the implementation of better models such as the Magic Formula.
Thus, the continuous state space representation is defined as follows:
(3)
Where
is the state vector and u = δ is the control input.
The state space matrices A and B are defined as follows:
(4)
Then the proposed model is discretized by Euler Method:
(5)
Where:
is the longitudinal speed of the vehicle;
is the stiffness coefficient of the front (f) and rear (r) tyre;
m is the mass of the vehicle;
is the inertia on the z-axis.
Ts is the sampling time.
Activation criteria
The proposed autonomous system has to be activated when specific conditions that could lead to dangerous situations occur, such as oversteering or understeering.
The sideslip angle is a significant parameter in the detection of the risk due to situations where the vehicle starts to lose control. Thus, the analysis of the sideslip angle value allows to prevent the loss of control and it provides efficient information to effectively apply an ad-hoc control law. The slip angle can be obtained using the relationship in (6):
(6)
Where β is the sideslip angle, and are respectively the lateral speed and longitudinal speed of the CG of the vehicle.
In the proposed approach, the data coming from the sensor (accelerometer) which stores the longitudinal and lateral acceleration and yaw rate is affected by white noises due to measurement errors. In order to provide an optimal filtering of such noises in the measurements and to generate a good estimator for the sideslip angle β, a Kalman Filter (KF) is adopted. Thus, the criteria will be:
(7)
Where β and are respectively the estimated sideslip angle and rate while and are the related threshold limit values over which the controller starts.
The KF, instead of using the model proposed in (4), is based is based only on the dynamic equation of lateral speed and yaw rate , and only the lateral speed is supposed to be measurable from the accelerometer:
(8)
The model is linearised and discretised around the operating point which represents the current vehicle speed. Due to the presence of noises on state measurements, the state space representation may be formalized as follows:
(9)
Where:
,
and
are the discretised matrices with Euler method as in (5)
is the noise on the state at time k
The KF implements the following recursive equations:
1. Prediction phase
(10)
2. Update of error covariance matrix P and Kalman gain K
(11)
3. Update the state estimation
(12)
4. Update of error covariance matrix P
(13)
For each time interval, the KF estimates the state of the system, and the sideslip angle is computed by the equation (6).
In Figure 3 is shown the result of the estimation process during the simulation. The KF correctly estimates the sideslip angle with a maximum error of 0.011 and an average error of -1.5∙10-4 with respect to the ground truth which is given by the simulation software.
Figure 3: Sideslip angle estimation with respect to ground truth.
Lane keeping control
When the sideslip angle overcomes the thresholds, the vehicle control, consisting in a Lane Keeping System, starts and keeps the vehicle control.
The control system is based on the dynamic Linear Time Varying System (LTV) model proposed in (4). According to [12], in fact, the dynamic model performs a robust estimate in respect to the kinematic model which is fast and simple to be applied but it is very sensitive to noise on measurements, above all for the accelerations measurements which are affected by high errors. For these reasons, in this kind of application, the use of a dynamic model is recommended.
The aim of the proposed control law is to minimize the quadratic cost function J to converge the lateral offset to zero.
It is supposed to have the lane boundaries from a camera located on the front of the vehicle using a vision detection algorithm. In respect to the boundaries, the lateral offsets with respect to the vehicle, the centre of the lane and the respective lateral offset are computed. The simulation software gives data subjected to measurements error/noise. More noise is in the data, less precise would be the controller response in terms of oscillations with respect to the centre of the lane. In this case of study, the simulated sensor has a measurement error of 3 centimetres. In order to improve the performance of the system, an accurate tuning of the KF is required to filter the noises of the sensors.
To improve the controller performances, the following formulation of the augmented state for the model presented in (6) is derived
(14)
Consequentially, with an abuse of notation, the model matrices are redefined as follows:
(15)
Thus, the cost function is defined as follow and it is minimized at each time step over a prediction horizon Np:
(16)
Where:
is the reference at time k;
is the vehicle state at time k;
is the optimization vector consisting in the steering angle;
The matrices QN, Q and R are optimization matrices tuned by hand.
The minimization problem is subjected to specific constraints to achieve better results. The constraints are applied on the control variables and their rate in time over the control horizon Nc.
Some considerations must be made on the upper and lower bound for the control Uk. The objective of the control system is to avoid high values for the sideslip angle which may produce over or under steering situations with the consequent losing control of the vehicle. So, inappropriate setting of the bound values may induce the MPC to react too strongly generating a high value of counter steer resulting in a drift. To avoid such behaviour, a dynamic constraint is applied to the steering wheel.
The approach proposed in this paper approximates the longitudinal acceleration to zero since the rate of change of the speed over the prediction horizon could be negligible. As shown in [14], the lateral acceleration of the vehicle must be bounded by the tyre-road friction coefficient, thus resulting in the following relation:
(17)
Where ay is the lateral acceleration, µ is the road friction and g is the gravity force.
The lateral acceleration could also be expressed in function of the curvature of the vehicle trajectory:
(18)
where kk is the curvature at time k, Rk is the turning radius of a vehicle with the steering angle at time and wheelbase L. The steering angle is then derived from equations (18) and (17):
(19a)
(19b)
The argument of the arcsine function (19b) is limited between [-1,1] (19a) and the result is capped to physical limits of the steering system.
Thus, the δ computation became:
(20)
Where is the limit obtained by equation (20) and is the physical limit of the steering system.
The limit of a steering system depends on different characteristics such as physical space available for wheels and steering linkage geometry (Ackermann, Anti-Ackerman, Bell-crank, Rack-and-Pinion, Short Rack-and-Pinion). The proposed system uses a limit that should be feasible for the most types of cars.
The resulting is used as constraint for current time instant over the control horizon. In Figure 4 are shown the different limits of in respect to the longitudinal speed of the vehicle on a high adhesion (µ = 0.8). Thus, the complete optimization problem became:
Figure 4: Steering angle limit according to longitudinal speed on high adhesion road (µ = 0.8).
(21)
Where
is the optimal control for Nc instant but only the first one will be applied due to possible noise on measurement or control.
Case study and results
The case of study consists in a vehicle, driven by a human driver, which covers a straight road. After 2 second from the simulation beginning, a sudden steering makes the car turns to the left, generating a risk situation that is detected by the estimator of the β angle.
The system has been simulated in MATLAB Simulink software with a sample time Ts = 0.05 s. The steering peak of the wheels consists in a step signal of 5 degree.
The values of all parameters to implement the model are listed in Table 1.
Table 1: Vehicle parameters. |
Symbol |
Name and Unit |
Value |
a |
Front axis – CG distance (m) |
1.4 |
b |
Front axis – CG distance (m) |
1.6 |
m |
Mass (Kg) |
2000 |
Izz |
Inertia (Nm) |
4000 |
Cf |
Stiffness front tyre (dimensionless) |
12 * 103 |
Cf |
Stiffness rear tyre (dimensionless) |
11 * 103 |
The constraints on the maximum and minimum steering angle defined by (20), slow down the controller response, as shown in Figure 5, to avoid high values of sideslip angle.
Figure 5: Comparison of MPC controls with and without limitation on steering angle.
Figure 6 shows the result of the simulation in terms of lateral error in respect to the centre of the lane, which is estimated runtime in respect to the lateral offsets of the lane boundaries identified by the vision detection camera installed on the front of the vehicle.
Figure 6: Lateral error during simulation of a sudden steering. The steering event occurs at the 2° seconds after the beginning of the simulation and after 0.4 seconds the MPC takes control of the vehicle, ignoring the driver’s commands.
The MPC has a prediction horizon of 15 time instants corresponding to 0.75 seconds and a control horizon of 0.01 sec.
Conclusion
A Linear Time Varying (LTV) Model Predictive Control (MPC) is presented in this paper in order to control the vehicle steering in case of anomalous events during the driving sessions. The control system estimates in real time the sideslip angle of the vehicle through a Kalman Filter and, according to specific threshold values, the controller is activated, replacing the driver, to correct the vehicle trajectory by maintaining the correct position in the lane of the road at constant speed. When a safe standard driving condition is restored, the controller gives the control back to the driver. The results show a good response of the controller which can however be improved by adding other constraints and risk assessment criteria such as overpassing lanes and prediction of the direction of the vehicle to anticipate the risk.
The model considered in this work does not take into account other important dynamics of the vehicle such as the road slope and suspensions. To include these dynamics, other considerations have to be made; in particular, it would be necessary to consider a model far more complicated and precise which requires a more powerful and efficient processor to implement a predictive control.