تعد أنظمة إنذار الحريق شائعة جدًا في المباني التجارية والمصانع ، وتحتوي هذه الأجهزة عادةً على مجموعة من المستشعرات التي تراقب باستمرار أي لهب أو غاز أو حريق في المبنى وتطلق إنذارًا إذا اكتشفت أيًا من هذه. واحدة من أبسط الطرق لاكتشاف الحريق هي باستخدام مستشعر لهب الأشعة تحت الحمراء ، فهذه المستشعرات تحتوي على ثنائي ضوئي IR حساس لضوء الأشعة تحت الحمراء. الآن ، في حالة نشوب حريق ، لن ينتج عن الحريق حرارة فحسب ، بل ستصدر أيضًا أشعة IR ، نعم كل لهب مشتعل سيصدر مستوى معينًا من ضوء الأشعة تحت الحمراء ، وهذا الضوء غير مرئي للعين البشرية ولكن جهاز استشعار اللهب الخاص بنا يمكنه اكتشافه وقم بتنبيه متحكم دقيق مثل Arduino أنه تم اكتشاف حريق.
في هذه المقالة نتعامل مع Flame Sensor مع Arduino ونتعلم جميع الخطوات لبناء نظام إنذار الحريق باستخدام Arduino ومستشعر اللهب. تحتوي وحدة مستشعر اللهب على ثنائي ضوئي للكشف عن الضوء ومضخم صوت للتحكم في الحساسية. يتم استخدامه لاكتشاف الحريق وتقديم إشارة عالية عند الكشف. يقرأ Arduino الإشارة ويوفر تنبيهًا عن طريق تشغيل الجرس و LED. مستشعر اللهب المستخدم هنا هو مستشعر اللهب القائم على الأشعة تحت الحمراء. لقد استخدمنا أيضًا نفس المفهوم لاكتشاف الحرائق في روبوت مكافحة الحرائق الخاص بنا ، ويمكنك أيضًا التحقق مما إذا كنت مهتمًا.
مستشعر اللهب
A كاشف اللهب هو استشعار تهدف إلى الكشف عن والاستجابة إلى وجود لهب أو النار. تعتمد الاستجابات للهب المكتشف على التركيب ولكن يمكن أن تشمل إطلاق إنذار وإلغاء تنشيط خط الوقود (مثل غاز البروبان أو خط الغاز الطبيعي) وتفعيل نظام إخماد الحرائق. يظهر مستشعر IR Flame المستخدم في هذا المشروع أدناه ، وتسمى هذه المستشعرات أيضًا وحدة مستشعر الحريق أو مستشعر كاشف اللهب في بعض الأحيان.
توجد أنواع مختلفة من طرق اكتشاف اللهب. بعض منها: كاشف الأشعة فوق البنفسجية ، بالقرب من كاشف مصفوفة الأشعة تحت الحمراء ، كاشف الأشعة تحت الحمراء (IR) ، الكاميرات الحرارية بالأشعة تحت الحمراء ، كاشف الأشعة فوق البنفسجية / الأشعة تحت الحمراء إلخ.
عندما تحترق النار ، فإنها تصدر كمية صغيرة من ضوء الأشعة تحت الحمراء ، سيتم استقبال هذا الضوء بواسطة الثنائي الضوئي (مستقبل الأشعة تحت الحمراء) على وحدة المستشعر. ثم نستخدم Op-Amp للتحقق من وجود تغيير في الجهد عبر مستقبل الأشعة تحت الحمراء ، بحيث إذا تم اكتشاف حريق ، فإن دبوس الإخراج (DO) سيعطي 0V (LOW) ، وإذا لم يكن هناك حريق ، فسيكون دبوس الإخراج 5 فولت (عالية).
في هذا المشروع ، نستخدم مستشعر اللهب القائم على الأشعة تحت الحمراء. يعتمد على مستشعر YG1006 وهو عبارة عن ترانزستور ضوئي من السيليكون NPN عالي السرعة وعالي الحساسية. يمكنه الكشف عن ضوء الأشعة تحت الحمراء بطول موجة يتراوح من 700nm إلى 1000nm وزاوية الكشف الخاصة به حوالي 60 °. تتكون وحدة مستشعر اللهب من الثنائي الضوئي (مستقبل الأشعة تحت الحمراء) ، والمقاوم ، والمكثف ، ومقياس الجهد ، ومقارن LM393 في دائرة متكاملة. يمكن ضبط الحساسية عن طريق تغيير مقياس الجهد الموجود على متن الطائرة. جهد العمل بين 3.3 فولت و 5 فولت تيار مستمر ، مع مخرج رقمي. يشير المنطق المرتفع على الخرج إلى وجود لهب أو نار. يشير المنطق المنخفض للإنتاج إلى عدم وجود لهب أو نار.
فيما يلي وصف الدبوس لوحدة مستشعر اللهب:
دبوس |
وصف |
Vcc |
3.3 - 5V امدادات الطاقة |
GND |
أرض |
دوت |
الإخراج الرقمي |
تطبيقات مجسات اللهب
- محطات الهيدروجين
- شاشات احتراق الشعلات
- خطوط أنابيب النفط والغاز
- مرافق تصنيع السيارات
- المنشآت النووية
- حظائر الطائرات
- حاويات التوربينات
المكونات مطلوبة
- Arduino Uno (يمكن استخدام أي لوحة Arduino)
- وحدة استشعار اللهب
- يؤدى
- صفارة
- المقاوم
- أسلاك توصيل
مخطط الرسم البياني
الصورة أدناه هي الرسم التخطيطي لدائرة مستشعر النار في Arduino ، وهي توضح كيفية توصيل وحدة مستشعر الحريق مع Arduino.
عمل حساس اللهب مع اردوينو
Arduino Uno هي لوحة متحكم مفتوحة المصدر تعتمد على متحكم ATmega328p. يحتوي على 14 دبوسًا رقميًا (منها 6 دبابيس يمكن استخدامها كمخرجات PWM) ، 6 مدخلات تناظرية ، منظمات جهد على متن الطائرة إلخ. Arduino Uno به ذاكرة فلاش 32 كيلو بايت ، 2 كيلو بايت من SRAM و 1 كيلو بايت من EEPROM. يعمل بتردد ساعة 16 ميجا هرتز. يدعم Arduino Uno اتصالات Serial و I2C و SPI للتواصل مع الأجهزة الأخرى. يوضح الجدول أدناه المواصفات الفنية لـ Arduino Uno.
متحكم |
ATmega328p |
جهد التشغيل |
5 فولت |
مساهمة الجهد |
7-12 فولت (موصى به) |
دبابيس الإدخال / الإخراج الرقمية |
14 |
دبابيس تناظرية |
6 |
ذاكرة متنقله |
32 كيلوبايت |
SRAM |
2 كيلوبايت |
إيبروم |
1 كيلوبايت |
سرعة الساعة |
16 ميجا هرتز |
و أجهزة الاستشعار لهب بالكشف عن وجود حريق أو لهب على أساس (IR) الطول الموجي الأشعة تحت الحمراء المنبعثة من اللهب. يعطي المنطق 1 كناتج إذا تم اكتشاف اللهب ، وإلا فإنه يعطي المنطق 0 كناتج. يتحقق Arduino Uno من المستوى المنطقي على طرف إخراج المستشعر ويقوم بمهام أخرى مثل تنشيط الجرس و LED ، وإرسال رسالة تنبيه.
تحقق أيضًا من مشاريع إنذار الحريق الأخرى:
- إنذار الحريق باستخدام الثرمستور
- نظام إنذار الحريق باستخدام متحكم AVR
- روبوت مكافحة الحرائق اردوينو
شرح الكود
تم تقديم كود Arduino الكامل لهذا المشروع في نهاية هذه المقالة. يتم تقسيم الكود إلى أجزاء صغيرة ذات معنى وموضح أدناه.
في هذا الجزء من الكود ، سنقوم بتعريف دبابيس مستشعر اللهب ، ومؤشر LED ، والصفارة المتصلة بـ Arduino. مستشعر اللهب متصل بالدبوس الرقمي 4 من Arduino. الجرس متصل بالدبوس الرقمي 8 من Arduino. LED متصل بالدبوس الرقمي 7 من Arduino.
يستخدم المتغير " flame_detected " لتخزين القيمة الرقمية المقروءة من حساس اللهب. بناءً على هذه القيمة سنكتشف وجود اللهب.
الجرس int = 8 ؛ الصمام int = 7 ؛ int flame_sensor = 4 ؛ كشف اللهب.
في هذا الجزء من الكود ، سنقوم بتعيين حالة المسامير الرقمية لـ Arduino وتكوينها
معدل الباود للاتصال التسلسلي مع الكمبيوتر لعرض حالة دائرة الكشف عن اللهب.
إعداد باطل () { Serial.begin (9600) ؛ pinMode (الجرس ، الإخراج) ؛ pinMode (LED ، الإخراج) ؛ pinMode (flame_sensor ، INPUT) ؛ }
يقرأ سطر الكود هذا الإخراج الرقمي من مستشعر اللهب ويخزنه في المتغير “ flame_detected ”.
flame_detected = digitalRead (flame_sensor) ؛
بناءً على القيمة المخزنة في "تم اكتشاف اللهب " ، يتعين علينا تشغيل الجرس والصمام. في هذا الجزء من الكود ، نقارن القيمة المخزنة في " flame_detected " مع 0 أو 1.
إذا كانت تساوي 1 ، فإنها تشير إلى اكتشاف اللهب. يتعين علينا تشغيل الجرس و LED ثم عرض رسالة تنبيه في الشاشة التسلسلية لـ Arduino IDE.
إذا كانت تساوي 0 ، فهذا يشير إلى أنه لم يتم اكتشاف أي لهب ، لذلك يتعين علينا إيقاف تشغيل LED والجرس. تتكرر هذه العملية كل ثانية لتحديد وجود حريق أو لهب.
إذا (flame_detected == 1) { Serial.println ("تم اكتشاف اللهب…! اتخذ الإجراء فورًا.")؛ الكتابة الرقمية (الجرس ، عالية) ؛ الكتابة الرقمية (LED ، عالية) ؛ تأخير (200) ؛ الكتابة الرقمية (LED ، منخفضة) ؛ تأخير (200) ؛ } else { Serial.println ("لم يتم اكتشاف اللهب. ابق باردًا") ؛ الكتابة الرقمية (الجرس ، منخفضة) ؛ الكتابة الرقمية (LED ، منخفضة) ؛ } تأخير (1000)؛
قمنا ببناء روبوت لمكافحة الحرائق على أساس هذا المفهوم ، والذي يكتشف الحريق تلقائيًا ويضخ الماء لإخماد الحريق. الآن أنت تعرف كيفية القيام بالكشف عن الحرائق باستخدام Arduino ومستشعر اللهب ، آمل أن تكون قد استمتعت بتعلم ذلك ، إذا كان لديك أي أسئلة اتركها في قسم التعليقات أدناه.
تحقق من الكود الكامل والفيديو التوضيحي أدناه.