EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf ·...

14
EcoDrive: A Mobile Sensing and Control System for Fuel Efficient Driving Lei Kang, Bozhao Qi, Dan Janecek and Suman Banerjee University of Wisconsin-Madison {lkang, bozhao, suman}@cs.wisc.edu , [email protected] ABSTRACT This paper introduces EcoDrive, a fuel consumption sens- ing and control system for modern vehicles, implemented in an embedded platform, to improve fuel efficiency and re- duce carbon emissions. EcoDrive senses vehicle dynamics through the standard vehicle On-board diagnostics (OBD) port and models various vehicle forces, i.e., propulsion, driv- etrain loss, wind resistance and grade resistance, as functions of instant fuel consumption. By sensing vehicular speed and controlling air/fuel injection rate in real time, EcoDrive can adjust speed carefully to improve fuel efficiency. We have collected more than 10,000 miles of driving traces from 12 different vehicles to build models of vehicle dynam- ics. Based on the models, a prototype of EcoDrive is imple- mented in an off-the-shelf embedded platform. The proto- type is installed on a regular vehicle and evaluated through test drives of more than 100 miles across both urban and highway environments. In comparison with human drivers, EcoDrive achieves an average of 20% higher fuel efficiency in urban road segments and 30% higher fuel efficiency on highways. 1. INTRODUCTION Modern vehicles are the ultimate mobile computing plat- forms. They are often on the move at significant speeds and are equipped with significant embedded computing sys- tems that control and manage different functions including providing various types of assistance to its driving function [1, 2, 3, 4, 5]. The computational capabilities of automo- bile systems provide opportunities and challenges to man- age and control every aspects of a vehicle’s drive. The focus of this work has been in the design of a system to improve the fuel efficiency of a vehicle’s drive by sensing, computing, and actuating the acceleration behavior of the vehicle in an autonomous manner, by modeling properties of the vehicle, road conditions, and driving actions. The benefits of such a system can be profound — Morgan Stanley reported that there could be $158 billion in annual savings in the US, if all Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full cita- tion on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or re- publish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]. MobiCom’15, September 7–11, 2015, Paris, France. c 2015 ACM. ISBN 978-1-4503-3543-0/15/09 ...$15.00. DOI: http://dx.doi.org/10.1145/2789168.2790111. Vehicle Controller Area Network (CAN) OBD Port Controlling Sensing Modeling MALE Connector Gas Pedal AFR Profile EcoDrive ECU FEM Connector Switch Figure 1: EcoDrive Architecture. cars adopted a smoother driving style [6]. With the global push for improving fuel efficiency of vehicles to reduce con- sumptions and carbon emissions, we believe solution such as ours can be one of many important mechanisms to meet such a goal. System and Assumptions. This paper introduces Eco- Drive, a fuel consumption sensing and control system that improves fuel efficiency and reduces carbon emissions. Eco- Drive estimates instant fuel consumptions of different driv- ing behaviors based on sensed vehicle parameters from the On-board diagnostics (OBD) port [7, 8]. It can adjust ve- hicular speed in real time according to individual vehicle properties and road conditions to achieve higher fuel effi- ciency measured by Kilometer Per Liter (KPL) 1 . EcoDrive is an independent system that can be installed on or removed from regular vehicles easily. This system controls the vehi- cle’s acceleration and speed to provide a fuel efficient drive on its path. In our work and current implementation, we design this system assuming there is no other factors that would contribute to a choice of acceleration and speed, e.g., other vehicles, pedestrians, etc. or other obstacles in vicin- ity. Clearly in a practical system, this knowledge would be critical in modifying the acceleration behavior. Currently, we adopt the approach followed by other equivalent systems, such as cruise control [9], which allows the driver to instantly disable cruise control by actively pressing the brake pedal. In an analogous way, in our current implementation, we pro- vide the driver a switch which can be pressed to instantly 1 KPL refers to the distance travelled per unit volume of fuel consumed. It interchangeable with Mile Per Gallon (MPG), i.e., 1 KPL = 2.35214583 MPG. 358

Transcript of EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf ·...

Page 1: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

EcoDrive: A Mobile Sensing and Control System for FuelEfficient Driving

Lei Kang, Bozhao Qi, Dan Janecek and Suman BanerjeeUniversity of Wisconsin-Madison

{lkang, bozhao, suman}@cs.wisc.edu , [email protected]

ABSTRACT

This paper introduces EcoDrive, a fuel consumption sens-ing and control system for modern vehicles, implementedin an embedded platform, to improve fuel efficiency and re-duce carbon emissions. EcoDrive senses vehicle dynamicsthrough the standard vehicle On-board diagnostics (OBD)port and models various vehicle forces, i.e., propulsion, driv-etrain loss, wind resistance and grade resistance, as functionsof instant fuel consumption. By sensing vehicular speed andcontrolling air/fuel injection rate in real time, EcoDrive canadjust speed carefully to improve fuel efficiency.

We have collected more than 10,000 miles of driving tracesfrom 12 different vehicles to build models of vehicle dynam-ics. Based on the models, a prototype of EcoDrive is imple-mented in an off-the-shelf embedded platform. The proto-type is installed on a regular vehicle and evaluated throughtest drives of more than 100 miles across both urban andhighway environments. In comparison with human drivers,EcoDrive achieves an average of 20% higher fuel efficiencyin urban road segments and 30% higher fuel efficiency onhighways.

1. INTRODUCTIONModern vehicles are the ultimate mobile computing plat-

forms. They are often on the move at significant speedsand are equipped with significant embedded computing sys-tems that control and manage different functions includingproviding various types of assistance to its driving function[1, 2, 3, 4, 5]. The computational capabilities of automo-bile systems provide opportunities and challenges to man-age and control every aspects of a vehicle’s drive. The focusof this work has been in the design of a system to improvethe fuel efficiency of a vehicle’s drive by sensing, computing,and actuating the acceleration behavior of the vehicle in anautonomous manner, by modeling properties of the vehicle,road conditions, and driving actions. The benefits of sucha system can be profound — Morgan Stanley reported thatthere could be $158 billion in annual savings in the US, if all

Permission to make digital or hard copies of all or part of this work for personal or

classroom use is granted without fee provided that copies are not made or distributed

for profit or commercial advantage and that copies bear this notice and the full cita-

tion on the first page. Copyrights for components of this work owned by others than

ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or re-

publish, to post on servers or to redistribute to lists, requires prior specific permission

and/or a fee. Request permissions from [email protected].

MobiCom’15, September 7–11, 2015, Paris, France.

c© 2015 ACM. ISBN 978-1-4503-3543-0/15/09 ...$15.00.

DOI: http://dx.doi.org/10.1145/2789168.2790111.

Vehicle Controller Area Network (CAN)

OBD Port

Controlling Sensing

Modeling

MALE ConnectorGas

Pedal

AFR

Profile

EcoDrive

ECU

FEM Connector Switch

Figure 1: EcoDrive Architecture.

cars adopted a smoother driving style [6]. With the globalpush for improving fuel efficiency of vehicles to reduce con-sumptions and carbon emissions, we believe solution suchas ours can be one of many important mechanisms to meetsuch a goal.

System and Assumptions. This paper introduces Eco-Drive, a fuel consumption sensing and control system thatimproves fuel efficiency and reduces carbon emissions. Eco-Drive estimates instant fuel consumptions of different driv-ing behaviors based on sensed vehicle parameters from theOn-board diagnostics (OBD) port [7, 8]. It can adjust ve-hicular speed in real time according to individual vehicleproperties and road conditions to achieve higher fuel effi-ciency measured by Kilometer Per Liter (KPL) 1. EcoDriveis an independent system that can be installed on or removedfrom regular vehicles easily. This system controls the vehi-cle’s acceleration and speed to provide a fuel efficient driveon its path. In our work and current implementation, wedesign this system assuming there is no other factors thatwould contribute to a choice of acceleration and speed, e.g.,other vehicles, pedestrians, etc. or other obstacles in vicin-ity. Clearly in a practical system, this knowledge would becritical in modifying the acceleration behavior. Currently,we adopt the approach followed by other equivalent systems,such as cruise control [9], which allows the driver to instantlydisable cruise control by actively pressing the brake pedal.In an analogous way, in our current implementation, we pro-vide the driver a switch which can be pressed to instantly

1KPL refers to the distance travelled per unit volume of fuelconsumed. It interchangeable with Mile Per Gallon (MPG),i.e., 1 KPL = 2.35214583 MPG.

358

Page 2: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

disable EcoDrive, if its acceleration behavior is perceived tobe unsafe for nearby vehicles or obstacles.

EcoDrive Components. EcoDrive delivers its designvia three components including an OBD sensing component,a vehicle dynamics modeling component and an accelera-tion controlling component. The architecture is illustratedin Fig. 1. The sensing component reads real-time OBDparameters through the OBD port. The modeling compo-nent models various vehicle forces as functions of instantfuel consumption and produces a fuel consumption profile,called Air/Fuel Rate (AFR) profile 2. The controlling com-ponent utilizes the AFR profile to calculate fuel efficientdriving strategies according to speed limit and road condi-tions. EcoDrive emulates the gas pedal by sending voltagevalues to the connector through an Arduino board. Thevehicular Electronic Control Unit (ECU) controls air/fuelinjection rate according to the voltage inputs.

EcoDrive addresses two main challenges.a) Model Vehicle Dynamics based on OBD Param-

eters. EcoDrive uses the OBD parameters delivered by thesensing component to build an AFR profile, which recordsinstant fuel consumptions of various accelerations under dif-ferent speeds. To this end, EcoDrive models various vehicleforces, including propulsion, drivetrain loss, wind resistanceand grade resistance, as functions of instant fuel consump-tion. First, we model propulsion (or output torque) as afunction of engine torque and gear ratio [10, 11]. We useAFR to model engine torque, and use the ratio betweenRPM and vehicular speed to model gear ratio. Second, werepresent drivetrain loss and wind resistance as a functionof vehicular speed [12]. The coefficients are estimated fromrecorded data traces where the car is driving at constantspeeds. The basic idea is that the sum of resistances is equalto propulsion when the car is driving at a steady-state speed.Third, we model grade resistance by altitude changes overroad segments. The altitudes of the locations are obtainedfrom National Elevation Dataset [13]. Based on the threemodels, AFR is modeled as a function of speed, accelerationand road conditions.

b) Control Air/Fuel Rate and Vehicular Speed toImprove Fuel Efficiency. EcoDrive controls vehicularspeed by emulating gas pedal. It sends the emulated gaspedal position values to the Arduino board which then con-verts the position values to corresponding output voltages.The output voltages are delivered to the ECU through a6 Pin Connector. The problem is how to adjust vehicularspeeds to travel through a certain distance with the low-est fuel consumption. We solve this problem by using dy-namic programming. Each state of the dynamic program-ming model records the minimum air/fuel cost that allowsthe car to achieve the current speed at the current location.In this model, speed can only increase and the last state ofeach speed records the minimum fuel consumption if the carreaches the pre-assigned distance at that speed. We call thespeed with minimum fuel consumption the target speed. Bybacktracking the state matrix from the last state of targetspeed, EcoDrive can obtain the desired AFR at each speed.EcoDrive adjusts air/fuel injection rate based on real-timesensed vehicular speed. Once the vehicular speed reachesthe target speed, EcoDrive enters a cruising state and com-

2AFR refers to the volume of air/fuel cost per unit time.

Transmission

Engine

Torque

CVT SAT

WheelAir Fuel

RPM

Engine

Angle

Pedal

Gear

Ratio SpeedOutput

Torque

Figure 2: Vehicle Drivetrain.

mands a constant air/fuel injection rate until the car reachesthe pre-assigned distance.

EcoDrive Prototype. We build a prototype of Eco-Drive in an off-the-shelf mobile embedded platform. Theprototype is installed and tested on a 2011 Chevrolet Im-pala. We test EcoDrive on the Impala for more than 100miles in both urban and highway environments. We evalu-ate the fuel consumption of EcoDrive and human drivers ondifferent road segments. In urban areas, EcoDrive achieves10%-40% higher fuel efficiency than four recruited humandrivers. On highway, we evaluate EcoDrive on two high-way segments with different target speeds. In our user tests,EcoDrive has over 30% improvements compared to differenthuman drivers. In comparison with cruise control, which ismore fuel efficient than human drivers in the traces we col-lected, EcoDrive achieves an average of 10% higher fuel ef-ficiency. We evaluate the performance of EcoDrive on othervehicles by using trace-driven simulation based on the 10,000miles data collected from 12 different vehicles. We furtherfind that instant fuel economy display on regular vehiclesis misleading and cruise control is fuel consuming duringspeed changes (either requested by user or affected by roadconditions).

Contributions. EcoDrive is an independent fuel con-sumption sensing and control system that can improve fuelefficiency. The system is implemented on an embedded plat-form that can be easily installed on regular vehicles. Wemodel various vehicle forces as functions of instant fuel con-sumption and the models are evaluated by utilizing 10,000miles of driving traces collected from 12 vehicles. EcoDrive isinstalled on a regular vehicle and evaluated by more than 100miles of driving in both urban and highway environments,and demonstrated to improve fuel efficiency compared tocruise control system of the vehicle and to human drivers.

2. PRELIMINARYTo illustrate how vehicle system works and how each com-

ponents are related to different OBD parameters, we presenta high-level vehicle system control flow in Fig. 2. Drivers ac-celerate vehicle by pressing the gas pedal, and then the gaspedal position will be sent to the Electronic Control Unit(ECU). The ECU controls air/fuel injection rate to produceengine torque to drive the vehicle. Transmission is used inthis process to transit power from engine to wheel and matchengine rotational speed with wheel rotational speed.

2.1 Power Production and TransitionIn a car engine, the explosion of compressed fuel and

air produces the power to drive a car. The air is injectedthrough an intake port and expelled from an exhaust port.The volume of oxygen in the exhaust air is monitored byfuel trim sensors. Based on fuel trim sensor readings, the

359

Page 3: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

Electronic Control Unit (ECU) calculate the desired fuel in-jection rate to maintain the ideal air/fuel ratio 3.

The burning of air and fuel mixture triggers the revolu-tion of crankshaft, which carries piston power out of theengine to the transmission. The transmission carries powerto wheels. Transmission is also known as gearbox that usesgears and gear trains to provide speed and torque conver-sion. The transmission reduces the higher engine speed tothe slower wheel speed and increases torque in the process ofaccelerating the vehicle. The transmission converts enginerevolutions to driveshaft revolutions, and then to axle revo-lutions. A Continuously Variable Transmission (CVT) is atransmission that can change seamlessly through an infinitenumber of effective gear ratios between maximum and mini-mum values. This contrasts with Step Automatic Transmis-sions (SAT) that offer a fixed number of gear ratios.

2.2 OBD Parameters

Table 1: Collected OBD Data

Name PID Unit

Fuel Level (FL) 2F %Mass Air Flow Rate (MAF) 10 g/sFuel System Status (FSS) 03 BitmaskLong Term Fuel Trim (LTFT) 07 %Short Term Fuel Trim (STFT) 06 %Vehicular Speed (VS) 0D km/hEngine RPM (RPM) 0C rpmAccelerator Position (AP) 5A %

On-board diagnostics (OBD) is an automotive term refer-ring to a vehicle’s self-diagnostic and reporting capability.It is the interface between car Controller Area Network (orCAN bus) and external devices, e.g., a OBD scan tool thatconnects the OBD port and a laptop. Car CAN bus allowsvehicular components to communicate with each other. Forexample, a position value is sent to the Electronic ControlUnit (ECU) after human driver press the gas pedal, andthe ECU adjusts air/fuel injections according to the posi-tion value. Therefore, we can read this position messagetransmitted over CAN bus from the OBD port.

The data we collected from the OBD port are summa-rized in Table 1. Fuel Level (FL) of the vehicle is usuallymeasured by a float sensor, which is usually visualized onthe fuel gauge in the car [14]. The FL is calculated accord-ing to the height of the float. The Fuel System Status(FSS) is used to indicate current engine mode, open loopmode or closed loop mode. In open loop mode, the enginecalculate the fuel injection based on the pre-calculated ta-ble and there is no feedback to the engine to adjust the fuelinjection rate. The engine runs in open loop mode duringshort warm up time and runs in closed loop mode at mostof the time. In closed loop mode, the engine adjusts fuelinjection rate based on fuel trims and air flow rate. MassAir Flow Rate (MAF) is used to measure the air intake rateof the engine, and therefore an effective indicator of instantfuel consumption [15, 16, 17]. Both Long Term Fuel Trim(LTFT) and Short Term Fuel Trim (STFT) are used to ad-

3Air/fuel ratio is a constant value around 14.67, whileair/fuel rate is the volume of air/fuel injected per unit time.

Table 2: Vehicles (distance in miles)

No. Car Model Urban Highway

1 Chevrolet Impala 2011 1051 8522 Nissan Rogue 2011 1198 10633 Subaru Forester 2011 651 7574 Buick LaCrosse 2006 599 6495 Volkswagen Tiguan 2014 600 3476 Honda Accord 2013 173 8407 Toyota Camry 2011 35 3388 Volkswagen Touareg 2014 21 1569 Nissan Altima 2014 193 27110 Nissan Rogue 2011 105 011 Subaru Legacy 2015 119 3012 Mazda CX5 2014 202 89

Figure 3: Urban driving data (left) is collected froma US mid-size city. Highway driving data (right) iscollected from both local highways and cross-statehighways.

just the air/fuel rate injected into engine. LTFT changesless frequent than STFT. In this paper, we use AFR as ametric of instant fuel consumption and/or carbon emission.

AFR = Cf ∗MAF ∗ (1 + LTFT ) ∗ (1 + STFT ). (1)

where Cf is a constant value for unit conversion, e.g., fromair flow rate to fuel rate or to carbon emission rate.

Vehicular Speed is measured by the perimeter of the wheeland number of rotations. Accelerator Position is measuredby the angle of the gas pedal. It controls the air/fuel rateinjected into the Engine. Engine RPM is measured by therotation speed of the engine motor.

2.3 DatasetWe use a customized Android application to collect OBD

and GPS data from different car makes and models. Thedataset is summarized in table 2. The transmission of car2,6,9,10 and 11 is CVT and the rest is SAT. The driving dataof car 1-6 is collected over a course of three months, and therest is collected from random events, e.g., three cross-statehighway trips are collected by car 7, 8 and 9, respectively.Here we separate urban driving and highway driving, as ur-ban driving patterns are dominated by frequent accelera-tions and decelerations while highway driving patterns aredominated by constant speed cruising. The dataset coverscar makes from three different countries, urban data over5,000 miles, highway data across 5 US states and over 5,000miles, two common types of transmissions. We use the first

360

Page 4: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

car to install a prototype of EcoDrive and tested it in bothurban and highway environments.

2.4 EcoDrive ArchitectureEcoDrive reads real-time OBD parameters through OBD

port and controls air/fuel injection rate by emulating the gaspedal. We illustrate the architecture of EcoDrive in Fig. 1.The sensed parameters from OBD port are passed to mod-eling component to train the models. The modeling compo-nent builds an AFR profile to record the instant fuel con-sumptions of various accelerations at different speeds. Basedon pre-calculated driving strategy and real-time sensed ve-hicular speed, the controlling component controls air/fuelinjection rate to adjust vehicular speed by sending the gaspedal position values to the ECU. To emulate the gas pedal,we utilize the drive-by-wire technology, where the gas pedaland throttle are connected by electronic messaging insteadof mechanical linkage. It enables the position of gas pedalcan be sent as a message to control throttle position. Thethrottle controls the volume of air flow injected into the en-gine.

2.5 ApplicationsEcoDrive is used as an independent system that can be

installed on regular vehicles. It can be used as a controlsystem in a way similar to cruise control [9, 18, 19]. In thisapplication, it is used as a EcoDrive mode that a humandriver can switch it on or off. Drivers are required to pressthe brake pedal to turn this mode off to keep safe distanceto front car or traffic lights/signs accordingly. This modecan be integrated with intelligent front object or traffic lightdetection systems [18, 19] to further enhance driving experi-ence. EcoDrive requires two inputs, the speed limit and roadlength. The speed limit can be specified by human driveror obtained from online database [20]. The road length canbe calculated by a navigation software. How to obtain theseinformation is beyond the scope of this paper.

It can also be used as a subsystem of autonomous driv-ing systems [1, 4, 5, 21]. We envision a highly autonomousand intelligent system that all the route information are pre-calculated, e.g., speed limit, traffic conditions and distancesof each road segment etc. EcoDrive can be used as a subsys-tem to predict fuel consumption of possible routes [22] andcalculate the optimal driving strategy.

3. VEHICLE DYNAMICS AND FUEL CON-

SUMPTIONEcoDrive models various forces as functions of instant fuel

consumption and produces fuel consumption profile as out-put. Different from Existing vehicle dynamics models [23],we only use parameters available from OBD instead of as-suming the engine parameters are known in advance. Weconsider several factors that affect car fuel consumption, e.g.,engine torque, drivetrain loss, wind resistance and grade re-sistance. The vehicle force can be modeled as follows.

F = Fp − Fl − Fg − Fw. (2)

where Fp refers to the propulsion caused by car engine,Fl refers to the drivetrain loss caused by transmission andvarious gears connecting engine and wheels, Fw refers to thewind resistance, Fg refers to the grade resistance. Since we

are only interested in fuel consumption on acceleration andcruise, we exclude the forces caused by brake.

We model the forces in the following steps. First, we useRPM and vehicular speed to model gear ratio and use AFRto model engine torque. Second, the drivetrain loss and windresistance is modeled as the counterforce of propulsion whenthe car is driven in constant speeds. Finally, we use drivingdata extracted from flat road to train the parameters of ourpropulsion and loss models, and then use the propulsionmodel to model grade resistance.

3.1 Propulsion ModelingThe propulsion (or output torque) of vehicle is closely re-

lated to transmission gear ratios and engine torque [10, 11].The propulsion produced by vehicle engine can be repre-sented by

Fp = ap ∗ τe ∗RG. (3)

where τe refers to the engine torque, RG refers to trans-mission gear ratio and ap is the coefficient used for unitconversion.

3.1.1 Gear Ratio Modeling

Modern vehicles are usually using automatic transmis-sion and freeing the driver from shifting gears manually.There are mainly two types of transmissions, Step Auto-matic Transmission (SAT) and Continuously Variable Trans-mission (CVT). SAT uses discrete transmission gear ratioswhile CVT has an infinite number of effective transmissiongear ratios. Since different transmission types show differentproperties of gear ratio changes over different speeds, we usegear ratio changes to identify different vehicle transmissiontypes. We estimate gear ratios by using RPM and speedswhen the car is driving in constant speeds.In a SAT vehicle, RG are discrete values.

RG = Ri =RPM

vi = 1, ..., n (4)

where v represents the vehicular speed and n is the num-ber of gears of a transmission, e.g., n = 4 for a 4-speedtransmission.

In a CVT vehicle, RG changes continuously over time andalways approach the optimal RPM .

RG =

{

RPMav

if v < vT ,

Rb if v ≥ vT .(5)

where RPMa is the optimal RPM of a given engine, andvT is the speed threshold. If the vehicular speed is lower thanvT , the engine RPM converges to a constant value RPMa

under different speeds. If the vehicular speed is higher thanor equal to vT , the gear ratio is a constant value Rb.

3.1.2 Engine Torque Modeling

Engine torque is produced by the explosion of air and fuel,therefore, we can use AFR to model engine torque.

τe = AFRf(v). (6)

where f(v) is a parameter function that is monotonicallyincreasing with vehicular speed. Based on our empirical

361

Page 5: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

0

500

1000

1500

2000

0 20 40 60 80 100 120 140 160

Res

ista

nce

Speed (km/h)

data

model

0

200

400

600

800

1000

1200

1400

0 0.2 0.4 0.6 0.8 1 1.2 1.4

Pro

puls

ion

Acceleration (m/s2)

12

24

36

48

72

84

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

Modele

d R

esi

stance

Grade Resistance (m/s2)

data

model

Figure 4: Vehicle Dynamics Modeling. The figures are about drivetrain loss and wind resistance under eachspeed (left), relation between acceleration and propulsion (minus wind resistance and drivetrain loss) undereach speed (middle), modeled grade resistance with groundtruth (right).

observation, it starts from 0.3 at speed 0 and converges to 1when the speed is larger than 20km/h.

Therefore, the propulsion of a car on the wheel can bewritten as

Fp = ap ∗ τe ∗RG = ap

AFRf(v) ∗RPM

v. (7)

3.2 Drivetrain Loss and Wind Resistance Mod-eling

Instead of modeling each loss individually, we model allthe power losses as a whole. There are mainly two powerlosses in automotive systems, drivetrain loss and wind re-sistance. Drivetrain loss consists of transmission loss andother mechanical system losses. Transmission connects carengine and wheels by various gears and power loss occurswhen transmit the power from engine to wheels. We modeldrivetrain loss in the following form.

Fl =al

v+ bl ∗ v + cl. (8)

where v is the vehicular speed and the rest are coefficients.The drivetrain loss drops to minimum when the car is driv-ing in moderate speed.

The force from the air drag [12] can be represented byfollowing equation,

Fw = 0.5 ∗ ρa ∗ cd ∗Aa ∗ v2 = aw ∗ v2. (9)

where ρa is the air mass density, cd is the air drag co-efficient and Aa is the effective area of the vehicle. Sincethe effective area of vehicle is different from vehicle to ve-hicle, we model air drag as a function of vehicle speed withunknown coefficient aw.

After we put drivetrain loss and wind resistance together,the modeled loss and actual loss are shown in the Fig. 4.In low speed, the main loss comes from drivetrain loss dueto mechanical frictions. In high speed, the main loss comesfrom wind resistance due to air compression. After we havedrivetrain loss and wind resistance, we use propulsion minusthe loss (Fp − Fl − Fw) to model the relation between ac-celeration and propulsion, as shown in the middle of Fig. 4.For accelerations, we use extra MAF instead of raw MAFreadings from the OBD port. Raw MAF minus the MAFrequired to maintain a certain speed is the extra MAF forthis speed.

3.3 Grade Resistance ModelingDifferent road types, i.e., flat road, uphill and downhill,

have significant different impacts on vehicle movements and

fuel consumptions. Similar to [12], the grade resistance canbe modeled as a combination of forces caused by grade androlling resistance.

Fr = mgcr cos θ. (10)

where cr is the grade resistance coefficient, m is the vehiclemass, g is the gravity of earth , θ is the road grade and v isvehicular speed. The road elevation information is obtainedfrom National Elevation Dataset [13].

3.4 AFR ProfileVehicle needs different air/fuel injection rate to achieve

different accelerations under different speeds. Based on thevehicle dynamics models we built in previous sections, wecan build a fuel consumption profile. In this profile, wecan lookup the AFR required to accelerate a vehicle withan arbitrary acceleration under any speed. Let AFR(v, a)denotes the air/fuel rate is required to accelerate the vehicleat acceleration a when the vehicle is driving at speed v. Theprofile can be represented as the following equation.

AFR(v, a) = elog(a/RG)

f(v) +AFRc(v) (11)

0

5

10

15

20

25

0 20 40 60 80 100 120 140

KP

L

Speed (km/h)

129

1

6 8

10 12 14 16 18 20 22 24

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

Air

/Fuel

Rate

Acceleration (m/s2)

2

4

6

8

10

12

14

16

Figure 5: AFR profile.

An illustration of AFR profile of car 1 is shown in the rightsubfigure of Fig. 5. The profile provides the AFR requiredto accelerate the car at a certain acceleration under a cer-tain speed. We can infer a lookup table for each AFR(v, a)based on the profile. The left subfigure in Fig. 5 illustratesdifferent vehicles have different speed-KPL matching, whichindicates AFR profile needs to be built based on individualvehicles.

4. ACCELERATION CONTROLEcoDrive controls air/fuel injection rate to control vehicu-

lar speed by emulating gas pedal. EocDrive calculates accel-erations of each speed and leaves brake decision to drivers orother systems. It needs two inputs, road speed limit and seg-ment length. The speed limit can be set by human drivers or

362

Page 6: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

queried from online database [20]. The road segment lengthcan be estimated by human drivers or by a third-party nav-igation software. Road segment length is not necessary forlong distance roads, as the driving strategy will be the sameif the distance is longer than a threshold. For example, if thespeed limit is 25mph, the fuel efficient acceleration strategiesfor 300m and 500m are the same. In this paper, we assumeboth speed limit and road segment length are known. Theoutput of EcoDrive is a matrix and each element in the ma-trix is the minimum fuel consumption when the car arrivesat a certain distance with a certain speed. By traversingall the possibilities, EcoDrive is able to find all reasonabledriving strategies with different fuel consumption and traveltime.

4.1 Problem StatementDriving pattern can be abstracted as accelerate-cruise-

brake. EcoDrive focuses on the accelerate-cruise part andleaves brake decision to human drivers. For example, in a300m road segment with speed limit 25mph (or 40km/h),the EcoDrive accelerates and cruises to 200m and the driveruses the rest 100m to stop the car as there is a stop signat the end of the road. Similar to cruise control, we as-sume there is enough distance to front obstacles for driversto brake.EcoDrive needs two key inputs: 1) The length of the road

segment, i.e., from current location to the point driver willmake a brake, 2) The lower and upper speed limits of theroad segment. Such inputs can be given by user or extractedfrom online databases and navigation softwares. We focuson how to utilize such inputs to calculate fuel efficient strate-gies. Therefore, the problem that EcoDrive is going to ad-dress can be stated as follows: Given a road segment lengthwith lower and upper speed limits, how to control air/fuelinjection rate in real time to achieve the most fuel efficientdriving strategy.

4.2 Driving Strategy by Dynamic ProgrammingWe use dynamic programming to traverse all the possi-

bilities to find all reasonable driving strategies. This is in-spired by the fact that the fuel efficiency and travel timeare related to the speed and distance. We divided the roadsegment into smaller equal length road segments. We usevi and dk to represent the ith speed and the length of kthsegment, respectively. We use s(i, k) to represent the statewhen the car is driving at speed vi at the start location ofroad segment dk. For any state s(i, k), there are two sets ofpossible transitions. First, it transits from s(i, k− 1), whichmeans that the car is driving in constant speed vi in lastroad segment. Second, it transits from s(i − 1, k − 1 −m),which means the car is accelerating from speed vi−1 to viunder acceleration aj . The lower speed bound is used toeliminate some unreasonable cruising speed, e.g. it is obvi-ously not fuel efficient and reasonable if the car is cruisingat 1 km/h.In the first case, the accumulated fuel consumption is the

sum of the fuel consumption used to reach state s(i, k − 1)and the cruising fuel consumption from dk−1 to dk.

FCc(i, k) = FC(i, k − 1) +AFR(vi, 0.0) ∗ ti. (12)

where ti means the time cost when the car is driving

through road segment dk−1 and ti =dk−1

vi−vi−1.

In the second case, the accumulated fuel consumption isthe sum of the fuel consumption used to reach state s(i −1, k − 1−m), the cruising fuel consumption FCc in part ofroad segment k− 1−m, and the acceleration fuel consump-tion FCj . The car may start to accelerate at any locationin road segment k − 1 − m. The road segment is split intotwo parts, the car cruises to a point within the road segmentk − 1 − m and then starts to accelerate at acceleration aj .Therefore, the fuel consumption of this case can be repre-sented as follows.

FCa(i, k) = FC(i, k − 1−m) + FCc + FCj . (13)

where FCc = AFR(vi, 0.0) ∗ tc and tc is the cruising timecost within road segment k−1−m. To calculate tc, we needto calculate the distance used to accelerate from vi−1 to vi.Before that, we present the acceleration fuel consumptioncost as

FCj = AFR(vi−1, aj) ∗ ta. (14)

The acceleration time is ta =vi−vi−1

ajand the acceleration

distance is da = vi−1 ∗ta+0.5∗aj ∗t2a. The cruising distance

is simply dc =∑k−1

x=k−m−1 dx − da and the cruising time is

tc = dcvi−1

.

Therefore, the fuel consumption at the start of state s(i, k)is

FC(i, k) = min{FCc(i, k),min{FCa(i, k)}}. (15)

After we traverse all the states, the last state of each speedis the minimum fuel consumption when the car is finallycruising in that speed. The most economy driving strat-egy can be traced back from the state with minimum fuelconsumption. Different travel time is used when the car iscruising in different speeds. By using this property, we canfind a tradeoff between travel time and fuel consumption.

Assume that we split the road segment into n smallerequal length road segments , there are m different speedsand l different accelerations, the time complexity of the dy-namic programming algorithm is O(n ∗m ∗ l) and the spacecomplexity is O(n ∗m). In practice, the most road segmentlength in urban area is less than 1km and we set each smallerroad segment to be 1m. The unit of the speed sensed fromthe OBD port is km/h and the speeds are integers, so wehave 0− 60 different speeds in urban area. The accelerationis normally from 0.1m/s2 to 1.4m/s2. Therefore, the timecomplexity of the algorithm grows linearly with the totalroad length.

Different road conditions affect air/fuel rate as the carneeds lower (or higher) air/fuel injection rate to achieve thesame acceleration in downhill (or uphill) conditions. Theair/fuel rate for a specific road segment dk becomesAFR(vi, aj−ak), where ak refers to the acceleration/deceleration causedby the kth road segment. The driving strategy can be calcu-lated based on the dynamic programming solution as well.

4.3 Fuel Economy and Travel TimeIn general, fuel efficient driving strategies require longer

travel time in urban environments. Therefore, there is atrade-off between fuel efficiency and travel time. EcoDriveprovides different travel time by selecting different targetspeed. The higher the target speed, the less the travel time.

363

Page 7: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

DP

ExitAcceleration Cruisingv ≥ µ d ≥ D

AFR Profile Speed Limit (V) Distance (D)

d

v

D

V

µ

AFR(v)

POS(v) POS(µ)

POS(v)

MappingsD

P b

ack

tra

ckin

gC

on

tro

lle

r

Figure 6: EcoDrive control flow.

The user can select the most fuel efficient driving strategywith fixed target speed, or select desired travel time with cor-responding target speed. The selection of target speed alsodepends on the speed limit, i.e., the target speed should notbe higher than the speed limit. The most fuel efficient cruis-ing speed ranges from 30mph to 60mph for different typesof vehicles. In urban environments, the most fuel efficienttarget speed is around the speed limit. However, in shortroad segments, it is generally more fuel efficient to select atarget speed that is lower than speed limit due to extra coston acceleration.

4.4 Highway StrategyThe most fuel efficient highway speeds range from 40km/h

to 80km/h for the vehicles we observed. Given the high-way speed limit ranging from 80km/h to 110km/h in US,drivers can find a trade-off between fuel efficiency and traveltime by selecting different cruising speeds. Generally speak-ing, constant speed cruising generally has higher KPL thanfrequent accelerations and decelerations. Therefore, tradi-tional cruise control is considered a good option for eco-nomic driving. However, traditional cruise control sticksto one target speed. If the driver manually increases targetspeed, the car will aggressively approach to the target speed,which will bring extra fuel consumptions. Similarly, whenthe car is cruising uphill, the road will slow down the car andcruise control will aggressively approach the target speed. Indownhill condition, cruise control will reduce air/fuel injec-tion to maintain the target speed. EcoDrive increases speedgradually and utilizes the acceleration caused by downhillto achieve higher KPL.

4.5 Acceleration ControllerWe summarize the control flow of EcoDrive in Fig. 6. The

AFR profile is calculated offline by the modeling component.Given the travel distance D and speed limit V , EcoDriveuses dynamic programming model to calculate the speed toacceleration mapping of the most economic driving strategy.This process is done by backtracking the last state of tar-get speed µ. The speed to acceleration mapping records thedesired acceleration under that speed. This mapping is con-verted into speed to air/fuel injection rate mapping AFR(v)by querying the AFR profile. The acceleration controllerretrieves the air/fuel injection rate based on the mappingand real-time sensed vehicular speed. A air/fuel rate to gas

6P MALE and FEM

Connectors

OBD Device GPS

APU Platform

Switch

Arduino Board

USB Hub

Figure 7: EcoDrive in-vehicle setup.

pedal position mapping and a gas pedal position to voltagemapping are calculated in advance. The controller gets thespeed to gas pedal position mapping POS(v). Based on theair/fuel injection rate, EcoDrive sends corresponding volt-age values to the ECU. In this process, EcoDrive maintainsthree states, acceleration, cruising and exit. EcoDrive is inacceleration state by default and enters cruising state whensensed OBD speed is not less than target speed. After itenters cruising state, it remains constant air/fuel rate injec-tion. Different from traditional cruising control, EcoDrivemay increase/decrease speed in cruising state by adaptingto various road conditions. If the car reaches the distanceor EcoDrive is turned off by switch of brake, it enters exitstate. EcoDrive releases all the resources in exit state andaborts to wait for next inputs.

5. IN-VEHICLE SETUP AND IMPLEMEN-

TATIONWe explain the in-vehicle setup and implementation of

EcoDrive.

5.1 In-vehicle SetupThe in-vehicle setup of EcoDrive is shown in Fig. 7.

EcoDrive uses Arduino Uno microcontroller to emulate gaspedal by delivering signals to the ECU through a 6P FEMConnector. The microcontroller outputs a 16-bit resolu-tion digital pulse-width modulation (PWM) signal which issmoothed out by an RC filter. A 6P MALE Connector isused to read signal outputs from the original gas pedal. Awiring harness and switch button are built that allows theuser to switch the signal read by the ECU between the gaspedal and the microcontroller. Therefore, the setup sup-ports two mode, human driving mode and EcoDrive mode.In human driving mode, the gas pedal and air/fuel injectionrate is controlled by human driver. In EcoDrive mode, thegas pedal is unusable and air/fuel injection rate is controlledby the system. In EcoDrive mode, The APU platform [24]sends pedal positions to the microcontroller through serialcommunication and the microcontroller converts the pedalposition values into analog voltages outputs. To do this,we construct a mapping between sensor analog voltage out-puts and pedal positions. By using the mapping between gaspedal position and air/fuel rate built from driving traces, wecan send position values from laptop to the car to controlair/fuel injection rate.

364

Page 8: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

5.2 ImplementationWe implement EcoDrive data sensing module and air/fuel

injection control module in C++. We operate EcoDrive onthe Ubuntu 14.04 32bit distribution (with linux kernel ver-sion 3.13.0-34-generic), that runs on PC Engines APU plat-form [24]. APU platform is a mobile embedded platformthat is equipped with 1GHz dual core CPU and 4G DDR3DRAM. EcoDrive uses two threads to query and read OBDmessages, respectively. One thread sends OBD query mes-sage to the OBD port in every 250ms. Higher frequencyOBD query will cause CAN read error. Another thread lis-tens on the OBD port for echo messages and sends voltagecontrol commands to Arduino board. The Arduino boardinitiates a loop to listen on the USB serial and sets the volt-age output of two pins based on received command. Thetwo pins represent the voltage output pins of gas pedal’stwo position sensors.

6. EVALUATIONOur evaluation consists of four parts, EcoDrive road test-

ing results in both urban and highway environments, vehi-cle dynamics modeling accuracy, driving data statistics andtrace-driven simulation.

6.1 Fuel Efficiency Test Results

6.1.1 Urban

0 5

10 15 20 25 30 35 40 45

5 10 15 20 25 30 35

Spee

d (

km

/h)

Time (s)

Driver 1

Ideal

EcoDrive

Driver 2

Figure 8: Driving behaviors of EcoDrive and HumanDrivers on a 300m length road segment.

In this experiment, we compare EcoDrive with humandrivers in urban road segments. EcoDrive uses drive-by-wiretechnology to control air/fuel injection rate. It acceleratesthe vehicle by sending gas pedal position values to ECU.EcoDrive provides driver a switch button which can disableEcoDrive immediately. In our evaluation, we did not expe-rience any bugs or out of control situations, but we madeour risk management as follows. First, we control the in-put parameters. i.e., the gas pedal position value, on boththe controller and the Arduino board. Second, we can shiftthe transmission to neutral or park to disconnect the engineand wheel if the engine is out of control due to unexpectedgas pedal position input. Third, the brake dominates thegas pedal and we can brake even when the engine is out ofcontrol.

Test Drive Example. A EcoDrive prototype test driveand human drive tests are conducted in a 300m length roadsegment with speed limit of 25mph (or 40km/h). The ve-hicular speed traces are shown in Fig. 8. The ideal curveis plotted from the traces obtained from dynamic program-ming model. In our prototype, the air/fuel injection rate iscontrolled based on sensed speed. The speed may change atany point during the query interval, so that it is challenge

0

2

4

6

8

10

12

50 120 150 250 500 1000

KP

L

Distance (m)

IdealEcoDriveDriver 1Driver 2Driver 3Driver 4

Figure 9: Fuel efficiency comparison between Eco-Drive and human drivers on urban road segments.

to control the air/fuel injection rate precisely at each speed.The differences between estimated speed traces and actualspeed traces are mainly caused by the impreciseness of speedsensing and road conditions. Some other factors affect thepreciseness of vehicular speed control include wind speedand passenger weights etc. Two human drivers are askedto drive on the same road segment. It is shown that thedriver 1 is more aggressive by fast accelerations and driver2 is more conservative by slow accelerations. The drivingtrace of EcoDrive prototype falls in between. In this com-parison, the prototype shows 23% and 19% fuel efficiencyimprovements than driver 1 and 2, respectively. Driver canreach a fuel efficient speed faster by fast acceleration, but ittakes more fuel during the acceleration process. If a driveruses lower accelerations to reduce fuel consumption duringacceleration process, overall fuel efficiency will not be in-creased due to driving in low (less fuel efficient) speeds andlonger travel time. EcoDrive chooses the best strategy foreconomic driving.

Urban Road Segments. We select six different roadsegments and let EcoDrive drive the car 10 times on eachroad segment. We recruited four drivers to drive on thesame road segments 10 times as well. The speed limit of the500m and 1000m road segments is 30mph (or 50km/h) andthe that of the 150m and 250m road segments is 25mph (or40km/h). There is no speed limit for the 50m and 120mroad segments. The length is the driving length of EcoDriveand the overall road segment length is longer so that drivershave enough time to stop the car. The results are shownin Fig. 9. The ideal fuel consumption is the theoretical fuelconsumption that is calculated based on AFR profile and dy-namic programming model. The actual fuel consumption ofEcoDrive on certain road segment length is very stable. Eco-Drive shows 10%-40% fuel efficiency improvement comparedto different drivers with different road segment lengths. Thefuel efficiency improvement comes from the smooth drivingbehaviors of EcoDrive. EcoDrive has an average of 20%more travel time than human drivers. EcoDrive can have5%-10% improvements than human drivers if not sacrificingtravel time. The plots of tradeoff between fuel consumptionand travel time are omitted due to the space limit.

6.1.2 Highway

In this experiment, we compare EcoDrive with cruise con-trol and human drivers on highway.Compare to Cruise Control. Fig. 10 plots the dif-

ferent acceleration patterns between cruise control and Eco-Drive. Cruise control is a vehicle built-in feature that cankeep car driving at a certain speed while human drivers canmanually increase or decrease the cruising speed. The cruisecontrol pattern is extracted when the gas pedal position is0 but the air/fuel injection rate is higher than the idle state

365

Page 9: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

50

60

70

80

90

100

0 5 10 15 20 25 30

Spee

d(k

m/h

)

Time(s)

Cruise ControlEcoDrive

0 100 200 300 400 500 600 700 800

0 5 10 15 20 25 30

Air

/Fuel

Cost

Cruise ControlEcoDrive

Figure 10: Acceleration comparison between CruiseControl and EcoDrive.

rate. As shown in the figure, cruise control consumes morefuels than EcoDrive due to the aggressive acceleration strat-egy. The travel distance is similar for both cases, so Eco-Drive is more fuel efficient than cruise control. Similarly,driving uphill by using cruise control will consume morefuels as well. When the car is driving uphill, the vehicu-lar speed drops due to grade resistance, so cruise controlwill aggressively accelerate to the setting speed. In downhillconditions, cruise control will reduce air/fuel injection rate,while accelerating by maintaining the same air/fuel injectionrate has higher fuel efficiency.

10 12 14 16 18 20 22 24 26

75 80 85 90 95 100 105 110 115

KP

L

Speed(km/h)

EcoDriveCruise Control

Human Drivers

Figure 11: Highway experiments.

Compare to Human Drivers. We evaluate EcoDriveby driving on two highway segments, one is a local highwaysegment and another is a cross state highway segment. Thehighway segments are selected based on historical drivingtraces of car 1. EcoDrive is evaluated by two-way driving ineach highway segment, e.g., if EcoDrive enters highway at Aand exits at B in one experiment and it will enter at B andexits at A in next experiment. The two-way road testingis used to evaluate EcoDrive in both uphill and downhillconditions. EcoDrive is evaluated between exit 256 and 262on Madison’s West Betline Highway, and between exit 132and 136 on US 14 Highway.

The cruise control and human driving traces are extractedfrom historical driving traces collected on the same highwaysegments. In each driving trace, the car is traveling at aconstant speed(it may have some small speed variations).And we calculate the average speed of each trace as thevehicle speed. The results are shown in Fig. 11, whereeach point represents the KPL of a 2km− 3km length roadsegment. To eliminate the impact of traffic, the traces thathave speed decrease due to brake are not included. In thisexperiment, EcoDrive shows more than 10% fuel efficiencythan cruise control and more than 30% fuel efficiency thanhuman drivers on average.

6.1.3 Travel Time and Fuel Efficiency

In this experiment, we evaluate the tradeoff between traveltime and fuel consumption.

2

4

6

8

15 20 25 30 35 40

KP

L

Time(s)

EcoDrive

Human Drivers

Figure 12: Tradeoff between travel time and fuelconsumption on a 250m road segment.

8

12

16

20

24

28

50 60 70 80 90 100

KP

L

Time(s)

EcoDrive

Cruise Control

Human Drivers

Figure 13: Tradeoff between travel time and fuelconsumption on highway.

Urban. The tradefoff between travel time and fuel con-sumption of EcoDrive on 250m road segment is shown inFig. 12. For EcoDrive, the optimal KPL is around 7 andthe travel time is around 28 seconds. On the other hand, theaverage KPL for human drivers is around 5.5 and the aver-age travel time is around 25 seconds. EcoDrive can achievea 20% fuel efficiency improvement on average by sacrificingtravel time by around 10%. EcoDrive can also improve fuelefficiency under same travel time in most cases.

Highway. Fig. 13 shows the tradeoff between traveltime and fuel efficiency on highway. Each highway segmentlength is around 2km − 3km. EcoDrive can improve fuelefficiency by more than 30% on average without sacrificingtravel time. The gain comes from smooth acceleration androad adaptation. More fuel efficiency can be achieved bycruising at the peak KPL speed, which is around 90km/h inthis evaluation.

6.2 Modeling Accuracy

0

0.2

0.4

0.6

0.8

1

-40 -30 -20 -10 0 10 20 30 40

CD

F

Propulsion Modeling Error(%)

Car 1-6

Car 7-12

0

0.2

0.4

0.6

0.8

1

-40 -30 -20 -10 0 10 20 30 40

CD

F

Resistance Modeling Error(%)

Car 1-6Car 7-12

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

1

-30 -20 -10 0 10 20 30

CD

F

Slope Modeling Error(%)

Car 1-6Car 7-12

0

0.2

0.4

0.6

0.8

1

-30 -20 -10 0 10 20 30

CD

F

AFR Modeling Error(%)

Car 1-6

Car 7-12

Figure 14: The cumulative distribution function ofvehicle dynamics modeling errors.

366

Page 10: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

In this experiment, we evaluate the modeling accuracy ofvehicle dynamics models. Different vehicle forces, propul-sion, resistance and grade resistance, are evaluated sepa-rately. The AFR profile calculation accuracy is evaluated aswell. We divide the data into two sets, one set is the trainingset used to build the model and another set is the testingset for evaluating the model. For each model, we repeat thisprocess and plot the modeling accuracy of various vehicledynamics models in Fig. 14. From top-left to bottom-right,they are propulsion model evaluation, drivetrain loss andwind resistance model evaluation, grade resistance modelevaluation, and AFR profile evaluation.

We use green curves to represent the cars have morethan one thousand miles driving traces (Car 1-6) and usered curves to represent the rest (Car 7-12). The greencurves show that the fitting errors of more than 95% casesare within ±10%. The red curves show less fitting accuracydue to less miles.

6.3 Driving Data Statistics

6.3.1 Urban Road Segment Length

0

0.2

0.4

0.6

0.8

1

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5

CD

F

Road Segment Length(km)

Car 1-12

All

Figure 15: Road segment length in urban area.

We summarize the length of road segments in Fig. 15. Aroad segment is defined as the distance between two stand/stoplocations. A stand/stop location is defined as following: 1)The speed of the car is zero; 2) The car is making a turn.The speed of the car can be easily sensed from the OBDport. We identify turns from GPS data. The driving direc-tion of car can be calculated from two adjacent GPS points.If the accumulated driving direction change are close to 90degree, then we mark this is a stand/stop location. Thisrough road segment length statistics give us a guideline forexperiments. As shown in the figure, the most of road seg-ments are within 1000m. This indicates that the drivingpattern in urban area is primarily accelerate-brake.

6.3.2 Urban Acceleration

0

0.5

1

1.5

2

0 5 10 15 20 25 30 35 40

Acc

eler

atio

n(m

/s2)

Speed(km/h)

Human DriversIdeal

Figure 16: The urban acceleration patterns of dif-ferent drivers.

Fig. 16 explains the acceleration patterns of car 1 and theideal acceleration pattern calculated by EcoDrive with equalroad length. As shown in the figure, drivers are not awareof the most efficient accelerations of different speeds and notable to drive at a certain speed. They drive either lower thandesired accelerations, which will increase fuel consumptiondue to longer travel time in low KPL speeds, or higher thandesired accelerations, which will increase fuel consumptiondue to extra fuel consumption to achieve the target speed.

6.3.3 Highway Driving Speed

0

25

50

60 110 160

Dis

tan

ce(m

ile)

Car 1

0

50

100

60 110 160

Car 2

0

25

45

60 110 160

Car 3

0

20

35

60 110 160

Car 4

0

15

25

60 110 160

Speed(km/h)

Car 5

0

25

45

60 110 160

Car 6

Figure 17: The highway driving speed distributionsof car 1-6.

The speed limits of rural highway is 65mph (104.6km/h)to 70mph (112.6km/h), and the speed limit of urban high-way is 55mph (88.5km/h). We summarize the highway driv-ing speeds of car 1-6 and illustrate the distribution and bestKPL speed in Fig. 17. We observe that most drivers driveabove the speed limits with noticeable mileages and muchhigher than the best KPL speed. This is partially becausethe drivers are not aware of the much higher fuel consump-tion in high speeds. Also, slowing down when following aslow car will increase fuel consumption due to power losswhen braking. Frequent accelerations and decelerations in-crease fuel consumption as well.

6.4 Trace-driven Simulation

0

0.2

0.4

0.6

0.8

1

0 0.2 0.4 0.6 0.8 1

CD

F

Urban Improvement

Car 1-12All

0

0.2

0.4

0.6

0.8

1

0 0.2 0.4 0.6 0.8 1 1.2 1.4

CD

F

Highway Improvement

100% Speed90% Speed80% Speed

Figure 18: Fuel efficiency improvements by trace-driven simulation.

In this experiment, we evaluate EcoDrive by trace-drivensimulations.

Urban. We divide urban trips into variable-length roadsegments where the vehicular speed is 0 at the start and endof each segment. Each segment is divided into four parts,accelerating part, cruising part, braking part and idle part.Accelerating part ended when the speed does not increase in

367

Page 11: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

5 seconds. Braking part started when the driver release gaspedal at the end of each segment. Cruising part falls betweenaccelerating part and braking part. Idle part follows brakingpart after the vehicular speed reach 0. The speed limit iscalculated based on the average speed of cruising part. Wecalculate the fuel cost of EcoDrive by replaying accelerationand cruising parts. We use the same braking and idle costextracted from original traces. We sum up the two costs tocalculate the final fuel consumption of EcoDrive. As shownin Fig. 18, EcoDrive can improve a median of 20% fuelefficiency in urban environment. The travel time is reducedby 10%-30% in 20% cases and is increased by less than 25%in 60% cases. The plots of travel time are omitted due tothe space limit.

Highway. We divide highway trips into road segmentsbased on deceleration. If the deceleration is larger than athreshold, we separate current segment into one highwaysegment. The average speed of highway segment is used astarget speed for EcoDrive. We replay each highway segmentby EcoDrive with three different target speeds, the sametarget speed, 90% of target speed and 80% of target speed.As shown in Fig. 18, EcoDrive can improve fuel efficiencyby more than 20% on average without sacrificing travel timeand can improve an average of 40% fuel efficiency by sacri-ficing 10% travel time on highway.

7. RELATED WORK

7.1 Cruise ControlCruise control [9] is a system that automatically controls

the vehicle to drive in a certain speed. [18] introduces Adap-tive Cruise Control (ACC) that adjusts vehicle speed basedon distance to cars ahead by using radar. [25] studies theeffects of time-gap settings of adaptive cruise control on driv-ing performance in a bus driving simulator. [26] studies adistributed car control system that every car is controlled byadaptive cruise control. [19] develops an intelligent cruisecontrol system for automatic vehicles and verify the effec-tiveness of the system under emergency situations by simu-lation. EcoDrive is more fuel efficient than adaptive cruisecontrol in two ways. First, EcoDrive is able to improve fuelefficiency by adjusting speed according to road conditionsand vehicle types. Second, EcoDrive tracks the fuel effi-ciency under different cruising speeds and provides a tradeoffbetween fuel efficiency and travel time.

7.2 Fuel Efficiency EnhancementIncreasing vehicular fuel efficiency has been a topic of

much recent research [22, 17, 27, 28]. GreenGPS [22] re-quires a fuel map server to record the statistical route fuelusage and calculate the most fuel efficient route for drivers.SignalGuru [17] requires vehicles sharing traffic light infor-mation so that drivers can adjust the speed of the vehicle toavoid stops in front of traffic lights. [27] uses an on-boardeco-driving device that provides instantaneous fuel econ-omy feedback affects driving behaviors, and consequentlyfuel economy. [28] evaluates the impacts of a smartphoneapplication on driving behaviors to enhance fuel efficiency.Different from existing approaches that are focusing on ad-vising human drivers to adjust driving behaviors, EcoDriveis designed to assist human drivers. Both [29] and [30] showthat some reduction of fuel consumption can be achieved byvehicle-to-vehicle communication.

7.3 Vehicle Dynamics SensingSmartphones equipped with various sensors are widely

used to sense vehicle dynamics to understand driving behav-iors and road conditions. [31] detects aggressive driving be-haviors based on accelerometer sensor readings from smart-phone. [32] determines driver phone use by comparing thecentrifugal force of smartphone with that of a fixed referencesensor during turns. [33] monitors road surface conditionsby using accelerometers. [34] detects various road and traf-fic conditions, e.g., potholes, bumps, braking, and honking,by using various sensors in smartphones. [35] senses speedsfrom the OBD port to identify aggressive driving behav-iors and offer discounts for drivers with good driving habits.However, none of these work models vehicle dynamics asfunctions of instant fuel consumption.

7.4 Vehicle Force Modeling[12] models rolling resistance and air drag based on some

measurements on the vehicle, e.g., effective areas to modelair drag. [36] models vehicle transmission system based ongear sizes. [37] models tire friction based on tire parameters,e.g., radius. [38] presents an electronic system attached onwheel to measure and monitor of the torque transmitted tothe wheel of a moving vehicle. [10] models engine torque andhorsepower by RPM when the engine is not connected withtransmission. Our model uses the parameters available oncar CAN bus to find the relations between fuel consumptionand vehicle speed changes. Different from existing work, ourmodel does not rely on the detail physics properties of thecar, e.g., tire radius and transmission gear size etc.

7.5 Autonomous DrivingThere have been major advances in designing and building

autonomous vehicle operating systems to realize safer andmore convenient vehicles [1, 4, 5, 21]. These work focuseson issues related to object detection and efficient navigationand so forth. CarSpeak [3] is designed as a communicationsystem to share sensory data between autonomous vehiclesfor obstacle detection. Different from autonomous cars stud-ies, we focus on the design and implementation of fuel-awareacceleration control system that works on existing regularvehicles. We expect that EcoDrive can be integrated withautonomous driving cars, but EcoDrive can also be used in-dependently. Also, EcoDrive can work on existing vehilceswith little hardware changes.

8. DISCUSSIONIn this section, we discuss some design considerations of

EcoDrive.Hybrid Vehicle (HV) and Electric Vehicle (EV).

EcoDrive is designed for gasoline-powered vehicles, but themodeling process and gas pedal emulation can also be ap-plied to HVs and EVs. Currently, the majority of vehiclesrunning on street are still gasoline-powered vehicles. It is im-portant to develop systems like EcoDrive to work on regularvehicles to improve fuel efficiency and limit carbon pollu-tion. The core of EcoDrive is that it can work on regularvehicles with easy and recoverable installation.

Instant Fuel Economy Display. In urban environ-ments, acceleration is not fuel efficient, but accelerating toa higher speed in a careful way can improve fuel efficiency.If the driver refuses to accelerate due to low instant fuel effi-ciency, the car will drive in low fuel efficient speed and even-

368

Page 12: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

tually increase fuel consumption. Similarly, releasing gaspedal can increase instant fuel efficiency dramatically, butfrequent acceleration and deceleration will consume morefuel than cruising under certain speed. Therefore, instantfuel economy display is misleading and may reduce overallfuel efficiency.

Impact of Traffic and User Experience. EcoDrivecontrols the vehicle in a way that is similar to cruise con-trol, so the driver should keep a safe distance to front vehi-cle. Since EcoDrive accelerates the vehicle in various waysaccording to different road segment lengths, it is more chal-lenging for human drivers to keep safe distance than cruisecontrol in dense traffic scenarios, because drivers need to fre-quently brake to avoid front-end collision. Therefore, Eco-Drive is more suitable for drivers to use in low traffic volumescenarios. However, it is shown from the data we collectedthat drivers tend to accelerate much more aggressive thanthe optimal acceleration patterns. In other words, EcoDriveachieves higher fuel efficiency by accelerating slower thanmost drivers usually do. Also, EcoDrive uses fixed acceler-ation pattern for fixed road length and speed limit, driversand passengers can easily get used to the driving style ofEcoDrive. Therefore, we expect EcoDrive can be usefulin most urban driving scenarios (except traffic hours) anddrivers can still feel that the vehicles are under control dueto predictable accelerations. We also expect that EcoDrivecan tolerate more complex traffic conditions when integrat-ing with front object detection and route planning systemsequipped on driverless cars.

Limitations. First, EcoDrive requires the road length asinput in short length road segment (e.g., shorter than 200m).Road length can be obtained by navigation softwares, buthow to retrieve such information is beyond the scope of thispaper. Second, it relies on drivers to brake or switch to dis-able EcoDrive mode. The operation complexity is accept-able for drivers as proven by cruise control. Third, EcoDriverequires mileage trainings to build an accurate model, i.e.,1000 miles driving data can build a very accurate model asshown in evaluation. Some optimization can be made toreduce training time, e.g., sharing the AFR profile amongsame vehicle models. Fourth, we did not evaluate EcoDriveby end-to-end scenarios in urban environment, e.g., whatare the fuel savings from home to work. There are differenttraffic volumes and different traffic light schedules amongdifferent trips. Therefore, it is challenging to compare Eco-Drive with human drivers in such scenarios. Given the fuelimprovement in arbitrary length road segments, we believeEcoDrive can improve fuel efficiency in end-to-end scenariosas well.

Each trip can be divided into three parts: acceleration,cruising and braking. Acceleration and cruising consumemost of the fuel during a trip. For this work, EcoDrivefocuses on the acceleration part and cruising part. Thereis no direct way to fairly compare two brakes that madeby different drivers, or different brakes made by the samedriver. Therefore, we did not include the fuel consumptionof braking in our evaluation.

There are other factors that affect fuel consumption, e.g.,tire pressure, temperature and wind direction etc. A moreaccurate model can be built by using more vehicle param-eters. However, there is no direct way to access some in-vehicle parameters like tire pressure. We advocate thatthe vehicle manufacturers provide more information through

OBD port that can be used to enable more applications.Some other real world parameters, e.g., traffic light sched-ule, stop sign and wind direction etc., can also be used toimprove fuel efficiency. We believe such extra informationcan be used to improve EcoDrive in broader aspects, thedetailed integration methods are out of scope of this paperthough.

9. CONCLUSIONThis paper introduces EcoDrive, a fuel consumption sens-

ing and control system that assists human driver to drivefuel efficiently. EcoDrive calculates driving strategy basedon the properties of individual vehicles and road conditions.To this end, it models vehicle dynamics as functions of in-stant fuel consumption and calculates acceleration strategiesaccordingly. We build a prototype of EcoDrive on a mobileembedded platform. The prototype is installed on a regularvehicle and tested for more than 100 miles in both urban andhighway environments. In comparison with human drivers,EcoDrive improves fuel efficiency by 10%-40% in urban en-vironments. It has an average of 10% higher fuel efficiencythan vehicle built-in cruise control and more than 30% fuelefficiency than human drivers on highway.

10. ACKNOWLEDGMENTSWe would like to acknowledge the anonymous reviewers

and our shepherd, whose comments helped bring the paperinto its final form. This research project is supported inpart by the US National Science Foundation through awardsCNS-1405667, CNS-1345293, CHE-1230751, CNS-1343363and CNS-1525586.

369

Page 13: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

11. REFERENCES

[1] Google driverless car.http://en.wikipedia.org/wiki/Google driverless car.

[2] Qnx operating system for diverless car by blackberry.http://www.qnx.com/.

[3] Swarun Kumar, Lixin Shi, Nabeel Ahmed, StephanieGil, Dina Katabi, and Daniela Rus. Carspeak: acontent-centric network for autonomous driving. InProceedings of the ACM SIGCOMM 2012.

[4] Chris Urmson, Joshua Anhalt, Drew Bagnell,Christopher Baker, Robert Bittner, MN Clark, JohnDolan, Dave Duggins, Tugrul Galatali, Chris Geyer,et al. Autonomous driving in urban environments:Boss and the urban challenge. Journal of FieldRobotics, 2008.

[5] Todd Litman. Autonomous vehicle implementationpredictions. 2013.

[6] Morgan Stanley Research. Autonomous cars:Self-driving the new auto industry paradigm. 2013.

[7] Obd.http://en.wikipedia.org/wiki/On-board diagnostics.

[8] Obd pids. http://en.wikipedia.org/wiki/OBD-II PIDs.

[9] Cruise control, wikipedia.http://en.wikipedia.org/wiki/Cruise control.

[10] Chi-Man Vong, Pak-Kin Wong, and Yi-Ping Li.Prediction of automotive engine power and torqueusing least squares support vector machines andbayesian inference. Engineering Applications ofArtificial Intelligence, 19, 2006.

[11] Robert A Giannelli, EK Nam, Kent Helmer, TheodoreYounglove, George Scora, and M Barth. Heavy-dutydiesel vehicle fuel consumption modeling based onroad load and power train parameters. Technicalreport, SAE Technical Paper, 2005.

[12] Robin Andersson. Online estimation of rollingresistance and air drag for heavy duty vehicles. 2012.

[13] National elevation databases.http://nationalmap.gov/elevation.html.

[14] Fuel gauge.http://auto.howstuffworks.com/fuel-gauge1.htm.

[15] Adriano Alessandrini, Francesco Filippi, and FernandoOrtenzi. Consumption calculation of vehicles usingobd data. 2012.

[16] Min Goo Lee, Yong Kuk Park, Kyung Kwon Jung,and Jun Jae Yoo. Estimation of fuel consumptionusing in-vehicle parameters. International Journal ofU-& E-Service, Science & Technology, 4(4), 2011.

[17] Emmanouil Koukoumidis, Li-Shiuan Peh, andMargaret Rose Martonosi. Signalguru: leveragingmobile phones for collaborative traffic signal scheduleadvisory. In Proceedings of the 9th internationalconference on Mobile systems, applications, andservices, pages 127–140. ACM, 2011.

[18] Johan Bengtsson. Adaptive cruise control and drivermodeling. Department of Automatic Control, LundInstitute of Technology, 2001.

[19] Petros A Ioannou and Cheng-Chih Chien.Autonomous intelligent cruise control. IEEETransactions on Vehicular Technology, 1993.

[20] Wikispeedia, a road speed limit database.http://en.wikipedia.org/wiki/Wikispeedia.

[21] Junsung Kim, Ragunathan Raj Rajkumar, andMarkus Jochim. Towards dependable autonomousdriving vehicles: a system-level approach. ACMSIGBED Review, 2013.

[22] Raghu K Ganti, Nam Pham, Hossein Ahmadi,Saurabh Nangia, and Tarek F Abdelzaher. Greengps:a participatory sensing fuel-efficient maps application.In Proceedings of the 8th international conference onMobile systems, applications, and services, pages151–164. ACM, 2010.

[23] Kerem Koprubasi. Modeling and control of ahybrid-electric vehicle for drivability and fuel economyimprovements. PhD thesis, The Ohio State University,2008.

[24] Apu platform. http://www.pcengines.ch/apu.htm.

[25] Tsang-Wei Lin, Sheue-Ling Hwang, and Paul AGreen. Effects of time-gap settings of adaptive cruisecontrol (acc) on driving performance and subjectiveacceptance in a bus driving simulator. Safety science,47(5):620–625, 2009.

[26] Sarah M Loos, Andre Platzer, and Ligia Nistor.Adaptive cruise control: Hybrid, distributed, and nowformally verified. In FM 2011: Formal Methods, pages42–56. Springer, 2011.

[27] Kanok Boriboonsomsin, Alexander Vu, and MatthewBarth. Eco-driving: pilot evaluation of drivingbehavior changes among us drivers. University ofCalifornia Transportation Center, 2010.

[28] Johannes Tulusan, Thorsten Staake, and ElgarFleisch. Providing eco-driving feedback to corporatecar drivers: what impact does a smartphoneapplication have on their fuel efficiency? InProceedings of the 2012 ACM Conference onUbiquitous Computing, pages 212–215. ACM, 2012.

[29] Dominik Lang, Thomas Stanger, and Luigi del Re.Opportunities on fuel economy utilizing v2v baseddrive systems. Technical report, SAE Technical Paper,2013.

[30] Dominik Lang, Roman Schmied, and Luigi Del Re.Prediction of preceding driver behavior for fuelefficient cooperative adaptive cruise control. SAEInternational Journal of Engines,7(2014-01-0298):14–20, 2014.

[31] Derick A Johnson and Mohan M Trivedi. Driving stylerecognition using a smartphone as a sensor platform.In Intelligent Transportation Systems (ITSC),International IEEE Conference on. IEEE, 2011.

[32] Yan Wang, Jie Yang, Hongbo Liu, Yingying Chen,Marco Gruteser, and Richard P Martin. Sensingvehicle dynamics for determining driver phone use.ACM Mobisys, 2013.

[33] Jakob Eriksson, Lewis Girod, Bret Hull, RyanNewton, Samuel Madden, and Hari Balakrishnan. ThePothole Patrol: Using a Mobile Sensor Network forRoad Surface Monitoring. In MobiSys, 2008.

[34] Prashanth Mohan, Venkata N. Padmanabhan, andRamachandran Ramjee. Nericell: Rich monitoring ofroad and traffic conditions using mobile smartphones.SenSys ’08. ACM, 2008.

[35] Progressive. Linking driving behavior to automobileaccidents and insurance rates. Report, 2012.

370

Page 14: EcoDrive: A Mobile Sensing and Control System for Fuel ...gxc27/teach/597/ecodrive-mobicom15.pdf · System and Assumptions . This paper introduces Eco-Drive, a fuel consumption sensing

[36] R Zanasi, A Visconti, G Sandoni, and R Morselli.Dynamic modeling and control of a car transmissionsystem. In 2001 IEEE/ASME InternationalConference on Advanced Intelligent Mechatronics.IEEE, 2001.

[37] C Canudas de Wit and P Tsiotras. Dynamic tirefriction models for vehicle traction control. InProceedings of the 38th IEEE Conference on Decisionand Control. IEEE, 1999.

[38] Valner Brusamarello, Alexandre Balbinot, Luiz Carlos

Gertz, and Andre CervieIAri. Dynamic torquemeasurement for automotive application. InInstrumentation and Measurement TechnologyConference (I2MTC). IEEE, 2010.

371