3P by GN⁺ | ★ favorite | 댓글 1개
  • athom.tech EU style plug V3 스마트 플러그의 Tasmota와 기존 홈서버의 Prometheus·Grafana를 연결해 가전과 컴퓨팅 장비의 장기 전력 사용량을 시각화함
  • 플러그별 tasmota-power-exporter를 실행하고 Prometheus가 1초마다 스크랩하는 구조이며, Grafana는 min step을 1초로 맞춰야 촘촘한 그래프를 볼 수 있음
  • 약 4개월 측정 결과 전기 온수기는 평균 4.51kWh/일, 홈오피스 책상 전체는 평균 0.95kWh/일을 사용했고, Zimaboard는 일반 사용 시 약 7W로 ISP 모뎀/라우터보다 낮았음
  • 전압 그래프에서도 피크 전력 시간대와 고전력 기기 동작이 드러났으며, 온수기·전기주전자·전기레인지·전자레인지가 켜질 때 모든 플러그의 전압이 약간 떨어짐
  • 장기 측정에는 유용하지만 일부 플러그는 통계를 제때 보내지 않거나 네트워크에서 사라져 전원 재시작이 필요했고, 전기요금 기반 자동 제어는 다음 실험 후보로 남아 있음

스마트 플러그로 장기 전력 사용량 보기

  • 목표는 홈서버, 라우터, 워크스테이션, 전기 온수기 같은 장비의 전력 소비량을 장기간 시각적으로 추적하는 것임
  • 이전에 쓰던 단순 디지털 전력계는 순간 측정값 확인에는 충분했지만, 기기가 긴 시간 동안 전력을 어떻게 쓰는지 파악하기에는 한계가 있었음
  • 사용한 제품은 athom.tech의 EU style plug V3 변형이며, EU 배송은 크리스마스를 포함해 9일 걸림
  • 플러그에는 Tasmota가 미리 설치되어 있고, 동봉 안내에 따라 Wi-Fi에 연결한 뒤 브라우저에서 관리할 수 있음
  • 펌웨어 업데이트는 웹 GUI에서 몇 번의 클릭으로 최신 버전까지 올릴 수 있음

Prometheus와 Grafana 수집 구조

  • 전력계 데이터는 홈서버에 이미 있던 Prometheus 인스턴스로 모음
  • Prometheus는 여러 출처의 메트릭을 주기적으로 읽고 디스크에 저장한 뒤, 나중에 질의하고 조작하는 도구로 쓰임
  • 서버에는 tasmota-power-exporter를 플러그당 하나씩 실행함
    • Prometheus는 각 exporter를 초당 1회 스크랩함
    • 플러그 자체가 메트릭을 내보내게 만들 수도 있지만, 직접 Tasmota 펌웨어를 빌드하는 방식은 선택하지 않음
  • 시각화에는 기존 Grafana 인스턴스를 재사용함
    • 그래프에서 가장 자세한 데이터 포인트를 얻으려면 min step 값을 1초로 바꿔야 함

약 4개월간 관찰한 전력 사용량

  • 전기 온수기

    • 30L 전기 온수기가 측정 대상 중 가장 많은 전력을 사용함
    • 빠른 샤워 한두 번이나 많은 양의 설거지에 충분한 수준의 온수기 기준임
    • 측정값은 다음과 같음
      • 일반적인 전력 사용량: 4.51kWh/일
      • 관측 최저: 0.56kWh/일, 보통 집에 아무도 없을 때 발생
      • 관측 최고: 11.1kWh/일, 세탁과 샤워가 많았던 날 발생
  • 홈서버와 네트워크 장비

    • 홈서버 워크로드는 Zimaboard에서 실행하며, 낮은 전력 소비가 중요한 선택 이유였음
    • Zimaboard의 전력 사용량은 다음과 같음
      • 유휴 상태: 약 2W
      • 모든 서비스를 실행하는 일반 사용: 약 7W
      • 최대 전력 소비: 약 15W
    • ISP 제공 모뎀/라우터 박스는 라우터 모드나 브리지 모드와 관계없이 항상 12~14W를 사용해 Zimaboard보다 전력을 더 많이 씀
    • 지연 시간에 민감한 워크로드를 추가하면서 한때 홈서버를 ASRock Deskmini X300으로 되돌림
    • Deskmini의 유휴 전력 소비는 Zimaboard와 비교해 나쁜 편이며 15~20W 수준임
    • Deskmini는 CPU 저전력 상태를 C3보다 낮게 노출하지 않는 것으로 보였고, Zimaboard는 C10까지 C-state를 노출함
    • UEFI 설정이나 Linux 커널에서 더 낮은 C-state를 노출하는 방법은 찾지 못함
    • Prometheus node exporter Grafana 뷰에 서버 전력 소비 패널을 추가하자, CPU 활동 증가가 전력 소비 그래프에서도 뚜렷하게 보임

전압 변화와 책상 주변 전력 패턴

  • 전압 변화

    • Tasmota 플러그는 현재 전압 값도 보고함
    • 전압 그래프에는 계절성처럼 보이는 패턴이 있었고, 일반적인 피크 전력 소비 시간에는 전체적으로 전압이 내려감
    • 이런 형태는 Prometheus 기반 이상 탐지 실험 후보가 될 수 있으며, GitLab의 Prometheus를 이용한 이상 탐지 글을 참고할 수 있음
    • 온수기, 전기주전자, 전기레인지, 전자레인지처럼 전력을 많이 쓰는 기기가 동작할 때도 전압 하락이 발생함
    • 온수기는 모든 플러그의 전압을 약간 떨어뜨림
    • 전기레인지로 요리할 때는 켜짐·꺼짐 주기가 모든 플러그의 전압 읽기에서도 보임
  • 홈오피스 워크스테이션

    • 하나의 플러그는 홈오피스 책상에 연결된 모니터, USB-C 독, 모니터 라이트바, 책상 위에서 충전되는 기기들을 함께 측정함
    • 전력 소비는 재택근무 시간이나 여러 기기 충전 여부에 따라 크게 달라짐
    • 컴퓨터 작업 중 전체 구성의 일반적인 전력 소비는 45~60W이고, 피크는 90~110W 근처임
    • 측정된 일일 사용량은 다음과 같음
      • 일반적인 전력 사용량: 0.95kWh/일
      • 관측 최저: 0.07kWh/일
      • 관측 최고: 1.52kWh/일
  • 충전 패턴

    • 스마트 플러그는 여러 기기의 충전 패턴을 관찰하는 데도 유용함
    • 노트북이나 보조배터리는 처음에는 빠르게 충전되다가 배터리가 찰수록 속도가 떨어지고, 어느 시점부터 완충까지 세류 충전처럼 보이는 구간이 나타남
    • 전기자전거 배터리는 예외적으로 충전 중 전력 소비가 조금씩 증가하다가 충전 끝부분에서 더 빠르게 떨어짐
    • 전기자전거는 Turbo 프리셋 기준 60km 주행거리0.5kWh를 소비했으며, km당 비용은 반 센트로 계산됨

안정성 문제와 다음 실험

  • 스마트 플러그의 안정성은 대체로 괜찮았지만, 일부 플러그가 통계를 제때 보고하지 않는 경우가 자주 있었음
    • 원인은 Wi-Fi 액세스 포인트 문제일 수도 있음
    • 두 개 플러그는 네트워크에서 완전히 사라져 돌아오지 않아 몇 차례 완전 전원 재시작이 필요했음
  • 플러그는 HTTP를 포함한 여러 API로 기기를 켜고 끌 수 있음
  • 향후 Home Assistant나 간단한 스크립트를 사용해 현재 전기요금에 따라 특정 기기를 켜고 끄는 방식을 시도할 수 있음
  • 조사한 범위에서는 Home Assistant용 nordpool 통합이 존재함
  • 전체 구성은 다양한 컴퓨팅 장비의 신뢰할 만한 전력 측정을 가능하게 해, 앞으로 쓰는 기기의 전력 효율을 추측 없이 판단하는 데 도움됨

댓글과 토론

Hacker News 의견들
  • Zigbee 전력 차단기를 사서 집 전체 전기가 그걸 거치게 연결했고, 전력 사용량을 보여주는 전자잉크 디스플레이도 만들었음
    https://www.stavros.io/posts/making-the-timeframe/

    • 네덜란드에서는 전력망 사업자가 설치한 모든 스마트 미터가 P1 표준을 지원해야 해서, 현재 전류 사용량·누적 전력 사용량 등을 고객이 표준 인터페이스로 읽을 수 있음. 보통 가스 계량기도 같이 연결되어 있음
      저렴한 동글을 붙이면 앱에서 통계를 볼 수 있고, 예를 들면 이걸 쓰고 있음: https://www.homewizard.com/nl/shop/wi-fi-p1-meter/
      이 미터는 로컬 네트워크 API도 제공함. SmartThings Hub용 작은 드라이버를 만들어서 SmartThings 앱에서도 통계와 그래프를 볼 수 있게 했고, Zigbee/Z-Wave 장치용으로 SmartThings 허브를 쓰고 있음: https://github.com/danieldk/homewizard-energy
    • 디스플레이용 AliExpress 링크가 깨진 것 같음. 흔히 그렇듯이
      자연스러운 통합 대상은 Home Assistant일 듯함. Earu 차단기가 Zigbee2MQTT로 값을 읽고 엔티티를 설정하는 것 말고 Home Assistant에 바로 쓸 수 있는 통합이 아직 있는지는 모르겠음. 그래도 계량기를 자동화 허브에 붙이고, 허브가 계량기와 다른 정보의 이미지를 디스플레이로 밀어주는 패턴은 좋아 보임
    • 이 사람이 재미있어서 마음에 듦. 프로젝트 IMGZ에 연 $12 구독도 샀고, 정교한 광고라고 생각할까 봐 말하지만 아무 관련 없음
      https://imgz.org/
      BTC로 결제할 때 “open in wallet” 버튼은 고쳐야 함. 링크가 망가져 있음
      그 외에는 잘 동작함. 예: https://imgz.org/iAB4tgaJ/
    • 어떤 전력 차단기를 쓰는지 궁금함
  • 몇 년 전에 이쪽에 꽂혀서 잘 알려지지 않은 Rainforest Automation Eagle이라는 장치를 샀음: https://www.rainforestautomation.com/rfa-z114-eagle-200-2/
    전력회사에 등록하면 스마트 미터를 읽어오는 단순한 Linux 장치이고, XML API를 제공해서 Prometheus로 브리지해 쓰고 있음: https://github.com/kklipsch/reagle
    전력회사 ComEd의 가격 피드도 Prometheus로 브리지함: https://github.com/kklipsch/comed_exporter
    이 둘 덕분에 집 전체 사용량과 가격 정보를 Prometheus, 그리고 Grafana에서 꽤 잘 그래프로 볼 수 있음

    • 시간별 요금과 전력량 측정값을 어떻게 결합하는지 공유해줄 수 있는지 궁금함
  • 한 단계 더 나아가 배전반에 Emporia Vue 2를 설치했음. 16개 변류기와 3상 메인까지 붙어 있음
    ESP32 기반이고, 로컬 전용 보고를 위해 플래시할 수 있는 훌륭한 ESPHome 프로젝트가 있음. 여기에 Home Assistant와 VictoriaMetrics를 더하니 Grafana로 집 전체 동작을 볼 수 있게 됨. 다음은 이 데이터를 이용해 작은 OpenDTU 태양광 설비를 제어하는 무수출 전력 제어임. 정말 멋진 시대에 살고 있음

    • VictoriaMetrics와 Grafana 조합은 훌륭함. 다만 Grafana 지표 탐색기의 설명을 채우기 위해 지표 설명을 입력할 수 있으면 좋겠음. 전통적으로 Prometheus 지표 메타데이터의 help 필드가 하던 역할임
      VictoriaMetrics/Grafana가 우리 산업용 이력 저장 시스템을 대체하고 있는데, 물론 그 제품이 최고급은 아님. OSI PI가 더 낫긴 할 것 같음
    • 이와 비슷한 오픈 소스 하드웨어 대안이 더 있는지 궁금함. 가능하면 Ethernet이 있고 ESPHome이면 더 좋겠음
      찾을 수 있는 복제품은 “원본” 하드웨어와 가격이 거의 비슷함
      ATM90E32AS는 JLCPCB에서 채널당 약 $1 정도라서, SMT 조립까지 맡기면 꽤 싸게 만들 수 있을 것 같음. 내 용도는 회로가 약 60개임
    • 원 글쓴이가 Tasmota를 올린 athom.tech 장치는 같은 가격에 ESPHome 사전 플래시 버전으로도 주문할 수 있고 Home Assistant와 동작함. 2500W 단일 콘센트 부하에 1년쯤 써봤는데 만족스러웠음
      집 전체 부하는 각 나라에서 쓰는 스마트 미터 기술과 통합하는 편을 추천함
      중간 크기 부하, 예를 들어 소비자 배전반의 32A 차단기 같은 경우에는 아직 신뢰할 만하면서 비용 효율적인 해법을 찾지 못했음
    • 6년쯤 전에 CURB Energy 모니터를 샀는데, 여기에 오픈 소스 펌웨어를 플래시할 수 있는지 아는지 궁금함. 클라우드 통합만 있어서 Home Assistant에 붙이고 싶음
    • OpenDTU 태양광 설비가 뭔지 더 설명해줄 수 있는지 궁금함
  • 패널에 설치할 수 있는 IoTaWatt 장치를 썼음. 회로별 모니터링에는 훌륭한 해법이고, InfluxDB 직접 통합이 있어서 Grafana를 쓸 수 있음
    플러그별 모니터링도 특정 회로의 특정 장치를 파악하는 데는 멋짐
    짧은 설정 영상: https://www.youtube.com/watch?v=-tcbJCvuJG8

    • 최근에 채널을 발견했는데 콘텐츠가 좋음. 홈랩 영상은 아마 10번쯤 본 것 같음
      오래된 건물에 휴가용 임대 숙소 3개가 있어서 지능화와 모니터링을 추가하는 중이고, 그중 하나가 영상 중 하나를 바탕으로 한 Raspberry Pi 키오스크임
    • 오늘 친구가 YouTube 홈랩 투어 링크를 DM으로 보내줘서 채널을 알게 됨. 관심사가 꽤 비슷함
      나도 IOTAWATT를 쓰고 있고 아주 마음에 듦. 유일한 불만은 같은 장치에서 더 많은 채널, 예를 들면 약 30채널 정도를 기록할 수 있으면 좋겠다는 것임
  • Tapo P110에서 전력 사용량 지표를 긁어와 https://github.com/richardjennings/tapmon로 Grafana Cloud에 밀어 넣고 있음. 다만 다른 사람들이 말했듯 스마트 플러그에 Wi-Fi를 쓰면 거친 부분이 있음

    • 동의함. 벽 스위치 여러 개를 Leviton Wi-Fi 스마트 스위치로 바꿨는데, 다시는 Wi-Fi로 안 갈 것 같음. 완전히 신뢰하기 어려움
      Meross 스마트 플러그는 조금 낫지만 그래도 가끔 연결이 끊김. 업데이트 이후 약간 나아지긴 했음
  • Grafana를 IoT/SCADA 제어 방향으로 밀어보는 중임. 데이터 소스를 시각화하는 훌륭한 도구이면서, 데이터 싱크를 제어하는 도구도 되게 하고 싶음
    그 용도에 Home Assistant를 추천해야 하는 게 개인적으로 아주 마음에 들지는 않음
    Grafana Labs에서 일하고 있음

    • Grafana가 숫자 입력 필드와 버튼을 지원하면 Wonderware InTouch 같은 걸 쉽게 대체할 수 있음
      전통적인 SCADA 시스템은 그래프 기능이 너무 처참해서 충분히 뒤흔들 수 있는 영역임
    • 이건 정말 좋겠음. 열진공 시험에 Grafana 대시보드를 쓰고 있는데, 모두가 단순한 SCADA 기능을 계속 원함
    • 여기서 말하는 데이터 싱크가 아이디어에 어떻게 적용되는지 더 설명해줄 수 있는지 궁금함
  • 반쯤 농담이지만 반쯤 진심으로, Grafana 사용량 자체가 모니터링으로 얻는 이득을 상쇄하는 것 아닌가 싶음. 합리적으로 보이는 수준보다 훨씬 많은 자원을 정기적으로 쓰는 소프트웨어를 하나 꼽으라면 Grafana임

    • Splunk나 Datadog으로 내보내면 합리적으로 보이는 수준보다 훨씬 많은 돈을 태울 수 있음
    • 간단한 해결책은 이웃집에서 연장선을 끌어와서 모니터링 장비를 그 전기로 돌리는 것임
  • 저렴한 ESP32에 조도 센서를 연결해 샀고, 그 조도 센서를 전기 계량기에 붙였음. 계량기가 1kWh당 1000번 깜박이는 방식이라 그걸 읽음
    데이터를 Google Sheets로 업로드하고, 시트에서 그래프로 그리게 했더니 잘 동작함
    고령 친척 집에도 PIR 센서를 붙인 ESP32를 하나 더 두었고, 움직임 데이터를 다른 Google Sheets 시트로 보내서 어느 정도 움직임이 있는지 모니터링함
    Google이 이 서비스를 언제든 중단할 거라고 예상하느냐면 그렇지만, 지금은 작동함. ESP32에서 JSON으로 Google Sheets에 데이터를 쓰고 읽을 수 있고, 직관적이진 않지만 가능하며 무료임

    • 단순한 접근이 마음에 듦. 예전 계량기는 회전 원판뿐이라서, 원판 가장자리의 검은 표시를 감지하는 센서를 Arduino에 연결하는 데 온 힘을 썼음
      원격 모니터링을 위해 그 값을 iobridge로 가져올 수 있게 하는 HTTP 서비스를 올릴 만큼의 메모리만 간신히 있었음
    • 같은 일을 하는 Frient Zigbee 장치를 쓰고 있고, 데이터는 Home Assistant로 보냄
  • 여기 댓글에서 Shelly 모니터 얘기가 더 많이 안 나와서 의외임. 집 전체, 즉 인입부와 회로 전력 모니터링에 좋고 통합도 꽤 열려 있으며 Home Assistant와 바로 통합됨
    집 안에는 “멍청한” 기성품 차단기를 쓰고, 부가 모니터를 붙이는 편이 기능을 단일 장치에 강하게 결합하는 것보다 더 타당해 보임

    • Shelly 릴레이를 열두 개쯤 쓰고 있고 만족함. 하지만 전력 계량 쪽은 훌륭한 해법이 아님
      3상 클램프가 매우 비싸고, Emporia Vue처럼 8개나 16개 센서를 붙이는 선택지가 없음. Shelly는 언급할 가치가 있지만, 세밀한 전력 계량용으로는 아님
  • 자동화까지 할 수 있다는 점도 있음. 최근 만든 자동화는 아기용 백색소음기가 켜져 있으면 초인종 소리를 낮추는 것임

    • Prometheus나 Grafana가 자동화에 어떻게 도움이 되는지 더 설명해줄 수 있는지 궁금함. 둘 중 어느 것도 그런 기능을 제공하는 줄 몰랐음