- 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 통합이 존재함
- 전체 구성은 다양한 컴퓨팅 장비의 신뢰할 만한 전력 측정을 가능하게 해, 앞으로 쓰는 기기의 전력 효율을 추측 없이 판단하는 데 도움됨