Next Article in Journal
Overview of Equipment Health State Estimation and Remaining Life Prediction Methods
Previous Article in Journal
Design, Assembly, and Simulation of Flexure-Based Modular Micro-Positioning Stages
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Steering and Speed Control System Design for Autonomous Vehicles by Developing an Optimal Hybrid Controller to Track Reference Trajectory

Faculty of STEM, University of South Australia, Mawson Lakes, SA 5095, Australia
*
Author to whom correspondence should be addressed.
Machines 2022, 10(6), 420; https://doi.org/10.3390/machines10060420
Submission received: 7 April 2022 / Revised: 13 May 2022 / Accepted: 13 May 2022 / Published: 26 May 2022
(This article belongs to the Topic Advances in Mobile Robotics Navigation)

Abstract

:
In this paper, a longitudinal and lateral control system of an autonomous vehicle is presented by developing a novel hybrid trajectory tracking algorithm. In this proposed method, the longitudinal control system is developed based on the curvature information of the reference path. The autonomous vehicle modifies the desired speed according to the estimated size and types of the reference trajectory curves. This desired speed is integrated into the PID controller to maintain an optimal speed of the vehicle while following the given path. The lateral control system is designed based on feedforward (preview control) and feedback (LQR) controllers to reduce lateral errors between the trajectory and autonomous vehicle. The feedforward and the feedback controllers generate precise steering angles to eliminate orientation and lateral errors caused by the curvature of the trajectory and external disturbances. The effectiveness of the proposed method is evaluated by comparing simulation and experimental results with different trajectory tracking algorithms on simulated and experimented paths. It is proven that the proposed algorithm is capable of significantly minimizing lateral errors on sharp curves compared to other path tracking methods.

1. Introduction

Autonomous vehicles are one of the most popular research topics currently. Autonomous driving offers comfortable, efficient, and safe transportation. In recent years, technologies have dramatically advanced, therefore, autonomous vehicle’s computational power has increased, whereas sensing and computing time are reduced [1]. Autonomous vehicles have to understand and have cooperation with some major functions, such as localization and mapping, perception, trajectory generation, and control for automated driving [2]. Reference trajectory tracking is one of the fundamental issues of autonomous vehicle control and navigation systems. The main objective of the trajectory tracking system is to generate control commands to follow the predefined path by considering the autonomous vehicle’s relevant motion constraints. Various trajectory tracking methods exist in the literature. Three types of widely used path tracking methods are geometric methods (pure pursuit, Stanley controller), optimal control based methods (LQR, optimal preview control), and model based methods (PID, MPC, sliding mode control, fuzzy logic controller). This section describes a review of some path tracking algorithms which are already being tested for trajectory tracking of autonomous vehicles.
Several geometric and kinematic path tracking controllers are used for autonomous vehicle path tracking purposes; among them, the pure pursuit controller [3] is probably the most simple and widely used path tracking controller [4].
The pure pursuit calculates a certain distance, which is known as the look-ahead distance, at every time step in the reference trajectory to compute the steering angle ( δ ) of the autonomous vehicle [5].
An adaptive pure pursuit algorithm is proposed in [6], where it is integrated with the PID controller to reduce tracking error at low curvature path.
A comparative study has been conducted among the Stanley, the quadratic dynamic, and the pure pursuit controllers under discontinuous paths and stochastic actuation, where the performance of the pure pursuit outperformed other controllers.
However, it suffers mainly from corner-cutting (neglects curvature information) and significant lateral error if look-ahead distance is high and from severe oscillations when it is assumed too small [7]. The Stanley is another effective geometric steering controller. Look-ahead distance is not required in this controller, and it considers the dynamics model and instantaneous velocity of the autonomous vehicle [8]. The Stanley controller was led by the Stanford University team to win the DARPA Grand Challenge 2005. It has a non-linear feedback function, which calculates steering command from the front wheel axle of the vehicle based on lateral errors [9]. However, it suffers from external disturbances and generates more lateral errors in the curved path [10]. The Stanley controller is not robust under a discontinuous path compared to other controllers [2]. The linear quadratic regulator (LQR) is one of the popular optimal control based methods, which is mainly a state feedback controller. It has versatile applications as a control system from flight control to robotics, as its implementation is simple. A generalized version of the LQR control system is proposed in [11] for solving aircraft full tracking problems in aviation with the presence of different uncertain physical disturbances. The LQR controller is integrated with a particle swarm optimization (PSO) method for autonomous passenger vehicles trajectory tracking in various dynamic conditions [12]. The LQR controller suffers when sharp curves are present in the reference path. Optimal preview controller (OPC) is capable of effectively developing the path tracking performance as the future information of the reference trajectory is available in this closed-loop control system [13,14]. Therefore, the OPC is widely used in autonomous vehicles for trajectory tracking. The original studies, concepts, models, and some potential applications of the preview controller are explained thoroughly in [15,16,17]. The classical Riccati equation is extensively used in the OPC design based on the LQR control theory [18,19,20,21]. Particularly, [22,23] presented a novel discrete-time system for preview control by utilizing the information of the fusion estimation theory. Subsequently, the Riccati equation method was further developed for the preview controller in [24,25] for linear descriptor systems.
The OPC shows poor tracking performance when the error is external and discontinuous [20,26]. Some researchers have focused on the fuzzy logic controller (FLC) to overcome autonomous trajectory tracking problem of mobile robots [27]. The FLC is easier to design, robust, inexpensive, and easily operated because human driving behaviors are interpreted linguistically in this technique [28]. Therefore, the FLC has been used broadly over the last few decades for mobile robot path tracking like vehicle parking [29]. A simple FLC is designed in [30], where very few fuzzy rules are applied for path tracing of wheeled mobile robot, whereas [31] enhances a complex adaptive fuzzy technique to generate appropriate automatic steering and velocity command for the autonomous vehicle. To handle vehicle and environmental uncertainties, fuzzy logic based technique is a good solution for the trajectory tracking of mobile robots [32].
The FLC is appropriate to control nonlinear applications because no explicit dynamics model is required in this technique [33]. A novel hybrid path tracking algorithm is proposed by combining a neural network and the FLC for a nonholonomic mobile robot in [34]. However, rough membership function parameters and rules base adjustment of a fuzzy controller usually produces steady-state error and takes more computational time [32]. Recently, there have been more studies done on the model predictive control (MPC) method to improve path tracking accuracy of autonomous mobile robots [35,36]. The MPC is able to forecast future trajectory information and decide the optimal control actions accordingly for autonomous vehicles. It reduces the lateral error between the given trajectory and the anticipated path by applying the vehicle dynamics model to generate the appropriate steering angle of the vehicle by online optimization [37]. A nonlinear model predictive control (NMPC) technique is applied on two different vehicles by controlling the combination of braking as well as steering [38]. A novel real-time trajectory tracking MPC algorithm is proposed in [39] for an autonomous vehicle at low speed. For high-speed vehicle path tracking, Ref. [40] presented a novel MPC scheme by considering tire slip angle constraint for controlling front steering angle to follow a path on slippery roads. Ref. [41] investigated trajectory tracking stability at high speed. Based on the system features, it can be seen that linear and nonlinear MPC have to solve the optimization problem iteratively at each control step, which may lead to heavy computation load, and optimization may fail if the initial values are improper [37]. Therefore, it is very challenging for real-time implementation [38]. Authors in [42] proposed a novel two-level optimization method of scheduling and trajectory planning for connected automated vehicles (CAVs) to improve the traffic efficiency of conflict zones and reduce the travel delay and fuel consumption of CAVs, which provides new opportunities and challenges for the optimization and management of traffic conflict zones. In paper [43], simulation results of an unconventional principle of the vehicle power flow transmission is presented where a combined hydro-mechanical transmission with hydrostatic units and torque converter in parallel lines with mechanical components are used. This novel method can be used in commercial vehicles and mobile working machines. A unique method is proposed in [44] to develop a prototype of a variable message sign (VMS) reading system using machine learning techniques. In this project, advanced driver assistance system (ADAS) devices perceive the environment by using machine learning methods and provide assistance to the driver for his comfort or safety. Authors in [45] developed a deep neural network (DNN) based model to estimate longitudinal–lateral dynamics of an autonomous vehicle where it predicts accurate vehicle states in real time.
The purpose of the aforementioned trajectory tracking controllers is to reduce the lateral error between the autonomous vehicle and the reference trajectory. However, the problem arises for most of the path-tracking controllers while the autonomous vehicle moves through a sharp curve in the reference path [46]. Driving through a sharp curve of the trajectory is always dangerous if the speed and steering angle are not appropriately adjusted for the vehicle. In the real world, if a driver wants to stay in the path and go through the sharp curve safely, he must be able to reduce speed and control the steering wheel simultaneously. A similar principle should be used for autonomous vehicle while tracking reference trajectory.
Therefore, a novel path tracking strategy is proposed in this paper, where the main contribution is to reduce the lateral errors and tracking errors of the autonomous vehicle, especially while going through sharp curves, by developing a hybrid longitudinal and lateral control system. The longitudinal control design is based on the geometrical curvature information and is integrated with the PID controller for speed control purposes. The desired speed of the vehicle is generated from the vehicle current speed and curvature profile of the road. Furthermore, the feedforward optimal preview control is applied to solve lateral errors of the trajectory by controlling the steering angle of the vehicle, especially caused by curvatures of the road. The LQR will be applied to decrease the errors caused by environmental and external disturbances. The architecture overview of the proposed method is shown in Figure 1. The tracking performance of the proposed algorithm is evaluated through the average root mean square errors. The effectiveness of the proposed method is tested and verified by simulation and experimental results. The goals of this paper are as follows:
  • Analyze the given GPS trajectory,
  • Identify the current position of the vehicle in the reference path,
  • Determine sharp curves position information from the reference path,
  • Calculate the desired velocity for each sharp curve,
  • Calculate the appropriate steering angle for each sharp curve,
  • Adjust speed and steering angle with respect to sharp curves to follow the reference trajectory precisely.
The rest of this paper is organized as follows. The dynamic model of the vehicle is presented in Section 2, and Section 3 broadly explains the design of the proposed path tracking controller. Section 4 describes the performance of the proposed method and verifies experimental results with different trajectory tracking algorithms. Section 5 concludes the paper with possible future research directions.

2. Vehicle Dynamic Model

It is useful to describe the vehicle dynamic bicycle model with the kinematic bicycle model by considering the reference path. The kinematics of the vehicle can be illustrated in Equations (2)–(4) according to the geometry relationship as shown in Figure 2. Parameters of the vehicle are shown in Table 1.
m a y = F x f s i n ( δ f ) + F y f c o s ( δ f ) + F y r
x o ˙ = v cos ( ψ + β )
y o ˙ = v sin ( ψ + β )
ψ ˙ = r
where longitudinal and lateral coordinates ( x o ˙ and y o ˙ ) are situated at the center of gravity (C.G); ψ , ψ ˙ , and β are the yaw angle, the yaw rate, and the sideslip angle of the vehicle, respectively. The longitudinal velocity of CoG is v. Assuming that the curvature of the path is small, for this reason, it generates small variances of yaw angle and sideslip angle of the vehicle. Therefore, the kinematic model can be illustrated as
x o ˙ = v
y o ˙ = v ( ψ + β )
ψ ˙ = r
It is difficult to track the trajectory using only the kinematic model of the vehicle when the speed of the vehicle is increased and the curvature of the path varies. In this case, a dynamic model of the vehicle must be developed that considers the dynamic effects and motion of the vehicle for precisely tracking the reference trajectory. The longitudinal velocity of the vehicle is assumed to be constant; then according to Newton’s Law, the dynamics of the vehicle could be illustrated as follows:
a y = v β ˙ + v ψ ˙
where a y is the initial acceleration at the C.G in the direction of the y axis. Two terms contribute to a y : the acceleration v β ˙ along the y axis and the centripetal acceleration v ψ ˙ .
Therefore, lateral angular motion equation of the vehicle can be expressed as
m v ( β ˙ + ψ ) = F y f + F y r .
The equation of the yaw dynamics in the z axis can be expressed as
I z ψ ˙ = l f F y f l r F y r
where l f and l r are the distances of the front tire and the rear tire, respectively, from the C.G of the vehicle; F y f and F y r are the front and rear lateral tire forces, and F y f and F y r are defined as
F y f = C f α f
F y r = C r α r
where C f and C r are the cornering stiffness of the front and rear tires. The front and rear tire sideslip angles of vehicle α f and α r are computed as follows:
α f = β + l f ψ ˙ v
α r = β l r ψ ˙ v
Substituting Equations (11)–(14) into Equations (9) and (10), the vehicle lateral and yaw dynamics can be determined. The lateral dynamic equation can be written as
β ˙ = ( C f + C r ) β m v v ψ ˙ ( l f C f l r C r ) ψ ˙ m v + C f m δ .
Similarly, the yaw rate updated equation can be expressed as
ψ ˙ ˙ = ( l f C f l r C r ) β I z v ( l f 2 C f + l r 2 C r ) ψ ˙ I z v + l f C f I z δ .
Therefore, the vehicle lateral state space model can be defined from Equations (6), (7), (15), and (16) and can be written as
d d t y o ψ β ψ ˙ = 0 1 0 0 0 ( C f + C r ) m v 0 v ( l f C f l r C r ) m v 0 0 1 0 0 ( l f C f l r C r ) I z v 0 ( l f 2 C f + l r 2 C r ) I z v y o ψ β ψ ˙ + 0 C f m 0 l f C f I z δ f

3. Trajectory Tracking Controller Design

For the last three decades, extensive research has been done on the navigation and motion control of autonomous vehicles, but some limitations still exist. The path tracking problem is one of the vital challenges that need to be solved for autonomous navigation. Trajectory tracking controllers calculate the optimal commands for the autonomous vehicle to follow a reference path as accurately as possible. The desired speed (v) and the desired vehicle orientation ( θ ) commands are required to achieve good tracking performance. In this section, the proposed trajectory tracking algorithm will be developed.

3.1. Longitudinal Speed Controller

A longitudinal controller is designed to generate appropriate velocity commands for autonomous vehicles while tracking the given trajectory. Human driving behavior should exist in the controller so that it can make proper decisions and reduces its speed based on uncertain curvatures of the path. Therefore, curve analysis is one of the important parts for the autonomous vehicle [35] to control the vehicle’s velocity appropriately, as it will keep the lateral errors to a minimum.

3.1.1. Sharp Curve Estimation

To determine sharp curves, all of the curves need to be identified from the reference GPS path to generate optimal speed of the autonomous vehicle for each curve. A first step is localizing the curves starting and ending points, which are known as points of tangency (PT) and points of curvature (PC), respectively. When PT and PC points are defined, the characteristics of the curves can be computed as illustrated in Figure 3, where curve length, point of intersection, central angle, and radius are presented by the symbols of L, PI, θ , and R, respectively. A curve can be defined as sharp or dangerous when it has a larger central angle or smaller radius, whereas a larger radius or smaller central angle depicts a less dangerous curve [26]. The severe curve location deserves more attention when the vehicle has to reduce speed for keeping small lateral errors.
After identifying PT and PC in a curve, there is an important step to compute the bearing angle between two consecutive segments AB and BC formed from three points (A, B, and C), as shown in Figure 4, and α can be expressed as
α = c o s 1 { ( x B x A ) ( x C x B ) ( x B x A ) 2 + ( y B y A ) 2 + ( y B y A ) ( y C y B ) ( x C x B ) 2 + ( y C y B ) 2 } × 180 π
where x A , x B , and x C are the x coordinates of points A, B, and C, respectively, and y A , y B , and y C are the y coordinates of points A, B, and C, respectively.
When the bearing angle α is computed, it is essential to determine a threshold value, and this threshold value will define whether point B is assumed to be part of a curvature or not. If the bearing angle α is smaller than the defined threshold, point B is not a part of the curve, whereas if α is higher than the threshold value, center point B is a part of the curve. Therefore, defining the right threshold value is an important step, as the identification of the curve depends on it. In this paper, the threshold value is chosen as 1 . 25 , and this threshold value is evaluating from [26], where different curvature identification threshold values were tested in order to choose the right threshold value. Curves can be classified as simple or compound based on [26,46], shown in Figure 3. A simple curve has one segment between two points, whereas, the compound curve has at least two consecutive segments that are separated by a specific distance between each other. From the geometric information of each curve with its starting (PT) and ending point (PC), one can compute the central angle ( θ ), radius (R), and length (L) of each curve as follows:
R = ( x P C x O ) 2 + ( y P C y O ) 2
C = ( x P T x P C ) 2 + ( y P T y P C ) 2
θ = 2 × s i n 1 C 2 R × 180 π
L = θ · π 180 × R
In this work, only dangerous curves are considered to reduce vehicle speed. Therefore, according to [46], dangerous curves are categorized when their radius is from 5 to 18 m or in a range of angles between 30 and 180 . The curve driving scenario is presented in Figure 5.

3.1.2. Speed Control Algorithm for Sharp Curves

In this paper, the longitudinal speed controller is designed according to the derivation of the trajectory curvature K t r a j and the vehicle curvature K v e h i c l e . The autonomous vehicle is calculating K t r a j and K v e h i c l e iteratively while tracking the reference trajectory. The curvature of the trajectory and vehicle can be determined iteratively as
K = Δ θ Δ L
where K, θ , and L are the curvature, central angle, and length of the trajectory. Based on the present curvature, the curvature function f( K t r a j , K v e h i c l e ) value is used to generate appropriate speed reduction in a dangerous curve for the autonomous vehicle during the movement. From Equation (24), we get the new desired velocity V d by subtracting the curvature function from the current velocity V c , which is preventing cutting corner error of the vehicle while following the trajectory.
V d = V c f ( K t r a j , K v e h i c l e )
V e = K d V c
The calculated velocity error V e from Equation (25) is fed into the PID controller to adjust the position of the throttle pedal to maintain the optimal speed precisely. The PID velocity controller equation can be written as
U v = k p V e + K i V e Δ t + K d Δ V e Δ t
where U v , K p , K i , and K d are the control output, proportional control gain, integral control gain, and derivative control gain, respectively.

3.2. Lateral Controller

According to the dynamics model of the vehicle, a preview (feedforward) control and the LQR (feedback) control strategy is applied to generate an appropriate steering angle for autonomous vehicles. The preview controller is applied to reduce interference from trajectory curvature as the preview information of the reference path is used in this controller. In contrast, the LQR is designed to eliminate the real-time lateral deviation and orientation error caused by external disturbances and has a better adaptability with the changes in longitudinal speed while following the given trajectory.

3.2.1. Optimal Preview Controller

The purpose of the optimal preview (feedforward) controller is to remove the lateral error generated by the curvature of the path. In this algorithm, preview information about the trajectory curvature of the path is required, which can be determined from the reference GPS path or obtained from road geometry. The feedforward control can be defined as C f f and expressed in Equations (27) and (28).
C f f = C f C r ( l f + l r ) 2 + ( l r C r l f C f ) m v 2 C f C r ( l f + l r )
δ f f = C f f · ρ
where δ f f is the feedforward control input, and ρ is the information of the reference curvature radius. The lateral error produced by the curvature of the trajectory can be reduced by the preview controller. However, this controller can not always maintain zero lateral error due to external disturbances. Therefore, it is important to design a feedback controller for external disturbances that is able to eliminate lateral error.

3.2.2. Optimal LQR Controller

In this proposed method, the objective of the LQR controller is to generate appropriate steering angles to eliminate the lateral error between the reference path and the actual path that is generated by external disturbances. Therefore, the curvature of the trajectory is not considered here, and the longitudinal velocity is assumed to be constant. The state-space model of the vehicle dynamics can be expressed as
x ˙ = A x + U δ f b
where x = [ y 0 , ψ , β , ψ ˙ ] , and δ f b is feedback steering control command. The state-space model needs to be discretized by using the discretization method because digital discrete control input is used in the LQR controller where the discretized sample time is 0.01 s. Therefore, the discrete lateral dynamics model can be written as
x ( k + 1 ) = A d x + U d δ f b
The state-space variables ( A d , U d ) are controllable, therefore, the optimal steering control command can be expressed as
δ f b = K x ( k )
where K is the optimal control gain and K is expressed in Equation (32)
K = ( R + U d T P U d ) 1 U d T P A d .
The objective cost of the control command can be minimized by Equation (33) and the matrix P can be solved by applying the algebraic Riccati equation (Equation (34)).
J = n = 1 x T ( k ) Q x ( k ) + δ f b T ( k ) R δ f b T ( k )
P = A d T P A d A d T P U d ( R + U d T P U d ) 1 U d T P A d + Q
where
Q = q 1 0 0 0 0 q 2 0 0 0 0 q 3 0 0 0 0 q 4
where Q is the diagonal state cost matrix and it minimizes bad performance (e.g., minimizes large differences between the reference position of the vehicle and where the vehicle actually is in the world); R = [ 1 ] is the input cost matrix, which is minimizing control effort. This LQR proposed method controls the turning parameter of the vehicle. Therefore, the turning parameter can be chosen as q 2 = q 3 = q 4 = 0 . Now there is only a single parameter that is used for turning purposes. Finally, the steering angle input δ F is generated by combining the feedforward control command and feedback control command.
δ F = δ f f + δ f b

4. Experimental Results and Discussion

In this section, different tracking control methods are performed on simulated and real dataset trajectories. The aim is to show and compare how path tracking accuracy is improved when the proper speed of the vehicle is considered for each segment in the reference trajectory. Two paths (one is created and one is real) are considered for the experiments. Each path has various lengths and curve characteristics, and these paths are created by using the python cubic splines.
  • Simulated path: There are 750 continuous points and five normal curves identified in the simulated path. Total distance of this trajectory is approximately 3.95 km, and the maximum speed limit is 20 km/h for the entire path.
  • Real dataset: The total distance of the reference path (traveled path) is approximately 4.2 km, and the maximum speed is 20 km/h for the entire path. There are 1094 segment points determined after the preprocessing and analyzing of given GPS data. Fourteen sharp curves (dangerous curves) are detected in this trajectory with different geometric characteristics.
The performance of the proposed algorithm is compared with the different steering control methods: (1) the pure pursuit, (2) the Stanley, (3) the LQR, and (4) the MPC. In order to compare the performance, first one needs to calculate the root mean square error ( E r m s ) for five algorithms per each trajectory, which is expressed in Equation (36) as
E r m s = ( L d ( t ) L c ( t ) ) 2 S t
where the desired and current vehicle location are represented by L d and L c , respectively. The lateral error can be computed from the difference between L d and L c , whereas S t is the total sampling number calculated every 380 ms. The average root mean square error ( E r m s ¯ ) is calculated as
E r m s ¯ = 1 N E r m s
Path tracking algorithm performance are compared in the simulated trajectory where all the curves are simple, shown in Figure 6. As the curves of the trajectory are normal, all the algorithms can appropriately follow the path with constant speed, as can be seen in Figure 7, and the variations of the yaw angle are almost similar, shown in Figure 8. Even our proposed method tracks the simulated trajectory with constant speed because there are no sharp or dangerous curves present in the path.
Table 2 shows that most of the controller’s lateral errors are the smallest in the simulated path. From Figure 9, it can be seen that the proposed algorithm has the smallest lateral error among all the controllers. The proposed method is controlling the steering angle precisely shown in Figure 10 without reducing the speed of the vehicle when the curvatures are simple. In this simulated trajectory there is no sharp curves; for this reason, none of the controllers need to reduce the speed of the vehicle. Therefore, all of the path tracking controllers took the same amount of time to reach the destination.

Experimental Results

In order to verify the performance of the proposed algorithm, an autonomous vehicle is tested with the GPS trajectory shown in Figure 11. The experimental trajectory with all identified sharp curves is presented in Figure 12.
Now we are analyzing and comparing the real dataset based trajectory tracking performance shown in Figure 13, where fourteen dangerous curves are present. The blue line is the reference trajectory; the orange line represents the pure persuit test result; the grey, gold, blue, and green lines represent the test results of the Stanley, LQR, MPC, and the proposed algorithm, respectively. The test results comparison at the dangerous curves are shown in Figure 13. From the test results it is clear that the curvature is an important factor for path tracking algorithms; therefore, it requires special attention for controlling autonomous vehicles while traveling through the curvatures of the path. The proposed algorithm is able to reduce the speed of the vehicle depending on the curvatures of the trajectory. When the value of the curvature is high, the reduction of the speed is also high in the proposed method to ensure that the autonomous vehicle is able to follow the trajectory successfully. Figure 14 shows the speed adjustment of the vehicle depending on the sharp curves of the road, whereas Figure 15 represents the yaw angle comparison for different trajectory tracking controllers. Figure 16 represent the steering angle of the proposed method.
Table 3 represents the lateral errors for all of the controllers that are obtained from the different sharp curves of the trajectory. The improvement of the proposed method is shown in Figure 17 when considering speed regulations in dangerous curves. From Figure 17, it can be noticed that the pure pursuit controller has the largest average root mean square error (0.28 m), whereas the proposed algorithm shows the smallest tracking error (0.09 m), which is 19 cm less than the pure pursuit method. The LQR and the MPC represents good tracking performance with average lateral errors of 0.17 m and 0.13 m, respectively. However, the LQR and MPC controller tracking errors are aprroximately 8 cm, about 5 cm higher than the proposed method. It is clearly seen from Table 3 that all the largest lateral tracking errors are present in the dangerous curves. Therefore, speed regulation plays an important role in the path tracing of autonomous vehicles while passing through sharp curves.
Overall, the performance of the proposed method shows significant improvements (at least 5 cm less error) than all the trajectory tracking methods. A visual representation of lateral tracking error (root mean square error) is shown in Figure 17, where it can be noticed that the proposed algorithm is able to decrease errors by reducing the speed in the sharp curves of the trajectory. However, the proposed method took more time compared to the other path tracking controllers. When sharp curves appear in the trajectory, the proposed method reduces the velocity to track the reference path properly; therefore, it takes 82 s to complete the trajectory tracking.

5. Conclusions

In this paper, a novel hybrid real-time trajectory tracking controller is proposed based on the curvature information of the reference trajectory to control the speed, and feedforward and feedback information is used to generate the appropriate steering angle of the vehicle. From the experimental results, it can be noticed that the proposed algorithm is able to follow the trajectory successfully. The performance of the proposed method shows significant reduction of tracking errors compared to other controllers. The contributions of the proposed method are to estimate the upcoming sharp curves type and compute the appropriate speed and steering angle for each curve to control the autonomous vehicle, which is the desired goal of any autonomous vehicle in real driving scenarios. When the curvatures of the path are normal, then the vehicle is traveling with constant speed by properly controlling the steering angle. However, if the upcoming curvatures are sharp, the vehicle then reduces the speed before arriving at them and reaches the desired speed and steering angle to minimize lateral errors. This better serves the tracking performance of the vehicle especially during cornering maneuvers, whereas most of the existing trajectory tracking controllers face problems during cornering maneuvers.
Future work will combine the control system of the vehicle with a vision system and neural network in order to develop perception capabilities of autonomous vehicles. The stereo sensor information with a semantic segmentation method and neural network will allow us to: (1) detect traffic signs and the speed limit of the road to control the speed of the autonomous vehicle accordingly; (2) recognize the path properly when GPS data are not available; and (3) identify lane markings on the trajectory by developing boundary detection algorithms.

Author Contributions

Conceptualization, T.H.; methodology, T.H.; software, T.H. and R.I.; validation, T.H., H.H. and R.I.; formal analysis, T.H., H.H. and R.I.; investigation, T.H.; resources, T.H. and R.I.; data curation, T.H.; writing—original draft preparation, T.H.; writing—review and editing, H.H. and R.I.; visualization, H.H.; supervision, H.H. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data is available as per request.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Cibooglu, M.; Karapinar, U.; Soylemez, M.T. Hybrid controller approach for an autonomous ground vehicle path tracking problem. In Proceedings of the 25th Mediterranean Conference on Control, Valletta, Malta, 3–6 July 2017; pp. 583–588. [Google Scholar] [CrossRef] [Green Version]
  2. Andersen, H.; Chong, Z.J.; Eng, Y.H.; Pendleton, S.; Ang, M.H. Geometric path tracking algorithm for autonomous driving in pedestrian environment. In Proceedings of the EEE International Conference on Advanced Intelligent Mechatronics (AIM), Banff, AB, Canada, 12–15 July 2016; pp. 1669–1674. [Google Scholar] [CrossRef]
  3. Coulter, R.C. Implementation of the Pure Pursuit Path Tracking Algorithm; Carnegie Mellon University: Pittsburgh, PA, USA, 1992. [Google Scholar]
  4. Corke, P. Robotics, Vision and Control—Fundamental Algorithms in MATLAB; Springer: Cham, Switzerland, 2011. [Google Scholar] [CrossRef] [Green Version]
  5. Wit, J.C., III; Carl, D.; Armstrong, D. Autonomous ground vehicle path tracking. J. Robot. Syst. 2004, 21, 439–449. [Google Scholar] [CrossRef]
  6. Park, M.-W.; Lee, S.-W.; Han, W.-Y. Development of lateral control system for autonomous vehicle based on adaptive pure pursuit algorithm. In Proceedings of the 14th International Conference on Control, Automation and Systems (ICCAS 2014), Gyeonggi-do, Korea, 22–25 October 2014; pp. 1443–1447. [Google Scholar] [CrossRef]
  7. Wang, W.-J.; Hsu, T.-M.; Wu, T.-S. The improved pure pursuit algorithm for autonomous driving advanced system. In Proceedings of the IEEE 10th International Workshop on Computational Intelligence and Applications (IWCIA), Hiroshima, Japan, 11–12 November 2017; pp. 33–38. [Google Scholar] [CrossRef]
  8. Amer, N.H.; Zamzuri, H.; Hudha, K.; Aparow, V.R.; Kadir, Z.A.; Abidin, A.F.Z. Path tracking controller of an autonomous armoured vehicle using modified Stanley controller optimized with particle swarm optimization. J. Braz. Soc. Mech. Sci. Eng. 2018, 40, 104. [Google Scholar] [CrossRef]
  9. Hoffman, G.M.; Tomlin, C.J.; Montemerlo, M.; Thrun, S. Autonomous Automobile Trajectory Tracking for Off-Road Drriv-ing: Controller Design, Experimental Validation and Racing. In Proceedings of the American Control Conference, New York, NY, USA, 9–13 July 2007; pp. 2296–2301. [Google Scholar] [CrossRef]
  10. Yang, J.; Bao, H.; Ma, N.; Xuan, Z. An Algorithm of Curved Path Tracking with Prediction Model for Autonomous Vehicle. In Proceedings of the 13th International Conference on Computational Intelligence and Security (CIS), Hong Kong, China, 15–18 December 2017; pp. 405–408. [Google Scholar] [CrossRef]
  11. Dul, F.; Lichota, P.; Rusowicz, A. Generalized Linear Quadratic Control for a Full Tracking Problem in Aviation. J. Sens. 2020, 20, 2955. [Google Scholar] [CrossRef] [PubMed]
  12. Salehpour, S.; Pourasad, Y.; Taheri, S. Vehicle path tracking by integrated chassis control. J. Cent. South Univ. 2015, 22, 1378–1388. [Google Scholar] [CrossRef]
  13. Birla, N.; Swarup, A. Optimal preview control: A review. J. Optim. Control Appl. Methods 2015, 36, 241–268. [Google Scholar] [CrossRef]
  14. Tomizuka, M. Optimal continuous finite preview problem. IEEE Trans. Autom. Control 1975, 20, 362–365. [Google Scholar] [CrossRef]
  15. Sheridan, T. Three Models of Preview Control. IEEE Trans. Hum. Factors Electron. 1966, HFE-7, 91–102. [Google Scholar] [CrossRef]
  16. Hać, A. Optimal Linear Preview Control of Active Vehicle Suspension. Veh. Syst. Dyn. 1992, 21, 167–195. [Google Scholar] [CrossRef]
  17. Hayase, M.; Ichikawa, K. Optimal Servosystem Utilizing Future Value of Desired Function. Trans. Soc. Instrum. Control Eng. 1969, 5, 86–94. [Google Scholar] [CrossRef] [Green Version]
  18. Katayama, T.; Ohki, T.; Inoue, T.; Kato, T. Design of an optimal controller for a discrete-time system subject to previewable demand. Int. J. Control 1985, 41, 677–699. [Google Scholar] [CrossRef]
  19. Liao, F.; Tang, Y.Y.; Liu, H.; Wang, Y. Design of an Optimal Preview Controller for Continuous-Time Systems. Int. J. Wave-Lets Multiresolut. Inf. Process 2011, 9, 655–673. [Google Scholar] [CrossRef]
  20. Zhang, W.; Bae, J.; Tomizuka, M. Modified Preview Control for a Wireless Tracking Control System with Packet Loss. IEEE/ASME Trans. Mechatronics 2015, 20, 299–307. [Google Scholar] [CrossRef]
  21. Wu, J.; Liao, F.; Tomizuka, M. Optimal preview control for a linear continuous-time stochastic control system in finite-time horizon. Int. J. Syst. Sci. 2016, 48, 129–137. [Google Scholar] [CrossRef]
  22. Zhen, Z.-Y.; Wang, Z.-S.; Wang, D.-B. Information Fusion Estimation Based Preview Control for Discrete Linear System. Acta Autom. Sin. 2010, 36, 347–352. [Google Scholar] [CrossRef]
  23. Zhen, Z.-Y.; Wang, Z.-S.; Wang, D.-B. Optimal preview tracking control based on information fusion in error system. Kongzhi Lilun Yu Yingyong/Control Theory Appl. 2009, 26, 425–428. [Google Scholar]
  24. Cao, M.; Liao, F. Design of an optimal preview controller for linear discrete-time descriptor systems with state delay. Int. J. Syst. Sci. 2015, 46, 932–943. [Google Scholar] [CrossRef]
  25. Lu, Y.; Liao, F.; Deng, J.; Pattinson, C. Cooperative optimal preview tracking for linear descriptor multi-agent systems. J. Frankl. Inst. 2018, 356, 908–934. [Google Scholar] [CrossRef] [Green Version]
  26. Li, Z.; Chitturi, M.V.; Bill, A.R.; Noyce, D.A. Automated Identification and Extraction of Horizontal Curve Information from Geographic Information System Roadway Maps. Transp. Res. Rec. J. Transp. Res. Board 2012, 2291, 80–92. [Google Scholar] [CrossRef] [Green Version]
  27. Årzén, K.-E.; Johansson, M.; Babuška, R. Fuzzy Control Versus Conventional Control. In Fuzzy Algorithms for Control; Verbruggen, H.B., Zimmermann, H.-J., Babuška, R., Eds.; Springer: Dordrecht, The Netherlands, 1999; pp. 59–81. [Google Scholar]
  28. Baturone, I.; Moreno-Velo, F.; Sanchez-Solano, S.; Ollero, A. Automatic Design of Fuzzy Controllers for Car-Like Autonomous Robots. IEEE Trans. Fuzzy Syst. 2004, 12, 447–465. [Google Scholar] [CrossRef] [Green Version]
  29. Li, T.-H.S; Chang, S.-J. Autonomous fuzzy parking control of a car-like mobile robot. IEEE Trans. Syst. Man Cybern. Part A Syst. Hum. 2003, 33, 451–465. [Google Scholar] [CrossRef]
  30. Lee, T.; Lam, H.; Leung, F.; Tam, P. A practical fuzzy logic controller for the path tracking of wheeled mobile robots. IEEE Control Syst. 2003, 23, 60–65. [Google Scholar] [CrossRef]
  31. Sanchez, O.F.A.; Ollero, A.; Heredia, G. Adaptive fuzzy control for automatic path tracking of outdoor mobile robots. Application to Romeo 3R. In Proceedings of the 6th International Fuzzy Systems Conference, Barcelona, Spain, 5 July 1997; Volume 1, pp. 593–599. [Google Scholar] [CrossRef]
  32. Vans, E.; Vachkov, G.; Sharma, A. Vision based autonomous path tracking of a mobile robot using fuzzy logic. In Proceedings of the Asia-Pacific World Congress on Computer Science and Engineering, Nadi, Fiji, 4–5 November 2014; pp. 1–8. [Google Scholar] [CrossRef]
  33. Guo, J.; Hu, P.; Li, L.; Wang, R. Design of Automatic Steering Controller for Trajectory Tracking of Unmanned Vehicles Using Genetic Algorithms. IEEE Trans. Veh. Technol. 2012, 61, 2913–2924. [Google Scholar] [CrossRef]
  34. Luo, C. Neural-network-based fuzzy logic tracking control of mobile robots. In Proceedings of the 13th IEEE Conference on Automation Science and Engineering (CASE), Xi’an, China, 20–23 August 2017; pp. 1318–1319. [Google Scholar] [CrossRef]
  35. Kayacan, E.; Ramon, H.; Saeys, W. Robust Trajectory Tracking Error Model-Based Predictive Control for Unmanned Ground Vehicles. IEEE/ASME Trans. Mechatron. 2016, 21, 806–814. [Google Scholar] [CrossRef]
  36. Guo, H.; Liu, J.; Cao, D.; Chen, H.; Yu, R.; Lv, C. Du-al-envelop-oriented moving horizon path tracking control for fully automated vehicles. Mechatronics 2018, 50, 422–433. [Google Scholar] [CrossRef] [Green Version]
  37. Mayne, D.Q. Model predictive control: Recent developments and future promise. Automatica 2004, 50, 2967–2986. [Google Scholar] [CrossRef]
  38. Li, S.; Wang, G.; Guo, L.; Zheng, L.; Li, X.; Yu, Z.; Cui, G.; Zhang, J. NMPC-Based Yaw Stability Control by Active Front Wheel Steering. IFAC PapersOnLine 2018, 51, 583–588. [Google Scholar] [CrossRef]
  39. Yu, H.; Duan, J.; Taheri, S.; Cheng, H.; Qi, Z. A model predictive control approach combined unscented Kalman filter vehicle state estimation in intelligent vehicle trajectory tracking. Adv. Mech. Eng. 2015, 7, 1687814015578361. [Google Scholar] [CrossRef] [Green Version]
  40. Falcone, P.; Borrelli, F.; Asgari, J.; Tseng, H.E.; Hrovat, D. Predictive active steering control for autonomous vehicle systems. IEEE Trans. Control Syst. Technol. 2007, 15, 566–580. [Google Scholar] [CrossRef]
  41. Zhang, L.; Wu, G. Combination of Front Steering and Differential Braking Control for the Path Tracking of Autonomous Vehicle; SAE Technical Paper; SAE International: Warrendale, PA, USA, 2016. [Google Scholar] [CrossRef]
  42. Yao, Z.; Jiang, H.; Cheng, Y.; Jiang, Y.; Ran, B. Integrated Schedule and Trajectory Optimization for Connected Automated Vehicles in a Conflict Zone. IEEE Trans. Intell. Transp. Syst. 2020, 23, 1841–1851. [Google Scholar] [CrossRef]
  43. Brumercik, F.; Lukac, M.; Caban, J. Unconventional Powertrain Simulatiion. Commun. Sci. Lett. Univ. Zilina 2016, 18, 30–33. [Google Scholar] [CrossRef]
  44. De-Las-Heras, G.; Sánchez-Soriano, J.; Puertas, E. Advanced Driver Assistance Systems (ADAS) Based on Machine Learning Techniques for the Detection and Transcription of Variable Message Signs on Roads. Sensors 2021, 21, 5866. [Google Scholar] [CrossRef] [PubMed]
  45. Nie, X.; Min, C.; Pan, Y.; Li, K.; Li, Z. Deep-Neural Network-Based Modelling of Longitudinal-Lateral Dynamics to Predict the Vehicle States for Autonomous Driving. Sensors 2022, 22, 2013. [Google Scholar] [CrossRef] [PubMed]
  46. Gámez Serna, C.; Ruichek, Y. Dynamic Speed Adaptation for Path Tracking Based on Curvature Information and Speed Limits. Sensors 2017, 17, 1383. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  47. Snider, J. Automatic Steering Methods for Autonomous Automobile Path Tracking; Number CMU-RI-TR-09-08; Institution Carnegie Mellon University: Pittsburgh, PA, USA, 2009. [Google Scholar]
  48. Macadam, C.C. Application of an Optimal Preview Control for Simulation of Closed-Loop Automobile Driving. IEEE Trans. Syst. Man, Cybern. 1981, 11, 393–399. [Google Scholar] [CrossRef]
  49. Farooq, A.; Limebeer, D. Path following of Optimal Trajectories Using Preview Control. In Proceedings of the 44th IEEE Conference on Decision and Control, Seville, Spain, 15 December 2005; pp. 2787–2792. [Google Scholar] [CrossRef]
Figure 1. Architecture overview of proposed method.
Figure 1. Architecture overview of proposed method.
Machines 10 00420 g001
Figure 2. Vehicle dynamic bicycle model.
Figure 2. Vehicle dynamic bicycle model.
Machines 10 00420 g002
Figure 3. Representation of the parameters and classification of the curve.
Figure 3. Representation of the parameters and classification of the curve.
Machines 10 00420 g003
Figure 4. Bearing angle presentation.
Figure 4. Bearing angle presentation.
Machines 10 00420 g004
Figure 5. Curve driving scenario.
Figure 5. Curve driving scenario.
Machines 10 00420 g005
Figure 6. Tracking performance of different path tracking controllers in the simulated trajectory.
Figure 6. Tracking performance of different path tracking controllers in the simulated trajectory.
Machines 10 00420 g006
Figure 7. Speed comparison of different trajectory tracking controllers in the simulated trajectory.
Figure 7. Speed comparison of different trajectory tracking controllers in the simulated trajectory.
Machines 10 00420 g007
Figure 8. Yaw angle comparison for different trajectory tracking controllers in the simulated trajectory.
Figure 8. Yaw angle comparison for different trajectory tracking controllers in the simulated trajectory.
Machines 10 00420 g008
Figure 9. Lateral error comparison of the different trajectory tracking controllers.
Figure 9. Lateral error comparison of the different trajectory tracking controllers.
Machines 10 00420 g009
Figure 10. Steering angle of the simulated trajectory.
Figure 10. Steering angle of the simulated trajectory.
Machines 10 00420 g010
Figure 11. Real test track.
Figure 11. Real test track.
Machines 10 00420 g011
Figure 12. Reference path with identified sharp curves.
Figure 12. Reference path with identified sharp curves.
Machines 10 00420 g012
Figure 13. Reference UniSA trajectory (considered from the GPS) tracking performance comparison for different trajectory tracking controllers.
Figure 13. Reference UniSA trajectory (considered from the GPS) tracking performance comparison for different trajectory tracking controllers.
Machines 10 00420 g013
Figure 14. Speed comparison of the different trajectory tracking controllers.
Figure 14. Speed comparison of the different trajectory tracking controllers.
Machines 10 00420 g014
Figure 15. Yaw angle presentation of different trajectory tracking controllers.
Figure 15. Yaw angle presentation of different trajectory tracking controllers.
Machines 10 00420 g015
Figure 16. Steering angle of the autonomous vehicle.
Figure 16. Steering angle of the autonomous vehicle.
Machines 10 00420 g016
Figure 17. Average lateral error comparison of the different trajectory tracking controllers.
Figure 17. Average lateral error comparison of the different trajectory tracking controllers.
Machines 10 00420 g017
Table 1. Vehicle model parameters considered from [47,48,49].
Table 1. Vehicle model parameters considered from [47,48,49].
ParameterValueDescription
M1155.0 kgVehicle mass
W1.6 mWidth of vehicle
I1466.35 kgm 2 Vehicle yaw moment inertia
WB2.6 mWheel base
TR0.33 mTyre radius
TW0.21 mTyre width
l f 1.165 mDistances of front tire from the C.G of the vehicle
l r 1.165 mDistances of rear tire from the C.G of the vehicle
C f 162,835.82 N/radCornering stiffness of front tyre
C r 162,835.82 N/radCornering stiffness of rear tyre
Table 2. Error comparison at every curve of the simulated trajectory. Results are presented in meters.
Table 2. Error comparison at every curve of the simulated trajectory. Results are presented in meters.
CurvePPStanleyLQRMPCProposed
10.02010.01920.01630.01820.0156
20.02380.02310.01990.01930.0185
30.03100.03090.03060.03010.0291
40.04310.04280.04210.04150.0404
50.04040.04030.04030.04030.0396
Average0.03160.03120.02990.02980.0287
Travel time63 s63 s63 s63 s63 s
Table 3. Root mean square errors comparison in sharp curves of the proposed trajectory dataset. Results are presented in meters.
Table 3. Root mean square errors comparison in sharp curves of the proposed trajectory dataset. Results are presented in meters.
CurvePPStanleyLQRMPCProposed
10.19150.14030.13840.05040.0905
20.23410.16190.13980.09920.0910
30.20960.15340.12750.05490.0531
40.11010.10410.10070.04810.0467
50.13050.12530.11310.09180.0685
60.50390.35800.31690.27270.1553
70.63210.33370.27440.28090.1561
80.69090.38240.34100.29010.1624
90.69110.37730.33050.29030.1631
100.08730.08510.08220.08140.0752
110.08170.08030.08130.08830.0747
120.15440.10320.09490.06210.0533
130.09090.09060.08710.07100.0651
140.11920.11260.10080.10980.0801
Average0.28050.18630.16630.13500.0953
Travel time78 s79 s79 s78 s82 s
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Hossain, T.; Habibullah, H.; Islam, R. Steering and Speed Control System Design for Autonomous Vehicles by Developing an Optimal Hybrid Controller to Track Reference Trajectory. Machines 2022, 10, 420. https://doi.org/10.3390/machines10060420

AMA Style

Hossain T, Habibullah H, Islam R. Steering and Speed Control System Design for Autonomous Vehicles by Developing an Optimal Hybrid Controller to Track Reference Trajectory. Machines. 2022; 10(6):420. https://doi.org/10.3390/machines10060420

Chicago/Turabian Style

Hossain, Tagor, Habib Habibullah, and Rafiqul Islam. 2022. "Steering and Speed Control System Design for Autonomous Vehicles by Developing an Optimal Hybrid Controller to Track Reference Trajectory" Machines 10, no. 6: 420. https://doi.org/10.3390/machines10060420

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop