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

Hướng dẫn thiết lập đồng hồ đo điện năng Modbus TCP với Home Assistant

Tích hợp đồng hồ đo điện năng Modbus TCP với Home Assistant

Modbus TCP là một trong những cách nhanh nhất để kết nối đồng hồ đo điện năng với Home Assistant. Nó hoạt động qua mạng cục bộ, không phụ thuộc vào kết nối internet và phù hợp cho giám sát công suất thời gian thực, tự động hóa theo lượng điện mặt trời dư, điều khiển phụ tải và Home Assistant Energy Dashboard.

Tất cả đồng hồ đo điện năng IAMMETER hiện hành đều hỗ trợ Modbus TCP. Bạn có thể tích hợp chúng với Home Assistant theo hai cách:

  1. Tích hợp IAMMETER HACS Modbus — cấu hình trên giao diện người dùng, các thực thể được tạo tự động và khoảng thời gian quét có thể cấu hình.
  2. Tích hợp Modbus có sẵn của Home Assistant — cấu hình YAML với quyền kiểm soát trực tiếp các thanh ghi và cảm biến.

Hướng dẫn này giải thích sự khác biệt và giúp bạn cấu hình đúng phương pháp phù hợp.

HACS Modbus hay Modbus có sẵn của Home Assistant?

Cả hai phương pháp đều đọc cùng dữ liệu Modbus TCP cục bộ từ đồng hồ. Khác biệt chính là cách cấu hình các thực thể trong Home Assistant.

Tính năng IAMMETER HACS Modbus Modbus có sẵn của Home Assistant
Cấu hình phía HA Giao diện người dùng YAML
Cấu hình thanh ghi Do tích hợp tạo sẵn Định nghĩa thủ công
Khoảng thời gian quét Có thể cấu hình; mặc định 3 giây Có thể cấu hình cho từng cảm biến
Siêu dữ liệu Energy Dashboard Được bao gồm cho các thực thể năng lượng được hỗ trợ Phải cấu hình trong YAML
Phát hiện tự động/hỗ trợ phát hiện Thiết lập có hỗ trợ SSDP Không
Hoạt động cục bộ Có Có
Có thể tiếp tục dùng IAMMETER Cloud Có Có
Phù hợp nhất với Hầu hết người dùng Home Assistant Người dùng nâng cao và thanh ghi tùy chỉnh

Với hầu hết người dùng, tích hợp HACS Modbus là lựa chọn đơn giản hơn. Hãy dùng tích hợp Modbus có sẵn của Home Assistant khi bạn cần danh sách thanh ghi tùy chỉnh, quy ước đặt tên thực thể, quy tắc tỷ lệ hoặc khoảng thời gian truy vấn riêng cho từng cảm biến.

Nếu bạn không cần cập nhật nhanh, hãy so sánh các phương án thay thế HTTP và MQTT trong tổng quan về tích hợp đồng hồ đo điện năng với Home Assistant.

Trước khi bắt đầu

Bạn cần:

  • một đồng hồ đo điện năng IAMMETER kết nối cùng mạng LAN với Home Assistant;
  • địa chỉ IP cục bộ của đồng hồ;
  • cổng TCP 502 được mở giữa Home Assistant và đồng hồ;
  • phiên bản firmware đồng hồ gần đây;
  • HACS đã cài đặt nếu bạn chọn tích hợp IAMMETER HACS.

Bạn nên đặt trước (reserve) địa chỉ IP của đồng hồ trong router. Địa chỉ DHCP thay đổi là nguyên nhân phổ biến khiến một tích hợp Modbus đang hoạt động tốt bỗng trở nên không khả dụng về sau.

Phương pháp 1: Cấu hình IAMMETER Modbus qua HACS

Tích hợp IAMMETER HACS Modbus được thiết kế cho người dùng muốn có dữ liệu cục bộ nhanh mà không phải định nghĩa thủ công từng thanh ghi trong YAML.

Bước 1: Cài đặt tích hợp

  1. Mở HACS trong Home Assistant.
  2. Tìm IamMeter Modbus.
  3. Cài đặt bản phát hành mới nhất.
  4. Khởi động lại Home Assistant nếu được yêu cầu.

Thông tin dự án và bản phát hành:

Hãy dùng bản phát hành mới nhất hiện có. Cài đặt khoảng thời gian quét được tích hợp đã cập nhật hỗ trợ và được truyền tới DataUpdateCoordinator.

Bước 2: Thêm đồng hồ trong Home Assistant

  1. Vào Cài đặt → Thiết bị và dịch vụ.
  2. Chọn Thêm tích hợp.
  3. Tìm IamMeter Modbus.
  4. Nhập địa chỉ IP của đồng hồ và cổng Modbus TCP.
  5. Chọn loại đồng hồ hoặc cấu hình pha phù hợp.
  6. Đặt khoảng thời gian quét, hoặc giữ giá trị mặc định là 3 giây.
  7. Gửi biểu mẫu và xác nhận rằng thiết bị cùng các thực thể đã được tạo.

Tích hợp sẽ tạo số lượng thực thể khác nhau cho đồng hồ một pha, hai kênh và ba pha. Danh sách thực thể ngắn hơn không có nghĩa là model một pha bị hạn chế hỗ trợ trên Home Assistant.

Bước 3: Kiểm tra các thực thể

Mở thiết bị IAMMETER trong Cài đặt → Thiết bị và dịch vụ. Tùy theo model, các thực thể khả dụng có thể bao gồm:

  • điện áp;
  • dòng điện;
  • công suất tác dụng;
  • hệ số công suất;
  • điện năng tiêu thụ (nhập từ lưới);
  • điện năng phát lên lưới (xuất);
  • công suất phản kháng hoặc điện năng phản kháng khi đồng hồ và bộ thanh ghi tương ứng cung cấp.

Các thực thể điện năng nhập và xuất dùng đơn vị kWh và bao gồm siêu dữ liệu năng lượng mà Home Assistant yêu cầu cho Energy Dashboard.

Bước 4: Chọn khoảng thời gian quét phù hợp

Khoảng thời gian quét mặc định là 3 giây. Đây là điểm khởi đầu thực tế cho bảng điều khiển trực tiếp và tự động hóa dựa trên công suất.

Các điểm khởi đầu được đề xuất:

Ứng dụng Khoảng thời gian quét gợi ý
Điều khiển relay hoặc điện mặt trời dư thời gian thực 1–5 giây
Bảng điều khiển công suất trực tiếp 3–10 giây
Giám sát điện năng thông thường 10–30 giây

Đặt 1 giây là một yêu cầu truy vấn, không phải bảo đảm rằng mọi bảng điều khiển Home Assistant sẽ hiển thị làm mới một lần mỗi giây. Độ trễ mạng, số lượng thanh ghi, tải của recorder và hành vi làm mới của giao diện cũng ảnh hưởng đến kết quả.

Tránh truy vấn quá dồn dập không cần thiết. Với hầu hết tự động hóa, cập nhật ổn định 2–5 giây hữu ích hơn khoảng thời gian ngắn nhất có thể.

Phương pháp 2: Dùng tích hợp Modbus có sẵn của Home Assistant

Home Assistant bao gồm một tích hợp Modbus tiêu chuẩn. Phương pháp này hoàn toàn cục bộ và không cần HACS, nhưng kết nối và các cảm biến phải được định nghĩa trong YAML.

Ví dụ sau đọc điện áp và công suất tác dụng từ đồng hồ một pha:

modbus:
  - name: iammeter_hub
    type: tcp
    host: 192.168.1.6
    port: 502
    sensors:
      - name: IAMMETER Voltage
        slave: 1
        address: 0
        input_type: holding
        data_type: uint16
        scale: 0.01
        precision: 1
        unit_of_measurement: V
        device_class: voltage
        state_class: measurement
        scan_interval: 5

      - name: IAMMETER Active Power
        slave: 1
        address: 2
        input_type: holding
        data_type: int32
        unit_of_measurement: W
        device_class: power
        state_class: measurement
        scan_interval: 5

Thay 192.168.1.6 bằng địa chỉ IP thực tế của đồng hồ. Kiểm tra bản đồ thanh ghi tương ứng trước khi thêm nhiều cảm biến hơn:

Các thanh ghi Modbus IAMMETER thường dùng

Các địa chỉ sau minh họa những khối pha tiêu chuẩn mà các đồng hồ IAMMETER thông dụng sử dụng. Luôn dùng tài liệu thanh ghi hiện hành làm tham chiếu chính thức.

Đại lượng Pha A / một pha Pha B Pha C Kiểu dữ liệu
Điện áp 0 10 20 uint16
Dòng điện 1 11 21 uint16
Công suất tác dụng 2 12 22 int32
Điện năng nhập 4 14 24 uint32
Điện năng xuất 6 16 26 uint32

Hãy dùng đúng tỷ lệ (scale), độ chính xác (precision) và thứ tự word được ghi trong tài liệu cho từng thanh ghi. Không suy diễn tỷ lệ của điện năng từ ví dụ về điện áp.

Sau khi sửa YAML:

  1. chạy kiểm tra cấu hình của Home Assistant;
  2. khởi động lại Home Assistant;
  3. mở Công cụ dành cho nhà phát triển → Trạng thái;
  4. xác nhận rằng các thực thể mới có giá trị và đơn vị hợp lý.

Thêm điện năng nhập và xuất vào Energy Dashboard

Home Assistant Energy Dashboard cần các thực thể điện năng lũy tích, không phải công suất tức thời.

Với cảm biến điện năng Modbus được cấu hình thủ công, hãy thêm siêu dữ liệu phù hợp:

unit_of_measurement: kWh
device_class: energy
state_class: total_increasing

Sau đó vào Cài đặt → Bảng điều khiển → Năng lượng và chọn thực thể điện năng nhập làm mức tiêu thụ từ lưới, còn thực thể điện năng xuất làm điện phát lên lưới.

Không chọn thực thể công suất tác dụng đo bằng watt cho trường điện năng của Energy Dashboard. Công suất thể hiện tốc độ hiện tại; điện năng nhập/xuất tính bằng kWh ghi lại năng lượng lũy tích.

Các model IAMMETER được hỗ trợ

Tất cả đồng hồ đo điện năng IAMMETER hiện hành đều hỗ trợ cả HACS Modbus và tích hợp Modbus có sẵn của Home Assistant.

Model Cấu hình đồng hồ Lưu ý với Home Assistant
WEM3080 Một pha Bộ thực thể một pha
WEM2067 Hai kênh cho ứng dụng một pha Hai kênh đo
WEM3080T Ba pha Nhóm thực thể ba pha
WEM3050T Ba pha hoặc hai pha (split phase) Ba kênh đo
WEM3080TD Ba pha/ba dây và cách đấu dây đặc biệt Diễn giải thực thể theo chế độ đấu dây
WEM3046T / WEM3046TE Đầu vào CT 5 A ngoài Áp dụng đúng tỷ số CT ngoài

WEM3046T và WEM3046TE đo đầu ra thứ cấp 5 A của một biến dòng bên ngoài. Để có dòng điện, công suất và điện năng thực tế ở phía sơ cấp, phải áp dụng đúng tỷ số CT. Đây là đặc điểm của hệ thống đo CT 5 A, không phải hạn chế về khả năng tương thích với Home Assistant hay Modbus.

Modbus và IAMMETER Cloud có thể hoạt động đồng thời không?

Có. Home Assistant đọc Modbus TCP cục bộ trong khi đồng hồ vẫn có thể tiếp tục gửi dữ liệu lên IAMMETER Cloud. Bạn không cần chuyển đồng hồ sang chế độ gửi dữ liệu qua MQTT để dùng Modbus.

Điều này mang lại hai góc nhìn bổ trợ cho nhau:

  • dữ liệu cục bộ nhanh và tự động hóa trong Home Assistant;
  • báo cáo dài hạn, phân tích chi phí điện, phân tích điện mặt trời và truy cập từ xa trên IAMMETER Cloud.

Tránh nhiều client Modbus tần số cao cùng lúc

Hãy dùng một client truy vấn Modbus TCP đang hoạt động cho mỗi đồng hồ như mô hình triển khai an toàn. Không cấu hình Home Assistant, Node-RED, PLC và một bộ ghi log khác cùng truy vấn độc lập một đồng hồ với tần số cao.

Nếu nhiều hệ thống cần cùng các số đo trực tiếp, hãy để một hệ thống đọc Modbus rồi phân phối lại dữ liệu, hoặc dùng kiến trúc MQTT trong đó nhiều bên cùng đăng ký một broker.

Khắc phục sự cố

Home Assistant không thể kết nối tới cổng 502

  • Xác nhận Home Assistant và đồng hồ nằm trong cùng một mạng có thể truy cập được.
  • Kiểm tra địa chỉ IP của đồng hồ và đặt trước nó trong router.
  • Kiểm tra xem cổng TCP 502 có bị firewall hoặc quy tắc VLAN chặn không.
  • Bảo đảm không có client Modbus nào khác đang giữ hoặc liên tục mở lại kết nối.

Các thực thể không khả dụng hoặc giá trị không thay đổi

  • Xác nhận loại đồng hồ/pha đã chọn trong tích hợp HACS.
  • Với YAML, kiểm tra slave ID, địa chỉ thanh ghi, kiểu dữ liệu, tỷ lệ và thứ tự word.
  • Tạm thời tăng khoảng thời gian quét để loại trừ khả năng truy vấn quá dồn dập.
  • Khởi động lại tích hợp sau khi đổi địa chỉ IP của đồng hồ.

Giá trị cao hoặc thấp bất thường

  • Kiểm tra tỷ lệ thanh ghi và kiểu dữ liệu.
  • Với WEM3046T/WEM3046TE, kiểm tra tỷ số CT ngoài.
  • Xác nhận thực thể tương ứng đúng pha hoặc kênh đo mong đợi.

Các thực thể điện năng không xuất hiện trong Energy Dashboard

  • Dùng điện năng nhập/xuất lũy tích tính bằng kWh.
  • Xác nhận device_class: energy.
  • Xác nhận state_class: total_increasing.
  • Không dùng thực thể công suất tính bằng watt.

Xây dựng tự động hóa với dữ liệu công suất thời gian thực

Khi các thực thể Modbus đã hoạt động, Home Assistant có thể dùng công suất tác dụng hoặc công suất phát lên lưới để điều khiển các thiết bị khác. Ví dụ bao gồm:

  • điều khiển relay từ dữ liệu công suất Modbus thời gian thực;
  • sạc xe điện khi lượng điện mặt trời phát lên lưới vượt ngưỡng;
  • đun nước nóng bằng lượng điện mặt trời dư có sẵn;
  • thông báo cho người dùng khi nhu cầu điện của hộ gia đình vượt giới hạn;
  • giảm phụ tải có thể điều khiển trước khi phải mua điện ở khung giờ cao điểm đắt đỏ.

Hãy giữ hướng dẫn tích hợp tập trung vào việc thiết lập dữ liệu đáng tin cậy trước. Chỉ thêm logic điều khiển sau khi đã kiểm tra quy ước dấu, đơn vị, khoảng thời gian cập nhật và hành vi khi đồng hồ trở nên không khả dụng.

Các hướng dẫn Home Assistant liên quan

Lên đầu