Giter VIP home page Giter VIP logo

elvis's Introduction

Elvis Logo

Electric Vehicle Charging Infrastructure Simulator (ELVIS)

This repository contains the source code for Elvis, a planning and management tool for electric vehicles charging infrastructure.

Installation

Install using pip

To install the package simply run

pip install py-elvis

This installs the package locally using pip and installs required packages, if not available.

Manually download and locally install the elvis package

This may be useful if you want to add changes to the package. Then download or checkout this repository and in the top level that contains the setup.py file, run

pip install -r requirements.txt
python setup.py install

This installs the package locally using pip and installs required packages, if not available.

Usage

Following, a simple example using one of the pre-defined scenario configurations

from elvis import ScenarioConfig, simulate, num_time_steps

import yaml
with open("elvis/data/config_builder/office.yaml", 'r') as f:
    yaml_str = yaml.safe_load(f)
config_from_yaml = ScenarioConfig.from_yaml(yaml_str)

results = simulate(config_from_yaml, start_date='2020-01-01 00:00:00', end_date='2020-12-31 23:00:00', resolution='01:00:00')
load_profile = results.aggregate_load_profile(8760)

import matplotlib.pyplot as plt
plt.plot(load_profile)

Applications in the wild and acknowledgements

ELVIS was developed at the DAI-Laboratory supported in part by Stromnetz Berlin, as well as the Federal Minister for Environment, Nature Conservation and Nuclear Safety (BMU) through the research project FlexNet4E-Mobility (funding reference 16EM3147-2) and the Federal Ministry for Economic Affairs and Energy (BMWi) throught the project Neue Berliner Luft (funding reference 01MZ18013E).

It's conceputally based on earlier similar simulations tools that have been peer-reviewed and published in:

  • Draz, Mahmoud, Marcus Voß, Daniel Freund, and Sahin Albayrak "The impact of electric vehicles on low voltage grids: A case study of berlin." 2018 Power Systems Computation Conference (PSCC). IEEE, 2018.
  • Draz, Mahmoud, and Sahin Albayrak. "A Power Demand Estimator for Electric Vehicle Charging Infrastructure." 2019 IEEE Milan PowerTech. IEEE, 2019.

An earlier tool has been presented at the poster sesssion at the 10th European openmod Workshop in Berlin (15.-17.1.2020).

ELVIS has been completely re-implemented as a software tool to be used with a web-based Graphical User Interface (contact izgh.hadachi[at]dai-labor.de if you want to get test user access) and to be integrated prototypically as a load in DIgSILENT PowerFactory for Stromnetz Berlin. It's conceptually related to the earlier simulation tools and was further conceputally inspired by similar tools such as:

ELVIS has been used to simulate data in the peer-reviewed paper:

  • Hadachi, Izgh, Marcus Voss, and Sahin Albayrak. "Sector-Coupled District Energy Management with Heating and Bi-Directional EV-Charging." 2021 IEEE Madrid PowerTech. IEEE, 2021.

This talk at the Berliner Energietage presents some example results of the tool.

elvis's People

Contributors

19mm97 avatar jonaszell97 avatar marcus-voss avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

elvis's Issues

Make ScenarioConfig handle file paths

It would be convinient if the file handling could be done by ScenarioConfig. Maybe overwrite from_yaml or add a new function from_yaml_file that handles the file path.

Excellent tool but is there some documentation ?

what defines a charging events ? like a car driving in to charge, it charges for some time and then leaves, is that a charging event ? just making sure I got that correct

what does num_charging_events represent, are they counted over the entire simulation horizon or per day ?
Like if num_charging_events is set to 1000, 1000 charging events are generated every hour every day or every month or the entire simulation period ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.