Tích hợp đồng hồ năng lượng IAMMETER với Victron Venus OS
Tích hợp đồng hồ năng lượng IAMMETER với Victron Venus OS
Hệ điều hành Venus OS của Victron Energy là hệ điều hành trung tâm để giám sát và quản lý năng lượng trong các hệ thống Victron. Hệ điều hành này chạy trên các thiết bị GX như Cerbo GX và cũng có thể được cài đặt trên Raspberry Pi thông qua phiên bản mã nguồn mở. Venus OS kết nối biến tần, pin, bộ điều khiển sạc và các thành phần khác thành một hệ thống thông minh duy nhất. Nó cho phép giám sát theo thời gian thực, điều khiển năng lượng tự động và truy cập từ xa qua cổng Victron Remote Management (VRM). Với hỗ trợ MQTT và Modbus-TCP, hệ điều hành này dễ dàng tích hợp với các nền tảng bên thứ ba như Home Assistant, rất lý tưởng cho các hệ thống năng lượng mặt trời và ngoài lưới tiên tiến.
Về người đóng góp
Việc tích hợp IAMMETER với Venus OS của Victron Energy được phát triển bởi MiWyf.
Xin chân thành cảm ơn MiWyf đã đóng góp mã nguồn.
Nội dung dưới đây chủ yếu được lấy từ README của dự án tích hợp (https://github.com/lewei50/dbus-iammeter).
dbus-iammeter
Trang dự án: https://github.com/lewei50/dbus-iammeter
Tích hợp các đồng hồ thông minh IAMMETER WEM3080/WEM3080T/WEM3050T/WEM3046T vào Hệ điều hành Venus OS của Victron Energy.
Mục đích
Các script trong kho lưu trữ này cung cấp một cách dễ dàng để cài đặt, gỡ cài đặt và quản lý một dịch vụ kết nối các đồng hồ thông minh IAMMETER (WEM3080/WEM3080T/WEM3050T/WEM3046T) với Venus OS và các thiết bị GX của Victron. Ý tưởng này dựa trên công việc của @fabian-lauer & @vikt0rm.
Nguồn cảm hứng
Đây là dự án đầu tiên của tôi trên GitHub và với Victron Venus OS. Tôi lấy cảm hứng từ những dự án tuyệt vời sau:
- https://github.com/RalfZim/venus.dbus-fronius-smartmeter
- https://github.com/victronenergy/dbus-smappee
- https://github.com/Louisvdw/dbus-serialbattery
- https://github.com/victronenergy/venus/wiki/dbus#grid-and-genset-meter
- API cục bộ của IAMMETER
Cách hoạt động
Thiết lập của tôi
- IAMMETER WEM3080/WEM3080T/WEM3050T/WEM3046T
- Lắp đặt 1 pha/3 pha
- Kết nối với mạng Wi-Fi "A"
- IP: 192.168.1.6
- Venus OS trên Raspberry Pi 4 (4GB, phiên bản 1.1, Firmware v2.84)
- Không có thiết bị Victron nào khác được kết nối
- Kết nối với mạng Wi-Fi "A"
- IP: 192.168.1.10
Chi tiết / Quy trình
Như đã đề cập ở trên, script này lấy cảm hứng từ triển khai đồng hồ thông minh Fronius của @RalfZim. Dưới đây là những gì script thực hiện:
- Chạy dưới dạng một dịch vụ
- Kết nối với DBus trên Venus OS tại
com.victronenergy.grid.http_40hoặccom.victronenergy.pvinverter.http_40 - Sử dụng REST-API để gọi
/statustrên thiết bị IAMMETER và nhận dữ liệu JSON - Serial/MAC được trích xuất từ phản hồi và được dùng làm serial của thiết bị
- Các đường dẫn DBus được khởi tạo với giá trị mặc định (0) và một số cài đặt như tên
- Một vòng lặp bắt đầu, truy vấn dữ liệu từ IAMMETER mỗi 3000ms và cập nhật DBus tương ứng
Cài đặt & Cấu hình
Tải mã nguồn
Tải nhánh main và sao chép vào /data/dbus-iammeter. Sau đó chạy script 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
⚠️ Sau khi cài đặt, hãy kiểm tra cấu hình. Dịch vụ sẽ khởi động ngay lập tức, và thông tin kết nối sai (host, username, password) sẽ làm tràn tệp log.
Chỉnh sửa config.ini
Tệp cấu hình nằm tại /data/dbus-iammeter/config.ini. Hãy sửa các giá trị khi cần, đặc biệt là host, username và password trong phần "ONPREMISE".
| Section | Config Value | Giải thích |
|---|---|---|
| DEFAULT | AccessType | Giá trị cố định: 'OnPremise' |
| DEFAULT | SignOfLifeLog | Khoảng thời gian (phút) ghi log trạng thái dịch vụ với mức log INFO |
| DEFAULT | CustomName | Tên thiết bị (hữu ích khi chạy nhiều phiên bản script) |
| DEFAULT | DeviceInstance | Số instance của thiết bị, ví dụ: 40 |
| DEFAULT | Role | 'grid' hoặc 'pvinverter' để xác định vai trò của IAMMETER |
| DEFAULT | Position | 0 = đầu vào AC 1; 1 = đầu ra AC; 2 = đầu vào AC 2 |
| DEFAULT | LogLevel | Mức ghi log (xem: https://docs.python.org/3/library/logging.html#levels) |
| ONPREMISE | Host | IP hoặc hostname của giao diện web cục bộ trên IAMMETER |
| ONPREMISE | Username | Tên người dùng để truy cập qua HTTP (để trống nếu không cần) |
| ONPREMISE | Password | Mật khẩu để truy cập qua HTTP (để trống nếu không cần) |
| ONPREMISE | L1Position | Pha đầu vào của IAMMETER được dùng cho L1 (xem phần ánh xạ lại) |
Ánh xạ lại L1
Trong một hệ thống lưới 3 pha chỉ có một bộ Multi, Venus OS mong đợi L1 cấp nguồn cho Multi. Điều này không phải lúc nào cũng đúng. Ví dụ, nếu bộ Multi của bạn được cấp nguồn từ L3 (đầu vào C trên IAMMETER), thiết bị GX sẽ hiển thị AC Loads trên cả L1 và L3.
Bằng cách đặt L1Position, bạn có thể ánh xạ lại các pha để đảm bảo GX hiển thị dữ liệu chính xác:
- Nếu bộ Multi của bạn được kết nối với đầu vào
A, không cần thay đổi gì L1Position = 2hoán đổiBvàAL1Position = 3hoán đổiCvàA
Tài liệu tham khảo
- https://github.com/victronenergy/venus/wiki/dbus#grid
- https://github.com/victronenergy/venus/wiki/dbus#pv-inverters
- https://github.com/victronenergy/venus/wiki/dbus-api
- https://www.victronenergy.com/live/ccgx:root_access
- API cục bộ của IAMMETER
Về IAMMETER
IAMMETER là công ty tập trung vào các sản phẩm và dịch vụ quản lý năng lượng, cung cấp đồng hồ đo năng lượng thông minh, ứng dụng quản lý và nền tảng đám mây.
Mục tiêu của chúng tôi là giúp khách hàng quản lý, sử dụng và tiết kiệm năng lượng hiệu quả, giảm hóa đơn tiền điện thông qua giám sát và phân tích thông minh.
Giải pháp
Sản phẩm
- Tổng quan về đồng hồ năng lượng IAMMETER
- WEM3080T – Đồng hồ năng lượng Wi-Fi 3 pha/2 pha
- WEM3080 – Đồng hồ năng lượng Wi-Fi 1 pha
- WEM3050T – Đồng hồ năng lượng 3 pha
- WEM3046T – Đồng hồ năng lượng Wi-Fi 3 pha với đầu vào CT tiêu chuẩn 5A