Title: Embedded Systems in the Automotive Industry
1Embedded Systems in the Automotive Industry
- Anouck Girard
- Karl Hedrick
- U.C. Berkeley
2MoBIES
DESIGN TOOLS
DESIGN TOOLS
for
(Application INdependent)
(Application SPECIFIC)
- Models of broad physical processes (HW)
- Models of time and concurrency (SW)
- Mathematical models for
- analysis tools (HWSW)
- scheduling
- code generation (generator-generators)
- Framework toolsuite integration
- Reduced design space
- Formal specification languages
- Correct-by-construction generators
- Tailored models of computation
- Reduced VV complexity
- Composable tool market
MODEL-BASED INTEGRATION
DESIGN PROCESS
for
MoBIES
Embedded Systems
Ptolemy II
Slide courtesy of John Bay, DARPA IXO
3Berkeley OEP
4Intelligent Cruise Control
- Cooperative Adaptive Cruise Control with
Collision Warning (CACC CW) - CACC Cruise at given speed when the road is
clear (cruise control) , otherwise follow the car
in front, using radar (adaptive) and/or
communications (cooperative). - CW Warn the driver when an object is being
approached too fast, or is too close.
x
1
r
1
Vehicle
5Why this is hard
Around curve
Rapid deceleration
Elevation changes
Dense traffic
Cut-ins
6Background AHS
- Requirements
- increase throughput
- full automation
- Features of the proposed solution
- hierarchical decomposition
- Motion coordination
- string stability issues
- Simulation and Implementation
7MoBIES ACC/CACC
- Requirements
- increase throughput
- increase driver comfort
- partial automation
- management of complexity
- human factors
- Features of the proposed solution
- hierarchical decomposition
- layered theories
- Motion coordination
- string stability issues
- hierarchical decomposition
- Simulation and Implementation
- TEJA
8ICC Experimental Platform
9CACC Hardware (x2)
- Radar tracking up to 7 closest targets in FCM,
giving distance, relative speed, and azimuth for
each. - Vision or radar for detection of stationary
objects. - Wireless communication (based on 802.11 or Token
Bus).
10Industry Development Process
11V2V Baseline Tool Chain
HW/SW co-design
task info
QNX Low-level C code Device drivers P/S database
model
Plant Library
valid model
?
Simulation
Car Pentium
Code generation
model
CA
CC
timing info
Analysis
Third party tools
model, in analysis tool format
yes/no answer
question from system requirements
yes/no answer
12V2V TEJA Model
- Brakes
- 1 C.T. State representing time response lag
- Vehicle State Dynamics
- 2 C.T. States Position, Velocity.
- Includes vehicle mass, air drag, rolling
resistance, etc.
- Throttle
- 1 C.T. State representing throttle dynamics.
- Spark Ignition Engine
- Uses 2-state C.T. nonlinear model
- 3 External Data Maps are used which require both
1 and 2-d interpolation.
- Torque Converter
- No C.T. states. 2 Hybrid states Coupled
Uncoupled
- Wheel Slip Model
- Models the tire slip dynamics.
- Requires 4 C.T. States one per wheel.
- Transmission
- Discrete transitions are taken during gear
changes based on vehicle speed. - Abrupt gear changes cause abrupt gear ratio
changes, so a filter is added which includes 1
C.T. state.
13Control StructureDistributed P/S Database
Implementation
1
2
Low-Level Control
High-Level Control
desired acceleration
state of car
DB1
DB2
accel. to torque
off
switching law
acc
cacc
cc
throttle
brake
throttle, brake, state of car
desired acceleration
Car make and model dependent
Car make and model independent
14Teja Description
Controller
Model
15Inside a Teja hybrid automaton
discrete states
transitions (with guard)
continuous variables (with evolution)
16MoBIES Tool Chain
DESERT
Model Composition
AIRES
Timeweaver TimeWiz
Requirements
Timing Analysis
Valid code
Modeling
Analysis
Simulation
Code Generation
CHARON
TargetLink
MATLAB
MATLAB
TEJA
Allocation To distr. processors
TEJA
TEJA
CHECKMATE
Kestrel
CHARON
CHARON
SAL
ECSL
PTOLEMY
PTOLEMY
CHECKMATE
CHECKMATE
AIRES
Timeweaver TimeWiz
17Hybrid System Verification
- Simplified models verified using
- SAL (SRI)
- Checkmate (CMU)
- CHARON (UPenn)
- Results different as teams simplified models in
different ways - Main hindrances for verification teams included
look-up tables, nonlinearities, of continuous
variables - Working on a set of models, starting from simple
double-integrator, and expanding to complete
models, to compare verification tools, and see
where the limits are. - Working on HSIF, an interchange format to go back
and forth between hybrid modeling and
verification tools automatically.
18Timing analysis
Platoon Data
Delco Radar
MoBIES code
Link To
Steering (ignored)
Node Two
(node1wr)
Brake
(node1rd)
Comm
-
CAN Bus
-
unications
Input
(
runmodules
)
Lat. Data (Ignored)
(can_read)
Steering Wheel
Button data
Steering
Magnet/Button
Steering Wheel
Wheel
Input
Button data
Buttons
(
veh
_lat)
(buttons)
MoBIES code
Long_data
Database
(db_
slv
)
Speed
Control
Vehicle IO
(eng_
spdls
)
(
veh
_
iols
)
Throttle Control
CAN Bus
Steering
Output
Control
(
canbrake
)
HMI Control
(
hmi
)
Human Machine
Brake Control
Steering (ignored)
Interface
Real
-
Time Software Environment for
MoBIES
Buick
LeSabre
, Computer 1
19Timing analysis
EV Radar Data
MoBIES code
Radar
MoBIES code
Filtering
(radflt1)
Radar
(evt300)
MoBIES code
Link to
Node One
Vision System Data
(node2wr)
(node2rd)
Vision
System
Database
Driver
(db_
slv
)
(
safetrac
)
MoBIES code
High
-
Level
Control
(the_beat)
GPS Driver
(
gpsread
)
GPS Data
Real
-
Time Software Environment for
MoBIES
Buick
LeSabre
, Computer 2
20Timing analysis
- Timing data was taken by UCB on the experimental
vehicles for all tasks - Names of the tasks running on each processor,
- Short description of the functions performed by
each task, - Period in milliseconds,
- Average execution time of each task,
- Priority used by the QNX RTOS for scheduling
- One task (out of about 30) was found to be
unschedulable, using RMA - A straightforward fix was possible.
21Cruise ControlHigh-level control
- The cruise controller uses a feedback and
feed-forward control law of the form - ad vd_dot k(v-vd)
- Where ad is the desired acceleration, v is the
speed of the vehicle, vd is the desired speed of
the vehicle, k 0.75, vd_dot is a feed-forward
acceleration term
22ACC/CACC Video