[-]
Szybkie szukanie


Baner sklepu jdtech.pl
Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Czujnik pyłu zawieszonego, smogu, "smogomierz", ale nie tylko [WiFi, ESP]
02-06-2020, 18:09 (Ten post był ostatnio modyfikowany: 11-07-2020 01:48 przez szopen.)
Post: #1
Czujnik pyłu zawieszonego, smogu, "smogomierz", ale nie tylko [WiFi, ESP]
Nie będę ukrywał, zainspirował mnie wirusowy zastój i głównie kolega @Lector będący w ekipie xiaomifans, więc więcej tam (nie widzę sensu powielania całości):
https://xiaomifans.pl/topic/1305-czujnik-smogu/

Tu postaram się wrzucić tylko mini-kompendium wiedzy/linków, które umożliwią złożenie takiego sprzętu w jedno popołudnie (trochę czasu straciłem na zbędne poszukiwania), post będzie więc edytowany, póki pamiętam wszystko w miarę na świeżo (oczywiście to takie subiektywne spojrzenie).

Jak na razie nie mam się czym chwalić - sprzęt przepracował testowo kilka dni na zasilaniu z powerbanku przy średnim napięciu U=5,1545V zużywając E=5,63Ah (lub 29,02Wh), no i teraz wyszło na to, że nie zmierzyłem ani czasu, ani prądu Big Grin bo, chyba licznik czasu w mierniczku USB trafił szlag i stanął na wyniku 8h 31' który jest raczej bzdurą (może nocno-poranna rosa mu zaszkodziła?), bo sprzęt przepracował około 2,5 doby, ale może z wyników pomiarów czujnika coś odzyskam, edit: oszacowałem czas pracy na 58h (po czasie ostatniego pomiaru i przybliżonemu czasowi uruchomienia sprzętu), więc średni pobór prądu to 97mA (z jednej strony zaskakująco mało, z drugiej na zdjęciu załapał się miernik z chwilowym pomiarem i był on zbliżony, podczas rozruchu ten prąd rośnie do około 150mA, ale najwyraźniej w trakcie normalnej pracy jest sporo mniejszy niż sądziłem, a przypuszczałem, że sam czujnik pyłu żre sporo więcej - jest tam przecież wentylator i dioda laserowa), więc wygląda na to, że w finalnej wersji największym obciążeniem będzie grzałka.

edit2: tym razem całodobowy pomiar się udał (konfiguracja nieco inna, taka jak planowana na ostateczną: NodeMCUv3 + BME280 + PMS5003 + LCD1602 HD44780 z konwerterem z I2C PCF8574 i włączonym na stałe podświetleniem na maksymalnej jasności, a poprzednio był BMP280 i miniaturowy OLED zamiast LCD) - średnia pobierana moc to 0,64W co daje 124mA przy warunkach zasilania jak ostatnio.

Dodatkowo tymczasowo swój sensor mam wyłączony - jest w trakcie przeróbek i w pierwszych przymiarkach do wykorzystania obudowy (a właściwie 2 oddzielnych, które będą połączone krótkim kablem, tymczasowo może jednak zastosują konstrukcję z rurki kanalizacyjnej, tylko mam pewne obawy, bo prowizorka bywa najtrwalsza Tongue).



Ten opis będzie zbiornicą linków dla projektów bazujących na ESP (możliwe do wykorzystania moduły bazujące na ESP8266 lub ESP32, czasem gdy projekt zawiera gotowe PCB wymagane jest użycie konkretnego typu modułu, bądź jego klona by pasował do gotowej płytki, w przypadku "druciaka" można użyć dowolny kompatybilny moduł), podobne projekty istnieją też dla Arduino (moduły na bazie procesorów ATmega) czy Raspberry Pi, ale nimi się nie będę zajmował - projekty na bazie ESP są po prostu banalnie łatwe do uruchomienia (choć innych nie próbowałem - dla mnie po prostu wybór ESP8266 to był idealny kompromis między ilością poświęconego czasu i kosztem podzespołów, a uzyskanym efektem).

Konkrety:

0. Wybór jednego z istniejących projektów

1. Sprzęt (moduły/czujniki/dodatki/gotowe zestawy)

2. Budowa i uruchomienie

3. Oprogramowanie (sterowniki, flasher, binarne firmware, źródła)

4. Gotowy miernik można zarejestrować w miejscach, gdzie będziemy dzielili się wynikami z ogólnoświatową społecznością)
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Podziękuj Odpowiedz cytując ten post
03-06-2020, 18:15 (Ten post był ostatnio modyfikowany: 01-08-2020 02:32 przez szopen.)
Post: #2
Wybór projektu
0. Warto cokolwiek poczytać - są 3 dość zbliżone alternatywne projekty opierające się o zbliżoną (lub identyczną) bazę sprzętową
(właściwie NAMF to fork Luftdaten'a, a w genezę Smogomierza nie wnikałem, bo udało mi się zbudować miernik zanim dotarłem do dokumentacji tego projektu, a jest naprawdę imponująca), każdy z nich ma jakieś zalety i jakieś wady. Warto więc przed decyzją o wyborze przejrzeć wszystkie "na sucho". Moim subiektywnym zdaniem:
- pod względem metrologicznym (to nie literówka - chodzi o kwestie związane z pomiarami, ich wiarygodnością, błędami itd. a nie o meteorologię) zdecydowanie najbardziej dopracowany jest NAM (i mam tu na myśli możliwość podgrzewania powietrza, by wyeliminować wpływ skroplonej pary wodnej - mgły na wynik pomiaru (to dość istotne w polskim klimacie),
- jeśli chodzi o łatwość budowy wygrywa chyba Smogomierz, ale pod warunkiem zastosowania dokładnie takich podzespołów jakie są tam sugerowane,
- natomiast w przypadku składania "z czego popadnie" Lufdaten Air Rohr wydaje się być najłatwiejszy i od niego zacząłem bez głębszego zastanowienia (mimo, że nie znam niemieckiego, choć kiedyś to było powodem dla którego odpuściłem realizację tego projektu), ale obecnie są wersje tłumaczone na inne języki w tym polski, choć tłumaczenie PL jest dość koślawe (translator?), ale samo firmware ma UI po polsku.

Do rozważenia są też inne kwestie - jak np. kierunek rozwoju projektu i zapał jego współautorów (niestety wiele dobrych projektów DIY upadło w różnych okolicznościach, tych też nie można traktować jako coś wiecznego - proste moduły ESP nie nadają się do tego projektu z braku zasobów - za mały flash, developerzy już wspominali wiele razy, że dochodzą do granic możliwości ESP8266 choć oczywiście i na to istnieją rozwiązania, więc kierunki rozwoju mogą być różne).

Luftdaten
https://luftdaten.info/
https://github.com/opendata-stuttgart/sensors-software
Polska gałąź Luftdaten
http://luftdaten.org.pl/
Nettigo NAM/NAMF
https://air.nettigo.pl/o-projekcie/
Smogomierz
https://github.com/hackerspace-silesia/Smogomierz

Właściwie te linki wystarczą, by zbudować gotowy miernik. Big Grin

W dalszym tekście będę je oznaczał odpowiednio L, N lub S.

kolejny projekt tego rodzaju
Smart Citizen Kit/ Smart Citizen Station ten pierwszy do kupienia za ~100$-120$ jako kit, a generalnie to projekt unijny(?)
https://smartcitizen.me/

A może jeszcze coś innego wartego uwagi? (nie twierdzę, że znam wszystkie projekty tego rodzaju)
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Podziękuj Odpowiedz cytując ten post
03-06-2020, 18:22 (Ten post był ostatnio modyfikowany: 12-07-2020 01:26 przez szopen.)
Post: #3
Sprzęt
1. Wspierane podzespoły (moduły ESP, czujniki PM, temperatury, wilgotności, ciśnienia)

W nawiasach przed modelem podałem skrót nazwy projektu dużą literą (kapitalikiem) np. "(S)", gdy jest to domyślny w danym projekcie element (bądź jedyny możliwy do zastosowania ze względów konstrukcyjnych np. PCB).
Zazwyczaj można zastosować inne rozwiązanie, ale jeśli korzystamy z gotowej PCB czasem kompatybilność jest ograniczona.
(B) oznacza elementy użyte w zestawie Luftdaten w aktualnej niemieckiej wersji (wcześniej była nieco inna konstrukcja) oraz wersji Botlandu,
(L) to stara wersja Luftdaten,
(N) Nettigo NAM v3.x
(S) Smogomierz typowy zestaw komponentów

Każdy musi sprawdzić to sam, jeśli planuje użyć coś innego niż domyślne podzespoły, mimo to wprowadziłem dodatkowe oznaczenie literowe (nie biorę odpowiedzialności, za poprawność działania - niektóre wzajemne kombinacje czujników nie są wspierane).
Małe litery, gdy dany sprzęt jest wymieniony jako kompatybilny w dokumentacji, wstępnie tylko dla Smogomierza, który listę ma stosunkowo krótką, teraz uzupełnione o NAMF w/g listy czujników dostępnej w GUI (dla wersji stabilnej 2019-020):
(s) Smogomierz
(n) NAMF 2019-xxx (stabilna, opis był przygotowywany dla wersji 2019-020)
(o) NAMF 2020-xxx (beta, opis w/g wersji 2020-031) raczej obsługuje też wszystko co było w (n)


- "płyta główna" w zasadzie dowolny moduł ESP8266 dysponujący 4MB flasha (UWAGA: nie wszystkie moduły mają taki rozmiar) lub ESP32 (UWAGA nie w każdym projekcie) jest dostępnych ich sporo więcej niż wymienione poniżej (podałem tylko kilka popularnych)

ESP8266:
NodeMCU v2 (Amica)
(S, B, L) NodeMCU v3 (Lolin)
NodeMCU v3 (Lolin) + NodeMCU Base 1.0 (dodatkowa płytka pod moduł - ułatwia konstrukcje prototypowe, w tym przypadku umożliwi łatwe zasilanie wyższym napięciem)
(N) Wemos D1 mini
Wemos D1 mini Pro

(s) ESP32:
(prawdopodobnie wszystkie typowe moduły dadzą się wykorzystać, przynajmniej w projekcie Smogomierz, bo pozostałych nie zgłębiłem pod tym względem, a ESP32 się jednak u mnie nie walają; za to mam ESP8266 w kilku rożnych wykonaniach i np. ESP-01/ESP-01s są wykluczone z kilku względów, z tego co zauważyłem Nettigo nie wspiera ESP32 - developerzy koncentrują siły na optymalizacji i modularyzacji kodu dla ESP8266, jeśli chodzi o Luftdaten jest trochę podobnie, ale inaczej - tam nie skoncentrowali się na modularności, więc jest kilka wersji na różne zaestwy czujników, ale chyba też tylko SoC ESP8266)

- czujniki pyłu

(N, B, s) Nova SDS011
(n) Plantower PMS1003
(n) Plantower PMS3003
(s, n) Plantower PMS5003
(n) Plantower PMS6003
(S, n) Plantower PMS7003
(s) Sensirion SPS30
(s, n) Honeywell HPMA115S0 sensor (niepopularny w PL)
(L, n) Shinyei PPD42NS niezalecany


- czujniki temperatury i wilgotności

(N, B, L, s) DHT22 (OneWire interface)
AM2302 (OneWire interface)
Sensirion SHT30
Sensirion SHT31
(s, n) HTU21D
(n) Nettigo HECA - moduł dogrzewania zawierający Sensirion SHT30

- czujniki temperatury, wilgotności i ciśnienia
(S, n) Bosch BME280 (I2C)
Bosch BME680 (I2C)


- inne czujniki

Bosch BMP180 (I2C) (temperatura + ciśnienie) niezalecany
Bosch BMP280 (I2C) (temperatura + ciśnienie)
(n) DS18B20 (temperatura , OneWire interface) Pin D7 (GPIO13)
(n) Neo 6M moduł GPS (serial)
(o) Winsen MH-Z14A (czujnik CO2)


- wyświetlacze (są elementem opcjonalnym, OLED ze względu na rozmiary średnio się nadają do tego celu, ale jeśli projekt miałby być wykorzystany jako domowy termohigrometr bez pomiaru PM to może to ma sens?)

(n) SSD1306 OLED (I2C) 128x64 pix (daje się wykorzystać też model 128x32 pix, ale czytelność jest mocno ograniczona, wyświetlona jest co 2 linia)
(n) SH1106 OLED (I2C) 128x64 pix
(n) LCD1602 (na sterowniku HD44780 z konwerterem PCF8574/PCF8574A, czyli z interfejsem I2C) 16 znaków, 2 linie*
(n) LCD2004 (na sterowniku HD44780 z konwerterem PCF8574/PCF8574A, czyli z interfejsem I2C) 20 znaków, 4 linie*
(o) linijka LED Nettigo (nie wiem czy jest w produkcji, w sprzedaży nie widziałem, dokumentacja potrzebna do samodzielnej budowy jest gdzieś w dokumentacji projektu NAM)

* - jeśli mamy układ PCF8574 to używamy adresu 0x27 bez zwierania zworek adresowych, a jeśli mamy układ PCF8574A to używamy adresu 0x3F bez zwierania zworek adresowych (o ile konwertery i2c->paralell są typowej konstrukcji)


Oficjalna lista sprzętu dla Smogomierza
https://github.com/hackerspace-silesia/S...ponents.md




Gotowe zestawy (kit'y) stan cen na czerwiec 2020 bez uwzględnienia kosztu przesyłki

L
podstawowa wersja kita w wykonaniu Nettigo ~160zł (podstawowe części, SDS11+DHT22)
https://nettigo.pl/products/zestaw-czesc...daten-info
wersja "premium" ( SDS11+BME280) z elementami mechanicznymi (słynna rura Smile ) ~225zł
https://nettigo.pl/products/zestaw-czesc...011-bme280
N
https://nettigo.pl/products/nettigo-air-...ik-smogowy
zestaw zawierające elektronikę, PCB, obudowę i części mechaniczne (w tym moduł podgrzewania) ~350zł lub gotowe zmontowane urządzenie ~500zł
S
kit w wykonaniu Botland ~190zł (podstawowe części + obudowa)
https://botland.com.pl/pl/czujniki-czyst...41052.html
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Podziękuj Odpowiedz cytując ten post
03-06-2020, 18:23 (Ten post był ostatnio modyfikowany: 04-06-2020 03:29 przez szopen.)
Post: #4
Budowa i uruchomienie
Opisy jak złożyć/zlutować i uruchomić.

2a. Nettigo Air Monitor (NAM)
https://air.nettigo.pl/baza-wiedzy/
2b. Luftdaten Air Rohr
https://luftdaten.info/wp-content/upload...CJA-PL.pdf
https://luftdaten.info/feinstaubsensor-bauen/
http://luftdaten.org.pl/index.php/instrukcja/
https://air.nettigo.pl/baza-wiedzy/kit-1...a-montazu/
2c. Smogomierz (Smogly)
https://github.com/hackerspace-silesia/S...ldering.md
https://github.com/hackerspace-silesia/S...ardware.md
https://github.com/hackerspace-silesia/S...smogomierz
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Podziękuj Odpowiedz cytując ten post
03-06-2020, 18:24 (Ten post był ostatnio modyfikowany: 11-07-2020 02:06 przez szopen.)
Post: #5
Oprogramowanie
3. Oprogramowanie - tu mamy wybór więc warto się zdecydować na jakieś z dostępnych gotowych pre-kompilowanych, ale jeśli ktoś się czuje na siłach to nie ma problemu - oprogramowanie jest otwarto-źródłowe, można samodzielnie je modyfikować i kompilować pod swoje potrzeby (wtedy musimy sami sobie zadbać o aktualizacje).


3a. Soft pomocniczy:

- Sterowniki układów UART (win10 raczej powinien sobie sam z tym poradzić):

WCH CH340 (spotykany np. w NodeMCU v3)
windowx
http://www.wch.cn/downloads/CH341SER_ZIP.html
osx
http://www.wch.cn/downloads/file/178.html

Silicon Labs/Prolific CP2102 (spotykany np. w NodeMCU v2)
https://www.silabs.com/products/developm...cp-drivers

- Uniwersalny flasher dla ESP
https://github.com/nodemcu/nodemcu-flasher
(Luftdaten i NAMF mają własne dedykowane flashery umożliwiające wgranie pliku binarnego pobieranego online bezpośrednio z witryny projektu)



3b. Firmware ESP
(skompilowane oprogramowanie binarne oraz pliki źródłowe do własnych modyfikacji i samodzielnej kompilacji, dla początkujących oczywiście ta pierwsza opcja)

NAMF (skrót od Nettigo Air Monitor Firmware) - jeśli ktoś jest początkujący radzę zacząć od tego - tak naprawdę wystarczy flasher (wersja windows) oraz dostęp do sieci i sterowniki dla układu UART zamontowanego w użytym module ESP
https://fw.air.nettigo.pl/update/nam-flashing-tool.exe
ewentualnie warto zajrzeć tam
https://forum.kodujdlapolski.pl/t/firmwa...nitor/3251
lub dla ambitnych
https://github.com/nettigo/nam-firmware-flasher
https://github.com/nettigo/namf
wersja beta (obecnie 2020-xxx)
https://forum.kodujdlapolski.pl/t/przepi...gu/3513/75

software Luftdaten
flasher - od niego można zacząć
https://github.com/opendata-stuttgart/ai...re-flasher
dla ambitnych
https://github.com/opendata-stuttgart/sensors-software
https://github.com/nettigo/air-monitor/t...r-firmware


oprogramowanie Smogomierz (Smogly)
binarne firmware zarówno dla ESP8266 jak i ESP32
https://github.com/hackerspace-silesia/S...r/firmware
instrukcja flashowania
https://github.com/hackerspace-silesia/S...are-bin.md
smodzielna kompilacja (Arduino IDE)
https://github.com/hackerspace-silesia/S...oftware.md
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Podziękuj Odpowiedz cytując ten post
03-06-2020, 18:25 (Ten post był ostatnio modyfikowany: 06-06-2020 01:10 przez szopen.)
Post: #6
Rejestracja czujnika w serwisach internetowych lub integracja lokalna
4. Ostatni krok, gotowy miernik można zarejestrować w miejscach, gdzie będziemy dzielili się wynikami z ogólnoświatową społecznością.

Oficjalna baza danych Luftdaten:
https://devices.sensor.community/sensors

OpenSenseMap
https://opensensemap.org/account

polski AQI.eco
https://aqi.eco/pl/about/config

Taki "duet" aplikacja + serwis Particulate Matter App (dawniej Feinstaub app)
https://play.google.com/store/apps/detai...bapp&hl=pl
https://pm.chillibits.com/
instrukcja
https://www.chillibits.com/pmapp/en/faq/

integracja Smogomierza z wybranymi serwisami
https://github.com/hackerspace-silesia/S...tionals.md
i ThingSpeak
https://github.com/hackerspace-silesia/S...ngspeak.md


Można też korzystać z odczytów lokalnie.

integracja Smogomierz - HomeBridge
https://github.com/bfaliszek/homebridge-smogomierz

integracja NAMF (i być może też Luftdaten?) z HA
https://forum.kodujdlapolski.pl/t/firmwa...or/3251/32



Aplikacje smartfonowe korzystające z danych o zapyleniu

Android
Feinstaub app, czyli Particulate Matter (wspomniana wyżej)
https://play.google.com/store/apps/detai...bapp&hl=pl
Kanarek (bez dostępu do stacji Airly, ale używa podobno danych Luftdaten)
https://play.google.com/store/apps/detai...nary&hl=pl
Airly (chyba tylko stacje Airly, swojego czujnika tam nie widzę)
https://play.google.com/store/apps/detai...roid&hl=pl

iOS

Local Haze
https://apps.apple.com/pl/app/local-haze...98405?l=pl
Airly (chyba tylko stacje Airly, swojego czujnika tam nie widzę)
https://apps.apple.com/pl/app/airly/id1283400152?l=pl



dodatkowe linki
https://kodujdlapolski.pl/garsc-przydatn...luftdaten/

http://mapa.airmonitor.pl/
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Podziękuj Odpowiedz cytując ten post
03-06-2020, 18:42 (Ten post był ostatnio modyfikowany: 12-07-2020 01:00 przez szopen.)
Post: #7
Czujnik pyłu zawieszonego, smogu, "smogomierz", ale nie tylko [WiFi, ESP]
Post zapasowy Tongue (może nie przewidziałem właściwego podziału)

Zapraszam używających podobnego sprzętu, którzy budowali coś takiego do dyskusji i uzupełnień (teraz są niewątpliwie braki - żałuję, że nie pisałem tego na bieżąco).

Na obrazku ostatnia przymiarka 2 obudów:
[attachment=3486] - no cóż omyłkowo usunąłem załącznik…
plastikowa będzie zawierać elektronikę (jeszcze nie jestem w pełni zdecydowany na wyświetlacz - zależy czy wykombinuję jak wstawić jakąś szybkę) i czujnik BME (jeszcze myślę z czego zrobić "wypust" do kontaktu z otoczeniem, może z dławicy kablowej?)
a metalowa tylko czujnik PM + przewidziałem miejsce na komorę grzania powietrza (póki co obywam się bez).



Mikroupdate tak wygląda najświeższa na dziś (początek lipca 2020) wersja NAMF-2020-31, warto obejrzeć, bo widać jaki sprzęt (czujniki) jest obsługiwany obecnie
               
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Podziękuj Odpowiedz cytując ten post
Odpowiedz 


Podobne wątki
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Czujnik PM2.5 Ikea Vindriktning - przeróbka do wykorzystania w systemach ID szopen 0 1 075 04-04-2022 17:27
Ostatni post: szopen
  WLED "dla leniwych" - sterowanie każdą diodą RGB oddzielnie [WiFi, ESP, Android, iOS] szopen 3 6 547 04-04-2022 14:12
Ostatni post: szopen
  DSTIKE WiFi Deauther MiNi szopen 0 1 472 08-04-2021 00:32
Ostatni post: szopen
  Najtańsze "gniazdko WiFi". Ekonomista 45 16 741 27-05-2020 00:24
Ostatni post: szopen
  DGM PP-W162 smart-plug z pomiarem energii [WiFi, Tuya, Android, iOS] szopen 5 8 032 14-04-2020 16:27
Ostatni post: szopen