Полное руководство: распиновка датчика алкоголя MQ-3 и подключение к Arduino
Управление в нетрезвом виде — серьезное преступление почти во всех странах. Поэтому контроль концентрации алкоголя в крови — важнейшая задача для полиции. В этой статье мы подробно разберем, как работает датчик алкоголя MQ-3 и как подключить его к микроконтроллеру Arduino для создания собственного алкотестера.
Что такое датчик алкоголя MQ-3?
Датчик MQ-3 — это электронное устройство, измеряющее концентрацию паров этанола в воздухе и выдающее аналоговый сигнал, пропорциональный этой концентрации. Он основан на металлооксидном полупроводнике (SnO₂).
Основные характеристики MQ-3:
- Питание: 5 В постоянного тока
- Диапазон обнаружения: 25–500 ppm (частей на миллион)
- Высокая чувствительность к этанолу
- Низкое потребление в режиме ожидания
- Совместимость с большинством микроконтроллеров (Arduino, ESP32, STM32 и др.)
Распиновка модуля MQ-3
Описание выводов датчика MQ-3 (на корпусе датчика):
- A-выводы (2 шт.): подключаются к питанию (VCC)
- B-выводы (2 шт.): один — на землю (GND), второй — сигнальный выход
- H-выводы (2 шт.): нагревательный элемент — один на VCC, второй на GND
Примечание: A и B выводы можно менять местами, так как они парные внутри датчика.
Особенности конструкции
- Два слоя металлической сетки защищают нагревательный элемент от взрыва (алкоголь легковоспламеняем).
- Трубчатый чувствительный элемент содержит керамику на основе оксида алюминия (Al₂O₃) со слоем диоксида олова (SnO₂) — эти материалы чувствительны к алкоголю.
- Высокая чувствительность, низкая цена, низкое потребление в режиме ожидания.
- Совместимость с множеством микроконтроллеров.
Принцип работы датчика алкоголя
В чистом воздухе при нагреве SnO₂ адсорбирует кислород. Молекулы кислорода притягивают электроны олова, образуя электронно-искоженный слой под поверхностью — потенциальный барьер. Сопротивление SnO₂ становится высоким, ток не течет.
При наличии паров алкоголя (из выдыхаемого воздуха) поверхностная плотность адсорбированного кислорода снижается, потенциальный барьер уменьшается. Электроны возвращаются в диоксид олова, сопротивление падает, и через датчик начинает течь ток.
Концентрацию измеряют в ppm (частей на миллион): 500 ppm означает 500 молекул алкоголя на 1 миллион молекул газа.
Применение датчиков алкоголя
- Создание алкотестеров для выявления пьяных водителей
- Фоновые датчики мониторинга
- Промышленные и бытовые сигнализации утечки этанола
Измерение концентрации алкоголя через аналоговый выход
Подключение (Wiring)
Подключите VCC датчика к 5V Arduino, GND — к GND, вывод AO (аналоговый выход) — к аналоговому входу A0 Arduino.
Калибровка
Калибровка повышает точность показаний. Нужно установить соответствие между сырыми значениями АЦП и концентрацией алкоголя. Протестируйте датчик: подышите в него трезвым, затем после приема алкоголя (или используйте пары изопропилового спирта/санитайзера).
Так как MQ-3 тепловой, его нужно прогреть для стабильных показаний. Код для прогрева 20 секунд:
Завершение сборки: пороговые значения
Программа определяет состояние по диапазонам значений АЦП (примерные, требуют калибровки):
- Трезвый: < 120
- В допустимых пределах: 120–400
- Пьян: > 400
Примечание: пороги нужно подстроить под свои калибровочные значения.
Обнаружение алкоголя через цифровой выход
Модуль MQ-3 имеет встроенный компаратор с порогом, задаваемым подстроечным резистором.
- Подключение: VCC → 5V, GND → GND, DO (цифровой выход) → цифровой пин Arduino (например, D2). Аналоговый выход AO не используется.
- Калибровка: Поверните регулятор по часовой стрелке, пока статус-светодиод не загорится (переход в HIGH), затем немного назад — до гашения (LOW). Это устанавливает порог срабатывания.
- Код для Arduino:
Продвинутое использование: расчет концентрации через Rs/R0
Для точных измерений в ppm используется соотношение сопротивления датчика в газе (Rs) к сопротивлению в чистом воздухе (R0).
- Нахождение Rs/R0:
- Итоговый скетч Arduino:
- Скетч алкотестера с LCD дисплеем:
Рекомендации по эксплуатации
Для долгой службы датчика храните его подальше от коррозионных газов, щелочей, паров кремния и избегайте замерзания — всё это снижает чувствительность.
Заключение
Настройка датчика алкоголя MQ-3 с Arduino не сложна. Следуя этому руководству, вы поймете принцип работы и сможете раскрыть весь потенциал устройства. Есть вопросы — пишите нам!
Промышленные технологии
- Arduino-датчики: типы, применения и реальные проекты
- Датчик спирта MQ135: схема, принцип работы и применение
- Создайте автоматизированную аэропоническую систему с Raspberry Pi и датчиком влажности
- Интеграция термопары с Arduino Portenta H7 через MAX6675
- Проект с датчиком DHT11: индикация температуры светодиодами и пьезо-динамиком на Arduino
- Датчик CO2 K30: мониторинг качества воздуха в реальном времени на Arduino
- Простой ИК-датчик препятствий на Arduino: ИК-светодиод и фотодиод
- Интеграция ёмкостного сканера отпечатков DFRobot с Arduino или ESP8266
- Высокоскоростной тахометр на Arduino: новый алгоритм измерения RPM до 2 знаков после запятой
- DS18B20: 1-Wire цифровой датчик температуры — распиновка, характеристики, применение