Sense HAT का उपयोग करके रास्पबेरी पाई तापमान मॉनिटर बनाएं और इसके एलईडी मैट्रिक्स पर नियमित रीडिंग दिखाएं।
ऐसे कई तरीके हैं जिनसे आप रास्पबेरी पाई सिंगल-बोर्ड कंप्यूटर का उपयोग करके परिवेश के तापमान की निगरानी कर सकते हैं, शायद मौसम स्टेशन सेटअप के हिस्से के रूप में। जबकि आप रास्पबेरी पाई के GPIO पिन से जुड़े एक बाहरी सेंसर का उपयोग कर सकते हैं, यहां हम बताएंगे कि सेंस एचएटी से लैस रास्पबेरी पाई के साथ तापमान की निगरानी कैसे करें।
सेंस हैट क्या है?
एक आधिकारिक रास्पबेरी पाई टोपी (हार्डवेयर शीर्ष पर संलग्न) रास्पबेरी पाई कंपनी द्वारा डिजाइन और निर्मित ऐड-ऑन बोर्ड, सेंस एचएटी मूल रूप से अंतर्राष्ट्रीय अंतरिक्ष स्टेशन पर सवार अंतरिक्ष यात्रियों द्वारा उपयोग के लिए बनाया गया था। 2015 के बाद से, सेंस एचएटी से लैस दो रास्पबेरी पाई कंप्यूटरों का उपयोग स्कूली बच्चों द्वारा डिजाइन किए गए वैज्ञानिक प्रयोगों में किया गया है, जिन्होंने वर्तमान में प्रवेश किया है। एस्ट्रो पाई चुनौती तब से इन दोनों इकाइयों को रास्पबेरी पाई 4 पर आधारित उन्नत संस्करणों से बदल दिया गया है और उच्च गुणवत्ता वाले कैमरे से सुसज्जित किया गया है।
हालाँकि इसमें अंतरिक्ष में उपयोग के लिए डिज़ाइन किए गए विशेष सिल्वर केस का अभाव है, मानक Sense HAT बोर्ड की कार्यक्षमता बिल्कुल समान है। किसी के साथ संगत रास्पबेरी पाई मॉडल 40-पिन GPIO हेडर के साथ, इसमें ऑन-बोर्ड सेंसर की एक श्रृंखला है जो इसे आसपास के वातावरण की निगरानी करने और अपने स्वयं के अभिविन्यास और आंदोलन का पता लगाने में सक्षम बनाती है। इसके अलावा, इसमें टेक्स्ट, डेटा और इमेज प्रदर्शित करने के लिए 8x8 RGB LED मैट्रिक्स है। एक मिनी फाइव-वे जॉयस्टिक भी है।
Sense HAT संवेदी कार्यों की पूरी श्रृंखला इस प्रकार है:
- नमी: 0 से 100% सापेक्ष आर्द्रता सीमा के साथ एक STMicro HTS221 सेंसर, साथ ही 32°F से 149°F (0°C से 65°C ± 2°C) तक तापमान संवेदन।
- बैरोमीटर का दबाव: 260 से 1260 hPa की रेंज वाला एक STMicro LPS25HB सेंसर, साथ ही 59°F से 104°F (15°C से 40°C ±0.5°C) तक तापमान संवेदन।
- तापमान: इसे आर्द्रता या दबाव सेंसर से पढ़ा जा सकता है, या दोनों रीडिंग का औसत लेकर मापा जा सकता है।
- जाइरोस्कोप: STMicro LSM9DS1 IMU पृथ्वी की सतह के सापेक्ष सेंस HAT के घूर्णन को माप सकता है (और यह कितनी तेजी से घूम रहा है)।
- एक्सेलेरोमीटर: आईएमयू का एक अन्य कार्य, यह कई दिशाओं में त्वरण बल को माप सकता है।
- मैग्नेटोमीटर: पृथ्वी के चुंबकीय क्षेत्र को महसूस करके, आईएमयू चुंबकीय उत्तर की दिशा निर्धारित कर सकता है और इस प्रकार एक कंपास रीडिंग दे सकता है।
अब जब आपको यह पता चल गया है कि यह बहुउद्देश्यीय रास्पबेरी पाई एचएटी क्या कर सकता है, तो परियोजना शुरू करने का समय आ गया है।
चरण 1: सेंस हैट को माउंट करें
Sense HAT को कनेक्ट करने के लिए, पहले सुनिश्चित करें कि आपका Raspberry Pi बंद है और बिजली से डिस्कनेक्ट है। फिर रास्पबेरी पाई के 40-पिन जीपीआईओ हेडर पर सेंस हैट (इसके आपूर्ति किए गए ब्लैक हेडर एक्सटेंडर के साथ) को ध्यान से दबाएं ताकि सेंस हैट बोर्ड रास्पबेरी पाई बोर्ड के ऊपर स्थित हो। सुनिश्चित करें कि सभी पिन सही पंक्ति में हों और दोनों पंक्तियाँ जुड़ी हुई हों। इसे सुरक्षित करने में मदद के लिए आप स्क्रू-इन स्टैंड-ऑफ़ का भी उपयोग कर सकते हैं।
आप किसी भी मानक रास्पबेरी पाई मॉडल का उपयोग कर सकते हैं जिसमें 40-पिन GPIO हेडर है। निम्न में से एक रास्पबेरी पाई 400 की प्रमुख सीमाएँहालाँकि, यह है कि इसका GPIO हेडर एकीकृत कीबोर्ड के पीछे स्थित है। इसका मतलब है कि Sense HAT पीछे की ओर होगा, इसलिए आप इसे कनेक्ट करने के लिए GPIO एक्सटेंशन केबल का उपयोग करना चाह सकते हैं।
चरण 2: रास्पबेरी पाई सेट करें
किसी भी अन्य प्रोजेक्ट की तरह, आपको एक यूएसबी कीबोर्ड और माउस प्लग इन करना चाहिए अपने रास्पबेरी पाई को मॉनिटर या टीवी से कनेक्ट करें. आपके पास मानक रास्पबेरी पाई ओएस वाला एक माइक्रोएसडी कार्ड भी होना चाहिए - यदि आपने पहले से ऐसा नहीं किया है, तो देखें रास्पबेरी पाई पर ऑपरेटिंग सिस्टम कैसे स्थापित करें. फिर आप बिजली चालू करने के लिए तैयार हैं।
वैकल्पिक रूप से, आप अपने रास्पबेरी पाई को सेंस एचएटी के साथ बिना मॉनिटर कनेक्ट किए हेडलेस मोड में उपयोग कर सकते हैं SSH का उपयोग करके दूर से रास्पबेरी पाई से कनेक्ट करें किसी अन्य कंप्यूटर या डिवाइस से. यदि ऐसा करते हैं, तो आप थोनी पायथन आईडीई का उपयोग नहीं कर पाएंगे, फिर भी नैनो टेक्स्ट एडिटर का उपयोग करके प्रोग्राम संपादित कर सकते हैं और उन्हें कमांड लाइन से चला सकते हैं।
Sense HAT फर्मवेयर डिफ़ॉल्ट रूप से स्थापित होना चाहिए। दोबारा जांच करने के लिए, टर्मिनल विंडो खोलें और दर्ज करें:
sudo apt install sense-hat
फिर, यदि पैकेज अभी नया स्थापित किया गया है, तो रास्पबेरी पाई को रीबूट करें:
sudo reboot
चरण 3: पायथन में प्रोग्रामिंग प्रारंभ करें
जबकि आप स्क्रैच ब्लॉक-आधारित प्रोग्रामिंग भाषा के साथ रास्पबेरी पाई सेंस हैट का उपयोग कर सकते हैं, हम इसके सेंसर रीडिंग को पढ़ने और प्रदर्शित करने के लिए पायथन का उपयोग करेंगे।
थॉनी आईडीई (एकीकृत विकास वातावरण) रास्पबेरी पाई पर पायथन प्रोग्रामिंग करने का एक अच्छा तरीका है, क्योंकि इसमें सहायक डिबगिंग सुविधाओं सहित बहुत सारी कार्यक्षमताएं हैं। रास्पबेरी पाई ओएस के डेस्कटॉप जीयूआई में, पर जाएं मेन्यू (ऊपर बाएँ रास्पबेरी आइकन) > प्रोग्रामिंग > थॉनी आईडीई इसे लॉन्च करने के लिए.
चरण 4: तापमान रीडिंग लें
थॉनी आईडीई की मुख्य विंडो में, कोड की निम्नलिखित पंक्तियाँ दर्ज करें:
from sense_hat import SenseHatsense = SenseHat()
sense.clear()
temp = sense.get_temperature()
print(temp)
पहली पंक्ति आयात करती है सेंसहैट से कक्षा सेंस_हैट पायथन लाइब्रेरी (जो रास्पबेरी पाई ओएस में पहले से स्थापित है)। इसके बाद इसे सौंपा गया है समझ चर। तीसरी पंक्ति Sense HAT के LED मैट्रिक्स को साफ़ करती है।
फिर हम तापमान रीडिंग लेते हैं और इसे थोनी आईडीई के शेल क्षेत्र में प्रिंट करते हैं। यह डिग्री सेल्सियस में है, इसलिए हो सकता है कि आप पहले इसे फ़ारेनहाइट में बदलना चाहें:
temp = (sense.get_temperature() * 1.8 + 32)
तापमान सेंसर रीडिंग में दशमलव बिंदु के बाद कई अंक होंगे। तो हम इसका उपयोग करेंगे गोल इसे एक दशमलव स्थान पर पूर्णांकित करने का कार्य:
temp = round(temp, 1)
भावना.get_तापमान() फ़ंक्शन आर्द्रता सेंसर में निर्मित तापमान सेंसर को पढ़ता है। वैकल्पिक रूप से, आप दबाव सेंसर से तापमान रीडिंग ले सकते हैं भावना.get_temperature_from_pressure() या फिर दोनों रीडिंग लें और औसत औसत की गणना करें (उन्हें जोड़कर और दो से विभाजित करके)।
चरण 5: सेंस हैट पर तापमान दिखाएं
पायथन शेल में एकल तापमान रीडिंग को प्रिंट करना थोड़ा उबाऊ है, इसलिए इसके बजाय नियमित रूप से एक नई रीडिंग लें और इसे Sense HAT के RGB LED मैट्रिक्स पर दिखाएं। स्क्रॉलिंग टेक्स्ट संदेश प्रदर्शित करने के लिए, हम इसका उपयोग करते हैं संदेश दिखाएँ समारोह। हम भी एक का उपयोग करेंगे जबकि: सच है हर 10 सेकंड में एक नई रीडिंग लेते रहने के लिए लूप - जिसके लिए हम इसका उपयोग करते हैं नींद से कार्य करें समय पुस्तकालय।
यहाँ पूरा कार्यक्रम है:
from sense_hat import SenseHat
from time import sleepsense = SenseHat()
sense.clear()
whileTrue:
temp = (sense.get_temperature() * 1.8 + 32)
temp = round(temp, 1)
message = "Temp: " + str(temp)
sense.show_message(message)
sleep (10)
इस कोड को चलाएँ और आप प्रत्येक नए तापमान को एलईडी मैट्रिक्स पर स्क्रॉल करते हुए देखेंगे। तापमान में परिवर्तन होता है या नहीं यह देखने के लिए Sense HAT को फूंकने का प्रयास करें।
तापमान रीडिंग रास्पबेरी पाई के सीपीयू से ठीक नीचे स्थानांतरित गर्मी से प्रभावित हो सकती है, इसलिए अधिक सटीक आंकड़ा प्राप्त करने के लिए समायोजन की आवश्यकता हो सकती है। एक अन्य समाधान सेंस एचएटी को रास्पबेरी पाई से ऊपर उठाने के लिए स्टैकिंग हेडर का उपयोग करना है।
तापमान की निगरानी के लिए रास्पबेरी पाई का उपयोग करें
हालाँकि आप इस प्रोजेक्ट के लिए एक स्टैंडअलोन तापमान सेंसर का उपयोग कर सकते हैं, Sense HAT आपके साथ तापमान की निगरानी करना आसान बनाता है रास्पबेरी पाई। आप इसका उपयोग कई अन्य सेंसर रीडिंग, जैसे बैरोमीटर का दबाव और सापेक्ष आर्द्रता, लेने और उन्हें इसके एलईडी पर दिखाने के लिए भी कर सकते हैं। आव्यूह।