3 पॉइंट द्वारा GN⁺ 2024-05-06 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • athom.tech EU style plug V3 स्मार्ट प्लग के Tasmota को मौजूदा होम सर्वर के Prometheus·Grafana से जोड़कर घरेलू उपकरणों और computing उपकरणों की दीर्घकालिक बिजली खपत को विज़ुअलाइज़ किया गया
  • हर प्लग के लिए tasmota-power-exporter चलाया जाता है और Prometheus हर 1 सेकंड में scrape करता है; Grafana में घना ग्राफ़ देखने के लिए min step को 1 सेकंड पर सेट करना पड़ता है
  • लगभग 4 महीने के मापन में electric water heater ने औसतन 4.51kWh/दिन, जबकि पूरे home office desk setup ने औसतन 0.95kWh/दिन ऊर्जा उपयोग की; Zimaboard सामान्य उपयोग में लगभग 7W पर ISP modem/router से कम बिजली लेता था
  • वोल्टेज ग्राफ़ में peak power समय और high-power devices की गतिविधि भी दिखी; water heater, electric kettle, electric range और microwave चालू होने पर सभी प्लगों का वोल्टेज थोड़ा गिर जाता था
  • दीर्घकालिक मापन के लिए यह उपयोगी रहा, लेकिन कुछ प्लग समय पर आँकड़े नहीं भेजते थे या नेटवर्क से गायब हो जाते थे, जिससे power restart की ज़रूरत पड़ती थी; बिजली दर-आधारित automatic control अगला संभावित प्रयोग बना हुआ है

स्मार्ट प्लग से दीर्घकालिक बिजली उपयोग देखना

  • लक्ष्य था कि होम सर्वर, router, workstation, electric water heater जैसे उपकरणों की बिजली खपत को लंबे समय तक विज़ुअल रूप में ट्रैक किया जाए
  • पहले इस्तेमाल किया गया साधारण digital power meter तुरंत माप देखने के लिए पर्याप्त था, लेकिन लंबे समय में डिवाइस बिजली कैसे उपयोग करते हैं, यह समझने में उसकी सीमा थी
  • इस्तेमाल किया गया उत्पाद athom.tech का EU style plug V3 वेरिएंट था, और EU डिलीवरी में क्रिसमस सहित 9 दिन लगे
  • प्लग में Tasmota पहले से इंस्टॉल था, और साथ आए निर्देशों के अनुसार Wi-Fi से जोड़ने के बाद उसे ब्राउज़र से मैनेज किया जा सकता था
  • firmware update वेब GUI में कुछ क्लिक से नवीनतम संस्करण तक किया जा सकता था

Prometheus और Grafana का संग्रह ढांचा

  • power meter डेटा को होम सर्वर पर पहले से मौजूद Prometheus instance में इकट्ठा किया गया
  • Prometheus कई स्रोतों से metrics को नियमित रूप से पढ़कर डिस्क पर स्टोर करता है, और बाद में उन्हें query और manipulate करने के लिए उपयोग होता है
  • सर्वर पर tasmota-power-exporter हर प्लग के लिए एक-एक चलाया गया
    • Prometheus हर exporter को प्रति सेकंड 1 बार scrape करता है
    • प्लग खुद भी metrics export कर सकता था, लेकिन सीधे Tasmota firmware build करने वाला तरीका नहीं चुना गया
  • विज़ुअलाइज़ेशन के लिए मौजूदा Grafana instance को दोबारा इस्तेमाल किया गया
    • ग्राफ़ में सबसे विस्तृत data points पाने के लिए min step मान को 1 सेकंड पर बदलना पड़ता है

लगभग 4 महीनों में देखी गई बिजली खपत

  • electric water heater

    • 30L electric water heater मापे गए उपकरणों में सबसे अधिक बिजली उपयोग करता था
    • यह इतना था कि एक-दो तेज़ शॉवर या काफी मात्रा में बर्तन धोने के लिए पर्याप्त हो
    • माप इस प्रकार थे
      • सामान्य बिजली उपयोग: 4.51kWh/दिन
      • अवलोकित न्यूनतम: 0.56kWh/दिन, आमतौर पर जब घर में कोई नहीं होता था
      • अवलोकित अधिकतम: 11.1kWh/दिन, उन दिनों जब कपड़े धोना और शॉवर अधिक हुआ
  • होम सर्वर और नेटवर्क उपकरण

    • होम सर्वर workload Zimaboard पर चलता था, और कम बिजली खपत इसका महत्वपूर्ण चयन कारण था
    • Zimaboard की बिजली खपत इस प्रकार थी
      • idle स्थिति: लगभग 2W
      • सभी सेवाओं के साथ सामान्य उपयोग: लगभग 7W
      • अधिकतम बिजली खपत: लगभग 15W
    • ISP द्वारा दिया गया modem/router box router mode या bridge mode की परवाह किए बिना हमेशा 12~14W उपयोग करता था, इसलिए वह Zimaboard से अधिक बिजली लेता था
    • latency-sensitive workload जोड़ने के बाद कुछ समय के लिए होम सर्वर को ASRock Deskmini X300 पर वापस ले जाया गया
    • Deskmini की idle बिजली खपत Zimaboard की तुलना में खराब थी और 15~20W के स्तर पर थी
    • ऐसा लगा कि Deskmini CPU low-power states को C3 से नीचे expose नहीं करता, जबकि Zimaboard C10 तक C-state expose करता था
    • UEFI settings या Linux kernel में इससे नीचे के C-state expose कराने का तरीका नहीं मिला
    • Prometheus node exporter Grafana view में server power consumption panel जोड़ने पर CPU activity में वृद्धि बिजली खपत ग्राफ़ में भी साफ़ दिखाई दी

वोल्टेज बदलाव और डेस्क के आसपास के बिजली पैटर्न

  • वोल्टेज बदलाव

    • Tasmota प्लग वर्तमान voltage value भी रिपोर्ट करते हैं
    • वोल्टेज ग्राफ़ में seasonality जैसा पैटर्न था, और सामान्य peak power consumption समय में कुल मिलाकर वोल्टेज नीचे जाता था
    • यह पैटर्न Prometheus-आधारित anomaly detection प्रयोग के लिए उम्मीदवार हो सकता है; GitLab का Prometheus का उपयोग कर anomaly detection पर लेख देखा जा सकता है
    • water heater, electric kettle, electric range और microwave जैसे अधिक बिजली लेने वाले उपकरण चलने पर भी वोल्टेज गिरता था
    • water heater सभी प्लगों का वोल्टेज थोड़ा कम कर देता था
    • electric range पर खाना पकाते समय उसका on/off cycle सभी प्लगों की voltage readings में भी दिखाई देता था
  • home office workstation

    • एक प्लग home office desk से जुड़े monitor, USB-C dock, monitor light bar, और डेस्क पर चार्ज होने वाले उपकरणों को साथ में मापता था
    • बिजली खपत work from home के समय या कई उपकरण चार्ज हो रहे हों, इस पर काफी बदलती थी
    • कंप्यूटर पर काम करते समय पूरे setup की सामान्य बिजली खपत 45~60W थी, और peak 90~110W के आसपास था
    • मापी गई दैनिक खपत इस प्रकार थी
      • सामान्य बिजली उपयोग: 0.95kWh/दिन
      • अवलोकित न्यूनतम: 0.07kWh/दिन
      • अवलोकित अधिकतम: 1.52kWh/दिन
  • charging patterns

    • स्मार्ट प्लग कई उपकरणों के charging patterns देखने में भी उपयोगी रहे
    • laptop या power bank शुरुआत में तेज़ी से चार्ज होते थे, फिर बैटरी भरने के साथ गति घटती थी, और एक बिंदु के बाद full charge तक trickle charging जैसा चरण दिखता था
    • e-bike battery एक अपवाद थी; charging के दौरान उसकी बिजली खपत थोड़ा-थोड़ा बढ़ती थी और अंत में तेज़ी से गिरती थी
    • e-bike ने Turbo preset के आधार पर 60km range के लिए 0.5kWh उपयोग किया, और प्रति km लागत आधा सेंट निकली

स्थिरता समस्याएँ और अगला प्रयोग

  • स्मार्ट प्लग की स्थिरता कुल मिलाकर ठीक थी, लेकिन कुछ प्लग अक्सर समय पर आँकड़े रिपोर्ट नहीं करते थे
    • कारण Wi-Fi access point की समस्या भी हो सकता है
    • दो प्लग नेटवर्क से पूरी तरह गायब हो गए और वापस नहीं आए, इसलिए कई बार पूरा power restart करना पड़ा
  • प्लग HTTP सहित कई APIs के जरिए उपकरणों को on/off कर सकते हैं
  • आगे चलकर Home Assistant या साधारण script का उपयोग कर मौजूदा बिजली दर के आधार पर कुछ उपकरणों को on/off करने की कोशिश की जा सकती है
  • देखे गए दायरे में Home Assistant के लिए nordpool integration मौजूद है
  • पूरा setup विभिन्न computing उपकरणों की भरोसेमंद बिजली माप को संभव बनाता है, जिससे आगे इस्तेमाल होने वाले उपकरणों की power efficiency का आकलन अनुमान के बजाय वास्तविक डेटा से किया जा सकता है

1 टिप्पणियां

 
GN⁺ 2024-05-06
Hacker News की टिप्पणियां
  • मैंने एक Zigbee पावर सर्किट ब्रेकर खरीदा और उसे ऐसे जोड़ा कि पूरे घर की बिजली उसी से होकर गुजरे, और बिजली खपत दिखाने वाला e-ink डिस्प्ले भी बनाया
    https://www.stavros.io/posts/making-the-timeframe/

    • Netherlands में grid operator द्वारा लगाए गए सभी smart meters को P1 standard सपोर्ट करना होता है, इसलिए ग्राहक मौजूदा current usage, cumulative power usage आदि को standard interface से पढ़ सकते हैं। आम तौर पर gas meter भी साथ में जुड़ा होता है
      सस्ता dongle लगा दें तो app में statistics देख सकते हैं, उदाहरण के लिए मैं यह इस्तेमाल कर रहा हूं: https://www.homewizard.com/nl/shop/wi-fi-p1-meter/
      यह meter local network API भी देता है। मैंने SmartThings Hub के लिए एक छोटा driver बनाया ताकि SmartThings app में भी statistics और graphs देख सकूं, और Zigbee/Z-Wave devices के लिए SmartThings hub इस्तेमाल कर रहा हूं: https://github.com/danieldk/homewizard-energy
    • लगता है display के लिए AliExpress link टूट गया है। जैसा अक्सर होता है
      स्वाभाविक integration target Home Assistant लग रहा है। मुझे नहीं पता कि Earu breaker के लिए Home Assistant में सीधे इस्तेमाल करने लायक integration अभी है या नहीं, Zigbee2MQTT से values पढ़ने और entities सेट करने के अलावा। फिर भी meter को automation hub से जोड़ना, और hub द्वारा meter व दूसरी जानकारी की image display पर push करना अच्छा pattern लगता है
    • यह व्यक्ति दिलचस्प है, इसलिए पसंद आया। मैंने project IMGZ के लिए सालाना $12 subscription भी खरीदा, और कहीं यह sophisticated ad न लगे इसलिए बता दूं कि मेरा कोई संबंध नहीं है
      https://imgz.org/
      BTC से भुगतान करते समय “open in wallet” button ठीक करना चाहिए। link broken है
      बाकी सब ठीक चलता है। उदाहरण: https://imgz.org/iAB4tgaJ/
    • जानना चाहता हूं कि कौन-सा power breaker इस्तेमाल कर रहे हैं
  • कुछ साल पहले मैं इस चीज़ में काफी उलझ गया था और Rainforest Automation Eagle नाम का एक कम-प्रसिद्ध device खरीदा: https://www.rainforestautomation.com/rfa-z114-eagle-200-2/
    power company में register करने पर यह smart meter पढ़ने वाला एक साधारण Linux device है, और XML API देता है, जिसे मैं Prometheus में bridge करके इस्तेमाल कर रहा हूं: https://github.com/kklipsch/reagle
    power company ComEd का price feed भी Prometheus में bridge किया है: https://github.com/kklipsch/comed_exporter
    इन दोनों की वजह से पूरे घर की usage और price जानकारी को Prometheus, और Grafana में काफी अच्छी तरह graph के रूप में देख सकता हूं

    • उत्सुक हूं कि क्या आप share कर सकते हैं कि hourly pricing और power measurements को कैसे combine करते हैं
  • मैंने एक कदम और आगे बढ़कर distribution panel में Emporia Vue 2 install किया। इसमें 16 current transformers और 3-phase mains तक जुड़े हैं
    यह ESP32-based है, और local-only reporting के लिए flash किया जा सकने वाला एक बढ़िया ESPHome project मौजूद है। इसके साथ Home Assistant और VictoriaMetrics जोड़ने पर Grafana में पूरे घर का behavior दिखने लगा। अगला कदम इस data का इस्तेमाल करके एक छोटे OpenDTU solar setup को control करने वाला zero-export power control है। सचमुच कमाल के दौर में जी रहे हैं

    • VictoriaMetrics और Grafana का combination बेहतरीन है। बस अच्छा होता अगर Grafana metrics explorer के descriptions भरने के लिए metric descriptions डाल सकते। परंपरागत रूप से Prometheus metric metadata का help field यही काम करता था
      VictoriaMetrics/Grafana हमारे industrial historian system को replace कर रहे हैं, हालांकि वह product बहुत top-tier नहीं है। शायद OSI PI बेहतर होगा
    • जानना चाहता हूं कि इसके जैसे और open source hardware alternatives हैं क्या। अगर Ethernet हो और ESPHome हो तो और बेहतर
      जो clones मिलते हैं उनकी कीमत “original” hardware के लगभग बराबर है
      ATM90E32AS JLCPCB पर प्रति channel लगभग $1 का है, इसलिए SMT assembly सहित बनवाएं तो काफी सस्ता बन सकता है। मेरे use case में लगभग 60 circuits हैं
    • जिस athom.tech device पर original author ने Tasmota डाला है, उसे उसी कीमत पर ESPHome pre-flashed version में भी order किया जा सकता है और यह Home Assistant के साथ काम करता है। 2500W single socket load पर लगभग 1 साल इस्तेमाल किया है और संतुष्ट हूं
      पूरे घर के load के लिए मैं आपके देश में इस्तेमाल होने वाली smart meter technology से integration करने की सलाह दूंगा
      मध्यम आकार के loads, जैसे consumer distribution board में 32A breaker, के लिए मुझे अभी तक भरोसेमंद और cost-effective समाधान नहीं मिला है
    • लगभग 6 साल पहले मैंने CURB Energy monitor खरीदा था; क्या किसी को पता है कि इस पर open source firmware flash किया जा सकता है? इसमें सिर्फ cloud integration है, इसलिए इसे Home Assistant से जोड़ना चाहता हूं
    • क्या आप OpenDTU solar setup क्या है, इसके बारे में थोड़ा और समझा सकते हैं
  • पैनल में इंस्टॉल किए जा सकने वाले IoTaWatt डिवाइस का इस्तेमाल किया। सर्किट-वार monitoring के लिए यह बेहतरीन समाधान है, और इसमें InfluxDB का direct integration है, इसलिए Grafana इस्तेमाल किया जा सकता है
    Plug-वार monitoring भी किसी खास circuit के खास device को समझने के लिए बढ़िया है
    छोटा setup video: https://www.youtube.com/watch?v=-tcbJCvuJG8

    • हाल ही में चैनल मिला और content अच्छा है। Homelab वाला video शायद मैंने करीब 10 बार देखा होगा
      एक पुरानी building में छुट्टियों के लिए 3 rental accommodations हैं, जिनमें smart features और monitoring जोड़ रहा/रही हूँ; उनमें से एक, videos में से एक पर आधारित Raspberry Pi kiosk है
    • आज एक दोस्त ने YouTube homelab tour का link DM में भेजा, तभी चैनल के बारे में पता चला। रुचियाँ काफी मिलती-जुलती हैं
      मैं भी IOTAWATT इस्तेमाल करता/करती हूँ और मुझे यह बहुत पसंद है। बस एक शिकायत है कि काश उसी device पर और ज़्यादा channels, जैसे करीब 30 channels, record कर पाता/पाती
  • Tapo P110 से power usage metrics scrape करके https://github.com/richardjennings/tapmon के जरिए Grafana Cloud में push कर रहा/रही हूँ। हालांकि, जैसा दूसरों ने कहा है, smart plugs में Wi‑Fi इस्तेमाल करने पर कुछ rough edges हैं

    • सहमत। मैंने कई wall switches को Leviton Wi‑Fi smart switches से बदला था, लेकिन अब शायद फिर Wi‑Fi पर नहीं जाऊँगा/जाऊँगी। पूरी तरह भरोसेमंद नहीं हैं
      Meross smart plugs थोड़ा बेहतर हैं, फिर भी कभी-कभी disconnect हो जाते हैं। Updates के बाद थोड़ा सुधार आया है
  • Grafana को IoT/SCADA control की दिशा में आगे बढ़ाने की कोशिश कर रहा/रही हूँ। यह data sources को visualize करने का शानदार tool है, और चाहता/चाहती हूँ कि यह data sinks को control करने का tool भी बने
    इस use case के लिए Home Assistant recommend करना पड़े, यह बात मुझे व्यक्तिगत रूप से बहुत पसंद नहीं है
    मैं Grafana Labs में काम करता/करती हूँ

    • अगर Grafana numeric input fields और buttons support करे, तो Wonderware InTouch जैसी चीज़ों को आसानी से replace किया जा सकता है
      Traditional SCADA systems में graphs की capability इतनी खराब होती है कि यह area अच्छे से disrupt किया जा सकता है
    • यह वाकई बहुत अच्छा होगा। हम thermal vacuum testing में Grafana dashboards इस्तेमाल कर रहे हैं, और हर कोई लगातार simple SCADA features चाहता है
    • यहाँ जिस data sink की बात हो रही है, वह इस idea में कैसे लागू होता है, क्या आप थोड़ा और समझा सकते हैं?
  • आधा मज़ाक, आधा गंभीरता से, मुझे लगता है कि कहीं Grafana का अपना usage ही monitoring से मिलने वाले फायदे को offset तो नहीं कर देता। अगर मुझे ऐसा software चुनना हो जो reasonable लगने वाली मात्रा से कहीं ज़्यादा resources नियमित रूप से इस्तेमाल करता है, तो वह Grafana होगा

    • Splunk या Datadog में export करें तो reasonable लगने वाली रकम से कहीं ज़्यादा पैसा जला सकते हैं
    • आसान solution यह है कि पड़ोसी के घर से extension cord खींच लें और monitoring equipment उसी बिजली से चलाएँ
  • एक सस्ते ESP32 में light sensor जोड़कर खरीदा, और उस light sensor को बिजली के meter पर लगा दिया। Meter 1kWh पर 1000 बार blink करता है, इसलिए वही पढ़ता है
    Data Google Sheets में upload किया और sheet से graph बनवाया, तो यह ठीक से काम करता है
    एक बुजुर्ग रिश्तेदार के घर में PIR sensor लगा एक और ESP32 रखा है, और movement data को Google Sheets की दूसरी sheet में भेजकर monitor करता/करती हूँ कि कितनी movement हो रही है
    क्या मुझे लगता है कि Google यह service कभी भी बंद कर देगा? हाँ, लेकिन अभी यह काम कर रही है। ESP32 से JSON के रूप में Google Sheets में data लिख और पढ़ सकते हैं; यह intuitive नहीं है, लेकिन संभव है और free है

    • Simple approach पसंद आया। पुराने meter में सिर्फ rotating disk थी, इसलिए disk के किनारे पर बने black mark को detect करने वाला sensor Arduino से जोड़ने में मैंने पूरी ताकत लगा दी थी
      Remote monitoring के लिए उस value को iobridge तक पहुंचाने वाला HTTP service चलाने भर की memory ही मुश्किल से थी
    • मैं यही काम करने वाला Frient Zigbee device इस्तेमाल कर रहा/रही हूँ, और data Home Assistant को भेजता/भेजती हूँ
  • यहाँ comments में Shelly monitors का ज़्यादा ज़िक्र न होना surprising है। पूरे घर, यानी incoming supply और circuit power monitoring के लिए ये अच्छे हैं, integration भी काफी open है और Home Assistant के साथ सीधे integrate हो जाते हैं
    घर के अंदर “dumb” off-the-shelf breakers इस्तेमाल करना और add-on monitors लगाना, functionality को एक ही device से कसकर जोड़ने की तुलना में ज़्यादा सही लगता है

    • मैं करीब दर्जनभर Shelly relays इस्तेमाल कर रहा/रही हूँ और संतुष्ट हूँ। लेकिन power metering के लिए यह शानदार solution नहीं है
      3-phase clamps बहुत महंगे हैं, और Emporia Vue की तरह 8 या 16 sensors लगाने का option नहीं है। Shelly का ज़िक्र करना बनता है, लेकिन fine-grained power metering के लिए नहीं
  • Automation भी की जा सकती है। हाल ही में बनाई automation यह है कि अगर बच्चे की white noise machine चालू हो, तो doorbell की आवाज़ कम हो जाए

    • Prometheus या Grafana automation में कैसे मदद करते हैं, क्या आप थोड़ा और समझा सकते हैं? मुझे नहीं पता था कि इनमें से कोई भी ऐसी functionality देता है