الجمعة، 15 مارس 2019

التحكم في الاجهزة الكهربائية المنزلية عن طريق Arduino وGoogle Assistant

التحكم في الاجهزة الكهربائية المنزلية عن طريق Arduino وGoogle Assistant


يتفاعل البشر والآلات ويتواصلون مع بعضهم البعض بعدة طرق  ، فأجهزة الكمبيوتر مزودة بشاشة العرض ولوحة المفاتيح والماوس ، في حين أن الهواتف الذكية مزودة بشاشة تعمل باللمس والتحكم في الإيماءات وغيرها وحتى AR و VR . أما الأداة الأساسية التي يستخدمها البشر للتواصل هي التواصل الصوتي ، ولدينا القدرة على الاستماع والتحدث ، وإذا كانت الآلات قادرة على فعل الشيء نفسه بطريقة ما ،  فسيكون التواصل ( التواصل الصوتي) مع هذه الاجهزة أسهل وأبسط.
فحاليا الساعات الذكية ومكبرات الصوت الذكية مثل Google home و Amazon Echo وغيرها تجد طريقها ببطء إلى منازلنا والتحدث مع الآلات أصبح ببطء حقيقة واقعة. لذلك في هذا البرنامج التعليمي سوف نتعلم كيف يمكننا استخدام مساعد Google الذي يمكن الاستعانة به من هاتفك الذكي أو من Google أو المنزل الذكي للتحكم في الأضواء مثلا. 
ليس الأمر أننا كسولون للغاية ، ولكن في نهاية اليوم ، فإن الأمر يبعث على السعادة الشديدة لإنجاز الأمور فقط باستخدام الأوامر الصوتية الخاصة بنا. لذلك دعونا نبدأ.

نظرة عامة

نحن هنا سنستخدم Arduino UNO لجانب متحكم ووحدة ESP8266 للاتصال بالإنترنت. بصراحة ، هناك الكثير من الطرق الأخرى لتحقيق ذلك ؛ يمكنك استخدام معالجات أكثر قوة مثل Raspberry Pi أو SOC الأخرى مع شبكة Wi-Fi مضمنة مثل ESP12E أو ESP32. لكنني قررت أن أذهب مع المدرسة القديمة Arduino و ESP8266 لإبقاء التكلفة منخفضة وليس أكثر من هندسة أي شيء.

بالنسبة لهذا المشروع ، سنقوم أيضًا ببناء درع Arduino WiFi باستخدام ESP8266 الذي يوضع فوق لوحة Arduino UNO. يمكن استخدام هذا الدرع لبرمجة ESP8266 باستخدام أمر AT أو مباشرة باستخدام IDE Arduino. كما أن لديها الخيار لتوصيل وحدة FTDI مباشرة بـ ESP8226 والذي يسمح ببرمجة ESP8266 كجهاز قائم بذاته بدون Arduino وأيضًا إلى تثبيت برنامج ثابت جديد في وحدة ESP8266 إذا لزم الأمر. لذلك يمكن استخدام الدرع للعديد من مشاريع Arduino الإبداعية الأخرى التي تتطلب اتصال بالإنترنت.
للتواصل مع مساعد Google على هاتفنا المحمول ، استخدمنا خدمات IFTTT ، التي تقوم بتكوين المساعد للاستماع إلى أمر معين وإطلاق رابط إذا تم استلام الأمر. الآن ، وكما تعلمون ، يمكن لـ ESP8266 قراءة المعلومات من الإنترنت فقط من خلال مكالمات واجهة برمجة التطبيقات ، لذلك نحن بحاجة إلى نظام أساسي يمكنه تزويدنا بخيار واجهة برمجة التطبيقات هذا حيث يأتي ThingSpeak. في الأساس ، يغير الأمر الصوتي الممنوح لمساعد Google القيمة حقل في قناة ThingSpeak . بينما يتحقق ESP8266 بشكل دوري من قيمة هذا الحقل باستخدام مكالمات API ويرسل هذه القيمة إلى Arduino باستخدام الاتصالات التسلسلية. ويقوم Arduino بعد ذلك بإجراء مطلوب .

طريقة الربط 
دعونا نبدأ من خلال ربط لوحة Arduino UNO بوحدة Wi-Fi ESP8266 
ولكن يجب أن لاننسى ربط هذه الوحدة بمصدر طاقة خاص بها وأيضا يجب إعداد اتصال محدد للتواصل مع Arduino.تذكر أن ESP8266 عند الشراء يأتي مع برنامج ثابت افتراضي قادر على التواصل مع أوامر AT. ولكن إذا تمت برمجة الوحدة النمطية مباشرةً باستخدام Arduino ، فسيتم مسح البرامج الثابتة الافتراضية ويجب إعادة وميضها مرة أخرى إذا كان سيتم استخدام أوامر AT.


لقد استخدمنا LM317 كمنظم الجهد 3.3V. يتم استخدام 3.3V لتشغيل وحدة ESP8266 لأن 3.3V من Arduino UNO لن تكون قادرة على تزويد الطاقة لوحدة ESP. يمكن استعمال input pin LM317 بواسطة  مدخل DC-Vin الخاص بلوحة Arduino UNO.
يتم توصيل مدخل GPIO0 من وحدة ESP بوصلة ربط يمكن تثبيته لتوصيله بالأرض. يتم توصيل كل من GPIO0 و GPIO2 بموصل خارجي بحيث يمكن أيضًا استخدام مداخيل  GPIO(pins)s .
أخيرًا من جانب Arduino ، قمنا بتوصيل Rx و Tx pin من وحدة ESP8266 بـ 12 و 13 من Arduino.  يمكنك  ملاحظة أنه يتوفر أيضًا خيار لتوصيل شاشة LCD مقاس 16 × 2 ، بحيث يمكن تثبيتها مباشرةً أعلى الدرع. يتم تشغيل شاشات الكريستال السائل بواسطة pin 5V من اردوينو.

ليست هناك تعليقات:

إرسال تعليق