- Arduino и датчик mq-135: измерение концентрации углекислого газа в воздухе
- Mq-135 – датчик оценки качества воздуха
- Mq-135 gas sensor, датчик газа для arduino проектов, чувствителен к бензолу, спирту, дыму, waveshare | купить в розницу и оптом
- Датчик газа mq-135 (аммиак, бензол, спирт, дым)
- Подключение mq-135 к ардуино
- Рекомендуемые товары
Arduino и датчик mq-135: измерение концентрации углекислого газа в воздухе
Уровень углекислого газа (двуокись углерода или CO2) в атмосфере Земли повышается день ото дня. Среднее значение CO2 в атмосфере в 2022 году составило 409,8 частей на миллион, а в октябре 2020 года – 411,29. Двуокись углерода является ключевым парниковым газом, на который приходится около трех четвертей выбросов. Таким образом, мониторинг уровня CO2 также стал приобретать все большее значение.
В нашем предыдущем проекте мы использовали инфракрасный датчик CO2 для измерения концентрации CO2 в воздухе. В этом проекте мы собираемся использовать датчик MQ-135 с Arduino для измерения концентрации углекислого газа. Измеренные значения концентрации CO2 будут отображаться на OLED-модуле.
Датчик газа MQ-135 – это датчик качества воздуха для обнаружения широкого спектра газов, включая NH3, NOx, спирт, бензол, дым и CO2. Датчик MQ-135 можно приобрести как в виде модуля, так и просто как датчик. В этом проекте мы используем сенсорный модуль MQ-135 для измерения концентрации CO2 в PPM. Принципиальная схема платы модуля MQ-135 приведена далее.
Нагрузочный резистор RL играет очень важную роль в обеспечении работы датчика. Этот резистор изменяет свое значение сопротивления в зависимости от концентрации газа. Согласно документации на MQ-135, сопротивление нагрузочного резистора может находиться в диапазоне от 10 кОм до 47 кОм. В документации рекомендуется откалибровать детектор на концентрацию 100 ppm NH3 или 50 ppm спирта в воздухе и использовать значение сопротивления нагрузки (RL) около 20 кОм. По умолчанию на плате стоит значение этого резистора 1 кОм.
Таким образом, чтобы измерить соответствующие значения концентрации CO2, вам необходимо заменить резистор 1 кОм на резистор 22 кОм. Полная схема подключения датчика газа MQ-135 к Arduino приведена далее.
Схема очень проста, поскольку мы подключаем только датчик MQ-135 и модуль OLED-дисплея к Arduino Nano. Датчик газа MQ-135 и модуль OLED-дисплея питаются от 5 В. Вывод аналогового выхода датчика MQ-135 подключен к выводу A0 Arduino Nano. Поскольку модуль OLED-дисплея использует связь SPI, мы установили связь SPI между модулем OLED и Arduino Nano. После подключения оборудования в соответствии с принципиальной схемой оно должно выглядеть примерно так:
Теперь, когда мы знаем значение RL, давайте приступим к расчету значений Ro для чистого воздуха. Здесь мы собираемся использовать MQ135.h для измерения концентрации CO2 в воздухе. Поэтому сначала загрузите библиотеку MQ-135, затем предварительно нагрейте датчик в течение 24 часов, прежде чем считывать значения Ro. После процесса предварительного нагрева используйте приведенный ниже код, чтобы прочитать значения Ro.
#include "MQ135.h"
void setup (){
Serial.begin (9600);
}
void loop() {
MQ135 gasSensor = MQ135(A0); // Attach sensor to pin A0
float rzero = gasSensor.getRZero();
Serial.println (rzero);
delay(1000);
}
Теперь, когда вы получили значения Ro, перейдите в Документы – Arduino –libraries –MQ135-master, откройте файл MQ135.h и измените значения RLOAD и RZERO.
#define RLOAD 22.0
#define RZERO 5804.99
Теперь прокрутите вниз и замените значение ATMOCO2 текущим значением CO2 в атмосфере, равным 411,29.
#define ATMOCO2 397.13
Полный код для взаимодействия датчика MQ-135 с Arduino приведен далее.
#define RLOAD 22.0
#include "MQ135.h"
#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_MOSI 9
#define OLED_CLK 10
#define OLED_DC 11
#define OLED_CS 12
#define OLED_RESET 13
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT,
OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);
MQ135 gasSensor = MQ135(A0);
int val;
int sensorPin = A0;
int sensorValue = 0;
void setup() {
Serial.begin(9600);
pinMode(sensorPin, INPUT);
display.begin(SSD1306_SWITCHCAPVCC);
display.clearDisplay();
display.display();
}
void loop() {
val = analogRead(A0);
Serial.print ("raw = ");
Serial.println (val);
// float zero = gasSensor.getRZero();
// Serial.print ("rzero: ");
//Serial.println (zero);
float ppm = gasSensor.getPPM();
Serial.print ("ppm: ");
Serial.println (ppm);
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(18,43);
display.println("CO2");
display.setCursor(63,43);
display.println("(PPM)");
display.setTextSize(2);
display.setCursor(28,5);
display.println(ppm);
display.display();
display.clearDisplay();
delay(2000);
}
Как только оборудование и код будут готовы, следует проверить датчик. Для этого подключите Arduino к ноутбуку, выберите плату и порт и нажмите кнопку загрузки. Затем откройте монитор последовательного порта и подождите некоторое время (процесс предварительного нагрева), после чего вы увидите окончательные данные. Значения будут отображаться на OLED-дисплее, как показано на следующем изображении.
© anemometers.ru
Mq-135 – датчик оценки качества воздуха
Датчик имеет два выхода: аналоговый и цифровой. Когда концентрация газов превысит заранее заданное значение, на цифровом выходе появится логическая единица и загорится зелёный светодиод. Это значение задаётся с помощью подстроечного резистора.
Напряжение на аналоговом выходе пропорционально концентрации измеряемых газов. Из-за этого конкретного значения содержания газов не узнать, но работа с датчиком при этом упрощается, никакие библиотеки не требуются. Для более точного измерения можно использовать внешний АЦП с большой разрядностью (у встроенного в Arduino – 10 бит).
При работе датчик будет греться, и это нормально: для обнаружения газов требуется нагревательный элемент. Хотя температура и не высокая, модуль оборудован специальной сеткой для защиты от возгорания газов. Подобная защита раньше использовалась в керосиновых шахтёрских лампах.
Перед первым реальным использованием датчик нужно прогреть в течение суток, подав на него питание. Датчик быстро реагирует на появление регистрируемых газов – менее чем за 10 секунд.
Модуль работает при напряжении от 2,5 до 5 В. Максимальная мощность нагревателя – 0,9 Вт. Он потребляет ток силой до 180 мА, поэтому лучше обеспечить модуль питанием от сети.
Mq-135 gas sensor, датчик газа для arduino проектов, чувствителен к бензолу, спирту, дыму, waveshare | купить в розницу и оптом
Особенности:
– Чувствителен к бензолу, спирту и дыму;
– Выходное напряжение зависит от концентрации измеряемых газов;
– Быстрая реакция и восстановление;
– Регулируемая чувствительность;
– Индикатор входного сигнала.
Технические характеристики:
– Рабочее напряжение: 2.5…5В;
– Размер платы: 40 х 21 мм;
– Монтажные отверстия: 2.0 мм.
Применение:
– Монитор воздуха;
Комплектация:
1 х Датчик (MQ-135 Gas Sensor);
1 х Провод (4-pin custom connector jumper wire).
Датчик газа mq-135 (аммиак, бензол, спирт, дым)
Вы можете купить Датчик газа MQ-135 (аммиак, бензол, спирт, дым) в нашем магазине 3DIY по доступной цене с доставкой по всей России. Датчик газа MQ-135 (аммиак, бензол, спирт, дым): описание, фото, характеристики, отзывы покупателей.
Подключение mq-135 к ардуино
Сегодня у нас на рассмотрении подключение MQ-135 к Arduino и все, что с ним связано. Данная тема и в особенности модуль сенсора выбраны не случайно, ведь в современном мире все больше внимания достается вопросам экологии и в частности моментам тестирования чистоты воздуха, воды, в целом окружающей среды. Получается, применение систем контроля этих самых параметров – приоритетны для многих пользователей и соответственно для домашних умельцев-«ардуинщиков».
Мы также решили не отставать от остальных, потому спешим познакомить вас с вполне достойным устройством подобного плана – датчиком углекислого газа MQ-135. Он относится к категории «полупроводниковых», потому лаконичен. Состоит из керамической трубки с покрытием Al2O3, на которую нанесен чувствительный слой диоксида олова. Прибор вдобавок ко всему универсален, т.к. способен «улавливать» в воздухе: бензин, дым, пыль, пары CO2, аммиака, спирта, метана и т.д.
Важно! Для каждого измеряемого вещества есть свой диапазон ПДК (норма и высокая концентрация). Подробнее эти цифры можно отыскать в Интернете в табличном формате. Один из небольших примеров:
Разберем технические характеристики газоанализатора:
- напряжение питания: 5V;
- время прогрева: около 1 мин;
- потребляемый ток: 130-150 мА;
- диапазон рабочих температур: -10 … 45 С;
- выходной сигнал TTL уровня;
- габариты: 35 х 20 х 21 мм;
- вес: около 10 г.
В целом датчик удобен в работе, легок в сборке, кроме того – имеет достаточно высокую чувствительность и небольшое время отклика.
Распиновка выводов показана ниже:
Теперь приступим к схеме подключения аппаратных компонентов. Нам понадобятся:
- микроконтроллер Arduino Uno
- модуль сенсора MQ-135
- соединительные провода (комплект)
- макетная плата
- USB-кабель при подключении к компьютеру
Пример простой сборки:
Давайте напишем скетч для проверки работоспособности датчика:
const int analogSignal = A0; //подключение аналогового сигнального пина
const int digitalSignal = 8; //подключение цифрового сигнального пина
boolean noGas; //переменная для хранения значения о присутствии газа
int gasValue = 0; //переменная для хранения количества газа
void setup() {
pinMode(digitalSignal, INPUT); //установка режима пина
Serial.begin(9600); //инициализация Serial порта
}
void loop() {
noGas = digitalRead(digitalSignal); //считываем значение о присутствии газа
gasValue = analogRead(analogSignal); // и о его количестве
//вывод сообщения
Serial.print("There is ");
if (noGas) Serial.print("no gas");
else Serial.print("gas");
Serial.print(", the gas value is ");
Serial.println(gasValue);
delay(1000); //задержка 1 с
}
Для просмотра полученных значений переходим в монитор последовательного порта (программная среда Ардуино IDE, меню Инструменты).
С целью расширения возможностей компилирования и конечно для усовершенствования проектов, можно воспользоваться специализированным ПО – библиотекой TroykaMQ. Ее необходимо скачать и инсталлировать в папку директории libraries.
https://github.com/amperka/TroykaMQ
Уверены, с подобным прибором вы легко создадите в домашних условиях бытовую метеостанцию и обеспечите себе надежную защиту от утечки газов. На этом все! Удачи!
Рекомендуемые товары
датчик,
газ,
воздух,
качество