- المتطلبات المسبقة:
- مفهوم العمل:
- برنامج Arduino IDE لـ ESP8266:
- مخطط الدائرة والأجهزة:
- منفذ إعادة توجيه ESP8266 IP الخاص بك:
- تثبيت تطبيق Moni Android:
- إنشاء تطبيقات صغيرة باستخدام خدمة IFTTT:
- اختبار المشروع:
مرحبًا بكم في مشروع آخر مثير حيث سنبني نظام أتمتة منزلي متحكم فيه صوتيًا باستخدام وحدة ESP8266 Wi-Fi ، حيث يمكنك التحكم في أجهزة التيار المتردد المنزلي باستخدام صوتك من خلال تطبيق Android من أي مكان في العالم. نعم ، سوف يتحقق حلمك في جعل الأحمال الخاصة بك (الضوء / المراوح) للتشغيل أو الإيقاف بمجرد استخدام أمر صوتي في نهاية هذا المشروع. هذا المشروع هو نسخة مختلفة من مشروعنا السابق Smart Junction Box لأتمتة المنازل حيث قمنا بالتحكم في الأجهزة المنزلية باستخدام خادم الويب عبر الشبكة.
إن مشروع أتمتة المنزل الذي يتم التحكم فيه بالصوت الذي يعتمد على IOT سهل للغاية ولا يكلفك الكثير لأنه لا يتطلب منك شراء أي وحدات صوتية باهظة الثمن. استغرق المشروع بأكمله حوالي 500 روبية هندية (8 دولارات أمريكية) لبنائه. هذا أيضًا مشروع مستقل عن وحدة التحكم الدقيقة ، مما يعني أنك لست بحاجة إلى أي MCU / MP مثل Arduino أو Raspberry pi. يعمل المشروع بأكمله على وحدة ESP8266. تعرف على المزيد حول ESP8266 هنا. لذا ، دعونا نبدأ الحديث….
في السابق قمنا بتغطية العديد من أنواع أتمتة المنزل باستخدام تقنيات مختلفة مثل:
- أتمتة المنزل القائم على DTMF
- أتمتة المنزل على أساس GSM باستخدام Arduino
- أتمتة المنزل المتحكم به بواسطة الكمبيوتر الشخصي باستخدام Arduino
- التحكم الآلي بالمنزل عن طريق البلوتوث باستخدام 8051
- التحكم الآلي بالمنزل عن بعد بالأشعة تحت الحمراء باستخدام Arduino
- مشروع أتمتة المنزل باستخدام MATLAB و Arduino
- RF المصابيح التي يتم التحكم فيها عن بعد باستخدام Raspberry Pi
- التحكم الآلي بالمنزل عن طريق الهاتف الذكي باستخدام Arduino
المتطلبات المسبقة:
هذا المشروع هو استمرار لمشروعنا السابق Smart Junction Box for Home Automation باستخدام ESP8266 لذلك تمت تغطية معظم أجزاء الأجهزة بالفعل في هذا البرنامج التعليمي. يرجى قراءة ذلك قبل المتابعة مع هذا لأنني سأتخطى المعلومات المشمولة في هذا البرنامج التعليمي. لإعطاء ملخص صغير عن مشروعنا السابق ، قمنا بتعديل صندوق التوصيل (لوحة التمديد) في هذا البرنامج التعليمي والذي يمكنه التحكم في لوحة Perf تتكون من مرحلتين ووحدة ESP8266. يمكن تبديل المرحلتين (أحمال التيار المتردد) باستخدام صفحة ويب تم إنشاؤها بواسطة ESP8266 (من خلال العمل كخادم ويب). في هذا البرنامج التعليمي ، سأضيف بعض الميزات إليه حتى نتمكن أيضًا من التحكم في أحمال التيار المتردد باستخدام الأمر الصوتي من خلال الهاتف الذكي.لن نغطي أي جزء من أجزاء الجهاز في هذا البرنامج التعليمي ، ستظل الأجهزة والرمز كما هو في البرنامج التعليمي السابق.
ستمنحك أيضًا معرفة كيفية استخدام www.IFTTT.com اليد العليا في هذا المشروع. إذا لم تكن معتادًا على IFTTT ، فلا داعي للقلق ، فسأشرح كيفية استخدامه لهذا البرنامج التعليمي المعين حتى تتمكن من تشغيله.
مفهوم العمل:
أفترض أنك قد قرأت البرنامج التعليمي السابق ، وفي هذه الحالة الآن يجب أن تعرف كيفية إنشاء مربع التوصيل هذا وكيفية تبديل الأحمال عن بُعد من متصفح الويب الخاص بك. لجعل هذا ممكنًا ، قمنا بإتاحة عنوان IP الخاص بنا المخصص لـ ESP8266 بشكل عام. يمكن القيام بذلك باستخدام "تقنية إعادة توجيه المنفذ". ثم قم بتثبيت تطبيق جوال يسمى "Moni" على جهازك المحمول الذي يعمل بنظام Android / IPhone. سيتعرف هذا التطبيق على كلامنا وينقل المعلومات إلى تطبيقات IFTT الصغيرة التي بدورها ستتحكم في الأحمال من خلال Maker Web hooks.
قد يبدو الأمر مملاً بعض الشيء ، ولكن تم شرح كل هذه الأشياء بوضوح في هذا البرنامج التعليمي وثق بي بنقرات قليلة يمكن إجراء كل ما سبق. سيساعدك هذا البرنامج التعليمي بأفضل طريقة ممكنة بمساعدة الصور ومقاطع الفيديو. في نهاية هذا البرنامج التعليمي ، ستتمكن من تشغيل أو إيقاف تشغيل أجهزتك المنزلية من خلال صوتك من أي مكان في العالم. تحقق من الكود الكامل والفيديو التجريبي في نهاية البرنامج التعليمي.
تحقق أيضًا من الأضواء التي يتم التحكم فيها بالصوت باستخدام Raspberry Pi والكتابة الصوتية على شاشة LCD مقاس 16 × 2.
برنامج Arduino IDE لـ ESP8266:
تمامًا كما في المشروع السابق ، سنقوم ببرمجة وحدة ESP8266 الخاصة بنا بمساعدة Arduino IDE. يوجد تعديل طفيف تم إجراؤه في البرنامج. يتم إجراء هذا التعديل بحيث يتصل ESP8266 بعنوان IP ثابت في كل مرة يقوم فيها بإنشاء اتصال مع جهاز التوجيه. البرنامج هو بالضبط نفس الكود السابق باستثناء هذه الأسطر الأربعة
// احصل على عنوان IP ثابت في كل مرة IPAddress ip (192 ، 168 ، 0 ، 104) ؛ // يجب أن يكون هذا هو عنوان IP لبوابة IP لوحدة ESP الخاصة بي (192 ، 168 ، 0 ، 1) ؛ // set gateway لمطابقة شبكتك ، ستكون معظم البوابة هي نفسها افتراضيًا Serial.print (F ("Setting static ip to:")) ؛ Serial.println (ip) ؛ الشبكة الفرعية IPAddress (255 ، 255 ، 255 ، 0) ؛ // تعيين قناع الشبكة الفرعية لمطابقة شبكة WiFi.config (IP ، البوابة ، الشبكة الفرعية) ؛
هنا ، في مكان IPAddress ip (192 ، 168 ، 0 ، 104) ؛ أدخل عنوان IP الذي تريده. في هذه الحالة ، سيتم توصيل ESP الخاص بي بـ 192.168.0.104 طوال الوقت ويمكنني ببساطة الوصول إليه باستخدام عنوان IP هذا في المتصفح الخاص بي. الكود الكامل المعطى في نهاية هذا البرنامج التعليمي.
مخطط الدائرة والأجهزة:
المخططات والأجهزة للأجهزة المنزلية التي يتم التحكم فيها بالصوت والتي تعتمد على إنترنت الأشياء هي نفسها مثل مشروع Smart Junction السابق وقد شرحت التخطيطي هناك ، لذا تفضل بتصفحه. هنا يمكنك رؤية المخطط الكامل للرجوع إليه:
منفذ إعادة توجيه ESP8266 IP الخاص بك:
تتمثل الخطوة الأولى في تمكين إعادة توجيه المنفذ في جهاز التوجيه (المودم) الخاص بك بحيث يمكنك الوصول إلى ESP الخاص بك من أي مكان في العالم ، فقط عن طريق إدخال عنوان IP العام الخاص بك. عندما يتصل ESP8266 بجهاز التوجيه المنزلي / المكتبي الخاص بنا ، سيتم إعطاؤه عنوان IP فريدًا وسيتم استخدام عنوان IP هذا للوصول إلى ESP8266 من خلال متصفح الويب. عنوان IP هذا مقيد داخل شبكة منزلك / مكتبك ، مما يعني أنه لا يمكنك الوصول إليه عالميًا ؛ لا يمكن الوصول إليه إلا من خلال الأجهزة المتصلة بجهاز التوجيه الخاص بك. إعادة توجيه المنفذ هي التقنية التي يمكننا من خلالها تحميل صفحة الويب هذه عالميًا. بعد إعادة توجيه المنفذ ، يمكنك استخدام عنوان IP العام للوصول إلى صفحة الويب هذه من أي مكان في العالم. يبدو رائعًا حقًا !! دعونا نرى كيف يمكننا إنجاز هذا. للقيام بذلك ، تعرف ما يلي مسبقًا.
1. اسم الشركة المصنعة وعنوان IP لجهاز التوجيه الخاص بك. يمكن العثور على هذا بسهولة من خلال النظر إلى جهاز التوجيه. سيتم أيضًا ذكر عنوان IP على الملصق. إذا لم يكن Google لمعرفة IP الخاص بك الموجهات.
2. اسم المستخدم وكلمة المرور لصفحة تسجيل الدخول إلى أجهزة التوجيه الخاصة بك. سيكون لدى معظم أجهزة التوجيه اسم مستخدم باسم "admin" وكلمة مرور باسم "admin".
3. عنوان IP المخصص لوحدة ESP8266 الخاصة بك. هذا هو العنوان الذي تستخدمه للوصول إلى صفحة الويب الخاصة بوحدة ESP.
4. عنوان IP الخاص بمزود خدمة الإنترنت (عنوان IP العام). يمكن العثور على هذا ببساطة عن طريق Goggling "ما هو عنوان IP الخاص بي".
بمجرد أن يكون لديك كل شيء في متناول اليد ، يمكنك اتباع الخطوات أدناه لإعادة توجيه المنفذ ، إذا واجهتك مشكلة في العثور على شيء ما ، استخدم قسم التعليقات أدناه. سوف اساعدك.
الخطوة 1: قم بتسجيل الدخول إلى صفحة الأداة المساعدة لإدارة الويب الخاصة بجهاز التوجيه الخاص بك باستخدام عنوان IP الخاص بجهاز التوجيه الخاص بك ، وعمومًا يكون 192.168.1.1. ستبدو شاشتي هكذا أدناه
الخطوة 2: أدخل اسم المستخدم "admin" افتراضيًا وكلمة المرور "admin" افتراضيًا وانقر فوق تسجيل الدخول. سيتم نقلك إلى صفحة الأداة المساعدة التي ستبدو مثل هذا أدناه.
معظم المعلومات التي تراها هنا سرية للغاية ، وبالتالي لا تشاركها مع أي شخص آخر غير معروف قد تخاطر به بأمان الإنترنت.
الخطوة 3: كما هو موضح أعلاه ، ستحتوي صفحتك على جميع الخيارات المدرجة في الجزء السفلي الأيسر. هدفنا هو العثور على شيء اسمه "الخوادم الافتراضية". لدي مدرج ضمن خيار إعادة التوجيه. سوف يكون معظم أجهزة التوجيه لهم على النحو الوارد في 6 أو 7 أو 8 تشرين الخيار (في الغالب أقل من إعداد DHCP). ابحث عنها وانقر عليها
الخطوة 4: الآن عليك إدخال عنوان IP المخصص لوحدة ESP ورقم المنفذ لإعادة توجيه IP الخاص بنا. في حالتي ، يجب علي النقر فوق إضافة جديد وإدخال هذه التفاصيل. قد يكون الأمر مختلفًا قليلاً بالنسبة لك. عنوان IP هو العنوان الذي تستخدمه للوصول إلى صفحة الويب الخاصة بوحدة ESP الخاصة بك. يمكن أن يكون رقم المنفذ من اختيارك ولكن دعنا نستخدم "80" لغرض التبسيط. عنوان IP المخصص لوحدة ESP8266 الخاصة بي هو 192.168.0.104 ، وبالتالي فإن إعادة التوجيه الخاصة بي ستبدو شيئًا ما أدناه:
الخطوة 5: الآن علينا أن نعرف عنوان IP العام الخاص بنا. يمكنك أن تجد هذا Goggling الخاص بي لـ "What is my IP". يجب أن يظل عنوان IP الخاص بموفر خدمة الإنترنت في غاية السرية. من أجل هذا البرنامج التعليمي ، دعنا نفترض أن عنوان IP الخاص بي هو 987: 654: 321: 123 سأستخدم هذا باعتباره IP ISP الخاص بي لبقية البرنامج التعليمي الخاص بي.
ملاحظة: ربما يكون مزود خدمة الإنترنت قد زودك بعنوان IP ثابت / ديناميكي ، إذا كان عنوان IP ديناميكيًا ، فسيتغير عنوان IP الخاص بك مع كل إعادة تشغيل للمودم / جهاز التوجيه. في هذه الحالة عليك استخدام شيء مثل DynDNS. لكن هذا خارج نطاق هذا البرنامج التعليمي. حتى لو كان عنوان IP ديناميكيًا ، فسوف يعمل من أجلك طالما لم تقم بإعادة تعيين جهاز التوجيه.
هذا هو نجاح إعادة توجيه المنفذ لدينا ، يمكننا التحقق من ذلك عن طريق إدخال ISP IP: portname (987: 654: 321: 123: 80) في متصفحنا والتحقق مما إذا كانت صفحة ويب ESP يتم تحميلها. إذا سارت الأمور كما هو متوقع ، يجب أن تكون قادرًا الآن على تبديل الأحمال من أي مكان في العالم باستخدام عنوان IP الخاص بموفر خدمة الإنترنت.
تثبيت تطبيق Moni Android:
Moni هو تطبيق متاح لأنظمة Android و Windows و iTunes وحتى Skype. يمكنك تنزيل هذا التطبيق على هاتفك المحمول. يتمتع Moni.ai بقدرات أكثر بكثير من مجرد الاستجابة لأوامرك الصوتية ، فهو سهل للغاية للمطورين ويمكنك بسرعة تحديد المحادثات بصريًا والاتصال بالخدمات. يستخدم Moni.ai تطبيقًا يسمى Node-Red يمكنك من خلاله بسهولة إنشاء قناة صوتية وإنشاء نظام Chabot (AI) الخاص بك لعملك / مشاريعك وتشغيله تلقائيًا بلغتك الطبيعية. أفضل شيء هو أن Moni مجاني تمامًا للاستخدام غير التجاري.
أنا أستخدم هاتف Android ومن ثم أقوم بتنزيل Moni مباشرة من متجر Google play. بعد التثبيت ، قم بإنشاء حسابك المجاني وتسجيل الدخول إليه ، يجب أن يبدو التطبيق الخاص بك كما يلي:
يمكنك استخدام هذا مثل أي مساعد افتراضي آخر ، مثل السؤال عن الطقس والوقت وما إلى ذلك. ولكن ما هو إضافي هو أنه يمكنه الاستجابة لتطبيقاتك التي أنشأتها خدمة Ifttt الخاصة بك. دعنا نرى كيفية إنشاء تطبيقات صغيرة لتطبيقك الآن.
إنشاء تطبيقات صغيرة باستخدام خدمة IFTTT:
نحن على بعد خطوة واحدة من استكمال هذا المشروع. الخطوة الأخيرة هي إنشاء التطبيقات الصغيرة في موقع IFTTT على الويب. هذا هو المكان الذي نوجه فيه Moni لأوامر صوتية مختلفة للتحكم في الأجهزة المنزلية المختلفة في المنزل.
أنا أستخدم صندوق التقاطع هذا للتحكم الصوتي لتبديل أحمال حوض السمك الخاص بي (الضوء / الفلتر) كما هو موضح في الفيديو أدناه. ومن ثم أقوم بتخصيص التطبيق الصغير لهذا المطلب يمكنك تخصيصه لغرضك. اتبع الخطوات التالية:
الخطوة 1: قم بزيارة www.IFTTT.com وقم بتسجيل الدخول باستخدام حسابك. إذا كان جديدًا ثم سجل الاشتراك.
الخطوة 2: انقر الآن على "بحث" واكتب Make Webhooks. حدده وانقر على "اتصال". اتبع الخطوات للتواصل معه.
الخطوة 3: الآن انقر مرة أخرى على "بحث" واكتب Moni. حدد Moni وانقر على "اتصال". تسجيل الدخول باستخدام حساب IFTTT الخاص بك لتمكين الاتصال.
الخطوة 4: لقد قمنا بالاتصال بخدمات "Maker Webhooks" و "Moni". الآن يمكنك إنشاء تطبيق صغير مع هذه الخدمات. انقر فوق تطبيقاتي الصغيرة ثم "تطبيق صغير جديد". يجب أن نرى شيئا من هذا القبيل:
في هذه الشاشة ، عليك النقر فوق "هذا" واختيار "Moni". ثم انقر فوق "اطلب من Moni تنفيذ إجراء" سيتم نقلك إلى الشاشة أدناه.
الخطوة 5: املأ التفاصيل كما ملأت الصورة أعلاه. مهمتي هنا هي تشغيل مصابيح حوض السمك (تحميل 1) عندما أقول "تشغيل مصابيح حوض السمك". ثم انقر فوق "إنشاء مشغل"
الخطوة 6: ستتم إعادتك إلى شاشة "إذا كانت هذه". الآن ، انقر فوق "ذلك" واكتب "Maker Webhooks" وحدده. ثم انقر فوق "تقديم طلب ويب". سيتم نقلك إلى الشاشة أدناه
هذه خطوة مهمة حيث من المرجح أن ترتكب أخطاء. في هذه الصفحة فقط أدخل عنوان URL الذي تريد تحميله. في حالتي ، أريد تشغيل الحمل المتصل بالمحول 1 ومن ثم يتم استخدام السطر http: // 987: 654: 321: 123 / switch1On ، فأنت بحاجة إلى استبدال IP الخاص بي بعنوان IP العام الخاص بك. لن يعمل هذا إلا إذا كنت قد استخدمت الكود الخاص بي في البرنامج التعليمي السابق. القائمة الكاملة لعناوين URL لتبديل الأحمال مذكورة أدناه.
URL |
كلمة رئيسية من البرنامج |
عمل |
http: // 987: 654: 321: 123 / switch1On |
التبديل 1 تشغيل |
تم جعل GPIO_0 مرتفعًا ، وبالتالي تشغيل التحميل 1 |
http: // 987: 654: 321: 123 / switch1Off |
التبديل 1 إيقاف |
تم جعل GPIO_0 منخفضًا ، وبالتالي تم إيقاف التحميل 1 |
http: // 987: 654: 321: 123 / switch2On |
Switch2On |
تم جعل GPIO_2 مرتفعًا ، وبالتالي تشغيل الحمل 2 |
http: // 987: 654: 321: 123 / switch2Off |
Switch2Off |
تم جعل GPIO_2 منخفضًا ، وبالتالي تم إيقاف التحميل 1 |
بمجرد إدخال عنوان URL المطلوب ، انقر فوق "إنشاء إجراء". ثم انقر فوق "إنهاء". وبالمثل ، يمكنك إنشاء 4 تطبيقات صغيرة لتشغيل / إيقاف كل من الأحمال في صندوق التوصيل الخاص بنا.
هذا هو أنت الصغير جاهز للعمل ويجب أن يظهر تحت "تطبيقاتي الصغيرة" كما هو موضح أدناه.
حان الوقت لاختبار الكود الخاص بنا…….
اختبار المشروع:
أخيرًا نحن جاهزون بمشروعنا. دعونا نختبرها. قم بتشغيله وافتح تطبيق Moni في هاتفك المحمول. انقر على أيقونة الميكروفون وانطق الأمر. في حالتي هو "تشغيل أضواء حوض السمك" ويجب أن يتحول الرد بعلامة "موافق" وتشغيل الأضواء. تحقق من الكود الكامل والفيديو التوضيحي أدناه.
آمل أن تكون قد أحببت المشروع وعملت عليه. إذا كنت عالقًا في مكان ما ، فاستخدم قسم التعليقات أدناه وسأساعدك بالتأكيد. سوف ألتقي بكم مع مشروع آخر مثير للاهتمام حتى ذلك الحين ترقبوا.
تحقق أيضًا من مشاريعنا الأخرى القائمة على إنترنت الأشياء هنا.