Cuprins:

AirCitizen - Monitorizarea calității aerului: 11 pași (cu imagini)
AirCitizen - Monitorizarea calității aerului: 11 pași (cu imagini)

Video: AirCitizen - Monitorizarea calității aerului: 11 pași (cu imagini)

Video: AirCitizen - Monitorizarea calității aerului: 11 pași (cu imagini)
Video: Sesiune de informare apeluri deschise Runda 2 / 11 martie 2021 2024, Noiembrie
Anonim
AirCitizen - Monitorizarea calității aerului
AirCitizen - Monitorizarea calității aerului

Buna tuturor

Astăzi, vă vom învăța cum să reproduceți proiectul nostru: AirCitizen de către echipa AirCitizenPolytech!

--

Venind din „OpenAir / Care este aerul tău?” Proiecte, proiectul AirCitizen își propune să permită cetățenilor să evalueze în mod activ calitatea mediului lor imediat și în special aerul pe care îl respiră, oferindu-le din:

Construi

Realizați în „Fablabs” (laboratoare digitale de fabricație) stații portabile de măsurători de mediu care integrează diferiți senzori cu costuri reduse (de exemplu, temperatură, umiditate, presiune, gaz NOx, ozon sau particule PM10 și PM2.5).

Măsura

Efectuați măsurători in situ pentru a evidenția variabilitatea spațio-temporală a variabilelor de mediu: pe de o parte, în timpul campaniilor itinerante cu sprijinul geografilor-climatologi și, pe de altă parte, în diferite locuri care prezintă o diversitate de contexte de mediu.

Acțiune

Contribuiți la îmbunătățirea cunoștințelor prin partajarea acestor măsurători într-o bază de date de mediu și astfel permiteți cartografierea online a poluării aerului.

--

Conceptul este de a crea o stație autonomă care poate colecta date de mediu și le poate trimite cu rețeaua SigFox într-un tablou de bord.

Deci, pe de o parte, vă vom arăta cum să proiectați hardware-ul și, pe de altă parte, cum să faceți partea software.

Pasul 1: Hardware

Hardware
Hardware
Hardware
Hardware

Iată componentele pe care am decis să le folosim pentru proiectarea stației:

- STM32 NUCLEO-F303K8 -> Pentru mai multe informații

- HPMA115S0-XXX (senzor de particule PM2.5 și PM10) -> Pentru mai multe informații

- SHT11 sau SHT10 sau STH15 sau DHT11 (temperatură și umiditate relativă) -> Pentru mai multe informații

- MICS2714 (senzor NO2, senzor dioxid de azot) -> Pentru mai multe informații

- Panou solar x2 (2W) -> Pentru mai multe informații

- Baterie LiPo 3, 7 V 1050 mAh -> Pentru mai multe informații

- Regulator LiPo Rider Pro (106990008) -> Pentru mai multe informații

- Licență BreakOut SigFox BRKWS01 + 1 -> Pentru mai multe informații

- 7 rezistențe (86, 6; 820; 1K; 1K; 4, 7K; 10K; 20K)

- 1 condensator (100nF)

- 1 tranzistor (2N222).

! ! ! Trebuie să eliminați SB16 și SB18 pe placa nucleo stm32 pentru a preveni interferențele dintre HPMA și SHT11!

Practic, acesta este modul în care trebuie să conectați componentele:

  1. Sudează, în paralel, panourile solare.
  2. Conectați-le la LiPo Rider Pro și conectați, de asemenea, bateria la LiPo Rider Pro.
  3. Ca și fotografia de mai sus, conectați toate elementele la STM32. Conectați un singur senzor de temperatură și umiditate, nu 2! Nu uitați de rezistențe, condensator și tranzistor.
  4. În cele din urmă, conectați STM32 la LiPo Rider Pro cu un cablu USB.

Următorul pas este o alternativă la acest cablat.

Pasul 2: Hardware - PCB

Hardware - PCB
Hardware - PCB

Am decis să folosim Autodesk Eagle pentru a proiecta placa cu circuite imprimate (PCB).

Puteți alege să conectați fie un DHT, fie un SHT, am ales să proiectăm două amprente digitale pentru acești 2 senzori pentru a schimba senzorul, dacă este necesar.

În atașament, puteți descărca fișierele de concepție Eagle, astfel încât să le puteți realiza cu ușurință pe cont propriu.

Folosim pinul de 5V al stm32 pentru a furniza dispozitivul. În această configurație, doar stm32 core este alimentat.

Astfel, putem folosi modul de somn profund al MCU, oferind un curent de somn scăzut. În stare de așteptare, întregul curent de dormit scade sub XXµA.

Pasul 3: Protocolul LPWAN: comunicare Sigfox

Protocolul LPWAN: comunicare Sigfox
Protocolul LPWAN: comunicare Sigfox

Sigfox este un protocol LPWAN creat de o firmă de telecomunicații franceză - SIGFOX

Permite dispozitivelor la distanță să se conecteze utilizând tehnologia cu bandă ultra-îngustă (UNB). Cele mai multe dintre acestea vor necesita doar lățime de bandă redusă pentru a transfera cantități mici de date. Rețelele pot gestiona doar aproximativ 12 octeți pe mesaj și în același timp nu mai mult de 140 de mesaje pe dispozitiv pe zi.

Pentru multe dintre aplicațiile IOT, sistemele tradiționale de telefonie celulară sunt prea complexe pentru a permite o funcționare cu putere redusă și prea costisitoare pentru a fi fezabile pentru multe noduri mici cu preț redus … Rețeaua și tehnologia SIGFOX sunt destinate mașinii cu mașină la preț redus zone de aplicare unde este necesară o acoperire extinsă.

Pentru AirCitizen, formatul de date detectate este simplu, iar cantitatea de date corectă de utilizat Sigfox pentru traducerea datelor detectate de la senzori pe platforma noastră IOT - ThingSpeak.

Vom introduce utilizarea Sigfox în pașii următori.

Pasul 4: Configurarea software-ului

Configurare software
Configurare software
Configurare software
Configurare software

După realizarea circuitului nostru, să trecem la dezvoltarea microcontrolerului nostru STM32 F303K8.

Pentru mai multă simplitate, puteți alege să programați în Arduino.

Pasul 1: Dacă nu ați instalat încă ID-ul Arduino, descărcați-l și instalați-l din acest link. Asigurați-vă că ați selectat sistemul de operare corect.

Link-ul: Descărcați Arduino

Pasul 2: După instalarea Arduino IDE deschideți și descărcați pachetele necesare pentru placa STM32. Acest lucru se poate face selectând Fișier -> Preferințe.

Pasul 3: Dând clic pe Preferințe se va deschide caseta de dialog afișată mai jos. În caseta de text a adresei suplimentare a Managerului de panouri, lipiți linkul de mai jos:

github.com/stm32duino/BoardManagerFiles/ra…

și apăsați OK.

Pasul 4: Acum accesați Instrument -> Panouri -> Manager de panou. Aceasta va deschide caseta de dialog Boards manager, va căuta „STM32 Cores” și va instala pachetul care apare (pachetul STMicrolectronics).

Pasul 5: După pachet, instalarea este finalizată. Accesați Instrumente și derulați în jos pentru a găsi „seria Nucleo-32”. Apoi asigurați-vă că varianta este „Nucleo F303K8” și schimbați metoda de încărcare în „STLink”.

Pasul 6: Acum, conectați placa la computer și verificați la ce port COM este conectată placa folosind managerul de dispozitive. Apoi, selectați același număr de port în Instrumente-> Port.

Acum sunteți gata să vă programați STM32 F303K8 cu Arduino!

Pasul 5: Programați-vă STM32

După configurare, trebuie să programați microcontrolerul pentru a colecta și trimite date.

Pasul 1: Verificați afectarea I / O și măsurați timestamp-ul în partea „Definire” a codului.

Pasul 2: Încărcați codul de mai sus pe stm32, deschideți monitorul serial și resetați dispozitivul. Comanda „AT” ar trebui să apară pe ecran, dacă nu, verificați declarația I / O.

Puteți avea o idee despre veridicitatea datelor dvs. consultând standardele legislației franceze anexate.

Să trecem la configurația tabloului de bord.

Pasul 6: ThingSpeak - 1

ThingSpeak - 1
ThingSpeak - 1
ThingSpeak - 1
ThingSpeak - 1

Înainte de a configura modul de redirecționare a datelor de la stația noastră la platforma ThingSpeak, trebuie să creați un cont ThingSpeak.

Înscrieți-vă: site-ul web ThingSpeak

Pasul 1: Acum faceți clic pe „Canal nou”. Aceasta va deschide un formular. Introduceți un nume și o descriere (dacă este necesar).

Creați 5 câmpuri:

  • Câmpul 1: pm2, 5
  • Câmpul 2: pm10
  • Câmpul 3: temperatura
  • Câmpul 4: umiditate
  • Câmpul 5: NO2

Aceste titluri nu vor fi titlurile topurilor noastre.

Dacă aveți nevoie de un exemplu, consultați fotografia de mai sus.

Nu este nevoie să completați mai multe câmpuri, dar ar putea fi interesant dacă introduceți o locație.

Derulați în jos și „Salvați canalul”.

Pasul 2: Canalul stației AirCitizen.

Acum, puteți vedea o pagină cu 5 diagrame. Făcând clic pe simbolul creionului puteți schimba proprietățile unui grafic.

Rezultatul este a doua imagine de mai sus.

La acest pas, acele grafice sunt private. Veți putea să le faceți publice odată ce datele primite.

Pasul 3: După configurarea graficelor. Accesați fila „Chei API”. Uitați-vă la partea de solicitare API și mai precis la primul câmp, „Actualizați un flux de canal”. Rețineți cheia API.

Veți avea așa ceva:

OBȚINEȚI

Acum puteți merge la capitolul următor.

Pasul 7: Comunicare între modulul Sigfox și platforma ThingSpeak

Comunicare între modulul Sigfox și platforma ThingSpeak
Comunicare între modulul Sigfox și platforma ThingSpeak
Comunicare între modulul Sigfox și platforma ThingSpeak
Comunicare între modulul Sigfox și platforma ThingSpeak

Pentru informații, rețineți că fiecare card al modulului Sigfox are un număr unic scris pe card și un număr PAC.

Pentru a primi datele pe ThingSpeak, ar trebui să le redirecționați.

Datele merg de la stație la backend-ul Sigfox și vor fi redirecționate către serverul ThingSpeak.

Vedeți prima imagine de mai sus pentru explicații.

Pasul 1: Nu vom explica cum să vă înregistrați pe Sigfox din cauza multor tutoriale pe internet.

Accesați Sigfox Backend.

Faceți clic pe „Tipul dispozitivului”, apoi faceți clic pe linia kitului și selectați „Editați”.

Acum, accesați secțiunea „Rambursări” și faceți clic pe „Nou”, „Rambursare personalizată”.

Pasul 2:

Ar trebui să vă aflați pe pagina de configurare:

Tastați: DATA și UPLINK

Canal: URL

Trimiteți duplicatul: niciunul

Configurare personalizată a sarcinii utile: setați sursa de date și decideți formularul de date. Ar trebui să scrieți astfel:

VarName:: Type: NumberOfBits

În acest caz, avem 5 valori numite pm25, pm10, temperatură, umiditate și NO2.

pm25:: int: 16 pm10:: int: 16 temperatura:: int: 8 umiditate:: uint: 8 NO2:: uint: 8

Model de adresă URL: Aceasta este sintaxa. Utilizați cheia API găsită anterior și introduceți-o după „api_key =”

api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXXXX&field1={customData#pm25}&field2={customData#pm10}&field3={customData#temperature}&field4={customData#humidity}&field5={custom

Utilizați metoda HTTP: GET

Trimiteți SNI: ACTIVAT

Anteturi: Nici unul

Faceți clic acum pe „Ok”.

Revenirea dvs. la API-ul ThingSpeak este acum configurată! (Reprezentare la a doua imagine de mai sus).

Pasul 8: ThingSpeak - 2

ThingSpeak - 2
ThingSpeak - 2

Acum, puteți fi mai pretențios în modificarea valorilor minime și maxime ale axelor.

Dacă este necesar, faceți clic pe sigla creionului din partea dreaptă sus a unui grafic.

Valori tipice:

PM 2, 5 și PM 10 = ug / m ^ 3

Temperatura = ° C

Umiditate =%

Dioxid de azot = ppm

Ar trebui să aveți ceva de genul celor două imagini de mai sus.

De asemenea, puteți adăuga alte widget-uri, cum ar fi „Afișare numerică” sau „Ecartament”.

În cele din urmă, pentru a vă face canalul public, accesați fila „Partajare” și selectați „Distribuiți vizualizarea canalului tuturor”.

Pasul 9: Bonus - ThingTweet și React

Bonus - ThingTweet și React
Bonus - ThingTweet și React
Bonus - ThingTweet și React
Bonus - ThingTweet și React
Bonus - ThingTweet și React
Bonus - ThingTweet și React

Opțional: trimiteți un Tweet dacă este îndeplinită o condiție!

Pasul 1: Creați un cont twitter sau utilizați contul dvs. personal de twitter.

Înscrieți-vă - Twitter

Pasul 2: în Thingspeak, accesați „Aplicații”, apoi faceți clic pe „ThingTweet”.

Conectați-vă contul Twitter făcând clic pe „Conectați contul Twitter”.

Pasul 3: Acum, reveniți în „Aplicații”, apoi faceți clic pe „Reacționează”.

Creați un nou React făcând clic pe „New React”.

De exemplu:

Denumirea reacției: Temperatura peste 15 ° C

Tipul condiției: numerică

Frecvența testului: inserarea datelor

Stare, dacă canal:

Câmp: 3 (temperatură)

Semn: este mai mare decât

Valoare: 15

Acțiune: ThingTweet

Apoi tweet: Oh! Temperatura este mai mare de 15 ° C

folosind contul Twitter:

Opțiuni: Rulați acțiunea de fiecare dată când este îndeplinită condiția

Apoi faceți clic pe „Salvați reacționează”.

Acum veți trimite un tweet dacă condiția este îndeplinită și multe alte condiții pot fi configurate, în funcție de nivelul PM10.

Pasul 10: Este rândul tău acum

În cele din urmă, aveți acum toate elementele pentru a vă reproduce propria stație AirCitizen!

Video: puteți viziona un videoclip în care ne prezentăm lucrările.

Platforma noastră ThingSpeak: stația AirCitizenPolytech

--

Vă mulțumim pentru atenție !

Echipa AirCitizen Polytech

Pasul 11: Referință și bibliografie

https://www.sigfox.com/en

Recomandat: