- पूर्व-आवश्यकताएं:
- कार्य अवधारणा:
- ESP8266 के लिए Arduino IDE कार्यक्रम:
- सर्किट आरेख और हार्डवेयर:
- पोर्ट आपके ESP8266 IP अग्रेषित कर रहा है:
- मोनी एंड्रॉइड एप्लिकेशन इंस्टॉल करना:
- IFTTT सेवा का उपयोग करके Apple बनाना:
- परियोजना का परीक्षण:
एक और रोमांचक परियोजना में आपका स्वागत है, जिसमें हम ESP8266 वाई-फाई मॉड्यूल का उपयोग करके एक वॉयस कंट्रोल्ड होम ऑटोमेशन सिस्टम का निर्माण करेंगे , जहाँ आप अपने वॉइस का उपयोग करके अपने होम एसी उपकरणों को नियंत्रित कर सकते हैं , हालाँकि दुनिया में कहीं से भी एंड्रॉइड ऐप। हां, केवल एक वॉयस कमांड का उपयोग करके चालू या बंद करने के लिए अपने भार (लाइट / प्रशंसक) बनाने का आपका सपना इस परियोजना के अंत में साकार होने जा रहा है। यह परियोजना होम ऑटोमेशन के लिए हमारी पिछली परियोजना स्मार्ट जंक्शन बॉक्स की भिन्नता है जहां हमने नेटवर्क पर वेबसर्वर का उपयोग करके घरेलू उपकरणों को नियंत्रित किया है।
यह आईओटी आधारित वॉइस कंट्रोल्ड होम ऑटोमेशन प्रोजेक्ट बनाने में सुपर आसान है और इसमें आपको ज्यादा खर्च नहीं करना पड़ता है क्योंकि इसके लिए आपको किसी भी तरह के वॉयस मॉड्यूल को खरीदने की आवश्यकता नहीं होती है। पूरी परियोजना को बनाने में मुझे लगभग 500INR (8 USD) लगे। इसके अलावा यह एक माइक्रोकंट्रोलर स्वतंत्र परियोजना है, जिसका अर्थ है कि आपको Arduino या रास्पबेरी पाई जैसे किसी MCU / MP की आवश्यकता नहीं है। पूरी परियोजना ईएसपी 8266 मॉड्यूल पर चलती है। यहां ESP8266 के बारे में अधिक जानें। तो, चलिए बात शुरू करते हैं…।
पहले हमने विभिन्न तकनीकों का उपयोग करके कई प्रकार के होम ऑटोमेशन को कवर किया है:
- DTMF आधारित होम ऑटोमेशन
- Arduino का उपयोग करके जीएसएम आधारित होम ऑटोमेशन
- Arduino का उपयोग करके पीसी नियंत्रित होम ऑटोमेशन
- 8051 का उपयोग कर ब्लूटूथ नियंत्रित होम ऑटोमेशन
- IR रिमोट Arduino का उपयोग करके होम ऑटोमेशन नियंत्रित करता है
- MATLAB और Arduino का उपयोग करके घर स्वचालन परियोजना
- रास्पबेरी पाई का उपयोग करके आरएफ रिमोट नियंत्रित एल ई डी
- स्मार्ट फोन Arduino का उपयोग कर होम ऑटोमेशन नियंत्रित करता है
पूर्व-आवश्यकताएं:
यह परियोजना ESP8266 का उपयोग करते हुए होम ऑटोमेशन के लिए हमारी पिछली परियोजना स्मार्ट जंक्शन बॉक्स की एक निरंतरता है, इसलिए अधिकांश हार्डवेयर भाग को पहले से ही उस ट्यूटोरियल में कवर किया गया है। कृपया यह पढ़ें कि इससे आगे बढ़ने से पहले मैं उस ट्यूटोरियल में शामिल जानकारी को छोड़ दूंगा। हमारे पिछले प्रोजेक्ट का एक छोटा सा पुनर्कथन देने के लिए, हमने उस ट्यूटोरियल में एक जंक्शन बॉक्स (एक्सटेंशन बोर्ड) को संशोधित किया, जिसमें दो रिले और ESP8266 मॉड्यूल वाले एक परफेक्ट बोर्ड को कंसोल किया जा सकता था। ईएसपी 8266 (एक वेब सर्वर के रूप में कार्य करके) द्वारा बनाए गए वेबपेज का उपयोग करके दो रिले (एसी लोड) को स्विच किया जा सकता है। इस ट्यूटोरियल में मैं इसमें कुछ फीचर्स जोड़ने जा रहा हूं ताकि हम स्मार्ट फोन के माध्यम से वॉइस कमांड का उपयोग करके एसी लोड को भी नियंत्रित कर सकें।हम इस ट्यूटोरियल में हार्डवेयर भाग को कवर नहीं करेंगे और कोड पिछले ट्यूटोरियल की तरह ही रहेगा।
यह जानने के लिए कि www.IFTTT.com का उपयोग कैसे करें, आपको इस परियोजना में एक ऊपरी हाथ देगा। यदि आप IFTTT से परिचित नहीं हैं, तो कोई चिंता नहीं है कि मैं इसे इस विशेष ट्यूटोरियल के लिए उपयोग करने का तरीका बताऊंगा ताकि आप इसे काम कर सकें।
कार्य अवधारणा:
मुझे लगता है कि आपने पिछले ट्यूटोरियल को पढ़ा है, उस स्थिति में अब आपको पता होना चाहिए कि उस जंक्शन बॉक्स का निर्माण कैसे करें और अपने वेब ब्राउज़र से दूरस्थ रूप से लोड कैसे करें। इसे संभव बनाने के लिए हमने अपना IP पता ESP8266 को सार्वजनिक रूप से उपलब्ध कराया है। यह "पोर्ट अग्रेषण तकनीक" के साथ किया जा सकता है। फिर अपने Android / IPhone मोबाइल डिवाइस पर "मोनी" नामक एक मोबाइल एप्लिकेशन इंस्टॉल करें। यह एप्लिकेशन हमारे भाषण को पहचान लेगा और IFTT Apple को सूचना का संचार करेगा जो निर्माता वेब हुक के माध्यम से लोड को नियंत्रित करेगा।
यह थोड़ा थकाऊ लग सकता है, लेकिन इन सभी चीजों को इस ट्यूटोरियल में स्पष्ट रूप से समझाया गया है और मुझे विश्वास है कि कुछ क्लिकों के साथ उपरोक्त सभी बनाया जा सकता है। यह ट्यूटोरियल आपको चित्र और वीडियो की सहायता से सर्वोत्तम तरीके से संभव बनाने में मदद करेगा। इस ट्यूटोरियल के अंत में, आप दुनिया में कहीं से भी अपनी आवाज के माध्यम से अपने घरेलू उपकरणों को चालू या बंद कर पाएंगे। चेक पूर्ण कोड और डेमो वीडियो ट्यूटोरियल के अंत में।
16x2 एलसीडी पर रास्पबेरी पाई और वॉयस टाइपिंग का उपयोग करके वॉयस नियंत्रित रोशनी की भी जांच करें।
ESP8266 के लिए Arduino IDE कार्यक्रम:
पिछली परियोजना की तरह ही हम अपने ESP8266 मॉड्यूल को Arduino IDE की मदद से प्रोग्राम करने जा रहे हैं। कार्यक्रम में थोड़ा संशोधन किया गया है। यह संशोधन इसलिए किया जाता है ताकि आपका ESP8266 राउटर के साथ संबंध स्थापित करने पर हर बार एक निरंतर आईपी पते से जुड़े। कार्यक्रम इन चार लाइनों को छोड़कर पिछले कोड के समान ही है
// एक निरंतर आईपी प्राप्त करें आईपीएड्रेस आईपी (192, 168, 0, 104); // यह मेरे ईएसपी मॉड्यूल का आईपी होना चाहिए आईपीएड्रेस गेटवे (192, 168, 0, 1); // सेट-अप गेटवे आपके नेटवर्क से मेल खाने के लिए गेटवे डिफ़ॉल्ट रूप से Serial.print (F ("स्थैतिक आईपी को इनस्टॉल करके") के समान होगा;); Serial.println (ip); IPAddress सबनेट (255, 255, 255, 0); // सेटनेट मास्क अपने नेटवर्क से मेल करने के लिए WiFi.config (आईपी, गेटवे, सबनेट);
यहां, IPAddress आईपी (192, 168, 0, 104) के स्थान पर; आप वांछित आईपी पता दर्ज करें। इस स्थिति में मेरा ESP हर समय 192.168.0.104 से जुड़ा रहेगा और मैं केवल अपने ब्राउज़र में इस IP का उपयोग करके इसे एक्सेस कर सकता हूं। इस ट्यूटोरियल के अंत में दिया गया पूरा कोड।
सर्किट आरेख और हार्डवेयर:
इस IoT आधारित वॉयस नियंत्रित होम अप्लायंसेज के लिए स्कैमैटिक्स और हार्डवेयर हमारी पिछली स्मार्ट जंक्शन परियोजना के समान हैं और मैंने योजनाबद्ध तरीके से समझाया है कि कृपया इसके माध्यम से जाएं। यहां आप संदर्भ के लिए पूर्ण योजनाबद्ध देख सकते हैं:
पोर्ट आपके ESP8266 IP अग्रेषित कर रहा है:
पहला कदम अपने राउटर (मॉडेम) में पोर्ट फॉरवर्डिंग को सक्षम करना है ताकि आप अपने सार्वजनिक आईपी दर्ज करके, दुनिया में कहीं से भी अपने ईएसपी तक पहुंच सकें। जब भी हमारा ESP8266 हमारे घर / कार्यालय के राउटर से जुड़ता है तो उसे एक विशिष्ट IP पता दिया जाएगा और इस IP पते का उपयोग वेब ब्राउज़र के माध्यम से ESP8266 तक पहुंचने के लिए किया जाता है। यह IP पता आपके होम / ऑफिस नेटवर्क के भीतर प्रतिबंधित है, जिसका अर्थ है कि आप इसे विश्व स्तर पर एक्सेस नहीं कर सकते हैं; इसे केवल उन उपकरणों द्वारा एक्सेस किया जा सकता है जो आपके राउटर से जुड़े हैं। पोर्ट फ़ॉरवर्डिंग वह तकनीक है जिसके माध्यम से हम इस वेबपेज को विश्व स्तर पर लोड कर सकते हैं। पोर्ट फॉरवर्ड करने के बाद आप दुनिया में कहीं से भी इस वेबपेज को एक्सेस करने के लिए अपने सार्वजनिक आईपी का उपयोग कर सकते हैं । सही शांत लगता है !! आइए देखें कि हम इसे कैसे पूरा कर सकते हैं। ऐसा करने के लिए आप पहले से जानते हैं।
1. निर्माता का नाम और आपके राउटर का आईपी पता। यह राउटर को देखकर आसानी से पाया जा सकता है। स्टिकर पर आईपी पते का भी उल्लेख किया जाएगा। यदि Google आपके रूटर्स आईपी को नहीं जानता है।
2. अपने राउटर लॉगिन पेज का उपयोगकर्ता नाम और पासवर्ड। अधिकांश राउटर का उपयोगकर्ता नाम "एडमिन" और पासवर्ड "एडमिन" होगा।
3. आपके ESP8266 मॉड्यूल को आवंटित आईपी पता। यह वह पता है जिसका उपयोग आप ईएसपी मॉड्यूल के वेबपेज तक पहुंचने के लिए करते हैं।
4. आपके इंटरनेट सेवा प्रदाता का आईपी पता (सार्वजनिक आईपी पता)। यह केवल Goggling "मेरा आईपी क्या है" द्वारा पाया जा सकता है।
एक बार जब आपके पास सब कुछ हाथ में हो तो आप आगे पोर्ट करने के लिए नीचे दिए गए चरणों का पालन कर सकते हैं, यदि आप नीचे दिए गए टिप्पणी अनुभाग का उपयोग करने के लिए कुछ पाने के लिए फंस गए हैं। मैं तुमहारी मदद करूँगी।
चरण 1: अपने रूटर के आईपी पते का उपयोग करके अपने रूटर्स वेब-प्रबंधन उपयोगिता पृष्ठ पर लॉगिन करें, आम तौर पर यह 192.168.1.1 है। मेरी स्क्रीन नीचे इस तरह दिखाई देगी
चरण 2: डिफ़ॉल्ट रूप से उपयोगकर्ता नाम "व्यवस्थापक" दर्ज करें और डिफ़ॉल्ट रूप से पासवर्ड "व्यवस्थापक" और लॉगिन पर क्लिक करें। आपको उपयोगिता पृष्ठ पर ले जाया जाएगा जो नीचे कुछ इस तरह दिखेगा।
अधिकांश जानकारी जो आप यहाँ देख रहे हैं वह बहुत गोपनीय है इसलिए उन्हें किसी अन्य अज्ञात के साथ साझा न करें जिससे आप इंटरनेट सुरक्षा को जोखिम में डाल सकते हैं।
चरण 3: जैसा कि आपके पृष्ठ के ऊपर दिखाया गया है, बाईं ओर नीचे सूचीबद्ध सभी विकल्प होंगे। हमारा उद्देश्य "वर्चुअल सर्वर" नाम कुछ खोजना है। मेरे पास अग्रेषण विकल्प के तहत मेरा सूचीबद्ध है। अधिकांश राउटरों ने उन्हें 6, 7 या 8 वें विकल्प (ज्यादातर डीएचसीपी सेटिंग के नीचे) के रूप में सूचीबद्ध किया होगा । इसे ढूंढें और उस पर क्लिक करें
चरण 4: अब आपको हमारे आईपी को अग्रेषित करने के लिए ईएसपी मॉड्यूल और पोर्ट नंबर के लिए आवंटित आईपी पता दर्ज करना होगा। मेरे मामले में मुझे Add new पर क्लिक करना है और उन विवरणों को दर्ज करना है। यह आपके लिए थोड़ा अलग हो सकता है। आईपी पता वह है जिसका उपयोग आप अपने ईएसपी मॉड्यूल के वेबपेज तक पहुंचने के लिए करते हैं। पोर्ट नंबर आपकी पसंद का हो सकता है लेकिन हमें सरलता के उद्देश्य से "80" का उपयोग करने दें। मेरे ESP8266 मॉड्यूल को आवंटित आईपी 192.168.0.104 है और इसलिए मेरा अग्रेषण नीचे कुछ दिखाई देगा:
चरण 5: अब हमें अपना सार्वजनिक आईपी पता जानना होगा। आप "मेरी आईपी क्या है" के लिए यह मेरी गॉग्लिंग पा सकते हैं। आपके ISP IP को अत्यधिक गोपनीय रखा जाना चाहिए। इस ट्यूटोरियल के लिए हम यह मान लें कि मेरा IP पता 987: 654: 321: 123 है, मैं इसे अपने बाकी ट्यूटोरियल के लिए ISP IP के रूप में उपयोग करूंगा।
नोट: आप ISP ने आपको स्टेटिक / डायनेमिक आईपी प्रदान किया होगा, यदि यह एक डायनामिक आईपी है तो आपका आईपी मॉडेम या राउटर के हर रिस्टार्ट के साथ बदल जाएगा। उस स्थिति में आपको DynDNS जैसी किसी चीज़ का उपयोग करना होगा। लेकिन, यह इस ट्यूटोरियल के दायरे से बाहर है। यहां तक कि अगर यह एक गतिशील आईपी है, तो यह आपके लिए तब तक काम करेगा जब तक आप राउटर को रीसेट नहीं करते।
यह है कि हमारा पोर्ट फ़ॉरवर्डिंग सफल है, हम अपने ब्राउज़र में ISP IP: portname (987: 654: 321: 123: 80) दर्ज करके जाँच कर सकते हैं कि ईएसपी वेबपेज लोड हुआ है या नहीं। अगर सब कुछ उम्मीद के मुताबिक हो जाता है, तो अब आपको अपने आईएसपी आईपी पते का उपयोग करके दुनिया भर में कहीं से भी भार उठाने में सक्षम होना चाहिए।
मोनी एंड्रॉइड एप्लिकेशन इंस्टॉल करना:
मोनी एक एप्लीकेशन है जो Android, Windows, iTunes और यहां तक कि Skype के लिए उपलब्ध है। आप इस एप्लिकेशन को अपने मोबाइल पर डाउनलोड कर सकते हैं। Moni.ai में आपकी वॉइस कमांड का जवाब देने के अलावा और भी बहुत सी क्षमताएं हैं जो अत्यधिक डेवलपर के अनुकूल हैं और आप जल्दी से बातचीत को नेत्रहीन रूप से परिभाषित कर सकते हैं, और सेवाओं से जुड़ सकते हैं। मोनी.आई नोड-रेड नामक एक एप्लिकेशन का उपयोग करता है, जिसके उपयोग से आप आसानी से वॉयस चैनल बना सकते हैं और अपने बिजनेस / प्रोजेक्ट्स के लिए अपना स्वयं का Chabot (AI) सिस्टम बना सकते हैं और इसे अपनी प्राकृतिक भाषा के साथ स्वचालित कर सकते हैं। सबसे अच्छी बात यह है कि मोनी गैर-व्यावसायिक उपयोग के लिए पूरी तरह से स्वतंत्र है।
मैं एक एंड्रॉइड फोन का उपयोग कर रहा हूं और इसलिए मैं सीधे Google play store से मोनी को डाउनलोड करता हूं। अपना निःशुल्क खाता बनाने और उसमें साइन इन करने के बाद, आपके ऐप को नीचे कुछ इस तरह दिखना चाहिए:
आप इसे किसी भी अन्य वर्चुअल सहायक की तरह उपयोग कर सकते हैं, जैसे कि मौसम, समय आदि के लिए पूछना, लेकिन जो अतिरिक्त है वह यह है कि यह आपके आईफेट सेवा द्वारा बनाए गए एप्लेट्स का जवाब दे सकता है। आइए देखते हैं कि अब अपने एप्लिकेशन के लिए Applets कैसे बनाएं।
IFTTT सेवा का उपयोग करके Apple बनाना:
हम इस परियोजना को पूरा करने से एक कदम दूर हैं। अंतिम चरण IFTTT वेबसाइट में Applets को बनाना है। यह वह जगह है जहां हम अपने मोनी को अलग-अलग वॉयस कमांड के लिए निर्देश देते हैं कि वे घर पर विभिन्न घरेलू उपकरणों को नियंत्रित करें।
मैं नीचे दिए गए वीडियो में दिखाए गए अनुसार मेरे एक्वेरियम लोड (लाइट / फिल्टर) को चालू करने के लिए इस वॉयस नियंत्रित जंक्शन बॉक्स का उपयोग कर रहा हूं । इसलिए मैं एप्लेट को उस आवश्यकता के लिए अनुकूलित कर रहा हूं जिसे आप अपने उद्देश्य के लिए अनुकूलित कर सकते हैं। नीचे दिए गए चरणों का पालन करें:
चरण 1: www.IFTTT.com पर जाएं और अपने खाते से लॉगिन करें। अगर नया है तो साइनअप।
चरण 2: अब "खोज" पर क्लिक करें और मेक वेबहूक में टाइप करें। इसे चुनें और "कनेक्ट" पर क्लिक करें। इससे जुड़ने के लिए चरणों का पालन करें।
चरण 3: अब फिर से "खोजें" पर क्लिक करें और मोनी में टाइप करें। मोनी का चयन करें और "कनेक्ट" पर क्लिक करें। कनेक्शन सक्षम करने के लिए अपने IFTTT खाते के साथ लॉगिन करें।
चरण 4: हम "निर्माता Webhooks" और "मोनी" सेवाओं से जुड़े हैं। अब आपको इन सेवाओं के साथ एक एप्लेट बनाते हैं। My Applets और फिर "New Applet" पर क्लिक करें। आपको कुछ इस तरह से देखना चाहिए:
इस स्क्रीन में आपको "इस" पर क्लिक करना है और "मोनी" का चयन करना है। फिर "मोनी से कोई कार्य करने के लिए कहें" पर क्लिक करें, आपको स्क्रीन के नीचे ले जाया जाएगा।
चरण 5: उपरोक्त छवि में भरे गए विवरणों को भरें। यहाँ मेरा काम मेरी एक्वेरियम लाइट्स (लोड 1) को चालू करना है जब मैं कहता हूँ कि "एक्वेरियम लाइट्स चालू करें"। फिर "ट्रिगर बनाएं" पर क्लिक करें
चरण 6: आपको "यदि यह है तो" स्क्रीन पर वापस ले जाया जाएगा। अब, "उस" पर क्लिक करें और "मेकर वेबहुक" में टाइप करें और इसे चुनें। फिर "वेब अनुरोध करें" पर क्लिक करें। आपको नीचे स्क्रीन पर ले जाया जाएगा
यह एक महत्वपूर्ण कदम है जहाँ आप गलतियाँ करने की सबसे अधिक संभावना है। इस पृष्ठ में केवल वह URL दर्ज करें जिसे आप लोड करना चाहते हैं। मेरे मामले में मैं स्विच 1 से जुड़े लोड को चालू करना चाहता हूं इसलिए लाइन http: // 987: 654: 321: 123 / स्विच 1 ऑन का उपयोग किया जाता है, आपको अपने आईपी को अपने सार्वजनिक आईपी पते से बदलने की आवश्यकता है। यह तभी काम करेगा जब आपने पिछले ट्यूटोरियल में मेरे कोड का उपयोग किया हो। लोड टॉगल करने के लिए URL की पूरी सूची नीचे दी गई है।
यूआरएल |
कार्यक्रम से कीवर्ड |
कार्य |
http: // 987: 654: 321: 123 / स्विच 1 ऑन |
स्विच 1 ऑन |
GPIO_0 को उच्च बनाया गया है, इस प्रकार लोड 1 चालू किया गया |
http: // 987: 654: 321: 123 / switch1Off |
स्विच १ऑफ |
GPIO_0 कम बनाया गया है, इस प्रकार बंद लोड 1 को चालू किया गया |
http: // 987: 654: 321: 123 / switch2On |
स्विच 2 ओ |
GPIO_2 को उच्च बनाया गया है, इस प्रकार लोड 2 को चालू किया गया |
http: // 987: 654: 321: 123 / switch2Off |
स्विच 2 ओफ़ |
GPIO_2 को निम्न बनाया गया है, इस प्रकार 1 लोड को बंद किया गया |
एक बार जब आप वांछित URL दर्ज कर लेते हैं, तो "कार्रवाई बनाएँ" पर क्लिक करें। इसके बाद फिनिश पर क्लिक करें। इसी तरह आप हमारे जंक्शन बॉक्स में दोनों लोड को चालू / बंद करने के लिए 4 Apple बना सकते हैं।
वह यह है कि आप एप्लेट कार्रवाई के लिए तैयार हैं और यह "मेरे एप्लेट्स" के तहत दिखाई देना चाहिए जैसा कि नीचे दिखाया गया है।
हमारे कोड का परीक्षण करने का समय ……।
परियोजना का परीक्षण:
अंत में हम अपने प्रोजेक्ट के साथ तैयार हैं। आइए हम इसका परीक्षण करते हैं। इसे पावर करें और अपने मोबाइल फोन में मोनी एप्लिकेशन खोलें। माइक्रोफोन आइकन पर क्लिक करें और कमांड बोलें। मेरे मामले में यह "एक्वेरियम लाइट्स चालू करें" और इसे "ओके" के साथ उत्तर देना चाहिए और रोशनी चालू करना चाहिए। चेक पूर्ण कोड और नीचे वीडियो डेमो ।
आशा है कि आपको यह परियोजना पसंद आई और इसे काम मिल गया। यदि आप कहीं फंस गए हैं, तो नीचे टिप्पणी अनुभाग का उपयोग करें और मैं निश्चित रूप से आपकी मदद करूंगा। तब तक एक और दिलचस्प परियोजना के साथ मिलेंगे जब तक आप बने रहेंगे।
हमारे अन्य IoT आधारित प्रोजेक्ट्स भी यहाँ देखें।