3 điểm bởi GN⁺ 2024-05-06 | 1 bình luận | Chia sẻ qua WhatsApp
  • Kết nối Tasmota trên ổ cắm thông minh athom.tech EU style plug V3 với Prometheus và Grafana sẵn có trên máy chủ gia đình để trực quan hóa mức tiêu thụ điện dài hạn của thiết bị gia dụng và thiết bị tính toán
  • Kiến trúc chạy tasmota-power-exporter cho từng ổ cắm và để Prometheus scrape mỗi 1 giây; trong Grafana cần đặt min step là 1 giây để xem biểu đồ dày đặc
  • Kết quả đo trong khoảng 4 tháng cho thấy bình nước nóng điện dùng trung bình 4.51kWh/ngày, toàn bộ bàn làm việc tại nhà trung bình 0.95kWh/ngày, còn Zimaboard khi dùng thông thường tiêu thụ khoảng 7W, thấp hơn modem/router của ISP
  • Biểu đồ điện áp cũng cho thấy các khung giờ công suất đỉnh và hoạt động của thiết bị công suất cao; khi bình nước nóng, ấm điện, bếp điện và lò vi sóng bật lên, điện áp trên mọi ổ cắm đều giảm nhẹ
  • Hữu ích cho đo lường dài hạn, nhưng một số ổ cắm gửi thống kê không đúng lúc hoặc biến mất khỏi mạng nên cần khởi động lại nguồn; việc tự động điều khiển theo giá điện vẫn là ứng viên cho thử nghiệm tiếp theo

Theo dõi mức sử dụng điện dài hạn bằng ổ cắm thông minh

  • Mục tiêu là theo dõi trực quan trong thời gian dài mức tiêu thụ điện của các thiết bị như máy chủ gia đình, router, workstation, bình nước nóng điện
  • Đồng hồ đo điện kỹ thuật số đơn giản từng dùng trước đây đủ để xem giá trị tức thời, nhưng có hạn chế khi muốn hiểu thiết bị tiêu thụ điện như thế nào trong thời gian dài
  • Sản phẩm sử dụng là biến thể EU style plug V3 của athom.tech; hàng giao trong EU mất 9 ngày, bao gồm cả dịp Giáng sinh
  • Ổ cắm được cài sẵn Tasmota, và sau khi kết nối Wi‑Fi theo hướng dẫn đi kèm thì có thể quản lý bằng trình duyệt
  • Có thể cập nhật firmware lên bản mới nhất từ web GUI chỉ với vài cú nhấp

Cấu trúc thu thập bằng Prometheus và Grafana

  • Dữ liệu công tơ điện được gom vào instance Prometheus vốn đã có trên máy chủ gia đình
  • Prometheus được dùng để đọc định kỳ metric từ nhiều nguồn, lưu xuống đĩa, rồi truy vấn và xử lý về sau
  • Trên máy chủ chạy một tasmota-power-exporter cho mỗi ổ cắm
    • Prometheus scrape từng exporter 1 lần mỗi giây
    • Cũng có thể để chính ổ cắm xuất metric, nhưng không chọn cách tự build firmware Tasmota
  • Phần trực quan hóa tái sử dụng instance Grafana sẵn có
    • Muốn lấy được các điểm dữ liệu chi tiết nhất trên biểu đồ thì cần đổi min step thành 1 giây

Mức sử dụng điện quan sát trong khoảng 4 tháng

  • Bình nước nóng điện

    • Bình nước nóng điện 30L là thiết bị tiêu thụ nhiều điện nhất trong các đối tượng đo
    • Đây là mức bình đủ cho một hai lần tắm nhanh hoặc rửa nhiều chén đĩa
    • Các số đo như sau
      • Mức tiêu thụ điện điển hình: 4.51kWh/ngày
      • Thấp nhất quan sát được: 0.56kWh/ngày, thường xảy ra khi không có ai ở nhà
      • Cao nhất quan sát được: 11.1kWh/ngày, xảy ra vào những ngày giặt giũ và tắm nhiều
  • Máy chủ gia đình và thiết bị mạng

    • Workload của máy chủ gia đình chạy trên Zimaboard, được chọn một phần vì mức tiêu thụ điện thấp là yếu tố quan trọng
    • Mức sử dụng điện của Zimaboard như sau
      • Khi nhàn rỗi: khoảng 2W
      • Dùng thông thường với mọi dịch vụ đang chạy: khoảng 7W
      • Mức tiêu thụ điện tối đa: khoảng 15W
    • Hộp modem/router do ISP cung cấp luôn dùng 12~14W bất kể ở chế độ router hay bridge, nên tiêu thụ nhiều điện hơn Zimaboard
    • Khi bổ sung workload nhạy cảm với độ trễ, đã có lúc máy chủ gia đình được chuyển lại sang ASRock Deskmini X300
    • Mức tiêu thụ điện nhàn rỗi của Deskmini khá tệ so với Zimaboard, ở mức 15~20W
    • Deskmini có vẻ không để lộ các trạng thái tiết kiệm điện CPU thấp hơn C3, trong khi Zimaboard để lộ C-state đến C10
    • Không tìm được cách để lộ C-state thấp hơn trong thiết lập UEFI hay trong Linux kernel
    • Sau khi thêm panel mức tiêu thụ điện của máy chủ vào giao diện Grafana của Prometheus node exporter, mức tăng hoạt động CPU cũng hiện rõ trong biểu đồ tiêu thụ điện

Biến động điện áp và mô hình điện quanh bàn làm việc

  • Biến động điện áp

    • Ổ cắm Tasmota cũng báo cáo giá trị điện áp hiện tại
    • Biểu đồ điện áp có các mẫu trông như tính mùa vụ, và trong những khung giờ tiêu thụ điện đỉnh thông thường thì điện áp nhìn chung giảm xuống
    • Dạng này có thể là ứng viên cho thử nghiệm phát hiện bất thường dựa trên Prometheus; có thể tham khảo bài viết về phát hiện bất thường với Prometheus của GitLab
    • Sụt áp cũng xuất hiện khi các thiết bị dùng nhiều điện như bình nước nóng, ấm điện, bếp điện, lò vi sóng hoạt động
    • Bình nước nóng làm điện áp trên mọi ổ cắm giảm nhẹ
    • Khi nấu ăn bằng bếp điện, chu kỳ bật/tắt cũng hiện ra trong số đọc điện áp của mọi ổ cắm
  • Workstation tại nhà

    • Một ổ cắm được nối với màn hình, dock USB-C, đèn lightbar của màn hình và các thiết bị sạc trên bàn làm việc tại nhà để đo cùng lúc
    • Mức tiêu thụ điện thay đổi lớn tùy theo thời gian làm việc tại nhà hay có đang sạc nhiều thiết bị hay không
    • Khi làm việc trên máy tính, mức tiêu thụ điện điển hình của toàn bộ cấu hình là 45~60W, còn đỉnh ở khoảng 90~110W
    • Mức sử dụng hằng ngày đo được như sau
      • Mức tiêu thụ điện điển hình: 0.95kWh/ngày
      • Thấp nhất quan sát được: 0.07kWh/ngày
      • Cao nhất quan sát được: 1.52kWh/ngày
  • Mô hình sạc

    • Ổ cắm thông minh cũng hữu ích để quan sát mô hình sạc của nhiều thiết bị
    • Laptop hay pin dự phòng ban đầu sạc nhanh, sau đó tốc độ giảm dần khi pin đầy lên, và từ một thời điểm nào đó xuất hiện đoạn trông giống sạc nhỏ giọt cho đến khi đầy
    • Pin xe đạp điện là ngoại lệ: điện năng tiêu thụ tăng dần từng chút trong lúc sạc rồi giảm nhanh hơn ở cuối quá trình
    • Xe đạp điện tiêu thụ 0.5kWh cho quãng đường 60km với preset Turbo, và chi phí mỗi km được tính là nửa cent

Vấn đề ổn định và thử nghiệm tiếp theo

  • Độ ổn định của ổ cắm thông minh nhìn chung khá ổn, nhưng khá thường xuyên có trường hợp một số ổ cắm không báo thống kê đúng lúc
    • Nguyên nhân có thể là vấn đề ở Wi‑Fi access point
    • Hai ổ cắm đã biến mất hoàn toàn khỏi mạng và không quay lại, nên phải khởi động lại nguồn hoàn toàn vài lần
  • Ổ cắm có thể bật tắt thiết bị qua nhiều API, bao gồm HTTP
  • Trong tương lai có thể thử dùng Home Assistant hoặc script đơn giản để bật tắt một số thiết bị theo giá điện hiện tại
  • Trong phạm vi tìm hiểu có tồn tại tích hợp nordpool cho Home Assistant
  • Toàn bộ cấu hình cho phép đo điện đáng tin cậy cho nhiều thiết bị tính toán khác nhau, giúp đánh giá hiệu quả năng lượng của các thiết bị sẽ dùng về sau mà không cần phỏng đoán

1 bình luận

 
GN⁺ 2024-05-06
Các ý kiến trên Hacker News
  • Tôi đã mua một cầu dao điện Zigbee và đấu để toàn bộ điện trong nhà đi qua nó, rồi cũng làm một màn hình e-ink hiển thị mức sử dụng điện
    https://www.stavros.io/posts/making-the-timeframe/

    • Ở Hà Lan, mọi công tơ thông minh do đơn vị vận hành lưới điện lắp đặt đều phải hỗ trợ chuẩn P1, nên khách hàng có thể đọc mức dòng điện hiện tại, điện năng tiêu thụ tích lũy, v.v. qua một giao diện chuẩn. Thường thì đồng hồ gas cũng được kết nối cùng
      Gắn một dongle giá rẻ vào là có thể xem thống kê trong ứng dụng; chẳng hạn tôi đang dùng cái này: https://www.homewizard.com/nl/shop/wi-fi-p1-meter/
      Công tơ này cũng cung cấp API mạng cục bộ. Tôi đã viết một driver nhỏ cho SmartThings Hub để có thể xem thống kê và biểu đồ ngay trong ứng dụng SmartThings, và tôi đang dùng hub SmartThings cho các thiết bị Zigbee/Z-Wave: https://github.com/danieldk/homewizard-energy
    • Có vẻ liên kết AliExpress cho màn hình bị hỏng. Chuyện thường thấy
      Đối tượng tích hợp tự nhiên có lẽ là Home Assistant. Tôi không rõ ngoài việc đọc giá trị từ cầu dao Earu bằng Zigbee2MQTT và thiết lập entity thì hiện có tích hợp nào dùng trực tiếp được với Home Assistant hay chưa. Dù vậy, mô hình gắn công tơ vào hub tự động hóa, rồi hub đẩy hình ảnh gồm dữ liệu công tơ và thông tin khác ra màn hình trông khá hay
    • Tôi thích người này vì thấy thú vị. Tôi cũng đã mua gói đăng ký $12/năm cho dự án IMGZ; nói trước để khỏi bị nghĩ là quảng cáo tinh vi, tôi không liên quan gì cả
      https://imgz.org/
      Khi thanh toán bằng BTC, nút “open in wallet” cần được sửa. Liên kết đang bị hỏng
      Ngoài ra thì hoạt động tốt. Ví dụ: https://imgz.org/iAB4tgaJ/
    • Tôi tò mò không biết đang dùng loại cầu dao điện nào
  • Vài năm trước tôi bị cuốn vào mảng này và đã mua một thiết bị không mấy nổi tiếng tên là Rainforest Automation Eagle: https://www.rainforestautomation.com/rfa-z114-eagle-200-2/
    Đây là một thiết bị Linux đơn giản; đăng ký với công ty điện lực là nó đọc được công tơ thông minh, và nó cung cấp XML API nên tôi đang bridge sang Prometheus để dùng: https://github.com/kklipsch/reagle
    Tôi cũng bridge feed giá của công ty điện lực ComEd sang Prometheus: https://github.com/kklipsch/comed_exporter
    Nhờ hai thứ này, tôi có thể vẽ biểu đồ khá tốt về mức sử dụng toàn nhà và thông tin giá trong Prometheus, rồi Grafana

    • Tôi tò mò liệu bạn có thể chia sẻ cách kết hợp giá theo giờ với các số đo điện năng không
  • Tôi còn đi xa hơn một bước và lắp Emporia Vue 2 trong tủ điện. Nó có 16 biến dòng và cả 3 pha chính
    Thiết bị dựa trên ESP32, và có một dự án ESPHome rất tuyệt để flash nhằm báo cáo hoàn toàn cục bộ. Thêm Home Assistant và VictoriaMetrics vào đó, tôi có thể xem hoạt động của toàn bộ ngôi nhà bằng Grafana. Bước tiếp theo là dùng dữ liệu này để điều khiển điều khiển công suất không xuất lưới cho một hệ thống điện mặt trời OpenDTU nhỏ. Chúng ta thật sự đang sống trong một thời kỳ tuyệt vời

    • Kết hợp VictoriaMetrics với Grafana rất tuyệt. Chỉ có điều sẽ tốt hơn nếu có thể nhập mô tả metric để điền phần mô tả trong trình khám phá metric của Grafana. Theo truyền thống, đó là vai trò của trường help trong metadata metric của Prometheus
      VictoriaMetrics/Grafana đang thay thế hệ thống lưu trữ lịch sử công nghiệp của chúng tôi, dù tất nhiên sản phẩm đó không phải loại cao cấp nhất. OSI PI có lẽ vẫn tốt hơn
    • Tôi tò mò liệu có thêm lựa chọn phần cứng mã nguồn mở tương tự nào không. Nếu có Ethernet và ESPHome thì càng tốt
      Các bản sao tôi tìm được có giá gần như tương đương phần cứng “gốc”
      ATM90E32AS trên JLCPCB có giá khoảng $1 mỗi kênh, nên nếu thuê luôn lắp ráp SMT thì có vẻ có thể làm khá rẻ. Nhu cầu của tôi là khoảng 60 mạch
    • Thiết bị athom.tech mà tác giả bài gốc cài Tasmota cũng có thể đặt bản flash sẵn ESPHome với cùng mức giá và hoạt động với Home Assistant. Tôi đã dùng khoảng một năm cho tải một ổ cắm đơn 2500W và khá hài lòng
      Với tải toàn nhà, tôi khuyên nên tích hợp với công nghệ công tơ thông minh được dùng ở từng quốc gia
      Với tải cỡ trung, chẳng hạn cầu dao 32A trong tủ phân phối của hộ gia đình, tôi vẫn chưa tìm được giải pháp vừa đáng tin cậy vừa hiệu quả về chi phí
    • Khoảng 6 năm trước tôi đã mua một bộ giám sát CURB Energy, và tôi tò mò không biết có thể flash firmware mã nguồn mở cho nó không. Nó chỉ có tích hợp đám mây nên tôi muốn nối vào Home Assistant
    • Tôi tò mò bạn có thể giải thích thêm hệ thống điện mặt trời OpenDTU là gì không
  • Tôi đã dùng thiết bị IoTaWatt có thể lắp trong bảng điện. Đây là một giải pháp tuyệt vời để giám sát theo từng mạch, và có tích hợp trực tiếp với InfluxDB nên có thể dùng Grafana
    Giám sát theo từng ổ cắm cũng rất hay để xác định thiết bị cụ thể trên một mạch cụ thể
    Video thiết lập ngắn: https://www.youtube.com/watch?v=-tcbJCvuJG8

    • Gần đây tôi mới phát hiện ra kênh này và nội dung rất hay. Có lẽ tôi đã xem video về homelab khoảng 10 lần
      Tôi có 3 căn cho thuê nghỉ dưỡng trong một tòa nhà cũ nên đang bổ sung tính năng thông minh và giám sát; một trong số đó là kiosk Raspberry Pi dựa trên một trong các video
    • Hôm nay một người bạn DM cho tôi liên kết tour homelab trên YouTube nên tôi biết đến kênh này. Mối quan tâm của chúng tôi khá giống nhau
      Tôi cũng đang dùng IOTAWATT và rất thích nó. Phàn nàn duy nhất là tôi ước có thể ghi lại nhiều kênh hơn trên cùng một thiết bị, chẳng hạn khoảng 30 kênh
  • Tôi đang lấy các chỉ số sử dụng điện từ Tapo P110 rồi đẩy lên Grafana Cloud bằng https://github.com/richardjennings/tapmon. Tuy nhiên, như những người khác đã nói, dùng Wi-Fi cho ổ cắm thông minh vẫn có những chỗ chưa mượt

    • Đồng ý. Tôi đã thay vài công tắc tường bằng công tắc thông minh Wi-Fi Leviton, và có lẽ sẽ không bao giờ quay lại Wi-Fi nữa. Không thể hoàn toàn tin cậy được
      Ổ cắm thông minh Meross thì khá hơn một chút nhưng vẫn thỉnh thoảng mất kết nối. Sau bản cập nhật thì có cải thiện phần nào
  • Tôi đang thử đẩy Grafana theo hướng điều khiển IoT/SCADA. Nó là một công cụ tuyệt vời để trực quan hóa nguồn dữ liệu, và tôi muốn nó cũng trở thành công cụ điều khiển data sink
    Cá nhân tôi không thích lắm việc phải khuyến nghị Home Assistant cho mục đích đó
    Tôi làm việc tại Grafana Labs

    • Nếu Grafana hỗ trợ trường nhập số và nút bấm thì có thể dễ dàng thay thế những thứ như Wonderware InTouch
      Các hệ thống SCADA truyền thống có khả năng vẽ đồ thị quá tệ, nên đây là một mảng hoàn toàn có thể bị đảo lộn
    • Điều này sẽ thật sự rất tốt. Chúng tôi đang dùng dashboard Grafana cho thử nghiệm nhiệt chân không, và mọi người cứ liên tục muốn có các chức năng SCADA đơn giản
    • Tôi tò mò liệu bạn có thể giải thích thêm data sink mà bạn nói ở đây áp dụng vào ý tưởng đó như thế nào không
  • Nửa đùa nửa thật, tôi tự hỏi liệu chính mức tiêu thụ của Grafana có bù mất lợi ích thu được từ việc giám sát hay không. Nếu phải nêu một phần mềm thường xuyên dùng nhiều tài nguyên hơn rất nhiều so với mức có vẻ hợp lý, thì đó là Grafana

    • Nếu xuất sang Splunk hoặc Datadog thì bạn có thể đốt nhiều tiền hơn rất nhiều so với mức có vẻ hợp lý
    • Giải pháp đơn giản là kéo dây nối từ nhà hàng xóm sang và chạy thiết bị giám sát bằng điện của họ
  • Tôi mua một chiếc ESP32 giá rẻ nối với cảm biến ánh sáng, rồi gắn cảm biến đó vào công tơ điện. Công tơ nhấp nháy 1000 lần cho mỗi 1 kWh, nên tôi đọc tín hiệu đó
    Tôi tải dữ liệu lên Google Sheets và để sheet vẽ biểu đồ, hoạt động rất tốt
    Tôi cũng đặt thêm một ESP32 khác gắn cảm biến PIR ở nhà một người họ hàng lớn tuổi, gửi dữ liệu chuyển động sang một sheet Google Sheets khác để giám sát xem có mức độ chuyển động như thế nào
    Nếu hỏi tôi có dự đoán Google sẽ ngừng dịch vụ này bất cứ lúc nào không thì có, nhưng hiện tại nó vẫn chạy. Có thể ghi và đọc dữ liệu từ ESP32 vào Google Sheets bằng JSON; không trực quan nhưng làm được và miễn phí

    • Tôi thích cách tiếp cận đơn giản này. Công tơ cũ trước đây chỉ có đĩa quay, nên tôi đã dồn hết sức để nối một cảm biến phát hiện vạch đen ở mép đĩa vào Arduino
      Nó chỉ vừa đủ bộ nhớ để chạy một dịch vụ HTTP cho phép đưa giá trị đó vào iobridge để giám sát từ xa
    • Tôi đang dùng thiết bị Frient Zigbee làm việc tương tự, và dữ liệu được gửi vào Home Assistant
  • Tôi ngạc nhiên vì trong phần bình luận ở đây không có nhiều người nhắc đến bộ giám sát Shelly hơn. Chúng rất tốt cho giám sát điện toàn nhà, tức là ở đầu vào và theo mạch, khả năng tích hợp cũng khá mở và tích hợp trực tiếp với Home Assistant
    Trong nhà, dùng các aptomat thương mại “ngu” rồi gắn thêm bộ giám sát phụ có vẻ hợp lý hơn là ghép chặt chức năng vào một thiết bị duy nhất

    • Tôi đang dùng khoảng một tá relay Shelly và hài lòng. Nhưng về đo điện thì đó không phải là một giải pháp xuất sắc
      Kẹp 3 pha rất đắt, và không có lựa chọn gắn 8 hay 16 cảm biến như Emporia Vue. Shelly đáng được nhắc tới, nhưng không phải cho đo điện chi tiết
  • Cũng có điểm là bạn có thể làm cả tự động hóa. Tự động hóa gần đây tôi tạo là giảm âm lượng chuông cửa nếu máy tạo tiếng ồn trắng cho em bé đang bật

    • Tôi tò mò liệu bạn có thể giải thích thêm Prometheus hoặc Grafana giúp ích cho tự động hóa như thế nào không. Tôi không biết là một trong hai thứ đó có cung cấp chức năng như vậy