You are on page 1of 6

2015 10th System of Systems Engineering Conference (SoSE)

Intelligent Adaptive Cruise Control System


Design and Implementation
İslam Kılıç Ahmet Yazıcı Ömür Yıldız
Electrical and Electronics Engineering Computer Engineering Department Savronik Electronics Inc.
Eskisehir Osmangazi University Eskisehir Osmangazi University Eskisehir, TURKEY
Eskisehir, TURKEY Eskisehir, TURKEY omur.yildiz@savronik.com
islam.kilic@outlook.com ayazici@ogu.edu.tr

Mustafa Özçelikors Atakan Ondoğan


Electrical and Electronics Engineering Electrical and Electronics Engineering
Eskisehir Osmangazi University Eskisehir Osmangazi University
Eskisehir, TURKEY Eskisehir, TURKEY
mozcelikors@gmail.com atakanondogan@outlook.com

Abstract- Advanced driver assistance systems (ADAS) have about environment in vision range. Meaningful data for
a critical role in the development of the active safety ACC is extracted from raw sensor data in this subsystem.
systems for vehicles. There are various sub technologies Long range radar sensors are widely used in the ACC
like Adaptive cruise control (ACC), Collision avoidance systems [1], [4].
system, Blind spot detection etc. under ADAS. All these There are various control algorithms [6], [7] for the
technologies are also accepted as the preliminary ACC system. In [6], a model predictive control algorithm is
technology of autonomous driving. Therefore, during used. This algorithm predicts the vehicle acceleration or
development of these technologies using a system of system deceleration for N step future and, then generates the
(SOS) control approach would help both decreasing the required control inputs. The jerk is also considered for the
development costs and unifying all these technologies under comfort in this system. Fuzzy logic controller is also used
autonomous driving. In this paper, a SOS based intelligent for the ACC [7]. Inputs of the system are relative speed
ACC system design is proposed. The ACC system has high error and distance error. These crisp inputs are converted to
level control, low level control and sensor units. fuzzy membership functions and rules are defined for fuzzy
inference system. Output of the system is the required
Keywords: ADAS, Intelligent Adaptive Cruise Control, deceleration. Defuzzyfication process is applied to output
Model Predictive Control, ACC subsystems, Radar. and required crisp deceleration is extracted.
In this study, an intelligent ACC system which is
1 Introduction based on the autonomous driving control architecture, is
proposed. It consists of high level control, low level control,
Advanced driver assistance systems (ADAS) are and sensor unit subsystems. It has a system of system(SOS)
increasingly used in automobile in last decade. The approach such that other technologies in the area of the
advanced sensor technology and the increasing ADAS can use the same architecture.
computational power help widespread of the ADAS [1]. It In section 2, the current ACC technology and
requires many subsystems to work in coordination. ADAS algorithms are presented. The proposed system is given in
is also accepted as the preliminary technology of section 3. In section 4, the simulation and experimental
autonomous driving which requires large scale system to results are given. Section 5 is the conclusion.
work in coordination [2]. ADAS may realize a shared
understanding of driving decisions and actions. Thus, it
could be able to alert driver about possible dangerous
2 Preliminaries: The subsystems in ACC
situations i.e. lane departure warning. Moreover, it could The ACC system mainly consists of a Human machine
recognize unconscious by-pass automation [3]. interaction(HMI), Control and Sensor unit to work in
Adaptive cruise control (ACC) is one of the sub coordination as in figure 1.
technologies in the area of the ADAS. In the literature, there
are various studies in this area [1]-[14]. It helps increasing
the driving comfort and the driving safety. The ACC system
adapts the speed of the host car according to target(leading)
car speed and track the safety distance [4].
ACC systems mainly consist of control and sensor
subsystems [5]. The sensor subsystem gives information

978-1-4799-7611-9/15/$31.00 ©2015 IEEE 232


2015 10th System of Systems Engineering Conference (SoSE)

Vt : T arg et vehicle speed


In [7] and [12], Fuzzy logic control is proposed for the
Vh : Host vehicle speed ACC system. The algorithm uses member ship functions for
input and output. Distance and speed error is the inputs of
the algorithm. Output is the required acceleration or
deceleration. Fuzzyfication is applied to crisp inputs then
rules are defined for the system. Defuzzyfication process is
applied to the output function. Sliding mode control [13]
and Fractional order control [14] are also used for ACC
Vt
Vh system.
The Control methods given above usually produce
reference speed or acceleration. Another actuator control
unit([14], [15], [16]) is used to track desired reference
Figure 1 ACC System values and produces an output for brake and throttle.
The control unit gets the relative distance( xr ) and relative 3 The Proposed ACC System
velocity( Vr ) information between two vehicles through the The control architecture of the proposed ACC system
sensing unit, and adjusts the vehicle speed(Host vehicle) consists of High Level Control (HLC) and Low Level
considering the safety distance and the user speed request Control (LLC) units (see Figure 2). The sensing unit
through the HMI unit. The details of subsystems are given provides the necessary data to both units. Host vehicle
below. speed is measured from encoders while long range radar
provides distance and speed information for the target
vehicle.
2.1 Sensing and HMI Unit
Radar, Laser and Lidar sensors are used to detect
objects in automotive applications. Long range radar sensor Vset , xsafe _ range , ACC
are preferred for ACC systems [8]. It is due to that Radar
gives high accuracy in adverse weather conditions. Lidar is Vref
Vr , xr

also used for autonomous vehicle application due to high


measuring range and accuracy. But, it does not work
accurately in bad weather conditions [9].
The radar sensor can measure the distance and relative
speed between host and target vehicle . Depending on the
model, some radar sensors give information about object
speed, object position, object width, object type and object Vmeasured
id during the tracking. An encoder is also required to
Figure 2 Proposed ACC System
measure the speed of the of host car.
The user enters the desired settings and get some
Vset : Setpo int speed (set by driver )
visualization about the system through the HMI unit. The
HMI unit for autonomous driving is another active research xsafe _ range : Safety dis tan ce range(small, medium, long)
area [10]. ACC : ACC mod e status (on or off)

2.2 Controller This architecture design is based on the widely used


autonomous vehicle control approach [17]. The control has
In the literature, various control algorithms are used in hybrid multi-layered decision control architecture [18]. It
control part of the ACC system. In [6], [11], Model provides flexibility for the future developments.
predictive control algorithm is used to calculate the desired
acceleration or deceleration. In [6], there are two control
loops to realize the ACC behavior. The outer control loop is
3.1 High Level Control Unit
realized with MPC. Performance index includes the terms The HLC is responsible for the conscious level
related to relative distance, relative speed error and jerk for decisions such as adjust the speed to keep a minimal
comfort driving. Algorithm is used to track safety distance distance or keep the desired velocity. The decision
with comfort driving constraints. Algorithm output is the parameters such as desired safety distance range ( xsafe _ range )
required acceleration or deceleration. Inner loop of the
system tracks the required acceleration or deceleration. In and desired speed ( Vset ) is set by the user through the HMI
[11], a hybrid model predictive control algorithm based unit. The decision mechanism is realized using the state
ACC system is designed. Acceleration and jerk is machine (see Figure 3), depending on the measured target
considered as constraints. speed ( Vtarget ), host vehicle speed( Vhost ) and the user
parameters.

233
2015 10th System of Systems Engineering Conference (SoSE)

where γ ∈ [1, 2] is a parameter to distinguish the


ACC xreact from xsafe given by equation 2. In other cases DCS is
set to 0.
OFF
In distance control state Model Predictive Controller is used

DC
ACC
ACC to follow the target vehicle. Mathematical model for MPC

S&
C
controller is given as [6]

AC
AC

C&
&
CS

SS
ACC
D

⎧ x(k + 1) = Ax(k) + Bu(k)


DCS & ACC & SS T:⎨
⎩ y (k) = x(k)
C

DCS & ACC & SS


AC

Distance DCS & ACC Cruise


S&

Control Control
⎡1 Ts 0 ⎤ ⎡ −0.5Ts 2 ⎤ (3)
DC

⎢ ⎥ ⎢ ⎥
Pass & SS A = 0 1 0 , B = ⎢ −Ts ⎥
DCS
& ACC DC S&A
CC ⎢ ⎥
⎣⎢0 0 1⎦⎥ ⎢1 ⎥
⎣ ⎦
DCS & ACC
C = [10 0; 010;0 01]
Figure 3 State Machine of HLC Unit
where x(k) = [x r (k), v r (k), v h (k)]T is the state vector with
The state machine has three inputs; ACC status(ACC), relative distance, relative speed( Vr = Vhost − Vt arg et ) and host
distance control status(DCS) and speed status(SS). The
vehicle speed respectively. The control input u(k) is the
ACC input has the status value of 1(ACC) and 0( ACC ) desired acceleration value of the host vehicle a h (k) . The
depending on user selection. The DCS and SS inputs are
determined depending on measured speed values and user constraints related to the relative distance, jerk and
preferences. The HLC state machine consists of four states; acceleration are given in Equation 4.
ACC off state, distance control state, pass state and cruise
control state. ⎧0 < xr (k)
⎪ (4)
C : ⎨amin ≤ a (k) ≤ a max(v h (k))
ACC OFF State: ⎪| j(k) ≤ j |
The decision system is in the ACC OFF state when the ⎩ max

ACC status is off (ACC=0). When the driver makes the


ACC status on from HMI unit then the state switches to where Δu (k) = u(k) − u(k − 1) is jerk of the vehicle at k. step.
distance control state or cruise control state. Performance index is given in equation 5.

Distance Control State: M

In distance control state, the vehicle tracks the safety J(Δu (k), x(k)) = ∑ [ε T (k + n | k) Q ε (k + n | k)] +
n =1 (5)
distance. If the inputs ACC=1, and DCS=1, state switches N −1
to distance control state. ∑ [Δ u T
(k + n) R Δ u(k + n)]
Let us define the safety distance(xsafe) n =o

xsafe = Vhost *τ + d 0 (1) where ε T (k + n | k) ≈ (e(k + n | k), a h (k + n | k))T . In this


equation e(k + n | k) is the tracking distance error and
where τ is time headway for safety distance and d0 is calculated as
standstill distance . The time headway can be set by driver e = xsafe − xr . (6)
as small( τ = 1.6 ), medium( τ = 2.5 ), or long( τ = 4.0 )
through the HMI unit. Model predictive controller produces an output which is
The distance control status is set DCS=1, if there exist a required acceleration or deceleration that is calculated by
vehicle that has smaller relative distance than safety minimizing defined performance index (J) under defined
distance. The distance control status input is also set constraints. Integral of the u(k) (i.e. the acceleration or
(DCS=1) if there is a vehicle in front of the host vehicle deceleration)
with slower speed( Vtarget ) than, and the relative distance vref = v0 + ∫ u
between two vehicles is less than reaction distance( xreact ) (7)
vref (k) = v(k − 1) + u(k) Ts
xreact = Vhost *τ * γ + d 0 (2)
is distance control state output(Equation 7) feed to low level
controller.

234
2015 10th System of Systems Engineering Conference (SoSE)

Pass State: e = Vref − Vhost (8)


If the target vehicle has a relative distance greater than
reaction distance given by equation 2 and the ACC mode is
on, the pass state becomes active. In this state the current and output is the required voltage with constraints that is
speed of vehicle is compared to desired speed and if it is applied to motor driver. The required voltage is calculated
less than, the reference speed is increased considering the using PID gains and speed error as in
acceleration value (see Figure 4). If target vehicle’s speed is
increasing less than 2 m/s2 acceleration, reference speed
k
e(k) − e(k − 1) (9)
Erequired (k) = Kp * e(k) + Ki * Ts ∑ e(i) + Kd *
value of host vehicle taken as target vehicle speed. They are 0 Ts
feed to the low level controller.
where Erequired ( k ) is output of the PID controller defined as
required voltage value. The voltage value are applied to the
motor driver using the constraints:
Vsetpo int if Erequired (k) > 4.8
Vhost a = 2 m / s2 Eapplied (k) = 4.8 (10)
else if Erequired (k) < 2.24
t Eapplied (k) = 0

Figure 4 Reference speed profile


In this state the speed status is checked. The speed
status set to SS=1, if current speed of the host vehicle is in
the vicinity of set point speed ( Vset − Vhost < ξ ). Then the
state machine switches to the cruise control state if
DCS & ACC &SS is on.

Cruise control state:


In cruise control state, set point speed of the host Figure 6 Oskar Electrical Vehicle
vehicle is feed to low level controller as reference speed of
vehicle. Host vehicle tracks the set point speed in cruise 3.3 Sensing Unit
control state( DCS & ACC & SS =1).
It is kept in the cruise control state when there is no ARS 308 Long range radar sensor is used as sensing
vehicle front of the host vehicle and set point speed is close unit. ARS 308 LRR sensor can detect objects up to 0-200 m
to host vehicle speed( DCS & ACC & SS =1). If there is a and with an accuracy of 0.25m, and an azimuth angle
augmentation of -8.5o ...+ 8.5o . It has open can protocol,
target vehicle and target vehicle speed is bigger than set
and baud rate is 500kbps. Object or target information send
point speed of host vehicle( DCS & ACC & SS =1) then state is
through CANBUS. The radar sensor is able to detect 64
still kept in cruise control state.
objects in the line of sight. ACC also needs an encoder to
measure the host vehicle speed. Industrial encoder is used to
3.2 Low Level Control Model measure to host vehicle speed.
The LLC handles the control of throttle/brake to 4 Simulations and Tests
maintain the required speed. Low Level control has a PID The proposed ACC system has a SOS based control
controller(see Figure 5) with gains Kp=0.0253, Ki=2.527, architecture. In this architecture, the high level control and
Kd=0.159. The PID controller is designed for an electrical the sensing unit is realized using robot operating system
vehicle(Oskar figure 6) using Cohen-Coon method. (ROS). The low level controller is realized using a free
RTOS based embedded controller. The details of simulation
and test for each subsystem are given below.

Low level controller Test


The low level controller is tested on the OSKAR electrical
vehicle in the figure 6. The reference speed value is given
through HMI unit and the controller calculates motor driver
inputs using the feedback from encoder. The PID controller
tracks a reference speed of 10 km/h as seen in figure 7.
Figure 5 PID Controller Design
The input of the controller is host speed error

235
2015 10th System of Systems Engineering Conference (SoSE)

Object Position information


200

180

160

Object longitudnal distance(m)


140

120

100

80

60

40

20 : Other vehicles
: Target vehicle
0
-50 -40 -30 -20 -10 0 10 20 30 40 50
Object Lateral distance(m)

Figure 9.a the processed radar sensor data


Figure 7 PID controller real time test(Vref=10 km/h)
High level control unit
The high level controller is tested in simulation
environment. Various test scenarios are applied. In figure 8,
there is a target vehicle which is moving at 20 m/sec
constant speed and host vehicle is in the ACC off state
between 0-20th sec. In this figure the relative distance, host
vehicle speed, and the host vehicle acceleration are given in
the first, second and third row respectively. The driver sets Figure 9.b A picture from the test
ACC on mode (ACC=1) at the 20th sec with a set point
speed of the 24 m/s. The time headway was selected as
small. When the ACC is on there was a relative distance of
100 m. The state machine switches to the cruise control
state ( xreact < xr ). Then state machine switches to distance
control state at 32nd sec and the control algorithm track the
safety distance of 37 m (see Figure 8). Note that the host
vehicle speed was decreased to target vehicle speed (20
m/sec).

ACC : Off ACC : On


DCS = 0 DCS = 1
150
xreact <= xr Figure 10.a the processed radar sensor data
100 X: 64.4
Xr (m)

Vhost > Vt arg et Y: 37.07


50
xsafe
0
0 10 20 30 40 50 60 70 80 90
Time (sec)
30
Vh (m/sn)

20
10 Vt arg et = 20m / s

0
0 10 20 30 40 50 60 70 80 90
Time (sec)
4

Figure 10.b A picture from the test in the snowy weather


ah (m/sn2

2
0
-2
-4
0 10 20 30 40 50 60 70 80 90 5. Conclusions
Cruise Time (sec)
Control
Dis tan ce Control State
state
In this paper, an intelligent ACC system is designed.
Each subsystem was designed and tested independently
Figure 8 The high level controller test result considering the data interface. High level unit makes the
conscious level decisions. All subsystem would be
The Sensing Unit test integrated to build up all ACC system. Gazebo simulator
The raw data obtained from the radar sensor is will be used for integration tests of all system. Real time
processed to determine the moving objects. It can detect 6 application of ACC system will be on Oskar electrical
different types of objects up to 200 m. The long range radar vehicle (see Figure 6).
is tested for adverse weather conditions as in figure 9 and The ROS and the SOS based control approach has
figure 10. The one in the circle corresponds to the target provided a flexibility in development. Note that other
vehicle. ADAS feature can also be easily implemented in this
architecture.

236
2015 10th System of Systems Engineering Conference (SoSE)

Acknowledgement [11] D. Corona, M. LAzar, B. De Schutter, M. Heemels, " A


This work is supported by Ministry of Science, hybrid MPC approach to the design of a Smart adaptive
Industry and Technology-SANTEZ Project under the grant cruise controller", Computer Aided Control System Design,
number 0508.STZ.2013-2 2006 IEEE International Conference on Control
Applications, 2006 IEEE International Symposium on
Intelligent Control, Munich, pp. 231-236, Oct. 2006.
References
[1] A. Shaout, D. Colella, S. Awad, “Advanced Driver [12] S. Germann, R. Isermann, “Nonlinear distance and
Assistance Systems- Past, Present and Future,” Computer cruise control for passenger cars,” American Control
Engineering Conference (ICENCO), Giza, pp. 72-82, Dec. Conference, Seattle, pp. 3081-3085, Jun. 1995
2011.
[13] B. Ganji, A. Z. Kouzani, Sui Yang Khoo, M. Nasir, "A
[2] Li Lin, Xichan Zhu, “Design Concept and Method of sliding mode controlbased adaptive cruise controller,"
Advanced Driver Assistance Systems.” Measuring Control & Automation (ICCA), 11th IEEE International
Technology and Mechatronics Automation (ICMTMA), Conference on IEEE, Taichung, pp. 394,397, June 2014.
Hong Kong, pp.434-437, Jan. 2013
[14] S.H. Hosseinnia, I. Tejado, V. Milanes, J. Villagra,
[3] Li Li, Ding Wen, Nan-Ning Zheng, Lin-Cheng Shen," B.M. Vinagre, "Experimental Application of Hybrid
Cognitive Cars: A New Frontier for ADAS Research," Fractional-Order Adaptive Cruise Control at Low Speed,"
Intelligent Transportation Systems, IEEE Transactions on, Control Systems Technology, IEEE Transactions on, Vol.
Vol. 13, No. 1, pp. 395-407, March 2012. 22, No.6, pp. 2329-2336, Nov. 2014

[4] Li Shengbo, Li Keqiang, R. Rajamani, Jianqiang Wang, [15] U. Yayan, M. Akçakoca, İ. Kılıç, H. Yücel, A. Yazıcı,
"Model Predictive Multi-Objective Vehicular Adaptive "Low-Level Controller Desgin for Intelligent Wheelchair" »
Cruise Control," Control Systems Technology, IEEE In Turkish : "Akıllı Tekerlekli Sandalye için Düşük Seviye
Transactions on, Vol. 19, No. 3, pp. 556-566, May. 2011. Denetleyici Tasarımı," Kocaeli, pp. 119-124 ,TOK 2013.

[5] S. Echegaray, W. Luo, “The modular design and [16] J.E. Naranjo, C. Gonzalez, R. Garcia, T. de Pedro,
implementation of an intelligent cruise control system,” "ACC+Stop&Go Maneuvers With Throttle and Brake
System of Systems Engineering, SoSE '08. IEEE Fuzzy Control," Intelligent Transportation Systems, IEEE
International Conference on, Singapore, pp. 1-6, Jun. 2008. Transactions on, Vol. 7, No. 2, Jun. 2006.

[6] G. Naus, R. van den Bleek, J. Ploeg, B. Scheepers, [17] U. Ozguner, K.Redmill, J.Martin, R. Mati, A.Yazici,
"Explicit MPC design and performance evaluation of an C.Toth, A.Kurt, A.Hsieh, Technical Report :The Ohio State
ACC Stop-&-Go," American Control Conference, Seattle, University ,Autonomous City Transport (OSU-ACT) 2007
p:224-229, June 2008. Darpa Urban Challange, June 2007.

[7] R. Muller, G. Nocker, “Intelligent Cruise Control with [18] A. Kurt, U. Ozguner, "Hybrid State System
Fuzzy Logic”, Intelligent Vehicles '92 Symposium, Detroit, Development for Autonomous Vehicle Control in Urban
pp. 173-178, June 1992. Scenarios," The International Federation of Automatic
Control Seoul, Korea, July 2008.
[8] H.H. Meinel, "Evolving Automotive Radar - from the
very beginnings into the future," Antennas and Propagation
(EuCAP), 2014 8th European Conference on, The Hague,
pp. 3107-3114.

[9] W.D. Jones, "Keeping cars from crashing," IEEE


Spectrum, Vol. 38, No. 9, pp. 40-45, September 2001.

[10] A. Amditis, E. Bertolazzi, M. Bimpas, F. Biral, P.


Bosetti, M. Da Lio, L. Danielsson, A. Gallione, H. Lind, A.
Saroldi, A. Sjogren, "A Holistic Approach to the Integration
of Safety Applications: The INSAFES Subproject Within
the European Framework Programme 6 Integrating Project
PReVENT," Intelligent Transportation Systems, IEEE
Transactions on, Vol. 11, No.3, pp. 554-566, Sept. 2010.

237

You might also like