PIR Sensor with arduino | مجس الحركة July 31, 2017 – Posted in: Arduino, Learn arduino – Tags: مجس, مجس الحركة, مستشعر الحركة
في هذا الدرس سوف نتعلم استخدام مجس الحركة ‘Motion PIR sesnor’ وجعل الأردوينو تعمل على إضاءة led عند استشعارها لحركة قريبه عليها.
القطع المطلوبة:
ما نحتاجه في هذا الدرس هو:
-
Arduino Uno – R3 (china)₪ 35.0
-
LED – Basic Red 5mm₪ 1.0
-
Product on saleFemale/Male Jumper Wires – 40 x 20cm₪ 16.0
-
PIR Motion Sensor Module₪ 24.0
أولا دعونا نقوم بشرح مبدأ عمل مجس الحركة –PIR Sensor- وكيفية مقدرته على معرفة حركة التي تحدث حوله.
مجس الحركة PIR Sensor – HC-SR501
قطعه كهروحراريه يكشف عن وجود الحركه من خلال استشعار التغيرات في مستويات الاشعه تحت الحمراء المنبعثه من الاجسام المحيطه به ويحولها لاشاره كهربائيه.هذه الاشاره يمكننا قرآتها بواسطه متحكم (Microcontroller).
وهذا يعني عند مرور الجسم البشري أو الحيوان في نطاق الكشف للمجس الكهروحراري فإنه سيتم الكشف عن حركتها بسبب الطاقة الحرارية المنبعثة في شكل من أشكال الأشعة تحت الحمراء. واسم جهاز PIR motion وهو passive infered أي استشعار الأشعة تحت الحمراء السلبي. ومصطلح “السلبي” يعني أن أجهزة الاستشعار لا تستخدم أي طاقة لعملية الكشف، فإنه يعمل فقط عن طريق الكشف عن الطاقة التي يستقبلها من قبل الكائنات الأخرى.
حساس الحركه قطعه تستشعر وجود حركه بالقرب منها لمسافه من 3 الى 7 متر بزمن تأخير عالاقل 5 ثواني ويتكون االمجس من غطاء مصمم خصيصا يسمى عدسة فريسنل، والتي تعمل على تركز إشارات الأشعة تحت الحمراء على جهاز استشعار كهربي حراري.ويستشعر وجود الحركه بزاويه 110درجه.فعند وجود الحركه يعطي اشاره رقميه (HIGH ) . يمكننا التحكم بزمن اخذ القراءات ومسافه كشف الحركه عن طريق مقاومتين متغيرتين بتحريكهم باتجاه عقارب الساعه.
طريقة التوصيل:
راح يكون طريقة التوصيل بسيطة جدا, راح نوصل الLed في منفذ رقم 13 و نوصل المنفذ الأرضي للمنفذ الأرضي و ل5 فولت للمجس بالمنفذ الأرضي و ال5 فولت للاردوينو و منفذ الإشارة للمجس بمنفذ رقم 10 للاردوينوا كما في الصورة التالية:
بعد ما وصلنا الدائرة سوف نذهب لشرح الكود, وهنا الكود بسيط جدا وهو عباره عن قرأة للمنفذ المتصل للمجس و من ثم مقارنته و التحكم في المنفذ المتصل في الد اما تشغيله او اطفائه.
الكود كامل
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
int pirSensor = 10; int LedInput = 13; void setup() { pinMode(pirSensor, INPUT); pinMode(LedInput, OUTPUT); } void loop() { int sensorValue = digitalRead(pirSensor); if (sensorValue == 1) { digitalWrite(LedInput, HIGH); } else digitalWrite(LedInput, LOW); } |
1 Comment
Zaher Hamza January 14, 2019 - 11:11
Hi Dear,
How I can add IP and Mac Address to PIR Sensor Ardeno