- प्रयुक्त हार्डवेयर घटक:
- प्रोग्रामिंग ESP-01 मॉड्यूल CP2102 USB-TTL कनवर्टर का उपयोग कर:
- CP2102 मॉड्यूल के साथ ESP-01 का कनेक्शन:
- एलेक्सा होम ऑटोमेशन के लिए ईएसपी -01 मॉड्यूल का प्रोग्रामिंग
- सर्किट आरेख
- होम ऑटोमेशन के लिए Amazon Alexa App सेटअप करें
अमेज़ॅन इको या Google होम जैसे स्मार्ट स्पीकर आजकल लोकप्रिय हो रहे हैं और दोनों में स्मार्ट स्पीकर का उपयोग करके किसी भी उपकरण को नियंत्रित करने के लिए कस्टम कौशल या कार्रवाई को एकीकृत करने की क्षमता है। हमने पहले रास्पबेरी पाई और एलेक्सा का उपयोग करके अपने स्वयं के स्मार्ट स्पीकर का निर्माण किया, और इस रास्पबेरी पाई स्मार्ट स्पीकर का उपयोग करके घरेलू उपकरणों को भी नियंत्रित किया।
होम ऑटोमेशन आजकल बहुत आम हो गया है और लोग अपने घर में सब कुछ स्वचालित करने के लिए IoT का उपयोग कर रहे हैं। यहाँ इस ट्यूटोरियल हम एक रियल अमेज़न इको का उपयोग करेगा वक्ता डॉट और के लिए एक कस्टम कौशल बनाने के एसी घरेलू उपकरणों को नियंत्रित रोशनी, पंखे, टीवी, सॉकेट की तरह एक अमेज़न इको डॉट अध्यक्ष का उपयोग कर । यहां हम इको डॉट स्पीकर को एसी उपकरणों से जोड़ने के लिए Arduino UNO और एक ESP8266-01 वाई-फाई मॉड्यूल का उपयोग करेंगे। इस ट्यूटोरियल के बाद, आप एलेक्सा के किसी भी उपकरण को नियंत्रित करने में सक्षम होंगे।
प्रयुक्त हार्डवेयर घटक:
- Arduino UNO
- ईएसपी -01 मॉड्यूल
- अमेज़न एलेक्सा इको डॉट
- CP2102 USB-TTL कनवर्टर
- ब्रेड बोर्ड
- 5V रिले मॉड्यूल
- एसी उपकरण
- जम्परों
प्रोग्रामिंग ESP-01 मॉड्यूल CP2102 USB-TTL कनवर्टर का उपयोग कर:
यहां ESP-01 को CP2102 USB-TTL कनवर्टर का उपयोग करके प्रोग्राम किया गया है; इसे Arduino UNO बोर्ड का उपयोग करके भी प्रोग्राम किया जा सकता है। यहाँ मेरे मामले में, मैंने एक CP2102 मॉड्यूल का उपयोग किया है और ऐसा करने के चरणों के बारे में नीचे बताया गया है।
ईएसपी -01 मॉड्यूल
ESP8266 ESP-01 एक वाई-फाई मॉड्यूल है जो IoT अनुप्रयोगों को डिजाइन करने में बहुत लोकप्रिय है और इसका उपयोग Arduino UNO जैसे माइक्रोकंट्रोलर्स को इंटरनेट से जुड़ने की अनुमति देने के लिए किया जाता है। यह मॉड्यूल एक चिप (एसओसी) पर एक स्व-निहित प्रणाली है जो एक छोटे कंप्यूटर की तरह काम कर सकता है। यह एक पूर्व-स्थापित एटी फर्मवेयर के साथ आता है, इसलिए हम इसे Arduino IDE का उपयोग करके प्रोग्राम कर सकते हैं। आप लिंक का पालन करके Arduino IDE का उपयोग करके ESP-01 वाई-फाई ट्रांसीवर और इसकी प्रोग्रामिंग के बारे में अधिक जान सकते हैं।
पिन विवरण:
वीसीसी: ईएसपी -01 का बिजली आपूर्ति पिन जिसे 3.3 वी डीसी के साथ आपूर्ति की जा सकती है
GND: ESP-01 का ग्राउंड संदर्भ पिन
TXD: UART ट्रांसमीटर पिन के रूप में उपयोग किया जाता है
RXD: UART रिसीवर पिन के रूप में उपयोग किया जाता है
RESET: इसका उपयोग मॉड्यूल को रीसेट करने के लिए किया जाता है और यह एक सक्रिय LOW पिन है।
CH_PD: यह चिप इनेबल पिन है जो एक सक्रिय हाई पिन है।
GPIO0: यह पिन दो उद्देश्यों को पूरा करता है। एक सामान्य प्रयोजन इनपुट / आउटपुट के रूप में है और दूसरा ESP-01 के प्रोग्रामिंग मोड को सक्षम करने के लिए है
GPIO2: यह एक सामान्य उद्देश्य इनपुट / आउटपुट पिन है।
CP2102 मॉड्यूल के साथ ESP-01 का कनेक्शन:
नीचे दिया गया आंकड़ा CP2102 USB-TTL कनवर्टर के पिनआउट आरेख को दर्शाता है । ESP-01 मॉड्यूल को नीचे दी गई तालिका के अनुसार CP2102 USB-TTL कनवर्टर मॉड्यूल से कनेक्ट करें।
ईएसपी -01 मॉड्यूल |
CP2102 मॉड्यूल |
वीसीसी |
3.3 |
GND |
GND |
RXD |
TXD |
TXD |
RXD |
CH_PD |
3.3 |
रीसेट |
कोई कनेक्शन नहीं |
जीपीआईओ ० |
GND |
GPIO2 |
कोई कनेक्शन नहीं |
उपरोक्त कनेक्शन के सफल समापन के बाद, सर्किट को नीचे जैसा कुछ दिखना चाहिए:
फिर प्रोग्रामिंग के लिए CP2102 मॉड्यूल को हमारे पीसी से कनेक्ट करें। ईएसपी -01 को कोड अपलोड करने से पहले, पहले संचार पोर्ट की जांच करें। इसके लिए start-> पर जाएं और डिवाइस मैनेजर को खोजें। इसके बाद COMs और पोर्ट्स पर क्लिक करें। इस विकल्प के तहत हमें USB पोर्ट के साथ एक COM-TTL कनवर्टर नाम " सिलिकॉन लैब CP21xx USB-UART ब्रिज " जैसा होना चाहिए, जैसा कि नीचे दी गई छवि में दिखाया गया है:
उपरोक्त चरणों के सफल समापन के बाद, Arduino IDE खोलें और टूल मेनू से " जेनेरिक ESP8266 मॉड्यूल " के रूप में बोर्ड चुनें और COM पोर्ट का चयन करें जो हमें पिछले चरण में मिला था।
एलेक्सा होम ऑटोमेशन के लिए ईएसपी -01 मॉड्यूल का प्रोग्रामिंग
इस परियोजना के अंत में पूरा कोड दिया गया है। यहां उस कोड का स्टेपवाइज स्पष्टीकरण दिया गया है जिसे ESP-01 मॉड्यूल पर अपलोड किया जाना है। पहला कदम सभी आवश्यक पुस्तकालयों को शामिल करना है। आप यहाँ से “fauxmoESP.h” लाइब्रेरी को लिंक से डाउनलोड कर सकते हैं।
# अकेला छोड़ दो
इस चरण में, हमें उन सभी क्रेडेंशियल्स को परिभाषित करना होगा जो ईएसपी -01 को इंटरनेट से जोड़ने के लिए आवश्यक हैं। कार्यक्रम में अपने नेटवर्क एसएसआईडी और पासवर्ड डेटा को अपडेट करें।
#define SSID "*******" # दिव्यांग पास "*******"
अगला उन उपकरणों के नाम को परिभाषित करता है, जिन्हें हमें एलेक्सा से नियंत्रित करने की आवश्यकता है। मेरे मामले में, मैंने अपने डिवाइस का नाम " बेडरूम लाइट ", " बेडरूम फैन " और " स्मार्ट सॉकेट " के रूप में लिया है ।
# डेफिन डिवाइस 1 "बेडरूम लाइट" # डेफिन डिवाइस 2 "बेडरूम फैन" # डेफिन डिवाइस 3 "स्मार्ट लॉकेट"
फ़ंक्शन WiFi.mode का उपयोग स्टेशन मोड के रूप में ESP-01 मॉड्यूल को स्थापित करने के लिए किया जाता है और फ़ंक्शन WiFi.begin का उपयोग ESP-01 मॉड्यूल को इंटरनेट से जोड़ने के लिए किया जाता है जो नेटवर्क के SSID और पासवर्ड को अपने तर्कों के रूप में लेता है।
WiFi.mode (WIFI_STA); WiFi.begin (ssid, पास);
अगला भाग फ़ाक्समो वर्ग के सभी फ़ंक्शंस को आरंभ करना है जैसे सर्वर बनाना, एलेक्सा डिवाइस के लिए पोर्ट नंबर को सक्षम करना, डिवाइस को सक्षम करना आदि। इसके बाद fauxmo.addDevice जो हमने पहले बनाया है, का उपयोग करके सभी डिवाइस जोड़ें ।
fauxmo.createServer (सच); fauxmo.setPort (80); fauxmo.enable (सच); fauxmo.addDevice (डिवाइस 1); fauxmo.addDevice (device2); fauxmo.addDevice (डिवाइस 3);
अगला, पूर्वनिर्धारित डिवाइस नामों के साथ हमारे वॉइस कमांड की तुलना करने के लिए एक फ़ंक्शन लिखें । यदि कमांड मेल खाता है, तो Serial.print का उपयोग करके Arduino सीरियल टर्मिनलों के लिए एक चरित्र भेजें ।
fauxmo.onSetState ((अहस्ताक्षरित char device_id, const char * device_name, bool state, unsigned char value) {if (strcmp (device_name, device1) == 0) {if (राज्य) Serial.print ("1"); अन्य सीरियल छाप ("2");}}
में शून्य पाश () समारोह, fauxmo.handle समारोह सिर्फ एलेक्सा से आने वाले डेटा के लिए जाँच करेगा और उसका उपयोग करना कार्यवाही करेंगे onSetstate () समारोह।
शून्य लूप () {fauxmo.handle (); }
अब ESP-01 मॉड्यूल के अंत में दिए गए पूर्ण कोड को अपलोड करें और सफल अपलोडिंग के लिए सुनिश्चित करें।
Arduino कोड:
उसके बाद, यह Arduino में कोड अपलोड करने का समय है। Arduino के लिए कोड बहुत सरल है। यह केवल अपने UART टर्मिनलों के माध्यम से ESP-01 मॉड्यूल से भेजे गए वर्णों को प्राप्त करता है और इसे रिले पर टर्न ऑन / ऑफ सिग्नल भेजने के लिए तुलना करता है। Arduino के लिए पूरा कार्यक्रम नीचे दिखाया गया है:
चार डेटा; शून्य सेटअप () {Serial.begin (115200); पिनमोड (7, OUTPUT); पिनमोड (6, बाहर); पिनमोड (5, बाहर); digitalWrite (7, LOW); digitalWrite (6, LOW); digitalWrite (5, LOW); } शून्य लूप () {अगर (सीरियल। उपलब्ध ()> ०) {डेटा = सीरियल.डर (); Serial.print (डेटा); Serial.print ("\ n"); if (data == '1') digitalWrite (7, उच्च); और अगर (डेटा == '2') digitalWrite (7, LOW); अगर (डेटा == '3') डिजिटलवाइट (6, उच्च); और अगर (डेटा == '4') डिजिटलराइट (6, कम); और अगर (डेटा == '5') डिजिटलवाइट (5, हाई); अगर (डेटा == '6') डिजिटलवाइट (5, LOW); }}
सफल अपलोडिंग के बाद, Arduino के लिए कोड, अगला नीचे दिए गए योजना के अनुसार हार्डवेयर को जोड़ता है।
सर्किट आरेख
एलेक्सा का उपयोग करके होम ऑटोमेशन के लिए सर्किट आरेख नीचे दिखाया गया है:
यहां हमने एक परफ़ॉर्मर पर सभी घटकों को मिलाया है ताकि यह Arduino ढाल के रूप में कार्य करे।
इसी प्रकार, हमने एक परफ़ॉर्मबोर्ड पर एक रिले मॉड्यूल भी बनाया है:
होम ऑटोमेशन के लिए Amazon Alexa App सेटअप करें
हार्डवेयर सेटअप और कोडिंग के सफल समापन के बाद, अब एलेक्सा एंड्रॉइड ऐप को स्थापित करने का समय आ गया है। सबसे पहले, हमें इस ऐप के माध्यम से किसी भी आस-पास के स्मार्ट उपकरणों की खोज करने की आवश्यकता है। ऐसा करने के लिए अपने एलेक्सा उपकरण को चालू करें और फिर अपना एलेक्सा ऐप खोलें और विकल्प " डिवाइसेस " पर क्लिक करें और फिर "+" चिह्न पर क्लिक करें जो आपको " डिवाइस जोड़ें " से पूछता है । फिर " डिवाइस जोड़ें " पर क्लिक करें, डिवाइस के प्रकार में " अन्य " पर क्लिक करें और फिर खोज उपकरणों का चयन करें। फिर आपके एलेक्सा ऐप को उस डिवाइस की खोज करनी चाहिए जिसमें 45 सेकंड तक का समय लग सकता है।
नोट: वैकल्पिक रूप से हम भी आवाज आदेश का उपयोग उपकरणों की खोज कर सकते हैं " एलेक्सा, उपकरणों की खोज "
डिवाइस की खोज पूरी होने के बाद, आपको नाम से 3 नए डिवाइस मिलने चाहिए जो हमने कोड में दिए हैं। मेरे मामले में, ये बेडरूम लाइट , बेडरूम फैन और स्मार्ट सॉकेट हैं । अब सेटअप परीक्षण के लिए तैयार है, बस " एलेक्सा, बेडरूम लाइट चालू करें " कहकर परीक्षण करें और यह आपकी प्रतिक्रिया "ओके" कहकर वापस कर देना चाहिए, और प्रकाश चालू होना चाहिए। इसी तरह, हम अन्य सभी कमांड के लिए परीक्षण कर सकते हैं।
इस तरह से अमेज़न इको डॉट नियंत्रित घरेलू उपकरणों के लिए पूरा सेटअप दिखेगा:
ESP-01 के लिए एक प्रदर्शन वीडियो के साथ पूरा कोड नीचे दिया गया है।