Пребарување код

Arduino код и видео: Модул за сензор за пламен за Arduino

Arduino код и видео: Модул за сензор за пламен за Arduino

Во ова упатство, ќе истражиме како да користиме модул за сензор за пламен со Arduino. Сензорот за пламен детектира присуство на пламен и може да активира аларм или индикатор кога ќе го открие. До крајот на овој проект, ќе имате функционален систем кој реагира на детекција на пламен со звучен аларм и визуелна повратна информација.

infrared flame sensor module -blue
infrared flame sensor module

Модулот за сензор за пламен работи со користење на инфрацрвена 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 фреквенцијаН/П
Влезни логички прагови0,8 V (ниско), 2,0 V (високо)
Пад на напон / RDS(on) / заситување0,2 V
Термички граници125 °C
ПакетTO-220
Белешки / варијантиПрилагодлива чувствителност

  • Обезбедете соодветен напон на напојување помеѓу 2 и 36 V за модулот.
  • Чувајте ја инфрацрвената LED на сензорот чиста за оптимална детекција на пламен.
  • Користете ладилник ако модулот работи блиску до неговите врвни струјни граници.
  • Бидете внимателни со поврзувањето за да избегнете кратки споеви или неточни врски.
  • Прилагодете ја чувствителноста користејќи го вградениот потенциометар за различни апликации.
  • Проверете дали алармниот излез може да го издржи поврзаното оптоварување (зумер/LED).

Инструкции за поврзување

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 пинот на сензорот за пламен со 5V пинот на Arduino. Потоа, поврзете го GND пинот на сензорот со еден од GND пиновите на Arduino. Дигиталниот излезен пин (DO) од сензорот за пламен треба да се поврзе со дигиталниот пин 2 на Arduino, кој ќе го наречеме FLAME во кодот. Конечно, поврзете уред за аларм, како што е зумер, на дигиталниот пин 8 на Arduino, наречен 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 - Демонстрација на детекција на пламен

Слики

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);
}

Ресурси и референци

Датотеки📁

Нема достапни датотеки.