抱歉,你的浏览器不支持 JavaScript!
登录

将 IAMMETER 电能表集成到 Victron Venus OS

将 IAMMETER 电能表集成到 Victron Venus OS

Victron Energy 的 Venus OS 是 Victron 系统中用于能源监控与管理的核心操作系统。它运行在 Cerbo GX 等 GX 设备上,也可以通过其开源版本安装在 Raspberry Pi 上。Venus OS 将逆变器、电池、充电控制器及其他组件连接到一个智能系统中。它支持实时监控、自动化能源控制,并能通过 Victron Remote Management(VRM)门户进行远程访问。凭借对 MQTT 和 Modbus-TCP 的支持,它可以轻松集成 Home Assistant 等第三方平台,非常适合高级太阳能和离网应用场景。

关于贡献者

IAMMETER 与 Victron Energy Venus OS 的集成由 MiWyf 开发。

特别感谢 MiWyf 贡献了此代码。

以下内容主要来自该集成项目的 README(https://github.com/lewei50/dbus-iammeter)。

dbus-iammeter

项目页面:https://github.com/lewei50/dbus-iammeter

将 IAMMETER WEM3080/WEM3080T/WEM3050T/WEM3046T 智能电能表集成到 Victron Energy 的 Venus OS 中。

目的

此仓库中的脚本提供了一种简便的方法来安装、卸载和管理一项服务,该服务将 IAMMETER 智能电能表(WEM3080/WEM3080T/WEM3050T/WEM3046T)连接到 Victron 的 Venus OS 和 GX 设备。其设计基于 @fabian-lauer 和 @vikt0rm 的工作成果。

灵感来源

这是我第一个 GitHub 项目,也是我第一次接触 Victron Venus OS。我从以下优秀项目中获得了灵感:

工作原理

我的设置

  • IAMMETER WEM3080/WEM3080T/WEM3050T/WEM3046T
    • 单相/三相安装
    • 连接到无线网络 "A"
    • IP:192.168.1.6
  • 树莓派 4(4GB,版本 1.1,固件 v2.84)上的 Venus OS
    • 未连接其他 Victron 设备
    • 连接到无线网络 "A"
    • IP:192.168.1.10

详情/流程

如上所述,该脚本受 @RalfZim 的 Fronius 智能电能表实现的启发。脚本的作用如下:

  • 作为服务运行
  • com.victronenergy.grid.http_40com.victronenergy.pvinverter.http_40 上连接 Venus OS 的 DBus
  • 使用 REST-API 调用 IAMMETER 设备的 /status 接口并获取 JSON 数据
  • 从响应中提取序列号/MAC 地址并用作设备序列号
  • DBus 路径用默认值(0)和一些设置(如名称)初始化
  • 启动一个循环,每 3000ms 从 IAMMETER 轮询数据并相应地更新 DBus
image-20250321144319164 image-20250321144340491 image-20250321144509359

安装与配置

获取代码

下载主分支并复制到 /data/dbus-iammeter,然后运行 install.sh 脚本:

wget https://github.com/lewei50/dbus-iammeter/archive/refs/heads/main.zip
unzip main.zip "dbus-iammeter-main/*" -d /data
mv /data/dbus-iammeter-main /data/dbus-iammeter
chmod a+x /data/dbus-iammeter/install.sh
/data/dbus-iammeter/install.sh
rm main.zip

⚠️ 安装后请检查配置。服务会立即启动,不正确的连接数据(host、username、password)会填满日志文件。

编辑 config.ini

配置文件位于 /data/dbus-iammeter/config.ini。根据需要修改其中的值,特别是 "ONPREMISE" 部分中的 hostusernamepassword

部分 配置值 说明
DEFAULT AccessType 固定值:'OnPremise'
DEFAULT SignOfLifeLog 记录服务状态(日志级别 INFO)的间隔(分钟)
DEFAULT CustomName 设备名称(多个脚本实例时很有用)
DEFAULT DeviceInstance 设备实例编号,例如 40
DEFAULT Role 'grid' 或 'pvinverter',用于定义 IAMMETER 的角色
DEFAULT Position 0 = 交流输入 1;1 = 交流输出;2 = 交流输入 2
DEFAULT LogLevel 日志级别(参见:https://docs.python.org/3/library/logging.html#levels)
ONPREMISE Host IAMMETER 本地 Web 界面的 IP 或主机名
ONPREMISE Username HTTP 访问的用户名(如不需要则留空)
ONPREMISE Password HTTP 访问的密码(如不需要则留空)
ONPREMISE L1Position IAMMETER 用于 L1 的输入相位(请参见重映射部分)

重映射 L1

在带有单个 Multi 的三相电网中,Venus OS 期望 L1 为 Multi 供电。但情况并非总是如此。例如,如果您的 Multi 由 L3(IAMMETER 上的输入 C)供电,GX 设备将在 L1 和 L3 上同时显示交流负载。

通过设置 L1Position,您可以重映射相位,确保 GX 显示正确的数据:

  • 如果您的 Multi 连接到输入 A,无需更改
  • L1Position = 2 交换 BA
  • L1Position = 3 交换 CA

文档参考

关于 IAMMETER

IAMMETER 是一家专注于能源管理产品与服务的公司,提供智能电能表、管理应用和云平台。

我们的目标是帮助客户有效管理、利用和节约能源,通过智能监控和分析来降低电费。

解决方案

产品

系统

顶部