Indholdsfortegnelse:

Arduino Weathercloud Weather Station: 16 trin (med billeder)
Arduino Weathercloud Weather Station: 16 trin (med billeder)

Video: Arduino Weathercloud Weather Station: 16 trin (med billeder)

Video: Arduino Weathercloud Weather Station: 16 trin (med billeder)
Video: Ambient Weather Review WS-2902 Osprey WiFi Solar Powered Wireless Weather Station 2024, November
Anonim
Arduino Weathercloud vejrstation
Arduino Weathercloud vejrstation

Jeg lavede en vejrstation forbundet til internettet. Det måler temperatur, fugtighed, tryk, nedbør, vindhastighed, UV -indeks og det beregner få mere vigtige meteorologiske værdier. Den sender derefter disse data til weathercloud.net, som har flot grafik og UX. Det har også et vejrwebkamera. Det kostede mig omkring 140 €. Jeg lavede denne station som mit skoleprojekt. Stationen er monteret på min skole i Bratislava, Slovakiet. Her er de aktuelle data.

Fotokredit: Mimo magazín. Brugt med tilladelse.

Bemærk: Jeg har arbejdet på dette projekt i over to år nu. Denne instruktive er bare en reupload af en instruerbar, som jeg udgav et år tidligere, men der har været så mange ændringer, at jeg besluttede at lave en ny instruerbar. Desuden ser ingen nogensinde på et-årige instruktører

OPDATERING 14.12.2018: Hej! Jeg tilføjede et vindmåler (vindmåler) til min station. Der er lidt ny tekst og fotos, så sørg for at tjekke det ud

Trin 1: Weathercloud

Weathercloud
Weathercloud

Først og fremmest, hvad er Weatherclud? Weathercloud er et stort netværk af vejrstationer, der rapporterer data i realtid fra hele verden. Det er gratis, og der er mere end 10 000 vejrstationer forbundet til det. For det første havde jeg mit eget HTML -websted, hvor alle data blev sendt, men det er svært at lave dit eget websted og grafik, og det er meget lettere at bare sende alle data til en stor skyplatform, der har flot grafik og stabile servere. Jeg søgte, hvordan jeg sendte data til weathercloud, og jeg fandt ud af, at du nemt kan opnå det ved et simpelt GET -opkald. Det eneste problem med Weathercloud er, at det med en gratis konto kun lader dig sende data hvert tiende minut, men det burde ikke være et problem for de fleste anvendelser. Du skal oprette en Weathercloud -konto for at få det til at fungere. Derefter skal du oprette en stationsprofil på deres websted. Når du opretter din vejrstationsprofil på Weathercloud, får du et Weathercloud -id og en Weathercloud -nøgle. Behold disse, fordi Arduino skal bruge dem til at vide, hvor de skal sende data.

Trin 2: Deleliste

Liste over dele
Liste over dele
Liste over dele
Liste over dele
Liste over dele
Liste over dele
Liste over dele
Liste over dele

Google -ark Stykliste

ANSLÅET PRIS: 140 €/150 $

Trin 3: Værktøjer

Værktøjer
Værktøjer

Disse værktøjer kan være nyttige:

wire stripper

batteri boremaskine

loddekolbe

tang

skruetrækkere

limpistol

multimeter

sav

træbor

fil

Trin 4: DS18B20 solstrålingsskærm

Image
Image
Terminalboks
Terminalboks

Et solstrålingsskjold er en meget almindelig ting, der bruges i meteorologiske stationer til at blokere direkte solstråling og derfor reducere fejl i den målte temperatur. Det fungerer også som holder til temperatursensoren. Strålingsskærme er meget nyttige, men er normalt lavet af stål, og de er dyre, så jeg besluttede at bygge et eget skjold. Jeg lavede en instruerbar, der viser, hvordan man laver et strålingsskjold som dette. Her er det instruerbare.

Jeg fandt også en video, der viser nøjagtig samme fremgangsmåde, så du kan bruge den:

Trin 5: Terminalboks

Terminalboks
Terminalboks
Terminalboks
Terminalboks
Terminalboks
Terminalboks

Terminalboksen er midten af stationen. Hovedkablet med 14 kerner forbinder det med serverboksen. Kablet fra DS18B20 går ind i det. Kablet fra UV -boksen går ind i det. Det er også vært for fugtigheds- og tryksensoren. Når du vælger en terminalboks, kan du bruge enhver IP65 -plastforbindelsesboks, der har over 10x5x5cm (4 "x2" x2 ").

Trin 6: UV -sensorboks

UV -sensorboks
UV -sensorboks
UV -sensorboks
UV -sensorboks
UV -sensorboks
UV -sensorboks

UV-sensorboksen er vært for UVM-30A UV-sensoren, og det er også et midtpunkt mellem hovedklemkassen og regn- og vindmålere. UV -sensorboksen kan være enhver plastik IP65 -boks med et fuldstændigt gennemsigtigt dæksel.

Trin 7: Weathercam

Vejrkamera
Vejrkamera
Vejrkamera
Vejrkamera
Vejrkamera
Vejrkamera

Vejrwebcams (eller vejrcams som jeg kan lide at kalde dem) bruges til at optage eller streame billede af de faktiske vejrforhold. Ud fra billedet kan du bestemme lysintensiteten og uklarheden. Jeg gik efter det billigste wifi -kamera til rådighed, men du kan bruge ethvert wifi -kamera efter eget valg. Dette billige kamera fungerer fint, men der er et problem med det. Du skal konstant have en computer, der kører en streaming -software. Det var ikke et problem for mig, fordi der allerede er en server, der kører websted i netværket, så det også kan tage sig af streaming. Men hvis du ikke har en computer som denne i dit hjemmenetværk, så anbefaler jeg at købe en Raspberry pi og et Raspberry pi kamera. Det er dyrere (25 $ vs 70 $), men du har ikke rigtig en anden mulighed, hvis du vil have et webcam. I begge tilfælde skal du lægge kameraet i en vejrbestandig æske. Du kan bruge den samme boks som til UV -sensoren. Jeg lavede min egen æske af en almindelig plastkasse og plexiglas, men det er unødvendigt. Batteriet til kameraet skal konstant genoplades. Det kan du gøre ved at fjerne et USB -kabel og tilslutte + og - ledningerne til 5V -effektudgang til sensorerne. Når du har dit kamera vejrbestandigt, kan du bare montere det hvor som helst, hvor der er god udsigt med lynlås.

Lad os nu se på softwaren. Denne del kræver nogle avancerede kodningsevner. Du skal have en kørende computer 24/7 (kan være en Raspberry pi) i dit hjemmenetværk for at kunne gøre alt dette. Så den første ting, du skal gøre, er at tilslutte dit IP-kamera til dit Wi-Fi-hjemmenetværk. Så skal du ændre brugernavn og adgangskode i scriptet i henhold til dit brugernavn og din adgangskode på kameragrænsefladen. Du skal også ændre kameraets IP -adresse i scriptet. Derefter skal du konfigurere en opgaveplanlægger til at køre det medfølgende script hvert 5. minut på din server/computer. Scriptet skal nu tage et skærmbillede af kameraets billede hvert 5. minut og gemme det i den forudindstillede mappe. Mappen skal være offentlig, så du kan slå den op på en søgemaskine som denne: example.com/username/webcam.jpg. Weathercloud kan derefter tage dette billede fra den offentlige mappe og lægge det på sin webside. Du kan se feedet "live" (opdateringer hvert 5. minut) her.

Trin 8: Top Sensors Holder

Top sensorer holder
Top sensorer holder
Top sensorer holder
Top sensorer holder
Top sensorer holder
Top sensorer holder
Top sensorer holder
Top sensorer holder

Den øverste sensorholder er en stålkomponent, der holder de øverste sensorer (UV, nedbør og vindhastighed) på taget. Den del, du ser på disse billeder, passer kun til vores bygning. Du kan montere disse sensorer, som du vil. Dette er blot et eksempel. Vi havde allerede et stålrør monteret på taget, så det har været let at montere holderen.

Trin 9: Problem med skjoldkompatibilitet

Problem med skjoldkompatibilitet
Problem med skjoldkompatibilitet
Problem med skjoldkompatibilitet
Problem med skjoldkompatibilitet
Problem med skjoldkompatibilitet
Problem med skjoldkompatibilitet

Der er et enkelt kompatibilitetsproblem mellem ethernet -skjoldet og protoshield. Du kan ikke lægge protoshield oven på ethernet -skjoldet, fordi ethernet -stikket bare ikke tillader dig det. Og du kan ikke sætte ethernet -skærmen på toppen af protoshieldet, fordi ethernet -skjoldet skal have en direkte forbindelse til arduinoen via ICSP -stikket, men protoshieldet har ikke et. Nå, et simpelt problem, en simpel løsning. Jeg har lige skåret et rektangulært hul i protoshield, så ethernet -stikket kan passe ind.

Trin 10: Måling af nedbør

Måling af nedbør
Måling af nedbør
Måling af nedbør
Måling af nedbør
Måling af nedbør
Måling af nedbør

Regnmåleren, som jeg bestilte, fungerer fint, men der er et stort problem med det. Det har ikke nogen kommunikationsgrænseflade som I2C eller RX/TX. Der er bare en simpel switch, der tænder i 60 mikrosekunder, hver gang det regner mere end 0,28 mm/m2. Arduinoen kan let fange det, når det ikke gør andet end at måle nedbør. Men når den har andre opgaver at gøre (som at måle temperatur og sende den til sky), er der stor sandsynlighed for, at arduinoens processor vil have travlt på tidspunktet for tænding af regnmåler. Dette vil medføre en unøjagtig nedbørsmåling. Derfor tilføjede jeg en anden arduino - en arduino nano. Nanos eneste opgave er at måle nedbør og sende den til master arduino gennem I2C. På den måde bliver nedbørsmålingerne altid nøjagtige. Jeg lavede et printkort, der både rummer arduino nano og RTC -modulet, men du kan også lodde det til protoshield. Jeg ved, at dette ikke er den enkleste og billigste løsning, men jeg kan lide det, og det er meget pænt og organiseret.

Trin 11: Måling af vindhastighed

Måling af vindhastighed
Måling af vindhastighed
Måling af vindhastighed
Måling af vindhastighed
Måling af vindhastighed
Måling af vindhastighed

Dette trin ligner meget det foregående. Jeg lavede et bræt, der måler vindhastighed og derefter sender det gennem I2C. Gentag bare det foregående trin uden RTC. Jeg prøvede at sætte begge tavler i et, men det lykkedes ikke.

Trin 12: Serverboks

Serverboks
Serverboks
Serverboks
Serverboks
Serverboks
Serverboks

Det er altid en god idé at skjule al elektronikken i en lille, organiseret æske. Og det var præcis det, jeg gjorde med serverboksen. Serverboksen er vært for Arduino UNO, ethernet -skjoldet, protoshieldet, 5V -regulatoren, hoveddatakableterminalen og nedbørsmålingskortet. En note om Arduino: stationens kode bruger omkring 90% af Arduino UNO -hukommelsen, og det kan forårsage nogle problemer. Du har måske brug for Arduino Mega.

Trin 13: Forbindelser

Forbindelser
Forbindelser

Tilslut bare alt i henhold til den medfølgende skematiske.

Trin 14: KODE

KODE
KODE

Dette er den sidste del, den del, vi alle har ventet på - at teste, om det virker. Du skal ændre IP -adressen, Weathercloud ID og Weathercloud KEY i henhold til dit hjemmenetværk og din Weathercloud -konto. Du er derefter klar til at uploade den til din arduino. Du skal også uploade I2C regnsenderkoden til Arduino nano på nedbørstavlen og I2C vindsenderen til Arduino nano på vindhastighedskortet. Der er også index.php scriptet, mere information om det er i trin 7.

Trin 15: Installation

Installation
Installation
Installation
Installation
Installation
Installation
Installation
Installation

At få din vejrstation til at fungere på dit værksted er en ting, men at få den til at fungere under de hårde forhold i virkeligheden er en anden. Installationsproceduren afhænger meget af den bygning, du monterer din station på. Men hvis du har solstrålingsskærmen og den øverste sensorholder, burde det ikke være så svært. Temperatur- og fugtighedsføleren kan placeres virkelig hvor som helst på bygningen, men UV -sensoren og regnmåleren skal være på toppen af bygningen. UV -sensoren kan ikke være i skygge, og regnmåleren kan ikke være i nærheden af en væg, ellers når der er stærk vind, falder regndråberne ikke ind i måleren, og målingerne bliver unøjagtige. Her er et billede, der viser, hvordan du kan montere stationen på et typisk hus. Du skal være meget forsigtig, når du monterer en station på taget, og du bør have en kraftig boremaskine, der kan bore gennem beton.

Trin 16: Udført

Færdig
Færdig
Færdig
Færdig
Færdig
Færdig
Færdig
Færdig

Tillykke. Hvis du gjorde alle trin korrekt, har du en fuldt operationel skyvejrstation. Du kan se dataene fra min station her. Hvis du har nogle spørgsmål eller forslag, hører jeg dem gerne i kommentarfeltet herunder.

Jeg planlægger at bygge en lignende station ved hjælp af ESP32 Wi-Fi-kort og nogle ekstra sensorer (vindhastighed/retning, solstråling, jordfugtighed), men mere om det senere. God fornøjelse!

Anbefalede: