ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [아두이노/Home assistant] 집 전기 사용량 실시간 측정기 간단 제작기
    개발 이야기 2020. 1. 12. 13:40

     

    2년쯤 전에 아두이노랑 부품들 이것저것 사 놓고 약간 현타가 와서 한동안 방치해두고 있었는데요..
    최근 급하게 저녁거리 좀 해 놓고 헬스장 가다가 문득 이런 생각이 들었습니다.

    '인덕션은 끄고 나온걸까..?' -_-;;

     

    Home assistant로 집안 곳곳에 온도/습도 센서를 두고 밖에서도 상태를 모니터링 하는것이 습관이 되다 보니,
    집 밖에서 인덕션 켜지고/꺼지고도 확인하고 싶은 욕망이 스멀스멀 올라왔습니다.

     

    그래서 질렀습니다. 

     

    "sct-013 전류센서" 
    대략 5천원 정도 하더라구요.

     

    SCT-013



    어제 잠깐 짬 난 김에 구글링 해서 측정용 회로 만들고 간단히 설치 해 보았습니다. (3.5파이 잭은 과감하게 잘라서 선을 뽑아서 썼습니다.)

    회로는 아래 사이트를 참고했습니다. 부하용 저항은 33옴이 없어서 120옴 인가?로 대체했습니다. -ㅅ-);;
    https://learn.openenergymonitor.org/electricity-monitoring/ct-sensors/interface-with-arduino

    깊게 고민하진 않았고, 어차피 집에 100a씩 흐를 일이 없으니 120옴 정도로도 괜찮겠다 싶었습니다. 

    전류센서는 배전함 열어서 메인회선 중 한 가닥에 연결 한 다음, 선을 빼서 회로와 아두이노 보드를 밖에서 연결 했습니다.
    (배전함 안에는 공간도 없고, 이 녀석들 욱여넣기는 좀 위험해 보이더라구요..)

     

     


    restful sensor는 아래 처럼 설정하면 됩니다. 간편하더군요. 

    https://www.home-assistant.io/integrations/rest/

    home assistant 설정 파일은 대략 이런식으로 구성하면 됩니다.

     

    sensor:
      - platform: rest
        resource: http://192.168.1.228/powerMeasure
        name: Power
        value_template: '{{ value_json.powerMeasure }}'
        unit_of_measurement: W
      - platform: filter
        name: "Filtered Power"
        entity_id: sensor.power
        filters:
          - filter: time_simple_moving_average
            window_size: 00:30

    Home assistant에서 restful 플랫폼으로 주기적으로 읽어온 값은 Home assistant화면에서 아래 처럼 표시됩니다.

     

    위 구성파일의 밑에 있는 filter 플랫폼은 전력 측정 값의 순간 변화량이 꽤 커서 조금 보기 편하게 하기 위해서 moving average 를 취한 것입니다. 

     

    Filtering을 한 값은 대략 이렇게 보입니다.

     



    초기 버젼에서는 단위를 맞추지 않았는데, 적당히 보기 편하게 단위도 맞춰주었습니다. 생활 패턴에서 인덕션, 자기전에 머리 말릴때 사용한 드라이어, 밤새 작동한 온수매트, 세탁기 등이 대충 적당히 기록되어 있는 듯 합니다.

    이제 측정값 간단히 캘리브레이션 하고, 간단히 납땜해서 회로도 기판으로 만들고, usb 어댑터를 어딘가에 연결해주고 적당히 케이싱 해서 짱박아야겠습니다.
    (만든지 한달쯤 지났는데 아직도 못 했네요.. 조만간 해야겠습니다.)

    허접한 제작기 읽어 주셔서 감사합니다!

    (아두이노 코드나 기타 조금 더 자세한 부분이 궁금하시면 댓글 주시면 아는 범위 내에서는 답을 드리도록 하겠습니다.)

     

    반응형

    댓글

Designed by Tistory.