Sommario:

Un monitor della qualità dell'aria IoT a basso costo basato su RaspberryPi 4: 15 passaggi (con immagini)
Un monitor della qualità dell'aria IoT a basso costo basato su RaspberryPi 4: 15 passaggi (con immagini)

Video: Un monitor della qualità dell'aria IoT a basso costo basato su RaspberryPi 4: 15 passaggi (con immagini)

Video: Un monitor della qualità dell'aria IoT a basso costo basato su RaspberryPi 4: 15 passaggi (con immagini)
Video: Novità per la Smarthome a IFA 2023 di Berlino: i prodotti più interessanti. 2024, Dicembre
Anonim
Un monitor per la qualità dell'aria IoT a basso costo basato su RaspberryPi 4
Un monitor per la qualità dell'aria IoT a basso costo basato su RaspberryPi 4
Un monitor per la qualità dell'aria IoT a basso costo basato su RaspberryPi 4
Un monitor per la qualità dell'aria IoT a basso costo basato su RaspberryPi 4
Un monitor per la qualità dell'aria IoT a basso costo basato su RaspberryPi 4
Un monitor per la qualità dell'aria IoT a basso costo basato su RaspberryPi 4
Un monitor per la qualità dell'aria IoT a basso costo basato su RaspberryPi 4
Un monitor per la qualità dell'aria IoT a basso costo basato su RaspberryPi 4

Santiago del Cile durante un'emergenza ambientale invernale ha il privilegio di vivere in uno dei paesi più belli del mondo, ma purtroppo non è tutto rose e fiori. Il Cile durante la stagione invernale soffre molto della contaminazione dell'aria, principalmente a causa di materiali particolati come polvere e smog.

A causa del freddo, nel sud, la contaminazione dell'aria è dovuta principalmente ai calefattori a base di legno ea Santiago (la principale capitale nel centro del paese) mista da industrie, automobili e dalla sua posizione geografica unica tra 2 enormi catene montuose.

Al giorno d'oggi, l'inquinamento atmosferico è un grosso problema in tutto il mondo e in questo articolo esploreremo come sviluppare un monitor di qualità dell'aria fatto in casa a basso costo, basato su un Raspberry Pi. Se sei interessato a saperne di più sulla qualità dell'aria, visita il progetto "World Air Quality Index".

Forniture

  • Lampone Pi 4
  • 1SDS011 - Sensore di rilevamento della qualità dell'aria laser pm2.5 ad alta precisione
  • Scatola di plastica

Fase 1: Particolato (PM): che cos'è? Come entra nell'aria?

Particolato (PM): che cos'è? Come entra nell'aria?
Particolato (PM): che cos'è? Come entra nell'aria?

Quindi, per comprendere l'inquinamento o la contaminazione dell'aria, dobbiamo studiare le particelle che sono correlate a ciò, che è anche noto come particolato. Guardando i grafici della sezione precedente possiamo osservare che hanno citato PM2.5 e PM10. Diamo una rapida panoramica di ciò.

PM sta per particolato (chiamato anche inquinamento da particelle): il termine per una miscela di particelle solide e goccioline liquide presenti nell'aria. Alcune particelle, come polvere, sporco, fuliggine o fumo, sono grandi o abbastanza scure da essere viste ad occhio nudo. Altri sono così piccoli che possono essere rilevati solo utilizzando un microscopio elettronico. Le particelle sono disponibili in un'ampia gamma di dimensioni. Le particelle di diametro inferiore o uguale a 10 micrometri sono così piccole che possono entrare nei polmoni, causando potenzialmente gravi problemi di salute. Dieci micrometri sono meno della larghezza di un singolo capello umano.

L'inquinamento da particelle comprende le particelle di polvere grossolana (PM10): particelle inalabili, con diametri generalmente di 10 micrometri e inferiori. Le fonti sono le operazioni di frantumazione o molatura e la polvere sollevata dai veicoli sulle strade. Particelle fini (PM2,5): particelle fini inalabili, con diametri generalmente pari a 2,5 micrometri e inferiori. Le particelle fini vengono prodotte da tutti i tipi di combustione, inclusi veicoli a motore, centrali elettriche, combustione di legna residenziale, incendi boschivi, incendi agricoli e alcuni processi industriali. Puoi trovare ulteriori informazioni sul particolato sul sito EPA: The United States Environmental Protection Agency

Passaggio 2: perché è importante prendersi cura di queste particelle?

Perché è importante preoccuparsi di quelle particolato?
Perché è importante preoccuparsi di quelle particolato?

Come descritto da GERARDO ALVARADO Z. nel suo lavoro all'Università del Cile, gli studi su episodi di alto inquinamento atmosferico nella Valle della Mosa (Belgio) nel 1930, a Donora (Pennsylvania) nel 1948 e a Londra nel 1952 sono state le prime fonti documentate che riguardavano la mortalità con contaminazione da particelle (Préndez, 1993). I progressi nelle indagini sugli effetti dell'inquinamento atmosferico sulla salute delle persone hanno determinato che i rischi per la salute sono causati dalle particelle inalabili, a seconda della loro penetrazione e deposizione in diverse sezioni del sistema respiratorio, e dalla risposta biologica ai materiali depositati.

Le particelle più spesse, circa 5 µm, vengono filtrate dall'azione congiunta delle ciglia del passaggio nasale e della mucosa che riveste la cavità nasale e la trachea. Nei bronchi e anche negli alveoli polmonari si possono depositare particelle di diametro compreso tra 0,5 e 5 µm, che però vengono eliminate dalle ciglia di bronchi e bronchioli dopo poche ore. Le particelle inferiori a 0,5 μm possono penetrare in profondità fino a depositarsi negli alveoli polmonari, rimanendo da settimane ad anni, poiché non esiste un meccanismo di trasporto mucociliare che ne faciliti l'eliminazione. La figura seguente mostra la penetrazione delle particelle nel sistema respiratorio a seconda della loro dimensione.

Quindi, per individuare entrambi i tipi di particelle (PM2.5 e PM10) è molto importante e la buona notizia è che entrambi sono leggibili da un sensore semplice e non costoso, l'SDS011.

Passaggio 3: il sensore di particelle - SDS011

Il sensore di particelle - SDS011
Il sensore di particelle - SDS011
Il sensore di particelle - SDS011
Il sensore di particelle - SDS011

Il monitoraggio della qualità dell'aria è una scienza ben nota e consolidata iniziata negli anni '80. A quel tempo, la tecnologia era piuttosto limitata e la soluzione utilizzata per quantificare l'inquinamento atmosferico era complessa, ingombrante e davvero costosa.

Fortunatamente, oggigiorno, con le più recenti e moderne tecnologie, le soluzioni utilizzate per il monitoraggio della Qualità dell'Aria stanno diventando non solo più precise ma anche più veloci nella misurazione. I dispositivi stanno diventando più piccoli e costano molto più che mai.

In questo articolo ci concentreremo su un sensore di particelle, in grado di rilevare la quantità di polvere nell'aria. Mentre la prima generazione era solo in grado di rilevare la quantità di opacità, i sensori più recenti come SDS011 di INOVAFIT, uno spin-off dell'Università di Jinan (nello Shandong), ora possono rilevare PM2.5 e PM10.

Con le sue dimensioni, l'SDS011 è probabilmente uno dei migliori sensori in termini di precisione e prezzo (meno di 40,00 USD).

  • Valori misurati: PM2.5, PM10
  • Intervallo: 0–999,9 μg/m³
  • Tensione di alimentazione: 5 V (4,7–5,3 V)
  • Consumo energetico (lavoro): 70mA±10mA
  • Consumo energetico (laser e ventola in modalità sleep): < 4 mA
  • Temperatura di stoccaggio: da -20 a +60C
  • Temperatura di lavoro: da -10 a +50C
  • Umidità (stoccaggio): max. 90%
  • Umidità (lavoro): max. 70% (condensa di vapore acqueo falsifica le letture)
  • Precisione: 70% per 0,3 μm e 98% per 0,5 μm
  • Dimensioni: 71x70x23 mm
  • Certificazione: CE, FCC, RoHS

L'SD011 utilizza il PCB come un lato dell'involucro, consentendo di ridurne il costo. Il diodo recettore è montato sul lato PCB (questo è obbligatorio poiché qualsiasi rumore tra il diodo e l'LNA dovrebbe essere evitato). L'emettitore laser è montato sulla scatola di plastica e collegato al PCB tramite un filo flessibile.

In breve, Nova Fitness SDS011 è un sensore di polvere laser professionale. La ventola montata sul sensore aspira automaticamente l'aria. Il sensore utilizza un principio di diffusione della luce laser* per misurare il valore delle particelle di polvere sospese nell'aria. Il sensore fornisce letture affidabili e di alta precisione dei valori PM2.5 e PM10. È possibile osservare qualsiasi cambiamento nell'ambiente con un tempo di risposta quasi istantaneamente breve inferiore a 10 secondi. Il sensore in modalità standard segnala la lettura con un intervallo di 1 secondo.

* Principio di diffusione laser: la diffusione della luce può essere indotta quando le particelle attraversano l'area di rilevamento. La luce diffusa viene trasformata in segnali elettrici e questi segnali verranno amplificati ed elaborati. Il numero e il diametro delle particelle possono essere ottenuti mediante analisi perché la forma d'onda del segnale ha determinate relazioni con il diametro delle particelle.

Passaggio 4: ma come l'SDS011 può catturare quelle particelle?

Ma come l'SDS011 può catturare quelle particelle?
Ma come l'SDS011 può catturare quelle particelle?
Ma come l'SDS011 può catturare quelle particelle?
Ma come l'SDS011 può catturare quelle particelle?

Come commentato in precedenza, il principio utilizzato da SDS011 è la diffusione della luce o meglio, Dynamic Light Scattering (DLS), che è una tecnica in fisica che può essere utilizzata per determinare il profilo di distribuzione delle dimensioni di piccole particelle in sospensione o polimeri in soluzione. Nell'ambito della DLS, le fluttuazioni temporali vengono solitamente analizzate mediante l'intensità o la funzione di autocorrelazione dei fotoni (nota anche come spettroscopia di correlazione dei fotoni o diffusione quasi elastica della luce). Nell'analisi nel dominio del tempo, la funzione di autocorrelazione (ACF) di solito decade a partire dal tempo di ritardo zero e dinamiche più veloci dovute a particelle più piccole portano a una più rapida decorrelazione della traccia di intensità diffusa. È stato dimostrato che l'intensità ACF è la trasformata di Fourier dello spettro di potenza, e quindi le misure DLS possono essere ugualmente ben eseguite nel dominio spettrale.

Sopra un'ipotetica diffusione dinamica della luce di due campioni: particelle più grandi (come PM10) in alto e particelle più piccole (come PM2,5) in basso. E guardando all'interno del nostro sensore, possiamo vedere come viene implementato il principio della diffusione della luce.

Il segnale elettrico catturato sul diodo va all'amplificatore a basso rumore e da quello per essere convertito in un segnale digitale tramite un ADC e all'esterno tramite un UART.

Per saperne di più su SDS011 su una vera esperienza scientifica, dai un'occhiata al lavoro del 2018 di Konstantinos et al, Sviluppo e test sul campo di sistemi portatili a basso costo per il monitoraggio delle concentrazioni di PM2.5.

Passaggio 5: spettacolo

Orario dello spettacolo!
Orario dello spettacolo!
Orario dello spettacolo!
Orario dello spettacolo!

Facciamo una pausa su tutta questa teoria e concentriamoci su come misurare il particolato utilizzando un Raspberry Pi e il sensore SDS011

Il collegamento HW è infatti molto semplice. Il sensore viene venduto con un adattatore USB per interfacciare i dati in uscita dal suo UART a 7 pin con uno dei connettori USB standard di RPi.

Piedinatura SDS011:

  • Pin 1 - non connesso
  • Pin 2 - PM2,5: 0–999μg/m³; Uscita PWM
  • Pin 3–5V
  • Pin 4 - PM10: 0–999 μg/m³; Uscita PWM
  • Pin 5 - GND
  • Pin 6 - RX UART (TTL) 3.3V
  • Pin 7 - TX UART (TTL) 3.3V

Per questo tutorial, sto usando per la prima volta un nuovissimo Raspberry-Pi 4. Ma ovviamente, anche qualsiasi modello precedente funzionerà bene.

Non appena collegherai il sensore su una delle porte USB RPi, inizierai automaticamente ad ascoltare il suono della sua ventola. Il rumore è un po' fastidioso, quindi forse dovresti scollegarlo e aspettare di aver impostato tutto con SW.

La comunicazione tra il sensore e RPi avverrà tramite un protocollo seriale. I dettagli su questo protocollo possono essere trovati qui: Protocollo di controllo del sensore di polvere laser V1.3. Ma per questo progetto, la cosa migliore è usare un'interfaccia Python per semplificare il codice da sviluppare. Puoi creare la tua interfaccia o usarne alcune disponibili su Internet, come quelle di Frank Heuer o di Ivan Kalchev. Useremo l'ultimo, che è molto semplice e funziona bene (puoi scaricare lo script sds011.py dal suo GitHub o dal mio).

Il file sds011.py deve trovarsi nella stessa directory in cui crei lo script.

Durante la fase di sviluppo, userò un Jupyter Notebook, ma puoi usare qualsiasi IDE che ti piace (Thonny o Geany, ad esempio, che fanno parte del pacchetto Raspberry Pi Debian sono entrambi molto buoni).

Inizia a importare sds011 e a creare la tua istanza del sensore. SDS011 fornisce un metodo per leggere dal sensore utilizzando un UART.

da importazione sds011 *

sensore = SDS011("/dev/ttyUSB0")

Puoi accendere o spegnere il sensore con il comando sleep:

pmt_2_5, pmt_10 = sensore.query()

Attendere almeno 10 secondi per la stabilizzazione prima delle misurazioni e almeno 2 secondi per avviarne una nuova (vedi codice sopra).

E questo è tutto ciò che devi sapere in termini di SW per utilizzare il sensore. Ma andiamo più a fondo sul controllo della qualità dell'aria! All'inizio di questo articolo, se hai esplorato i siti che danno informazioni su quanto è buona o cattiva l'aria, dovresti renderti conto che i colori sono associati a quei valori. Ogni colore è un indice. Il più noto è l'AQI (Air Quality Index), utilizzato negli Stati Uniti e in molti altri paesi.

Passaggio 6: indice di qualità dell'aria - AQI

Indice di qualità dell'aria - AQI
Indice di qualità dell'aria - AQI
Indice di qualità dell'aria - AQI
Indice di qualità dell'aria - AQI
Indice di qualità dell'aria - AQI
Indice di qualità dell'aria - AQI

L'AQI è un indice per la rendicontazione quotidiana della qualità dell'aria. Ti dice quanto è pulita o inquinata la tua aria e quali effetti sulla salute associati potrebbero essere una preoccupazione per te. L'AQI si concentra sugli effetti sulla salute che potresti riscontrare entro poche ore o giorni dopo aver respirato aria inquinata.

L'EPA (l'Agenzia per la protezione dell'ambiente degli Stati Uniti), ad esempio, calcola l'AQI non solo per l'inquinamento da particelle (PM2,5 e PM10) ma anche per gli altri principali inquinanti atmosferici regolamentati dal Clean Air Act: ozono troposferico, monossido di carbonio, anidride solforosa e biossido di azoto. Per ciascuno di questi inquinanti, l'EPA ha stabilito standard nazionali di qualità dell'aria per proteggere la salute pubblica. Vedi l'immagine sopra con i valori AQI, i colori e il messaggio di salute associati.

Come commentato prima quei valori e colori dell'AQI sono relativi a ciascuno degli agenti inquinanti, ma come associare ad essi i valori generati dai sensori? Una tabella aggiuntiva li collega tutti come mostrato sopra.

Ma ovviamente non ha senso utilizzare un tavolo del genere. Alla fine, è un semplice algoritmo matematico che fa il calcolo. Per questo, importeremo la libreria per convertire tra valore AQI e concentrazione di inquinanti (µg/m³): python-aqi.

Installa la libreria usando PIP e fai un test (vedi codice sopra)

pip install python-aqi

E il Cile?

In Cile viene utilizzato un indice simile, l'ICAP: Air Quality Index for Breathable Particles. Un Decreto Supremo 59 del 16 marzo 1998, del Segretario Generale del Ministero della Presidenza della Repubblica, stabilisce all'articolo 1, lettera g) che i livelli che definiscono l'ICA per il Materiale Particolato Traspirante, ICAP.

I valori varieranno linearmente tra le sezioni, il valore 500 corrisponderebbe al valore limite oltre il quale vi sarebbe un rischio per la popolazione esposta a queste concentrazioni. Secondo i valori ICAP, sono state stabilite delle categorie che qualificano i livelli di concentrazione di MP10 a cui le persone sono state esposte.

Passaggio 7: registrazione dei dati in locale

Registrazione dei dati in locale
Registrazione dei dati in locale
Registrazione dei dati in locale
Registrazione dei dati in locale
Registrazione dei dati in locale
Registrazione dei dati in locale

A questo punto abbiamo tutti gli strumenti per acquisire i dati dal sensore e anche convertirli per un valore più “leggibile”, ovvero l'indice AQI.

Creiamo una funzione per catturare quei valori. Cattureremo 3 valori in sequenza prendendo la media tra loro:

def get_data(n=3):

sensor.sleep(sleep=False) pmt_2_5 = 0 pmt_10 = 0 time.sleep(10) for i nell'intervallo (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 Sopra puoi vedere il risultato del test. Facciamo anche una funzione per convertire i valori numerici di PM in indice 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)) return aqi_2_5, aqi_10 sopra il risultato di un test con entrambe le funzioni. Ma cosa fare con loro? La risposta più semplice è creare una funzione per salvare i dati acquisiti, salvandoli su un file locale

def save_log():

with open("IL TUO PERCORSO QUI/air_quality.csv", "a") as log: dt = datetime.now() log.write("{}, {}, {}, {}, {}\n". format(dt, pmt_2_5, aqi_2_5, pmt_10, aqi_10)) log.close() Con un singolo ciclo, puoi registrare i dati su basi regolari nel tuo file locale, ad esempio, ogni minuto

mentre (vero):

pmt_2_5, pmt_10 = get_data() aqi_2_5, aqi_10 = conv_aqi(pmt_2_5, pmt_10) try: save_log() tranne: print ("[INFO] Errore nella registrazione dei dati") time.sleep(60) Ogni 60 secondi, il timestamp più i dati verranno "aggiunti" a questo file, come possiamo vedere sopra.

Passaggio 8: invio di dati a un servizio cloud

Invio di dati a un servizio cloud
Invio di dati a un servizio cloud

A questo punto abbiamo imparato a catturare i dati dal sensore, salvandoli su un file CSV locale. Ora è il momento di vedere come inviare quei dati a una piattaforma IoT. In questo tutorial, useremo ThingSpeak.com.

“ThingSpeak è un'applicazione Internet of Things (IoT) open source per archiviare e recuperare dati dalle cose, utilizzando le API REST e MQTT. ThingSpeak consente la creazione di applicazioni di registrazione dei sensori, applicazioni di localizzazione e un social network di oggetti con aggiornamenti di stato.

Innanzitutto, devi avere un account su ThinkSpeak.com. Quindi, segui le istruzioni per creare un canale, prendendo nota del suo ID canale e della chiave API di scrittura.

Quando crei il canale, devi anche definire quali informazioni verranno caricate in ciascuno degli 8 campi, come mostrato sopra (nel nostro caso ne verranno utilizzati solo 4).

Passaggio 9: protocollo MQTT e connessione ThingSpeak

Protocollo MQTT e connessione ThingSpeak
Protocollo MQTT e connessione ThingSpeak

MQTT è un'architettura di pubblicazione/sottoscrizione sviluppata principalmente per connettere dispositivi con limitazioni di larghezza di banda e alimentazione su reti wireless. È un protocollo semplice e leggero che funziona su socket TCP/IP o WebSocket. MQTT su WebSocket può essere protetto con SSL. L'architettura di pubblicazione/sottoscrizione consente di inviare messaggi ai dispositivi client senza che il dispositivo debba eseguire continuamente il polling del server.

Il broker MQTT è il punto centrale di comunicazione ed è incaricato di inviare tutti i messaggi tra i mittenti e i legittimi destinatari. Un client è qualsiasi dispositivo che si connette al broker e può pubblicare o sottoscrivere argomenti per accedere alle informazioni. Un argomento contiene informazioni di instradamento per il broker. Ogni client che desidera inviare messaggi li pubblica su un determinato argomento e ogni client che desidera ricevere messaggi si iscrive a un determinato argomento. Il broker consegna tutti i messaggi con l'argomento corrispondente ai client appropriati.

ThingSpeak™ ha un broker MQTT all'URL mqtt.thingspeak.com e alla porta 1883. Il broker ThingSpeak supporta sia la pubblicazione MQTT che la sottoscrizione MQTT.

Nel nostro caso, utilizzeremo MQTT Publish.

Passaggio 10: pubblicazione MQTT

Pubblicazione MQTT
Pubblicazione MQTT

Per cominciare, installiamo la libreria client Python Eclipse Paho MQTT, che implementa le versioni 3.1 e 3.1.1 del protocollo MQTT

sudo pip install paho-mqtt

Quindi, importiamo la libreria paho:

import paho.mqtt.publish as publish

e avviare il canale Thingspeak e il protocollo MQTT. Questo metodo di connessione è il più semplice e richiede il minor numero di risorse di sistema:

channelID = "IL TUO ID CANALE"

apiKey = "LA TUA CHIAVE DI SCRITTURA" topic = "channels/" + channelID + "/publish/" + apiKey mqttHost = "mqtt.thingspeak.com" Ora dobbiamo definire il nostro "payload"

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

E questo è tutto! siamo pronti per iniziare a inviare dati al cloud! Riscriviamo la funzione loop precedente per includerne anche la parte ThingSpeak.

# Invio di tutti i dati a ThingSpeak ogni 1 minuto

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) + str(aqi_2_5)+ "&field (pmt_10)+ "&field4=" + str(aqi_10) try: publish.single(topic, payload=tPayload, hostname=mqttHost, port=tPort, tls=tTLS, transport=tTransport) save_log() tranne: print ("[INFO] Mancato invio dei dati") time.sleep(60) Se tutto è ok, devi vedere i dati apparire anche sul tuo canale su thingspeak.com come mostrato sopra.

Passaggio 11: la sceneggiatura finale

È importante sottolineare che Jupyter Notebook è un ottimo strumento per lo sviluppo e la creazione di report, ma non per creare un codice da mettere in produzione. Quello che dovresti fare ora è prendere la parte pertinente del codice e creare uno script.py ed eseguirlo sul tuo terminale.

Ad esempio, "ts_air_quality_logger.py", che dovresti eseguire con il comando:

python 3 ts_air_quality_logger.py

Questo script, il Jupyter Notebook e sds011.py possono essere trovati nel mio repository su RPi_Air_Quality_Sensor.

Nota che questo script è fattibile solo per il test. La cosa migliore è non usare ritardi all'interno del ciclo finale (che mettono il codice in "pausa"), invece usare i timer. O per una vera applicazione, la cosa migliore è non usare il ciclo, avendo il Linux programmato per eseguire lo script regolarmente con crontab.

Passaggio 12: portare il monitor all'esterno

Portare il monitor all'esterno
Portare il monitor all'esterno
Portare il monitor all'esterno
Portare il monitor all'esterno
Portare il monitor all'esterno
Portare il monitor all'esterno
Portare il monitor all'esterno
Portare il monitor all'esterno

Una volta che il mio monitor Raspberry Pi Air Quality funzionava, ho assemblato l'RPi all'interno di una scatola di plastica, tenendo il sensore all'esterno e l'ho posizionato fuori casa.

Sono state fatte due esperienze.

Passaggio 13: combustione del motore a benzina

Combustione del motore a benzina
Combustione del motore a benzina
Combustione del motore a benzina
Combustione del motore a benzina

Il sensore è stato posizionato a circa 1 metro dal tubo del gas della Lambretta e il suo motore è stato acceso. Il motore ha funzionato per un paio di minuti e si è spento. Dal file di registro sopra, il risultato che ho ottenuto. Interessante confermare che il PM2.5 era il particolato più pericoloso prodotto dal motore.

Passaggio 14: combustione del legno

Legno che brucia
Legno che brucia
Legno che brucia
Legno che brucia

Guardando il file di registro, ci rendiamo conto che i dati del sensore erano momentanei "fuori portata" e non sono stati catturati bene dalla libreria di conversione AQI, quindi ho modificato il codice precedente per gestirlo:

def conv_aqi(pmt_2_5, pmt_10):

prova: aqi_2_5 = aqi.to_iaqi(aqi. POLLUTANT_PM25, str(pmt_2_5)) aqi_10 = aqi.to_iaqi(aqi. POLLUTANT_PM10, str(pmt_10)) return aqi_2_5, aqi_10 tranne: return 600 Questa situazione può accadere sul campo, il che è OK. Ricorda che in effetti, dovresti usare la media mobile per ottenere davvero l'AQI (almeno ogni ora, ma di solito ogni giorno).

Passaggio 15: Conclusione

Conclusione
Conclusione

Come sempre, spero che questo progetto possa aiutare gli altri a trovare la loro strada nell'entusiasmante mondo dell'elettronica e della scienza dei dati!

Per i dettagli e il codice finale, visita il mio deposito GitHub: RPi_Air_Quality_Sensor.

Saludos dal sud del mondo!

Ci vediamo al mio prossimo istruttore!

Grazie, Marcelo

Consigliato: