CARMA: Towards Personalized Automotive Tuning Tobias Flach1, Nilesh Mishra1, Luis Pedrosa1, Christopher Riesz2, Ramesh Govindan1 1 University
of Southern California 2 Rutgers University, Camden Campus
Sensys 2011
Introduction Networked Sensing Smart Grid Smart Building
Smartphones Context awareness Participatory sensing
Automobiles On-board sensing Personalized tuning Introduction
Motivation
Architecture
Evaluation
Conclusion
2
Sensing and Control in an Automobile
Automobiles are highly customizable but this capability is not exposed to the user http://www.memsindustrygroup.org/files/public/April2010.htm
Introduction
Motivation
Architecture
Evaluation
Conclusion
3
Current Practice: Fixed Control Parameters Driving behavior
Terrain
Factory defaults cannot cover all possible conditions Traffic
Introduction
Weather
Motivation
Architecture
Evaluation
Conclusion
4
Our Goal: Flexible Personalized Tuning
Alice CarMA canBob optimize for individual trips
Introduction
Motivation
Architecture
Evaluation
Conclusion
5
Can Personalized Tuning Be Effective?
Interstate Route
Hill Route
Street route
Impact of route characteristics? Impact of driving behavior? Introduction
Motivation
Architecture
Evaluation
Conclusion
6
Can Personalized Tuning Be Effective?
Intrinsic variability
Extrinsic variability
Fuel economy for two cars on different routes (with different conditions)
Introduction
Motivation
Architecture
Exploitable by personalized tuning
Evaluation
Conclusion
7
Background: Scanning and Tuning
Client device
On-board diagnostics (OBD-II)
Sensor
Table: Desired Idle RPMValue
Coolant absoluteTransmission not Intake manifold pressure engaged RPMTemperature
32.0Transmission kPa engaged 1925 rev/min
-20°C Speed 0°C timing advance1106.05 Ignition
1200km/h 16.0 964.65 3.0 °(relative)
Scanning… Tuning… 1200
20°C position Throttle 40°C pulse width Injector
Introduction
Engine control unit (ECU)
Motivation
1022.27 904.69
Architecture
860.35 27.84 % 768.75 11.89 ms
Evaluation
Conclusion
8
Contributions: CarMA CARMA: A smartphone-based, make and model-independent platform providing programming abstractions for scanning and tuning
Wireless connectivity
On-Board Sensing
Programmability
Fosters ecosystem of car modifications Introduction
Motivation
Architecture
Evaluation
Conclusion
9
Contributions: Sample Apps Implementation of sample apps that allow non-expert users to personalize and automatically optimize cars for different drivers and/or route conditions
Improve responsiveness for hilly route
Introduction
Maximize fuel efficiency
Motivation
Support user diversity
Architecture
Evaluation
Enforce safer driving behavior
Conclusion
10
Contributions: Benefits of Personalized Tuning
A demonstration of personalized tuning that can exploit extrinsic variability to achieve significant fuel efficiency or responsiveness gains
Introduction
Motivation
Architecture
Evaluation
Conclusion
11
CARMA Architecture
Introduction
Motivation
Architecture
Evaluation
Conclusion
12
Scanning Subsystem 1
2
6
3 CARMA
4 5 Protocol Vehicle Response: 0768006A Vehicle 48 Speed 6B0110 Sensor 41 0D 28 = 40 km/h Request: 05 vehicle speed F1 sensor 0D Optimizations Heterogeneity
Introduction
Motivation
Architecture
Interface Heterogeneity
Evaluation
Conclusion
13
Tuning Subsystem setRPMLimit(); commit();
1
2 CARMA
3
5
prepare();
4
Reverse OBD-II Engineering interface
Introduction
Motivation
Download routine
Level of Abstraction ECU firmware
ECU memory
Architecture
Evaluation
Conclusion
14
Tuning Subsystem: ModAPI Mod
Response
Economy
Safety
DisableEGR
✔
✔
EnrichMixture
✔
✔
IncreaseSparkTiming
✔
✔
AdjustShiftDownPoints
✔
✔
✔
LimitRPM
✔
✔
✔
DecreaseShiftTime
✔
Client code
CARMA code
tuner = ATuner.Stub.asInterface(service); tuner.loadCurrentSettings() tuner.applyMod(ModNames.LimitRPM, rpmVal) tuner.commitChanges()
Introduction
Motivation
new TableSetMod( ECUTableName.Disable_All_Injectors_High_MPH, 0, 0, 0, 2, 255), new TableSetMod( ECUTableName.Disable_All_Injectors_High_MPH, 1, 1, 0, 2, limit + 1), new TableSetMod( ECUTableName.Disable_1_Injector_High_MPH, limit), new TableSetMod( ECUTableName.Disable_2_Injectors_High_MPH, limit)
Architecture
Evaluation
Conclusion
15
Evaluation Goals
1
Does CarMA raise the level of abstraction? Implementation of sample applications Micro-benchmarks
2
Does CarMA provide significant fuel efficiency gains? Test runs using route-specific fuel efficiency optimizations on five different routes Comparison of the recorded sensor data from baseline and modified runs
Introduction
Motivation
Architecture
Evaluation
Conclusion
16
Evaluation: Applications
98 LOC
Scan App
214 LOC
Tune Wizard
408 LOC
Route Evaluator
60 LOC
Valet Mode Introduction
Motivation
Architecture
76 LOC
Driver Customizer Evaluation
Conclusion
17
Evaluation: Tune Wizard
Alice
Enable EGR Increase torque timing Limit RPM to 5000 Limit RPM to 3000 Introduction
Motivation
Architecture
Evaluation
Conclusion
18
Evaluation: Fuel Efficiency Gains Speed limit Spee d
3
Traffic lights
Recorded data for baseline runs and runs Elevation using modifications gain
2 1
Traffic lights
Elevation gain
Experimented with multiple drivers
0
Conges tion
Grade
Congestion Introduction
Motivation
Max. grade Architecture
Recorded data for more than 1100 miles of driving Evaluation
Conclusion
19
Experimental Results: Fuel Economy Fuel economy for one driver
Fuel economy improved by 11% on average Would save more than $18B in the US annually Trip
Introduction
Motivation
Architecture
Evaluation
Conclusion
20
Experimental Results: Validating Applications RPM vs. throttle pos. for DriverCustomizer
Aggressive driving behavior is prevented
Introduction
Motivation
Architecture
Evaluation
Conclusion
21
Related Work Sensing
Torque
eco:Drive
Powr Tuner
CARMA Firmware Upgrade
Mechanics
Control Introduction
Motivation
GreenGPS
Analysis Architecture
Evaluation
Conclusion
22
Conclusions CarMA provides programming abstractions for scanning and tuning automobiles via mobile devices
Usable by non-experts for personalized tuning
CarMA apps can achieve significant fuel efficiency gains by inhibiting aggressive driving behavior and enforcing limits
Introduction
Motivation
Architecture
Evaluation
Conclusion
23
Future Work Extending CarMA for a broader range of makes and models
Adding safety mechanisms to prevent accidental or malicious damage to vehicles using CarMA
Introduction
Motivation
Architecture
Evaluation
Conclusion
24
CARMA: Towards Personalized Automotive Tuning Tobias Flach1, Nilesh Mishra1, Luis Pedrosa1, Christopher Riesz2, Ramesh Govindan1 1 University
of Southern California 2 Rutgers University, Camden Campus
Sensys 2011
Improving the State of the Art Expressivity
CARMA
Specialized tuning software Fuel economy / Performance modes Complexity
Introduction
Motivation
Architecture
Evaluation
Conclusion
26
Security Considerations Implemented functionality Checks for conflicting modifications Definition of safe value ranges for parameters Additional ideas Application certification Mandatory "kill switch" Value range (Desired Idle RPM; single cell)
0
500
1200
2500
1700
Safe range
Introduction
Motivation
Architecture
Evaluation
Conclusion
27
Experimental Results: Economy variability Fuel economy for different drivers
Impact of mods depends on “old” driving behavior
Introduction
Motivation
Architecture
Evaluation
Conclusion
28
Experimental results: Speed and RPM limits Speed on trip 3
RPM CDF for trip 4B
Speed limit is enforced Introduction
Motivation
Architecture
RPM long tail is cut Evaluation
Conclusion
29
Background: Scanning & Tuning
Introduction
Motivation
Architecture
Evaluation
Conclusion
30
OBD-II Port
Introduction
Motivation
Architecture
Evaluation
Conclusion
31