360 likes | 824 Vues
by Neera Sharma (03305402) under the guidance of Prof. Krithi Ramamritham. Design of Adaptive Cruise Control System - A Time-critical Data Driven Approach. Motivation. Intelligent automotive applications require efficient management of time-sensitive data.
E N D
by Neera Sharma (03305402) under the guidance of Prof. Krithi Ramamritham Design of Adaptive Cruise Control System - A Time-critical Data Driven Approach
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.
Distance & velocity of obstacle Accelerate/ decelerate Cruise control Interface / braking Radar Sensor Unit Controller Unit Preset speed User Interface 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.
Human interaction time For automatic system delay of sensors Current acceleration a Velocity is zero here J_max T+t_1 T+t_1+t_f t_0 T - A_max Max deceleration 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
vehicle_sensed() = false speed>30 OFF ON /switch on no vehicle ahead /resume /get_val() vehicle_sensd() = true cur_sp = cruise_sp cur_sp < cruise_sp a = 0 vehicle_sens`ed() = true decelerating with feedback /get_val() accelerating with feedback cal a a < 0 a > 0 vehicle_sensed() = true / get_val() vehicle_sensed() = true /get_val() vehicle ahead max_brk & ACC off ACC off emergency state vehicle_sensed() = false State Diagram of the System
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.
Real-Time Data Repository for ACC Sensor parameters Controller constants Hierarchical ACC Controller R1 R2 Read sensor values ` On demand update host_v Read R2 Upper-level controller From speed sensors Update R2 calculate safe_dist Current status store desired velocity safe_dist Lower-level controller Derived data-items From radar sensor lead_v Log current status separation Raw data-items Base data-items To actuators Stable store
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.
αdes α From ULC v0 v LLC A P - 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)
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.
Real-Time Data Repository for ACC Sensor parameters Controller constants Hierarchical ACC Controller R1 R2 Read sensor values ` On demand update host_v Read R2 Upper-level controller From speed sensors Update R2 calculate safe_dist Current status store desired velocity safe_dist Lower-level controller Derived data-items From radar sensor lead_v Log current status separation Raw data-items Base data-items To actuators Stable store
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 mode 100Hz : 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 r2 r1 r3 r4 Host velocity fluctuates due to frequent mode change.
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.
References • 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. • 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. • 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. • Zhou J.; Peng H. String Stability Conditions of Adaptive Cruise Control Algorithms. 1st IFAC Symposium on Advances in Automotive Control, April Italy, 2004. • C. C. Chien; P. A. Ioannou. Autonomous Intelligent Cruise Control. IEEE Trans. On Vehicular Technology, 42(4):657-672, Nov. 1993.
References • 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. • 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 • 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. • 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.