You are on page 1of 6

AVEC ’12

Design of a Model Free Cruise Control

Hakgu Kim, Wongun Kim, Dongwuk Kim, Kyongsu Yi

Seoul National University, Gwanak 599, Gwanak-ro, Seoul, 151-744, Korea

Phone: 082-02-880-1942
Fax: 082-02-880-7194

A methodology to design a model free cruise control algorithm(MFCC) for an autonomous

vehicle is presented in this paper. The proposed controller is a longitudinal velocity controller
which determines throttle and brake inputs based on the desired motion without vehicle
parameters. To that end, a combined vehicle model has been developed and few parameters of the
combined vehicle model have been regulated using an adaptation algorithm. A desired velocity of
the autonomous vehicle has been designed by considering the vehicle acceleration performance
and road curvature. Simulation and vehicle tests have been conducted to evaluate the performance
of proposed controller. Although the vehicle parameters are unknown, the test results show that
quite good tracking performance. The results also indicate that the MFCC considerably reduce the
effects of model uncertainty using the adaptation algorithm.

Vehicle dynamics / Modeling and Simulation

1. INTRODUCTION designed cautiously because the vehicle parameters in

the engine, torque converter and tire model are roughly
In recent year, autonomous vehicle control known. Additionally, the model uncertainty and external
technology has been widely researched as a long-term disturbance should be considered. In this circumstance,
task of automation of transportation system. The control the model based approach could cause tracking problem.
system generally composed of three parts: perception, Since most of the vehicle parameters of the autonomous
decision and control. The perception algorithm is vehicle are unknown, the performance of model based
designed to detect preceding vehicle, pedestrian controller could be influenced by the assumed
unexpected obstacles, etc. The decision algorithm parameters and neglected dynamics. Therefore, the
classifies current driving conditions and choose a proper MFCC has been developed to compensate the
control strategy for given road and vehicle information. unawareness of vehicle parameters of the autonomous
The control part coordinates the throttle, brake and vehicle. A simulation using Carsim software and vehicle
steering inputs to tracking predefined vehicle path and test has been conducted to evaluate the performance of
desired velocity. the proposed model free cruise controller.
This paper focuses on the speed controller of Many authors have focused on the throttle and
autonomous vehicle. To achieve the control purpose, the brake actuation of speed controller. Goodrich has been
desired velocity profile has been designed to minimize proposed human centered design method to determine
the lap time and guarantee safety by considering the the throttle and brake actuation[1]. Some approaches
road curvature and vehicle acceleration capability. The have tried to develop model based lower level controller
tracking performance of the speed controller also should which determines control input based on vehicle
be guaranteed. parameters and inverse dynamics[2]-[5]. Instead of that,
The speed controller of autonomous vehicle has P. Shakouri used linearized vehicle model to design
been designed based on the model based adaptive cruise gain scheduling linear quadratic controller for throttle
controller(ACC). First, the speed controller generates and brake actuation[6]. The fuzzy controller and
desired acceleration such as the upper level controller of intelligent PID controller has been considered by few
the ACC. Then, the lower level controller calculates authors [7]-[8]. A model free controller has been
throttle and brake input to follow the desired dynamics. demonstrated to compensate for neglected dynamics in
The upper level controller of the ACC should be vehicle model[9]-[10].
designed by considering the human comfort and safety. This paper organized as follows. The test vehicle
However, there is no need to consider the human has been introduced in Section 2. This section also
comfort for autonomous vehicle. Therefore, a PID explains a simplified vehicle model for a model free
controller has been used for the upper level controller in cruise controller. The design method of reference
this study. On the other hand, the lower level controller velocity profile has been depicted in Section 3. In
which determines throttle and brake inputs should be section 4. The model free cruise controller for the
AVEC ’12

autonomous vehicle is briefly demonstrated. The

performance of MFCC has been verified using Carsim
software in Section 5. The test result using the
autonomous vehicle has been depicted in Section 6.
Finally, conclusions are presented in Section 7.


Target vehicle for test is depicted in fig. 1. The

MFCC has been used as a speed controller of the test
vehicle. The vehicle is equipped 2-L gasoline engine Fig. 1 Target Vehicle
with front wheel drive system. It also has various
sensors and additional actuators to control throttle,
brake and steering. The information of position and
motion of the vehicle is obtained from an Oxford
Technical Solutions RT 3002. The RT 3002 outputs real  as
time measurements over CAN bus interface. Networked
computers have been used for the data acquisition and
the implementation of the proposed model free cruise
control algorithm. The throttle has been actuated by Pb vs
controlling the engine management system and the input
voltage has been generated using a DSP board. The
brake pedal position has been controlled by wire with a
DC motor.
The model free cruise controller assumes that
vehicle parameter such as engine map, torque converter  as
map, gear ratio are unknown. Any inter vehicle state
cannot be used to develop the vehicle model. That
means that vehicle model should be designed based on
the relationship between the control inputs and vehicle Pb vs
acceleration. Generally, tracking force of a vehicle is
proportional to throttle angle. The braking force is
proportional to the brake pedal position. That means the
vehicle acceleration is proportional to control inputs. If
there were no control inputs, the vehicle decelerates
with aero dynamic drag force and rolling resistance. Fig. 2 Simplified Vehicle Model
This relationship is expressed in (1)
as  (as  Fth  Fb Pb  g ) (1) 3. REFERENCE VELOCITY PROFILE DESIGN

The way points of the test track have been obtained
where as is the vehicle acceleration  is the throttle using RT 3002 dGPS signals by manually driving the
angle, Pb is the brake pressure and g is the zero test track. The way points have been used to calculate
the reference velocity. The way points of test track are
throttle deceleration.  is the time delay of power train depicted in fig. 3.
or brake system. Fth and Fb are imaginary The reference velocity profile should minimize the
parameters that explain the relationship between the lap time as well as take into account the dynamics of the
control inputs and vehicle acceleration. These vehicle. Therefore, the problem of reference velocity
parameters imply powertrain and brake system design is a constrained minimum time optimization
parameters which have not been considered in the problem. In this study, the maximum lateral acceleration
simplified vehicle model. Therefore, it has been named and maximum longitudinal acceleration have been
vehicle characteristic parameters(VCPs). considered as dynamic constraints. The maximum speed
The VCPs are to act as a proportional gain between is also limited for vehicle safety. The optimization
the control inputs and the vehicle acceleration. It is problem has been solved using the dynamic
influenced by the vehicle states such as vehicle speed, programming technique.
engine speed and gear degree as well as vehicle g k  vk   t
parameters like engine map, gear ratio and brake system
J *k  vk   min  g k  vk   J k 1  vk 
prameters. Moreover, it is also contains control delay of vk Vk
the vehicle actuation system. The VCPs continuously
where is g k the cost function, t is the travel time
change during driving. Therefore, a proper adaptation
algorithm is required to design a control system using between stage k and stage k+1, J *k is the optimal cost
the simplified vehicle model. at stage k and J k 1 is the optimal cost at stage k+1.
AVEC ’12

200 parameters. The controller contains the switching

algorithm, vehicle characteristic parameter(VCP)
adaptation algorithm and throttle/brake controller. The
100 switching algorithm determines switching between
throttle and brake based on the desired acceleration. The
VCPs adaptation algorithm calculates VCPs by
0 observing vehicle response for given control inputs. The
throttle/brake controller regulates control inputs based
global y(m)

on the VCPs values and desired acceleration.

-100 The objective of the model free cruise controller is
to minimize the error between the desired acceleration
and subject vehicle acceleration. The control law of
-200 MFCC is directly obtained from the simplified vehicle
model in (1) by substituting desired acceleration ades
instead of as . The resulting control law is:
 1 
  ades   ades  gˆ  
    Fˆth 
-200 -100 0 100 P    1 
 b
global x(m)  ˆ  ades   ades  gˆ  
 Fb 
Fig. 3 Way Points of Test Track
Every stage is one-to-one corresponding with the where Fˆth and Fˆb are the adapted vehicle
way points. The lateral and longitudinal acceleration has characteristic parameters for throttle and brake,
been calculated at every state by considering the road respectively. Is the estimated zero throttling
curvature and vehicle velocity. Then the velocity deceleration. These values should be obtained using
profiles which exceed the maximum lateral and proper adaptation algorithm so as to calculate the
longitudinal acceleration have been deleted in the control inputs.
dynamic programming algorithm. The upper limit of the VCPs adaptation algorithm is quite important part
reference velocity profile has been set to 55km/h for of the MFCC because these parameters account for the
vehicle safety. direct relationship between the control inputs and
vehicle responses. Especially, Fˆth has been affected by
the powertrain parameters such as the vehicle speed, the
The speed controller for autonomous vehicle engine speed, the torque converter and the transmission
composed of two parts such as the ACC: upper level parameters, etc. These parameters are all unknown.
controller and lower level controller. The upper level Therefore, obtaining accurate value of the VCPs for
controller gives the desired acceleration of the target throttle is quite difficult issue and that is also true for
vehicle to lower level controller. Then the lower level that of brake. Moreover, these parameters are imaginary
controller regulates the throttle and brake input to parameter which imply vehicle parameters that had not
follow the desired acceleration. been considered in simplified vehicle model. It means
The upper level controller has been designed using that the real value of VCPs cannot be measured and
simple PID controller. Since the target vehicle is adaptation error is also unknown. However, these values
unmanned vehicle, the speed controller is not need to relate to the inputs and the vehicle responses. The
take into account driver comfort such as jerk. Therefore, simplified vehicle model can be used to calculate the
the simple PID controller is enough to the upper level VCPs. An adaptation algorithm has been designed using
controller. However, the desired acceleration has been this simplified vehicle model.
saturated in a low level for vehicle safety. In case a driver presses the acceleration pedal, the
A design process using inverse dynamics of the brake pressure is zero. Reversely, when the driver
model based ACC can be used for the autonomous presses the brake pedal the throttle angle is zero.
vehicle. However, the powertrain and brake system Therefore, the vehicle characteristic variables could be
parameters of the target vehicle are unknown. Finding obtained from (4).
a   ades  gˆ
these parameters generally takes a lot of effort. To Fth , m  s
overcome disadvantage of designing model based lower 
level controller using inverse dynamics, a model free a   ades  gˆ
cruise controller(MFCC) has been developed as a lower Fb , m  s
level controller for autonomous vehicle. The proposed
controller has been depicted in fig. 5.
Development of the MFCC is the major where Fth, m and Fb , m are the measured value of
contribution of this paper. The MFCC can follow the vehicle characteristic parameters.
desired acceleration command without vehicle
AVEC ’12

60 If the F were assumed nearly zero, the error

dynamics could be obtained by combining (1), (3) and
a   ades  gˆ
1 1
e1  ades  a s   e1  des e2  g

 F ˆ 
20 (8)
 F ˆ
e2  F  Fˆ   e1
ades   ades  gˆ
0 200 400 600 800 1000 1200 1400
distance(m) where g is the disturbance estimation error g  gˆ .
Fig. 4 Reference Velocity Profile Since the system matrix of the error dynamics involves
nonlinear terms, it is nonlinear system. However, the
poles of the characteristic equation of the error
dynamics are not influenced by the control inputs. They
Switching  are only affected by the time delay of the simplified
vref vehicle model and the weight for the measured VCPs.
PID ades Throttle Then, the characteristic equation is:
Controller /Brake
Controller 1 
vs sI  A  s 2  s   0 (9)
VCVs  
as Pb
The time delay  is unknown. It could vary
Model Free Cruise Controller
depending on the vehicle state and parameters, but it
Fig. 5 Speed Controller generally remains in narrow range. Therefore, the time
The measured VCPs cannot be directly used to delay has been set to be 0.25s. The update 
calculate throttle angle and brake pressure. Firstly, when parameter has been determined by considering the
the throttle angle and brake pressure have a value of damping ratio of the characteristic equation.
nearly zero, the VCPs could be highly sensitive to the The MFCC can reduce the effects of the
control inputs. To prevent a sharply change of the VCPs, disturbance using the VCPs adaptation algorithm. The
it should be updated when the throttle angle and brake VCPs are automatically adapted when the vehicle
pressure are upper than a threshold value. Secondly, few acceleration is higher or lower than the desired
seconds after the driver start to press the acceleration acceleration. Even if the MFCC uses the nominal value
pedal, most of the energy which is generated by the for the zero throttling deceleration of the vehicle, the
engine is used to accelerate the engine speed, not the acceleration error converges to zero in a few second.
vehicle speed. Therefore, the update of VCPs for Therefore, the nominal zero throttling deceleration is
throttle should be started few seconds after the control defined as follows:
input is initiated. Thirdly, the VCPs can be assumed as a gˆ  vs   k1vs  k2 (10)
slow varying variable. Although it is influenced by
vehicle parameters and vehicle states, the VCPs are
slowly varying because the vehicle states are not where k1 and k2 are coefficient to calculate the zero
changed sharply in a short time. The sharply change has throttling deceleration. These values have been set the
been prevented using a weighted sum of the measured zero throttling deceleration to be 1m/s2 at 30m/s of
value and the original value. velocity. A disturbance estimation algorithm can be
Fˆth  k  1  wFˆth (k )  1  w  Fth, m developed for the MFCC. However, since the vehicle
(5) parameters are unknown, the effects of disturbance and
Fˆb  k  1  wFˆb (k )  1  w  Fb , m model uncertainty cannot be distinguished by the
MFCC. The deceleration by road grade and by the gear
where the w is a weight for the measured value of change has the same effects on the adaptation algorithm.
VCPs. The switching between throttle and brake has been
The weight function of VCPs can be rewritten as a determined using the nominal zero throttling
continuous form as follows: deceleration with a small hysteresis. If the desired
acceleration is larger than the nominal zero throttling
1  w 

Fˆ    Fˆ  k   Fm  k 
  (6) deceleration, throttle flag is activated. Reversely, the
desired acceleration is lower than the nominal zero
throttling deceleration, brake flag is activated.
Using the continuous adaptation algorithm, the if ades  gˆ  h throttle
error dynamics of the vehicle acceleration and the
elseif ades  gˆ  h brake (11)
VCVs has been analyzed. The errors have been defined
as follows: else No control
e1  as , des  as
e  F  Fˆ
AVEC ’12

A simulation studies have been conducted for given Although the vehicle parameters of SUV vehicle
reference velocity profiles. A SUV vehicle model in model are unknown, the simulation result shows good
Carsim software has been used for simulation. The tracking performance for given velocity profile. The
simulation results are depicted in fig. 6. MFCC regulates control inputs to follow the desired
If the desired acceleration is bigger than the acceleration by adjusting VCVs. Moreover, a signal
nominal zero throttle deceleration, the throttle flag is noise has been applied to the vehicle acceleration signal
activated. Then, the vehicle characteristic in order to imitate the signal noise of the accelerometer.
parameters(VCPs) adaptation algorithm calculates the The simulation result in fig. 6(b) shows that the signal
value of VCP for throttle by observing the vehicle noise has little effect on performance of the MFCC.
acceleration. The VCP is increasing or decreasing until The result also indicates that quite important
the vehicle acceleration error converges to zero. If the advantage of the MFCC algorithm. The algorithm has
desired acceleration is less than the nominal zero not used vehicle parameters to control the target vehicle.
throttle deceleration. The same process for brake is The performance of MFCC would not be influenced by
carried out. the target vehicle parameters. The characteristic
60 equation in (9) also indicates that if time constant of the
target vehicle remains near the assumed value, the
40 damping ratio is determined only by weight for
measured VCPs, not the vehicle parameters. Therefore,

the algorithm can be applied to another vehicle model.

Reference Even though the target vehicle is a random ground
Simulation vehicle such as a truck and military vehicle, the MFCC
0 can be applied without the information about the vehicle
0 20 40 60 80 100
time(s) parameters. Theoretically, the tracking performance can
(a) Velocity be regulated by adjusting the weight  of adaptation

A vehicle test using the autonomous vehicle has


been carried out to confirm the performance of the
-2 Desired model free cruise controller. The reference velocity was
Simulation generated using predefined velocity profile as a function
0 20 40 60 80 100 of global position from the dGPS signals of RT3002
time(s) device. The vehicle velocity had been obtained from the
(b) Acceleration front wheel sensor and a discrete Kalman filter has been
designed to calculate the vehicle acceleration from the
30 velocity signal. The acceleration signal from the dGPS
of RT 3002 device has not been used because of the
20 severe signal noise. Since the test track is the unpaved
road, the severe signal noise had been generated in the

10 dGPS signal. The fig. 7 depicts the test results

The test result shows good tracking performance of
the speed controller for autonomous vehicle. The
0 20 40 60 80 100 reference velocity has been designed properly for real
time(s) system implementation. The vehicle acceleration error
was remained in a proper range during test driving. The
(c) Control inputs test result in fig. 7 (b) shows undesirable peak, but that
peaks have been caused by the front wheel slip when the
control input changes rapidly. The proper saturation
function of reference velocity profile design would be
15 required to prevent undesirable wheel slip. A reasonable
upper level controller to prevent the desired acceleration
10 from severe change of control input could be a solution.
VCVs Th Comparing the results of VCPs and control input in
VCVs Br fig. 6 and fig. 7, the VCPs are different each other for
0 20 40 60 80 100 the same velocity profile. The adaptation algorithm
time(s) automatically regulates the VCPs value is suitable for
the target vehicle. That means the MFCC could have
(d) VCVs robust performance to the model uncertainty and
external disturbance.
Fig. 6 Simulation Results
AVEC ’12

60 by considering vehicle dynamics shows good

performance in real system implementation. The
performance and robustness of model free cruise
controller also has been proved by simulation and

vehicle test. Especially, the results show good tracking

performance despite the model uncertainty and external
0 20 40 60 80 100 120
(a) Velocity
This works have been supported by the BK21
program, SNU-IAMD, the Korea Research Foundation
2 Gran funded by the Korean Government (MEST),
(KRF-2009-200-D00003), and the National Research
0 Foundation of Korea Grant Funded by the Korean

Government (2011-0001277)
Des accel
0 20 40 60 80 100 120 [1] Goodrich, M.A., Boer, E.R., “Model-Based
Human-Centered Task Automation: A Case Study in
(b) Acceleration ACC System Design” IEEE Trans. Syst. Part A:
Systems and Humans, Vol.33, No.3, pp.325-335.
Throttle [2] Han, D., Yi, K., “Design and Evaluation of
Brake intelligent vehicle cruise control systems using a
vehicle simulator”, International Journal of
Automotive Technology, Vol. 7, No. 3, pp. 377-383.

[3] Seungwuk Moon, Ilki Moon, Kyongsu Yi, “Design,

tuning, and evaluation of a full-range adaptive cruise
control system with collision avoidance”, Vol. 17,
0 20 40 60 80 100 120 Issue 4, April, 2009, pp. 442-455.
time(s) [4] Yi, K., Moon, I, “A driver-adaptive stop-and-go
cruise control strategy, Proc. IEEE International
(c) Control inputs Conference on Networking, Sensing and Control,
Taipei, Taiwan.
20 [5] P. Fancher, Z. Bareket, and R. Ervin, Ann Arbor,
“Human-Centered Design of an ACC-with Braking
15 And Forward-Crash-Warning System”, Proc. AVEC
2000, August, 2000, Ann Arbor, Michigan.
10 [6] P.Shakouri, A.Ordys, D.S.Laila, and M. Askari,
VCVs Th “Adaptive cruise control system: comparing
VCVs Br gain-scheduling PI and LQ controllers”, Proc. 18th
0 20 40 60 80 100 120 IFAC World Congress, August, 2011, Milano, Italy.
time(s) [7] St. German and R. Isermann, “Nonlinear distance
and cruise control for passenger car”, Proc.
(d) VCVs American Control Conference, June, 1995, Seattle,
Fig. 7 Vehicle Test Results [8] Jose E. Narajno, Carlos Gonzalez, Ricardo Garcia
and Teresa de pedro, “ACC+Stop&Go maneuvers
The test result also shows that the performance of with throttle and brake fuzzy control”, IEEE
the MFCC can be lowered when the switching between Transactions on Intelligent Transportation Systems,
the throttle and brake is occurred during driving. Since Vol. 7, No. 2, June, 2006.
the adaptation algorithm is activated few seconds after [9] Sungwoo Choi, Brigitte d’ANDREA-NOVEL,
initiating the throttle and brake control, the frequent Michel FLIESS, Hugues MOUNIER and Jorge
change of control input can lower the tracking VILLAGRA, “Model-free control of automotive
performance. engine and brake for stop-and-go scenarios”,
European Control Conference, 2009.
7. CONCLUSION [10] Jorge Villagra, Vicene Milanes, Joshue Perez and
Carlos Gonzalez, “Model-free control techniques for
This paper presents a design method for speed Stop & Go systems”, 13th Internaltional IEEE
control of the autonomous vehicle. The reference Annual Conference on Intelligent Transportation
velocity profile generated using dynamic programming Systems, September, 2010.