1P by neo 2달전 | favorite | 댓글 1개

내 전기 소비 분석

프랑스에서 전기 요금이 몇 년 동안 꾸준히 상승해 왔음. 특히 러시아의 우크라이나 침공 이후 급격히 상승했음. 이에 따라 자신의 전기 소비를 최적화할 방법을 고민하게 되었음.

하드웨어

  • 2015년부터 프랑스 전력망 관리 기관인 Enedis는 기존의 "멍청한" 전기 계량기를 "스마트" 계량기인 Linky로 교체하는 작업을 진행 중임.
  • 일부 사람들은 새로운 계량기가 5G Wi-Fi 전파로 뇌를 손상시킬 것이라는 우려를 표명했지만, 실시간으로 전기 소비 데이터를 확인할 수 있다는 점에서 긍정적으로 생각했음.
  • 새로운 계량기는 실시간 데이터를 읽을 수 있는 통신 포트가 있음.
  • 계약에 따라 일일 소비 데이터가 Enedis 웹사이트를 통해 제공됨.

데이터 추출

소비 데이터
  • Enedis 웹사이트에서 데이터를 CSV 형식으로 다운로드할 수 있지만, 자동으로 데이터를 가져오는 것이 더 편리함.
  • Enedis는 API를 제공하지만, 접근하기 어려움. 이를 해결하기 위해 MyElectricalData라는 "래퍼" API를 사용함.
  • 예시 코드:
    curl -X 'GET' \
      'https://myelectricaldata.fr/consumption_load_curve/$MY_METER_ID/…' \
      -H 'accept: application/json' \
      -H 'Authorization: $MY_TOKEN'
    
  • 각 30분 단위의 데이터는 JSON 객체로 제공됨.
가격 데이터
  • 전기 소비량을 아는 것도 중요하지만, 비용을 아는 것도 중요함.
  • 프랑스의 공공 데이터 사이트인 data.gouv.fr에서 규제된 전기 요금을 CSV 형식으로 제공함.
프랑스의 전기 요금
  • 전기 요금은 고정 요금(월 또는 연 단위)과 변동 요금(소비량에 따라 결정)으로 구성됨.
  • 기본 요금(Base), 피크 시간대 요금(Peak Hours), Tempo 요금제 등 다양한 요금제가 있음.
  • Tempo 요금제는 피크 시간대와 비피크 시간대를 나누고, 연간 세 가지 "시즌"으로 나눔. 레드, 화이트, 블루로 구분되며, 레드가 가장 비쌈.

데이터 활용

  • NiceGUI를 사용하여 작은 파이썬 웹 앱을 작성함.
    • Enedis에서 데이터를 가져옴.
    • 다양한 소스에서 전기 요금을 가져옴.
    • 데이터를 히트맵으로 표시함.
    • 모든 요금제를 비교하여 가장 저렴한 요금제를 선택함.
  • 데이터는 매일 밤 새로고침됨.
데이터 저장
  • JSON 형식으로 데이터를 저장하며, SQLite를 사용하여 데이터를 관리함.
  • 각 연도에 대해 17520개의 30분 단위 슬라이스가 있음.
  • 각 슬라이스에 대해 요금제를 계산함.
데이터 표시
  • 주 UI와 비교 테이블을 통해 데이터를 시각화함.
  • Tempo 요금제가 가장 저렴했으며, 지난 10개월 동안 300유로 이상 절약함.

결론

  • NiceGUI는 파이썬으로 웹 앱을 구축하는 데 매우 유용함.
  • SQLite는 간단한 데이터 관리에 적합함.
  • 코드와 더 많은 정보는 GitHub에 있음.

GN⁺의 의견

  • 이 글은 전기 소비를 최적화하고 비용을 절감하는 방법을 잘 설명하고 있음. 특히 프랑스의 전기 요금 체계에 대한 자세한 설명이 유익함.
  • Tempo 요금제와 같은 다양한 요금제를 비교하여 최적의 요금제를 선택하는 방법을 제시함으로써 실질적인 비용 절감 효과를 보여줌.
  • NiceGUI와 SQLite를 사용한 데이터 시각화와 관리 방법은 다른 프로젝트에도 응용할 수 있는 좋은 예시임.
  • 전기 소비 데이터를 실시간으로 모니터링하고 분석하는 것은 에너지 절약과 비용 절감에 큰 도움이 될 수 있음.
  • 유사한 기능을 가진 다른 도구로는 Home Assistant와 같은 스마트 홈 관리 소프트웨어가 있음.
Hacker News 의견
  • Ontario, Canada에서 스마트 미터를 대량 도입했으나 피크 수요 변화는 크지 않았음

    • 비용 대비 효과가 논란이 있음
    • 소형 유닛의 서브미터링은 효율이 낮은 장비 설치를 유도함
    • 저렴한 LED, 리노베이션 프로그램, 가전제품 효율 개선이 더 효과적임
    • 스마트 냉장고가 저렴한 전기 요금 시간대에 작동하는 기능이 부족함
    • 통신 장비의 효율성을 높이는 것이 필요함
  • 프랑스 Linky 스마트 미터와 ESP8266을 사용해 데이터 수집 프로젝트를 진행했음

    • 비표준 시리얼 포트를 사용해 데이터 수집이 어려웠음
    • 1초마다 전력 소비 데이터를 수집해 세밀한 분석이 가능했음
    • 전력 소비 데이터를 통해 사람들의 움직임을 파악할 수 있었음
  • 핀란드에서는 P1 포트를 통해 사용자에게 데이터를 제공하는 스마트 미터가 도입되고 있음

    • RJ26 와이어와 ESP8622를 사용해 4초마다 데이터를 수집함
  • ESP32와 기본적인 광센서를 사용해 전력 사용량을 Google Sheets에 기록하는 프로젝트를 진행했음

    • 1분마다 데이터를 전송해 시간별 전력 사용량을 기록함
  • Nest 온도 조절기를 사용해 실내 온도와 에어컨 설정을 추적하는 프로젝트를 진행했음

    • 외부 온도가 목표 온도 이하로 떨어졌을 때 창문을 여는 것이 더 효율적임을 발견함
    • Google이 Nest를 인수한 후 API 인증 방식이 변경되어 프로젝트가 중단됨
  • 영국의 Octopus Energy는 스마트 미터 데이터를 활용해 다양한 요금제를 제공함

    • API를 통해 일일 소비 데이터를 제공하며, 실시간 사용량을 확인할 수 있는 장치도 제공함
    • Tracker와 Agile 요금제는 도매 가격에 따라 요금이 변동됨
    • 지능형 요금제는 전기차 충전기나 가정용 배터리를 저렴한 시간대에 충전함
  • Sense 전력 미터를 설치해 전력 소비를 예측하고 조정할 수 있었음

    • 주요 전력 소비 장치를 파악해 전기 요금을 절감함
  • NiceGUI Python 웹 앱 프레임워크를 사용해본 경험을 묻는 의견이 있었음

    • Electron과 유사한 크로스 플랫폼 기능이 언급되었으나 문서에서 확인되지 않음
  • 모든 벽과 천장 소켓이 전력 사용량을 보고할 수 있다면 좋겠다는 의견이 있었음

    • 파워라인 네트워크나 Zigbee를 통해 가능할지 궁금함
  • Tesla Powerwall의 전력 소비 데이터를 Graphana 기반 UI로 시각화하는 프로젝트를 진행했음

    • 실내 온도와 에어컨 활동 데이터를 함께 시각화함
    • 차량 충전 데이터를 추가할 계획임
    • Graphana와 Influx가 이러한 프로젝트에 적합함