You are on page 1of 6

Proceedings of the 2008 IEEE

International Conference on Robotics and Biomimetics


Bangkok, Thailand, February 21 - 26, 2009

Adaptive Cruise Control for an Intelligent Vehicle


Worrawut Pananurak, Somphong Thanok, Manukid Parnichkun
School of Engineering and Technology
Asian Institute of Technology
P.O. Box 4,Klongluang,Prathumthani 12120, Thailand
worrawpa@scg.co.th, somphongt@kmutnb.ac.th, manukid@ait.ac.th

Abstract—In this research, an adaptive cruise control system environments, which may have bicycles and pedestrians.
is developed and implemented on an AIT intelligent vehicle. To The general low-speed ACC system is operated at very
develop the adaptive cruise control system, the original throttle low speed (approximately 5 km/hr) and requires the driver
system and braking system of the vehicle have to be modified.
The original throttle valve which is controlled by a cable from to interfere to stop and restart vehicle motion. Low-speed
the accelerator pedal is modified to the drive-by-wire system ACC was introduced to the Japanese market in 2004.
by using a dc motor with a position control algorithm. The
braking system is modified by using a dc servo motor to directly High-speed ACC system is the evolution of the cruise
control the brake pedal. A proportional and derivative control control. The system provides velocity control as in
with error compensation algorithm is proposed to perform the
velocity control mode. In the distance control mode, a fuzzy conventional cruise control when there is no vehicle in front
logic algorithm is applied. Inputs of the fuzzy controller are of the host vehicle. If a vehicle runs in front of the host
distance error and relative velocity read from a laser range vehicle at a slower speed, the throttle and braking system
finder. The experiments on a racing circuit show that the vehicle are controlled to maintain the inter-vehicle gap which is set
can perform adaptive cruise control efficiently. by the driver. The host vehicle will run at the preset velocity
Index Terms—adaptive cruise control, cruise control, lidar, again when the way ahead is no obstructed, resulting from
radar, automotive technology either the slower vehicle ahead changes the lane or the
driver of the host vehicle moves to the other lane. The
I. I NTRODUCTION first ACC systems were designed to operate at moderate to
high velocity, 40 km/hr and above. Most European systems
Cruise control system is developed for highway driving. operate from 30 km/hr and higher because this is a typical
This system is useful for driving in the roads which are speed limit in city areas. The upper speed range goes as
big, straight, and the destination is farther apart. When high as 200 km/hr. Bishop, R.H. [2] mentioned that ACC
traffic congestion is increasing, the conventional cruise systems should be designed to have a limited braking
control becomes less useful. The adaptive cruise control authority, on the order of 0.25g (full braking in a typical car
(ACC) system is developed to cope up with this situation. is 1.0g). In cases where the distance to the vehicle ahead
The conventional cruise control provides a vehicle with is near and the braking authority of the host vehicle is
one mode of control, velocity control. On the other hand, inadequate to maintain the inter-vehicle gap, audible alerts
ACC provides with two modes of control, velocity and are sounded to force the driver to take control of the vehicle.
distance control. ACC reduces the stress of driving in dense
traffic by acting as a longitudinal control pilot. ACC can In this research, the ACC system is developed on an AIT
work like the conventional cruise control that it is used for intelligent vehicle, Mitsubishi Galant, 1993. The authors
maintaining the vehicle’s preset velocity. Unlike the cruise propose a fuzzy control algorithm to perform the ACC
control, however, ACC can automatically adjust velocity in function. Inputs of the fuzzy controller are distance error
order to maintain a proper distance between obstacle and and relative velocity. These inputs are read from the laser
the vehicle equipped with ACC. This is achieved by using range finder from SICK, LMS 291. Outputs of the controller
laser or radar to measure the relative distance between the are braking command and velocity command.
host vehicle and a vehicle in front.
II. H ARDWARE
Low-speed ACC is one of the systems, which operates To develop the ACC system for the AIT intelligent vehi-
under congested traffic to maintain the distance behind the cle, hardware and sensors are designed and installed on the
obstacle vehicle. This type of ACC system is sometimes platform.
called ”stop-and-go ACC.” Early versions may only perform
a ”stop and wait” function which requires drivers to initiate A. AIT Intelligent Vehicle
a resumption of forward movement when appropriate. The The intelligent vehicle is developed on Mitsubishi Galant
reason is that manufacturers are hesitant to offer such a GLSi, 1993 as shown in Fig. 1. This vehicle has a 2.0 liter,
system to automatically operate in complex low-speed traffic gasoline powered engine, automatic transmission.

978-1-4244-2679-9/08/$25.00 ©2008 IEEE 1794


(a) (b)
Fig. 1. The AIT intelligent vehicle, Mitsubishi Galant GLXi, 1993
Fig. 3. Automatic braking system: (a) Cool Muscle motor installed in the
vehicle, (b) break pedal connected with accelerator cable

B. Throttle Valve Control System


The original throttle valve control system is changed to object surface within the range of the sensor. The elapsed
a drive-by-wire system so as to be able to control by the time between transmitting and receiving of the laser pulse
ACC system. A 12v dc servo motor is installed to control is used to calculate the distance between the object and the
the throttle valve position. A potentiometer is installed at sensor.
the accelerator pedal to measure the pedal position. The
drive-by-wire controller is developed on an ARM7 micro- III. S OFTWARE
controller which reads the required throttle position from A. Drive-by-wire throttle valve position control
output voltage from the potentiometer. Fig. 2 shows the Block diagram of the position control algorithm of the
modified throttle valve control system. throttle valve is shown in Fig. 4. The inner loop is the
C. Automatic Braking Control System velocity control the outer loop is the position control. The
sampling time of the control loop is 2 ms. Digital low-pass
To automatically control the braking system, a Cool Mus- filter with 20 Hz cut-off frequency is used to filter noise in
cle dc servo motor is used to control the braking system. The the velocity signal.
motor, CM1C23L20 with 25:1 gear box ratio, is chosen. This With servo position control, the actuator is applied with a
motor is a closed loop vector drive servo system utilizing control signal which is proportional to the amount of position
an H-infinity controller. A motor driver with a 32-bit RISC error and velocity error, as expressed in Equations (1) and
CPU, a magnetic encoder, and a power management unit (2). The results of the Bode plot and tracking performance
are built into the motor. The motor is controlled by an are shown in Fig. 5 and 6, respectively.
Arm7 microcontroller via serial communication. The motor
is installed in the vehicle as shown in Fig. 3. Rotational
movement of the motor is transferred to linear movement Outputp = Kp (θ − θr ) (1)
by a pulley and a steel cable. If the motor rotates, the brake Outputv = Kv (ω − ωr ) (2)
pedal will be pull down by the cable.
D. Distance Sensor B. Adaptive Cruise Controller
The sensor used to measure the distance to the vehicle in Basically, the ACC has two operating modes. The first
front is the laser range finder, SICK LMS 291. The sensor mode is the velocity control mode which is operated when
is installed at the front bumper of the vehicle. This sensor there is no obstacle ahead of the host vehicle. The other is
measures the distance based on a time-of-flight principle the distance control mode which is operated when the host
(lidar). A single laser pulse is sent out and reflected by an vehicle finds the obstacle vehicle in front.
In the velocity control operation, the vehicle controls its
velocity by the ARM7 microcontroller, using proportional
and derivative control algorithm with command compen-
sator. The block diagram is shown in Fig. 7. The proportional
controller is used to remove the speed error. The derivative

Fig. 2. The modified throttle valve control system Fig. 4. Throttle position control block diagram

1795
Fig. 7. Cruise control block diagram

Fig. 5. Bode diagram of first-order low pass filter for velocity sensor

Fig. 8. ACC block diagram

disterror = distsensor − distset (4)


Fig. 6. Tracking result of motor position control
Relative Speed = Vobs − Vhost (5)

controller is used to reduce the overshoot and oscillation of By using MATLAB, it is easy to select and adjust the
the velocity response. The control signal of the proportional shapes of the membership functions. In this research, the
and derivative control can be described by Equation (3). authors select trapezoid and triangle shape because it is easy
de for programming. The ranges of membership function are
OutputP D = KP + KD (3) shown in Fig. 11 and 12. Each linguistic variable contains
dt
seven terms. The meanings of each input variable are as
For distance control, the authors propose a fuzzy logic follows
algorithm to control the host vehicle. The distance and the
relative velocity between the host vehicle and the obstacle NL : negative large PS : positive small
are the inputs of the fuzzy controller which is implemented NM : negative medium PM : positive medium
in a PC. Fuzzy controller is suitable for multi-parameters and NS : negative small PL : positive large
nonlinear control problems, and the system transfer function Z : zero
is not required. Human experience and experimental results
are used to design the controller. Block diagram of the
system is shown in Fig. 8.
In this research, Mamdani’s fuzzy inference method (FIS)
is applied. The singleton membership function of the outputs
is used. This type of output membership function makes it
convenient for the defuzzification process because it simpli-
fies the computational efforts compared with other types of
membership function. The entire fuzzy system is developed Fig. 9. Fuzzy control block diagram
and implemented by using MATLAB and Microsoft Visual
Basic compiler. Fig. 9 shows the block diagram of the fuzzy
controller. Two input variables are ”relative velocity” and
”distance error.” The block at the middle represents all the
fuzzy inference rules which are the control strategy of the
system. The output variables are commands to control brake
and velocity set point ratio. The inputs are defined as shown
in Fig. 10 and Equations (4) and (5). Fig. 10. Fuzzy input definition

1796
Fig. 11. Membership functions of distance error
Fig. 13. Membership function of output command

TABLE I
T HE F UZZY RULE OF O UTPUT C OMMAND

Output Distance Error


NL NM NS Z PS PM PL
NM NVL NL NM NM NS NS Z
NS NL NM NS NS NS Z Z
Z NM NS Z NS Z PS PS
Relative
Velocity
PS NM Z Z Z Z PM PL
PM NS Z Z PS PM PL PVL
Fig. 12. Membership functions of relative velocity PL NS Z Z PS PL PVL PVL

The membership functions of the output are shown in Fig. PN


13. The outputs are divided into two sides. The negative i=1 wi Zi
Final Output = P N
(6)
side represents the braking command. The positive side i=1 wi
represents the velocity ratio command. Where
NVL : negative very large PS : positive small Final Output = Average of all outputs
NL : negative large PM : positive medium wi = Weight of membership function of Zi
NM : negative medium PL : positive large Zi = output i
NS : negative small PVL : positive very large
Z : zero The control surface of this fuzzy algorithm is shown in
Fig.14.
The fuzzy rules for the ACC are the collection of
linguistic statements. These statements describe how the IV. E XPERIMENT R ESULT
fuzzy inference system should make a decision according to Two types of experiments are conducted. In the first
the inputs. The example of fuzzy rules is shown as follows. experiment, the velocity control mode experiment is set
up to evaluate the transient and steady state responses of
If distant error is negative large and relative speed is the system. Step input is provided to evaluate the transient
negative large then command is negative very large. response parameters; slope, time constant, and settling time.
Steady state response is tested at various speed set points to
Two input variables each with seven membership func- determine steady state error and so as to design an appro-
tions are associated with nine singleton outputs. Totally there priate compensator. In the second experiment, the distance
are 49 rules. The rules are designed from experience and
adjusted by experiments. Table I shows the final fuzzy rules.
There are 5 steps to compute the output of the fuzzy
interference system.
1) Determining a set of fuzzy rules
2) Fuzzifying the inputs using the input membership
functions
3) Combining the fuzzified inputs according to the fuzzy
rules to establish rule strength
4) Finding the consequence of the rule by combining the
rule strength and the output membership function
5) Defuzzifying the output
6) Defuzzifying method is the weighted average of all
rule outputs, computed from Equation (6).
Fig. 14. Fuzzy Control Surface

1797
control mode is set up. The fuzzy parameters; fuzzy rules also can maintain the distance between the vehicles. After
and range of membership functions are adjusted according to tuning the fuzzy parameters, the experiment is conducted to
the responses from the experiment so as to make the vehicle evaluate the controller performance. The distance between
follow the obstacle vehicle in front. two cars is set at 15 meters and the velocity set points are
set at range between 0 to 45 km/hr. The data such as distance,
A. Velocity control experiment: Transient response test
relative velocity, velocity set point and host vehicle velocity
For velocity control experiment, transient response is are recorded. The experiment results are shown in Fig. 18.
tested by using step input at 20, 30 and 40 km/hr. The pro- The distance between the two vehicles at the beginning is
portional and derivative gains are 2.2 and 0.02 respectively. around 18 m. and the relative velocity is 0 m/s. The output
Velocity set point and vehicle velocity data are recorded and command is braking command that causes the host vehicle to
then plotted. Fig. 15 shows the results of 30 km/hr step stop. The obstacle vehicle is then accelerating at time 20 sec.
response. At this point, the output of fuzzy rule is speed command that
causes the host vehicle to move forward. At time 32 sec, the
B. Velocity control experiment: Steady state response test
obstacle vehicle starts decelerate that causes the host vehicle
The main objective of steady state response experiment is decelerates and stops at time 40 sec. The distance between
to determine steady state error in order to design the com- two vehicles is around 15 m. After time 40 sec, the obstacle
mand compensator to minimize this error. The experiment is vehicle starts accelerating again and the host vehicle also
tested at various speed set points. The speed set points and speeds up.
vehicle speed data are recorded. Fig. 16 shows steady state
response test at the speed varied in between 35-60 km/hr. V. C ONCLUSIONS
Without integral term, there exists steady state error. This
problem is solved by using command compensation method. In this research, the adaptive cruise controller is designed
From the experiment result, the steady state error depends on and developed on an AIT intelligent vehicle. The mechanical
the vehicle velocity. The compensation is determined from throttle valve control is replaced by the electronic throttle
the ratio of velocity set point with the real vehicle velocity control, drive-by-wire system. The drive-by-wire system
as shown in Equation (7). uses a dc servo motor to control the throttle valve position.
The control algorithm of the throttle valve is proportional
Set Point
Compensator = (7) and derivative control. The braking system of the vehicle is
Velocity modified by adding the Cool Muscle dc servo motor. The
After adding the command compensator, the velocity velocity controller on ARM7 microcontroller is implemented
control experiment is tested again. The results show that the with proportional and derivative control algorithm. The
compensator can decrease the steady state error efficiently distance controller on a PC platform uses fuzzy algorithm.
as shown in Fig. 17. The inputs of the fuzzy are the distance and relative velocity
which come from SICK LMS291 laser range finder. The
C. Distance Control Experiment
outputs from the controller are separated into 2 groups.
The distance control experiment is tested by using a The first output is the command to accelerate the vehicle.
passenger car as an obstacle. The experiment is set up on The other output is the command to decelerate the vehicle.
the straight part of the Bangkok Racing Circuit, Bangkok. When the output is the braking command, the Cool Muscle
Firstly, the experiments are conducted for tuning of fuzzy motor is actuated and the speed command is cleared. In
parameters. The target of the fuzzy tuning is that the contrary, when the output is the speed command, the braking
controller can control the vehicle like a human control and

Fig. 16. Velocity control result at 35-60 km/hr without command


Fig. 15. Transient response (30 km/hr step input) compensator

1798
[6] W. D. Jones. ”Keeping cars from crashing” IEEE Spectrum. Sep 2001,
40-45

Fig. 17. Velocity control result at 0-50 km/hr with command compensator

Fig. 18. Distance control experiment at 45 km/hr velocity set point and
15 m distance

command is cleared and the speed set point is sent to the


ARM7 microcontroller.
The ACC system which is developed for the AIT in-
telligent vehicle is able to control the vehicle to run at
desired velocity when operated in velocity control mode and
efficiently maintain the distance between the host vehicle and
the obstacle vehicle.
ACKNOWLEDGMENT
This research project is financially supported by National
Electronics and Computer Technology Center
R EFERENCES
[1] Bageshwar, V. L. Garrard, W. L. and Rajamani, R. ”Model Predictive
Control of Transitional Maneuvers for Adaptive Cruise Control Vehi-
cles” IEEE Trans.Tech. vol 53., Sep 2004, pp.1573-1585
[2] Bishop, R.H. ”Intelligent Vehicle Technology and Trends” Artech
House Publishers 2005.
[3] Bosch,R. ”Bosch Acc Adaptive Cruise Control”, Robert GmbH. 2003.
[4] Daniel, C & Johan, S. ”Adaptive Cruise Control for Heavy Vehicles
Hybrid Control and MPC”, (Master research Linkping University, De-
partment of Electrical Engineering, 2003) Sweden Linkping University.
[5] Kilian, C. T. ”Modern Control Technology: Component and System
(2nded)”. Delmar Thomson Learning 2000.

1799

You might also like