مشروع التحكم الصوتي للتلفاز باستعمال ESP8266 NodeMCU

 

 

لا تضغط أبدًا على جهاز التحكم عن بُعد مرة أخرى ، وتحكم في التلفزيون أو جهاز الاستقبال أو أي جهاز يتم التحكم فيه عن بُعد من خلال أمر Alexa الصوتي.

يستخدم هذا المشروع أوامرك الصوتية إلى Alexa ولوحة NodeMCU كمكبر الأشعة تحت الحمراء لإرسال إشارات الأشعة تحت الحمراء عن بُعد إلى التلفزيون المنزلي أو جهاز الاستقبال.

و يعتمد المشروع على:

Esp8266 NodeMCU
2N3904
940nm IR LED
infrared receiver VS1838B

 

يتكون المشروع من ثلاث خطوات:

1-اصنع جهاز التحكم عن بعد
2-إضافة التحكم الصوتي إلى جهاز التحكم عن بعد
3-تخلص من جميع أجهزة التحكم عن بعد (اختياري)

الخطوة 1: اصنع جهاز التحكم عن بعد

عندما نضغط على زر في جهاز التحكم عن بعد ، فإنه يرسل بعض التعليمات البرمجية عبر الأشعة تحت الحمراء إلى الجهاز الذي نتحكم فيه. يتم إرسال رمز فريد لكل زر نضغط عليه في جهاز التحكم عن بُعد.

لإنشاء جهاز تحكم عن بعد ، يتعين علينا إرسال الرمز المحدد لجهاز التحكم عن بُعد عبر دائرة IR blaster الخاصة بنا ، ولهذا ، نحتاج إلى معرفة الإشارة التي يرسلها التلفزيون وأجهزة التحكم عن بُعد STB الخاصة بنا لأزرار مختلفة. لذلك سنقوم أولاً بتجميع مستقبل الأشعة تحت الحمراء باستخدام لوحة NodeMCU ومصباح LED لجهاز الأشعة تحت الحمراء.

دائرة مستقبل الأشعة تحت الحمراء:

 

برمجة مستقبل receiver:

توجد مكتبة لـ Arduino Sketch IRremote8266 لإرسال واستقبال إشارات الأشعة تحت الحمراء ببروتوكولات متعددة باستخدام لوحة تعتمد على ESP8266 مثل NodeMCU. يمكنك العثور على تعليمات التثبيت في الرابط أعلاه.
الآن ، افتح برنامج Arduino وافتح رسم “IRrecvDemo” ضمن ملف> أمثلة> IRremote8266
قم بتحميل الكود على اللوحة ونحن الآن جاهزون للحصول على إشارات من أي جهاز تحكم عن بعد.
بمجرد تحميل الرسم على لوحة NodeMCU الخاصة بنا ،
انتقل إلى Tools> Serial Monitor واضغط على أي زر على جهاز التحكم عن بعد (التلفزيون أو جهاز فك التشفير) مشيرًا نحو مستقبل الأشعة تحت الحمراء.
بهذه الطريقة تحصل على أكواد Hex لجميع الأزرار الموجودة على جهاز التحكم عن بعد وتكتبها في مكان ما.
يمكنك تكرار نفس العملية لفك تشفير الإشارات من أي عدد تريده من جهاز التحكم عن بعد.
لقد قمنا بفك تشفير إشارة الأشعة تحت الحمراء لجهاز التحكم عن بعد الخاص بالتلفزيون وجهاز التحكم عن بُعد STB (Tata sky).


فيما يلي قائمة بالرموز التي تلقيتها من أجهزة التحكم عن بُعد الخاصة بالتلفزيون وأجهزة STB باستخدام جهاز استقبال الأشعة تحت الحمراء.


الآن لدينا رموز الإشارة ونحن على استعداد لإرسال الإشارات إلى التلفزيون أو STB من خلال NodeMCU.

إذا ذهبت من خلال رمز Sketch ، ستجد أن هناك أوضاعًا أو بروتوكولات مختلفة لإرسال رمز إشارة الأشعة تحت الحمراء. تدعم معظم أجهزة التحكم عن بعد بروتوكول NEC. للتعرف على بروتوكولات الأشعة تحت الحمراء المختلفة ، يرجى الرجوع إلى هذا الرابط. بالنسبة لجهاز Set Top Box (Tata Sky) الخاص بي ، سأستخدم بروتوكول RC6 وبالنسبة للتلفزيون (Samsung) سأستخدم بروتوكول "SAMSUNG" المدمج.

على سبيل المثال:

irsend.sendRC6 (0xC0000C، 24) ؛ // يرسل إشارة التشغيل / الإيقاف إلى Set Top box

irsend.sendSAMsung (0xE0E0F00F ، 32) // ترسل إشارة تشغيل / إيقاف التشغيل إلى التلفزيون

دائرة الارسال IR:

الآن نقوم بتكوين لوحة NodeMCU الخاصة بنا لتكون بمثابة مكبر الأشعة تحت الحمراء والدائرة أدناه.

 

الخطوة 2: أضف التحكم الصوتي

من خلال sinric يمكننا توصيل لوحات ESP8266 أو Arduino بـ Amazon Alexa أو Google Home مجانًا.

 لتمكين Alexa من التعرف على أجهزتنا التي يمكن التحكم فيها ، نحتاج إلى إنشاء أجهزتنا على sinric.com

عندما نقوم بإنشاء جهاز يمكن التحكم فيه على موقع sinric.com وإدراج معرف الجهاز في الكود الخاص بنا في لوحة ESP8266 ، يمكننا الوصول إلى تلك الأجهزة من خلال خيار Alexa Smart home. بمجرد الإضافة ، يمكننا أن نقول شيئًا مثل "Alexa ، Switch on Light 1" حيث "Light 1" هو اسم الجهاز الذي أنشأناه في sinric.com واستخدمنا معرف الجهاز في كود Arduino الخاص بنا.

نقوم بإنشاء جهازين في sinric.com لأننا نريد التحكم في جهاز التلفزيون وجهاز الاستقبال.

انتقل إلى sinric.com

يسجل

تسجيل الدخول ويمكنك رؤية لوحة القيادة الخاصة بك كما هو موضح أدناه

 

انسخ مفتاح API واحفظه في مكان ما للرجوع إليه في المستقبل.

انقر الآن على "إضافة" ضمن "جهاز المنزل الذكي"

في النافذة المنبثقة ، اكتب اسمًا لجهاز الترفيه الخاص بك. في هذا المثال ، قمت بتسميته "TV" بوضوح. يمكنك كتابة أي شيء في الوصف وأخيرًا أهم شيء هو تخصيص "النوع" لجهازنا. إذا قمنا بتعيينه النوع "Switch" ، فيمكننا فقط إرسال أمر التشغيل / الإيقاف. لذلك نختار "TV" على أنها "Type" حتى نتمكن من إعطائها أوامر مثل "تغيير القناة أو Mute TV إلخ.


 

سنكرر العملية المذكورة أعلاه ونضيف جهازًا آخر ، مثل Set Top box. سنختار "TV" كنوع الجهاز لأننا نحتاج إلى التحكم في القناة ومستوى الصوت أيضًا. هنا كيف تبدو لوحة القيادة الآن.

لا تنس نسخ معرف الجهاز لكلا الجهازين لأننا نحتاجهما في الكود الخاص بنا.


بمجرد الانتهاء من إنشاء الأجهزة على sinric.com ، يمكننا ربط Alexa و Sinric عن طريق إضافة مهارة "Sinric" إلى تطبيق Alexa الخاص بنا.

     انتقل إلى الصفحة الرئيسية> قسم المهارات في تطبيق Alexa وابحث عن مهارة "Sinric" وقم بتمكينها.
     انتقل الآن إلى الصفحة الرئيسية> المنزل الذكي ثم انقر فوق "إضافة جهاز".
     سيعرض جميع الأجهزة المتاحة (في حالتنا الثانية).

الآن سنقوم ببرمجة لوحة NodeMCU الخاصة بنا باستخدام Arduino Sketch لإرسال إشارة الأشعة تحت الحمراء.

سنخبر NodeMCU للعمل كجهاز تحكم عن بعد يعمل بالأشعة تحت الحمراء ، والذي يحل محل أجهزة التحكم عن بُعد الخاصة بالتلفزيون وجهاز الاستقبال الرقمي.

إذا كنت جديدًا في استخدام Sketch for NodeMCU ، فإليك رابط لتعلم الشيء نفسه.

بافتراض أنك قمت بتثبيت جميع المكتبات المطلوبة لـ IRremote8266 و sinric في Sketch بالإشارة إلى الروابط الواردة في هذا البرنامج التعليمي ، فنحن على استعداد لبرمجة لوحة NodeMCU الخاصة بنا.

 

كود المشروع:

اضغط على من هنا لتحميل كود المشروع

من هنا 

 

 

 

 

 

إرسال تعليق

أحدث أقدم