安装
本项目需要 Python 3.10 或更新版本。目前尚未发布官方软件包或镜像。
以下章节描述如何在本地启动运行在 http://localhost:8503
的 EOS 服务器。
从源码运行
在虚拟环境中安装依赖:
WindowsLinux
python -m venv .venv .venv\Scripts\pip install -r requirements.txt
python -m venv .venv .venv/bin/pip install -r requirements.txt
启动 EOS fastapi 服务器:
WindowsLinux
.venv\Scripts\fastapi run src/akkudoktoreos/server/eos.py
.venv/bin/fastapi run src/akkudoktoreos/server/eos.py
Docker
WindowsLinux
docker compose up —build
docker compose up —build
配置
本项目使用 EOS.config.json
文件管理配置设置。
默认配置
提供了默认配置文件 default.config.json
,该文件包含所有必要的配置键及其默认值。
自定义配置
用户可通过设置环境变量 EOS_DIR
指定自定义配置目录:
• 若 EOS_DIR
指定目录已存在 EOS.config.json
文件,应用将使用该配置文件
• 若指定目录不存在 EOS.config.json
文件,系统会将 default.config.json
复制到该目录并重命名为 EOS.config.json
配置更新
若 EOS.config.json
中的配置键缺失或与 default.config.json
不一致,系统会自动更新使其与默认设置匹配,确保所有必要键值存在。
类与功能
本项目使用多个类来模拟和优化能源系统组件,各类对应系统的特定方面:
• Battery
: 模拟电池储能系统,包含容量、充电状态及实时充放电损耗
• PVForecast
: 提供光伏发电预测数据,基于天气数据和历史发电数据
• Load
: 建模家庭或企业的负载需求,能够预测未来的能源需求
• Heatpump
: 模拟热泵设备,包含不同工况下的能耗与效率
• Strompreis
: 提供电价信息,支持基于电价策略的能耗与发电优化
• EMS
: 能源管理系统(Energy Management System)协调各组件交互,执行优化计算并模拟整个能源系统的运行
这些类协同工作,实现对能源系统的详细模拟与优化。每个类均可调整特定参数来测试不同场景和策略。
自定义与扩展
每个类都支持便捷的自定义和扩展,可集成新功能或改进现有逻辑。例如可添加新方法实现更精确的光伏系统或电池行为建模。开发者可根据需求自由修改扩展系统。