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

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



جرس الانذار

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



كيف تصمم جهاز إنذار دخيل قائم على مستشعر PIR؟

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



الخطوة 1: تجميع المكونات (الأجهزة)

  • 10 كيلو أوم المقاوم
  • يؤدى
  • صفارة
  • بطارية 9 فولت
  • مقطع بطارية 9 فولت
  • فيروبورد
  • توصيل الأسلاك
  • رقمي متعدد متر

الخطوة 2: المكونات المطلوبة (البرنامج)

  • Proteus 8 Professional (يمكن تنزيله من هنا )

بعد تنزيل Proteus 8 Professional ، صمم الدائرة عليه. لقد قمت بتضمين محاكاة البرامج هنا حتى يكون من الملائم للمبتدئين تصميم الدائرة وإجراء الاتصالات المناسبة على الأجهزة.



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

عمل هذه الدائرة بسيط للغاية. في البداية ، يتم ضبط حالة مستشعر PIR على LOW. هذا يعني أنه لم يتم الكشف عن أي حركة. عندما يكتشف مستشعر PIR حركة ، فإنه سيرسل إشارة إلى وحدة التحكم الدقيقة. سيقوم المتحكم الدقيق بعد ذلك بتشغيل الجرس و LED. إذا لم يتم اكتشاف أي حركة ، فسيظل مصباح LED والجرس في حالة إيقاف التشغيل.

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

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

  1. خذ لوح Veroboard وافرك جانبه بطلاء النحاس بورق مكشطة.
  2. الآن ضع المكونات بعناية وقريبة بدرجة كافية بحيث لا يصبح حجم الدائرة كبيرًا جدًا
  3. خذ قطعتين من رؤوس الإناث وضعها على Veroboard بحيث تكون المسافة بينهما مساوية لعرض لوحة Arduino nano. سنقوم لاحقًا بتركيب لوحة Arduino nano في هذه الرؤوس الأنثوية.
  4. قم بإجراء التوصيلات بعناية باستخدام حديد اللحام. في حالة حدوث أي خطأ أثناء إجراء الاتصالات ، حاول إلغاء الاتصال ولحام الاتصال مرة أخرى بشكل صحيح ، ولكن في النهاية ، يجب أن يكون الاتصال محكمًا.
  5. بمجرد إجراء جميع الاتصالات ، قم بإجراء اختبار الاستمرارية. في الإلكترونيات ، اختبار الاستمرارية هو فحص الدائرة الكهربائية للتحقق مما إذا كان تدفق التيار في المسار المطلوب (أنه بالتأكيد دائرة كاملة). يتم إجراء اختبار الاستمرارية عن طريق ضبط جهد بسيط (سلكي بترتيب مع LED أو جزء يخلق اضطرابًا ، على سبيل المثال ، مكبر صوت كهرضغطية) على الطريقة المختارة.
  6. إذا نجح اختبار الاستمرارية ، فهذا يعني أن الدائرة مصنوعة بشكل كافٍ حسب الرغبة. إنه الآن جاهز للاختبار.
  7. قم بتوصيل البطارية بالدائرة.

تحقق الآن من جميع الاتصالات من خلال النظر إلى مخطط الدائرة أدناه:



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

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

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

  1. قم بتنزيل أحدث إصدار من Arduino IDE من اردوينو.
  2. قم بتوصيل لوحة Arduino Nano بجهاز الكمبيوتر المحمول وافتح لوحة التحكم. في لوحة التحكم ، انقر فوق الأجهزة والصوت . انقر الآن على الأجهزة والطابعات. هنا ، ابحث عن المنفذ الذي تتصل به لوحة وحدة التحكم الدقيقة الخاصة بك. في حالتي هو كذلك COM14 لكنه يختلف على أجهزة الكمبيوتر المختلفة.

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

  3. انقر فوق قائمة الأداة. وضبط اللوحة على اردوينو نانو من القائمة المنسدلة.

    لوحة الإعداد

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

    منفذ الإعداد

  5. في قائمة الأداة نفسها ، اضبط المعالج على ATmega328P (محمل الإقلاع القديم).

    المعالج

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

    رفع

لتنزيل الكود ، انقر هنا.

الخطوة السادسة: فهم المدونة

رمز هذا المشروع معلق جيدًا ويسهل فهمه. ولكن مع ذلك ، يتم شرحه بإيجاز أدناه.

1. في البداية ، تتم تهيئة دبابيس Arduino والتي سيتم توصيلها لاحقًا بمصباح LED والجرس. يتم أيضًا الإعلان عن متغير يقوم بتخزين بعض القيم أثناء وقت التشغيل. ثم يتم ضبط الحالة الأولية لـ PIR على LOW ، مما يعني أنه تم إخباره بعدم اكتشاف أي حركة في البداية.

int ledPin = 5 ؛ // اختر الدبوس الخاص بـ LED int Buzzer = 6 ؛ // اختر الدبوس الخاص بـ Buzzer int inputPin = 2 ؛ // اختر دبوس الإدخال (لمستشعر PIR) int pirState = LOW ؛ // نبدأ ، بافتراض عدم اكتشاف حركة. int val = 0 ؛ // متغير لقراءة حالة الدبوس وتخزينها لمزيد من الاستخدام

2. الإعداد باطل() هي وظيفة نقوم فيها بتهيئة دبابيس لوحة Arduino لاستخدامها كإدخال أو إخراج. يتم تعيين معدل الباود أيضًا في هذه الوظيفة. معدل الباود هو سرعة البت في الثانية التي يتصل بها الميكروكونترولر مع الأجهزة الخارجية.

إعداد باطل () {pinMode (ledPin، OUTPUT) ؛ // إعلان LED كإخراج pinMode (الجرس ، الإخراج) ؛ // يعلن الجرس كإخراج pinMode (inputPin ، INPUT) ؛ // يعلن عن المستشعر كمدخل Serial.begin (9600) ؛ // تعيين معدل الباود يساوي 9600}

3. حلقة فارغة() هي وظيفة يتم تشغيلها مرارًا وتكرارًا في حلقة. في هذه الوظيفة ، يتم برمجة المتحكم الدقيق ، لذا إذا اكتشف الحركة ، فسوف يرسل إشارة إلى الجرس والصمام وتشغيلهما. إذا لم يتم الكشف عن الحركة ، فلن تفعل أي شيء.

حلقة باطلة () {val = digitalRead (inputPin) ؛ // قراءة قيمة الإدخال من مستشعر PIR إذا (val == HIGH) // إذا تم اكتشاف الحركة قبل {digitalWrite (ledPin ، HIGH) ؛ // قم بتشغيل LED على digitalWrite (الجرس ، 1) ؛ // تشغيل الجرس تأخير (5000) ؛ // أنشئ تأخيرًا لمدة خمس ثوانٍ إذا (pirState == LOW) {// إذا كانت الحالة منخفضة مبدئيًا ، فهذا يعني أنه لم يتم اكتشاف أي حركة من قبل // لقد قمنا للتو بتشغيل Serial.println ('تم اكتشاف الحركة!') ؛ // طباعة على الشاشة التسلسلية التي تم اكتشاف الحركة فيها pirState = HIGH ؛ // pirState مضبوط على HIGH}} else {digitalWrite (ledPin، LOW)؛ // Turn LED OFF digitalWrite (الجرس ، 0) ؛ // إيقاف تشغيل الجرس إذا (pirState == HIGH) {// إذا كانت الحالة عالية مبدئيًا ، فهذا يعني أنه تم اكتشاف بعض الحركة قبل // لقد قمنا للتو بإيقاف تشغيل Serial.println ('Motion ended!') ؛ // اطبع على الشاشة التسلسلية أن الحركة قد انتهت pirState = LOW ؛ تم ضبط // pirState على LOW}}}

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