Найти в Дзене
Arduino как хобби

Анализатор утечки газа на Arduino

В заметке рассказ пойдет о применении выше указанной платы с аналоговым датчиком газа MQ-6. Датчик газа MQ-6 Датчик MQ-6 относиться к полупроводниковым приборам. Принцип работы датчика основан на изменении сопротивления тонкопленочного слоя диоксида олова SnO2 при контакте с молекулами определяемого газа. Чувствительный элемент датчика состоит из керамической трубки с покрытием Al2O3 и нанесенного на неё чувствительного слоя диоксида олова. Внутри трубки проходит нагревательный элемент, который нагревает чувствительный слой до температуры, при которой он начинает реагировать на определяемый газ. Чувствительность к разным газам достигается варьированием состава примесей в чувствительном слое. Характеристики датчика На основе этого датчика соберем простую схему с выводом полученных значений в серийный порт и простую свето-звуковую индикацию присутствия газа и напишем небольшой скетч. Для сборки схемы, нам понадобиться: /* Скетч для работы с сенсором газа */ int sensorPin = 0; //

В заметке рассказ пойдет о применении выше указанной платы с аналоговым датчиком газа MQ-6.

Датчик газа MQ-6

Датчик MQ-6 относиться к полупроводниковым приборам. Принцип работы датчика основан на изменении сопротивления тонкопленочного слоя диоксида олова SnO2 при контакте с молекулами определяемого газа. Чувствительный элемент датчика состоит из керамической трубки с покрытием Al2O3 и нанесенного на неё чувствительного слоя диоксида олова. Внутри трубки проходит нагревательный элемент, который нагревает чувствительный слой до температуры, при которой он начинает реагировать на определяемый газ. Чувствительность к разным газам достигается варьированием состава примесей в чувствительном слое.

Характеристики датчика

  • Напряжение питания нагревателя: 5 В
  • Напряжение питания датчика: 3,3–5 В
  • Потребляемый ток: 150 мА

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

Датчик газа MQ-6
Датчик газа MQ-6
Схема соединения в программе Fritzing.
Схема соединения в программе Fritzing.

/*
Скетч для работы с сенсором газа
*/
int sensorPin = 0; // Пин, на котором у нас висит сенсор газа
int redled = 2; // Пин с красным светодиодом
int greenled = 4; // Пин с зеленым светодиодом
int gas = 0; // Переменная для хранения значения газового сенсора
void setup() {
pinMode(greenled, OUTPUT); // Объявляем 2 и 4 пины, как выходы
pinMode(redled, OUTPUT);
Serial.begin(9600); // Инициализируем серийный порт
}
void loop() {
gas = analogRead(sensorPin); // Получаем значения из датчика
/*
Далее работаем с данными из переменной gas, если ее значение более или равно 500,
то включаем красный светодиод и проигрываем сигнал на 10 пине, зеленый светодиод гасим
*/
if (gas >= 500)
{
tone(10, 440, 200);
digitalWrite(redled, HIGH);
digitalWrite(greenled, LOW);
}
/*
Если значение переменной gas больше 300, проигрываем сигнал на 10 пин
с частотой 440 и продолжительностью 200мсек
*/
else if (gas > 300)
{
tone(10, 740, 200);
}
/*
Если значение переменной gas меньше 300, прерываем тоновый сигнал на 10 пин,
гасим красный светодиод, зажигаем зеленый
*/
else
{
noTone(10);
digitalWrite(redled, LOW);
digitalWrite(greenled, HIGH);
}
Serial.println(gas); // Пишем в серийный порт
delay(1000); // Повторяем void loop каждую секунду
}

Загрузим скетч в ардуино, если все сделано правильно, то зеленый светодиод (pin4) будет гореть, проверить работу датчика можно выпустив в него газ из зажигалки. Так же в скетче мы предусмотрели вывод значений в параллельный порт. Нажав комбинацию клавиш Shift+Ctl+M в среде разработки Arduino IDE, мы вызовем терминал, в котором будем видеть полученные значения с нашего датчика.

Большие значения появились после выпускания газа из зажигалки
Большие значения появились после выпускания газа из зажигалки