
Описание:
“KY-026” – датчик пламени реагирует на наличие инфракрасного излучения (открытый огонь) и наиболее чувствителен к длинам волн от 760 нм до 1100 нм. Этот детектор огня имеет два выхода – цифровой и аналоговый и легко подключается к платам “Arduino”, или другим микроконтроллерам. На плате имеется 2 светодиода – индикации питания и индикации выхода с компаратора при обнаружении огня.
Модуль выполнен на микросхеме LM393. При отсутствии пламени на аналоговом выходе имеется напряжение 4,2 В, а при появлении огня на расстоянии до 1 метра, на аналоговом выходе – 0,2 В (при напряжении питания 5 В).
Не рекомендуется размещать устройство слишком близко к огню, так как пластик фотодиода может расплавиться или воспламениться. Датчик пламени должен находиться на разумном расстоянии от источника пламени.
Характеристики KY-026:
- угол обнаружения пламени, град: 60
- дальность обнаружения огня, м: 1
- напряжение питания, В: 3- 5.5
- размеры (длина x ширина), мм : 36 x 16
Подключение датчика огня “KY-026”:
- “A0” – выходное напряжение в реальном времени (аналоговый выход)
- “G” – GND (общий)
- “+” – плюс питания
- “D0” – цифровой выход, когда температура пламени превысит определенный порог, на нем появляется напряжение высокого уровня (порог срабатывания регулируется потенциометром)
Используемые детали:
инфракрасный диод, двойной компаратор – LM393, потенциометр
Пример кода (скетч) для “KY-026” и Arduino:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
//KY-026 датчик пламени // umnyjdomik.ru int led = 13 ;// назначение пина встроенного светодиода int flameDigitalPin = 10; // назначение пина цифрового входа датчика int flameAnalogPin = A0; // назначение пина аналогового входа датчика int valueDigital ;// переменная для цифрового значения float valueAnalog; //переменная для аналогового значения void setup () { pinMode (led, OUTPUT) ; pinMode (flameDigitalPin, INPUT) ; pinMode (flameAnalogPin, INPUT) ; Serial.begin(9600); } void loop () { valueAnalog = analogRead(flameAnalogPin); Serial.println(valueAnalog); // вывод аналогового значения в монитор порта valueDigital = digitalRead (flameDigitalPin) ;// чтение цифрового значения if (valueDigital == HIGH) // когда на цифровом входе высокий уровень светодиод горит { digitalWrite (led, HIGH); } else { digitalWrite (led, LOW); } delay(1000); } |