Search Code

آرڈوینو کوڈ اور ویڈیو: آرڈوینو کے لیے فلیم سینسر ماجیول

آرڈوینو کوڈ اور ویڈیو: آرڈوینو کے لیے فلیم سینسر ماجیول

اس ٹیوٹوریل میں، ہم Arduino کے ساتھ فلیم سینسر ماجیول استعمال کرنے کا طریقہ سیکھیں گے۔ فلیم سینسر شعلے کی موجودگی کا پتہ لگاتا ہے اور جب یہ پتہ لگاتا ہے تو الارم یا اشارہ چالو کر سکتا ہے۔ اس پروجیکٹ کے اختتام تک، آپ کے پاس ایک کام کرنے والا نظام ہوگا جو شعلے کی موجودگی پر آڈیو الرٹ اور بصری فیڈ بیک کے ساتھ جواب دیتا ہے۔

infrared flame sensor module -blue
infrared flame sensor module

فلیم سینسر ماجیول شعلوں کا پتہ لگانے کے لیے انفراریڈ ایل ای ڈی استعمال کرکے کام کرتا ہے۔ جب شعلہ دریافت ہوتا ہے، ماجیول ایک سگنل خارج کرتا ہے جسے دوسرے اجزاء، جیسے بزر یا ایل ای ڈی کو فعال کرنے کے لیے استعمال کیا جا سکتا ہے۔ اس پروجیکٹ میں فلیم سینسر کو Arduino سے جوڑنا اور ان پٹ اور آؤٹ پٹ کو سنبھالنے کے لیے ایک سادہ پروگرام لکھنا شامل ہوگا۔

کوڈ اور وائرنگ کی واضح سمجھ کے لیے، میں آپ کو متعلقہ ویڈیو دیکھنے کی ترغیب دیتا ہوں (ویڈیو میں 00:00 پر)۔

ہارڈویئر کی وضاحت

اس پروجیکٹ کے اہم اجزاء میں فلیم سینسر ماجیول، ایک Arduino بورڈ، اور الارم کے لیے بزر یا ایل ای ڈی شامل ہیں۔ فلیم سینسر میں چار پن ہیں: ایک ڈیجیٹل آؤٹ پٹ پن (DO)، ایک اینالاگ آؤٹ پٹ پن (AO)، ایک پاور پن (VCC)، اور ایک گراؤنڈ پن (GND)۔ ڈیجیٹل آؤٹ پٹ پن جب شعلہ دریافت ہوتا ہے تو HIGH سگنل بھیجتا ہے، جبکہ اینالاگ آؤٹ پٹ شعلے کی شدت کی بنیاد پر مختلف اقدار فراہم کرتا ہے۔

Arduino ڈیجیٹل آؤٹ پٹ پڑھتا ہے تاکہ یہ معلوم کیا جا سکے کہ آیا شعلہ موجود ہے۔ جب سینسر شعلہ دریافت کرتا ہے، Arduino آؤٹ پٹ پن کا استعمال کرکے الارم یا روشنی چالو کر سکتا ہے۔ شعلے کی موجودگی کی حساسیت کو ماجیول پر موجود بلٹ ان پوٹینشیومیٹر کے ذریعے ایڈجسٹ کیا جا سکتا ہے۔

ڈیٹاشیٹ کی تفصیلات

مینوفیکچررجنرک
پارٹ نمبرLM393
لاجک/آئی او وولٹیج5 V
سپلائی وولٹیج2–36 V
آؤٹ پٹ کرنٹ (فی چینل)20 mA
پیک کرنٹ (فی چینل)50 mA
PWM فریکوئنسی رہنمائیN/A
ان پٹ لاجک تھریشولڈز0.8 V (کم)، 2.0 V (زیادہ)
وولٹیج ڈراپ / RDS(on) / سیچوریشن0.2 V
تھرمل حدود125 °C
پیکیجTO-220
نوٹس / ویریئنٹسایڈجسٹ ایبل حساسیت

  • ماجیول کے لیے 2 سے 36 V کے درمیان مناسب وولٹیج سپلائی یقینی بنائیں۔
  • بہترین شعلہ دریافت کے لیے سینسر کی انفراریڈ ایل ای ڈی کو صاف رکھیں۔
  • اگر ماجیول اپنی پیک کرنٹ حدود کے قریب کام کرتا ہے تو ہیٹ سنک استعمال کریں۔
  • شارٹ سرکٹ یا غلط کنکشن سے بچنے کے لیے وائرنگ میں احتیاط برتیں۔
  • مختلف ایپلیکیشنز کے لیے آن بورڈ پوٹینشیومیٹر کا استعمال کرکے حساسیت کو ایڈجسٹ کریں۔
  • تصدیق کریں کہ الارم آؤٹ پٹ منسلک لوڈ (بزر/ایل ای ڈی) کو سنبھال سکتا ہے۔

وائرنگ ہدایات

Arduino wiring for infrared flame sensor
Arduino wiring for infrared flame sensor
Arduino wiring for infrared flame sensor
Arduino wiring for infrared flame sensor

فلیم سینسر ماجیول کو Arduino سے جوڑنے کے لیے، پہلے فلیم سینسر کے VCC پن کو Arduino کے 5V پن سے جوڑیں۔ پھر، سینسر کے GND پن کو Arduino کے کسی ایک GND پن سے جوڑیں۔ فلیم سینسر کا ڈیجیٹل آؤٹ پٹ پن (DO) Arduino کے ڈیجیٹل پن 2 سے منسلک ہونا چاہیے، جسے ہم کوڈ میں FLAME کہیں گے۔ آخر میں، ایک الارم ڈیوائس، جیسے بزر، کو Arduino کے ڈیجیٹل پن 8 سے جوڑیں، جسے ALARM کہا جاتا ہے۔

یقینی بنائیں کہ تمام کنکشن مضبوط ہیں، کیونکہ ڈھیلے کنکشن غیر مستقل رویے کا سبب بن سکتے ہیں۔ اگر آپ اینالاگ آؤٹ پٹ استعمال کرنا چاہتے ہیں، تو اینالاگ آؤٹ پٹ پن (AO) کو Arduino کے اینالاگ پن، جیسے A0، سے جوڑیں، لیکن یہ بنیادی فعالیت کے لیے اختیاری ہے۔ ویڈیو میں، متبادل وائرنگ طریقوں پر بھی بحث کی گئی ہے (ویڈیو میں 02:30 پر)۔

کوڈ مثالیں اور واک تھرو

درج ذیل کوڈ سنیپٹ فلیم سینسر کو ابتدائی کرتا ہے اور سیریل مانیٹر سیٹ اپ کرتا ہے:

#define FLAME 2 // سینسر کے DO پن کو اس پن سے جوڑیں
#define ALARM 8 // الارم کے لیے پن 8

void setup() {
  Serial.begin(9600);
  Serial.println("Robojax.com Fire Module Test");
  pinMode(FLAME, INPUT); // FLAME ان پٹ پن کی وضاحت کریں
  pinMode(ALARM, OUTPUT); // ALARM آؤٹ پٹ پن کی وضاحت کریں
}

یہاں، ہم فلیم سینسر اور الارم کے لیے پنوں کی وضاحت کرتے ہیں، اور 9600 باؤڈ پر سیریل کمیونیکیشن شروع کرتے ہیں۔ یہ ہمیں ڈیبگنگ کے لیے سیریل مانیٹر پر پیغامات پرنٹ کرنے کی اجازت دیتا ہے۔

اگلا، ہم مین لوپ میں فلیم سینسر پڑھتے ہیں:

void loop() {
  int fire = digitalRead(FLAME); // FLAME سینسر پڑھیں

  if(fire == HIGH) {
    digitalWrite(ALARM, HIGH); // بزر آن کریں
    Serial.println("Fire! Fire!");
  } else {
    digitalWrite(ALARM, LOW); // بزر آف کریں
    Serial.println("Peace");
  }
  delay(200);
}

کوڈ کا یہ حصہ فلیم سینسر کی حالت چیک کرتا ہے۔ اگر یہ شعلہ دریافت کرتا ہے (HIGH)، تو یہ الارم چالو کرتا ہے اور سیریل مانیٹر پر "Fire! Fire!" پرنٹ کرتا ہے۔ اگر کوئی شعلہ نہیں ہے (LOW)، تو یہ الارم بند کرتا ہے اور "Peace" پرنٹ کرتا ہے۔ لوپ میں 200 ملی سیکنڈ کی تاخیر شامل ہے، جسے دریافت کی حساسیت کو تبدیل کرنے کے لیے ایڈجسٹ کیا جا سکتا ہے۔

ڈیموسٹریشن / کیا توقع کریں

جب سسٹم آن ہوتا ہے، سیریل مانیٹر "Robojax.com Fire Module Test" کے بعد "Peace" دکھائے گا جب تک کہ شعلہ دریافت نہ ہو۔ ایک بار جب شعلہ دریافت ہوتا ہے، بزر بجے گا، اور ایل ای ڈی روشن ہوگی، جو آگ کی حالت کی نشاندہی کرے گی۔ آپ ماجیول پر پوٹینشیومیٹر کو ایڈجسٹ کرکے سینسر کی حساسیت کو جانچ سکتے ہیں۔ جھوٹے مثبت نتائج سے محتاط رہیں، جیسے ریموٹ کنٹرولز کے انفراریڈ سگنلز کی وجہ سے (ویڈیو میں 04:15 پر)۔

ویڈیو ٹائم اسٹیمپس

  • 00:00 - فلیم سینسر ماجیول کا تعارف
  • 02:30 - وائرنگ ہدایات
  • 04:15 - شعلہ دریافت کا ڈیموسٹریشن

تصاویر

infrared flame sensor module -blue
infrared flame sensor module -blue
infrared flame sensor module
infrared flame sensor module
Arduino wiring for infrared flame sensor
Arduino wiring for infrared flame sensor
Arduino wiring for infrared flame sensor
Arduino wiring for infrared flame sensor
62-This is the Arduino code and video for a flame sensor module for Arduino.
زبان: C++
/*
 * This is code for a Flame Sensor module for Arduino.
 * Watch the video https://youtu.be/OZkZIP3KlHQ
  * Other Arduino libraries and videos https://robojax.com
 *  * 
	Flame Sensor module for Arduino
	Written by Ahmad Shamshiri for Robojax.com
	on January 18, 2018 at 22:21 in Ajax, Ontario, Canada
 * Permission granted to share this code given that this
 * note is kept with the code.
 * Disclaimer: This code is "AS IS" and for educational purposes only.
 * 
 * 
 */
/*


What does it do?
When the infrared diode sees the flame, it sends the digital output DO to
also, the level of flame is represented with the analog output.

 */
  // 4 Infrared Obstacle code for Robojax.com
#define FLAME 2 // connect DO pin of sensor to this pin
#define ALARM 8 // pin 8 for Alarm 


void setup() {
  Serial.begin(9600);
  Serial.println("Robojax.com Fire Module Test");
  pinMode(FLAME, INPUT);//define FLAME input pin
  pinMode(ALARM, OUTPUT);//define ALARM output pin
  // Flame sensor code for Robojax.com

}

void loop() {
    // Flame sensor code for Robojax.com

  int fire = digitalRead(FLAME);// read FLAME sensor


  if( fire == HIGH)
  {
    digitalWrite(ALARM,HIGH);// set the buzzer ON
    Serial.println("Fire! Fire!");
  }else{
    digitalWrite(ALARM,LOW); // Set the buzzer OFF
    Serial.println("Peace");
    // Flame sensor code for Robojax.com

  }



  delay(200);
}

وسائل اور حوالہ جات

فائلیں📁

کوئی فائلیں دستیاب نہیں ہیں۔