Оглавление:
- Шаг 1: Соберите детали !!!!
- Шаг 2: Погрузитесь в газовые датчики MQ
- Шаг 3: Изготовление и расчет
- Шаг 4: Код ……
- Шаг 5: Работает !!!!!!
Видео: Arduino Air Monitor Shield. Жить в безопасной среде: 5 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Здравствуйте, в этой инструкции я собираюсь создать экран мониторинга воздуха для Arduino. Который может определять утечку сжиженного нефтяного газа и концентрацию CO2 в нашей атмосфере. А также звуковой сигнал, включающий светодиод и вытяжной вентилятор, когда обнаруживается сжиженный нефтяной газ или концентрация CO2 увеличивается. Поскольку это было сделано для работы дома, это не обязательно точный, но он должен быть в некотором смысле полным и подходить для нашего приложения, поскольку я использовал его для включения вытяжного вентилятора при утечке сжиженного нефтяного газа или повышении уровня CO2 и других вредных газов. Это было сделано для защиты здоровья членов семьи и предотвращения опасностей, которые могут быть вызваны утечкой сжиженного нефтяного газа. Приступим.
Шаг 1: Соберите детали !!!!
Соберите эти части: Основные части 1. Arduino Uno 2. ЖК-дисплей 16x2 3. MQ2.4. MQ135.5. РЕЛЕ 12 В (номинальный ток в соответствии с техническими характеристиками вашего вытяжного вентилятора) 6. Электропитание 12 В (для релейного модуля). Общие части 1. Мужские и женские заголовки 2. Точечная печатная плата 3. Зуммер 4. Светодиоды 5. Резисторы (R1 = 220, R2, R3 = 1к) 6. Транзистор NPN. (2n3904) 7. Коробка корпуса 8. некоторые провода 9. Dc jack. Давай сделаем это !!!!!.
Шаг 2: Погрузитесь в газовые датчики MQ
Давайте познакомимся с датчиками газа серии MQ. Датчики газа серии MQ имеют 6 контактов, из которых 2 являются нагревательными, а остальные 4 - контактами датчика, сопротивление которых зависит от концентрации различных газов в соответствии с их чувствительным слоем.. Штырьки нагревателя H1, H2 подключены к 5 В и заземлению (полярность не имеет значения). Сенсорные контакты A1, A2 и B1, B2 Используйте любой из A или B (на схеме используются оба, это не требуется).. Подключите A1 (или B1) к 5 В, а A2 (или B2) к RL (который подключен к земле). A2 (или B2) - это аналоговый выход, который должен быть подключен к аналоговому входу Arduino. Сопротивление контактов датчика изменяется с изменением концентрации газов, напряжение на RL изменяется, что является аналоговым входом для Arduino. Анализируя график датчиков, приведенный в таблице данных, мы можем преобразовать это аналоговое показание в концентрации газов. Эти датчики необходимо нагревать в течение от 24 часов до 48 часов, чтобы получить стабильные показания. (Время нагрева показано как время предварительного нагрева в таблице данных) Точность не может быть достигнута без надлежащей калибровки, но для нашего приложения это не требуется.. просмотрите эти таблицы. https://www.google.co.in/url? sa = t & rct = j & q = & esrc = s &… https://raw.githubusercontent.com/SeeedDocument/Gr…MQ2: Как в приведенная выше схема R6 - это RL для MQ2. В техническом описании MQ2 предполагается, что RL составляет от 5 кОм до 47 кОм. Он чувствителен к таким газам, как: LPG, пропан, CO, H2, CH4, алкоголь. здесь он будет использоваться для обнаружения LPG. Можно использовать любые другие датчики MQ, чувствительные к LPG, например: MQ5 или MQ6. MQ135: Согласно приведенной выше схеме R4 - это RL для MQ135. Таблица предполагает, что RL составляет от 10 кОм до 47 кОм. Он чувствителен к таким газам, как: CO2, NH3, БЕНЗОЛ, дым и т. Д., Здесь он используется для обнаружения Концентрация СО2.
Шаг 3: Изготовление и расчет
Постройте свои схемы по схемам. В моих схемах вы можете увидеть модули газовых датчиков. Я изменил их схему в соответствии с приведенной выше схемой. Оставьте датчики нагреваться от 24 до 48 часов в зависимости от времени предварительного нагрева. в то время как это время позволяет проанализировать график MQ135, чтобы получить уравнение для CO2. Глядя на график, мы можем сказать, что i - это логарифмический график. Для таких графиков уравнение графика имеет вид: log (y) = m * log (x) + c, где x - значение ppm y - отношение Rs / Ro.m - наклон. c - точка пересечения y. Чтобы найти наклон "m": m = log (Y2) -log (Y1) / log (X2-X1) m = log (Y2 / Y1) / log (X2 / X1), взяв точки на линии CO2, средний наклон линии равен -0,370955166.: c = log (Y) - m * log (x) с учетом значения m в уравнении и взятия значений X и Y из графика. мы получаем среднее значение c, равное 0,7597917824 Уравнение: log (Rs / Ro) = m * log (ppm) + засорение (ppm) = [log (Rs / Ro) - c] / mppm = 10 ^ {[log (Rs / Ro) - c] / m} Расчет R0: мы знаем, что VRL = V * RL / RT. Где VRL - падение напряжения на резисторе RLV - приложенное напряжение. RL - резистор (см. Диаграмму). RT - полное сопротивление. В нашем случае VRL = напряжение на RL = аналоговое чтение ардуино * (5/1023). V = 5 вольт RT = Rs (см. Техническое описание, чтобы узнать о Rs). + RL., Следовательно, Rs = RT-RL из уравнения- VRL = V * RL / RT. RT = V * RL / VRL. И Rs = (V * RL / VRL) -R мы знаем, что концентрация CO2 в настоящее время в атмосфере составляет 400 ppm. Поэтому, используя уравнение log (Rs / Ro) = m * log (ppm) + c, мы получаем Rs / Ro = 10 ^ {[- 0,370955166 * log (400)] + 0,7597917824} Rs / Ro = 0,6230805382, что дает Ro = Rs / 0,623080532. используйте код «чтобы получить Ro», а также запишите значение V2 (на свежем воздухе). R0. Я запрограммировал таким образом, что Ro, V1 и V2 отображаются как на последовательном мониторе, так и на ЖК-дисплее (потому что я не хочу, чтобы мой компьютер оставался включенным, пока показания не стабилизируются).
Шаг 4: Код ……
вот ссылка для загрузки кодов с GitHub.
Программа очень проста и понятна. В коде «to_get_R0». Я описал аналоговый выход MQ135 как sensorValue. RS_CO2 - это RS MQ135 в 400 ppm CO2, который представляет собой текущую концентрацию CO2 в атмосфере. R0 рассчитывается по формуле, полученной на предыдущем шаге. Sensor1_volt - это преобразование Аналоговый выход MQ135 в Voltage.sensor2_volt - это преобразование аналогового выхода MQ2 в напряжение. Они отображаются как на ЖК-дисплее, так и на последовательном мониторе. В коде «AIR_MONITOR» после добавления библиотеки ЖК-дисплея мы начинаем с определения соединений зуммер, светодиод, MQ2, MQ135, реле. Далее в настройке мы определяем, являются ли подключенные компоненты входными или выходными, а также их состояния (например, высокий или низкий). Затем мы запускаем ЖК-дисплей и заставляем его отображать как «Arduino Uno Air Monitor Shield »на 750 миллисекунд со звуковым сигналом зуммера и светодиода. Затем мы установили все выходные состояния на низкие. В цикле Сначала мы определяем все термины, которые мы используем в формуле для расчета, которую я сказал на предыдущем шаге. Затем мы реализуем эти формулы, чтобы получить концентрацию CO2 в ppm. Определите значение R0 в этом разделе. (Что я сказал, чтобы отметить вниз во время выполнения предыдущего кода). затем мы отображаем концентрацию CO2 на ЖК-дисплее. с помощью функции «если» мы используем пороговый предел для значения ppm, которое я использовал как 600 ppm. а также для напряжения MQ2, которое мы используем Функция "if" для установки порогового значения для него. Мы заставляем зуммер, светодиод, реле переходить в состояние высокого уровня в течение 2 секунд, когда выполняется функция if, а также заставляем ЖК-дисплей отображать LPG как обнаруженный, когда напряжение MQ2 выше порогового значения. предел. Определите свой пороговый предел для напряжения MQ2, который вы записали во время предыдущего кода как V2. (Установите это немного выше, чем это значение). После этого мы определим функцию «else» и задержим цикл на 1 секунду. Вместо использования Delay to установите высокий уровень вывода на 2 секунды в функции if, хорошо использовать простой таймер. Если кто-то может изменить задержку в таймер в коде, вас всегда приветствуют и дайте мне знать об этом в разделе комментариев.
Шаг 5: Работает !!!!!!
Вот видео, демонстрирующее, что это работает.
жаль, что не смог показать реле на видео.
вы можете заметить, что концентрация CO2 безумно увеличивается, потому что газы, выделяемые из зажигалки, также оказывают влияние на MQ135, который также чувствителен к другим газам, но не беспокойтесь, он вернется в норму через несколько секунд.
Рекомендуемые:
Время жить: 5 шагов
Время жить: объединив магию просмотра всех фильмов о Гарри Поттере за неделю и сетевой термин TTL (время жизни), мы собираемся создать нашу собственную книгу черной магии, показывающую, сколько вам осталось жить
Создайте свой собственный дисплей MQTT EInk для отображения времени, новостей и данных об окружающей среде: 7 шагов
Создайте свой собственный дисплей MQTT EInk для отображения времени, новостей и данных об окружающей среде: «THE» - это мини-дисплей MQTT для отображения времени, новостей и экологической информации. Его концепция с 4,2-дюймовым экраном eInk проста - отображение информации на ротационной основе с обновлением каждые пару минут. Данные могут быть любым фидом - f
Начало работы с NodeMCU ESP8266 в среде Arduino IDE: 6 шагов
Начало работы с NodeMCU ESP8266 на Arduino IDE: Обзор В этом руководстве вы узнаете, как использовать NodeMCU в Arduino IDE. Что вы узнаете Общая информация о NodeMCU Как установить платы на основе ESP8266 в Arduino IDE Как запрограммировать NodeMCU на Arduino IDE использовал
Измеритель громкости звука в окружающей среде: 5 шагов
Измеритель громкости звука в окружающей среде: Мой проект - измеритель звука, показываемый светодиодами. Он использует электретный микрофон, операционный усилитель и светодиодный драйвер LM3914. Как он используется: чем громче окружающая среда вокруг датчика, тем больше светодиодов включается LM3914. Это довольно простой
Корпус Mp3 в агрессивной среде: 9 шагов
Чехол для Mp3 «Враждебная среда»: я сделал защитный чехол, чтобы защитить свой новый Creative Zen V Plus от враждебных элементов в сварочном цехе. Больше всего меня беспокоили три элемента: сварочные искры, шлифовальная шрапнель и металлическая пыль. Сварочные искры могут быть достаточно горячими