Что нам поведает датчик СО2

Kogotok
Идет загрузка
Загрузка
09.10.2019
2236
28
печатает на ZAV-MAX-PRO
Применение

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.

Отписаться от уведомлений вы всегда сможете в профиле автора.

35

Всем привет.Уже более трёх лет занимаюсь темой качества воздуха, уж очень меня эта тема задевает, когда дело касается продолжительной и сосредоточенной работы.Хотелось бы и сообщество поближе познакомить с данной важной составляющей..., и прежде всего это важно для здорового состояния вашего организма и эффективности труда.

Топик длинный, разбил на три подкаста:

1) Зачем все это.

2) Выбор компонент датчика.

3) Как сделать.

Если мало времени и хочется отложить в память просто выводы, то вот:

- Если мы дышим при повышенном содержании СО2, то наш мозг тупеет и отказывается эффективно работать.

- Компоненты, mh-z19, esp8266, tft 1.44(128x128), проводки, STL внизу статьи по ссылке.

- Arduino IDE, добавить библиотек, прошить.

#ЗАЧЕМ ВСЕ ЭТОПредыстория, с чего все началось. На дворе был 2015, трудился в одной IT компании (не буду уточнять какая) и стал замечать, что после 4х часов труда мой мозг приходил в негодность, отказывался концентрироваться, находила хандра и сонливость. Все коллеги отмечали духоту, но казалось выйди минут на 5 прогуляться и все, можешь начинать сначала. Да действительно, легкая прогулка перезаряжала организм, однако ненадолго - минут на 15-20, дальше все повторяется. И ладно бы это прекращалось после покидания своего рабочего места, только и вечер уходил на то, чтобы откиснуть, хотелось сесть закрыть глаза и быть в полудрёмке. Потом спустя пару месяцев к обеду начинала болеть затылочная область головы. А требования к выполнению задачи не сбавляются, нужно часов по 7 плодотворно отрабатывать. Долго я стоять на паузе не мог, в 3D печати с 2013, процессоры немного кодить умею. Стал искать, читать статьи про качество воздуха и обнаружил, что всем виною не как принято считать недостаток кислорода, а повышение процента СО2 - углекислоты.Тема оказалась не такая уж простая, если вы углубитесь, то найдете в рунете статьи, где команда, занимающаяся монтажом приточной вентиляции, исследовала поведение воздушных масс на примере школьного класса, они вымеряли положения подачи приточки, дабы обеспечить максимальный разгон углекислого газа. В общем, дальше встал вопрос предъявления всех этих наблюдений компании, мол не получается работать в таких условиях. Вопрос был эскалирован выше. Ну а дальше всё как у всёх)) -> Да? У нас то хорошо и у вас должно быть, сочувствуем. Нормы соответствуют, бумаги в порядке.

#ВЫБОР КОМПОНЕНТ ДАТЧИКАПришлось привлекать наших братьев за большой стеной. Приобрел датчик MH-Z19, который по своим характеристикам и цене был выгоднее всего.

Сначала я его запустил на ардуине, но потом естественно захотелось принимать показания онлайн. Недолго думая перевел показания на esp8266. У него уже wifi на борту, он пошустрее и так далее...

Дальше собрал устройство, притащил в офис и ужаснулся. Мы сидели работали при 1300+ ppm. PPM это характеристика измерения концентрации в миллионных долях. Parts per million. Нормальный содержанием CO2 считается значение 400ppm - это естественный фон улицы.

Вообще, естественная концентрация СО2 с годами постоянно прирастает, как видно на графике ниже.

Теперь про критические значения.

Желтая зона находится в значениях до 800ppm и уже 1000ppm считается повышенным значением, где необходимо применять меры к проветриванию.При нахождении в помещении, где значение выше 1200 в пределах 2-3 часов, следствием являются головные боли и те самые симптомы, что были озвучены в начале статьи, снижение концентрации, сонливость и т. д.Для примера, чтоб на пальцах - один человек за пару часов высаживает комнату 16 кв метров с 2.65м потолками в полную негодность, поднимая ppm до 1500+. В таком состоянии в течение последующего часа сознание человека приходит в полную недееспособность, начинается дикий тупёж и желание прокрастинации. Я специально закупоривал комнату и сидел наблюдал программируя.

Вот я в закупоренной комнате три с половиной часа.

А это спустя 15 минут после проветривания. Чувствуете разницу?)Возвращаемся к теме офиса, естественно мы предъявили график с цифрами главному инженеру, начался кипиш. Но самое интересное, накануне приезда, я поставил такой же датчик коллегам в соседний кабинет. В каждом из кабинетов находилось свыше 70 человек, то есть такой нехилый open space. И самое удивительное что произошло за 1.5ч до приезда главного инженера, в нашем open space значение пришло в норму, а в соседнем, где до этого момента "Х" было все хорошо, вдруг стало нарастать. То есть приточка была рассчитана на обслуживание одного из двух помещений. Весело однако. Но таковы реалии. Ну дальше после долгой борьбы нам удалось добиться небольшого снижения духоты за счет предоставления доступа к дополнительному участку проветривания.Еще через 2 месяца мы переехали в другой офис и там уже этот вопрос отпал. Такая вот история.

То как завышенное значение СО2 может повлиять на ваше здоровье, вы можете поискать сами хабровские статьи, пугать вас не очень хочу, но это реально коварная тема.В последствии несколько человек у меня заказывали эти датчики, в основном в детские.

Так к чему я все это пишу и привожу примеры.

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

#КАК СДЕЛАТЬ

Конечно вы можете купить сразу собранное аналогичное устройство, но если вы смотрите куда развиваться дальше после освоения 3D печати, то вот одно из интересных и набирающих ход направлений.Что вам необходимо для сборки такого датчика:- Ну во-первых заказать сам датчик на али экспрессе или в одном из магазинов вашего города под названием MH-Z19, можно и MH-Z19b, не суть.- Во-вторых также прикупить микроконтроллер под названием Wemos D1 mini на базе esp8266. Просто найдите в поиске wemos d1 mini и это будет оно.- Также вам понадобится стандартный кабель микро юсб и любой зарядник на 5 вольт. Подойдет даже 0.5 ампер, не супер мощный.- [опционально] Еще понадобится дисплей TFT 1.44'' 128 на 128 пикселей, но не обязателен, показания вы сможете наблюдать удаленно на смартфоне.

- Провода Dupont 10см упаковка. Если хотите спаять намертво, то папа-папа. Если хотите съемную конструкцию, то мама-мама (берите их, проще). С датчиком СО2 при пайке будьте осторожны, рекомендую даже приобрести его с уже пропаянными пинами (папа), поскольку необходима быстрая пайка, продолжительный перегрев контактов, может привести к неработоспособности датчика. Поэтому использование пасты, канифоли или флюса - очень желательно.

К экрану и микропроцессору в комплекте идут колодки. Там все проще, можно греть контакты, не опасаясь за выход схемы из строя.- Ну и конечно же 3D принтер для печати корпуса. Какой использовать пластик, выбирать вам, можно и PLA, можете ABS, да любой другой, не суть, нагреваться до температур плавления ничего не будет. Я в своих поделках использую rec и filamentarno. В моей истории они первыми вышли на рынок, наравне с Китайцами, когда еще жил проект reprap и которого потом вышел пикасо, собственно его то я и приобрел. Ну и эти пластики на всех моих принтаках не вызывали проблем. На тех что были, я озвучивать не стану - это их проблемы:).Для внутренних деталей использую как правило pla от обоих производителей, для корпусов использую Total от Filamentarno, он шероховатый и его не нужно обрабатывать. Если что-то будете у них брать, то используйте мой промокод плииз Y6JHUZHP, вам с него скидка, а мне монетки от ваших покупок))

Когда соберете устройство, у вас получится примерно это. В моем примере, еще установлен датчик приближения, позволяет включать/выключать экран. В вашем случае это будет совершаться со смартфона через андройд приложение.

Все обходимые файлы выложил в репозиторий, там же программа для прошивки микроконтроллера.

Репозиторий с модельками и кодом

Далее скачиваем arduino ide, я использую версию 1.6.8.Заходим в настройки. В строке "Дополнительные ссылки для менеджера плат" вбиваем значение http://arduino.esp8266.com/stable/package_esp8266com_index.json и сохраняем.Далее заходим Инструменты ->Плата ->Менеджер плат. В поиске вбиваем esp8266 и устанавливаем. У меня версия 2.1.0Версии пишу, потому что скетч, который вы будете прошивать в микроконтроллер может выдать ошибку на других версиях библиотек, такое периодически происходит. Ну к примеру по причине, что у вас функции в коде описаны после основного цикла и при компиляции он эти процедуры не может обнаружить, а они на деле находятся после основного цикла. Парадигмы требований меняются, кто с этим постоянно - к такому готовы, новичкам конечно такие проблемы не нужны. Поэтому, если установите те версии, что изложены здесь, то все прошьётся.Далее в меню arduino ide Скетч -> Подкючить библиотеку -> Управлять библиотеками. Поиск blynk. От Voloymyr Shymaskyy.  У меня установлена версия 0.4.6.Если хотите использовать дисплей, то необходимо скачать архив и распаковать его в папку libraries, то где у вас установлена arduino ide. Если не используете, то установить все равно придется, поскольку скетч (код программы) вшит для работы с ним. Но будет он фактически присутствовать или нет - дело ваше.https://github.com/sumotoy/TFT_ST7735/Далее все просто. Подключаете wemos d1 mini к компьютеру по micro-usb, в программе arduino ide выбираете инструменты -> Плата - находите там wemos d1 R2 & mini.Инструменты -> Порт, необходимо выбрать один единственный, который у вас будет. Инструменты -> upload speed 256000.

Открываете скетч, это файл с расширением ino.

Устанавливаете на смартфон приложение blynk, находите в нем свой токен и переносите его значение в скетч. В скетче есть раздел пользовательские настройки, прокрутите код программы на 20 строчек вниз.В скетче также вписываете свою wifi сеть, пароль от нее.Далее жмете  прошить, Скетч -> Загрузка или ctrl+U. В начале скетча обнаружите инструкцию, как соединять проводки контроллера и датчика, а также экрана.Ну далее скачиваете STL корпуса, печатаете, собираете. Понадобится клей момент для фиксации пластины держателя микроконтроллера к обратной стороне крышки. И лицевая часть экрана также на клей. Особо красотой корпуса я не увлекался. Если у вас есть время и желание, выкладывайте более практичные варианты, с удовольствием их применю;)

Порядок сборки корпуса привожу на картинке

Ну и на домашку вам разобраться, как заводить значения в программе Blynk. На деле просто:)Скажу только, что значение показаний располагается на виртуальном пине V0, а управление экранчиком на Кнопке виртуального пина V1.То есть для элемента показаний вы создаете у себя в профиле blynk тип График, а для управления подстветкой экрана кнопку.Ну и дальше наблюдаете, что у вас происходит в комнате и сверяете со своим самочувствием. Через пару месяцев наблюдений, вы будете определять значение СО2 не хуже датчика! Главное это уже врезается в сознание и находится на вашем контроле, а значит ваше здоровье в ваших руках:) Напоследок скрин моего графика, я использую веб версию, это не скрин из программы blynk.

Вывод из этого прост. Лег спать с закрытым окном, утром проснешься разбитым, проверено неоднократно. Поэтому приточка это очень важно. У меня еще в стеклопакете отверстие для 110мм трубы и розетка включает вентиляцию, если показания СО2 превышают 800 ppm, в предыдущей статье конструкцию подробно освещал.

Для тех, кому это всё сложно, но есть желание поправить ситуацию дома, пробейте такое устройство бризер тион, возможно это вас сподвигнет на что-то. И разумеется существуют аналогичные датчики, уже собранные в корпусе и с экраном, можно просто приобрести и использовать по назначению. Ну а поскольку здесь сообщество 3D-мейкерства, думаю будет полезно проработать данный кейс, если планируете развивать направление интернет вещей. Здесь и польза и практика.И на этом наверно всё, будьте здоровы, свежего вам настроения)) Если что-то доработаете, пишите в комментариях, всем от этого польза. Пока!))

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.

Отписаться от уведомлений вы всегда сможете в профиле автора.

35
Комментарии к статье

Комментарии

09.10.2019 в 16:50
0

спасибо, готовый вроде от 100$ российский есть... а сколько себестоимость компонентов?

09.10.2019 в 17:03
0

Датчик 1тр, процессор 300р, экран [опционально] 230р, провода 60р, пластик БЕСЦЕННО! :)

09.10.2019 в 20:04
0

отлично, по цене заманчиво. Может тестировали на точность с каким-то покупным аналогом?

09.10.2019 в 20:23
1

А покупной аналог с чем протестировать на точность? :)

09.10.2019 в 21:04
3

Датчики калиброваны на заводе. Точность 50 ppm. Я на заре покупки первого проштрудил несколько статей, где mh-z19 сравнивали с SenseAir S8, на тот момент 2016 год, S8 стоит что-то порядка 8.5тр, а mh-z19 под 2тр. И графики вполне себе бились между собой.

Проблемы, которые пишут в статьях получают в трех случаях:

1) Считывают ШИМ соответственно наводки с других проводов качают показания в неверную сторону.

Когда перевел MH-Z19 на цифровую шину, все стало хорошо, там приходит контрольная сумма и по ней можно определить, битое показание или нет. Иногда Mh-z19 западает и шлет ошибки до бесконечности, но это только на старте. Многие на первых порах мучаются, не понимая причин. На деле нужно просто рестартануть контроллер и переподключиться. Но если отключить датчик и снова его подключить, то ошибка продолжится. В моей прошивке этот баг решен.

2) Выносят датчик на холод. Его не нужно выносить на температуру ниже 10, его действительно может заклинить на сутки и он будет показывать 400ppm.

3) Лезут программно калибровать. После этого у него гэп по отношению к реальному уровню.

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

Пройдя с этими датчиками некоторый многолетний опыт, научившись понимать их глюки и знать что делать - не вижу смысла пока переходить на другие. Даже если они наврут на 10% - мне будет понятно, что 900 и 1000 ppm это уже пора проветрить. Если будете держать уровень между 500 и 750 - прекрасно.

Можете озадачиться с S8, он более качественный, стоит порядка 2200р на сегодняшний день. В принципе, написать процедуру считывания с UART и мой скетч также сгодится для передачи его показаний.

09.10.2019 в 20:24
0

Спасибо! Только вчера задумался собрать и развесить на производстве для контроля а тут ХауТу подвезли.

/me пошел набивать корзину.

09.10.2019 в 20:43
3


Ага-а-а, есть такое дело. Wemos D1 mini китайский, датчик такой же. Зашита Sonoff-Tasmota, подцеплено все к Domoticz. Коробочка нааддитивлена из ABSMaker ABS, внутри все качественно размещено на термосоплях.

09.10.2019 в 21:06
0

ОТЛИЧНО  вам дышится смотрю)) Куда это вы уходили между 10 и 20 ))))

Я вот не люблю темы слива конечно своих данных в облака. Поскольку сам аналитик данных и знаю какое свинство творится на так называемых dmp платформах, да и вы и сами наверно от таргета прикипели.

Поэтому лью себе, никаких облак.

09.10.2019 в 21:12
0

Тут скорее не с приходом-уходом, а с закрытым-приоткрытым (на микрощелку) окном коррелирует.

Облачности никакой, не люблю. Domoticz на локальной малине развернут.

09.10.2019 в 21:16
0

Ммм. Прекрасно. Почитал, красивая штучка.

09.10.2019 в 23:56
0

Красотища! Давно такой комплект лежит в столе, но вот собрать руки не дошли, может поделитесь моделькой и скетчем? И если не секрет, то льете куда и график симпатичный откуда?

10.10.2019 в 00:09
0

Так я ж говорю, использую универсальную прошивку Sonoff-Tasmota. Подключено к серверу Domoticz, развернутому на Raspberry Pi Zero W. Моделька очень примитивна и похабна, но если прямо так хочется, то расшарил.

10.10.2019 в 09:51
1

Спасибо добрый человек! И отдельное спасибо за то, что ткнули меня носом в проект Sonoff-Tasmota!

09.10.2019 в 21:18
2

Я делал похожий, но без Wi-fi, вот моя модель https://www.thingiverse.com/thing:3478444 



10.10.2019 в 09:40
0

может какой-то готовый вариант датчика CO2 и микрочастиц с алика посоветуете?

10.10.2019 в 12:16
0

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

Ну если прям задача купить и не морочиться сборкой... То ищите устройство именно на NDIR датчиках. Поскольку бывают еще всякие дешевые  газоанализаторы, которые высчитывают апроксимированное значение по производным газам. И такие датчики как правило долго не живут, там другой принцип, разогревается пластина с каким-нибудь напылением, которое реагирует на определенную линейку веществ и в зависимости от обмена электронами этого вещества с раскаленной пластиной высчитывается значение. Но знаете, как правило в таких датчиках нагревательный элемент вступает в реакцию с 5-6 газами и от того что датчик все время накален, живут по отзывам не более года. Такие датчики на алике по 100-150р. 

10.10.2019 в 09:56
0

Этот датчик лучше "продувать" перед его измерением, у меня улитка 12в от 5в на 10 секунд включается перед считыванием показаний. Это быстрее показывает изменение концентрации, чем без "продувания". Еще лучше добавить в конструкцию питания от акб, т.к. после подачи питания MHZ19 приходит в себя минут 5, а от акб он не будет тратить на это время, когда питания внешнее пропадет. У меня 18650 включен вместо акб, подзарядка через tp

10.10.2019 в 11:56
0

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

10.10.2019 в 12:15
2

Схема не сложная, улитка 40x40, корпус тоже без излишеств:


10.10.2019 в 12:34
0

Здорово, уже на прямой камень посадили и передачу перевели на nrf.

Понятно, то есть вы себе реализовали этакую переноску от розетки к розетке. Красивое исполнение. Труд, внимание и образование)))

А подскажите, зачем R8 330ом на sck? Точнее, что будет, если его не будет. Траблы с тактированием при перепрошивке?


Кстати, вы может уже знаете, а другим возможно будет интересно. На NRF написали эмуляцию BLE и с его помощью можно передавать значения на bluetooth. Отличный хак считаю, если учесть, что nrf стоит до 50р, а полноценные bluetooth модули от 150р, всякие hc-05, hm-10 имею ввиду

10.10.2019 в 13:02
1

R8 чтобы при прошивке avr, не вытаскивать nrf.

ble на nrf не испытывал, т.к. вполне можно сейчас купить отдельный модуль ble, а nrf уже не так много и дешево продают.

10.10.2019 в 10:14
1

А как помогают растения на рабочем месте с уровнем СО2 не отслеживали? Они наоборот любят когда СО2 побольше... Вот подумал, что надо хлорофитум на столе рабочем поставить...

10.10.2019 в 11:46
1

Неа, ботаникой не практиковался. Вроде бы когда у них есть возможность для фотосинтеза днем, то СО2 они забирают. А ночью сами выделяют СО2.

Но для такого растения как человек, лучше держать маленькую щелочку на улицу и значения между 500 и 700 ppm.

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

10.10.2019 в 16:58
0

Спасибо, интересно.

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

10.10.2019 в 17:15
0

Этот датчик не на тот газ, что выделяет газовая плита (бытовой), а на тот, что человек. Так сказать углекислый.

Так что, куда бы вы не переехали - этот газ будет вас преследовать:))

Еще на ардуино-программируемые МК можно повесить простые датчики серии MQ, вот их описание и то из чего они сделаны.

https://blog.kvv213.com/2016/09/razbiraemsya-s-datchikami-co-i-metana-mq-4-i-mq-7/

То есть для бытового подходит MQ-4.

13.10.2019 в 02:49
0

МQ-2 + Ардуино+ вытяжка кухонная = тёща перекрестилась ))

15.10.2019 в 16:35
0

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

15.10.2019 в 17:24
0

Если прям реле на датчик вешать, то там пару команд при приеме ppm прописываете - условие установки сигнала HIGH/LOW на управляющую ногу реле.

Но как правило  места установки датчика и  реле разнесены. Под это отдельный микроконтроллеры и необходимо докупить реле. Чтобы запустить 5В реле с ESP8266, понадобится транзистор (биполярный вполне). Или сразу купить реле с 3.3В ногой активации.

Далее считывать последнее из отправленных значение по СО2 и в зависимости от уровня значения - вкл/выкл реле.

Если розеток много и все в радиусе 50 метров, то можно использовать связку Arduino nano, relay 10A220VAC, NRF24L01+. 

Для написания комментариев, пожалуйста, авторизуйтесь.

Читайте в блогах

Кнопка а/м 2110

-3DP-BCoreXY- широкоформатный принтер под тяжелую печать. Портал. Хотенд/экструдер

Обратная инженерия - разработка ручки для лампы на основе прототипа и ее печать

Подавалка припоя.

Продолжаем печать. Крым в Миниатюре. Мелочевка.

Почти случайно получилось