Суббота, 27.04.2024, 07:53
Приветствую Вас Гость | RSS
Главная | Каталог статей | Регистрация | Вход
Меню сайта
Реклама Google
Форма входа
Категории раздела
Это нужно знать! [17]
Изучаем AVR [30]
Программаторы [12]
Необходимое ПО [8]
Готовые устройства [73]
Справочная [38]
Инструмент [0]
Технология [8]
Литература [0]
Arduino скетчи [18]
Поиск
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Микроконтроллеры - это просто!
Главная » Статьи » Готовые устройства

Подключение датчика газа MQ-4 к микроконтроллеру

Гуляя по каталогам китайских продавцов на E-bay случайно наткнулся на датчик газа MQ-4. Этот датчик предназначен для определения концентрации метана (CH4) в воздухе. А так как этот газ является основным компонентом бытового газа, иметь подобный датчик весьма полезно - можно собрать детектор утечки газа или что-нибудь подобное. В общем интересная штучка, особенно радует цена в $4,5 и аналоговый интерфейс общения - проблем с подключением не возникнет.

Для подключения датчика под его пузом имеются 6 выводов, 4 из которых дублируют друг друга. Поэтому для подключения используется всего 4 вывода:

Н-Н это выводы нагревателя. К нему подводится напряжение 5 вольт, причем неважно постоянное или переменное.

А-А и В-В это электроды. Сигнал можно снимать с любого из них. Например, на схеме ниже питание подведено к A-A, а сигнал снимается с электрода B-B. Но можно и наоборот - запитывать к B-B, а сигнал снимать с А-А. Работать будет в обоих случаях. В этом сенсор чем-то похож на вакуумную электронную лампу



Резистором RL настраивается чувствительность датчика. Рекомендуется ставить в диапазоне 10к. Чувствительность датчика, если верить документации составляет от 200 до 10000 ppm (что это?)

В даташите на MQ-4 приведен график, по которому видно, что помимо метана, датчик очень хорошо реагирует на пропан (LPG), и в меньшей степени на газообразный водород, угарный газ и пары алкоголя



А вообще в семействе датчиков MQ-x имеются сенсоры специально предназначенные для обнаружения этих газов. Вот некоторые из них:
MQ-3 - сенсор паров алкоголя
MQ-5 и MQ-6 - предназначены для обнаружения пропана/бутана
MQ-7 - чувствителен к угарному газу (имхо, заслуживает отдельного внимания)
MQ-8 - специализируется по водороду H2
и т.д. список можно дополнить еще парой-тройкой датчиков, все они легко гуглятся.


Для подключения своего датчика собрал простенькую схему со светодиодами. Четыре светодиода, каждый будет загораться при достижении определенного порога концентрации газа. Получится что-то вроде шкалы загазованности, правда безразмерной.


Увеличенное изображение 


Датчик подключается к ADC0 (PortC.0). В качестве опорного напряжения АЦП используется внутренний ИОН на 2,54 вольта. Поэтому на резисторах R5-R6 собран делитель напряжения, чтобы на вход АЦП попадало не больше 2,5 вольт. Резистор R7 дополнительная подтяжка к земле согласно схеме из даташита, его я взял 3,3 килоома - что было под рукой.

Набросал небольшую программку для ATmega8, частота тактирования 1 МГц


$regfile = "m8def.dat"
$crystal = 1000000
$baud = 1200

'конфигурация АЦП
Config Adc = Single , Prescaler = Auto , Reference = Internal

'подключение светодиодов
Config Portb.1 = Output
Config Portb.2 = Output
Config Portb.3 = Output
Config Portb.4 = Output

Dim W As Integer 'для хранения значения полученного с АЦП

Do

'запуск и считывание показаний с датчика
Start Adc
W = Getadc(0) 'датчик подключён к PortC.0

'в зависимости от значения показаний зажгем светодиоды индикации
If W < 700 Then
Portb = &B00000000 'значение меньше порога срабатывания, все гуд
End If

If W > 700 And W < 750 Then 'низкий уровень загазованности
Portb = &B00000010
End If

If W > 750 And W < 800 Then 'средний уровень
Portb = &B00000110
End If

If W > 850 And W < 900 Then 'загазовано чуть меньше чем полностью
Portb = &B00001110
End If

If W > 900 Then 'караул!
Portb = &B00011110
End If

Print W 'отсылаем показания в UART

Wait 1

Loop

End


Показания с датчика будут считываться с частотой 1 раз в секунду. И в зависимости от показаний будет гореть определенное количество светодиодов или не будут гореть вовсе. Значения порогов я взял после пробного испытания и вывода показаний в UART.

Тестовая схема собранная на макетке



Припаянный датчик


Для испытаний взял обычную газовую зажигалку, в ней в качестве горючего используется пропан, который также хорошо улавливается сенсором.


Скомпилированная прошивка

Даташит на датчик MQ-4 

Категория: Готовые устройства | Добавил: Alex (31.12.2013)
Просмотров: 2496 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Copyright MyCorp © 2024