404

الصفحه التي تبحث عنها غير موجوده

تصميم سمارت هوم متكامل

0

 بسم الله الرحمن الرحيم

بعد ان قمنا بتصميم عدة مشاريع بخصوص سمارت هوم والتي يمكن الإطلاع عليها :
وقمنا ايضا بتصميم مشروع للحماية ويمكن الإطلاع عليه من هنا :
وسنقوم اليوم بعمل دمج لكل هذه المشاريع حيث سنصمم سمارت هوم :
التحكم باربعه اجهزة باستخدام ir remote
نظام ا نذار للحرائق وانذار للحركة و نظام حماية


اولا الأدوات :

Arduino uno
motor servo
RIB motion sensor
puzzer
ir remote reciever + sender
keypad
relay 
tmp35 temperature sensor

Arduino uno

المتحكم الذي يقوم بمعالجة كافة البيانات ولا يجب استخدام اردوينو اونو يمكن استخدام اي نوع اخر
motor servo
موتور الذي سيقوم بفتح القفل في حالة كتابة الباسورد بطريقة صحيحة 


هناك نوع من القفول الأوتوماتيكيى التى تعمل على 12 فولت والتى يمكن إستخدامها مع الأردوينو بإستعمال ترانزيستور 
RIB motion sensor
حساس الحركة الذي سيقوم بمعرفة اذا كان يوجد حركة او جسم في المكان

ir remote reciever + sender

الوسيلة التي سنتحكم بها بالأجهزة وهي عن طريق ir remote

keypad

لوحة المفاتيح التي سيقوم المستخدم بادخال كلمة المرور

relay 

ريلاي مكون الكتروني يتيح التحكم باجهزة ذو جهد مرتفع باستخدام طاقة صغيرة 5 فولت


puzzer

الصفارة التي سنخرج عليها انذار في حالة وجود اشارة من حساس الحركة او ارتفاع في درجات الحرارة ووجود حرائق

tmp35 temperature sensor

حساس الحرارة الذي سيقوم بقياس درجة الحرارة

ثانيا التوصيلات:



تنقسم التوصيلات الي 4 اقسام :
القسم الأول : قسم اللتحكم بالأجهزة 
حيث يتم توصيل منافذ coil الخاص بالريلاي الي المنافذ الأتيه A2,A3,A4,A5 وتوصيل منفذ COM الي 220 فولت وتوصيل NO للأجهزة المراد اللتحكم بها 
وتوصيل مستلم IR الطاقة الي 5 فولت الخاصه باﻷردوينو والسالب الي السالب ومنفذ الإشارة الي منفذ رقم 2
القسم الثاني : قسم انذار الحرائق 
حيث يتم توصيل حساس الحرارة الطاقة الي 5 فولت والسالب الي السالب ومنفذ الإشارة الي المنفذ A0 
وتوصيل الصفارة السالب الي السالب والموجب الي 3 الرقمي
القسم الثالث : قسم انذار الحركة
حيث يتم توصيل حساس الحركة الموجب الي 5 فولت والسالب الي السالب ومنفذ الإشارة الي A1
وهذا القسم يشترك مع القسم الثاني في السماعه 
القسم الرابع : قسم الحماية keypad
تحتوي keypad علي 8 منافذ 4 منافذ للصفوف و4 اخري للأعمده
و توصيل الموتور السيرفو منفذ الإشارة الي المنافذ الرقمية

ثالثا الكود :

 للعمل مع ir remote نقوم بتنزيل مكتبة خاصة به 
للتنزيل اضغط هنا

والأن نتجه الى الكود 

فى البداية يجب معرفة الأكود التى يرسلها الريموت الى المستشعر لكى نستطيع التمييز بينها 

بواسطة هذا الكود 
والذى يمكنكم تحميله من هنا 
بعد رفع الكود الى الاردوينو نذهب الى صفحة السيريال مونيتور 
ونبدء الضغط على الريموت ضغطة سريعة على الأزرار التى تريد تعيينها للتحكم بالأجهزة 
نحن سنقوم بتجهيز كود للتعامل مع اربعة ازرار من الريموت للتحكم فى جهازين 

عند الذهاب على السيريال مونيتور ونضغط على اى زر فى الريموت يأتى هذا الرمز

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

وشرح الكود الكود باختصار ينقسم الي عدة اقسام حيث قسم التحكم باﻷجهزة و قسم الإتذار بالحرائق وقسم انذار الحركة وقسم الحماية حيث يوجد كل قسم داخل دالة مما يسهل التعامل مع الكود 
حيث قمنا بشرح هذه الاكواد في المقالات السابقة 

لتحميل الكود اضغط هنا
تصميم وبرمجة بلال حسان 

التحكم بالأجهزة المنزلية بالصوت عن طريق البلوتوث

0

 بسم الله الرحمن الرحيم  

بعد ان قمنا بتصميم العديد من المشاريع الخاصه بمشاريع التحكم بالأجهزة المنزلية :-

التحكم فى الأجهزة المنزلية عن طريق البلوتوث 

التحكم فى الأجهزة المنزلية عن طريق الريموت

التحكم فى الأجهزة المنزلية عن طريق شريحة gsm 





سنقوم اليوم بتصميم مشروع التحكم بالأجهزة المنزلية عن طريق الصوت بإستخدام البلوتوث 


اولا الادوات :

arduino
relay module
wires
HC-05 bluetooth module

ثانيا التوصيلات : 

 


يجب ان تختارو ريلاى موديل به عدد مخارج تتناسب ع مشروعكم


فمثال هذه الشريحة تحتوى على اربعة منافذ مما يكفى لتشغيل جهازان



فكما تلاحظون 
فى المربع الأخضر توجد 6 منافذ
يتم توصيل vcc بالطاقة 5 فولت الخارجة من الأردوينو
يتم توصيل gnd بالسالب الخاص بالأردوبنو

فى المربع الأصفر توجد مداخل ومخارج الريلاى

فكما تلاحظون فى هذه الصورة للريلاى الواحد خمسة اطراف
يحتوى الريلاي على جزئين ملف كهربائى
وسويتش
بحيث عندما يحصل الملف على طاقة يولد مجالا مغناطيسيا يقوم بغلق السويتش
طرف الملف الموجب موجود فى المربع الخضر كما نلاحظ الأطراف المكتوب تحتها int1
int2 - int3 - int4
فعند ادخال واحد عند اى طرف من الأطراف يقوم بتشغيل الملف وغلق السويتاش للسماح بسريان التياروسنف
اما فى المربع الأصفر يوجد عند كل ريلاى ثلاث منافذ
common - nc - no
يكون السويتش فى البداية متصل مع nc 
فعند بدء عمل المف يصبح common متصل مع no
وهذه هى الية عمل الملف
فعند حالتنا هنا 
نقوم بتوصيل التيار الداخل عند no
ونقوم بتوصيل الجهاز المراد تشغيله عند common 
ويحتوى الجهاز على سلكين للطاقة يجب وضع سلك فى ريلاى خاص به
والسلك الأخر فى ريلاى اخر خاص به 

بالنسبة لشريحة البلوتوث فيجل استخدام hc-05 لأنها قادرة على ارسال واستقبال البيانات
على عطس نظيرتها hc-6


وسنقوم بتصميم تطبيق اندرويد للتعامل مع الموضوع 
سأضع رابط تحميله فى نهاية الموضوع

ثالثا الكود :
#include <SoftwareSerial.h>
SoftwareSerial bluetooth(9,8);//PUT RX PIN AND TX PIN
//REALAY PIN IN HERE
int relay1 = 6;
int relay2 = 5;
int relay3 = 4;
int relay4 = 3;
void setup() {
bluetooth.begin(9600);
pinMode(relay1,OUTPUT);
pinMode(relay2,OUTPUT);
pinMode(relay3,OUTPUT);
pinMode(relay4,OUTPUT);

}

void loop() {
if(bluetooth.available()>0){
  char x = bluetooth.read();
   switch(x){
    case 'a':
      digitalWrite(relay1,1);
      break;
    case 'b':
      digitalWrite(relay2,1);
      break;
    case 'c':
      digitalWrite(relay3,1);
      break;
    case 'd':
      digitalWrite(relay4,1);
      break;
    case 'e':
      digitalWrite(relay1,0);
      break;
    case 'f':
      digitalWrite(relay2,0);
      break;
    case 'g':
      digitalWrite(relay3,0);
      break;
    case 'h':
      digitalWrite(relay4,0);
      break;
     
   }
  }
}


#include <SoftwareSerial.h>
SoftwareSerial bluetooth(9,8);//PUT RX PIN AND TX PIN
استعمال المكتبة الأساسية للتعامل مع شريحة البلوتوث وتعريف الكائن الخاص بالشريحة داخل البلوتوث 
int relay1 = 6;
int relay2 = 5;
int relay3 = 4;
int relay4 = 3;
نعرف منافذ الريلاى فى 4 متغيرات 
pinMode(relay1,OUTPUT);
pinMode(relay2,OUTPUT);
pinMode(relay3,OUTPUT);
pinMode(relay4,OUTPUT);
ثم تعريف منافذ الريلاى كمخارج 

bluetooth.begin(9600);
ثم تحديد سرعه الإتصال الخاصه بالبلوتوث ب 9600 باود

if(bluetooth.available()>0){
  char x = bluetooth.read();

ثم التأكد من حالة شريحة البلوتوث 
وقراءة البيانات المرسله من شريحة البلوتوث
ثم عمل مقارنات للبيانات القادمه من تطبيق الأندرويد
الى اخر الكود 

عند فتح التطبيق والنطق ب 
N1 : TURN ON FIRIST DEVICE
N2 : TURN ON SECONDE DEVICE
N3 : TURN ON THIRD DEVICE
N4 : TURN ON FOURTH DEVICE

F1 : TURN OFF FIRIST DEVICE
F2 : TURN OFF SECONDE DEVICE
F3 : TURN OFF THIRD DEVICE
F4 : TURN OFF FOURTH DEVICE

فى نهاية المشروع اذا كانت هناك اي استفسارات اتركها فى التعليقات

لتحميل الكود اضغط هنا 
لتحميل التطبيق اضغط هنا 

تصميم : بلال حسان سعدى 


التحكم بالأجهزة المنزلية عن طريق الصوت

1

بسم الله الرحمن الرحيم

هل حلمت يوما بان تقوم بالتحكم بمصباح الكهربائى عن طريق صوتك 

ان كنت نعم فهذه فرصتك لتحقيق حلمك 

وان كانت لا فهذه فرصه رائع لتطوير مهارتك و توسيع علمك 

ويعد هذا المشروع من احد مشاريع الأتمته 

يعد مجال الأتمته (Automation) من احد اهم المجالات التى توجد فى القرن 21 


اولا الهدف من المشروع :

الهدف من هذا المشروع هو التحكم باجهزة المنزل مثل المصباح الكهربائى عن طريق الأوامر الصوتية 
وسنتحكم فى هذا المشروع فى 4 اجهزة تعمل على 220 فولت متردد

ثانيا الأدوات :


voice recognition module
arduino uno
relay module 4x4
usb to ttl driver 

voice recognition module
هذا الموديول هو المسئول عن تفسير الصوت البشرى وعمل مقارنة له عن طريق اصوات مسجله فعلا فى الذاكرة الخاصه به 


arduino uno
المتحكم الدقيق الذى سنستخدمه فى هذا المشروع والذى الغرض منه معالجة البيانات

relay module 4x4
يتكون من 4 ريلايهات مدمجة على شريحة pcb ويعمل كل ملف منهم على 5 فولت مستمر 
ويتحمل فى حدود 250 فولت متردد
و 10 امبير



usb to ttl driver 
الوسيط الذى سنستخدمه لتحميل الأصوات التى سنصدرها للتحكم بالأجهزة 
وهو يعتمد على بروتوكول uart




ثالثا إضافة الأصوات:

فى البداية يجب توصيل voice recantation مع usb to ttl بهذه الطريقة لتحميل الأصوات الى الكمبيوتر 
ثم توصيل الجانب الأخر من usb to ttl الى الكمبيوتر
ثم الدخول الى manage لمعرفة المنفذ الذى سيتم توصيل به usb to ttl  فى الكمبيوتر
ثم تحميل برنامج stud.com الذى سنستخدمه لرفع الأصوات الى الشريحة 
ويمكن تحميله من الموقع الرسمى من هنا 



كما ترون الواجهه الرئيسية للبرنامج فى البداية يجب تغيير 
من char الى hex التان يوجدان فى المربع الأسود 
ثم اتباع الخطوات التاليه :



فى المربع الأول يجب تغيير المنفذ الى المنفذ الخاص ب usb to ttl الذي حصلنا عليه من manage
ثم تحديد سرعه الإتصال من المربع الثانى والتى ستكون من 9600
ثم تغيير 
char format الى hex format كما هو موضح فى المربع الثالث

ثم التوجه الى المربع فى الأسفل وكتابة الأوامر الأتيه 
اولا : aa36
ثم اضغط على زر send
ثانيا : aa11
ثم اضغط على زر send ثم قم بتحدث واتباع الذى سيعرض امامك 
ثالثا : aa21
ثم اضغط على زر send يقوم هذا الأمر بتحميل الأصوات التى قمت بتسجيلها على الموديول الخاص بنا
بعد الإنتهاء من هذه العملية قم بتفكيك الموديول من usb to ttl
ملحوظة : يتحمل هذا الموديول حوالى 15 صوت فقط ولكن البرنامج سيبلغك عند امتلاء السعة التخزينية الخاصه بالموديول

رابعا التوصيلات :













كما تلاحظون التوصيلات فى الأعلى يحتوى relay module على 6 منافذ هم :
vcc : 5v
IN4 : 2
IN3 : 3
IN2 : 4
IN1 : 5
GND : GND 
ويحتوى voice recognition على 4 منافذ هم
tx : 8
rx : 9
vcc : 5v
gnd : gnd

ثالثا الكود : 



#include <SoftwareSerial.h>

SoftwareSerial voice(8,9);
//RELAY PIN
#define IN1 2
#define IN2 3
#define IN3 4
#define IN4 5

byte com = 0;


void setup() {
// for voice recognithion module
voice.begin(9600);

voice.write(0xAA);

voice.write(0x37);

delay(1000);

voice.write(0xAA);

voice.write(0x21);
//end of voice reconithation module

pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
pinMode(IN3,OUTPUT);
pinMode(IN4,OUTPUT);

digitalWrite(IN1,0);
digitalWrite(IN2,0);
digitalWrite(IN3,0);
digitalWrite(IN4,0);
}

void loop() {

  while(voice.available()) {

  com = voice.read();

  switch(com) {

      case 0x11:   //command 1 is for TURN ON THE FIRST DEVICE

          digitalWrite(IN1,1);

      break;

      case 0x12:  //command 2 is for TURN OFF THE FIRST DEVICE

           digitalWrite(IN1,0);

      break;

      case 0x13:  //command 3 is  TURN ON THE SECONDE DEVICE

            digitalWrite(IN2,1);

      break;

      case 0x14:  //command 4 is for  TURN OFF THE SECONDE DEVICE
      
            digitalWrite(IN2,0); 

      break;

      case 0x15:  //command 5 is for  TURN ON THE THIRD DEVICE
      
            digitalWrite(IN3,1);

      break;
      case 0x16:  //command 5 is for  TURN OFF THE THIRD DEVICE
      
            digitalWrite(IN3,0);

      break;
      case 0x17:  //command 5 is for  TURN ON THE FOURTH DEVICE
      
            digitalWrite(IN4,1);

      break;
      case 0x18:  //command 5 is for  TURN OFF THE FOURTH DEVICE
   
            digitalWrite(IN4,0);

      break;

            }
      }
}

الهدف من هذا الكود هو : 

اولا اضافة مكتبة بروتوكول UART عن طريق  

#include <SoftwareSerial.h>

ثم تعريف المنافذ الخاصه ب الموديول عن طريق

SoftwareSerial voice(8,9);

تعريف المنافذ الخاصه بالريلاى عن طريق 

#define IN1 2
#define IN2 3
#define IN3 4
#define IN4 5
وتعريف متغير نستلم فيه البيانات القادمه من الموديول 

byte com = 0;

وتعريف هذه المنافذ كخرج 
ثم كتابة الأكواد الأساسية التى الغرض منها تهيئة الموديول  عن طريق
voice.begin(9600);
voice.write(0xAA);
voice.write(0x37);
delay(1000);
voice.write(0xAA);
voice.write(0x21);

بعد ذلك عمل مقارنات بالقراءة القادمة من الموديول والتى على حسب هذه القراءة ستقوم الأردوينو بأداء معين
لأى استفسار اتركه فى التعليقات 

لتحميل الكود اضغط هنا 

تصميم وبرمجة : بلال حسان سعدى

التحكم فى أجهزة المنزل عن طريق gsm

6
بسم الله الرحمن الرحيم
بعد ان قمنا بتصميم العديد من المشاريع التى الغرض منها التحكم فى الأجهزة المنزلية مشروع التحكم فى الأجهزة المنزلية من خلال  IR REMOTE اضغط هنا
مشروع التحكم فى الأجهزة المنزلية من خلال البلوتوث اضغط هنا
سنقوم اليوم بعمل تطوير لننهى سلسلة التحكم فى الأجهزة المنزلية 
سنقوم اليوم بتصميم مشروع التحكم فى الأجهزة المنزلية عن طريق شريحة الإتصال GSM

اولًا الأدوات :
Arduino
gsm module
relay module
wires
arduino
تعتبر شريحة الأردوينو هى المتحكم الدقيق الذى سنستخدمه فى هذا المشروع حيث ستقوم هذه الشريحة بمعالجة البيانات والتحكم فى الشرائح
gsm module
تعتبر هذه الشريحة هى المسئولة عن إستلام الرسائل حيث تقوم بإضافة شريحة هاتف محمول بها وتقوم بواسطة هذه الشريحة إرسال و إستلام الرسائل 
توجد العديد من الأنواع من هذه الشريحة لكن سنستخدم اليوم شريحة sim 900a

relay module
تعتبر هذه الشريحة مكونة من عدة ريليهات مجمعة فى شريحة واحدة سنستخدم اليوم relay module 4×1
حيث تمكنك هذا النوع من الشرائح على التحكم فى أجهزة تعمل على 220 فولت بواسطة 5 فولت

ثانيًا التوصيلات :
حيث تحتوى شريحة الإتصال على منفذان tx , rx 
وهما المسئولان عن إستلام و إرسال الرسائل 
وتحتوى على منفذان اخران  vcc , gnd
حيث يتم توصيل vcc الى 5 فولت
ويتم توصيل gnd الى السالب الخاص بالأردوينو 
حيث قمت بتوصيل rx الى منفذ 9
وينصح إستعمال خاصية مجزء الجهد عن توصيل tx الى الأردوينو لخفض الجهد من 5 فولت الى 3,3 فولت 
وقمت بتوصيل هذا المنفذ الى منفذ 10 بالأردوينو 
يحتوى relay module على 6 منافذ منفذ الطاقة والذي يتم توصيله بمنفذ الطاقة 5 فولت 
ويوصل gnd بالسالب الى الأردوينو
وتوجد 4 منافذ للتحكم بالريلاي فيتم توصيل 4 منافذ الى المنافذ الرقمية الخاصة بالأردوينو
فمثلا عند تشغيل int1 تقوم بتشغيل الريلاى الأول وهكذا الى آخره

ثالثًا الكود :
حيث يقوم الكود السابق بالتحكم بجهازين نتجه الآن لشرح الكود 
حيث قمت بإضافة مكتبة SoftwareSerial
التى تستطيع تخصيص منفذين فى الأردوينو لإرسال البيانات وإستلام البيانات
ثم قمت بتحديد المنفذين 9 و 10 كمرسل ومستقبل عن طريق
SoftwareSerial sgsm(9,10);
ثم قمت بتعريف المنافذ الخاصة بالريلاى كمخارج 
وقمت بتحديد سرعة الإتصال بين شريحة gsm و الأردوينو عن طريق
sgsm.begin(9600);
بعد ذلك قمت بعمل مقارنة هل حالة الإتصال بين شريحة الإتصال والأردوينو متاحة
قم بإنشاء متغير من نوع String
وضع فيه قراءه شريحة الإتصال
String c = sgsm.readString();
بعد ذلك قم بإزالة جميع الفواصل بإستخدام الدالة 
trem();

بعد ذلك نقول هل قراءة شريحة الإتصال = turn-on1
قم بتشغيل الجهاز الأول 
هل قراءة شريحة الإتصال = turn-off1
قم بإطفاء الجهاز الأول وهكذا تستمر هذه الآليه على العمل مع باقى المقارنات
وكان هذا شرح مبسط عن آلية عمل الكود 

لتحميل الكود اضغط هنا

تصميم وبرمجة : بلال حسان سعدى 

التحكم فى الأجهزة المنزلية عن طريق IR remote

0
بسم الله الرحمن الرحيم
بعد ان قمنا المره السابقة بتصميم مشروع التحكم فى الأجهزة عن طريق البلوتوث
وقمنا بتصميم تطبيق اندرويد للتحكم ولكن كانت هناك مشكلة وهى المسافة فإن البلوتوث لا يستطيع إستقبال الإشارة من مسافة بعيدة 
ولكن سنقوم اليوم بعمل تطوير و إستخدام تقنية IR remote للتحكم فى الأجهزة مما يضيع العديد من المزايا 
وهذا يدل ان مشاريع الأردوينو تكون دائما قابلة للتطوير لعرض المشروع القديم اضغط هنا

اولا الأدوات
IR remote sender
IR receiver
Arduino
relay module
wires
هذه هى الأدوات التى سنستخدمها فى هذا المشروع
استخدمت IR remote  للتحكم حيث انه يتكون من جزئين جزء المرسل وجزء المستلم













بالنسبة للأردوينو فأى نوع كافى ووافى للإستخدام فى هذا المشروع

بالنسبة لإستخدام relay module فيجب إستخدام واحدة تناسب عدد الأجهزة التى سنتحكم فيها 
فمثال عند استخدام relay module يحتوى على اربع relay
فيمكن التحكم فى جهازين فقط
ولقد قمنا بشرح مداخله ومخارجه فى الدرس الذي سبق رابط المشروع اضغط هنا

ثانيا التوصيلات : 


توصيل حساس ir  الى الأردوينو كما هو موضح بالصورة


بالنسبة لتوصيل relay module عليكم بالاتى :
فى المربع الاخضر
 كما نلاحظ الأطراف المكتوب تحتها int1
int2 - int3 - int4
فعند ادخال واحد عند اى طرف من الأطراف يقوم بتشغيل الملف وغلق السويتاش للسماح بسريان التياروسنف
اما فى المربع الأصفر يوجد عند كل ريلاى ثلاث منافذ
common - nc - no
يكون السويتش فى البداية متصل مع nc 
فعند بدء عمل المف يصبح common متصل مع no
وهذه هى الية عمل الملف
فعند حالتنا هنا 
نقوم بتوصيل التيار الداخل عند no
ونقوم بتوصيل الجهاز المراد تشغيله عند common 
ويحتوى الجهاز على سلكين للطاقة يجب وضع سلك فى ريلاى خاص به
والسلك الأخر فى ريلاى اخر خاص به 

ثالثا الكود
 للعمل مع ir remote نقوم بتنزيل مكتبة خاصة به 
للتنزيل اضغط هنا

والأن نتجه الى الكود 

فى البداية يجب معرفة الأكود التى يرسلها الريموت الى المستشعر لكى نستطيع التمييز بينها 

بواسطة هذا الكود 
والذى يمكنكم تحميله من هنا 
بعد رفع الكود الى الاردوينو نذهب الى صفحة السيريال مونيتور 
ونبدء الضغط على الريموت ضغطة سريعة على الأزرار التى تريد تعيينها للتحكم بالأجهزة 
نحن سنقوم بتجهيز كود للتعامل مع اربعة ازرار من الريموت للتحكم فى جهازين 

عند الذهاب على السيريال مونيتور ونضغط على اى زر فى الريموت يأتى هذا الرمز

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

ثانيا الكود النهائى
بالنسبة للكود الذى فى الأ‘لى 
مكتبة IRremote.h
والتى تعتبر أساسية لإستخدام الريموت والتى تحتوى على تعريفان مهمان 
IRrecv rec(pin);
حيث نضع هنا المنفذ الرقمى الخاص بمستلم الريموت
decode_results res
هذا التعريف هو المسئول عن اخذ النتائج الخاصة بالمستلم
بعد ان قكت بتعريف المداخل و المخارج
rec.enableIRIn();
لكى نقوم بتفعيل الإستلام الإشارات من الريموت

بعد ذلك نقوم بعمل المقارنات 
هل فى 
rec.decode(&res)
والتى تعنى هل تم إرسال اي اشارات من الريموت
فيقوم بعمل مقارنات اخرى
هل قيمة هذه الإشاؤة تساوى قيمة محددة
قم بتشغيل الجهاز رقم واحد
والى اخره
والكود المسئول عن القيام بهذا العمل هو
res.value;
 نضع مكان relay pin 

منافذ التحكم فى الريليهات
والتى هى فى المربع الأخضر

لتحميل الكود اضغط هنا

انتم ايضا هل قمتم بتجربتها شاركونا فى التعليقات

تصميم وبرمجة : بلال حسان سعدى

التحكم فى اجهزة المنزل عن طريق البلوتوث

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

الأدوات :
arduino
relay module
wires
HC-05 bluetooth module

ثانيا التوصيلات :

يجب ان تختارو ريلاى موديل به عدد مخارج تتناسب ع مشروعكم


فمثال هذه الشريحة تحتوى على اربعة منافذ مما يكفى لتشغيل جهازان



فكما تلاحظون 
فى المربع الأخضر توجد 6 منافذ
يتم توصيل vcc بالطاقة 5 فولت الخارجة من الأردوينو
يتم توصيل gnd بالسالب الخاص بالأردوبنو

فى المربع الأصفر توجد مداخل ومخارج الريلاى

فكما تلاحظون فى هذه الصورة للريلاى الواحد خمسة اطراف
يحتوى الريلاي على جزئين ملف كهربائى
وسويتش
بحيث عندما يحصل الملف على طاقة يولد مجالا مغناطيسيا يقوم بغلق السويتش
طرف الملف الموجب موجود فى المربع الخضر كما نلاحظ الأطراف المكتوب تحتها int1
int2 - int3 - int4
فعند ادخال واحد عند اى طرف من الأطراف يقوم بتشغيل الملف وغلق السويتاش للسماح بسريان التياروسنف
اما فى المربع الأصفر يوجد عند كل ريلاى ثلاث منافذ
common - nc - no
يكون السويتش فى البداية متصل مع nc 
فعند بدء عمل المف يصبح common متصل مع no
وهذه هى الية عمل الملف
فعند حالتنا هنا 
نقوم بتوصيل التيار الداخل عند no
ونقوم بتوصيل الجهاز المراد تشغيله عند common 
ويحتوى الجهاز على سلكين للطاقة يجب وضع سلك فى ريلاى خاص به
والسلك الأخر فى ريلاى اخر خاص به 

بالنسبة لشريحة البلوتوث فيجل استخدام hc-05 لأنها قادرة على ارسال واستقبال البيانات
على عطس نظيرتها hc-6
والتوصيل موضح فى الصورة


وسنقوم بتصميم تطبيق اندرويد للتعامل مع الموضوع 
سأضع رابط تحميله فى نهاية الموضوع

ثالثا كود الأردوينو :

الكود ليس معقد ابدا واستخدمنا فيه مكتبة SoftwareSerial

فقط هذا هو الكود 


كما تلاحظون ان الكود ليس بالمعقد 
حيث قمت بإضافة المكتبة الخاصة بالسوفت وير سيريال
التى تكون قادرة على تعيين المنافذ الإرسال والإستقبال
#include<SoftwareSerial.h>
وقمت بتعريف منفذين رقمين كمدخل بيانات وخرج بيانات
SoftwareSerial bluetooth(rx,tx);
بعد ذلك تحديد سرعة الإتصال بين البلوتوث و التطبيق عن طريق
bluetooth.begin(9600);
بعد ذلك قمت بإنشاء متغير من نوع 
char
حتى اقوم بتخزين البيانات فيه عن طريف
char x = Serial.read();
حيث يقوم هذا الأمر بإستلام البيانات من الهاتف بصورة char
وقمت بعمل مقارنات هل تم ارسال حرف a
قم بتشغيل الجهاز رقم واحد
هل تم ارسال حرف b
قم بتشغيل الجهاز رقم 2 والى اخره
فهذا شرح مبسط للكود الذى فى الأعلى
وسنقومو الأن بتجهيز تطبيق الهاتف 
وقمت بتصميم هذا التطبيق على منصة APP INVENTOR

هذا هو شكل التطبيق كما موضح فى الأعلى فهو مناسب للتحكم بجهازين فقط 

ان لم كان لديكم اسئلة اتركوها فى التعليقات

لتحميل الكود الأردوينو والتطبيق اضغط هنا

واذا اردتم تطبيق للتحكم بأكثر من جهازين تواصلوا معى على البريد الخاص بالموقع