Obsah:

Cenovo dostupný monitor kvality ovzdušia IoT založený na krokoch RaspberryPi 4: 15 (s obrázkami)
Cenovo dostupný monitor kvality ovzdušia IoT založený na krokoch RaspberryPi 4: 15 (s obrázkami)

Video: Cenovo dostupný monitor kvality ovzdušia IoT založený na krokoch RaspberryPi 4: 15 (s obrázkami)

Video: Cenovo dostupný monitor kvality ovzdušia IoT založený na krokoch RaspberryPi 4: 15 (s obrázkami)
Video: 🔵 Blackview Tab 16 - ПОДРОБНЫЙ ОБЗОР ПЛАНШЕТА 2024, Júl
Anonim
Cenovo dostupný monitor kvality vzduchu IoT založený na RaspberryPi 4
Cenovo dostupný monitor kvality vzduchu IoT založený na RaspberryPi 4
Cenovo dostupný monitor kvality vzduchu IoT založený na RaspberryPi 4
Cenovo dostupný monitor kvality vzduchu IoT založený na RaspberryPi 4
Cenovo dostupný monitor kvality vzduchu IoT založený na RaspberryPi 4
Cenovo dostupný monitor kvality vzduchu IoT založený na RaspberryPi 4
Cenovo dostupný monitor kvality vzduchu IoT založený na RaspberryPi 4
Cenovo dostupný monitor kvality vzduchu IoT založený na RaspberryPi 4

Santiago, Čile počas zimnej núdzovej situácie v oblasti životného prostredia má výsadu žiť v jednej z najkrajších krajín sveta, ale bohužiaľ, nie je to všetko také ružové. Čile v zimnom období veľmi trpí kontamináciou ovzdušia, predovšetkým v dôsledku prachových častíc ako je prach a smog.

Vzhľadom na chladné počasie je na juhu kontaminácia ovzdušia spôsobená predovšetkým kalefaktormi na báze dreva a v Santiagu (hlavnom hlavnom meste v strede krajiny) zmiešanými z priemyslu, automobilov a jeho jedinečnej geografickej polohy medzi 2 veľkými horskými reťazcami.

V dnešnej dobe je znečistenie ovzdušia veľkým problémom na celom svete a v tomto článku sa budeme zaoberať tým, ako vyvinúť lacný domáci monitor kvality vzduchu založený na Raspberry Pi. Ak máte záujem dozvedieť sa viac o kvalite ovzdušia, navštívte projekt „Svetový index kvality ovzdušia“.

Zásoby

  • Raspberry Pi 4
  • 1SDS011 - Vysoko presný laserový senzor detekcie kvality vzduchu pm2.5
  • Plastová krabica

Krok 1: Časticová hmota (PM): Čo to je? Ako sa dostane do vzduchu?

Časticová hmota (PM): Čo je to? Ako sa dostane do vzduchu?
Časticová hmota (PM): Čo je to? Ako sa dostane do vzduchu?

Aby sme pochopili znečistenie alebo kontamináciu vzduchu, musíme študovať častice, ktoré s tým súvisia, čo je tiež známe ako častice. Pri pohľade na grafy v predchádzajúcej časti môžeme pozorovať, že uvádzali PM2,5 a PM10. Poskytnime o tom rýchly prehľad.

PM znamená tuhé častice (tiež nazývané znečistenie časticami): termín pre zmes tuhých častíc a kvapôčok kvapaliny nachádzajúcich sa vo vzduchu. Niektoré častice, ako napríklad prach, špina, sadze alebo dym, sú dostatočne veľké alebo tmavé, aby ich bolo možné vidieť voľným okom. Ostatné sú také malé, že ich možno zistiť iba pomocou elektrónového mikroskopu. Častice sa dodávajú v širokej škále veľkostí. Častice s priemerom menším alebo rovným 10 mikrometrom sú také malé, že sa môžu dostať do pľúc a potenciálne spôsobiť vážne zdravotné problémy. Desať mikrometrov je menšia ako šírka jedného ľudského vlasu.

Znečistenie časticami zahŕňa hrubé prachové častice (PM10): vdýchnuteľné častice s priemerom spravidla 10 mikrometrov a menším. Zdroje zahŕňajú drvenie alebo brúsenie a prach, ktorý rozvíria vozidlá na cestách. Jemné častice (PM2,5): jemné vdýchnuteľné častice s priemerom spravidla 2,5 mikrometra a menším. Jemné častice sa vyrábajú zo všetkých typov spaľovania, vrátane motorových vozidiel, elektrární, spaľovania dreva v domácnostiach, lesných požiarov, spaľovania v poľnohospodárstve a niektorých priemyselných procesov. Ďalšie informácie o tuhých časticiach nájdete na stránke EPA: Agentúra na ochranu životného prostredia USA

Krok 2: Prečo je dôležité starať sa o tieto častice?

Prečo je dôležité starať sa o tieto častice?
Prečo je dôležité starať sa o tieto častice?

Ako opísal GERARDO ALVARADO Z. vo svojej práci na čilskej univerzite, štúdie epizód vysokého znečistenia ovzdušia v údolí Meuse (Belgicko) v roku 1930, Donore (Pensylvánia) v roku 1948 a Londýne v roku 1952 sú prvými zdokumentovanými zdrojmi, ktoré súvisia s úmrtnosťou s kontamináciou časticami (Préndez, 1993). Pokroky vo vyšetrovaní účinkov znečistenia ovzdušia na zdravie ľudí zistili, že zdravotné riziká sú spôsobené vdýchnuteľnými časticami v závislosti od ich prieniku a ukladania v rôznych častiach dýchacieho systému a od biologickej reakcie na uložené materiály.

Najhrubšie častice, asi 5 μm, sú filtrované spoločným pôsobením mihalníc nosového priechodu a sliznice, ktorá pokrýva nosnú dutinu a priedušnicu. Častice s priemerom 0,5 až 5 μm sa môžu ukladať v prieduškách a dokonca aj v pľúcnych alveolách, ale po niekoľkých hodinách sú eliminované riasinkami a prieduškami. Častice menšie ako 0,5 μm môžu preniknúť hlboko, kým sa neuložia do pľúcnych alveol, pričom zostanú niekoľko týždňov až rokov, pretože neexistuje žiadny mukociliárny transportný mechanizmus, ktorý by uľahčoval elimináciu. Nasledujúci obrázok ukazuje prienik častíc do dýchacieho systému v závislosti od ich veľkosti.

Poznanie oboch typov častíc (PM2,5 a PM10) je veľmi dôležité a dobrou správou je, že obe sú čitateľné jednoduchým a nie drahým snímačom SDS011.

Krok 3: Snímač častíc - SDS011

Snímač častíc - SDS011
Snímač častíc - SDS011
Snímač častíc - SDS011
Snímač častíc - SDS011

Monitorovanie kvality ovzdušia je dobre známou a zavedenou vedou, ktorá začala už v 80 -tych rokoch. V tom čase bola technológia dosť obmedzená a riešenie používané na kvantifikáciu komplexu znečistenia ovzdušia bolo ťažkopádne a skutočne drahé.

Našťastie v dnešnej dobe, s najnovšími a modernými technológiami, sú riešenia používané na monitorovanie kvality ovzdušia nielen presnejšie, ale aj rýchlejšie pri meraní. Zariadenia sú stále menšie a ich cena je oveľa dostupnejšia než kedykoľvek predtým.

V tomto článku sa zameriame na snímač častíc, ktorý dokáže detekovať množstvo prachu vo vzduchu. Kým prvá generácia bola schopná detekovať množstvo opacity, najnovšie senzory ako SDS011 od INOVAFIT, spin-off z University of Jinan (v Shandong), môžu teraz detekovať PM2,5 a PM10.

Vďaka svojej veľkosti je SDS011 pravdepodobne jedným z najlepších senzorov z hľadiska presnosti a ceny (menej ako 40,00 USD).

  • Namerané hodnoty: PM2,5, PM10
  • Rozsah: 0–999,9 μg /m³
  • Napájacie napätie: 5V (4,7–5,3V)
  • Spotreba energie (práca): 70mA ± 10mA
  • Spotreba energie (laser a ventilátor v režime spánku): <4mA
  • Skladovacia teplota: -20 až +60 ° C
  • Pracovná teplota: -10 až +50 ° C
  • Vlhkosť (skladovanie): Max. 90%
  • Vlhkosť (práca): Max. 70% (kondenzácia vodnej pary sfalšuje hodnoty)
  • Presnosť: 70% pre 0,3 μm a 98% pre 0,5 μm
  • Rozmer: 71x70x23 mm
  • Certifikácia: CE, FCC, RoHS

SD011 používa PCB ako jednu stranu plášťa, čo umožňuje znížiť jeho náklady. Receptorová dióda je namontovaná na strane DPS (je to nevyhnutné, pretože by sa malo zabrániť akémukoľvek šumu medzi diódou a LNA). Vysielačový laser je namontovaný na plastovom boxe a pomocou flexibilného vodiča je pripojený k doske plošných spojov.

Stručne povedané, Nova Fitness SDS011 je profesionálny laserový snímač prachu. Ventilátor namontovaný na senzore automaticky nasáva vzduch. Senzor používa na meranie hodnoty prachových častíc suspendovaných vo vzduchu princíp laserového rozptylu svetla*. Senzor poskytuje vysokú presnosť a spoľahlivé odčítanie hodnôt PM2,5 a PM10. Akúkoľvek zmenu prostredia je možné pozorovať takmer okamžite ako krátku dobu odozvy pod 10 sekúnd. Senzor v štandardnom režime hlási čítanie s intervalom 1 sekundy.

* Princíp laserového rozptylu: Rozptyl svetla je možné vyvolať, keď častice prechádzajú detekčnou oblasťou. Rozptýlené svetlo sa transformuje na elektrické signály a tieto signály budú zosilnené a spracované. Počet a priemer častíc je možné získať analýzou, pretože priebeh signálu má určité vzťahy s priemerom častíc.

Krok 4: Ako však SDS011 dokáže zachytiť tieto častice?

Ako však SDS011 dokáže zachytiť tieto častice?
Ako však SDS011 dokáže zachytiť tieto častice?
Ako však SDS011 dokáže zachytiť tieto častice?
Ako však SDS011 dokáže zachytiť tieto častice?

Ako už bolo spomenuté, princípom používaným v SDS011 je rozptyl svetla alebo lepší, Dynamic Light Scattering (DLS), čo je fyzikálna technika, ktorá sa dá použiť na stanovenie profilu distribúcie veľkosti malých častíc v suspenzii alebo polymérov v roztoku. V rozsahu DLS sa časové fluktuácie zvyčajne analyzujú pomocou funkcie intenzity alebo autokorelácie fotónov (tiež známej ako fotónová korelačná spektroskopia alebo kvázi-elastický rozptyl svetla). Pri analýze v časovej oblasti sa autokorelačná funkcia (ACF) zvyčajne rozpadá od nulového času oneskorenia a rýchlejšia dynamika v dôsledku menších častíc vedie k rýchlejšej dekorelácii stopy rozptýlenej intenzity. Ukázalo sa, že intenzita ACF je Fourierova transformácia výkonového spektra, a preto je možné merania DLS rovnako dobre vykonávať v spektrálnej oblasti.

Nad hypotetickým dynamickým rozptylom svetla dvoch vzoriek: väčšie častice (ako PM10) na vrchu a menšie častice (ako PM2,5) na dne. A keď sa pozrieme dovnútra nášho senzora, vidíme, ako je implementovaný princíp rozptylu svetla.

Elektrický signál zachytený na dióde smeruje do zosilňovača s nízkym šumom a z neho sa prevádza na digitálny signál cez ADC a von cez UART.

Ak sa chcete dozvedieť viac o SDS011 o skutočných vedeckých skúsenostiach, pozrite sa na prácu Konstantinos a kol. Za rok 2018, Vývoj a testovanie lacného prenosného systému na monitorovanie koncentrácií PM2,5 v teréne.

Krok 5: Showtime

Zobraziť čas!
Zobraziť čas!
Zobraziť čas!
Zobraziť čas!

Urobme si prestávku nad touto teóriou a zamerajme sa na to, ako merať časticové látky pomocou Raspberry Pi a senzora SDS011

Pripojenie HW je v skutočnosti veľmi jednoduché. Senzor sa predáva s adaptérom USB na prepojenie výstupných údajov zo 7 -kolíkového UART s jedným zo štandardných USB konektorov RPi.

Výstup SDS011:

  • Pin 1 - nie je pripojený
  • Kolík 2 - PM2,5: 0–999μg/m³; PWM výstup
  • Kolík 3–5V
  • Kolík 4 - PM10: 0–999 μg/m³; PWM výstup
  • Kolík 5 - GND
  • Pin 6 - RX UART (TTL) 3,3V
  • Pin 7 - TX UART (TTL) 3,3V

Pre tento tutoriál používam prvýkrát úplne nový Raspberry-Pi 4. Ale samozrejme, že aj predchádzajúci model bude fungovať dobre.

Hneď ako pripojíte snímač k jednému z portov USB RPi, automaticky začnete počúvať zvuk jeho ventilátora. Hluk je trochu otravný, takže by ste ho mali odpojiť a počkať, kým nebudete mať všetko nastavené so SW.

Komunikácia medzi snímačom a RPi bude prebiehať prostredníctvom sériového protokolu. Podrobnosti o tomto protokole nájdete tu: Protokol ovládania senzora laserového prachu V1.3. Ale pre tento projekt je najlepšie použiť rozhranie python na zjednodušenie kódu, ktorý sa má vyvinúť. Môžete si vytvoriť vlastné rozhranie alebo použiť niektoré z nich, ktoré sú k dispozícii na internete, ako napríklad Frank Heuer alebo Ivan Kalchev. Použijeme posledný, ktorý je veľmi jednoduchý a funguje dobre (skript sds011.py si môžete stiahnuť z jeho GitHubu alebo z môjho).

Súbor sds011.py musí byť v tom istom adresári, kde vytvárate skript.

Vo fáze vývoja budem používať notebook Jupyter, ale môžete použiť akékoľvek IDE, ktoré sa vám páči (napríklad Thonny alebo Geany, ktoré sú súčasťou balíka Raspberry Pi Debian, sú veľmi dobré).

Začnite importovať sds011 a vytvorte inštanciu senzora. SDS011 poskytuje spôsob čítania zo senzora pomocou UART.

z importu sds011 *

senzor = SDS011 ("/dev/ttyUSB0")

Senzor môžete zapnúť alebo vypnúť príkazom spánok:

pmt_2_5, pmt_10 = sensor.query ()

Pred meraním počkajte najmenej 10 sekúnd na stabilizáciu a najmenej 2 sekundy spustite novú (pozri kód vyššie).

A to je všetko, čo potrebujete vedieť z hľadiska SW na používanie senzora. Poďme však hlbšie na kontrolu kvality ovzdušia! Ak ste na začiatku tohto článku preskúmali stránky, ktoré poskytujú informácie o tom, aký dobrý alebo zlý je vzduch, mali by ste si uvedomiť, že s týmito hodnotami sú spojené farby. Každá farba je index. Najznámejším z nich je AQI (Index kvality ovzdušia), ktorý sa používa v USA a niekoľkých ďalších krajinách.

Krok 6: Index kvality ovzdušia - AQI

Index kvality ovzdušia - AQI
Index kvality ovzdušia - AQI
Index kvality ovzdušia - AQI
Index kvality ovzdušia - AQI
Index kvality ovzdušia - AQI
Index kvality ovzdušia - AQI

AQI je index pre hlásenie dennej kvality ovzdušia. Hovorí vám, aký čistý alebo znečistený je váš vzduch a aké súvisiace zdravotné účinky by vás mohli znepokojovať. AQI sa zameriava na účinky na zdravie, ktoré môžete zažiť v priebehu niekoľkých hodín alebo dní po vdýchnutí znečisteného vzduchu.

EPA (Agentúra na ochranu životného prostredia Spojených štátov) napríklad vypočítava AQI nielen pre znečistenie časticami (PM2,5 a PM10), ale aj pre ostatné hlavné znečisťujúce látky regulované zákonom o čistom ovzduší: prízemný ozón, oxid uhoľnatý, oxid siričitý a oxid dusičitý. Pre každú z týchto znečisťujúcich látok stanovila agentúra EPA národné normy kvality ovzdušia na ochranu verejného zdravia. Pozri vyššie uvedený obrázok s hodnotami AQI, farbami a správou o zdraví.

Ako už bolo uvedené vyššie, tieto hodnoty a farby AQI sa týkajú každého zo znečisťujúcich látok, ale ako k nim priradiť hodnoty generované snímačmi? Ako je uvedené vyššie, všetky ich spája dodatočná tabuľka.

Ale samozrejme, nemá zmysel používať takú tabuľku. Nakoniec je to jednoduchý matematický algoritmus, ktorý robí výpočet. Za týmto účelom importujeme knižnicu na konverziu medzi hodnotou AQI a koncentráciou znečisťujúcich látok (µg/m³): python-aqi.

Nainštalujte knižnicu pomocou PIP a urobte test (pozri kód vyššie)

pip install python-aqi

A čo Čile?

V Čile sa používa podobný index, ICAP: Index kvality ovzdušia pre priedušné častice. Najvyšší dekrét 59 zo 16. marca 1998 generálneho tajomníka ministerstva predsedníctva republiky vo svojom článku 1 písm. G) ustanovuje, že úrovne, ktoré definujú ICA pre dýchateľný časticový materiál, ICAP.

Hodnoty sa budú lineárne líšiť medzi sekciami, hodnota 500 by zodpovedala limitnej hodnote, pri prekročení ktorej by existovalo riziko pre populáciu, ak by bola vystavená týmto koncentráciám. Podľa hodnôt ICAP boli stanovené kategórie, ktoré kvalifikujú úrovne koncentrácie MP10, ktorým boli ľudia vystavení.

Krok 7: Lokálne zaznamenávanie údajov

Lokálne zaznamenávanie údajov
Lokálne zaznamenávanie údajov
Lokálne zaznamenávanie údajov
Lokálne zaznamenávanie údajov
Lokálne zaznamenávanie údajov
Lokálne zaznamenávanie údajov

V tomto mieste máme všetky nástroje na zachytenie údajov zo senzora a tiež ich konverziu na „čitateľnejšiu hodnotu“, že ide o index AQI.

Vytvorme funkciu na zachytenie týchto hodnôt. Zachytíme postupne 3 hodnoty, pričom medzi nimi vezmeme priemer:

def get_data (n = 3):

sensor.sleep (sleep = False) pmt_2_5 = 0 pmt_10 = 0 time.sleep (10) for i in range (n): x = sensor.query () pmt_2_5 = pmt_2_5 + x [0] pmt_10 = pmt_10 + x [1] time.sleep (2) pmt_2_5 = round (pmt_2_5/n, 1) pmt_10 = round (pmt_10/n, 1) sensor.sleep (sleep = True) time.sleep (2) return pmt_2_5, pmt_10 Hore vidíte výsledok testu. Vykonajme tiež funkciu na prevod číselných hodnôt PM v indexe AQI

def conv_aqi (pmt_2_5, pmt_10):

aqi_2_5 = aqi.to_iaqi (aqi. POLLUTANT_PM25, str (pmt_2_5)) aqi_10 = aqi.to_iaqi (aqi. POLLUTANT_PM10, str (pmt_10)) návrat aqi_2_5, aqi_10 nad výsledkom testu s oboma funkciami. Ale čo s nimi robiť? Najjednoduchšou odpoveďou je vytvoriť funkciu na ukladanie zachytených údajov a ich ukladanie do miestneho súboru

def save_log ():

s otvoreným („VAŠA CESTA TU/air_quality.csv“, „a“) ako log: dt = datetime.now () log.write („{}, {}, {}, {}, {} n“. formát (dt, pmt_2_5, aqi_2_5, pmt_10, aqi_10)) log.close () Pomocou jednej slučky môžete protokolovať údaje na pravidelných základniach vo vašom miestnom súbore, napríklad každú minútu

while (True):

pmt_2_5, pmt_10 = get_data () aqi_2_5, aqi_10 = conv_aqi (pmt_2_5, pmt_10) try: save_log () okrem: print ("[INFO] Chyba pri zapisovaní údajov") time.sleep (60) Ako vidíme vyššie, každých 60 sekúnd sa k tomuto súboru „pripojí“časová pečiatka plus údaje.

Krok 8: Odoslanie údajov do cloudovej služby

Odosielanie údajov do cloudovej služby
Odosielanie údajov do cloudovej služby

V tomto okamihu sme sa naučili zachytávať údaje zo senzora a ukladať ich do miestneho súboru CSV. Teraz je načase zistiť, ako tieto údaje odoslať na platformu IoT. V tomto návode použijeme ThingSpeak.com.

„ThingSpeak je aplikácia Internet of Things (IoT) s otvoreným zdrojovým kódom na ukladanie a získavanie údajov z vecí pomocou rozhraní REST a MQTT API. ThingSpeak umožňuje vytváranie aplikácií na zaznamenávanie senzorov, aplikácií na sledovanie polohy a sociálnych sietí s aktualizáciami stavu. “

Najprv musíte mať účet na ThinkSpeak.com. Ďalej podľa pokynov vytvorte kanál, pričom si všimnite jeho identifikátor kanála a kľúč rozhrania API na zápis.

Pri vytváraní kanála musíte tiež definovať, aké informácie sa nahrajú do každého z 8 polí, ako je uvedené vyššie (v našom prípade sa použijú iba 4 z nich).

Krok 9: Protokol MQTT a pripojenie ThingSpeak

Protokol MQTT a pripojenie ThingSpeak
Protokol MQTT a pripojenie ThingSpeak

MQTT je architektúra publikovania/prihlásenia na odber, ktorá bola vyvinutá predovšetkým na pripojenie zariadení s obmedzenou šírkou pásma a obmedzeným výkonom prostredníctvom bezdrôtových sietí. Je to jednoduchý a ľahký protokol, ktorý beží cez sokety TCP/IP alebo WebSockets. MQTT cez WebSocket môže byť zabezpečený pomocou SSL. Architektúra publikovania/predplatného umožňuje odosielanie správ na klientske zariadenia bez toho, aby zariadenie potrebovalo nepretržite dotazovať server.

Maklér MQTT je ústredným bodom komunikácie a má na starosti odosielanie všetkých správ medzi odosielateľmi a oprávnenými príjemcami. Klient je akékoľvek zariadenie, ktoré sa pripája k maklérovi a môže publikovať témy alebo sa prihlásiť na odber tém na prístup k informáciám. Téma obsahuje informácie o smerovaní pre makléra. Každý klient, ktorý chce odosielať správy, ich publikuje na určitú tému a každý klient, ktorý chce dostávať správy, sa prihlási na určitú tému. Maklér doručí všetky správy so zodpovedajúcou témou príslušným klientom.

ThingSpeak ™ má sprostredkovateľa MQTT na adrese URL mqtt.thingspeak.com a portu 1883. Maklér ThingSpeak podporuje publikovanie MQTT aj prihlásenie na odber MQTT.

V našom prípade použijeme publikovanie MQTT.

Krok 10: Publikovanie MQTT

Publikovanie MQTT
Publikovanie MQTT

Na začiatok nainštalujme klientsku knižnicu Eclipse Paho MQTT Python, ktorá implementuje verzie 3.1 a 3.1.1 protokolu MQTT

sudo pip install paho-mqtt

Ďalej importujeme knižnicu paho:

importujte paho.mqtt.publish ako publikovať

a spustite kanál Thingspeak a protokol MQTT. Tento spôsob pripojenia je najjednoduchší a vyžaduje najmenej systémových zdrojov:

channelID = "VAŠE ID KANÁLU"

apiKey = "VÁŠ ZÁPISNÝ KĽÚČ" topic = "channels/" + channelID + "/publish/" + apiKey mqttHost = "mqtt.thingspeak.com" Teraz musíme definovať naše „užitočné zaťaženie“

tPayload = "field1 =" + str (pmt_2_5) + "& field2 =" + str (aqi_2_5) + "& field3 =" + str (pmt_10) + "& field4 =" + str (aqi_10)

A je to! sme pripravení začať odosielať údaje do cloudu! Prepíšeme predchádzajúcu funkciu slučky tak, aby zahŕňala aj jej časť ThingSpeak.

# Odosielanie všetkých údajov do ThingSpeak každú 1 minútu

while (True): pmt_2_5, pmt_10 = get_data () aqi_2_5, aqi_10 = conv_aqi (pmt_2_5, pmt_10) tPayload = "field1 =" + str (pmt_2_5) + "& field2 =" + str (aqi_2_5) + "& field3 =" + str (pmt_10) + "& field4 =" + str (aqi_10) try: publish.single (topic, payload = tPayload, hostname = mqttHost, port = tPort, tls = tTLS, transport = tTransport) save_log () okrem: print ("[INFO] Chyba pri odosielaní údajov ") time.sleep (60) Ak je všetko v poriadku, musíte vidieť, ako sa údaje zobrazujú aj vo vašom kanáli na thingspeak.com, ako je uvedené vyššie.

Krok 11: Konečný scenár

Je dôležité poznamenať, že Jupyter Notebook je veľmi dobrý nástroj na vývoj a tvorbu správ, nie však na vytváranie kódu na zavedenie do výroby. Teraz by ste mali vziať príslušnú časť kódu a vytvoriť skript.py a spustiť ho na svojom termináli.

Napríklad „ts_air_quality_logger.py“, ktoré by ste mali spustiť pomocou príkazu:

python 3 ts_air_quality_logger.py

Tento skript, rovnako ako notebook Jupyter a sds011.py, nájdete v mojom úložisku na adrese RPi_Air_Quality_Sensor.

Tento skript je možné vykonať iba na testovanie. Najlepšie je nepoužívať oneskorenia vo vnútri konečnej slučky (ktoré kód uviedli do „pozastavenia“), namiesto toho použiť časovače. Alebo pre skutočnú aplikáciu nie je najlepšie použiť slučku, pretože Linux je naprogramovaný na pravidelné spúšťanie skriptu pomocou programu crontab.

Krok 12: Vytiahnutie monitora von

Vytiahnutie monitora von
Vytiahnutie monitora von
Vytiahnutie monitora von
Vytiahnutie monitora von
Vytiahnutie monitora von
Vytiahnutie monitora von
Vytiahnutie monitora von
Vytiahnutie monitora von

Akonáhle fungoval môj monitor kvality vzduchu Raspberry Pi, zostavil som RPi do plastového boxu, senzor som nechal vonku a umiestnil som ho mimo svojho domu.

Urobili sa dve skúsenosti.

Krok 13: Spaľovanie benzínového motora

Spaľovanie benzínového motora
Spaľovanie benzínového motora
Spaľovanie benzínového motora
Spaľovanie benzínového motora

Senzor bol umiestnený asi 1 m od plynového stožiara Lambretty a jeho motor sa zapol. Motor bežal niekoľko minút a vypol sa. Z vyššie uvedeného súboru denníka výsledok, ktorý som dostal. Je zaujímavé potvrdiť, že PM2,5 boli najnebezpečnejšie častice, ktoré vyplynuli z motora.

Krok 14: Spaľovanie dreva

Spaľovanie dreva
Spaľovanie dreva
Spaľovanie dreva
Spaľovanie dreva

Keď sa pozrieme do súboru denníka, uvedomíme si, že údaje senzora boli okamžité „mimo rozsahu“a neboli dobre zachytené knižnicou konverzií AQI, takže som zmenil predchádzajúci kód, aby to zvládol:

def conv_aqi (pmt_2_5, pmt_10):

skúste: aqi_2_5 = aqi.to_iaqi (aqi. POLLUTANT_PM25, str (pmt_2_5)) aqi_10 = aqi.to_iaqi (aqi. POLLUTANT_PM10, str (pmt_10)) návrat aqi_2_5, aqi_10 okrem: návrat 600, Táto situácia sa môže stať v teréne, čo je v poriadku. Nezabudnite, že v skutočnosti by ste na dosiahnutie AQI mali používať kĺzavý priemer (najmenej za hodinu, ale zvyčajne denne).

Krok 15: Záver

Záver
Záver

Ako vždy dúfam, že tento projekt pomôže iným nájsť si cestu do vzrušujúceho sveta elektroniky a dátovej vedy!

Podrobnosti a konečný kód nájdete v mojom depozitári GitHub: RPi_Air_Quality_Sensor.

Saludos z juhu sveta!

Uvidíme sa pri mojom ďalšom pokyne!

Ďakujem, Marcelo

Odporúča: