energy_manager
A tool to optimize your house energy consumption!
Table of Contents
Overview
Energy consumption is a vital consideration in modern buildings.
The energy_manager package is a tool specifically designed for French consumers who currently use or plan to use EDF as their energy provider.
This tool provides users with a comprehensive overview of how they can optimize their energy consumption.
Technologies Used
Python (3.12.8)
Key Libraries:
pandas/numpy: Data handling and numerical computations.
seaborn/matplotlib: For visualizing results.
Installation and Setup
To install energy_manager, you can simply run the command:
pip install energy_manager
Usage
To gain a better understanding of how to use this package, please refer to the example.ipynb notebook located in the docs folder or consult this link.
Additionally, we provide information on the eligibility criteria, pricing options, time classifications, and data sources utilized in energy_manager.
Eligibility Criteria
To be eligible for the energy_manager, the following conditions must be met:
Building Age: Only buildings constructed in the year 2000 or later are considered.
Energy Performance: Buildings must have a DPE (Diagnostic de Performance Énergétique) rating between A and F.
Building Type: The program applies exclusively to building types such as
Appartement,Maison,Logement Collectif.
Pricing Options
The calculations within energy_manager are based on two EDF pricing options:
Option Base ;
Option Heures Creuses - Heures Pleines .
Time Classification
To classify which hours of the day are considered Heure Creuse or Heure Pleine, we refer to four proposals provided by ENEDIS to EDF clients.
Please note that the availability of these proposals may vary depending on your city or region.
Weather Data
The weather information used in our calculations is sourced from the Open Weather API.
Energy Cost Estimation
To estimate the energy consumption for heating or cooling a house, the user must provide four essential parameters.
Mandatory Parameters
city_nameThe name of the city where the house is located.temperature: The desired indoor temperature (in °C) the user wants to maintain.dpe_usage: A multiplication factor to correct his house’s DPE (Diagnostic de Performance Énergétique) based on season.openweathermap_api_key: This key will be used byenergy_mangerto get all required information on the user’s city coordinates and its weather.
To get a valid openweathermap_api_key, refer to this link : One Call API 3.0.
It’s a Subscription Pay As You Call which will only makes you pay when you get over a daily limit of 1000 API calls if you’re subscribing as an individual.
Optional Parameters
insulation_factor: This refers to the insulation properties of the building materials used in the house, which help reduce heat loss or gain. If not provided, it defaults to 1.
Package Capabilities
The package has access to:
Types, surface areas, and
dpe_valueof buildings present in the specifieduser_city_name.Current temperature (
temperature(h_x)) at a given hour (h_x) and corresponding energy price (energy_price(h_x)) for an entire day.
Based on the provided parameters, the package can offer a rough estimate of energy costs in euros per square meter for buildings in the same region as the user’s. These energy costs are estimated for a whole day based on one hour time step (12AM-1AM, 1AM-2AM, …, 10PM-11PM, 11PM-12AM).
The energy cost at a given time (h_x) (for example h_x = 1AM-2AM), for a type of building, is defined by:
Energy_Cost(h_x) = ( |user_temperature - temperature(h_x)| * user_dpe_usage * dpe_value * energy_price(h_x) ) / user_insulation_factor
Based on this formula, per square meter and for an insulation factor of 1, the user will use user_dpe_usage*dpe_value as energy to elevate/decrease of his house surface temperature of 1 Celsius degree for 1 hour long.
Future Improvements
Formulate a strategy to enhance the accuracy of current rough estimates of energy consumption.
Extend energy estimation methodologies to include other energy providers, facilitating a broader comparison of available energy options.
License
energy_manager is registered under the terms of the MIT license. For any further details, consult the LICENSE file.
Contributing
Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.
Credits
energy_manager was created with cookiecutter and py-pkgs-cookiecutter.