सेंसर मूल्यों को रेखांकन करने के लिए कुछ अच्छे उपकरण क्या हैं?


9

मैं अपने होम ऑटोमेशन के लिए होम असिस्टेंट का उपयोग कर रहा हूं, इसकी कुछ बुनियादी रेखांकन क्षमताएं हैं लेकिन केवल पिछले 24 घंटों के लिए। मैं बारीक ग्रैन्युलैरिटी और लंबे समय के साथ ग्राफ बनाना चाहता हूं।

मेरे पास तहखाने में एक घर कार्यालय है, जहां मैं सिगार धूम्रपान करता हूं। मेरे पास एक बहुत गंभीर एयरफ्लो के साथ एक बड़ा निष्कर्षण प्रशंसक है जो धुएं को बाहर निकालता है और कमरे को नकारात्मक दबाव में रखता है ताकि धुएं और धुएं घर के किसी अन्य हिस्से तक न पहुंचें।

मुझे यह देखने में दिलचस्पी है कि अलग-अलग पंखे की गति तहखाने में अन्य कमरों में तापमान को कैसे प्रभावित करती है, और यह फिर से बाहर के तापमान से कैसे प्रभावित होता है, जैसे गर्मियों में सर्दियों में।

इसके लिए मुझे लंबे समय तक विभिन्न तापमान और अन्य सेंसर डेटा की साजिश रचने की ज़रूरत है, और मुझे यह देखने में सक्षम होना चाहिए कि विभिन्न सेंसर रीडिंग कैसे सहसंबंधित (या नहीं) करते हैं।

कुछ अच्छे रेखांकन उपकरण क्या हैं जो होम ऑटोमेशन और IoT सेंसर या होम असिस्टेंट के साथ इंटरफेस करना आसान है?



3
मुझे आश्चर्य है कि क्या इस प्रश्न को फिर से बेहतर किया जा सकता है क्योंकि यह केवल 'अच्छे टूल' की तलाश के बजाय आपकी विशिष्ट समस्या के समाधान के लिए पूछ रहा है - इन्हें अक्सर थोड़ा व्यापक माना जाता है, लेकिन एक विशिष्ट उपयोग-मामले पर ध्यान केंद्रित करने से अधिक विशिष्ट देने में मदद मिलती है जवाब।
Aurora0001

जवाबों:


9

डोमोटिकोज़ में इन्फ्लुएंक्सडीबी

यह रास्पबेरी पाई पर डोमोटिकज़ इंस्टॉलेशन के साथ प्रदान किया गया एक डेटाबेस है। यह समय श्रृंखला के साथ डेटा का उपयोग करने की अनुमति देता है ।

Domoticz इसका उपयोग सेंसर के डेटा को मॉडल बनाने के लिए करता है

यहाँ छवि विवरण दर्ज करें


1
वाह, यह अच्छा लग रहा है!
थॉमस जेन्सेन

8

होम असिस्टेंट के लिए, विशेष रूप से, आप SQLite डेटाबेस से कनेक्ट कर सकते हैं और कस्टम ग्राफ़ उत्पन्न करने के लिए अपने स्वयं के रेखांकन सॉफ़्टवेयर (या स्क्रिप्ट) का उपयोग कर सकते हैं। होम सहायक ब्लॉग के साथ अजगर के उपयोग को दर्शाता है matplotlib यह करने के लिए:

# Adapted from the linked code from Home Assistant.
import sqlite3
from matplotlib import dates
import matplotlib.pyplot as plt

import homeassistant.util.dt as dt

ENTITY_ID = 'entity id here'
START_DATE = 'date here'
END_DATE = 'date here'

values = []
timestamps = []

conn = sqlite3.connect('/home/ha/.homeassistant/home-assistant_v2.db')
data = conn.execute("SELECT state, last_changed FROM states WHERE entity_id = {} AND last_changed BETWEEN {} AND {}".format(ENTITY_ID, START_DATE, END_DATE))

for x in data:
    timestamps.append(dates.date2num(dt.parse_datetime(x[1])))
    values.append(float(x[0]))

plt.plot_date(x=timestamps, y=values, fmt="r-")
plt.ylabel('Value')
plt.xlabel('Time line')

plt.savefig('sensor.png')

डेटाबेस स्कीमा यहाँ उपलब्ध है । हम जिस चीज में रुचि रखते हैं, वह है राज्य वस्तु ; आपको entity_idउस डिवाइस का पता होना चाहिए जिसमें आप रुचि रखते हैं।

यदि आप पायथन से परिचित हैं, तो ऐसा करना जो अपेक्षाकृत आसान होना चाहिए, और आप GUI या अच्छे कमांड-लाइन इंटरफ़ेस भी जोड़ सकते हैं। हालाँकि, SQLite डेटाबेस को क्वेरी कर सकने वाली कोई भी भाषा ठीक काम करेगी।

वैकल्पिक रूप से, आप CSV को निर्यात करने और एक स्प्रेडशीट प्रोग्राम का उपयोग करने पर विचार कर सकते हैं - इसमें कोई संदेह नहीं है कि यह स्वचालित करने के लिए अधिक चुनौतीपूर्ण होगा, लेकिन यदि आप प्रोग्रामर नहीं हैं तो अधिक उपयोगकर्ता के अनुकूल हो सकते हैं।


1
मैं पायथन से परिचित हूँ :) सुझाव के लिए धन्यवाद, मैंने होम असिस्टेंट डेटाबेस में देखने के लिए नहीं सोचा था।
थॉमस जेन्सेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.