Датчик PM2.5 и PM10 пыли SDS011


Тут было много обзоров всяких сенсоров для мониторинга состояния воздуха, хочу показать короткий обзор на сенсор измеряющий количество частиц пыли категорий PM2.5 (диаметром меньше 2,5 мкм) и PM10 (диаметром от 2,5 до 10 мкм) в воздухе.
Принцип действия основан на анализе рассеянного света от частиц пыли подсвеченных лазерным излучением.
За подробностями прошу под кат…

Сенсор довольно новый, разработан компанией inovafit.
Характеристики:
1) заявленная скорость реакции не менее 10 с;
2) разрешение: 0,3 мкг / м3;
3) напряжение питания: 4,7 ~ 5,3 В;
4) потребляемая мощность > 1 Вт (я так понял пиковая);
5) продукция прошла сертификацию CE / FCC / RoHS (может кому-то и пригодится);
6) температурный диапазон: -20 ~ +50 °C;
7) размеры: 71 мм * 70 мм * 23 мм.

Данные с датчика выдаются по UART раз в секунду.

Вот немного картинок, которые утащил отсюда:


Вот это уже мой:



До этого мне приехали датчики попроще GP2Y1010AU0F, но адекватно заставить их работать с ардуиной я так и не смог, сенсор выдавал слишком маленькие значения на аналоговом выводе, которые при пересчёте по формуле из описания давали отрицательное значение… (Нормально он реагировал только на карандаш в отверстии и то выдавал не то напряжение, которого я ожидал). Не исключаю кривизну своих рук, но так или иначе этот приборчик удобнее, выдаёт данные в цифровом виде, имеет встроенный пропеллер для прокачивания воздуха и носик для подключения трубки для небольшого отвода.

Свой сенсор я подключил к платке Orange pi zero, которая по вайфаю через MQTT отправляет данные на сервер Home Assistant, который крутится на малинке. Убрал его правда подальше в коридор, т.к. пропеллер всётаки шумит хоть и тихо, но мне мешает ночью спать (по шуму тише, чем тихий ноут типа моего lenovo t61).


Вот тут немного скопипащенного чужого кода без проверки CRC данных и с усреднением на 30 секунд.

import serial
import time
import struct
import paho.mqtt.publish as publish

mosquitto_ip = "192.168.1.86"
sens_name = "SDS011_1"
n = 30

ser = serial.Serial('/dev/ttyS2', baudrate = 9600, stopbits=1, parity="N", timeout=2)

#ser.open()
ser.flushInput()

byte, lastbyte = "\x00", "\x00"

while True:
    lastbyte = byte
    byte = ser.read(size=1)

    # We got a valid packet header
    if lastbyte == "\xAA" and byte == "\xC0":


        sentence = ser.read(size=8) # Read 8 more bytes
        readings = struct.unpack('<hhxxcc',sentence) # Decode the packet - big endian, 2 shorts for pm2.5 and pm10, 2 reserved bytes, checksum, message tail

        pm_25 = readings[0]
        pm_10 = readings[1]
        # ignoring the checksum and message tail

        for i in range (1,n-1):
           b1 = ser.read(size=2)
           sentence = ser.read(size=8)
           readings = struct.unpack('<hhxxcc',sentence)
           pm_25 = pm_25 + readings[0]
           pm_10 = pm_10 + readings[1]

        pm_25_m = round(pm_25/(n*10.0),2)
        pm_10_m = round(pm_10/(n*10.0),2)

        #print "pm_2.5:",pm_25_m,"ug/m^3  PM 10:",pm_10_m,"ug/m^3"
        #print "raw: %.2f " %pm_25
        ser.close()
        try:
           publish.single("sens/SDS011_1/pm_2.5", pm_25_m, hostname = mosquitto_ip)
           publish.single("sens/SDS011_1/pm_10", pm_10_m, hostname = mosquitto_ip)
        except Exception:
           print "No mosquittoo ((("
           time.sleep(60)

        #time.sleep(30)
        ser.open()



Примерно вот так выглядит график для обычного дня. Ночью открыто окно и затягивает с улицы пыль и показания повыше. (График CO2 добавил, чтобы было видно, как себя ведёт, когда никого нет дома).

Показатели количества пыли ведут себя почти не связанно друг с другом. Если трясти в квартире одеялами, заметно увеличивается уровень крупной пыли, а мелкая пыль почти не меняется (пик в конце графика — сдул пыль, перед фотографированием). Уровень мелких частиц поднимается при готовке на кухне (до значений в сотни мкг/м3) и например если жечь аромасвечку (ну тут датчик вообще зашкаливает до ~ единиц мг/м3, если до него дымок дойдёт, так что хорошая альтернатива датчику дыма).

Также ко мне приехала другая версия SDS021, её пока не подключал, если дойдут руки, напишу и про неё.
Планирую купить +38 Добавить в избранное +40 +73
+
avatar
  • Sanja
  • 12 января 2018, 00:01
0
GP2Y1010AU0F подключали с конденсатором и резистором?
+
avatar
0
Да, с теми, которые продавец положил в комплекте. И даже смотрел осциллографом как он тикает (и как без конденсатора пытается).
+
avatar
  • Brs
  • 12 января 2018, 00:20
+1
Могу быть не прав, но думаю что активный кулер, достаточно быстро туда пыли набьет и показания с течением времени будут искажаться. Возможно заложена необходимость чистки датчика?
+
avatar
0
Через полгодика сниму кулер посмотреть, но судя по фоткам да, пыли там дофига набивается. Хотя с другой стороны, нельзя же совсем не дуть, у него скорость реакции будет низкая, плюс будет явно занижать.
+
avatar
  • kirich
  • 12 января 2018, 01:17
0
А куда такой применяют? Дома вроде не нужен.
+
avatar
+5
Тут у меня в полукилометре от дома мусоросзжигательный заводик сына прокурора Чайки, хочется оперативнее реагировать на ночные запахи (ближе к лету на балконе размещу с притоком с улицы) и своевременно стучать куда нужно, а домой SDS021 и вообще хотелось понять надо ли ставить приточку с фильтром от газели, как в недавнем обзоре здесь))
Это конечно актуальнее китайцам с их смогом в крупных городах, но и для Москвы интересно. Например заметил повышение PM 2.5 во времяя новогодних салютов…
+
avatar
  • kirich
  • 12 января 2018, 01:30
+4
и своевременно стучать куда нужно
Сертификат из метрологии есть на получившийся прибор?
Если нет, то можно стучать до позеленения, результат будет нулевым.

У меня дома мультиметр с логгером, можно использовать для контроля напряжения в сети, но если решу пожаловаться, то далеко не факт что отреагируют, так как прибор не поверен, а для поверки он должен быть в реестре средств измерения.
+
avatar
+2
Он даже отрицательным бывает))) Жителя Красноярска вызвали в прокуратуру из-за установки датчиков загрязнения воздуха
А вообще для жалобы в МЧС или Роспотреб/природнадзор прибор не нужен… При многочисленных жалобах они сами должны с прибором приехать.

*А если прибор поверен вы будете доказывать, что именно здесь намерили или не дымом от сигареты подули…
+
avatar
  • skif31
  • 12 января 2018, 02:10
0
А если видео приложить?
+
avatar
  • Kartus
  • 12 января 2018, 06:37
+2
При многочисленных жалобах они сами должны с прибором приехать.
Конечно. Что бы положить с прибором, прибор просто необходим)))
+
avatar
  • Kartus
  • 12 января 2018, 06:35
+2
и своевременно стучать куда нужно
А стучать, видимо, прокурору Чайке?))))
+
avatar
0
Раз прибор подключен по wi-fi, то можно написать скрипт стучалки, чтобы автоматизировать процесс :)
+
avatar
0
А дайте, пожалуйста, ссылку на эту приточку, со вчерашнего дня ищу на этом сайте.
+
avatar
+1
Немного ошибся, имел ввиду вот эту статью geektimes.ru/post/294999/
Спутал, т.к. фильтры обсуждали вот тут mySKU.me/blog/china-stores/57949.html
+
avatar
0
А, да! Читал эту статью на geektimes, спасибо за ссылку. Сам пока склоняюсь к проветривателю Тион 3s. Но жду отзывов на эту модель по окончанию зимы))) Что-то меня беспокоит нагреватель на выходе, как бы он сам не промёрз в холода. Ну и Bluetooth в нём смущает, он совершенно не нужен когда в квартире есть полноценная автоматизация, а цена с ним вроде как и не гуманна за «форточку с подогревом»…
Так что пока жду весны-лета)))
+
avatar
0
И дома может быть полезен.
Про качество воздуха и его измерения хорошо пишет Виктор Борисов, если тема интересна то стоит почитать его блог.
Вот один из свежих его постов на эту тему:
victorborisov.livejournal.com/300594.html
+
avatar
0
У него кстати, от пылесоса зашкаливает, я наблюдал как меняются показания, когда пылесошу дома, pm2.5 почти не меняется, pm10 немного прыгает, т.к. мебель двигаю, подушки трясу, но это у меня кёрхер с водяным фильтром и хепой.
+
avatar
0
Хмм. а вот интересует меня один момент. Я прекрасно знаком со строением датчиков дыма, диод + приемник и камера в которую попадает дым, если дым перекрывает свет от светодиода, то — кричим. А тут как? Лазер подсвечивает объемы пыли? Как аппарат понимает, где фракция большая, а где маленькая?
+
avatar
+2
Я прекрасно знаком со строением датчиков дыма, диод + приемник и камера в которую попадает дым, если дым перекрывает свет от светодиода, то — кричим. А тут как?
Это вы про оптический датчик, а их еще есть минимум с тремя другими принципами работы, тут принцип скорее всего схожий с ионизационным детектором. В общем гугль в помощь, заодно и про датчики дыма можно восполнить пробелы =)
+
avatar
+2
Но согласись, можно было бы описать в обзоре принцип работы системы (про фракции я уж молчу тогда). Если так, то можно обозреть неведомую херню и сказать за инфой лезте в гугл.
+
avatar
0
С дымом ровно наоборот. Оси сенсора и источника перпендикулярны. Это как засветка тумана фарами.
Нет дыма — сенсор видит черную стенку напротив. Есть дым — сенсор видит свет рассеянный им.
+
avatar
  • Sanja
  • 12 января 2018, 14:23
+1
За такой, как у автора, не скажу, могу описать строение Sharp «GP2Y1010AU0F». Там внутри два канала под остным углом, вроде буквы Х. В один канал по продольной оси светит LED. во втором стоит фотодетектор.

Перпендикулярно плоскости, в которой лежат каналы проходит сквозное отверстие. Воздух проходит через точку, где пересекаются каналы и блики от пыли фиксируются детектором. Тот считает их количество и яркость.
+
avatar
0
Спасибо, прикольная вещь, даже в качестве самой по себе.
+
avatar
0
У меня сабж стоит в красивой коробочке от того же производителя inovafitness.com/en/a/Detectors/2017/0327/90.html
Куплен 2 с лишним года назад, тогда назывался SDL307
Точность и ограниченное количество каналов не порадовали
forum.ixbt.com/post.cgi?id=print%3A47%3A012215&text=sdl307&user=&date=&date_days=980&date1_d=9&date1_m=5&date1_y=2015&date2_d=12&date2_m=1&date2_y=2018&posts=&pages=
+
avatar
  • pulp
  • 12 января 2018, 08:46
+2
Есть же проверенные решения от Plantower. PMS5003 стоит всего долларов 13, выдает значения по трем фракциям 1.0, 2.5 и 10, подключается через rx/tx и выдает чертовски стабильные и достаточно точные значения. С ардуиной дружится на раз ))
+
avatar
+1
А реально завести датчик на Orange Pi 2G-IoT и затем на заббикс сервере в Amazon EC2 рисовать график? Просто в километре от дома тоже цементный завод и четкая уверенность, что по ночам они останавливают фильтрацию выбросов ради увеличения производительности или экономии geektimes.ru/post/289759/
+
avatar
0
А, вот оно что! А я-то всё гадал, почему наша «Технониколь» по ночам так воняет, что на балкон не выйти.
+
avatar
0
У нас по ощущениям иногда с часа ночи по 4 утра сильно воняет…
+
avatar
  • FreeZLO
  • 13 января 2018, 19:57
0
Не. Она и днем воняет. Но ночью ветром медленнее рассеивает.
+
avatar
+1
Эта штука очень глючная, наверное проще малинку/апельсинку научить работать с внешним модемом.
И слать графики на narodmon.ru будет наверное проще и полезнее для окружающих.
+
avatar
0
На известном форуме есть целая тема про такие сенсоры и для чего их применяют. Узнал о таких сенсорах когда выбирал пылесос и фильтры к нему.
forum.ixbt.com/topic.cgi?id=47:12215
+
avatar
  • sskmy
  • 12 января 2018, 15:12
0
Почему бы не включать датчик раз в минут 15-20. Картина будет понятная, а пыли в нем и шума будет поменьше.
+
avatar
0
Надо же тогда электронный ключ городить, а тут воткнул и работает. А так, конечно имеет право на жизнь такой вариант…
+
avatar
  • AlexG
  • 23 октября 2019, 00:58
+1
Оказывается, существует открытый общественный проект из Германии по созданию карт загрязнения с использованием таких датчиков. А группа украинских школьников сделала локализованный проект. Так что датчик интересный.
+
avatar
  • Lopa
  • 30 октября 2020, 18:24
-1
Оставлю тут ссылку на локализованный проект для РФ:
aircms.online/#/