التحكم بالاضاءة بواسطة البلوتوث


مقدمة

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

الأدوات المستخدمة

العدد

الأداة

1

اردوينو أونو

1

بلوتوث HC-05/HC-06

1

جوال يعمل بنظام الاندرويد

1

مرحل (Relay)

1

لوحة توصيل

حسب الحاجة

أسلاك توصيل

الجزء النظري

هناك عنصرين أساسيين نحتاجهما لتطبيق هذا المشروع هما المرحل و البلوتوث.

المرحل عبارة عن جهاز يقوم بفصل وتوصيل الدائرة الكهربائية عن طريق تغذيته بمصدر للتحكم به (سنستخدم الاردوينو في مشروعنا هذا كمصدر تغذية)، للمرحل عدة أنواع وأشكال والنوع الذي نستخدمه في هذا المشروع هو المرحل الكهروميكانيكي الموصول بوحدة (Module Relay)

نشاهد في هذه الصورة طريقة عمل المرحل الكهروميكانيكي وهو المربع في يسار الصورة الذي يوجد فيه الملف وطرفي N/O و N/C و طرف مشترك بينهما في اسفل المربع، وكما أسلفنا فسنستخدم الأردوينو كمصدر تغذية لطرفي ملف المرحل بدلاً عن البطارية الموجودة في الصورة.

وسنقوم باستخدام البلوتوث لإعطاء الاردوينو أمر تغذية الملف من من عدمه.

خطوات التوصيل

ملاحظة: نرجو أخذ الحيطة والحذر عند التوصيل بالتيار المتردد 220V 

توصيل البلوتوث كالتالي:

  • يوصل VCC البلوتوث مع 5V بالاردوينو

  • يوصل أرضي (GND) البلوتوث بأرضي الاردوينو

  • يوصل TX البلوتوث بالمنفذ رقم 0 (RX) بالاردوينو

  • يوصل RX البلوتوث بالمنفذ رقم 1 (TX) بالاردوينو

توصيل المرحلة كالتالي:

  • يوصل VCC المرحل مع 5V بالاردوينو

  • يوصل أرضي (GND) البلوتوث بأرضي الاردوينو

  • يوصل S المرحل (اختصار اشارة Signal) بمنفذ 7 بالاردوينو

في الجهة الاخرى للمرحل وبعد التأكد من توصيل الإضاءة أو الجهاز بقابس كهربائي plug وأنه يعمل جيداً (يفضل استخدام قابس ثلاثي لوجود فيوز للحماية)،

نقوم بقص أحد السلكين ونوصل طرفه الأول في C (اختصار Common مشترك) وطرفه الثاني في NO (مفتوح بطبيعته Normally Open)

الكود

نقوم اولاً بتحميل مكتبة البلوتوث SoftwareSerial ثم نقوم بإضافتها للاردوينو (لمعرفة كيفية إضافة المكتبة انقر هنا)

#include<SoftwareSerial.h>

int Rx = 2;

int Tx = 3;

int Relay = 7;

SoftwareSerial bluetoothSerial(Tx, Rx);     //تعريف البوتوث

char c;      // متغير لتخزين المعلومات

void setup() {

  bluetoothSerial.begin(9600);     //اختيار سرعة نقل البيانات للبلوتوث

  Serial.begin(9600);       //اختيار سرعة نقل البيانات 

  pinMode(Relay, OUTPUT);

  digitalWrite(Relay, LOW);

  }

void loop() {

  if(bluetoothSerial.available()){    //ارسل المعلومات عندما تستقبل البيانات فقط

    c = bluetoothSerial.read();      //اقرأ البيانات القادمة من البلوتوث وخزنها في المتغير

    Serial.println(c);              // أظهر بيانات المتغير في السيريال مونيتور

    if(c=='1'){               //  تأكد من أن قيمة المتغير 1

      digitalWrite(Relay, HIGH);          //  إذا كانت القيمة 1 قم بتشغيل المرحل

    }

    if(c=='0'){               // تاكد من ان قيمة المتغير 0

      digitalWrite(Relay, LOW);           // إذا كانت القيمة 0 قم بإطفاء المرحل

    }

  }

}

التوصيل بالجوال

سنستخدم جهاز اندرويد للتوصيل مع البلوتوث، اذا كنت ستستخدم آيفون فتأكد أن نوع البلوتوث الذي تتعمل معه هو 4.0، نذهب الى البلوتوث ونقوم بالاقتران مع الاردوينو كما هو موضح في الصورة، رمز للاقتران سيكون ” 0000 أو 1234″

سنقوم بتجربة تطبيقين أحدهما يدعم الأوامر الصوتية من قوقل، نذهب إلى متجر Google Play ونبحث عن “Arduino Bluetooth Control” ونختار التطبيقين المعلمين في الصورة

يمكن اختيار أي تطبيق آخر وتجربته كذلك، بعد انتهاء التحميل والتثبيت نبدأ بالتشغيل:

التطبيق الأول

نضغط على ايقونة ” Connect ” ثم نختار اصدار البلوتوث الذي نستخدمه ( استخدمت HC-05 )

سيتم بعدها الاتصال نضغط على ايقونة ” Turn ON ” لتشغيل الإضاءة و ” Turn OFF ” لإطفائها

التطبيق الثاني

عند تشغيله سيكون الاقتران جاهزاً، او قد يطلب منا اختيار جهاز للاقتران معه، كما يوجد في الزاوية اليمنى العلوية ايقونة تحديث في حال فشل الاقتران

بعد اتمام الاقتران تظهر لنا رسالة بأننا متصلون بالبلوتوث، نختار ” Voice Control ” الايقونة اليمنى السفلية

ستظهر لنا شاشة الأوامر الصوتية، قبل أن نبدأ استخدامها يجب أن نضبط الإعدادات اولاً من خلال الأيقونة في الزاوية اليمنى العلوية

نختار تهيئة الأوامر الصوتية ” Vocal commands configuration “

 

ثم من قائمة الأوامر الصوتية  نختار الأمر الصوتي الأول

الاختيار الأول هنا ” Vocal commands ” معناه الأوامر الصوتية ومن خلاله سنقوم بكتابة نص الأمر الصوتي الذي سنقوله، أما الاختيار الثاني ” Data to send ” البيانات المطلوب إرسالها عند تلقي الأمر الصوتي.

مثال للتوضيح:

كتبت الأمر الصوتي “Light ON” الذي اريد استخدامه لتشغيل الاضاءة، يمكن أن تكون الأوامر الصوتية باللغة العربية وذلك يعتمد على لغة الجهاز الذي تقوم باستخدامه

نذهب بعدها إلى البيانات المرسلة ونكتب الرقم  1؛ الرقم 1 في يرمز إلى High – اشارة موجبة – 5v في الاردوينو.

الآن إذا قلنا الأمر الصوتي الذي كتبناه فإننا سنرسل بيانات بالرقم ‘1’ للاردوينو وحسب ما برمجنا الاردوينو فإنه سيشغل المرحل عندما يستقبل بيانات بالرقم ‘1’

نعود بعدها لقائمة الأوامر الصوتية

نختار الأمر الصوتي الثاني، ثم نكتب الامر الصوتي لذي سنقوله عندما نريد ان تطفأ الإضاءة

بعدها نكتب الرقم ‘0’ في خانة البيانات المطلوب ارسالها وحسب ما برمجنا الاردوينو فإنه سيطفئ المرحل عندما يستقبل بيانات بالرقم ‘0’

انتهينا الآن من تهيئة الأوامر الصوتية نغادر الإعدادات ونعود إلى صفحة الأوامر الصوتية

عند الضغط على أيقونة المايكروفون ستظهر صفحة أوامر قوقل الصوتية (قد يتطلب وجود انترنت لاستخدامها)،

 

فيديو للمشروع


مصدر1، مصدر2، مصدر3

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *