मैसेजिंग क्यूइंग टेलीमेट्री प्रोटोकॉल, या एमक्यूटीटी, एक हल्का मैसेजिंग प्रोटोकॉल है जिसे कम बैंडविड्थ उपकरणों और वातावरण के लिए डिज़ाइन किया गया है। यह कई IoT उपकरणों के बीच सूचनाओं को जोड़ने और आदान-प्रदान करने के लिए एक तेज़, आसान-से-तैनाती और ऊर्जा-कुशल समाधान है। इसके लिए एक MQTT ब्रोकर/सर्वर की आवश्यकता होती है और जिस विषय पर संदेश प्रकाशित होते हैं और सूचना भेजने या प्राप्त करने के लिए उपकरणों या उपयोगकर्ताओं द्वारा सदस्यता ली जाती है।
इस गाइड में, हम MQTT-सक्षम DIY स्मार्ट IoT उपकरणों को जोड़ने और होम ऑटोमेशन के लिए उनका उपयोग करने के लिए रास्पबेरी पाई पर MQTT ब्रोकर और Node-RED टूल को तैनात करेंगे।
चीजें जिनकी आपको आवश्यकता होगी
Node-RED के साथ MQTT सर्वर बनाने और तैनात करने के लिए, आपको निम्नलिखित की आवश्यकता होगी:
- रास्पबेरी पाई जीरो डब्ल्यू या बेहतर। हम रास्पबेरी पाई 3 या 4 (यदि उपलब्ध हो) का उपयोग करने की सलाह देते हैं।
- एक माइक्रोएसडी कार्ड (8GB या अधिक)।
- एक माइक्रोएसडी कार्ड रीडर।
- एक लिनक्स पीसी, मैक या विंडोज पीसी।
- इंटरनेट कनेक्शन (वाई-फाई)।
चरण 1: रास्पबेरी पाई ओएस लाइट (64-बिट) स्थापित करें
आपको रास्पबेरी पाई ओएस के 64-बिट लाइट संस्करण की आवश्यकता होगी। में रास्पबेरी पाई इमेजर दूसरे कंप्यूटर पर उपकरण, क्लिक करें ओएस चुनें > रास्पबेरी पाई ओएस (अन्य) , फिर चुनें रास्पबेरी पाई ओएस लाइट (64-बिट) . इसके अलावा, आप SSH को सक्षम करने के लिए इमेजर की उन्नत सेटिंग्स का उपयोग करना चाहेंगे (हमने इस्तेमाल किया अनुकरणीय तथा रसभरी इस गाइड के लिए उपयोगकर्ता नाम और पासवर्ड के रूप में) और वाई-फाई कनेक्शन को कॉन्फ़िगर करें। अधिक जानकारी के लिए, हमारे गाइड को देखें रास्पबेरी पाई पर एक ऑपरेटिंग सिस्टम कैसे स्थापित करें? . कार्ड में OS लिखने के बाद, इसे बाहर निकालें और इसे अपने रास्पबेरी पाई में डालें।
चरण 2: SSH से कनेक्ट करें और पैकेज अपडेट करें
आप विंडोज़ या टर्मिनल पर पुटी का उपयोग करके एसएसएच पर अपने रास्पबेरी पाई से जुड़ सकते हैं मैकओएस और लिनक्स पर। हालाँकि, आपको SSH से जुड़ने के लिए रास्पबेरी पाई का आईपी पता होना चाहिए। पता लगाने के लिए, आप अपने वायरलेस राउटर की डीएचसीपी सेटिंग्स खोल सकते हैं या फिंग का उपयोग कर सकते हैं अपने स्मार्टफोन पर ऐप।
एंड्रॉइड फोन पर यादृच्छिक पॉप अप
में आईपी पता दर्ज करें पुट्टी और क्लिक करें जुडिये . लॉग इन करने के लिए अपना यूजरनेम और पासवर्ड टाइप करें।
Linux या macOS टर्मिनल पर, टाइप करें YourPiUsername@IPAddress और फिर लॉग इन करने के लिए पासवर्ड टाइप करें। एक बार SSH के माध्यम से कनेक्ट होने के बाद, पैकेज सूची को अपडेट करने और पैकेज को अपग्रेड करने के लिए निम्न कमांड चलाएँ।
sudo apt update && sudo apt upgrade –y
चरण 3: एमक्यूटीटी ब्रोकर स्थापित करें
MQTT ब्रोकर (मच्छर) को स्थापित और सक्षम करने के लिए, निम्नलिखित कदम उठाएँ।
- टर्मिनल विंडो में निम्न आदेश चलाकर मच्छर स्थापित करें।
यह मॉस्किटो (MQTT ब्रोकर) और क्लाइंट सेवाओं को स्थापित करना शुरू कर देगा।sudo apt install mosquitto mosquitto-clients -y
- स्थापना के बाद, मच्छर सेवा को सक्षम करें और निम्नलिखित आदेशों का उपयोग करके MQTT संस्करण की जाँच करें।
sudo systemctl enable mosquitto.service
mosquitto -v - निम्नलिखित कमांड का उपयोग करके प्रमाणित रिमोट एक्सेस की अनुमति देने के लिए एक उपयोगकर्ता खाता बनाएं।
यहां इलाज उपयोगकर्ता नाम है (आप जो चाहें उपयोग कर सकते हैं)। संकेत मिलने पर पासवर्ड दर्ज करें। बाद में उपयोग के लिए इस उपयोगकर्ता नाम और पासवर्ड को नोट कर लें।sudo mosquitto_passwd -c /etc/mosquitto/passwd ravi
- खोलें mosquitto.conf निम्न आदेश का उपयोग कर नैनो संपादक में फ़ाइल।
नैनो संपादक में निम्नलिखित कोड पेस्ट करें।sudo nano /etc/mosquitto.conf
प्रेस CTRL+X के बाद यू तथा प्रवेश करना परिवर्तनों को सहेजने के लिए।per_listener_settings true
pid_file /run/mosquitto/mosquitto.pid
persistence true
persistence_location /var/lib/mosquitto/
log_dest file /var/log/mosquitto/mosquitto.log
include_dir /etc/mosquitto/conf.d
allow_anonymous false
listener 1883
password_file /etc/mosquitto/passwd - निम्न आदेश चलाकर MQTT ब्रोकर को पुनरारंभ करें।
sudo systemctl restart mosquitto
- यह देखने के लिए कि MQTT चल रहा है या नहीं, MQTT ब्रोकर स्थिति की जाँच करें।
यदि आप उपरोक्त आउटपुट देखते हैं, तो MQTT चल रहा है।sudo systemctl status mosquitto
चरण 4: एमक्यूटीटी ब्रोकर का परीक्षण करें
यह जांचने के लिए कि एमक्यूटीटी ब्रोकर काम कर रहा है या नहीं, इंस्टॉल करें MQTTLens या क्रोम या किसी अन्य वेब ब्राउज़र में एक समान एमक्यूटीटी ऐप और इसे लॉन्च करें। रास्पबेरी पाई का आईपी पता और एमक्यूटीटी उपयोगकर्ता नाम / पासवर्ड दर्ज करें। क्लिक कनेक्शन बनाएं .
क्रोम पर पॉप अप ब्लॉकर कैसे बंद करें
में कोई भी विषय दर्ज करें सदस्यता लेने के खेत और इसी विषय में प्रकाशित करना खेत। संदेश क्षेत्र में 'Hi' या कुछ भी टाइप करें और क्लिक करें प्रकाशित करना .
यदि आप सदस्यता के तहत संदेश देखते हैं, तो MQTT ब्रोकर ठीक काम कर रहा है।
चरण 5: नोड-रेड स्थापित करें
Node-RED के साथ, आप अपने स्मार्ट डिवाइस पर संदेश प्रकाशित कर सकते हैं या पेलोड भेज और प्राप्त कर सकते हैं। इस पेलोड का उपयोग स्मार्ट उपकरणों को चालू/बंद करने या सेंसर से डेटा (जैसे तापमान) प्राप्त करने के लिए ट्रिगर करने के लिए किया जा सकता है। आप अपने वेब ब्राउज़र का उपयोग Node-RED में ऐसे प्रवाह बनाने और अपने स्मार्ट उपकरणों को नियंत्रित करने के लिए कर सकते हैं।
नोड-रेड को स्थापित करने के लिए, टर्मिनल विंडो में निम्न कमांड निष्पादित करें।
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
यह आपके रास्पबेरी पाई पर नोड-रेड को डाउनलोड और इंस्टॉल करेगा। इसे पूरा होने में कुछ समय लग सकता है। एक बार नोड-रेड स्थापित हो जाने के बाद, आपको निम्न कमांड चलाकर एक नोड-रेड सेटिंग्स फ़ाइल बनाने की आवश्यकता है।
node-red admin init
फिर इन चरणों का पालन करें:
- दबाएं प्रवेश करना चाभी।
- क्या आप उपयोगकर्ता सुरक्षा सेट करना चाहते हैं? चुनना हाँ . एक उपयोगकर्ता नाम और एक पासवर्ड दर्ज करें। इसे सुरक्षित रखें क्योंकि इसका उपयोग वेब इंटरफेस के माध्यम से लॉग इन करने और नोड-रेड को प्रबंधित करने के लिए किया जाएगा।
- चुनना पूर्ण पहुँच .
- आप कोई अन्य उपयोगकर्ता जोड़ सकते हैं या चुन सकते हैं नहीं आगे बढ़ने के लिए।
- चुनना नहीं जब परियोजना सुविधाओं को सक्षम करने के लिए कहा गया।
- प्रेस प्रवेश करना .
- पासफ़्रेज़ टाइप करें और इसे सुरक्षित रखें।
- चुनना पूर्व निर्धारित विषय > मोनाको (डिफ़ॉल्ट) .
- चुनना नहीं जब बाहरी नोड्स लोड करने के लिए कहा गया।
एक बार यह हो जाने के बाद, नोड-रेड को पुनरारंभ करें।
node-red restart
अब आप जा सकते हैं योर-रास्पबेरी-पाई-आईपी:1880 Node-RED एडमिन पैनल को खोलने और लॉग इन करने के लिए वेब ब्राउज़र में।
एनवीडिया ड्राइवरों को कैसे पुनर्स्थापित करें विंडोज़ 10
अब आप Node-RED में प्रवाह बना सकते हैं। नीचे एक नोड-रेड प्रवाह का एक उदाहरण है जिसका उपयोग हम अपने WS2812B 8x32 मैट्रिक्स डिस्प्ले को चलाने के लिए करते हैं जो वास्तविक समय में हमारे घर में स्थापित विभिन्न सेंसर जानकारी दिखाता है।
आरंभ करने के लिए, आप यह भी कर सकते हैं MAX7219 डॉट मैट्रिक्स का उपयोग करके एक DIY स्मार्ट घड़ी बनाएं , और उस पर टेक्स्ट या संदेश प्रदर्शित करने के लिए इसे अपने MQTT सर्वर से कनेक्ट करें।
MQTT और Node-RED का उपयोग करके होम ऑटोमेशन सक्षम करें
अब आप अपने MQTT-सक्षम स्मार्ट होम डिवाइस को नियंत्रित या मॉनिटर करने के लिए प्रवाह बना सकते हैं। आप DIY Tasmota स्मार्ट स्विच या Arduino- आधारित स्मार्ट सेंसर, और MQTT नियंत्रण वाले अन्य स्मार्ट डिवाइस भी बना सकते हैं और इस MQTT और Node-RED सर्वर के साथ उनका उपयोग कर सकते हैं। आप अपने स्मार्टफोन MQTT क्लाइंट से प्राप्त घटनाओं, समय या पेलोड के आधार पर होम ऑटोमेशन के लिए प्रवाह बना सकते हैं।
अपने एंड्रॉइड स्मार्टफोन पर, आप अपने एमक्यूटीटी ब्रोकर से कनेक्ट करने के लिए एमक्यूटीटी डैश इंस्टॉल कर सकते हैं और विभिन्न विषयों से पेलोड भेज या प्राप्त कर सकते हैं जिन्हें आपके स्मार्ट डिवाइस सदस्यता लेते हैं या प्रकाशित करते हैं।