د آردوینو کوډ او ویډیو: د آردوینو لپاره د لمبې سینسر ماډل
په دې ټیوټوریل کې به موږ وپلټو چې څنګه د اور لمبې سینسر ماډل د Arduino سره وکاروو. د اور لمبې سینسر د لمبې شتون کشف کوي او کولی شي کله چې یې کشف کړي، یو الارم یا اشاره فعاله کړي. د دې پروژې په پای کې به تاسو یو فعال سیسټم ولرئ چې د اور لمبې کشف ته د اوریدونکي خبرتیا او لید فیډبیک سره ځواب وايي.


د اور لمبې سینسر ماډل د لمبې کشف کولو لپاره د انفراریډ LED په کارولو سره کار کوي. کله چې لمبه کشف شي، ماډل یو سیګنال تولیدوي چې د نورو برخو لکه بزر یا LED فعالولو لپاره کارول کیدی شي. دا پروژه به د اور لمبې سینسر د Arduino سره نښلول او د انپټ او آوټ پوټ اداره کولو لپاره د یو ساده پروګرام لیکل شامل وي.
د کوډ او تارونو د روښانه پوهیدو لپاره، زه تاسو هڅوم چې اړونده ویډیو وګورئ (په ویډیو کې په 00:00).
هارډویر تشریح شوی
په دې پروژه کې اصلي برخې د اور لمبې سینسر ماډل، د Arduino بورډ، او د خبرتیا لپاره یو بزر یا LED شامل دي. د اور لمبې سینسر څلور پنونه لري: یو ډیجیټل آوټ پوټ پن (DO)، یو انلاګ آوټ پوټ پن (AO)، د بریښنا پن (VCC)، او د ځمکې پن (GND). د ډیجیټل آوټ پوټ پن کله چې لمبه کشف شي یو HIGH سیګنال لیږي، پداسې حال کې چې انلاګ آوټ پوټ د لمبې د شدت پر بنسټ مختلف ارزښتونه چمتو کوي.
Arduino ډیجیټل آوټ پوټ لوستلی ترڅو معلومه کړي چې ایا لمبه شتون لري. کله چې سینسر لمبه کشف کړي، Arduino بیا کولی شي د آوټ پوټ پن په کارولو سره یو الارم یا څراغ فعال کړي. د اور لمبې کشف حساسیت د ماډل په جوړ شوي پوټینشیومیټر په کارولو سره تنظیم کیدی شي.
ډیټاشیټ تفصیلات
| جوړونکی | عمومي |
|---|---|
| د پرزې شمېره | LM393 |
| منطق/IO ولټاژ | 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 پورې د بریښنا سمه رسول ډاډمن کړئ.
- د اور لمبې د غوره کشف لپاره د سینسر انفراریډ LED پاک وساتئ.
- که ماډل د خپل لوړ جریان حدونو ته نږدې کار کوي، د تودوخې سنک وکاروئ.
- د لنډ سرکټ یا غلط نښلونو څخه مخنیوي لپاره د تارونو په اړه محتاط اوسئ.
- د مختلفو غوښتنلیکونو لپاره د آن بورډ پوټینشیومیټر په کارولو سره حساسیت تنظیم کړئ.
- تایید کړئ چې د الارم آوټ پوټ کولی شي وصل شوي بار (بزر/LED) اداره کړي.
د تارونو نښلولو لارښوونې


د اور لمبې سینسر ماډل د 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" تر هغه وخته ښکاره کړي چې لمبه کشف شي. یوځل چې لمبه کشف شي، بزر به غږ وکړي، او LED به روښانه شي، چې د اور حالت په ګوته کوي. تاسو کولی شئ د ماډل په پوټینشیومیټر تنظیم کولو سره د سینسر حساسیت وازموئ. د غلطو مثبتو څخه محتاط اوسئ، لکه د ریموټ کنټرولونو د انفراریډ سیګنالونو له امله رامینځته شوي (په ویډیو کې په 04:15).
د ویډیو وختونه
- 00:00 - د اور لمبې سینسر ماډل پیژندنه
- 02:30 - د تارونو نښلولو لارښوونې
- 04:15 - د اور لمبې کشف ډیمونستریشن
/*
* 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);
}
سرچینې او حوالې
-
بهرنیLM393 datasheet (PDF)ti.com
فایلونه📁
هیڅ فایل شتون نلري.