design of adaptive cruise control system - a time-critical data driven approach by neera sharma...
TRANSCRIPT
Design of Adaptive Cruise Control System - A Time-critical Data Driven Approach
by
Neera Sharma
(03305402)
under the guidance of
Prof. Krithi Ramamritham
Motivation
• Intelligent automotive applications require efficient management of time-sensitive data.
• Existing approaches for ACC design – Control theory based– Ad hoc data management
• Systematic data management could improve the efficiency of control theory driven approaches.
• We propose a model for designing a real-time data repository for ACC.
Outline
• Introduction to ACC
• Functional Model
• Data Management in ACC– Real-time repository model
• Task scheduling in the model– Used techniques and performance results
• Mode Change Behavior of ACC– Issues in mode change design
Adaptive Cruise Control
• ACC
– Controls vehicle speed to maintain a safe distance from leading vehicle, automatically.
– Detects lead vehicle using sensors.
– Adjusts speed based on the velocity and distance from detected vehicle.
– Increases safety and driver comfort.
– Next step towards fully autonomous vehicles.
How ACC works?
– Radar sensor detects lead obstacle and returns its velocity and separation from ACC host.
– Controller unit calculates required safe-distance and desired velocity.
– Cruise controller regulates the host speed to the desired speed using throttling and braking.
Radar SensorUnit
ControllerUnit
User Interface
Distance & velocity of obstacle
Accelerate/decelerate
Preset speed
Cruise controlInterface / braking
Calculating Safe-Distance
• Two kinds of policies: static & dynamic
• We calculate safe distance as a function of relative velocity (dynamic)[5].
Sd = Sm + Sa
Sm = minimum separation , Sa = additional gap for safety
Human interaction timeFor automatic system delay of sensors
Max deceleration
J_max
T
T+t_1
T+t_1+t_f
t_0
- A_max
Velocity is zero here
Current acceleration
a
State Diagram of the System
OFF ONno vehicle ahead
/resume
deceleratingwith feedback
vehicle_sensed() = false
vehicl
e_sen
s`ed()
= true
vehicle_sensd() = true
vehicle_sensed() = true / get_val()vehicle_sensed() = true
/get_val()
/get_val(
)
/get_val()
speed>30
/switch on
a = 0
cur_
sp <
cru
ise_
sp
acceleratingwith feedback
cur_
sp =
cru
ise_
sp
a > 0a < 0
max
_brk
&
AC
C o
ff
ACC off
vehicle_sensed() = falseemergency state
vehicle ahead
cal a
Real-Time Data Repository Design for ACC
Design Concerns• Data Freshness
– Values in repository • obtained from sensors• reflect the latest values of vehicle parameters.
– Freshness of a data is defined • In time domain : update periodically
current time – TS(d ) <= VI(d )
• In value domain : update if |d(t) – d(t’) | <= δd
• Temporal characteristics of tasks are derived from the properties of data.
Hierarchical ACC Controller
Fromspeed
sensors
Fromradar
sensor
Upper-level controller
Lower-level controller
R1 R2
Current status
Stable store
Log currentstatus
Raw data-items
Base data-items
safe_dist
host_v
lead_v
separation
Derived data-items
Sensor parameters
Controller constants
To actuators
Update R2
store desired velocity
Read sensor values
`
calculate safe_dist
Read R2
Real-Time Data Repository for ACC
On demand update
Why Two-level Data Store?
• Controller decisions change when there are significant changes repository1.
• Repository2 is updated only when difference in the values crosses a threshold value (on-demand update).
• Two level data store minimizes contention.
• OD updates reduces unnecessary updates in the system
Design for a Chain of Vehicles
• A chain of ACC vehicles should be stable.– spacing errors does not increase from head to tail
traversal of the chain : String Stability– for chain of vehicles
εi = (xi-1 - xi) – Di (Range Error )
Ri = vi-1 – vi (Range Rate Error )
Di : is desired separation, vi : velocity of ith vehicle and,
(xi-1 – xi ) : current inter-vehicle separation
– A uniform vehicle string is string stable if - ||εi+1|| <= ||εi ||
Upper-level Controller
• Calculates desired speed .
• We use UTMRI algorithm[4] to determine the desired speed
Vi,des = vi-1 + εi /T0 + c. Ri
Vi,des : desired velocity,
vi-1 : velocity of leading vehicle
T0 and c are constants.
Lower Level Controller
• Modelled as first order linear system.
• Determines the throttle & brake actuator commands to track the desired velocity using [4].
τ . vcurr + vcurr = vdes
• Using proportional control law desired velocity is mapped to required throttle position using-
α(t) = Kp (vcurr - vdes)
αdes αv0LLC A P
v
-
From ULC
Tasks in the Model
• Sensor reading tasks :– periodic with known computation time.
• On-demand update tasks (Update R2 + Read R2):– aperiodic with known minimum inter-arrival time and
worst case computation time.• Low-level Controller Tasks :
– periodic with known computation time.• Other Tasks : (logging, lane monitoring, road condition etc):
– Periodic with known computation time.• Periodic tasks are scheduled using EDF.
Hierarchical ACC Controller
Fromspeed
sensors
Fromradar
sensor
Upper-level controller
Lower-level controller
R1 R2
Current status
Stable store
Log currentstatus
Raw data-items
Base data-items
safe_dist
host_v
lead_v
separation
Derived data-items
Sensor parameters
Controller constants
To actuators
Update R2
store desired velocity
Read sensor values
`
calculate safe_dist
Read R2
Real-Time Data Repository for ACC
On demand update
How to Schedule Aperiodic OD tasks?
• OD tasks need predictable service guarantees.
• Bandwidth Reservation Techniques:– Reserve a share of CPU bandwidth.
• Constant Bandwidth Server(CBS): – S = (C, T, B), characterized by maximum
capacity(C), period(T) and bandwidth(B=C/T).– Task can execute for time C within period T.– Provides hard-real time guarantees if task’s worst
case parameters are known.
Adaptive CBS Technique
• Adapts required bandwidth for a task using error correction mechanism.
• T is equal to the period of sensor reading task.• CBS scheduling error is calculated as:
• CBS bandwidth is adjusted using capacity correction:
ε = CBS deadline – task deadline
δC = (ε / Ts )* cs
Simulator Setup
• We simulate the model on RTLinux kernel.– Threads communicate using shared memory.
• For CBS :– We use application level CBS patch on RTLinux.
– Modify it for automatic bandwidth adaptation.
Simulations Results
Reserved Bandwidth CBS Scheduling Error
•Reserved bandwidth converges to value 0.001•Corresponding CBS scheduling error reduces to 0 after few steps.
Mode Change Behavior of the System
• Response requirement of ACC vehicle change with the change in relative velocity and separation between host and ACC vehicle.
• We design ACC with three modes of operations : active, non-critical and critical.
• In mode change task set and frequencies of tasks change.
• We assume that a task set is known for each of the three modes.
Preliminary experiments for Mode Change
• We assume that controller operates with frequency 50Hz : in active mode
70Hz : non-critical mode100Hz : critical mode
and choose corresponding values for sampling time(T) and time constant(τ) for each mode.
• Conditions for mode change:– From active to non-critical
• an obstacle is detected within a predefined range.- From non-critical to critical
- the difference between desired speed and current speed is greater than a threshold.
Simulations : Without Mode Change
Sudden decrease in separation, because the host vehicle decreases slowly.
Simulations : With Mode Change
Host velocity fluctuates due to frequent mode change.
r1
r2
r3r4
Simulation : Avoiding Frequent Mode Change
Frequent mode change is avoided by forcing the system to stay in one mode for a minimum time
Enhancement to the Mode Change Scheme
• Choose task set for each mode at run time using service level controller, admission controller and feedback.
– Service level controller : controls workload inside the system.
– Admission controller : admits new tasks in the system.
Conclusions and Future Work
• Systematic approach for handling time-sensitive ACC data improves the performance.
• Use of on-demand update scheme reduces the no of updates.
• Adaptive bandwidth server technique provide service guarantees to aperiodic tasks.
• There is a need for ACC design with multiple operational modes.
• A principled approach for choosing no. of modes and deriving conditions for mode change is required.
References1. Thomas Gustafsson and Jorgen Hansson. Dynamic On-Demand Updating of
Data in Real- Time Database Systems. In SAC'04: Proceedings of the 2004 ACM symposium on Applied computing, pages 846-853. ACM Press, 2004.
2. K. Ramamritham; Sang H. Son; L.C. DiPippo. Real-Time Database and Data Services. In Real Time Systems: p.179-216. Kluwer Academic Publishers, 2004.
3. D. Nystrom, A. Tesanovic, C. Norstrom, J. Hansson, and N-E. Bankestad. Data Management Issues in Vehicle Control Systems: a Case Study. In Proceedings of the 14th Euromicro International Conference on Real-Time Systems, pages 249-256, Vienna, Austria, June 2002.
4. Zhou J.; Peng H. String Stability Conditions of Adaptive Cruise Control Algorithms. 1st IFAC Symposium on Advances in Automotive Control, April Italy, 2004.
5. C. C. Chien; P. A. Ioannou. Autonomous Intelligent Cruise Control. IEEE Trans. On Vehicular Technology, 42(4):657-672, Nov. 1993.
References
1. T.W. Kuo; A. K. Mok. Real-time Data Semantics and Similarity-Based Concurrency Control. IEEE Trans. on Computers, 49(11):1241-1254, Nov. 2000.
2. Thomas Gustafsson; Jorgen Hansson. Data Management in Real-Time Systems: a Case of On-Demand Updates in Vehicle Control Systems. 10th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'04), page 182, May 25-28, 2004
3. Jing Zhou; Huei Peng. Range Policy of Adaptive Cruise Control for Improved Flow Stability and String Stability. IEEE International Conference on IEEE Trans. on Networking, Sensing and Control, 4:595-600, March, 21-23 2004.
4. C. L u; J. Stankovic; G. Tao; S. Son. Feedback Control Real-Time Scheduling: Framework, Modeling and Algorithms. special issue of Real-Time Systems Journal on Control-Theoretic Approaches to Real-Time Computing,, 23(1/2):85-126, July/September 2002.