Sommario:
- Passaggio 1: hardware
- Passaggio 2: hardware - PCB
- Passaggio 3: il protocollo LPWAN: comunicazione Sigfox
- Passaggio 4: configurazione del software
- Passaggio 5: programma il tuo STM32
- Passaggio 6: ThingSpeak - 1
- Passaggio 7: comunicazione tra il modulo Sigfox e la piattaforma ThingSpeak
- Passaggio 8: ThingSpeak - 2
- Passaggio 9: Bonus - ThingTweet e React
- Passaggio 10: ora tocca a te
- Passaggio 11: riferimenti e bibliografia
Video: AirCitizen - Monitoraggio della qualità dell'aria: 11 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Ciao a tutti
Oggi vi insegneremo come riprodurre il nostro progetto: AirCitizen del Team AirCitizen Polytech!
--
Detto da 'OpenAir / Qual è la tua aria?' Progetti, il progetto AirCitizen mira a consentire ai cittadini di valutare attivamente la qualità del loro ambiente circostante e in particolare l'aria che respirano, offrendo loro da:
Costruire
Realizzare in "Fablabs" (laboratori di fabbricazione digitale) stazioni portatili di misure ambientali integrando vari sensori a basso costo (es. temperatura, umidità, pressione, gas NOx, ozono o particelle PM10 e PM2.5).
Misurare
Eseguire misurazioni in situ al fine di evidenziare la variabilità spazio-temporale delle variabili ambientali: da un lato, durante le campagne itineranti con il supporto di geografi-climatologi e, dall'altro, in vari luoghi che presentano una diversità di contesti ambientali.
Condividere
Contribuire al miglioramento delle conoscenze condividendo queste misurazioni in un database ambientale e consentendo così la mappatura online dell'inquinamento atmosferico.
--
Il concetto è quello di creare una stazione autonoma in grado di raccogliere dati ambientali e inviarli con la rete SigFox a una dashboard.
Quindi, da un lato, ti mostreremo come progettare l'hardware e dall'altro come eseguire la parte software.
Passaggio 1: hardware
Ecco i componenti che abbiamo deciso di utilizzare per progettare la stazione:
- STM32 NUCLEO-F303K8 -> Per maggiori informazioni
- HPMA115S0-XXX (Sensore di particelle PM2.5 e PM10) -> Per maggiori informazioni
- SHT11 o SHT10 o STH15 o DHT11 (temperatura e umidità relativa) -> Per maggiori informazioni
- MICS2714 (sensore NO2, sensore biossido di azoto) -> Per maggiori informazioni
- Pannello Solare x2 (2W) -> Per maggiori informazioni
- Batteria LiPo 3, 7 V 1050 mAh -> Per maggiori informazioni
- Regolatore LiPo Rider Pro (106990008) -> Per maggiori informazioni
- BreakOut SigFox BRKWS01 + 1 licenza - > Per maggiori informazioni
- 7 resistori (86, 6; 820; 1K; 1K; 4, 7K; 10K; 20K)
- 1 condensatore (100nF)
- 1 transistor (2N222).
! ! ! Devi rimuovere SB16 e SB18 sulla scheda nucleo stm32 per evitare interferenze tra HPMA e SHT11!
Fondamentalmente, questo è il modo in cui devi collegare i componenti:
- Saldare, in parallelo, i pannelli solari.
- Collegali al LiPo Rider Pro e collega anche la batteria al LiPo Rider Pro.
- Come nella foto sopra, collega tutti gli elementi all'STM32. Collegare solo un sensore di temperatura e umidità non 2! Non dimenticare le resistenze, il condensatore e il transistor.
- Infine, collega l'STM32 al LiPo Rider Pro con un cavo USB.
Il prossimo passo è un'alternativa a questo cablato.
Passaggio 2: hardware - PCB
Abbiamo deciso di utilizzare Autodesk Eagle per progettare il circuito stampato (PCB).
Puoi scegliere di collegare un DHT o un SHT, abbiamo scelto di progettare due impronte digitali per questi 2 sensori per cambiare il sensore se necessario.
In allegato, puoi scaricare i file di concezione di Eagle in modo da poterlo realizzare facilmente da solo.
Usiamo il pin 5V di stm32 per alimentare il dispositivo. In questa configurazione, viene alimentato solo il core stm32.
Quindi possiamo utilizzare la modalità di sospensione profonda dell'MCU fornendo una bassa corrente di sospensione. In stato di standby, l'intera corrente di sospensione scende al di sotto di XXµA.
Passaggio 3: il protocollo LPWAN: comunicazione Sigfox
Sigfox è un protocollo LPWAN creato da una società di telecomunicazioni francese - SIGFOX
Consente ai dispositivi remoti di connettersi utilizzando la tecnologia a banda ultra stretta (UNB). La maggior parte di questi richiederà solo una larghezza di banda ridotta per trasferire piccole quantità di dati. Le reti sono in grado di gestire solo circa 12 byte per messaggio e contemporaneamente non più di 140 messaggi per dispositivo al giorno.
Per molte delle applicazioni IOT, i tradizionali sistemi di telefonia cellulare sono troppo complessi per consentire un funzionamento a bassissima potenza e troppo costosi per essere fattibili per molti piccoli nodi a basso costo… La rete e la tecnologia SIGFOX sono rivolte al machine to machine a basso costo aree di applicazione in cui è richiesta un'ampia copertura.
Per AirCitizen, il formato dei dati rilevati è semplice e la quantità di dati corretta per utilizzare Sigfox per tradurre i dati rilevati dai sensori alla nostra piattaforma IOT - ThingSpeak.
Introdurremo l'uso di Sigfox nei passaggi seguenti.
Passaggio 4: configurazione del software
Dopo la realizzazione del nostro circuito, passiamo allo sviluppo del nostro microcontrollore STM32 F303K8.
Per maggiore semplicità, puoi scegliere di programmare in Arduino.
Passaggio 1: se non hai ancora installato l'IDE Arduino, scaricalo e installalo da questo link. Assicurati di selezionare il sistema operativo corretto.
Il link: Scarica Arduino
Passaggio 2: dopo aver installato l'IDE Arduino, aprire e scaricare i pacchetti richiesti per la scheda STM32. Questo può essere fatto selezionando File -> Preferenze.
Passaggio 3: facendo clic su Preferenze si aprirà la finestra di dialogo mostrata di seguito. Nella casella di testo aggiuntiva dell'URL di Boards Manager incolla il collegamento seguente:
github.com/stm32duino/BoardManagerFiles/ra…
e premere OK.
Passaggio 4: ora vai su Strumento -> Schede -> Gestione schede. Questo aprirà la finestra di dialogo Boards manager, cercherà "STM32 Cores" e installerà il pacchetto che appare (pacchetto STMicrolectronics).
Passaggio 5: dopo il pacchetto, l'installazione è completata. Vai su Strumenti e scorri verso il basso per trovare la "serie Nucleo-32". Quindi assicurati che la variante sia "Nucleo F303K8" e cambia il metodo di caricamento in "STLink".
Passaggio 6: ora collega la scheda al computer e controlla a quale porta COM è collegata la scheda utilizzando Gestione dispositivi. Quindi, seleziona lo stesso numero di porta in Strumenti->Porta.
Ora sei pronto per programmare il tuo STM32 F303K8 con Arduino!
Passaggio 5: programma il tuo STM32
Una volta completata la configurazione, è necessario programmare il microcontrollore per raccogliere e inviare dati.
Passaggio 1: controllare l'influenza dell'I/O e misurare il timestamp nella parte "Definisci" del codice.
Passaggio 2: caricare il codice sopra su stm32, aprire il monitor seriale e ripristinare il dispositivo. Il comando "AT" dovrebbe apparire sullo schermo, in caso contrario, controllare la dichiarazione I/O.
Potete avere un'idea della veridicità dei vostri dati consultando gli standard della legislazione francese in allegato.
Passiamo alla configurazione della dashboard.
Passaggio 6: ThingSpeak - 1
Prima di configurare come reindirizzare i dati dalla nostra stazione alla piattaforma ThingSpeak devi creare un account ThingSpeak.
Iscriviti: Sito ThingSpeak
Passaggio 1: ora fai clic su "Nuovo canale". Questo aprirà un modulo. Inserisci un nome e una descrizione (se necessario).
Crea 5 campi:
- Campo 1: pm2, 5
- Campo 2: pm10
- Campo 3: temperatura
- Campo 4: umidità
- Campo 5: NO2
Questi titoli non saranno i titoli delle nostre classifiche.
Se hai bisogno di un esempio, vedi la foto sopra.
Non è necessario completare più campi ma potrebbe essere interessante inserire una località.
Scorri verso il basso e "Salva canale".
Passaggio 2: canale AirCitizen Station.
Ora puoi vedere una pagina con 5 grafici. Cliccando sul simbolo della matita è possibile modificare le proprietà di un grafico.
Il risultato è la seconda immagine sopra.
A questo punto, quei grafici sono privati. Potrai renderli pubblici una volta ricevuti i dati.
Passaggio 3: dopo la configurazione dei grafici. Vai alla scheda "Chiavi API". Guarda la parte della richiesta API e più precisamente il primo campo, "Aggiorna un feed del canale". Nota la CHIAVE API.
Avrai qualcosa del genere:
OTTIENI
Ora puoi passare al capitolo successivo.
Passaggio 7: comunicazione tra il modulo Sigfox e la piattaforma ThingSpeak
Per tua informazione, nota che ogni scheda modulo Sigfox ha un numero univoco scritto sulla scheda e un numero PAC.
Per ricevere i dati su ThingSpeak, dovresti reindirizzarli.
I dati vanno dalla stazione al backend Sigfox e verranno reindirizzati al server ThingSpeak.
Vedere la prima immagine sopra per le spiegazioni.
Passaggio 1: non spiegheremo come registrarsi su Sigfox a causa di molti tutorial su Internet.
Vai sul backend Sigfox.
Fare clic su "Tipo di dispositivo", quindi fare clic sulla riga del kit e selezionare "Modifica".
Ora vai nella sezione "Richiamate" e fai clic su "Nuovo", "Richiamata personalizzata".
Passo 2:
Dovresti essere nella pagina di configurazione:
Tipo: DATI e UPLINK
Canale: URL
Invia duplicato: nessuno
Configurazione payload personalizzata: imposta l'origine dati e decidi il modulo dati. Dovresti scrivere come:
VarName::Type:NumberOfBits
In questo caso abbiamo 5 valori denominati pm25, pm10, temperatura, umidità e NO2.
pm25::int:16 pm10::int:16 temperatura::int:8 umidità::uint:8 NO2::uint:8
Modello URL: questa è la sintassi. Usa la chiave API trovata in precedenza e inseriscila dopo "api_key ="
api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXXX&field1={customData#pm25}&field2={customData#pm10}&field3={customData#temperature}&field4={customData#humidity}&field5={customData#NO2}
Usa il metodo HTTP: GET
Invia SNI: ON
Intestazioni: nessuna
Clicca ora su "Ok".
La tua richiamata all'API ThingSpeak è ora configurata! (Rappresentazione nella seconda foto sopra).
Passaggio 8: ThingSpeak - 2
Ora puoi essere più pignolo nel modificare i valori minimo e massimo degli assi.
Se necessario, fare clic sul logo a matita in alto a destra di un grafico.
Valori tipici:
PM 2, 5 e PM 10 = ug/m^3
Temperatura = °C
Umidità = %
Biossido di azoto = ppm
Dovresti avere qualcosa come le due immagini sopra.
Puoi anche aggiungere altri widget come "Visualizzatore numerico" o "Indicatore".
Infine, per rendere pubblico il tuo canale, vai sulla scheda "Condivisione" e seleziona "Condividi vista canale con tutti".
Passaggio 9: Bonus - ThingTweet e React
Facoltativo: twitta se una condizione è soddisfatta!
Passaggio 1: crea un account Twitter o utilizza il tuo account Twitter personale.
Iscriviti - Twitter
Passaggio 2: in Thingspeak, vai in "App", quindi fai clic su "ThingTweet".
Collega il tuo account Twitter facendo clic su "Collega account Twitter".
Passaggio 3: ora torna in "App", quindi fai clic su "Reagisci".
Crea una nuova reazione facendo clic su "Nuova reazione".
Per esempio:
Nome reazione: temperatura superiore a 15°C
Tipo di condizione: numerico
Frequenza del test: all'inserimento dei dati
Condizione, se canale:
Campo: 3 (temperatura)
Segno: è maggiore di
Valore: 15
Azione: ThingTweet
Poi tweet: Oh! La temperatura è superiore a 15 °C
utilizzando l'account Twitter:
Opzioni: Esegui l'azione ogni volta che la condizione è soddisfatta
Quindi fare clic su "Salva React".
Ora twitterai se la condizione è soddisfatta e molte altre condizioni possono essere configurate come a seconda del livello di PM10.
Passaggio 10: ora tocca a te
Finalmente, ora hai tutti gli elementi per riprodurre la tua AirCitizen Station!
Video: puoi guardare un video in cui presentiamo il nostro lavoro.
La nostra piattaforma ThingSpeak: AirCitizen Polytech Station
--
Grazie per l'attenzione !
Il team di AirCitizen Polytech
Passaggio 11: riferimenti e bibliografia
https://www.sigfox.com/en
Consigliato:
Misuratore della qualità dell'aria interna: 5 passaggi (con immagini)
Misuratore della qualità dell'aria interna: progetto semplice per controllare la qualità dell'aria nella tua casa. Dato che ultimamente stiamo/lavoriamo molto da casa, potrebbe essere una buona idea monitorare la qualità dell'aria e ricordare a te stesso quando è il momento di aprire la finestra e prendi una boccata d'aria fresca
Display LED di stato della qualità dell'aria PurpleAir: 4 passaggi
Display a LED sullo stato della qualità dell'aria PurpleAir: con i recenti incendi in California, la qualità dell'aria a San Francisco è stata fortemente influenzata. Ci siamo ritrovati a controllare la mappa PurpleAir più e più volte sui nostri telefoni o laptop cercando di vedere quando l'aria era abbastanza sicura da aprire la vittoria
Airduino: monitor mobile della qualità dell'aria: 5 passaggi
Airduino: monitor mobile della qualità dell'aria: benvenuto nel mio progetto, Airduino. Mi chiamo Robbe Breens. Sto studiando tecnologia multimediale e della comunicazione presso Howest a Kortrijk, Belgio. Alla fine del secondo semestre, dobbiamo realizzare un dispositivo IoT, che è un ottimo modo per portare tutte le
Monitor della qualità dell'aria con MQ135 e sensore di temperatura e umidità esterno su MQTT: 4 passaggi
Monitor della qualità dell'aria con MQ135 e sensore di temperatura e umidità esterno su MQTT: questo è a scopo di test
Un monitor della qualità dell'aria IoT a basso costo basato su RaspberryPi 4: 15 passaggi (con immagini)
Un monitor IoT per la qualità dell'aria 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 sfortunatamente non è tutto rose e fiori. Il Cile durante la stagione invernale soffre molto per la contaminazione dell'aria, mai