Xin lỗi, trình duyệt của bạn không hỗ trợ JavaScript!
Đăng nhập

Tích hợp đồng hồ điện năng Modbus TCP: Thanh ghi và Kiểm thử

Tích hợp đồng hồ điện năng Modbus TCP để giám sát cục bộ

Modbus TCP cho phép một ứng dụng cục bộ đọc trực tiếp các phép đo điện từ đồng hồ điện năng Wi-Fi IAMMETER.

Phù hợp cho:

  • hệ thống PLC và SCADA;
  • Home Assistant và Node-RED;
  • Hệ thống quản lý năng lượng (EMS) cục bộ;
  • Hệ thống quản lý tòa nhà (BMS);
  • giám sát và tự động hóa theo chu kỳ một giây;
  • các ứng dụng phải hoạt động mà không cần IAMMETER-Cloud.
Đồng hồ điện năng IAMMETER
        │
        │ Wi-Fi / LAN
        │ Modbus TCP
        ▼
Home Assistant, Node-RED, PLC, SCADA hoặc EMS tùy chỉnh

Máy khách (client) khởi tạo từng yêu cầu. Đồng hồ trả về giá trị thanh ghi cho điện áp, dòng điện, công suất tác dụng, điện năng nhập, điện năng xuất, hệ số công suất, tần số và các phép đo được hỗ trợ khác.

Modbus TCP là một giao diện thăm dò cục bộ. Nếu đồng hồ cần công bố dữ liệu tới một broker, hãy dùng MQTT. Nếu đồng hồ cần tải dữ liệu lên máy chủ của khách hàng, xem Nhận dữ liệu IAMMETER trên máy chủ của riêng bạn.

1. Vì sao nên dùng Modbus TCP?

So với việc thăm dò qua cloud hoặc để đồng hồ tải dữ liệu định kỳ, Modbus TCP mang lại:

  • truy cập trực tiếp qua mạng cục bộ;
  • đường truyền dữ liệu không phụ thuộc vào IAMMETER-Cloud;
  • giao diện chuẩn dựa trên thanh ghi;
  • thăm dò mỗi giây cho các ứng dụng được hỗ trợ;
  • giá trị công suất tác dụng có dấu cho giám sát năng lượng hai chiều;
  • tương thích với các công cụ tự động hóa và công nghiệp phổ biến.

Các ứng dụng điển hình gồm:

  • điều khiển một phụ tải dựa trên công suất lưới theo thời gian thực;
  • đọc cục bộ sản lượng điện mặt trời, lượng trao đổi với lưới hoặc phụ tải của mạch;
  • thêm đồng hồ điện năng vào Home Assistant;
  • thu thập các phép đo trong Node-RED;
  • tích hợp dữ liệu điện vào PLC, SCADA, EMS hoặc BMS.

2. Các đồng hồ IAMMETER được hỗ trợ

Các model đồng hồ điện năng IAMMETER hiện tại đều hỗ trợ chế độ Home Assistant và tích hợp mở hiện có, bao gồm Modbus TCP. Model WEM3162 đã ngừng sản xuất không được đề cập trong hướng dẫn này.

Khác biệt chính giữa các model là số lượng và mục đích của các kênh đo:

  • đồng hồ một kênh cung cấp khối thanh ghi Pha A;
  • đồng hồ hai kênh hoặc tách pha dùng các khối kênh tương ứng;
  • đồng hồ ba pha cung cấp các khối Pha A, B và C;
  • một số đồng hồ được hỗ trợ còn cung cấp các giá trị tổng và các phép đo công suất phản kháng tùy chọn.

Luôn xác thực phản hồi thanh ghi theo đúng model và firmware được dùng trong dự án.

WEM3046T và WEM3046TE

WEM3046T và WEM3046TE đo đầu ra thứ cấp 5 A của một biến dòng bên ngoài.

Vì vậy, các giá trị dòng điện, công suất và điện năng ở phía sơ cấp phải dùng đúng tỷ số CT bên ngoài tương ứng. Yêu cầu quy đổi này xuất phát từ thiết kế đầu vào CT 5 A của đồng hồ; đây không phải là hành vi riêng của Modbus TCP hay của nền tảng.

Hãy ghi lại và kiểm thử việc xử lý tỷ số CT ở mọi nơi tích hợp các model này.

3. Thông số kết nối

Ví dụ Modbus Poll chính thức của IAMMETER sử dụng:

Thông số Giá trị ví dụ
Kết nối Modbus TCP/IP
Host Địa chỉ IP cục bộ của đồng hồ
Cổng TCP 502
Device / Unit ID 1
Mã chức năng 03 — Read Holding Registers
Thời gian chờ phản hồi 1000 ms trong ví dụ

Cấu hình kết nối Modbus TCP trong Modbus Poll

Dùng địa chỉ IP LAN của đồng hồ làm host. Việc đặt trước (reserve) địa chỉ này trong router có thể ngăn tích hợp bị hỏng sau khi địa chỉ DHCP thay đổi.

Các giá trị trên là thông số trong ví dụ chính thức. Hãy xác nhận firmware và cấu hình thực tế tại site trước khi cố định chúng trong phần mềm vận hành.

4. Kiểm thử nhanh với Modbus Poll

Để xác nhận kết nối trước khi cấu hình một nền tảng hoàn chỉnh:

  1. kết nối máy tính và đồng hồ IAMMETER vào cùng một LAN;
  2. tìm địa chỉ IP cục bộ của đồng hồ;
  3. tạo kết nối Modbus TCP/IP tới cổng 502;
  4. đặt Device ID thành 1;
  5. chọn Function Code 03;
  6. yêu cầu các holding register bắt đầu từ địa chỉ 0;
  7. so sánh các giá trị thô trả về với quy tắc quy đổi bên dưới.

Các holding register của IAMMETER hiển thị trong Modbus Poll

Ảnh chụp màn hình dùng tốc độ quét hiển thị 500 ms để kiểm thử. Khi dùng bình thường, tài liệu IAMMETER khuyến nghị thăm dò mỗi giây, thay vì coi thiết lập nhanh nhất của client là chu kỳ vận hành được hỗ trợ.

Nếu kết nối thất bại, hãy kiểm tra:

  • đồng hồ và client có nằm trong cùng một mạng truy cập được hay không;
  • địa chỉ IP của đồng hồ;
  • cổng TCP 502 và các quy tắc firewall;
  • Device ID và mã chức năng;
  • liệu một ứng dụng khác đã chiếm quy trình thăm dò dự kiến hay chưa;
  • phiên bản firmware của đồng hồ.

5. Kiểu dữ liệu thanh ghi và hệ số quy đổi

IAMMETER dùng các thanh ghi holding 16 bit.

Giá trị 16 bit

Điện áp, dòng điện, hệ số công suất và tần số dùng một thanh ghi:

Phép đo Kiểu thô Quy đổi
Điện áp 16 bit không dấu V = raw / 100
Dòng điện 16 bit không dấu A = raw / 100
Hệ số công suất 16 bit không dấu PF = raw / 1000
Tần số 16 bit không dấu Hz = raw / 100

Giá trị 32 bit

Công suất tác dụng, điện năng tích lũy và các giá trị công suất phản kháng dùng hai thanh ghi liên tiếp.

Ví dụ Modbus Poll chính thức hiển thị word 16 bit bậc cao trước. Ghép các word như sau:

raw32 = (register[n] << 16) | register[n + 1]

Diễn giải công suất tác dụng và công suất phản kháng là giá trị 32 bit có dấu. Diễn giải các bộ đếm xung điện năng tích lũy là giá trị 32 bit không dấu.

Phép đo Kiểu thô Quy đổi
Công suất tác dụng 32 bit có dấu W = raw32
Điện năng nhập/thuận 32 bit không dấu kWh = raw32 / 800
Điện năng xuất/nghịch 32 bit không dấu kWh = raw32 / 800
Công suất phản kháng 32 bit có dấu var = raw32
Điện năng phản kháng cảm/dung 32 bit không dấu kvarh = raw32 / 1000

Công suất tác dụng có dấu cho phép một tích hợp phân biệt hai chiều công suất ngược nhau. Hãy xác nhận quy ước dấu theo hướng kẹp CT và cách đấu dây của ứng dụng trong quá trình chạy thử.

6. Bản đồ thanh ghi Modbus chính

Các địa chỉ thanh ghi bên dưới là offset thập phân. Client nên dùng Function Code 03.

Pha A

Địa chỉ Độ dài Phép đo Quy đổi
0 1 Điện áp Không dấu, /100 V
1 1 Dòng điện Không dấu, /100 A
2 2 Công suất tác dụng Có dấu, W
4 2 Điện năng nhập/thuận Không dấu, /800 kWh
6 2 Điện năng xuất/nghịch Không dấu, /800 kWh
8 1 Hệ số công suất Không dấu, /1000
9 1 Mã định danh model trong bản đồ cũ Không dùng làm nguồn duy nhất để nhận dạng model hiện tại

Pha B

Địa chỉ Độ dài Phép đo Quy đổi
10 1 Điện áp Không dấu, /100 V
11 1 Dòng điện Không dấu, /100 A
12 2 Công suất tác dụng Có dấu, W
14 2 Điện năng nhập/thuận Không dấu, /800 kWh
16 2 Điện năng xuất/nghịch Không dấu, /800 kWh
18 1 Hệ số công suất Không dấu, /1000
19 1 Dự phòng Không dùng

Pha C

Địa chỉ Độ dài Phép đo Quy đổi
20 1 Điện áp Không dấu, /100 V
21 1 Dòng điện Không dấu, /100 A
22 2 Công suất tác dụng Có dấu, W
24 2 Điện năng nhập/thuận Không dấu, /800 kWh
26 2 Điện năng xuất/nghịch Không dấu, /800 kWh
28 1 Hệ số công suất Không dấu, /1000
29 1 Dự phòng Không dùng

Tần số và các giá trị tổng

Địa chỉ Độ dài Phép đo Quy đổi
30 1 Tần số Không dấu, /100 Hz
31 1 Dự phòng Không dùng
32 2 Tổng công suất tác dụng Có dấu, W
34 2 Tổng điện năng nhập/thuận Không dấu, /800 kWh
36 2 Tổng điện năng xuất/nghịch Không dấu, /800 kWh

Các thanh ghi tổng có ý nghĩa nhất với đồng hồ nhiều kênh. Với tích hợp một kênh, hãy dùng các giá trị Pha A tương ứng và xác thực mọi giá trị tổng trả về.

7. Các thanh ghi công suất phản kháng tùy chọn

Các thanh ghi công suất phản kháng chỉ khả dụng khi đồng hồ và firmware tương ứng hỗ trợ và bật phép đo công suất phản kháng.

Địa chỉ Độ dài Phép đo Quy đổi
38 2 Công suất phản kháng Pha A Có dấu, var
40 2 Điện năng phản kháng cảm Pha A Không dấu, /1000 kvarh
42 2 Điện năng phản kháng dung Pha A Không dấu, /1000 kvarh
44 2 Công suất phản kháng Pha B Có dấu, var
46 2 Điện năng phản kháng cảm Pha B Không dấu, /1000 kvarh
48 2 Điện năng phản kháng dung Pha B Không dấu, /1000 kvarh
50 2 Công suất phản kháng Pha C Có dấu, var
52 2 Điện năng phản kháng cảm Pha C Không dấu, /1000 kvarh
54 2 Điện năng phản kháng dung Pha C Không dấu, /1000 kvarh

Không nên mặc định các giá trị này đang hoạt động trên mọi hệ thống lắp đặt. Hãy xác nhận model, firmware và thiết lập đo công suất phản kháng.

8. Các thanh ghi thông tin thiết bị

Địa chỉ Độ dài Mô tả
56 8 Số sê-ri thiết bị
64 1 Thời gian chạy tính bằng giây

Hãy coi số sê-ri và các định danh thiết bị khác là dữ liệu vận hành. Tránh công bố các giá trị chưa được che trong ảnh chụp màn hình, log hoặc ví dụ công khai.

9. Các ví dụ tích hợp

Home Assistant

Modbus TCP là lựa chọn Home Assistant của IAMMETER dành cho người dùng cần đọc dữ liệu cục bộ nhanh và tự động hóa.

Hãy dùng hướng dẫn tích hợp IAMMETER với Home Assistant làm điểm vào chính cho HA. Tài liệu này tách phần cấu hình phía đồng hồ khỏi phần cấu hình Home Assistant và liên kết tới các phương thức triển khai Modbus hiện hành.

Video:

Node-RED

Node-RED có thể thăm dò các holding register, chuẩn hóa giá trị thô và chuyển các phép đo tới luồng tự động hóa, cơ sở dữ liệu hoặc dashboard.

PLC, SCADA, EMS và BMS

Với một tích hợp công nghiệp hoặc thương mại:

  • ghi lại phiên bản bản đồ thanh ghi đã dùng;
  • áp dụng đúng quy đổi có dấu/không dấu;
  • xác thực thứ tự byte và word;
  • xác nhận hướng kẹp CT và tỷ số CT;
  • định nghĩa hành vi timeout và thử lại;
  • giám sát lần thăm dò thành công gần nhất;
  • tránh các tốc độ thăm dò không được hỗ trợ;
  • kiểm thử gián đoạn mạng và khôi phục.

Phần mềm tùy chỉnh

Một client Modbus TCP tùy chỉnh nên tách riêng:

  1. logic kết nối và thử lại;
  2. đọc thanh ghi;
  3. giải mã 16 bit và 32 bit;
  4. ánh xạ model đồng hồ và kênh;
  5. chuẩn hóa tỷ số CT khi cần;
  6. lưu trữ và logic ứng dụng.

10. Modbus TCP hay một giao diện IAMMETER khác?

Yêu cầu Giao diện khuyến nghị
Thăm dò cục bộ mỗi giây Modbus TCP
Truy xuất JSON đơn giản qua LAN API HTTP cục bộ
Công bố dữ liệu cho nhiều bên nhận MQTT
Đồng hồ tải dữ liệu lên web service của khách hàng HTTP/HTTPS
Đồng hồ tải dữ liệu lên máy chủ socket tùy chỉnh TCP/TLS
So sánh các nền tảng có sẵn Hướng dẫn tích hợp mã nguồn mở

Hướng dẫn liên quan:

11. Firmware

Modbus TCP không còn là một bản nâng cấp thử nghiệm chỉ được mô tả bởi quy trình phát hành năm 2022 ban đầu. Với một hệ thống lắp đặt hiện tại, hãy dùng firmware mới nhất có sẵn cho model đồng hồ:

Hãy ghi lại phiên bản firmware đã dùng để xác thực bản đồ thanh ghi và hành vi thăm dò.

12. Thông tin phát hành trước đây

Bài viết này ban đầu được công bố khi tính năng Modbus TCP được giới thiệu thông qua một bản nâng cấp firmware.

Các hướng dẫn cũ có nhắc tới firmware 75.68 như một điều kiện tiên quyết để nâng cấp và yêu cầu người dùng gửi yêu cầu nâng cấp qua hệ thống phản hồi. Quy trình đó chỉ được giữ lại ở đây như bối cảnh lịch sử và không nên dùng cho một hệ thống lắp đặt mới.

Tài nguyên phát hành ban đầu:

Cập nhật lần cuối: 16 tháng 7, 2026

Lên đầu