Innholdsfortegnelse:
- Trinn 1: Maskinvare
- Trinn 2: Maskinvare - PCB
- Trinn 3: LPWAN -protokollen: Sigfox Communication
- Trinn 4: Programvarekonfigurasjon
- Trinn 5: Programmer STM32
- Trinn 6: ThingSpeak - 1
- Trinn 7: Kommunikasjon mellom Sigfox -modulen og ThingSpeak -plattformen
- Trinn 8: ThingSpeak - 2
- Trinn 9: Bonus - ThingTweet og React
- Trinn 10: Det er din tur nå
- Trinn 11: Referanse og bibliografi
Video: AirCitizen - Overvåking av luftkvalitet: 11 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
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
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:
- Sveis parallelt med solcellepanelene.
- Koble dem til LiPo Rider Pro og koble også batteriet til LiPo Rider Pro.
- Som bildet ovenfor, koble alle elementene til STM32. Koble til bare én temperatur- og fuktighetssensor, ikke 2! Ikke glem motstander, kondensatoren og transistoren.
- 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
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
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
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
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:
FÅ
Du kan nå gå til neste kapittel.
Trinn 7: 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
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
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:
Spor luftkvalitet ved hjelp av Grafana og Raspberry Pi: 7 trinn
Spor luftkvalitet ved hjelp av Grafana og Raspberry Pi: Jeg var på utkikk etter et lite lite IOT-prosjekt og en venn anbefalte at jeg sjekket denne opplæringen: https: //dzone.com/articles/raspberry-pi-iot-sensor…Jeg anbefaler anbefaler å følge opplæringen for å følge med når du konfigurerer en Raspberry Pi for overvåking
Mål luftkvalitet: 17 trinn
Mål luftkvalitet: Luftkvalitet og fine partikler: De suspenderte partiklene (betegnet "PM" for "partikler") er generelt de fine faste partiklene som luften bærer (Wikipedia). Fine partikler trenger dypt ned i lungene. De kan forårsake i
Monitor med partikkeldrevet luftkvalitet: 7 trinn
Partikkeldrevet luftkvalitetsmonitor: Luftkvalitet. Du tenker sannsynligvis mer på det nå som vår rene luft har blitt til en permanent dis over himmelen. Æsj. En ting du har kontroll over er luftkvaliteten i hjemmet ditt. I denne opplæringen viser jeg deg hvordan du bygger luft
Slik demonterer du en datamaskin med enkle trinn og bilder: 13 trinn (med bilder)
Slik demonterer du en datamaskin med enkle trinn og bilder: Dette er en instruksjon om hvordan du demonterer en PC. De fleste grunnkomponentene er modulære og fjernes lett. Det er imidlertid viktig at du er organisert om det. Dette vil bidra til å hindre deg i å miste deler, og også i å gjøre monteringen igjen
Sensly Hat for Raspberry Pi luftkvalitet og gassdetektor V0.9: 8 trinn
Sensly Hat for Raspberry Pi luftkvalitet og gassdetektor V0.9: Sensly er en bærbar forurensningssensor som er i stand til å oppdage forurensningsnivået i luften ved hjelp av sine innebygde gassensorer for å samle informasjon om de forskjellige gassene som er tilstede. Denne informasjonen kan mates direkte til smarttelefonen din for sanntid