Vlastní řídící deska s ESP32 pro měření částic IKEA VINDRIKTNING
- January 16 2022
- ESP32, ESP8266, NodeMCU , Wemos, RTLDuino...
- 4608x Přečteno
Ikea nedávno začala prodávat svou krabičku s názvem IKEA VINDRIKTNING, což je zařízení sloužící pro měření kvality vzduchu, přesněji, prachové částice o velikosti PM2.5 (2.5um).
Čidlo se ukrývá v docela hezké designové krabičce na jejímž čele dominuje mléčný pruh plastu za kterým jsou ukryty LEDky - zelená, oranžová a červená.
Tyto LEDky jsou výstupem z měření částic a signalizují množství částic (ug) na m3 - a to je docela málo, ne?
A tak přichází na řadu laskakit.cz.
Do rukou se mi dostal vývojový kit, tedy prototyp, od www.laskakit.cz s názvem LaskaKit ESP-VINDRIKTNING. Je to deska založená na modulu ESP32 s mnoha vylepšeními, kterou lze umístit místo originální desky v VINDRIKTNING.
A proč je to zatím prototyp? Laskakit pořád vylepšuje návrh desky - a ač je plně funkční, vyslyšeli přání bastlířů na změnu LEDek za RGB LEDky. A tak se teď vyrábí tato verze vylepšená o RGB LEDky na přední straně.
Pojdmě se ale kouknout co LaskaKit ESP-VINDRIKTNING obsahuje.
Základem je ESP32 modul který se stará o komunikaci s čidlem PM1006, ovládání ventilátoru, komunikace se zařízeními na I2C sběrnici a také o ovládání LEDek.
USB-C konektor slouží jak pro programování, tak i napájení. Čidlo v kombinaci s ventilátorem není moc nízkoodběrové, takže celé zařízení je napájeno z USB-C konektoru. Laskakit ovšem připravuje i upravenou desku pro spínání čidla a dosáhnout tak co nejnižší možné spotřeby. USB-C konektor se od originální desky liší a otvorem tam jde trochu ztuha.
O programování se stará USB-UART převodník CH340C. Návod na instalaci převodníku najdete na tomto blogu.
Na desce dále najdete konektor pro ventilátor (stejný footprint jako na originální desce), konektor pro čidlo částic PM1006 (stejný footprint a pinout).
Ventilátor je spínán z ESP32 přes tranzistor, ten je řízen z GPIO12. Čidlo PM1006 je komunikuje s deskou pomocí UART sběrnice (UART2) na pinech GPIO16 a GPIO17. Čidlo má sice odlišné napájecí napětí (5V) od ESP32 (3.3V), ale díky level-shifteru (převodník logických úrovní) funguje komunikace bez problémů.
I LEDky jsou na prototypu spínány přes tranzistor. U novější verze už budou RGB LEDky :-)
A dostáváme se k nejvýznamnější změně (samozřejmě, použití ESP32 je TOP) a to je konektor pro I2C čidla s napájením 3.3V. Na tento konektor můžete připojit nejrůznější čidla - teploty, tlaku, vlhkosti, osvětlení nebo, jako v mém případě, CO2. I2C sběrnice je připojena na GPIO21 (SDA) a GPIO22 (SCL)
Vybral jsem modul opět od LaskaKit SCD41, který se do zařízení vejde naprosto v pohodě (narozdíl od originální vývojové desky od Sensirion).
Čidlo kromě měření CO2 umí měřit i teplotu a vlhkost. O čidle samotném jsem se rozepsal v tomhle článku.
Díky přidání SCD41, čidla pro měření koncentrace CO2, mám zařízení, které měří asi ty nejdůležitější veličiny pro zhodnocení kvality vzduchu - částice, CO2, teplotu a vlhkost.
Jednotlivé RGB LEDky tak mohou zobrazovat status jiného čidla - první například CO2, druhá teplotu, třetí množství částic PM2.5.
Kód, který jsem upravil pro použití s CO2 čidlem, je k dispozici na github laskakit - celá deska je totiž open hardware.
https://github.com/LaskaKit/ESP-Vindriktning/tree/main/SW/VINDRIKTNING
Pokud vám by se vám líbilo osadit zařízení nějakým malým OLED displejem, který by zobrazoval naměřená data, upravil jsem přední část krabičky pro osazení displeje o velikost 0.91" s rozlišením 128x64px.
Původní návrh je https://www.thingiverse.com/thing:5167213. Tento návrh nebyl ale moc odolný a po vytištění na 3D tiskárně se jednoduše lámal, jsem jej trochu upravil (zesílil sloupky atd).
Upravenou krabičku najdete na https://www.tinkercad.com/things/1MWRNdzaGk4-ikea-vindriktning
Tuhle krabičku ještě upravil k dokonalosti TataGeek který udělal přesný rozměr pro 0.91" OLED a navíc i zaoblené rohy. Krabička tak vypadá naprosto skvěle.
Model ke stažení: https://www.thingiverse.com/thing:5239953
Vložil jsem remix na Thingiverse, tak můžeš doplnit ještě jeden odkaz. Ne každý používá Tinkercad.https://t.co/3hW6rJQKwy
— TátaGEEK (@GeekTata) February 9, 2022