विषयसूची:

अपने स्मार्टफोन से बीयर के किण्वन तापमान और गुरुत्वाकर्षण को कैसे नियंत्रित करें: 4 कदम (चित्रों के साथ)
अपने स्मार्टफोन से बीयर के किण्वन तापमान और गुरुत्वाकर्षण को कैसे नियंत्रित करें: 4 कदम (चित्रों के साथ)

वीडियो: अपने स्मार्टफोन से बीयर के किण्वन तापमान और गुरुत्वाकर्षण को कैसे नियंत्रित करें: 4 कदम (चित्रों के साथ)

वीडियो: अपने स्मार्टफोन से बीयर के किण्वन तापमान और गुरुत्वाकर्षण को कैसे नियंत्रित करें: 4 कदम (चित्रों के साथ)
वीडियो: अपनी शादी की क्या शर्त रखी है पूज्या जया किशोरी जी नें? आइए जानते हैं उन्हीं से | Jaya Kishori 2024, जुलाई
Anonim
अपने स्मार्टफ़ोन से बीयर किण्वन तापमान और गुरुत्वाकर्षण को कैसे नियंत्रित करें
अपने स्मार्टफ़ोन से बीयर किण्वन तापमान और गुरुत्वाकर्षण को कैसे नियंत्रित करें

जब बियर किण्वित हो रही हो, तो आपको प्रतिदिन इसके गुरुत्वाकर्षण और तापमान की निगरानी करनी चाहिए। ऐसा करना भूलना आसान है, और अगर आप दूर हैं तो असंभव है।

कुछ गुगलिंग के बाद, मुझे स्वचालित गुरुत्वाकर्षण निगरानी (एक, दो, तीन) के लिए कई समाधान मिले। उनमें से एक, बहुत चतुर अवधारणा के साथ, जिसे झुकाव कहा जाता है। आपकी बियर में झुकाव तैर रहा है और अपने स्वयं के झुकाव कोण को माप रहा है। यह कोण तरल के घनत्व पर निर्भर करता है, और इसलिए किण्वन बियर के गुरुत्वाकर्षण को माप सकता है।

झुकाव एक मोबाइल ऐप के साथ आता है, जो इससे जुड़ता है और किसी भी वेब सेवा पर डेटा पोस्ट कर सकता है। समस्या यह है कि ऐसा करने में सक्षम होने के लिए आपको झुकाव से दूर नहीं होना चाहिए। एक रास्पबेरी पाई प्रोग्राम भी है जो टिल्ट के साथ काम करता है।

चरण 1: पायथन में झुकाव डेटा प्राप्त करना

पायथन में झुकाव डेटा प्राप्त करना
पायथन में झुकाव डेटा प्राप्त करना

मैं तहखाने के तापमान की निगरानी के लिए पहले से ही रास्पबेरी पाई का उपयोग कर रहा हूं, और क्लाउड कंट्रोल पैनल सेवा Cloud4rpi.io। यदि झुकाव रास्पबेरी पाई से बात कर सकता है, तो यह संभव होना चाहिए कि क्लाउड 4 आरपीआई को इससे कनेक्ट करें। झुकाव एक वायरलेस प्रोटोकॉल का उपयोग कर रहा है, इसलिए आपको वायरलेस चिप के साथ रास्पबेरी पाई की आवश्यकता होगी (Rasbperry Pi 3 या Zero W)।

सौभाग्य से, कुछ नमूनों के साथ टिल्ट सॉफ़्टवेयर के लिए GitHub रेपो है। https://github.com/baronbrew/tilt-scan को देखकर आप देख सकते हैं कि झुकाव दूसरों को BLE iBeacon के रूप में दिखता है, UUID में "कलर" कोडित है, और तापमान और गुरुत्वाकर्षण प्रमुख और मामूली बाइट्स में हैं।

उनका नमूना कोड Node.js के लिए है, और मेरे पास Cloud4rpi टेम्पलेट https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python/blob/master/control.py पर आधारित एक पायथन नियंत्रण कार्यक्रम है।

इसलिए मुझे पायथन में टिल्ट डेटा प्राप्त करने की आवश्यकता है। कुछ गुगली करने के बाद, मुझे https://github.com/switchdoclabs/iBeacon-Scanner- - Python iBeacon स्कैनर मिला। यह एक प्रोग्राम है, लाइब्रेरी नहीं, इसलिए मैंने इसे स्ट्रिंग के बजाय डिक्शनरी वापस करने के लिए संशोधित किया। और मैंने पहले टिल्ट का रंग, तापमान और गुरुत्वाकर्षण प्राप्त करने के लिए टिल्ट-विशिष्ट मॉड्यूल भी लिखा (मेरे पास केवल एक है), और यह जांचने के लिए एक सरल परीक्षण कार्यक्रम है कि क्या यह मेरा झुकाव देख सकता है:

आयात समयआयात झुकाव

जबकि सच:

रेस = टिल्ट.गेटफर्स्ट टिल्ट () प्रिंट रेस टाइम.स्लीप(2)

चलाएं और जांचें कि यह काम करता है। अब मैं इसे अपने नियंत्रण कार्यक्रम में प्लग कर सकता हूं। मेरे पास पहले से ही Cloud4rpi.io से जुड़ा एक पायथन प्रोग्राम है, लेकिन मुझे यह दिखाने दें कि स्क्रैच से ऐसा कैसे करें।

चरण 2: डिवाइस को क्लाउड से कनेक्ट करना

डिवाइस को क्लाउड से कनेक्ट करना
डिवाइस को क्लाउड से कनेक्ट करना
डिवाइस को क्लाउड से कनेक्ट करना
डिवाइस को क्लाउड से कनेक्ट करना

सबसे पहले, Cloud4rpi.io में साइन इन करें, फिर एक नया डिवाइस बनाएं।

आपको एक उपकरण टोकन और स्थापना निर्देश दिए जाएंगे। रास्पबेरी पाई के लिए यहां निर्देशों का पालन करें https://docs.cloud4rpi.io/start/rpi/ - सुनिश्चित करें कि आपका सिस्टम अप-टू-डेट है:

सुडो एपीटी अपडेट && सुडो एपीटी अपग्रेड

पूर्वापेक्षाएँ स्थापित करें:

sudo apt स्थापित करें git - अजगर, अजगर-पाइप

Cloud4rpi अजगर पैकेज स्थापित करें:

sudo pip स्थापित करें cloud4rpi

फिर रास्पबेरी पाई (नियंत्रण फ़ोल्डर में) के लिए एक नमूना अजगर ऐप प्राप्त करें:

गिट क्लोन https://github.com/cloud4rpi/cloud4rpi-raspberryp… control

सीडी नियंत्रण

control.py संशोधित करें - लाइन में अपना डिवाइस टोकन निर्दिष्ट करें

DEVICE_TOKEN = '_Your_DEVICE_TOKEN_'

डिवाइस परिवर्तनीय घोषणाओं से अनावश्यक प्रविष्टियां हटाएं, डिवाइस कनेक्शन का परीक्षण करने के लिए केवल CPUTemp छोड़ दें:

# चर घोषणाओं को यहां रखें चर = {'सीपीयू अस्थायी': { 'प्रकार': 'संख्यात्मक', 'बाइंड': rpi.cpu_temp } }

अब एक टेस्ट रन करें:

सूडो पायथन control.py

यदि सब कुछ ठीक है, तो आपका डिवाइस पृष्ठ तुरंत नैदानिक डेटा के साथ अपडेट हो जाएगा।

चरण 3: क्लाउड पर डेटा भेजना

क्लाउड पर डेटा भेजना
क्लाउड पर डेटा भेजना

अब हमें झुकाव के रंग, तापमान और गुरुत्वाकर्षण को पढ़ने और रिपोर्ट करने के लिए control.py को संशोधित करने की आवश्यकता है। परिणाम इस तरह दिखता है:

ओएस से आयात unamefrom सॉकेट आयात gethostname आयात sys आयात समय आयात cloud4rpi आयात rpi आयात झुकाव

# यहां अपना डिवाइस टोकन लगाएं। टोकन प्राप्त करने के लिए, # https://cloud4rpi.io पर साइन अप करें और एक डिवाइस बनाएं। DEVICE_TOKEN = '_Your_DEVICE_TOKEN_'

# स्थिरांक

DATA_SENDING_INTERVAL = 60 # सेकंड DIAG_SENDING_INTERVAL = 600 # सेकंड POLL_INTERVAL = 0.5 # 500 एमएस

बीकन = {}

डीईएफ़ एफ 2 सी (डिग्री एफ):

वापसी (डिग्री एफ - 32) / 1.8

डीईएफ़ गेटटेम्प ():

वापसी F2C(int(बीकन['Temp'])) अगर बीकन कोई और नहीं

डीईएफ़ गेटग्रेविटी ():

वापसी बीकन ['गुरुत्वाकर्षण'] अगर बीकन और कोई नहीं

डीईएफ़ मुख्य ():

# परिवर्तनीय घोषणाएं यहां रखें

वेरिएबल्स = {'ग्रेविटी': {'टाइप': 'न्यूमेरिक', 'बाइंड': गेटग्रेविटी}, 'बीयर टेम्प': {'टाइप': 'न्यूमेरिक', 'बाइंड': गेटटेम्प}}

निदान = {

'CPU Temp': rpi.cpu_temp, 'IP पता': rpi.ip_address, 'होस्ट': gethostname(), 'ऑपरेटिंग सिस्टम': " ".join(uname()) }

डिवाइस = Cloud4rpi.connect (DEVICE_TOKEN)

device.declare(variables) device.declare_diag(diagnostics)

device.publish_config ()

# डिवाइस वैरिएबल बनाए जाने को सुनिश्चित करने के लिए 1 सेकंड की देरी जोड़ता है

समय सो जाओ(1)

प्रयत्न:

data_timer = 0 diag_timer = 0 जबकि सही: यदि data_timer <= 0: वैश्विक बीकन बीकन = झुकाव। getFirstTilt () डिवाइस.प्रकाशित_डेटा () data_timer = DATA_SENDING_INTERVAL

अगर diag_timer <= 0: device.publish_diag() diag_timer = DIAG_SENDING_INTERVAL

समय सो जाओ (POLL_INTERVAL)

diag_timer -= POLL_INTERVAL data_timer -= POLL_INTERVAL

कीबोर्ड इंटरप्ट को छोड़कर:

Cloud4rpi.log.info ('कीबोर्ड इंटरप्ट प्राप्त हुआ। रुक रहा है…')

ई के रूप में अपवाद को छोड़कर:

त्रुटि = Cloud4rpi.get_error_message(e) cloud4rpi.log.error("ERROR! %s %s", error, sys.exc_info()[0])

आखिरकार:

sys.exit(0)

अगर _name_ == '_main_':

मुख्य()

अब यह देखने के लिए इसे मैन्युअल रूप से चलाएं कि क्या यह काम करता है:

सूडो पायथन control.py

यदि सब कुछ अच्छा है, तो आप अपने चर ऑनलाइन देखेंगे।

सिस्टम स्टार्टअप पर control.py चलाने के लिए, इसे एक सेवा के रूप में स्थापित करें। Cloud4rpi ऐसा करने के लिए एक इंस्टॉल स्क्रिप्ट service_install.sh प्रदान करता है। मैंने इसे अपने रेपो में शामिल कर लिया है। Control.py को सेवा के रूप में स्थापित करने के लिए, दौड़ें

सुडो बैश service_install.sh control.py

अब आप प्रारंभ कर सकते हैं|रोकें|कमांड चलाकर इस सेवा को पुनरारंभ करें

sudo systemctl start cloud4rpi.service

सेवा अपनी पिछली स्थिति को चालू रखती है, इसलिए यदि यह चल रही थी, तो यह रीबूट या बिजली हानि के बाद चल रही होगी।

चरण 4: अंतिम परिणाम

अंतिम परिणाम
अंतिम परिणाम

यही है, अब मेरे पास क्लाउड पर मेरे झुकाव पैरामीटर भेजे जा रहे हैं, इसलिए मैं इसके लिए एक अच्छा क्लाउड कंट्रोल पैनल स्थापित कर सकता हूं। https://cloud4rpi.io/control-panels पर जाएं और नया कंट्रोल पैनल बनाएं, विजेट जोड़ें और डेटा स्रोत के रूप में / ग्रेविटी और बीयर टेम्प का चयन करें। अब मैं देख सकता हूं कि घर से दूर होने पर भी क्या हो रहा है।

मैंने जो कोड कॉपी और लिखा है वह यहां उपलब्ध है: https://github.com/superroma/tilt-cloud4rpi। यह बिल्कुल सही नहीं है, यह केवल एक झुकाव के साथ काम करता है, यह डिवाइस के "रंग" की परवाह नहीं करता है, इसका जो भी अर्थ है, और मैं बिल्कुल भी पायथन लड़का नहीं हूं, इसलिए सुधार, सुझाव या कांटे का स्वागत है !

सिफारिश की: