एमक्यूटीटी: ओपन नेटवर्क प्रोटोकॉल आणि आयओटीमध्ये त्याचे महत्त्व

एमक्यूटीटी प्रोटोकॉल नेटवर्क आयओटी

नाव लक्षात ठेवा एमक्यूटीटी, कारण हा नेटवर्क कम्युनिकेशन प्रोटोकॉल प्रकार एम 2 एम (मशीन टू मशीन) आहे जो थोडासा आवाज काढत आहे. इंग्रजी भाषेच्या परिवर्णी शब्दांबद्दल इंटरनेट ऑफ थिंग्ज किंवा आयओटी (इंटरनेट ऑफ थिंग्ज) च्या नवीन पर्वाबद्दल हे खूप लोकप्रिय आहे. याव्यतिरिक्त, हा एक खुला प्रोटोकॉल आहे, जो बरेच फायदे देते.

खरं तर, तो आयओटीच्या मध्यभागी आधारस्तंभांपैकी एक बनला आहे, कारण यासारख्या प्रसारणाची मर्यादा असलेल्या उपकरणांवर हे चांगले आहे. परिवर्णी शब्द MQTT येते संदेश रांगत टेलीमेट्री परिवहन, नेटवर्क संप्रेषणासाठी ओएएसआयएस आणि आयएसओ (आयएसओ / आयईसी 20922) चे मुक्त मानक आहे आणि जे सामान्यत: प्रसिद्ध टीसीपी / आयपीवर चालते.

नेटवर्क प्रोटोकॉल

ओएसआय मॉडेल आणि त्याचे स्तर

अगोदर निर्देश केलेल्या बाबीसंबंधी बोलताना संप्रेषण प्रोटोकॉल हे असे नियम आहेत जे दोन किंवा अधिक डिव्हाइस किंवा सिस्टमला एकमेकांशी संवाद साधण्याची परवानगी देतात. म्हणजेच सॉफ्टवेअर आणि हार्डवेअरने (किंवा दोन्ही) अंमलात आणले असले तरीही, विविध माध्यमांद्वारे आणि परिभाषित स्वरूपात माहिती प्रसारित करणे हे एक प्रोटोकॉल आहे.

El मानक प्रोटोकॉल संवादाची वैशिष्ट्ये मोठ्या संख्येने परिभाषित करते. हे सिंक्रोनाइझेशन, शब्दार्थ, वाक्यरचना, पॅकेट स्वरूप इत्यादीच्या नियमांमधून जाऊ शकते. आणि सत्य हे आहे की ते काही नगण्य नाहीत, कारण आज या प्रोटोकॉलमुळे आपण इंटरनेट आणि इतर संप्रेषण नेटवर्क वापरू शकतो ...

आणि नक्कीच, तेथे फक्त एक प्रोटोकॉल नाही, परंतु बरेच आहेत. उदाहरणार्थ, प्रसिद्ध Layerप्लिकेशन लेयरसाठी डीएनएस, एफटीपी, एमक्यूटीटी, एचटीटीपी आणि एचटीटीपीएस, आयएमएपी, एलडीएपी, एनटीपी, डीएचसीपी, एसएसएच, टेलनेट, एसएनएमपी, एसएमटीपी इ. ट्रान्सपोर्ट लेयरमध्ये तुम्हाला टीसीपी, यूडीपी इत्यादी म्हणून काही तसेच इंटरनेट लेव्हल जसे की आयपीव्ही, किंवा आयपीव्ही 4 (उपलब्ध असलेल्या आयपींची सर्वात मोठी संख्या आणि आगमनामुळे शक्य झाले आहे) शोधू शकता आयओटी), आयपीसेक, इ. आणि दुवा स्तरावरील इतर जसे की डीएसएल, इथरनेट, वायफाय, एआरपी इ.

आयओटी प्रोटोकॉल बद्दल

एमक्यूटीटी प्रोटोकॉल

निश्चितच, तेथे काही संप्रेषण प्रोटोकॉल आहेत किंवा ते लागू केले जाऊ शकतात IoT. म्हणजे, मागील भागाचा विचार केल्यास ते परिभाषित मानकांची एक मालिका असेल जेणेकरून दोन किंवा अधिक आयओटी डिव्हाइस एकमेकांना संप्रेषण करू शकतात आणि समजू शकतात आणि ते सामान्यत: एम 2 एम असतात, म्हणजे मशीन टू मशीन संप्रेषण असतात. बरीच आयओटी डिव्‍हाइसेस कनेक्‍ट केली आहेत आणि सेन्सर किंवा इतर स्रोतांकडून माहिती सामायिक करत आहेत.

मोठ्या संख्येने आयओटी उपकरणांमुळे, या प्रोटोकॉलला बँडविड्थ, वेग इत्यादींच्या मर्यादेपेक्षा जास्त आवश्यकता पूर्ण करणे आवश्यक आहे. (लक्षात ठेवा की बर्‍याच उपकरणे एम्बेड केलेली आणि स्वस्त आहेत), जे सामान्यत: काही उपकरणांमध्ये असतात. आणि मी खरं म्हणजे स्केलेबल असणे आवश्यक आहे, आवश्यक असल्यास आणि जागतिक प्रणालीवर परिणाम न करता अधिक कनेक्ट केलेले डिव्हाइस जोडण्यात सक्षम होण्यासाठी.

तसेच, त्यांच्याकडे एक असणे आवश्यक आहे कमी अवलंबन डिव्‍हाइसेस दरम्यान जोडणे, जेणेकरुन एखादे डिव्‍हाइस काढले तर समस्या निर्माण होणार नाहीत. आणि अर्थातच, त्याच वेळी, उच्च इंटरऑपरेबिलिटीची मागणी केली जाते जेणेकरून ते मोठ्या संख्येने उपकरणे आणि अत्यंत भिन्न प्रणालींसह कार्य करते, कारण आयओटीचे जग हे विलक्षण आहे.

इतर उपयुक्त वैशिष्ट्ये म्हणजे त्यांची अंमलबजावणी करणे सुलभ होते, ला सेगुरीदाद, इ. आयओटी सुरक्षेच्या दृष्टीने मोठी आव्हाने निर्माण करीत आहे हे लक्षात ठेवा. त्याहूनही अधिक, जेव्हा कनेक्ट केलेली अनेक साधने सामान्यत: विशिष्ट प्रकरणांमध्ये गंभीर असतात ... उदाहरणार्थ, अल्पवयीन मुलांसाठी खेळणी.

महत्त्वपूर्ण संकल्पना

असे म्हटले पाहिजे की आयओटीचे निराकरण सर्व कनेक्ट केलेल्या डिव्हाइसमधून संदेश प्राप्त करण्यासाठी सेंट्रलाइज्ड सर्व्हरचा वापर करते जे ऐकत असलेल्या सर्व कनेक्ट केलेल्या आयओटी डिव्हाइसवर वितरित करतात आणि वितरित करतात. तो सर्व्हर म्हणून ओळखले जाते राउटर किंवा ब्रोकर. असे काहीतरी जे काही मार्गांनी पारंपारिक क्लायंट-सर्व्हर संबंधांपासून दूर आहे.

दुसरीकडे, पद्धती आयओटीसाठी या संप्रेषण प्रोटोकॉलमध्ये आपण शोधू शकता:

  • पबसब: प्रकाशित / सुसब्राईब हा एक संदेशन नमुना आहे जेथे डिव्हाइस (सब) ब्रोकरला संदेश प्राप्त करू इच्छित असल्याची माहिती देते, तर दुसरे डिव्हाइस (पब) ब्रोकरला वाट पाहत असलेल्या इतर डिव्हाइसवर वाटप करण्यासाठी संदेश प्रकाशित करते.
  • आरआरपीसी: राउटर रीमोडर प्रक्रिया कॉल रिमोट प्रोसेस एक्जीक्यूशनची आणखी एक पद्धत आहे. त्यात, एक डिव्हाइस (कॅली) ब्रोकरला माहिती देते की ती एक विशिष्ट प्रक्रिया करेल आणि दलाल त्यास दुसर्‍या डिव्हाइसवर वितरित करतो (कॉलर) ज्यावर प्रक्रिया चालविली आहे.

आता या पद्धती किंवा पध्दती पार पाडण्यासाठी ए संदेशन पायाभूत सुविधा. आणि या अर्थाने दोन ओळखले जाऊ शकतात:

  • संदेश रांग: ब्रोकरची सदस्यता सुरू करणार्‍या सर्व ग्राहकांसाठी एकच संदेश रांग तयार केलेली संदेशन सेवा. नंतरचे संदेश क्लायंटला देण्यात येईपर्यंत ते संग्रहित ठेवतील. जर ग्राहक किंवा प्राप्तकर्ता कनेक्ट केलेला नसेल तर तो जोपर्यंत कनेक्ट केला जात नाही तोपर्यंत देखभाल केली जाते. या प्रकारच्या सेवा टेलिग्रा, व्हॉट्सअ‍ॅप, मेसेंजर इ. सारख्या इन्स्टंट मेसेजिंग अॅप्समध्ये वापरल्या गेलेल्या असतात.
  • संदेश सेवा: ही आणखी एक सेवा आहे ज्यामध्ये ब्रोकर संदेशाद्वारे संदेश पाठविणार्‍या, कनेक्ट केलेल्या प्राप्तकर्त्यास संदेश पाठवितो. जर क्लायंट किंवा प्राप्त करणारा डिव्हाइस डिस्कनेक्ट झाला असेल तर संदेश गमावले (जरी त्यात काही लॉगिंग सिस्टम असू शकते).

आयओटी प्रोटोकॉल

वरील गोष्टी पाहिल्यानंतर आता जवळून पाहूया आयओटी प्रोटोकॉल ते अधिक चांगले ज्ञात आहेत. एम 2 एम मध्ये सर्वात प्रमुख आहेत:

  • एएमक्यूपी (प्रगत संदेश क्यूइंग प्रोटोकॉल): संदेश रांगेचा एक पबसब प्रकारचा प्रोटोकॉल आहे. चांगली इंटरऑपरेबिलिटी असणे आणि विश्वसनीयता सुनिश्चित करण्यासाठी डिझाइन केलेले. कॉर्पोरेट applicationsप्लिकेशन्स, उच्च कार्यक्षमता, उच्च विलंब नेटवर्क, गंभीर इत्यादींसाठी खास
  • डब्ल्यूएएमपी (वेब ​​Messप्लिकेशन मेसेजिंग प्रोटोकॉल): हा आरआरपीसी सारख्या पबसब प्रकारचा दुसरा खुला प्रोटोकॉल आहे आणि तो वेबसोकेटवर चालतो.
  • कोप (सीमित अनुप्रयोग प्रोटोकॉल): एक खास प्रोटोकॉल आहे जो कमी क्षमता अनुप्रयोगांसाठी बनविला गेला आहे.
  • टॉम्प (स्ट्रीमिंग टेक्स्ट ओरिएंटेड मेसेजिंग प्रोटोकॉल): अगदी सोपी प्रोटोकॉल आणि जास्तीत जास्त इंटरऑपरेबिलिटी प्राप्त करण्यासाठी. मजकूर संदेश प्रेषित करण्यासाठी HTTP चा वापर केला जातो.
  • एक्सएमपीपी (एक्सटेन्सिबल मेसेजिंग अँड प्रेझन्स प्रोटोकॉल): इन्स्टंट मेसेजिंग अॅप्ससाठी आणि एक्सएमएलवर आधारित आयओटीमध्ये वापरलेला आणखी एक प्रोटोकॉल. जन हे प्रकरणही खुले आहे.
  • डब्ल्यूएमक्यू (वेबस्फेअर मेसेज रांग): आयबीएम द्वारा विकसित प्रोटोकॉल. हे संदेश रांगेच्या प्रकाराचे आहे, जसे त्याचे नाव सूचित करते आणि संदेश-देणारं आहे.
  • एमक्यूटीटी: (पुढील विभाग पहा)

एमक्यूटीटी बद्दल सर्व

एमक्यूटीटी पॅकेज

El एमक्यूटीटी प्रोटोकॉल हा मेसेज रांगेचा संप्रेषण प्रोटोकॉल आहे जो मी आधी सांगितल्याप्रमाणे पबस्ब नमुना आणि एम 2 एम प्रकाराचा अनुसरण करतो. आयओटीमध्ये याचा मोठ्या प्रमाणात वापर केला जातो आणि तो इंटरनेटवर वापरलेल्या टीसीपी / आयपी स्टॅकवर आधारित आहे.

एमक्यूटीटीच्या बाबतीत, प्रत्येक कनेक्शन उघडे ठेवले आहे आणि प्रत्येक आवश्यक संवादामध्ये त्याचा पुन्हा वापर केला जातो. इतर ज्ञात प्रोटोकॉलमध्ये जे घडते त्यापेक्षा काहीतरी वेगळे, प्रत्येक संप्रेषण होते त्यास नवीन कनेक्शनची आवश्यकता असते.

फायदे

एमओसीटीटी प्रोटोकॉलचे फायदे आयओटीसाठी एम 2 एम संप्रेषणांच्या बाबतीत अगदी स्पष्ट आहेत. वर सांगितलेल्या सर्व गोष्टी व्यतिरिक्त, हा एक प्रोटोकॉल आहे जो प्रदान करतोः

  • अधिकाधिक ग्राहकांना जोडण्यासाठी स्केलेबिलिटी.
  • कमी अवलंबित्वासाठी क्लायंट्स दरम्यान डिक्प्लिंग.
  • असिंक्रॉनिझम.
  • साधेपणा.
  • जास्त प्रमाणात स्त्रोत वापरु नये म्हणून फिकटपणा (जरी टीएलएस / एसएसएल सुरक्षेसह हे वाढत असेल).
  • बॅटरीवर अवलंबून असणार्‍या किंवा 24/7 वर कार्य करणार्‍या डिव्‍हाइसेससाठी ऊर्जा कार्यक्षम, त्यास मोठ्या बँडविड्थची आवश्यकता नसते (काही वायरलेसप्रमाणे धीमे कनेक्शनसाठी आदर्श).
  • संप्रेषणांमध्ये अधिक विश्वासार्हता आणि मजबुतीसाठी सुरक्षा आणि गुणवत्ता.

कथा

एमकेटीटी ची निर्मिती 90 च्या दशकात झाली, च्या लवकर आवृत्तीसह 1999 मध्ये प्रोटोकॉल. हे आयबीएमचे डॉ. अ‍ॅन्डी स्टॅनफोर्ड-क्लार्क आणि सिरस लिंकचे अरलन निप्पर (पूर्वी युरोटेक) यांनी तयार केले होते.

La प्रारंभिक कल्पना कार्यक्षम संप्रेषण प्रोटोकॉल (कमी बँडविड्थ उपभोग), प्रकाश आणि कमी उर्जा खर्चासह वाळवंटातून प्रवास करणा pip्या पाइपलाइनचे परीक्षण करण्यासाठी एक प्रोटोकॉल तयार करण्याचा होता. त्यावेळी ते खूप महाग होते, परंतु आता ते एक स्वस्त आणि मुक्त प्रोटोकॉल बनले आहे.

प्रारंभिक प्रोटोकॉल दिसण्यासह सुधारित केला गेला नवीन आवृत्त्या, जसे की ओएआयएसआयएस (एमआयटीटीटी व्ही ..3.1.१ (२०१)) अंतर्गत (स्ट्रक्चर्ड इन्फॉरमेशन स्टँडर्डस् Organizationडव्हान्समेंट ऑफ स्ट्रक्चरर्ड इन्फॉर्मेशन) विशिष्टता इ. आपणास हे माहित असले पाहिजे की सुरुवातीस हा आयबीएमचा मालकीचा प्रोटोकॉल होता, परंतु तो २०१० मध्ये रिलीज होईल आणि तो ओएएसआयएसमध्ये एक मानक बनला ...

एमक्यूटीटी कनेक्शन कसे कार्य करते

एमक्यूटीटी प्रोटोकॉल वापरतो एक फिल्टर, प्रत्येक क्लायंटला पाठवलेल्या संदेशांसाठी, विषय किंवा श्रेणीबद्धपणे आयोजित केलेल्या विषयांवर आधारित. अशा प्रकारे, ग्राहक विशिष्ट विषयावर संदेश पोस्ट करू शकतो. अशा प्रकारे, ते सर्व ग्राहक किंवा विषयावर सदस्यता घेतलेले कनेक्ट केलेले डिव्हाइस दलालमार्गे संदेश प्राप्त करतील.

एमसीयू प्रमाणेच, संदेश रांगेत राहतील आणि क्लायंटला हा संदेश प्राप्त होईपर्यंत ते हरवले नाहीत.

मी जसे सूचित केले आहे तसे कनेक्शन तयार केले गेले आहेत टीसीपी / आयपी मार्गे, आणि सर्व्हर किंवा ब्रोकर कनेक्ट केलेल्या क्लायंटची नोंद ठेवेल. डीफॉल्टनुसार, साधने 1883 मध्ये संप्रेषण पोर्ट क्रमांक वापरतील, जरी आपण अतिरिक्त सुरक्षिततेसाठी एसएसएल / टीएलएस वापरत असाल तर आपल्याला 8883 पोर्ट देखील सापडेल.

कनेक्शन शक्य होण्यासाठी केवळ क्लायंटच नव्हे तर सर्व्हर आणि पोर्ट देखील आवश्यक आहेत. तसेच इतर संकुल किंवा संदेश पाठविला संवाद होण्यासाठी:

  • कनेक्शन स्थापित करा: सर्व आवश्यक माहितीसह क्लायंटद्वारे पाठविलेले कनेक्शन संदेश / पॅकेट. त्या माहितीमध्ये ग्राहक आयडी, वापरकर्तानाव, संकेतशब्द इ. समाविष्ट आहे. ब्रोकर किंवा सर्व्हर कनेक्‍क पॅकेटसह प्रतिसाद देते जे क्लायंटला कनेक्शन स्वीकारले, नाकारले इत्यादीस सूचित करेल.
  • संदेश पाठवा आणि प्राप्त करा: एकदा कनेक्शन स्थापित झाल्यानंतर, पब्लिक पॅकेजेस किंवा संदेश विषयासह आणि दलालला पाठविलेल्या संदेशाचे पेलोड सह वापरले जातात. दुसरीकडे, इच्छुक ग्राहक किंवा क्लायंट सदस्यता घेण्यासाठी किंवा त्यांची सदस्यता मागे घेण्यासाठी अनुक्रमे सदस्यता आणि UNSUSCRIBE संकुल वापरतात. क्लायंटद्वारे विनंती केलेल्या ऑपरेशनच्या यशाचा अहवाल देण्यासाठी ब्रोकर अनुक्रमे सबबॅक आणि अनझबॅक पॅकेजसह प्रतिसाद देईल.
  • कनेक्शन राखत आहे: कनेक्शन उघडे राहिल्याची हमी देण्यासाठी, क्लायंट मधूनमधून सर्व्हरमधून पिंगरेसपी पॅकेटसह जुळणारे एक पिंगरेक पॅकेट पाठवू शकतात.
  • कनेक्शन संपेल: जेव्हा एखादा क्लायंट डिस्कनेक्ट होतो तो त्या घटनेचा अहवाल देण्यासाठी डिस्कनेक्ट पॅकेट पाठवितो.

त्या संदेश किंवा पॅकेजेस मी ज्याविषयी बोललो आहे त्यांची रचना इतर नेटवर्क प्रोटोकॉलच्या इतर पॅकेट्स प्रमाणेच आहे:

  • शीर्षलेख किंवा निश्चित शीर्षलेख: हा एक निश्चित भाग आहे जो 2-5 बाइट दरम्यान व्यापलेला आहे. यात एक नियंत्रण कोड, पाठविलेल्या संदेशाच्या प्रकारची आयडी आणि त्याची लांबी असते. 1-4 बाइट दरम्यान लांबी एन्कोड करण्यासाठी वापरली जाते, प्रत्येक ओक्टेटचे पहिले 7 बिट लांबीसाठी डेटा म्हणून आणि संदेशाच्या लांबीचे एकपेक्षा जास्त बाइट आहेत हे निर्धारित करण्यासाठी सातत्य अतिरिक्त वापरते.
  • व्हेरिएबल हेडर: नेहमीच अनिवार्य नसते तर वैकल्पिक असते. हे केवळ विशिष्ट परिस्थितींमध्ये किंवा विशिष्ट संदेशांमध्ये काही पॅकेजेसमध्ये असते.
  • सामग्री किंवा डेटा: पॅकेट डेटा म्हणजे ज्यामध्ये संदेश पाठवायचा असतो. ते 256 एमबी मर्यादेपर्यंत काही केबीपासून असू शकते.

जर आपल्याला जाणून घेण्यात रस असेल तर हेक्साडेसिमलमधील संबंधित कोड पाठविलेल्या संदेशांच्या प्रकारांसाठीः

मेन्जेजे कोड
कनेक्ट 0x10
संपर्क 0x20
प्रकाशित करा 0x30
सार्वजनिक करा 0x40
पब्लिक 0x50
प्रकाशित करा 0x60
pubcomp 0x70
सदस्यता घ्या 0x80
सबबॅक 0x90
सदस्यत्व रद्द करा 0xA0
सदस्यता रद्द करा 0xB0
पिंग्रेक्यू 0xC =
पिंगरेसपी 0xD0
डिस्कनेक्ट करा 0xE0

संप्रेषणाची गुणवत्ता आणि सुरक्षा

एमक्यूटीटीच्या संदेशांचा आणखी एक महत्त्वाचा तपशील म्हणजे सेवा गुणवत्ता किंवा QoS, आणि सुरक्षा. अयशस्वी झाल्यास संप्रेषण यंत्रणेची मजबुती आणि त्याची सुरक्षा यावर अवलंबून असेल.

त्याच्या गुणवत्तेबद्दल, ते निश्चित केले जाऊ शकते 3 भिन्न स्तर:

  • QoS 0 (न स्वीकारलेले)- संदेश फक्त एकदाच पाठविला गेला आहे, आणि अयशस्वी झाल्यास ते वितरित होणार नाही. जेव्हा ती गंभीर नसते तेव्हा वापरली जाते.
  • QoS 1 (पोच): ग्राहकांना वितरणाची हमी देण्यासाठी आवश्यक तितक्या वेळा संदेश पाठविला जाईल. नकारात्मक बाजू अशी आहे की क्लायंटला तोच संदेश बर्‍याच वेळा प्राप्त झाला.
  • क्यूओएस 2 (निश्चित)- वरील प्रमाणेच, परंतु फक्त एकदाच वितरणाची हमी. हे बर्‍याच गंभीर सिस्टमसाठी वापरले जाते जिथे जास्त विश्वसनीयता आवश्यक असते.

दुसरीकडे, म्हणून एमक्यूटीटी सुरक्षाया संदर्भात त्याची ताकद सुनिश्चित करण्यासाठी विविध उपायांचा वापर केला जाऊ शकतो. मी आधीच नमूद केल्याप्रमाणे, इतर बर्‍याच प्रोटोकॉलप्रमाणे, वापरकर्तानाव आणि संकेतशब्दचे प्रमाणीकरण एसएसएल / टीएलएस वापरून सुनिश्चित केले जाऊ शकते. जरी कमी क्षमता, किंवा स्त्रोत असलेल्या बर्‍याच आयओटी उपकरणांमध्ये या प्रकारच्या सुरक्षित संप्रेषणाचा वापर करताना कामाच्या ओव्हरलोडसह समस्या उद्भवू शकतात ...

या कारणास्तव, एमक्यूटीटी वापरणारे बरेच आयओटी डिव्हाइस संकेतशब्द आणि वापरकर्त्यांचा वापर करतात विमान मजकूर, ज्यामुळे एखाद्यास ते सहजतेने नेटवर्क रहदारी सुंघित करु शकेल. आणि ते पुरेसे नसल्यास, अज्ञात कनेक्शन स्वीकारण्यासाठी दलाल कॉन्फिगर केले जाऊ शकते, जे कोणत्याही वापरकर्त्यास अधिक जोखीम संप्रेषण स्थापित करण्यास अनुमती देईल.

आरडिनोसह एमक्यूटीटी वापरणे

Arduino UNO एमक्यूटीटी सह

तू नक्कीच करू शकतोस अर्दूनोसह एमक्यूटीटी प्रोटोकॉल वापरा आणि इतर विकास बोर्ड, तसेच रॅप्सबेरी पाई इ. हे करण्यासाठी, आपल्याकडे अर्डिनो बोर्ड कनेक्टिव्हिटी प्रदान करणे आवश्यक आहे, जर ते नसेल तर. तसेच, ग्रंथालय एमक्यूटीटीसाठी अर्डिनो क्लायंट हे या कामांमध्ये आपल्याला मदत करेल. हे लायब्ररी सुसंगत आहे:

आपल्याला आधीपासूनच माहित आहे की आपण आपल्या आर्डूनो आयडीई मध्ये ही आज्ञा वापरून लायब्ररी डाउनलोड आणि स्थापित करू शकता: गिट क्लोन https://github.com/knolleary/pubsubclient.git

लवकरात लवकर एमक्यूटीटी वापरण्यासाठी कोडवर काही अनुप्रयोगांमध्ये, सत्य ते सोपे आहे. फ्रिटझिंग इमेज मध्ये आपण एक पट्टिका पाहू शकता Arduino UNO अरुडिनो इथरनेटद्वारे ज्यामध्ये कनेक्टिव्हिटी जोडली गेली आहे आणि ती देखील कनेक्ट केली गेली आहे एक डीएचटी 22 आर्द्रता आणि तापमान सेन्सरजरी हे दुसरे काहीही असू शकते ...

ठीक आहे, म्हणाले त्या कोडसह, आपल्याला व्युत्पन्न करावे लागेल अर्दूनो आयडीई अर्डिनोवरील एमक्यूटीटी प्रोटोकॉलसह कार्य करण्यासाठी, हे इतके सोपे आहे:

  • परिच्छेद संदेश पाठवा एमक्यूटीटी
#include <SPI.h>
#include <Ethernet.h>
#include <PubSubClient.h>
#include <DHT.h>

#define DHTPIN 2
#define DHTTYPE DHT22

// Direccion MAC del adaptador Ethernet
byte mac[] = { 0xCE, 0xAB, 0x0E, 0x3F, 0xFE, 0xD4 };

// IP del servidor (broker)
IPAddress mqtt_server(192, 168, 1, 4);

// Topic o tema con el que se trabaja
const char* topicName = "test";

DHT dht(DHTPIN, DHTTYPE);
EthernetClient ethClient;
PubSubClient client(ethClient);

void setup()
{
  Serial.begin(9600);
  if (Ethernet.begin(mac) == 0) {
    Serial.println("Fallo en Ethernet usando DHCP");
  }
// Puerto 1883 de comunicación
  client.setServer(mqtt_server, 1883);
  dht.begin();
}

void loop()
{
  if (!client.connected()) {
    Serial.print("Conectando ...\n");
    client.connect("Cliente Arduino");
  }
  else {
    // Envío de informacion del sensor de temperatura y humedad
    float temp = dht.readTemperature();
    char buffer[10];
    dtostrf(temp,0, 0, buffer);
    client.publish(topicName, buffer);
  }
  // Tiempo entre envíos en ms (cada 10 segundos)
  delay(10000);
}

  • परिच्छेद संदेश प्राप्त करा एमक्यूटीटीद्वारे आपल्याला फक्त प्लेटची आवश्यकता आहे Arduino UNO आणि कनेक्शन, अर्दूनो इथरनेट किंवा इतर कोणत्याही घटकासह. कोडची उदाहरणे अशी असतीलः
#include <SPI.h>
#include <Ethernet.h>
#include <PubSubClient.h>

// Direccion MAC del adaptador Ethernet
byte mac[] = { 0xCE, 0xAB, 0x0E, 0x3F, 0xFE, 0xD4 };

// IP del servidor (broker)
IPAddress mqtt_server(192, 168, 1, 4);

// Topic o tema con el que trabajr
const char* topicName = "test";

EthernetClient ethClient;
PubSubClient client(ethClient);

void callback(char* topic, byte* payload, unsigned int length) {
  Serial.print("El mensaje ha llegado [");
  Serial.print(topic);
  Serial.print("] ");
  int i=0;
  for (i=0;i<length;i++) {
    Serial.print((char)payload[i]);
  }
  Serial.println();
}

void setup()
{
  Serial.begin(9600);
  if (Ethernet.begin(mac) == 0) {
    Serial.println("Fallo en Ethernet al usar configuración DHCP");
  }
  client.setServer(mqtt_server, 1883);
  client.setCallback(callback)
}

void loop()
{
  if (!client.connected()) {
      Serial.print("Conectando ...");
      if (client.connect("rece_arduino")) {
        Serial.println("conectado");
        client.subscribe(topicName);
      } else {
        delay(10000);
      }
  }
  // Cliente a la escucha
  client.loop();
}

लक्षात ठेवा आपण सर्व्हरसाठी योग्य तो आयपी बदलणे आवश्यक आहे आणि आपण आपल्या इथरनेट नेटवर्क अ‍ॅडॉप्टरचा किंवा आपण वापरत असलेला एक मॅक पत्ता तसेच आपण त्यास जुळवून घेण्याचा विचार करीत असल्यास उर्वरित कोड देखील बदलणे आवश्यक आहे. एक वेगळा प्रकल्प. हे फक्त एक उदाहरण आहे!

अधिक माहितीसाठी, आपण हे करू शकता विनामूल्य डाउनलोड करा आमच्या पीडीएफ मॅन्युअल प्रोग्रामिंग प्रारंभ करण्यासाठी आर्डूनो आयडीई कोर्ससह.


टिप्पणी करणारे सर्वप्रथम व्हा

आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.