Innholdsfortegnelse:

AirCitizen - Overvåking av luftkvalitet: 11 trinn (med bilder)
AirCitizen - Overvåking av luftkvalitet: 11 trinn (med bilder)

Video: AirCitizen - Overvåking av luftkvalitet: 11 trinn (med bilder)

Video: AirCitizen - Overvåking av luftkvalitet: 11 trinn (med bilder)
Video: Торий 2024, November
Anonim
AirCitizen - Overvåking av luftkvalitet
AirCitizen - Overvåking av luftkvalitet

Hei alle sammen

I dag vil vi lære deg hvordan du reproduserer prosjektet vårt: AirCitizen av AirCitizenPolytech Team!

--

Kommer fra 'OpenAir / Hva er din luft?' Prosjekter, AirCitizen -prosjektet tar sikte på å gjøre innbyggerne i stand til aktivt å evaluere kvaliteten på sitt nærmeste miljø og spesielt luften de puster, ved å tilby dem fra:

Bygge

Realiser deg i "Fablabs" (digitale produksjonslaboratorier) bærbare stasjoner med miljømålinger som integrerer forskjellige rimelige sensorer (f.eks. Temperatur, fuktighet, trykk, NOx-gass, ozon eller partikler PM10 og PM2.5).

Måle

Utfør in situ målinger for å markere spatiotemporal variabilitet av miljøvariablene: på den ene siden under omreisende kampanjer med støtte fra geografer-klimatologer og på den andre siden på forskjellige steder som presenterer en mangfoldig miljøkontekst.

Dele

Bidra til å forbedre kunnskapen ved å dele disse målingene i en miljødatabase og dermed muliggjøre online kartlegging av luftforurensning.

--

Konseptet er å lage en autonom stasjon som kan samle inn miljødata og sende dem med SigFox -nettverket til et dashbord.

Så på den ene siden vil vi vise deg hvordan du designer maskinvaren og på den andre siden hvordan du gjør programvaredelen.

Trinn 1: Maskinvare

Maskinvare
Maskinvare
Maskinvare
Maskinvare

Her er komponentene som vi bestemte oss for å bruke til å designe stasjonen:

-STM32 NUCLEO -F303K8 -> For mer informasjon

-HPMA115S0 -XXX (Particles sensor PM2.5 & PM10) -> For mer informasjon

- SHT11 eller SHT10 eller STH15 eller DHT11 (temperatur og relativ fuktighet) -> For mer informasjon

- MICS2714 (NO2 sensor, Nitrogen dioxide sensor) -> For mer informasjon

- Solcellepanel x2 (2W) -> For mer informasjon

- Batteri LiPo 3, 7 V 1050 mAh -> For mer informasjon

- Regulator LiPo Rider Pro (106990008) -> For mer informasjon

- BreakOut SigFox BRKWS01 + 1 lisens -> For mer informasjon

- 7 motstander (86, 6; 820; 1K; 1K; 4, 7K; 10K; 20K)

- 1 kondensator (100nF)

- 1 transistor (2N222).

! ! ! Du må fjerne SB16 og SB18 på stm32 -nukleokortet for å forhindre forstyrrelser mellom HPMA og SHT11!

I utgangspunktet er det slik du må koble til komponenter:

  1. Sveis parallelt med solcellepanelene.
  2. Koble dem til LiPo Rider Pro og koble også batteriet til LiPo Rider Pro.
  3. Som bildet ovenfor, koble alle elementene til STM32. Koble til bare én temperatur- og fuktighetssensor, ikke 2! Ikke glem motstander, kondensatoren og transistoren.
  4. Til slutt kobler du STM32 til LiPo Rider Pro med en usb -kabel.

Det neste trinnet er et alternativ til denne kablet.

Trinn 2: Maskinvare - PCB

Maskinvare - PCB
Maskinvare - PCB

Vi bestemte oss for å bruke Autodesk Eagle til å designe kretskortet (PCB).

Du kan velge å koble til enten en DHT eller en SHT, vi valgte å designe to fingeravtrykk for disse 2 sensorene for å endre sensoren om nødvendig.

I vedlegg kan du laste ned Eagle -unnfangelsesfilene slik at du enkelt kan lage dem på egen hånd.

Vi bruker 5V -pinnen til stm32 for å forsyne enheten. I denne konfigurasjonen er det bare stm32 core som drives.

Dermed kan vi bruke dyp dvalemodus til MCU som gir lav søvnstrøm. I standby -status faller hele sovestrømmen under XXµA.

Trinn 3: LPWAN -protokollen: Sigfox Communication

LPWAN -protokollen: Sigfox Communication
LPWAN -protokollen: Sigfox Communication

Sigfox er en LPWAN -protokoll opprettet av et fransk telekomfirma - SIGFOX

Det gjør det mulig for eksterne enheter å koble til ved hjelp av ultra-small-band (UNB) teknologi. De fleste av disse krever bare lav båndbredde for å overføre små datamengder. Nettverk kan bare håndtere omtrent 12 byte per melding og samtidig ikke mer enn 140 meldinger per enhet per dag.

For mange av IOT-applikasjoner er de tradisjonelle mobiltelefonsystemene for komplekse til å tillate drift med svært lav strøm og for kostbare for å være mulig for mange små rimelige noder … applikasjonsområder der det er nødvendig med bred dekning.

For AirCitizen er formatet for oppdagede data enkelt og datamengden korrekt for å bruke Sigfox for å oversette dataene som er oppdaget fra sensorer til vår IOT -plattform - ThingSpeak.

Vi vil introdusere bruken av Sigfox i de følgende trinnene.

Trinn 4: Programvarekonfigurasjon

Programvarekonfigurasjon
Programvarekonfigurasjon
Programvarekonfigurasjon
Programvarekonfigurasjon

Etter realiseringen av kretsen vår, la oss gå videre til utviklingen av vår STM32 F303K8 mikrokontroller.

For mer enkelhet kan du velge å programmere i Arduino.

Trinn 1: Hvis du ennå ikke har installert Arduino IDE, kan du laste ned og installere den fra denne lenken. Sørg for at du velger riktig operativsystem.

Lenken: Last ned Arduino

Trinn 2: Etter å ha installert Arduino IDE, åpne og last ned de nødvendige pakkene for STM32 -kortet. Dette kan gjøres ved å velge Fil -> Innstillinger.

Trinn 3: Hvis du klikker på Preferanser, åpnes dialogboksen som vises nedenfor. I den ekstra Boards Manager URL -tekstboksen limer du inn lenken nedenfor:

github.com/stm32duino/BoardManagerFiles/ra…

og trykk OK.

Trinn 4: Gå nå til Tool -> Boards -> Board Manager. Dette åpner dialogboksen Boards manager, søker etter "STM32 Cores" og installerer pakken som vises (STMicrolectronics -pakken).

Trinn 5: Etter pakken er installasjonen fullført. Gå til Verktøy og rull ned for å finne "Nucleo-32-serien". Sørg deretter for at varianten er "Nucleo F303K8" og endre opplastingsmetoden til "STLink".

Trinn 6: Koble kortet ditt til datamaskinen og sjekk hvilken COM -port kortet er koblet til ved hjelp av enhetsbehandling. Velg deretter det samme portnummeret i Verktøy-> Port.

Du er nå klar til å programmere STM32 F303K8 med Arduino!

Trinn 5: Programmer STM32

Når konfigurasjonen er utført, må du programmere mikrokontrolleren til å samle inn og sende data.

Trinn 1: Kontroller påvirkning av I/O og måler tidsstempel i "Definer" -delen av koden.

Trinn 2: Last opp koden ovenfor til stm32, åpne den serielle skjermen og tilbakestill enheten. "AT" -kommandoen skal vises på skjermen, hvis ikke, sjekk I/O -erklæringen.

Du kan ha en ide om sannheten til dataene dine ved å konsultere de franske lovgivningsstandardene i vedlegget.

La oss gå videre til konfigurasjonen av dashbordet.

Trinn 6: ThingSpeak - 1

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

Før du konfigurerer hvordan du omdirigerer data fra vår stasjon til ThingSpeak -plattformen, må du opprette en ThingSpeak -konto.

Registrer deg: ThingSpeak nettsted

Trinn 1: Klikk nå på "Ny kanal". Dette åpner et skjema. Skriv inn et navn og en beskrivelse (om nødvendig).

Lag 5 -feltet:

  • Felt 1: pm2, 5
  • Felt 2: pm10
  • Felt 3: temperatur
  • Felt 4: fuktighet
  • Felt 5: NO2

Disse titlene vil ikke være titlene på listene våre.

Hvis du trenger et eksempel, se bildet ovenfor.

Du trenger ikke å fylle ut flere felt, men det kan være interessant hvis du skriver inn et sted.

Rull ned og "Lagre kanal".

Trinn 2: AirCitizen Station Channel.

Nå kan du se en side med 5 diagrammer. Ved å klikke på blyantsymbolet kan du endre egenskapene til en graf.

Resultatet er det andre bildet ovenfor.

På dette trinnet er disse grafene private. Du vil kunne offentliggjøre dem når dataene er mottatt.

Trinn 3: Etter konfigurasjonen av grafene. Gå til kategorien "API -nøkler". Se på API -forespørselsdelen og mer presist det første feltet, "Oppdater en kanalfeed". Legg merke til API -NØKKELEN.

Du vil ha noe slikt:

Du kan nå gå til neste kapittel.

Trinn 7: Kommunikasjon mellom Sigfox -modulen og ThingSpeak -plattformen

Kommunikasjon mellom Sigfox -modulen og ThingSpeak -plattformen
Kommunikasjon mellom Sigfox -modulen og ThingSpeak -plattformen
Kommunikasjon mellom Sigfox -modulen og ThingSpeak -plattformen
Kommunikasjon mellom Sigfox -modulen og ThingSpeak -plattformen

For din informasjon, vær oppmerksom på at hvert Sigfox -modulkort har et unikt nummer skrevet på kortet og et PAC -nummer.

For å motta dataene på ThingSpeak, bør du omdirigere dem.

Data går fra stasjonen til Sigfox backend og blir omdirigert til ThingSpeak -serveren.

Se det første bildet ovenfor for forklaringer.

Trinn 1: Vi vil ikke forklare hvordan du registrerer deg på Sigfox på grunn av mange opplæringsprogrammer på internett.

Gå på Sigfox Backend.

Klikk på "Enhetstype", klikk deretter på linjen i settet ditt og velg "Rediger".

Gå nå til delen "Tilbakeringing" og klikk på "Ny", "Tilpasset tilbakeringing".

Steg 2:

Du bør være på konfigurasjonssiden:

Type: DATA og UPLINK

Kanal: URL

Send duplikat: ingen

Tilpasset nyttelastkonfigurasjon: Angi datakilden og bestem dataskjemaet. Du bør skrive slik:

VarName:: Type: NumberOfBits

I dette tilfellet har vi 5 verdier som heter pm25, pm10, temperatur, fuktighet og NO2.

pm25:: int: 16 pm10:: int: 16 temperatur:: int: 8 fuktighet:: uint: 8 NO2:: uint: 8

URL -mønster: Dette er syntaksen. Bruk den tidligere funnet API -nøkkelen og sett den inn etter "api_key ="

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

Bruk HTTP -metode: GET

Send SNI: PÅ

Overskrifter: Ingen

Klikk nå på "Ok".

Tilbakekallingen din til ThingSpeak API er nå konfigurert! (Representasjon på det andre bildet ovenfor).

Trinn 8: ThingSpeak - 2

ThingSpeak - 2
ThingSpeak - 2

Nå kan du være mer kresen når det gjelder å endre minimums- og maksimumsverdiene for aksene.

Klikk om nødvendig på blyantlogoen øverst til høyre i en graf.

Typiske verdier:

PM 2, 5 & PM 10 = ug/m^3

Temperatur = ° C

Fuktighet = %

Nitrogendioksyd = ppm

Du bør ha noe som de to bildene ovenfor.

Du kan også legge til noen andre widgets som "Numeric Display" eller "Gauge".

Til slutt, for å gjøre kanalen din offentlig, gå til "Deling" -fanen og velg "Del kanalvisning med alle".

Trinn 9: Bonus - ThingTweet og React

Bonus - ThingTweet og React
Bonus - ThingTweet og React
Bonus - ThingTweet og React
Bonus - ThingTweet og React
Bonus - ThingTweet og React
Bonus - ThingTweet og React

Valgfritt: Tweet hvis en betingelse er oppfylt!

Trinn 1: Opprett en twitter -konto eller bruk din personlige twitter -konto.

Registrer deg - Twitter

Trinn 2: Gå til "Apps" i Thingspeak, klikk deretter på "ThingTweet".

Koble til twitter -kontoen din ved å klikke på "Koble Twitter -konto".

Trinn 3: Gå tilbake til "Apps", klikk deretter på "React".

Lag en ny React ved å klikke på "New React".

For eksempel:

Reaktnavn: Temperatur over 15 ° C

Tilstandstype: Numerisk

Testfrekvens: O n innsetting av data

Tilstand, hvis kanal:

Felt: 3 (temperatur)

Tegn: er større enn

Verdi: 15

Handling: ThingTweet

Tweet deretter: Oh! Temperaturen er større enn 15 ° C

bruker Twitter -konto:

Alternativer: Kjør handling hver gang betingelsen er oppfylt

Klikk deretter på "Save React".

Du vil nå tweet hvis betingelsen er oppfylt og mange andre betingelser kan konfigureres, avhengig av nivået på PM10.

Trinn 10: Det er din tur nå

Endelig har du nå alle elementene for å reprodusere din egen AirCitizen -stasjon!

Video: Du kan se en video der vi presenterer arbeidet vårt.

Vår ThingSpeak -plattform: AirCitizenPolytech Station

--

Takk for din oppmerksomhet !

AirCitizen Polytech -teamet

Trinn 11: Referanse og bibliografi

https://www.sigfox.com/en

Anbefalt: