كيفية تصميم نظام أتمتة المنزل القائم على Arduino باستخدام جهاز التحكم عن بعد في التلفزيون؟

نظام أتمتة المنزل هو المفهوم الأسرع نموًا في العالم الحديث. أتمتة المنزل الذكي هو مفهوم يتم فيه استخدام جهاز واحد للتحكم في المعلمات الإلكترونية المختلفة للمنزل ، على سبيل المثال ، تبديل الأجهزة المنزلية ، ومراقبة الإنذارات الأمنية ، وأتمتة باب المرآب ، إلخ.



نظام التشغيل الآلي باستخدام جهاز التحكم عن بعد في التلفزيون

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



كيفية استخدام جهاز التحكم عن بعد في التلفزيون لإنشاء نظام أتمتة المنزل؟

أنظمة أتمتة المنزل المتوفرة بالفعل في السوق مكلفة للغاية. يمكننا استخدام لوحة Arduino لتوصيل الأجهزة المنزلية المختلفة والتحكم فيها باستخدام جهاز التحكم عن بعد الخاص بالتلفزيون. سيكون هذا منخفض التكلفة للغاية وطريقة فعالة لأتمتة المنزل. الآن دعونا نتحرك خطوة للأمام ونبدأ في جمع المعلومات لبدء المشروع.



الخطوة 1: تجميع المكونات

أفضل طريقة لبدء أي مشروع هي إعداد قائمة بالمكونات وإجراء دراسة موجزة لهذه المكونات لأن لا أحد يرغب في البقاء في منتصف المشروع لمجرد وجود مكون مفقود. فيما يلي قائمة بالمكونات التي سنستخدمها في هذا المشروع:



  • جهاز استقبال الأشعة تحت الحمراء TSOP 1738
  • جهاز التحكم
  • اللوح
  • أسلاك توصيل

الخطوة الثانية: دراسة المكونات

الآن بما أننا نعرف المكونات التي سنستخدمها ، دعونا ندرسها بإيجاز لفهم كيفية عمل دائرتنا بشكل أفضل.

Arduino Nano عبارة عن لوحة تحكم دقيقة تنفذ عمليات مختلفة في دوائر مختلفة. يتطلب أ كود C يخبر المجلس بالمهام التي يجب أداؤها وكيف. يحتوي على 13 منفذ إدخال / إخراج رقمي مما يعني أنه يمكننا تشغيل 13 جهازًا مختلفًا. إذا كنت تريد التحكم في أكثر من 13 جهازًا ، فاستخدم Arduino Mega.

اردوينو نانو



TSOP 1738 هي وحدة IR للتحكم عن بعد. لها تردد ناقل 38 كيلو هرتز. وهو يتألف من كاشف ضوئي يكتشف الإشارة ثم يزيل تشكيلها. يتم استخدام إخراجها مباشرة بواسطة Arduino أو أي لوحة متحكم أخرى.

مستشعر TSOP

وحدة الترحيل هي جهاز تبديل. يعمل في وضعين ، عادة مفتوحة (NO) و بشكل طبيعي مغلق (NC) . في أي وضع ، يتم كسر الدائرة دائمًا ما لم ترسل إشارة عالية إلى المرحل عبر Arduino. يتفاقم وضع NC في الاتجاه المعاكس ، تكون الدائرة دائمًا كاملة ما لم تقم بتشغيل وحدة الترحيل. تأكد من توصيل السلك الموجب الخاص بجهازك الكهربائي بوحدة الترحيل بالطريقة الموضحة أدناه.

وحدة الترحيل

يحتوي جهاز التحكم عن بعد القياسي في التلفزيون على زر طاقة وجميع المفاتيح الرقمية الموجودة عليه. سيتم استخدام هذه المفاتيح العددية لتبديل الأجهزة الكهربائية.

الخطوة الثالثة: عمل الدائرة

الآن بما أننا نعرف كيف تعمل جميع المكونات ، فلننتقل إلى الأمام ونبدأ في صنع الدائرة.

  1. خذ لوح التجارب وأدخل Arduino Nano و TSOP 1738 فيه.
  2. قم بتشغيل وحدة TSOP 1738 ووحدة الترحيل من خلال Arduino. ربط خارج دبوس TSOP1738 إلى pin11 من Arduino وقم أيضًا بتوصيل ملف في دبابيس وحدة الترحيل إلى Arduino. أنا أتحكم في جهازين كهربائيين فقط ، لذا فأنا أستخدم وحدات الترحيل فقط هنا. إذا كنت ترغب في التحكم في المزيد من الأجهزة ، فقم بتوصيل المزيد من وحدات الترحيل بالمثل.

    مخطط الرسم البياني

الخطوة 4: بدء استخدام Arduino

إذا لم تكن قد عملت على Arduino IDE من قبل ، فلا تقلق لأنه يتم عرض خطوة بخطوة لإعداد Arduino IDE أدناه.

  1. قم بتوصيل لوحة Arduino بجهاز الكمبيوتر وافتح لوحة التحكم. انقر فوق الأجهزة والصوت. مفتوح الان الأجهزة والطابعة وابحث عن المنفذ الذي تتصل به اللوحة الخاصة بك. في حالتي هو كذلك COM14 لكنه يختلف في أجهزة الكمبيوتر المختلفة.

    البحث عن ميناء

  2. انقر على قائمة الأدوات واضبط اللوحة على اردوينو نانو (AT Mega 328P) .

    لوحة الإعداد

  3. انقر فوق قائمة الأداة مرة أخرى وقم بتعيين المنفذ الذي لاحظته في لوحة التحكم من قبل.

    منفذ الإعداد

  4. في قائمة الأداة نفسها ، اضبط المعالج كـ ATmega328p (أداة تحميل التشغيل القديمة) .

    معالج الإعداد

  5. لفك تشفير البيانات المرسلة بواسطة جهاز التحكم عن بعد ، نحتاج إلى مكتبة خاصة لـ A code Arduino. هذه المكتبة مرفقة مع الرمز الموجود في الرابط أدناه. لإضافة مكتبة الانتقال رسم> تضمين مكتبة> إضافة مكتبة ZIP . سيظهر مربع. ابحث عن مجلد ZIP على جهاز الكمبيوتر الخاص بك وانقر فوق 'موافق' لتضمين المجلد.

    تضمين المكتبة

  6. قم بتنزيل الكود المرفق أدناه وانقر على زر التحميل لنسخ الكود في لوحة Arduino Nano.

    رفع

اضغط على تحميل زر للحصول على الرمز.

الخطوة 5: الكود

من السهل جدًا فهم الكود ولكن لا يزال يتم وصفه بإيجاز أدناه.

1. الإعداد باطل() هي وظيفة نقوم من خلالها بتهيئة دبابيس INPUT أو OUTPUT. تحدد هذه الوظيفة أيضًا معدل البث بالباود باستخدام Serial.begin () أمر. معدل الباود هو سرعة اتصال المتحكم الدقيق.

2. حلقة فارغة() هي وظيفة تعمل بشكل متكرر في حلقة. في هذه الحلقة ، نكتب رمزًا يخبر لوحة التحكم الدقيق بالمهام التي يجب تنفيذها وكيف.

3. عندما نرسل البيانات من جهاز التحكم عن بعد الخاص بالتلفزيون ، يحتاج Arduino إلى فك تشفير هذه البيانات. لهذا قمنا بتضمين مكتبة خاصة #تضمن <IRremote.h>. سيتم استخدام وظيفة في هذه المكتبة لفك تشفير بيانات كل مفتاح ، يتم إرسالها من جهاز التحكم عن بُعد.

# تضمين int RECV_PIN = 11 ؛ IRrecv irrecv (RECV_PIN) ؛ نتائج decode_results ؛ إعداد باطل () {Serial.begin (9600) ؛ irrecv.enableIRIn () ، } الحلقة الفارغة () {if (irrecv.decode (& results)) {Serial.println (results.value، HEX)؛ irrecv.resume () ؛ } تأخير (100)؛ }

يقرأ الكود أعلاه القيم المرسلة من جهاز التحكم عن بُعد ويفك تشفيرها إلى قيمة HEX المقابلة لها. هذا الرمز مأخوذ من أمثلة مكتبة IRremote في Arduino IDE. يتم إرفاق هذا الرمز أيضًا في رابط التنزيل بالاسم test.ino المذكورة أعلاه. سيكون خرج هذه الوظيفة ، عند الضغط على جميع المفاتيح الرقمية ، هو:

فك تشفير

4. في code.ino مرفق في رابط التنزيل أعلاه ، يتم تهيئة دبابيس Arduino التي سيتم استخدامها. في ال حلقة فارغة() وظيفة ، عند الضغط على زر على جهاز التحكم عن بعد ، في البداية خاطئة تحولت إلى الشرط صحيح ويتم تشغيل التتابع المعني. إذا تم الضغط على الزر نفسه مرة أخرى ، فسيتم تبديل الحالة المنطقية وإيقاف تشغيل التتابع. سيقوم زر الطاقة بتشغيل جميع المرحلات أو إيقاف تشغيلها.

حلقة باطلة () {if (irrecv.decode (& results)) {Serial.println (results.value، HEX)؛ تأخير (100) ؛ إذا (results.value == 0x40BD00FF) {i =! i؛ الكتابة الرقمية (IN1، i) ؛ } إذا (results.value == 0x40BD807F) {j =! j؛ digitalWrite (IN2، j) ؛ // تأخير (200) ؛ } إذا (results.value == 0x40BD28D7) {m =! m؛ الكتابة الرقمية (IN1 ، م) ؛ الكتابة الرقمية (IN2 ، م) ؛ الكتابة الرقمية (IN3 ، م) ؛ الكتابة الرقمية (IN4 ، م) ؛ // تأخير (200) ؛ } irrecv.resume ()؛ // تلقي القيمة التالية // تأخير (100) ؛ }}

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