
Engineering and Technology
An open tool for creating battery-electric vehicle time series from empirical data, emobpy
C. Gaete-morales, H. Kramer, et al.
Discover emobpy, an innovative open-source tool transforming battery-electric vehicle profiles using empirical mobility data. Developed by Carlos Gaete-Morales, Hendrik Kramer, Wolf-Peter Schill, and Alexander Zerrahn, this tool generates essential time series data for BEV mobility and grid demand, revealing critical insights into grid availability and charging strategies in Germany.
~3 min • Beginner • English
Introduction
The study introduces emobpy, an open-source Python tool that generates detailed time series profiles for battery-electric vehicles (BEV) from empirical mobility statistics and customizable assumptions. Each BEV profile comprises four time series: (i) vehicle mobility (locations and distances), (ii) driving electricity consumption (including auxiliaries and HVAC), (iii) grid availability (connection status and power rating), and (iv) grid electricity demand (actual charging based on strategies). The motivation is the growing importance of BEV for power systems, where robust, transparent inputs on mobility and charging are scarce yet crucial. The purpose is to provide a transparent, flexible, and reproducible way to derive such inputs for diverse energy, environmental, and economic model applications. The study also demonstrates emobpy by generating 200 BEV profiles representative of German mobility.
Literature Review
The paper highlights that while BEV deployment and their power sector interactions are widely studied, empirical, publicly available time series on mobility and charging are scarce due to small fleet sizes and data protection. Existing approaches often rely on stylized assumptions, derive data from statistics without sufficient documentation or reproducibility, or are tailored to specific geographies and behaviors. Recent tools (e.g., Vencopy and RAMP-mobility) begin to address these needs. The authors argue for transparent, flexible models that can generate relevant time series from empirical statistics, bridging gaps in availability, transparency, and adaptability for different scenarios and model requirements.
Methodology
Overview: emobpy generates, for each BEV, four sequential time series: (i) vehicle mobility, (ii) driving electricity consumption, (iii) grid availability, and (iv) grid electricity demand. Profiles have customizable temporal length and resolution (e.g., 15-minute steps for a year) and are created via Monte Carlo sampling to ensure variability, subject to feasibility rules.
1) Vehicle mobility time series: Inputs include distributions for driver types (e.g., commuters vs. non-commuters), number of trips per day (weekday/weekend specific), joint distributions of trip destination and departure time, and joint distribution of trip distance and duration. Trips are sampled per day, ensuring unique departure times, then ordered chronologically. Trip distances and durations are sampled from distance-duration distributions; if ranges are provided, a uniform sampling within ranges is applied, with durations interpolated accordingly. Constraints are enforced via rules (e.g., minimum/maximum time at home/work/other locations per day, at least one trip to home, workplace requirements for commuters). The last trip of a day returns home; average velocity caps ensure feasibility (e.g., ≤130 km/h).
2) Driving electricity consumption time series: Given the mobility time series, emobpy computes per-trip and per-time-step energy consumption including traction, auxiliaries, and HVAC loads, plus battery charge/discharge efficiencies. Inputs include BEV physical parameters (e.g., motor power, battery capacity, curb weight, drag coefficient, geometry, gear ratio), ambient temperature time series (hourly, selectable country/year), cabin insulation parameters (layered materials, areas, conductivities, thicknesses), passenger-related parameters (mass, sensible heat, average occupants), efficiencies (transmission, charging/discharging), and a standard driving cycle (WLTC default, EPA available). For each trip, a custom driving cycle is generated: the WLTC sub-class with average velocity closest to the trip’s average is scaled to the trip’s average velocity and replicated to match trip duration; second-by-second velocity and acceleration are then used to compute forces and power flows.
- Tractive effort combines aerodynamic drag, rolling resistance (temperature- and speed-dependent), grade, and acceleration/inertial components. Wheel power and motor output/input are computed using transmission and motor efficiency models (motor efficiency as a function of load fraction). Regenerative braking is modeled with braking power dependent on negative tractive effort and recoverable energy via a braking efficiency function dependent on acceleration and generator efficiency as a function of generator load.
- HVAC and accessories: A cabin thermal balance computes required heating/cooling to maintain target cabin temperatures, including inflow/outflow enthalpy, wall heat transfer through multi-layer zones (with convective coefficients), and passenger sensible heat. Electrical power demand for HVAC is obtained via device heat requirement divided by COP (heat pump), and auxiliary power is assumed constant. Total battery power per second aggregates motor input, generator output, auxiliaries, and HVAC; energy is integrated over trip duration.
3) Grid availability time series: Inputs include the driving consumption time series (locations and energy use), BEV battery size, charging efficiency, initial state of charge (SoC), and probability distributions of charging station availability and power ratings by location (e.g., home, workplace, public, none; including fast-charging availability for very long trips). For each parking interval (arrival to next departure), emobpy samples a charging station type and associated power rating according to location-specific probabilities. Feasibility is checked by simulating SoC over time assuming an immediate-full-capacity charging heuristic whenever connected (subject to battery limits). If SoC remains within 0–100% across the horizon, the sampled station allocation is accepted; otherwise, resampling occurs until feasible or a warning is raised.
4) Grid electricity demand time series: Using the grid availability and consumption time series, battery size, initial SoC, and charging efficiency, emobpy computes actual charging per time step based on a selected strategy: (a) immediate-full capacity: charge at available station’s full rating upon connection until full, no foresight; (b) immediate-balanced: charge upon connection with perfect foresight over the current parking spell to reach 100% SoC by next departure using a constant rate not exceeding station rating; (c) customized strategy (e.g., time-window and location constraints with balanced charging). SoC is updated each step considering charging and driving. If SoC would fall below zero under a customized strategy, the model may override constraints to maintain feasibility.
Data and implementation: The tool bundles BEV parameter presets (e.g., Tesla Model 3, VW ID.3, Hyundai Kona, Renault Zoe), WLTC/EPA cycles, cabin insulation defaults, and ERA5 hourly temperatures for 39 European countries (last 17 years). Users can override any defaults with custom inputs. The code is open-source (PyPI package emobpy) and example scripts/data are provided (Zenodo, GitLab).
Key Findings
Application to Germany (200 profiles; 4 BEV models: Hyundai Kona, Renault Zoe, Tesla Model 3, VW ID.3; 15-minute resolution):
- Driver composition: 62% commuters, 38% non-commuters; commuters split 78% full-time, 22% part-time.
Vehicle mobility:
- Vehicles are parked most of the time. Between 23:00–05:00, over 96% are at home on average.
- Workplace share peaks at ~32% around 11:00 on working days; higher home/public/leisure shares on weekends.
- Driving share is ≥3% between 06:00–22:00 daily, peaking ~9% between 15:00–17:00.
- Validation vs. German statistics: ~90% of trips are ≤50 km; trips >100 km account for ~25% of annual mileage but only ~3% of trips.
Driving electricity consumption:
- For a scaled fleet of 1 million BEV, hourly driving electricity consumption peaks between 15:00–17:00 on working days with an annual median ~450 MWh (0.45 kWh/vehicle) and an absolute daily maximum of ~1,250 MWh at 19:00 (1.25 kWh/vehicle).
- Average specific consumption across all trips: 22.2 kWh/100 km.
- Median specific consumption by model: Model 3 22.7; Kona 17.9; ID.3 15.7; Zoe 14.5 kWh/100 km.
- Seasonal variation: summer average 20.7 kWh/100 km; winter average 23.6 kWh/100 km.
Grid availability (1 million BEV):
- Charging station availability peaks at ~90% between 03:00–05:00 (≈80% home, ≈10% public); minimum ~70% around 11:00–12:00.
- Median grid-connected power rating: ~5.0–5.6 GW between 19:00–08:00 (dominated by 3.6 kW home charging), and >7 GW during daytime (workplace/public at 11/22 kW). Overall median grid availability lies roughly between 5–7 GW depending on hour.
Grid electricity demand (charging strategies, 1 million BEV):
- Immediate-full capacity: pronounced evening peaks (17:00–20:00), median hourly demand ~460 MW (0.46 kW/vehicle).
- Immediate-balanced: smoother profile; median hourly demand rarely exceeds ~400 MW (0.4 kW/vehicle).
- At home-balanced: smoother still; median hourly demand rarely exceeds ~300 MW (0.3 kW/vehicle); stronger weekday night clustering.
- At home night-time-balanced: distinct night peaks on working days; median ~420 MW (0.42 kW/vehicle) at night; weekend nights <300 MW median. Balanced strategies substantially smooth demand relative to immediate-full capacity.
Discussion
The study addresses the need for transparent, reproducible BEV time series by providing emobpy, which converts empirical mobility statistics and vehicle/charging assumptions into four core time series suitable for energy system analyses. The German case demonstrates that vehicles are parked most of the time and often connected to the grid, implying significant potential flexibility. Grid availability exhibits multi-gigawatt median connected capacity for a 1 million BEV fleet, dominated by low-power home charging at night and higher-power workplace/public charging during the day. Charging strategy strongly affects temporal load profiles: immediate-full capacity amplifies evening system peaks, while balanced strategies distribute charging more evenly and reduce peak demand, likely improving compatibility with power system operation and integration of renewables. The generated profiles can directly feed power system, environmental, and economic models that either endogenize charging (using mobility/consumption/availability) or require exogenous charging demand time series.
Conclusion
The paper presents emobpy, an open-source, Python-based tool that generates BEV mobility, driving electricity consumption, grid availability, and grid electricity demand time series from empirical statistics and customizable parameters. The German application (200 profiles across four popular BEV models) validates realism against national mobility data and quantifies fleet-level patterns, including high parking shares, multi-gigawatt grid availability for a 1 million BEV fleet, and the pronounced smoothing of load under balanced charging strategies. The tool’s flexibility and transparency enable diverse energy system studies on BEV integration, flexibility provision, emissions, and market impacts. Future research can expand behavioral realism, spatial detail, and scenario breadth, and integrate emobpy outputs with power system optimization and market models to assess system-wide implications of alternative charging infrastructures and incentives.
Limitations
- Mode scope: Focuses on vehicles only; does not model modal split or shifts between transport modes; assumes all trips by a person with vehicle access are done with the same vehicle.
- Behavioral dynamics: Uses past mobility behavior; may not reflect future patterns (e.g., car sharing, ride hailing, autonomous driving). Such structural changes may require code extensions and alternative input data.
- Spatial resolution: Locations are treated generically; no explicit spatial modeling beyond location types, which may limit analyses requiring fine spatial granularity.
- Driver segments: Excludes service-trip-intensive drivers (e.g., taxi drivers) due to modeling complexity.
- Feasibility sensitivity: Successful generation can be sensitive to assumed charging availability/power and battery capacities; low availability or low power may cause infeasible SoC in sampling that necessitates resampling.
- Computational burden: Large numbers of profiles increase computational cost for downstream energy models.
Related Publications
Explore these studies to deepen your understanding of the subject.