Innholdsfortegnelse:
- Trinn 1: Design
- Trinn 2: Weathercloud
- Trinn 3: Deleliste
- Trinn 4: Verktøy
- Trinn 5: Kontrollkortdesign
- Trinn 6: Lodding
- Trinn 7: Lag strålingsskjoldet
- Trinn 8: Kontrollboks
- Trinn 9: PCB -montering
- Trinn 10: Montering + ledninger
- Trinn 11: Vær lykkelig
- Trinn 12: Koding og feilsøking
- Trinn 13: Stasjonsmontering
- Trinn 14: Installasjon
- Trinn 15: Strøm, Uplink -oppsett og feilsøking
- Trinn 16: Live Happily Ever After
Video: ESP32 Weathercloud værstasjon: 16 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
I fjor publiserte jeg min største Instructable til dags dato kalt Arduino Weathercloud Weather Station. Det var veldig populært vil jeg si. Den ble omtalt på Instructables hjemmeside, Arduino -bloggen, Wiznet museum, Instructables Instagram, Arduino Instagram og også på Weathercloud Twitter. Det var til og med en av de 100 beste instruktørene i 2018! Og det var en veldig stor avtale for en liten produsent som meg. Jeg var glad for å se så mange positive reaksjoner, og jeg leste nøye gjennom hver eneste kommentar og tips. I omtrent 8 måneder har jeg jobbet med denne nye, raffinerte stasjonen. Jeg fikset og forbedret forskjellige ting. Jeg prøvde å gjøre det mindre, enklere, smartere, kjøligere og la den akseptable kostnaden være 150 € (165 $). Stasjonen er montert på en robotgård nær Senec, Slovakia. Her er gjeldende data.
Jeg vil prøve å forklare hele tankeprosessen min her, så hvis du bare vil komme deg rett i bygget, hopper du rett til trinn 3.
Funksjoner:
- måling av 12 meteorologiske verdier
- bruk av 8 forskjellige sensorer
- IoT - data er offentlige på skyen
- 5V 500mA drift
- kommunikasjon via Wi-Fi
- helt værbestandig
- ser kult ut
- det er DIY
Tusen takk til Lab Cafe makerspace for å gi plass og støtte mens du bygde denne stasjonen. Gå og sjekk dem!
Fotokreditt: ME (selvfølgelig) + Viktor Demčák
OPPDATERING 18.7.2020: Hei alle sammen! Det er lenge siden. Mange av dere skrev til meg om flere problemer med maskinvare og programvare. Den nye maskinvaren vil være klar om bare et par uker, men til da slipper jeg ny fastvare. Denne programvaren vil bidra til å eliminere noen av problemene. Gå til trinn 12 for å lære mer. Og viktigst av alt, nyt!
Trinn 1: Design
Å designe en værstasjon er en lang og gjennomtenkt prosess. Du har så mange alternativer å velge mellom. Dette er de viktigste tingene du bør tenke på når du designer en værstasjon (eller i det minste jeg gjorde det):
1) BUDSJETT. Dette er ganske selvforklarende.
2) STED. Dette er veldig viktig siden det påvirker installasjonen så vel som kommunikasjonsteknologien og den nødvendige strømkilden. Eksterne værstasjoner trenger sendere med lang rekkevidde og en selvbærende strømkilde, for eksempel et solcellepanel.
3) MÅLE VARIABLER. Vil du bare måle temperatur eller fuktighet? Deretter kan du sette sonden nesten hvor som helst. Men hvis du vil måle nedbør, vind, solstråling, UV -indeks eller andre ting relatert til sol eller nedbør, kan sensorene ikke være i en skygge og kan ikke blokkeres verken fra oppside eller fra sidene.
4) NØYAKTIGHET. Vil du at målingene dine skal være nøyaktig kalibrert og sammenlignbare med det nasjonale værinstituttet, eller er rettere amatørverdier nok for deg?
Så nå bør du ha et ganske godt bilde av hva du vil. Så la oss komme til tegnebrettet! Her er noen grunnleggende regler jeg tenkte på:
1) BESKYTT TEMPERATURSENSOREN. Du må absolutt gjøre dette. Varme kan bevege seg på så mange måter at den kan utstråle og lede gjennom strukturen til selve stasjonen. Så prøv å belegge alle metalldelene, og legg temperatursensoren i et strålingsskjerm. Jeg vet, strålestasjonen min er ikke perfekt, men det hjelper.
2) SETT VINDESENSOREN HØYT. Vindsensorer skal være plassert 10 meter høye etter internasjonale standarder. Jeg har ikke engang penger til å kjøpe en 10 m stolpe, så et rør på 2 meter over taket er nok for meg.
3) KLAR OMRÅDE OG OVER STASJONEN. Hvis du vil måle sollys, kan du ikke ha sensoren i en skygge. Hvis du vil måle nedbør, kan du ikke ha noe som blokkerer dråpene. Så sørg for at området rundt og over stasjonen er ryddet.
La oss fortsette. Så for stasjonen min bestemte jeg meg for at jeg vil måle disse variablene: Lufttemperatur, bakketemperatur, relativ fuktighet, atmosfæretrykk, varmeindeks, duggpunkt, vindkjøling, nedbør, solstråling, UV -indeks, vindhastighet og vindretning. Dette er totalt 8 sensorer som det er 3 små, PCB-monterbare moduler og 5 eksterne sonder. Jeg trenger to separate mikrokontrollere, en for håndtering av bare nedbørsmålinger og den andre for alt annet.
Jeg bestemte meg for å sette alt jeg kan på en enkelt PCB. Jeg legger kretskortet inne i en IP65 -boks med gjennomsiktig deksel, slik at sollys kan passere gjennom solstråling og UV -indekssensorer. Alle de andre sensorene blir koblet til hovedkontrollboksen med en kabel. Så det er det for mitt design.
Trinn 2: Weathercloud
"ESP32 Weathercloud Weather Station" Hva er Weatherclud? Weathercloud er et stort nettverk av værstasjoner som rapporterer data i sanntid fra hele verden. Det er gratis, og det er mer enn 10 000 værstasjoner koblet til det. For det første hadde jeg mitt eget HTML -nettsted der alle dataene ble sendt, men det er vanskelig å lage ditt eget nettsted og grafikk, og det er mye lettere å bare sende alle dataene til en stor skyplattform som har fin grafikk og stabile servere. Jeg søkte etter hvordan jeg sendte data til weathercloud, og jeg fant ut at du enkelt kan oppnå det ved å enkelt ringe. Det eneste problemet med Weathercloud er at det med en gratis konto lar deg sende data bare hvert tiende minutt, men det burde ikke være et problem for de fleste bruksområdene. Du må opprette en Weathercloud -konto for å få det til å fungere. Deretter må du opprette en stasjonsprofil på nettstedet deres. Når du oppretter din værstasjonsprofil på Weathercloud, får du en Weathercloud -ID og en Weathercloud -nøkkel. Behold disse fordi Arduino trenger dem for å vite hvor de skal sende data.
Trinn 3: Deleliste
OK, så for dette prosjektet trenger du alt det som er pent oppført i min Google Docs BOM her.
ANSLÅTT PROJEKTKOSTNAD: 150 €/165 $
Trinn 4: Verktøy
Disse verktøyene kan komme godt med (selv om de fleste av dem er absolutt nødvendige):
Laserskjærer
Sveiser
Stålsag
Wire stripper
Bormaskin
Batteri drill
Loddejern
Tang
Skrutrekkere
Limpistol
Multimeter
Trebor
Trinn 5: Kontrollkortdesign
Jeg gikk med en veldig sentralisert arkitektur. Dette betyr at alt som kan være, ikke bare er i en boks, men på ett kretskort. Jeg har nylig lært hvordan man designer PCB, noe som er en veldig verdifull og nyttig ferdighet. Alle prosjektene er mye penere og mer presise og til og med elegante på en måte. Det er også veldig praktisk: du sender bare filene dine til Kina, og de gjør alt ledningsarbeid og sender hele kortet til deg. Deretter lodder du bare komponentene på plass, og du er ferdig.
PCB har begge mikrokontrollerne i denne stasjonen: ESP32 (hovedkontrollenheten) og Arduino NANO (nedbørsprosessoren). Den har også noen av sensorene som inkluderer: BME280, BHT1750 og ML8511. Så er det DS3231 RTC -modulen. Sist men ikke minst er det noen motstander og skruekontakter.
Jeg designet mitt brett i Autodesk Eagle. Bare last ned den medfølgende Gerber -filen kalt "ESP32 weather station.zip" og last den opp til JLC PCB. Eller hvis du vil redigere den, kan du laste ned "ESP32 værstasjon schematic.sch" og "ESP32 værstasjon board.brd" -filene og redigere dem i Eagle. Jeg anbefaler på det sterkeste å registrere Circuit Board Design Class fra Instructables først.
Trinn 6: Lodding
Ok alle sammen, dere har sikkert gjort dette før. Dette vakre brettet som jeg designet har fine fotavtrykk på silketrykk på det. Når du har det, bør lodding være et stykke kake fordi du ser nøyaktig hvor det går. Det er bare THT -komponenter med standard 0,1 avstand. Så bare fortsett og lodde brettet fordi du er flink og du kan gjøre det selv! Det bør ikke ta deg mer enn en halv time.
OPPDATERING 18.7.2020: RTC -modulen kreves ikke lenger. Det er ikke nødvendig å montere den på brettet. Du kan lære mer i trinn 12.
Trinn 7: Lag strålingsskjoldet
Da jeg bygde dette, sa jeg til meg selv "Ok, du har allerede gjort dette to ganger, det er ikke en sjanse for at du vil rote det nå." Og det gjorde jeg ikke.
Et solstrålingsskjerm er en veldig vanlig ting som brukes på værstasjoner for å blokkere direkte solstråling og derfor redusere feil i målt temperatur. Den fungerer også som en holder for temperatursensoren. Strålingsskjold er veldig nyttig, men er vanligvis laget av stål og de er dyre, så jeg bestemte meg for å bygge et eget skjold. Jeg lagde en Instructable som viser hvordan man lager et stråleskjold som dette.
Trinn 8: Kontrollboks
Hoveddelen av denne stasjonen er åpenbart kontrollboksen. Den inneholder de primære og sekundære mikrokontrollerne, noen av sensorene, RTC og noen passive komponenter. Alt dette i en praktisk IP65 -pakke. Boksen har et gjennomsiktig deksel slik at sollys kan passere gjennom UV- og solstrålingssensorene.
Før vi kan montere kretskortet, må vi klargjøre esken for kablene. Det er fem strøm- og datakabler som går inn i esken. For å opprettholde de vanntette egenskapene til stasjonen, trenger vi vanntette kabelgjennomføringer. Nærmere bestemt en PG7 for strømkabelen, den andre PG7 for vind- og regnsensorene og den tredje PG11 for begge temperatursensorene. Jeg satte den større (PG11) kjertelen i midten av den ene veggen i esken og de to mindre (PG7) kjertlene i den motsatte veggen. Så prosessen med å endre boksen er som følger:
1) Merk senteret for hvert hull med en markør.
2) Bor et lite hull med et tynt bor.
3) Øk størrelsen på hullet sakte med en trebor.
4) Fjern hullene.
5) Sett inn og fest en kabelgjennomføring i hvert av hullene.
Trinn 9: PCB -montering
Siden jeg bare har prøveversjonen av Autodesk Eagle, kan jeg ikke designe PCB -er som er større enn 8 cm. Alt passer til dette brettet, så det er greit. Det eneste problemet er med kontrollboksen. Brettmonteringshullene i esken er 14 cm fra hverandre. Dette betyr at vi kommer til å trenge en holder til kretskortet. Dette kan være et brett (tre/plast/metall) som vi skal montere kretskortet på. Deretter fester vi holderkortet til kontrollboksen. På denne måten blir kretskortet festet til kontrollboksen.
Du kan lage holderen uansett hvor du vil. Du kan lage den manuelt fra en plate av tre eller stål, du kan laserskjære den (som meg) eller du kan til og med 3D -skrive den ut. Jeg inkluderer dimensjonene på brettet, så valget er ditt. Hvis du har tilgang til en laserskjærer, er laserskjæring det enkleste alternativet. Du finner laserskjæringsfilene her både i.pdf- og.svg -format.
Som du kan se gikk jeg gjennom flere varianter av holderen. Til slutt gikk jeg med akryl, fordi den ikke påvirkes av fuktighet (som tre) og den tiltrekker seg ikke varme (som stål).
Trinn 10: Montering + ledninger
Dette kommer til å bli ganske enkelt å gjøre, men ganske vanskelig å forklare fordi det er mange små trinn. La oss komme rett på det da:
1) Sett alle kablene i det angitte hullet. Ikke fest kabelgjennomføringene ennå.
2) Koble alle ledningene fra vindsensorene, regnsensoren og fra strømkabelen i henhold til det medfølgende koblingsskjemaet. Ikke koble kabler fra temperatursensorene ennå.
3) Hvis det er montert, fjerner du kretskortfeste. Vri deretter kretskortet slik at kablene går langs undersiden. Fest kretskortfeste slik at kablene er festet i en sandwich mellom kretskortet og festet.
4) Sett inn og skru inn kretskortfeste med kretskortet.
5) Fest de to mindre (PG7) kabelgjennomføringene. Ikke sikre den større ennå.
6) Sett inn og koble kablene fra temperatursensorene i henhold til det medfølgende koblingsskjemaet.
7) Sett på toppdekselet og skru det på plass.
Trinn 11: Vær lykkelig
Dette trinnet er et slags sjekkpunkt. På dette tidspunktet burde du ha laget deg noe som ligner det du ser på bildet. Hvis det er riktig, vær glad. Fortsett, få deg en matbit og hvile fordi dette ikke bare er et lite skritt for en mann, men et stort sprang for menneskeheten. Hvis ikke, se gjennom de foregående trinnene og finn problemet. Hvis det ikke hjelper, kommenter eller send meg en melding.
Så når du er frisk og i form igjen, kan du gå videre til kodings- og feilsøkingsdelen.
Trinn 12: Koding og feilsøking
Yaaaaay, alle elsker koding! Og selv om du ikke gjør det, spiller det ingen rolle fordi du bare kan laste ned og bruke koden min.
For det første må du legge til ESP32 dev -modulen til styringslederen din. For å gjøre dette må du laste ned en JSON -pakke og installere den gjennom styringslederen. Se denne opplæringen av Random Nerd Tutorials.
Nå må du laste ned alle de viktige bibliotekene. Jeg opprettet ZIP -arkivet "Libraries.zip" for at du skal gjøre det enklere. Ikke importer arkivet til Arduino IDE som et klassisk bibliotek. I stedet trekker du ut arkivet og flytter alle filene til Dokumenter/Arduino/biblioteker. Nå kan du laste ned alle fire programmene mine: "Wi-Fi_Weathercloud_API_test.ino", "System_test.ino", "ESP32_Weathercloud_Weather_Station.ino".
Åpne "Wi-Fi_Weathercloud_API_test.ino". Du må endre et par ting. For det første må du erstatte "SSID" og "KEY" med Wi-Fi-nettverkets SSID (navn) og passord. For det andre må du erstatte "WID" og "KEY" med Weathercloud ID og KEY du burde ha fra trinn 2. Du må også gjøre det samme med "ESP32_Weathercloud_Weather_Station.ino". Fortsett og last opp koden til ESP32. Du bør se de forhåndsdefinerte dataene som kommer opp på Weathercloud -nettstedet. Hvis det er riktig, fortsett.
Last opp "System_test.ino" til ESP32 og "I2C_rainfall_sender" til Arduino NANO. Åpne seriekonsollen til ESP32 på 115200 baud. Du bør nå se sensordata som kommer hvert 15. sekund på skjermen. Lek med sensorene. Lys et lys i solstrålingssensoren, blåse inn i vindhastighetssensoren, varme temperatursonden … På denne måten kan du teste om alt fungerer. Hvis du konkluderer med at alt er som det skal være, fortsett.
Last opp "ESP32_Weathercloud_Weather_Station.ino" til ESP32. Hvis du har gjort alt riktig, bør du se de virkelige dataene fra stasjonen som kommer inn på Weathercloud -siden hvert 10. minutt. Hvis dette fungerer betyr det at stasjonen din nå er fullt operativ og det eneste du trenger å gjøre er å installere den et fint sted.
OPPDATERING 18.7.2020: Alle sekundær-/testprogrammene er de samme. Men hovedprogrammet til værstasjonen ble oppgradert. Kodens struktur er mye tydeligere enn før. Du kan angi alle nødvendige parametere i begynnelsen av koden. ESP32 får nå tid fra en NTP -server, så RTC -modulen er ikke nødvendig lenger. Sist, men ikke minst, kjører ESP32 nå en dyp søvnprosedyre når den ikke måler og sender data. Dette vil redusere strømforbruket, og det vil også bidra til å forlenge levetiden til værstasjonen. For å bruke den nye koden, bare last ned den oppgraderte "ESP32_Weathercloud_Weather_Station.ino" -koden og den oppdaterte ZIP -filen med biblioteker (Instructables godtar den ikke, så her er en Google Disk -lenke). Nyt!
Trinn 13: Stasjonsmontering
Så etter at du har bekreftet at stasjonen din fungerer, må du designe og lage et feste for den. Den må være sterk, holdbar, kompakt og sist men ikke minst må den være fin. Ta dette trinnet mer av en anbefaling eller inspirasjon enn presise instruksjoner. Jeg vet ikke hvordan det ser ut der du skal montere det. Du må bli litt mer kreativ. Men hvis du har et flatt tak med et metallrør på 5 cm i diameter som stikker ut, fortsett og gjør som jeg gjorde. Denne stasjonen har to bokser. Så jeg bestemte meg for å sette dem begge ved siden av hverandre på et metallpanel. Den må monteres på et metallrør med en diameter på 5 cm. Så jeg la et rør med 5 cm indre diameter på bunnen av panelet. Begge vindsensorene må være langt fra hverandre fra resten av stasjonen. Så legg to 40 cm lange rør på hver side av stasjonen og to 10 cm lange rør på enden av hver. Strålingsskjoldet bør monteres under panelet for å gi ekstra skygge. For dette satte jeg en 7 x 15 cm L brakett på det tykke metallrøret.
Her er alle de nødvendige metalldelene en etter en [dimensjoner i mm]:
1x rør, indre diameter 50, lengde 300
1x panel, 250 x 300, tykkelse 3
1x L -brakett, 75 og 150 armer
2x rør, ytre diameter 12, lengde 400
2x rør, indre diameter 17, lengde 100
Når du har alle disse metalldelene, kan du sveise dem på plass i henhold til 3D -modellen jeg ga. Deretter må du bore alle hullene for boksene og for strålingsskjoldet. Deretter er det bare å male det med maling for metall. Jeg anbefaler å gå med hvitt, fordi det absorberer minst varme fra alle fargene. Det er det du har fått et stasjonsfeste som du kan montere stasjonen på!
Trinn 14: Installasjon
Ta tak i værstasjonen, braketten og alle verktøyene dine fordi du trenger dem alle. Sett deg inn i en bil (eller en buss jeg ikke bryr meg om) og kom til den fremtidige plasseringen av stasjonen din. Til slutt kan du montere stasjonen.
Å få værstasjonen til å fungere på verkstedet ditt er en ting, men å få den til å fungere under tøffe forhold i virkeligheten er en annen. Installasjonsprosedyren avhenger veldig av bygningen du monterer stasjonen din på. Men hvis du har holderen fra forrige trinn og kraftig drill, burde det være greit. Du trenger bare å stikke det tykke røret fra festet på det litt tynnere røret på taket. Deretter er det bare å bore gjennom begge rørene og sikre dem med en lang skrue. Monter alle esker og sensorer. Det er det. Stasjonen din er nå installert.
Vi gjorde dette på en regnværsdag. Det var veldig vanskelig, men vi hadde ingen andre alternativer på grunn av konkurransens frist.
Trinn 15: Strøm, Uplink -oppsett og feilsøking
Stasjonen din er fysisk installert, men den er ikke online ennå. La oss gjøre det nå. Du må drive stasjonen på en eller annen måte. Du må være litt kreativ her. Du kan sette en adapter inne i huset og trekke en kabel gjennom vinduet. Du kan begrave kabelen under jorden. Du kan drive den via et solcellepanel. Det eneste som betyr noe er at det er 5V 500mA på pinnene på strømkabelen som kommer fra kontrollboksen. Husk at alt må være værbestandig! Når du har stasjonen din slått på, kan du gå videre til oppsett og feilsøking av oppkoblingen.
Uplink Setup får i utgangspunktet ESP32 til å koble til Wi-Fi-nettverket. Hvis det er hjemme hos deg, burde det være greit. Hvis det er i en garasje eller lenger fra hverandre, kan det hende du trenger en Wi-Fi-forlenger eller til og med et tilpasset Wi-Fi-nettverk. Deretter følger feilsøkingsfasen. Du kan bare laste opp den endelige koden og håpe på det beste, men jeg anbefaler virkelig å teste hver av sensorene en etter en for å være sikker på at alt fungerer som det skal. I utgangspunktet det samme som i trinn 12. Hvis alt fungerer som det skal, kan du trykke på UPLOAD -knappen og koble fra USB -kabelen og lukke kontrollboksen.
Trinn 16: Live Happily Ever After
Jepp, dette var sååå siste øyeblikk gutta. Jeg la merke til Sensors -konkurransen bare 10 dager før den tok slutt. Samme kveld måtte jeg ringe 10 telefoner for å ordne alt som kreves for å fullføre stasjonen. Den var ikke ferdig enda. Dagen vi skulle installere stasjonen kom en gigantisk storm som forstyrret planene våre. Jeg trengte å fullføre all teksten før stasjonen var ferdig. Stasjonen ble endelig installert akkurat i dag, samme dag som jeg publiserte denne Instructable.
Det er sikkert mange ting som kunne vært gjort bedre her, men det er mange nyttige ting du kan lære her og bruke dem når du bygger din egen stasjon. Hvis du gjorde alle trinnene riktig, har du nå en fullt operativ ESP32 skyværstasjon. Og det er noe! Alt hardt arbeid betalte seg (jeg håper det gjorde det). Du kan se dataene fra stasjonen min her. Hvis du har noen spørsmål eller forslag, vil jeg gjerne høre dem i kommentarfeltet nedenfor.
Ja, og hvis du likte dette prosjektet, ville jeg sette stor pris på om du stemte på meg i Sensors -konkurransen. Tusen takk og kos deg !!!
Førstepremie i sensorkonkurransen
Anbefalt:
Profesjonell værstasjon som bruker ESP8266 og ESP32 DIY: 9 trinn (med bilder)
Profesjonell værstasjon ved bruk av ESP8266 og ESP32 DIY: LineaMeteoStazione er en komplett værstasjon som kan grensesnittes med profesjonelle sensorer fra Sensirion samt noen Davis Instrument -komponent (regnmåler, vindmåler) Prosjektet er beregnet som en DIY værstasjon, men bare krever
NaTaLia værstasjon: Arduino solcelledrevet værstasjon gjort den riktige måten: 8 trinn (med bilder)
NaTaLia værstasjon: Arduino solcelledrevet værstasjon gjort på riktig måte: Etter 1 års vellykket drift på 2 forskjellige steder deler jeg mine solcelledrevne værstasjonsprosjektplaner og forklarer hvordan det utviklet seg til et system som virkelig kan overleve over lang tid perioder fra solenergi. Hvis du følger
Komplett DIY Raspberry Pi værstasjon med programvare: 7 trinn (med bilder)
Komplett DIY Raspberry Pi værstasjon med programvare: I slutten av februar så jeg dette innlegget på Raspberry Pi -nettstedet. http://www.raspberrypi.org/school-weather-station-…De hadde opprettet Raspberry Pi værstasjoner for skoler. Jeg ville helt ha en! Men på det tidspunktet (og jeg tror fremdeles i skrivende stund
Arduino Weathercloud værstasjon: 16 trinn (med bilder)
Arduino Weathercloud Weather Station: Jeg lagde en værstasjon koblet til internett. Den måler temperatur, fuktighet, trykk, nedbør, vindhastighet, UV -indeks, og den beregner få flere viktige meteorologiske verdier. Den sender deretter disse dataene til weathercloud.net, som har en fin graf
ESP32 WiFi værstasjon med en BME280 -sensor: 7 trinn (med bilder)
ESP32 WiFi værstasjon med en BME280 -sensor: Kjære venner, velkommen til en annen opplæring! I denne opplæringen skal vi bygge et WiFi -aktivert værstasjonsprosjekt! Vi skal bruke den nye, imponerende ESP32 -brikken for første gang sammen med en Nextion -skjerm. I denne videoen skal vi