Innehållsförteckning:
- Steg 1: Hårdvara
- Steg 2: Hårdvara - kretskort
- Steg 3: LPWAN -protokollet: Sigfox Communication
- Steg 4: Programvarukonfiguration
- Steg 5: Programmera din STM32
- Steg 6: ThingSpeak - 1
- Steg 7: Kommunikation mellan Sigfox -modulen och ThingSpeak -plattformen
- Steg 8: ThingSpeak - 2
- Steg 9: Bonus - ThingTweet och React
- Steg 10: Det är din tur nu
- Steg 11: Referens och bibliografi
Video: AirCitizen - Övervakning av luftkvalitet: 11 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Hej allihopa
Idag lär vi dig hur du reproducerar vårt projekt: AirCitizen av AirCitizenPolytech Team!
--
Kommer från 'OpenAir / Vad är din luft?' Projekt, AirCitizen -projektet syftar till att göra det möjligt för medborgarna att aktivt utvärdera kvaliteten på sin närmaste miljö och i synnerhet luften de andas genom att erbjuda dem från:
Bygga
Förverkliga i "Fablabs" (digitala tillverkningslaboratorier) bärbara stationer med miljömätningar som integrerar olika billiga sensorer (t.ex. temperatur, luftfuktighet, tryck, NOx-gas, ozon eller partiklar PM10 och PM2.5).
Mäta
Utför in situ-mätningar för att markera spatiotemporal variation i miljövariablerna: å ena sidan, under kringgående kampanjer med stöd av geografer-klimatologer och å andra sidan på olika platser som presenterar en mångfaldsmiljö.
Dela med sig
Bidra till att förbättra kunskapen genom att dela dessa mätningar i en miljödatabas och på så sätt möjliggöra online kartläggning av luftföroreningar.
--
Konceptet är att skapa en autonom station som kan samla miljödata och skicka dem med SigFox -nätverket till en instrumentpanel.
Så å ena sidan kommer vi att visa dig hur du designar hårdvaran och å andra sidan hur du gör programvarudelen.
Steg 1: Hårdvara
Här är komponenterna som vi bestämde oss för att använda för att designa stationen:
-STM32 NUCLEO -F303K8 -> För mer information
-HPMA115S0 -XXX (Particles sensor PM2.5 & PM10) -> För mer information
- SHT11 eller SHT10 eller STH15 eller DHT11 (temperatur och relativ luftfuktighet) -> För mer information
- MICS2714 (NO2 -sensor, kvävedioxidgivare) -> För mer information
- Solpanel x2 (2W) -> För mer information
- Batteri LiPo 3, 7 V 1050 mAh -> För mer information
- Regulator LiPo Rider Pro (106990008) -> För mer information
- BreakOut SigFox BRKWS01 + 1 licens -> För mer information
- 7 motstånd (86, 6; 820; 1K; 1K; 4, 7K; 10K; 20K)
- 1 kondensator (100nF)
- 1 transistor (2N222).
! ! ! Du måste ta bort SB16 och SB18 på stm32 -nukleokortet för att förhindra störningar mellan HPMA och SHT11! !
I grund och botten är det så här du måste ansluta komponenter:
- Svetsas parallellt med solpanelerna.
- Anslut dem till LiPo Rider Pro och anslut också batteriet till LiPo Rider Pro.
- Liksom bilden ovan, anslut alla element till STM32. Anslut bara en temperatur- och luftfuktighetssensor inte 2! Glöm inte motstånd, kondensatorn och transistorn.
- Slutligen ansluter du STM32 till LiPo Rider Pro med en usb -kabel.
Nästa steg är ett alternativ till denna trådbundna.
Steg 2: Hårdvara - kretskort
Vi bestämde oss för att använda Autodesk Eagle för att designa kretskortet (PCB).
Du kan välja att ansluta antingen en DHT eller en SHT, vi valde att designa två fingeravtryck för dessa 2 sensorer för att byta sensor om det behövs.
I bilagan kan du ladda ner Eagle -befruktningsfilerna så att du enkelt kan göra det på egen hand.
Vi använder 5V -stiftet stm32 för att leverera enheten. I denna konfiguration drivs endast stm32 -kärnan.
Således kan vi använda MCU: s djupa sömnläge som ger en låg sömnström. I vänteläge faller hela sovströmmen under XXµA.
Steg 3: LPWAN -protokollet: Sigfox Communication
Sigfox är ett LPWAN -protokoll skapat av ett franskt telekomföretag - SIGFOX
Det gör det möjligt för fjärrenheter att ansluta med hjälp av ultratunnband (UNB) -teknologi. De flesta av dessa kräver endast låg bandbredd för att överföra små mängder data. Nätverk kan bara hantera cirka 12 byte per meddelande och samtidigt inte mer än 140 meddelanden per enhet och dag.
För många av IOT-applikationer är de traditionella mobiltelefonsystemen för komplexa för att möjliggöra mycket låg energidrift och för kostsamma för att vara möjliga för många små lågkostnadsnoder … SIGFOX-nätverket och -tekniken riktar sig till lågkostnadsmaskinen applikationsområden där bred täckning krävs.
För AirCitizen är formatet för detekterade data enkelt och mängden data korrekt för att använda Sigfox för att översätta data som detekteras från sensorer till vår IOT -plattform - ThingSpeak.
Vi kommer att introducera användningen av Sigfox i följande steg.
Steg 4: Programvarukonfiguration
Efter realiseringen av vår krets, låt oss gå vidare till utvecklingen av vår STM32 F303K8 mikrokontroller.
För mer enkelhet kan du välja att programmera i Arduino.
Steg 1: Om du ännu inte har installerat Arduino IDE, ladda ner och installera den från den här länken. Se till att du väljer rätt operativsystem.
Länken: Ladda ner Arduino
Steg 2: Efter installationen av Arduino IDE öppnar du och laddar ner de paket som krävs för STM32 -kortet. Detta kan göras genom att välja Arkiv -> Inställningar.
Steg 3: Om du klickar på Inställningar öppnas dialogrutan som visas nedan. Klistra in länken nedan i den extra textrutan för Boards Manager URL:
github.com/stm32duino/BoardManagerFiles/ra…
och tryck på OK.
Steg 4: Gå nu till Tool -> Boards -> Board Manager. Detta öppnar dialogrutan Boards manager, söker efter "STM32 Cores" och installerar paketet som visas (STMicrolectronics -paketet).
Steg 5: Efter paketet är installationen klar. Gå till Verktyg och rulla ner för att hitta "Nucleo-32-serien". Se sedan till att varianten är "Nucleo F303K8" och ändra uppladdningsmetoden till "STLink".
Steg 6: Anslut nu ditt kort till datorn och kontrollera till vilken COM -port kortet är anslutet till med hjälp av enhetshanteraren. Välj sedan samma portnummer i Verktyg-> Port.
Du är nu redo att programmera din STM32 F303K8 med Arduino!
Steg 5: Programmera din STM32
När konfigurationen är klar måste du programmera din mikrokontroller för att samla in och skicka data.
Steg 1: Kontrollera påverkan av I/O och mäter tidsstämpel i "Definiera" delen av koden.
Steg 2: Ladda upp koden ovan till stm32, öppna den seriella bildskärmen och återställ enheten. "AT" -kommandot ska visas på skärmen, om inte, kontrollera I/O -deklarationen.
Du kan få en uppfattning om riktigheten i din data genom att konsultera de franska lagstiftningsstandarderna i bilagan.
Låt oss gå vidare till konfigurationen av instrumentpanelen.
Steg 6: ThingSpeak - 1
Innan du konfigurerar hur du omdirigerar data från vår station till ThingSpeak -plattformen måste du skapa ett ThingSpeak -konto.
Registrera dig: ThingSpeak webbplats
Steg 1: Klicka nu på "Ny kanal". Detta öppnar ett formulär. Ange ett namn och en beskrivning (om det behövs).
Skapa 5 fält:
- Fält 1: pm2, 5
- Fält 2: pm10
- Fält 3: temperatur
- Fält 4: luftfuktighet
- Fält 5: NO2
Dessa titlar kommer inte att vara titlarna på våra sjökort.
Om du behöver ett exempel, se bilden ovan.
Du behöver inte fylla i fler fält men det kan vara intressant om du anger en plats.
Rulla ner och "Spara kanal".
Steg 2: AirCitizen Station Channel.
Nu kan du se en sida med 5 diagram. Genom att klicka på penn -symbolen kan du ändra egenskaperna för en graf.
Resultatet är den andra bilden ovan.
Vid detta steg är dessa grafer privata. Du kommer att kunna göra dem offentliga när data har tagits emot.
Steg 3: Efter konfigurationen av dina grafer. Gå till fliken "API -nycklar". Titta på API -förfrågningsdelen och närmare bestämt det första fältet, "Uppdatera ett kanalflöde". Observera API -nyckeln.
Du kommer att ha något så här:
Hämta
Du kan nu gå till nästa kapitel.
Steg 7: Kommunikation mellan Sigfox -modulen och ThingSpeak -plattformen
För din information, observera att varje Sigfox -modulkort har ett unikt nummer skrivet på kortet och ett PAC -nummer.
För att ta emot data på ThingSpeak bör du omdirigera dem.
Data går från stationen till Sigfox -backend och kommer att omdirigeras till ThingSpeak -servern.
Se den första bilden ovan för förklaringar.
Steg 1: Vi kommer inte att förklara hur man registrerar sig på Sigfox på grund av många självstudier på internet.
Gå till Sigfox Backend.
Klicka på "Enhetstyp", klicka sedan på raden i ditt kit och välj "Redigera".
Gå nu till avsnittet "Återuppringning" och klicka på "Ny", "Anpassad återuppringning".
Steg 2:
Du borde vara på konfigurationssidan:
Typ: DATA och UPLINK
Kanal: URL
Skicka dubblett: ingen
Anpassad nyttolastkonfiguration: Ställ in datakällan och bestäm dataformuläret. Du bör skriva så här:
VarName:: Typ: NumberOfBits
I det här fallet har vi 5 värden som heter pm25, pm10, temperatur, luftfuktighet och NO2.
pm25:: int: 16 pm10:: int: 16 temperatur:: int: 8 luftfuktighet:: uint: 8 NO2:: uint: 8
URL -mönster: Detta är syntaxen. Använd den tidigare hittade API -nyckeln och sätt in den efter "api_key ="
api.thingspeak.com/update?api_key=XXXXXXXXXXXXXX&field1={customData#pm25}&field2={customData#pm10}&field3={customData#temperature}&field4={customData#humidity}&field5={customData#
Använd HTTP -metod: GET
Skicka SNI: PÅ
Rubriker: Inga
Klicka nu på "Ok".
Din återuppringning till ThingSpeak API är nu konfigurerad! (Framställning vid andra bilden ovan).
Steg 8: ThingSpeak - 2
Nu kan du vara mer kräsen när det gäller att ändra axlarnas lägsta och högsta värde.
Klicka vid behov på pennlogotypen längst upp till höger i en graf.
Typiska värden:
PM 2, 5 & PM 10 = ug/m^3
Temperatur = ° C
Luftfuktighet = %
Kvävedioxid = ppm
Du borde ha något liknande de två bilderna ovan.
Du kan också lägga till några andra widgets som "Numeric Display" eller "Gauge".
Slutligen, för att göra din kanal offentlig, gå till fliken "Delning" och välj "Dela kanalvy med alla".
Steg 9: Bonus - ThingTweet och React
Valfritt: Tweeta om ett villkor är uppfyllt!
Steg 1: Skapa ett twitterkonto eller använd ditt personliga twitterkonto.
Registrera dig - Twitter
Steg 2: Gå till "Apps" i Thingspeak och klicka sedan på "ThingTweet".
Länka ditt twitterkonto genom att klicka på "Länka Twitter -konto".
Steg 3: Gå nu tillbaka till "Appar" och klicka sedan på "Reagera".
Skapa en ny React genom att klicka på "New React".
Med exempel:
Reagera namn: Temperatur över 15 ° C
Villkorstyp: Numerisk
Testfrekvens: O n infogning av data
Skick, om kanal:
Fält: 3 (temperatur)
Tecken: är större än
Värde: 15
Åtgärd: ThingTweet
Tweet sedan: Åh! Temperaturen är högre än 15 ° C
använder Twitter -konto:
Alternativ: Kör åtgärd varje gång villkoret är uppfyllt
Klicka sedan på "Save React".
Du kommer nu att twittra om villkoret är uppfyllt och många andra villkor kan konfigureras som beroende på nivån på PM10.
Steg 10: Det är din tur nu
Slutligen har du nu alla element för att reproducera din egen AirCitizen Station!
Video: Du kan titta på en video där vi presenterar vårt arbete.
Vår ThingSpeak -plattform: AirCitizenPolytech Station
--
Tack för din uppmärksamhet !
AirCitizen Polytech -teamet
Steg 11: Referens och bibliografi
https://www.sigfox.com/en
https://backend.sigfox.com/auth/login
Rekommenderad:
Spåra luftkvalitet med Grafana och Raspberry Pi: 7 steg
Spåra luftkvalitet med Grafana och Raspberry Pi: Jag letade efter ett litet litet IOT-projekt och en vän rekommenderade att jag kollade in denna handledning: https: //dzone.com/articles/raspberry-pi-iot-sensor…Jag rekommenderar starkt rekommendera att följa handledningen för att följa med när du konfigurerar en Raspberry Pi för övervakning.
Mät luftkvalitet: 17 steg
Mät luftkvalitet: Luftkvalitet och fina partiklar: De suspenderade partiklarna (betecknade "PM" för "partiklar") är i allmänhet de fina fasta partiklar som luften bär (Wikipedia). Fina partiklar tränger djupt in i lungorna. De kan orsaka i
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter - Rc helikopter - RC -plan med Arduino: 5 steg (med bilder)
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter | Rc helikopter | Rc -plan med Arduino: Att driva en Rc -bil | Quadcopter | Drone | RC -plan | RC -båt, vi behöver alltid en mottagare och sändare, antag att för RC QUADCOPTER behöver vi en 6 -kanals sändare och mottagare och den typen av TX och RX är för dyr, så vi kommer att göra en på vår
Hur man tar isär en dator med enkla steg och bilder: 13 steg (med bilder)
Hur man tar isär en dator med enkla steg och bilder: Detta är en instruktion om hur man demonterar en dator. De flesta av de grundläggande komponenterna är modulära och lätt att ta bort. Det är dock viktigt att du är organiserad kring det. Detta hjälper dig att inte förlora delar, och även för att göra ommonteringen
Sensly Hat för Raspberry Pi luftkvalitet och gasdetektor V0.9: 8 steg
Sensly Hat för Raspberry Pi luftkvalitet och gasdetektor V0.9: Sensly är en bärbar föroreningssensor som kan upptäcka föroreningsnivåerna i luften med hjälp av sina inbyggda gassensorer för att samla information om de olika gaserna som finns. Denna information kan matas direkt till din smartphone för realtid