安装

本项目需要 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)协调各组件交互,执行优化计算并模拟整个能源系统的运行

这些类协同工作,实现对能源系统的详细模拟与优化。每个类均可调整特定参数来测试不同场景和策略。

自定义与扩展

每个类都支持便捷的自定义和扩展,可集成新功能或改进现有逻辑。例如可添加新方法实现更精确的光伏系统或电池行为建模。开发者可根据需求自由修改扩展系统。