Урок 11.1: Датчик Пламени без модуля
1. Цель эксперимента
Использовать голый инфракрасный приёмник пламени (без печатной платы-модуля) для обнаружения огня и подать сигнал тревоги с помощью светодиода и зуммера.
2. Компоненты
Кол-во |
Деталь |
---|---|
1 |
Плата Arduino UNO |
1 |
ИК-датчик пламени (приёмный триод) |
1 |
Активный зуммер |
1 |
Резистор 10 kΩ (делитель датчика) |
1 |
Красный светодиод 5 мм + резистор 220 Ω |
6 |
Перемычки «папа–папа» |
1 |
USB-кабель A-B |
3. Немного знаний

ИК-приёмник реагирует на излучение ~760–1100 нм, характерное для открытого пламени. У элемента два вывода: короткий — GND, длинный — сигнал.
Чтобы получить напряжение, пригодное для analogRead(), формируем делитель: датчик + резистор 10 kΩ между 5 V и GND. Выход снимаем с узла делителя и ведём на A0.
4. Схема подключения

Короткий вывод датчика → 5 V
Длинный вывод → через 10 kΩ к GND и одновременно → A0
Светодиод (через 220 Ω) → пин 7
Зуммер → пин 9
5. Пример кода
Код идентичен варианту с модулем, оставляем без изменений.
////////////////////////////////////////////////////////////////
//fire sensor
int sensorPin = A0; // выбрать аналоговый контакт 0 для датчика
int sensorValue = 0; // инициализация переменной
int led = 7; // выбрать цифровой контакт 9 для LED
int buzzer = 9; // выбрать цифровой контакт 12 для зуммера
void setup() {
// declare the ledPin and buzzer as an OUTPUT:
pinMode(led, OUTPUT);
pinMode(buzzer, OUTPUT);
Serial.begin(9600);
}
void loop() {
Serial.println("Welcome to Alash electronics Flame Sensor example");
sensorValue = analogRead(sensorPin);
Serial.println(sensorValue);
if (sensorValue < 100)
{
Serial.println("Fire Detected");
Serial.println("LED on");
digitalWrite(led, HIGH);
digitalWrite(buzzer, HIGH);
delay(1000);
}
digitalWrite(led, LOW);
digitalWrite(buzzer, LOW);
delay(1000);
}
////////////////////////////////////////////////////////////////
6. Как работает код
Делитель «датчик + 10 kΩ» формирует напряжение 0–≈1 В.
analogRead(A0)
возвращает 0–1023; при пламени значение падает ниже ~100.При срабатывании включаются светодиод и зуммер на 1 с.
7. Пошаговый запуск
Соберите схему согласно рисунку.
Загрузите скетч, откройте Serial Monitor.
Поднесите огонь — увидите значение < 100 и сработает тревога.
8. Что может пойти не так
Симптом |
Причина |
Решение |
---|---|---|
Всегда тревога |
Слишком низкий порог / яркий ИК-фон |
Поднимите порог, экранируйте датчик от ламп накаливания |
Не реагирует |
Датчик подключён наоборот или далеко от пламени |
Проверьте полярность (короткий вывод к 5 V) и поднесите ближе |
Зуммер пищит, но светодиод не горит |
Перепутаны пины / резистор 220 Ω слишком большой |
Проверьте подключение и номинал резистора |
9. Эксперименты
Измените код, чтобы выводить силу пламени (
map(sensorValue, 0, 1023, 0, 100)
).