विषयसूची:

ईएसपी-नाउ होम ऑटोमेशन Esp8266 रास्पबेरी पाई एमक्यूटीटी: 4 कदम
ईएसपी-नाउ होम ऑटोमेशन Esp8266 रास्पबेरी पाई एमक्यूटीटी: 4 कदम

वीडियो: ईएसपी-नाउ होम ऑटोमेशन Esp8266 रास्पबेरी पाई एमक्यूटीटी: 4 कदम

वीडियो: ईएसपी-नाउ होम ऑटोमेशन Esp8266 रास्पबेरी पाई एमक्यूटीटी: 4 कदम
वीडियो: Esp8266 Best IoT 16Ch Relay Home Automation #shorts 2024, नवंबर
Anonim
ESP-अब होम ऑटोमेशन Esp8266 रास्पबेरी पाई MQTT
ESP-अब होम ऑटोमेशन Esp8266 रास्पबेरी पाई MQTT

इस निर्देशयोग्य में मैं आपको दिखाता हूं कि मैंने अपने होम ऑटोमेशन में ESP-NOW का उपयोग कैसे किया। योजनाबद्ध में आप संचार प्रवाह देख सकते हैं

मैं तुम्हें दिखाता हूं:

  • प्रेषक कैसे काम करता है
  • रिसीवर कैसे काम करता है
  • रास्पबेरी पाई के साथ धारावाहिक संचार कैसे काम करता है

मैं यह नहीं दिखाता कि एमक्यूटीटी और मेरा होम ऑटोमेशन कैसे काम करता है, आप उसके लिए अन्य अच्छे निर्देश पा सकते हैं।

क्रेडिट: यह निर्देशयोग्य इससे प्रेरित था:

वीडियो #172 एंड्रियास स्पाइस द्वारा

www.esploradores.com/practica-6-conexion-es…

चरण 1: वाईफाई और एमक्यूटीटी के माध्यम से बैक-अप

वाईफाई और एमक्यूटीटी के माध्यम से बैक-अप
वाईफाई और एमक्यूटीटी के माध्यम से बैक-अप

मुझे पता चला कि ईएसपी-नाउ बेहद तेज और काफी विश्वसनीय है, लेकिन कभी-कभी विफल हो जाता है। अपने कार्यक्रम में मैंने सामान्य वाईफाई और एमक्यूटीटी कनेक्शन के माध्यम से बैक-अप जोड़ा।

चरण 2: रिमोट / प्रेषक

रिमोट/प्रेषक
रिमोट/प्रेषक
रिमोट/प्रेषक
रिमोट/प्रेषक
रिमोट/प्रेषक
रिमोट/प्रेषक
रिमोट/प्रेषक
रिमोट/प्रेषक

पहली योजना में आप देखते हैं कि प्रेषक का कार्यक्रम कैसे काम करता है:

  1. Esp8266 पावर अप या रीसेट से शुरू होता है
  2. ESP-Now को इनिशियलाइज़ किया गया है
  3. मॉड्यूल एक निर्धारित समय के लिए ईएसपी-नाउ भेजता है
  4. मॉड्यूल जांचता है कि कॉल-बैक फ़ंक्शन में रिसीवर द्वारा ईएसपी-नाउ संदेश प्राप्त हुआ था या नहीं।

    1. यदि ईएसपी-नाउ संदेश प्राप्त हुआ था, तो मॉड्यूल कम शक्ति वाली गहरी नींद में चला जाता है
    2. यदि ईएसपी-नाउ संदेश प्राप्त नहीं हुआ था, तो मॉड्यूल एक वाईफाई कनेक्शन और एक एमक्यूटीटी कनेक्शन को बैक-अप कनेक्शन के रूप में शुरू करता है।

प्रेषक के लिए कार्यक्रम मेरे Github (Master_sender.ino) में है। कार्यक्रम एमक्यूटीटी होम ऑटोमेशन के लिए विषय और संदेश दोनों को एक संयुक्त ईएसपी-नाउ संदेश में भेजता है, जो रिसीवर पर एक आसान विभाजन के लिए '&' चिह्न पर संयुक्त होता है।

मैंने दो अलग-अलग रिमोट/प्रेषक बनाए:

प्रेषक 1: esp8266 गहरी नींद में है और एक रीसेट द्वारा सक्रिय है। जब मॉड्यूल किया जाता है तो बटन में एलईडी रोशनी होती है और मंद हो जाती है। यदि बैटरी का वोल्टेज कम है, तो एलईडी झपकाती है। यदि ईएसपी-नाउ विफल हो जाता है, तो वाईफाई/एमक्यूटीटी कनेक्शन में बदलने से पहले एलईडी ब्लिंक हो जाती है। Esp8266 एक LiPo बैटरी से HT7333 वोल्टेज नियामक के साथ 3.3V. तक संचालित होता है

प्रेषक 2: esp8266 बंद है और बटन दबाकर संचालित है। आम तौर पर ईएसपी-नाउ कनेक्शन 'क्लिक' बटन के बाद किया जाता है। Esp8266 सीधे लीपो बैटरी से संचालित होता है। मुझे नहीं पता कि पूरी तरह चार्ज बैटरी (4.2 वी तक) के उच्च वोल्टेज से esp8266 क्षतिग्रस्त हो जाता है, जब यह केवल कुछ 100 एमएस पर संचालित होता है। यह स्पेक्स (3.0 - 3.6V) से अधिक है।

नोट: यदि बैटरी की शक्ति कम है, तो ESP-NOW विफल हो जाता है।

चरण 3: रिसीवर - हार्डवेयर (esp8266 और रास्पबेरी पाई)

रिसीवर - हार्डवेयर (esp8266 और रास्पबेरी पाई)
रिसीवर - हार्डवेयर (esp8266 और रास्पबेरी पाई)
रिसीवर - हार्डवेयर (esp8266 और रास्पबेरी पाई)
रिसीवर - हार्डवेयर (esp8266 और रास्पबेरी पाई)
रिसीवर - हार्डवेयर (esp8266 और रास्पबेरी पाई)
रिसीवर - हार्डवेयर (esp8266 और रास्पबेरी पाई)

रिसीवर का डिसिप्लिन दो भागों में विभाजित है:

  1. हार्डवेयर
  2. सॉफ्टवेयर

हार्डवेयर

प्राप्त esp-01 मेरे रास्पबेरी पाई ज़ीरो से जुड़ा है जो मेरा होम ऑटोमेशन सिस्टम (ओपनहैब 2) और नोड रेड चलाता है।

योजनाबद्ध में सरल कनेक्शन दिखाए गए हैं:

  • RasPi. के esp-01 से TX का RX
  • esp-01 के TX से RasPi. के RX तक
  • GND से GND
  • esp-01 VCC रास्पी के 3.3V पिन द्वारा संचालित है
  • Esp-01 पर RST और CH_PD दोनों उच्च खींचे जाते हैं।

मैंने इसे आसानी से माउंट करने के लिए एक इंटरफ़ेस कनेक्टर बनाया है

एक तस्वीर में आप मेरे रास्पबेरी पाई 3 से मेरे तार कनेक्शन देख सकते हैं (जिसमें एक ही पिनआउट है, लेकिन मैंने CH_PD से कनेक्ट करने के लिए एक और 3.3V पिन का उपयोग किया है)।

Esp-01 को प्रोग्राम किया गया था जैसा कि मेरे अन्य इंस्ट्रक्शनल में दिखाया गया है (चरण 3 देखें)।

चरण 4: रिसीवर - सॉफ्टवेयर (सीरियल, नोड रेड, एमक्यूटीटी)

रिसीवर - सॉफ्टवेयर (सीरियल, नोड रेड, एमक्यूटीटी)
रिसीवर - सॉफ्टवेयर (सीरियल, नोड रेड, एमक्यूटीटी)
रिसीवर - सॉफ्टवेयर (सीरियल, नोड रेड, एमक्यूटीटी)
रिसीवर - सॉफ्टवेयर (सीरियल, नोड रेड, एमक्यूटीटी)
रिसीवर - सॉफ्टवेयर (सीरियल, नोड रेड, एमक्यूटीटी)
रिसीवर - सॉफ्टवेयर (सीरियल, नोड रेड, एमक्यूटीटी)

Esp8266. पर कार्यक्रम

Esp-01 रिसीवर के लिए कार्यक्रम मेरे Github (Master_sender.ino) में है। कार्यक्रम वास्तव में सरल है, यह केवल प्राप्त ईएसपी-नाउ संदेश को सीरियल पोर्ट पर रास्पबेरी पाई पर प्रिंट करता है।

सीरियल पोर्ट

रास्पबेरी पाई पर, आपको सामान्य धारावाहिक संचार के लिए सीरियल पोर्ट (रास्पियन पर, 'सुडो रास्पि-कॉन्फिग' निष्पादित करें) को सक्रिय करना होगा।

सीरियल पोर्ट का नाम है:

  • रास्पबेरी पाई ज़ीरो: /dev/ttyAMA0
  • रास्पबेरी पाई 3: /dev/ttyS0

आप 'dmesg |. चलाकर सीरियल पोर्ट की जांच कर सकते हैं grep tty' या 'ls /dev'

नोड लाल

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

सीरियल नोड का आउटपुट एक फ़ंक्शन नोड द्वारा रूपांतरित होता है जो संदेश को '&' चिह्न पर विभाजित करता है और msg.topic और msg.payload सेट करता है। फ़ंक्शन के आउटपुट को mqtt आउटपुट नोड में ले जाया जाता है जो MQTT सर्वर को संदेश भेजता है। नोट करें कि mqtt नोड का विषय फ़ील्ड रिक्त है, क्योंकि विषय संदेश में सेट है।

सिफारिश की: