Indholdsfortegnelse:

Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage: 3 trin (med billeder)
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage: 3 trin (med billeder)

Video: Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage: 3 trin (med billeder)

Video: Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage: 3 trin (med billeder)
Video: Arduino Nano, BME280 и SSD1306 OLED-метеостанция 2024, Juli
Anonim
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage
Vejrstation med Arduino, BME280 og display til at se trenden inden for de sidste 1-2 dage

Hej!

Her på instruerbare vejrstationer er allerede blevet introduceret. De viser det aktuelle lufttryk, temperatur og fugtighed. Det, de hidtil manglede, var en præsentation af forløbet inden for de sidste 1-2 dage. Denne proces vil have den fordel, at du ikke kun grafisk kan aflæse de aktuelle værdier, men også et overblik kan se, hvordan de har ændret sig i de sidste 1-2 dage. Som følge heraf genkender man for eksempel en mulig ændring i vejret, da lufttrykket ændrer sig meget. Dog genkender man også generelle forhold mellem de målte størrelser.

F.eks. Falder luftfugtigheden, når lufttemperaturen stiger. Det skyldes, at varm luft kan absorbere mere fugtighed end kold luft. Hvis den relative luftfugtighed er ca. 60% ved 20 ° C, kan luften ved 25 ° C absorbere mere fugtighed i absolutte tal. Derfor er den relative luftfugtighed ikke længere 60%, men for eksempel kun 50% rabat.

Du kan også se pænt, hvilket tidspunkt på dagen de højeste eller laveste temperaturer kan forventes. Eller at luftfugtigheden stiger kraftigt, når det regner. Ideel til hobbymeteorologen. Jeg ville blive meget glad, hvis du kunne skrive dine oplevelser i kommentarerne.

Trin 1: Dele

Dele
Dele
Dele
Dele
Dele
Dele
Dele
Dele

Til denne vejrstation skal du kun bruge 5 dele:

* Arduino mega: ebay arduino mega

* Vejrføler BME280: ebay BME280

* 320x480 pixel display til Arduino Mega: ebay 320x480 display

* + 9V strømforsyning: ebay strømforsyning

* Elektrisk ledning

De samlede omkostninger er kun mindre end $ 25.

Trin 2: Arduino -koden

Arduino -koden
Arduino -koden
Arduino -koden
Arduino -koden
Arduino -koden
Arduino -koden

Kredsløbet er meget enkelt. Du skal bare tilslutte sensoren til arduino mega på denne måde:

Vin +5V

GND GND

SDA pin 20

SCL pin 21

Skærmen er kun sat i stikdåsen på arduino mega.

Her er linkene til de arduino-biblioteker, du skal bruge:

BME280-bibliotek:

fælles sensorbibliotek:

Hjertet i denne vejrstation er som sagt den grafiske fremstilling af vejrdataene. I øjeblikket opdateres værdierne hvert 6. minut, og graferne flyttes 1 pixel til venstre. På den måde kan de sidste 1,5 dage registreres. Selvfølgelig kan dette ændres når som helst. Først derefter skal værdien 360000 ms (= 6 minutter) og naturligvis tidsaksen i timer ændres. Her er de linjer, du skal ændre:

time_neu = millis ();

if (time_neu <time_alt) // for at undgå problemer efter millis-overløbet

{

time_next = 0 + 360000;

}

hvis (time_neu> time_next && time_next> = 360000) // ny måling efter 6 minutter

{

Jeg har besluttet at holde temperatur-, lufttryk- og fugtighedsskalaer uændrede, da det giver dig mulighed for hurtigt over tid at vurdere, om lufttrykket er højt, medium eller lavt, baseret på placeringen af de aktuelle aflæsninger. Hvis jeg ville justere skalaen igen og igen, ville jeg ikke genkende dette ved første øjekast. Tidsaksen er placeret på positionen y = 290 pixels. Mærkerne på y-akserne er 45 pixels fra hinanden. Hvis du vil vise lufttrykket fra 940 mbar til 1000 mbar i trin på 10 mbar, skal du gøre følgende:

Indstil først den generelle ligning y = k * x + d. Nu bruger du de 2 værdipar (x = 940, y = 290) og (x = 950, y = 245). Dette giver 2 ligninger med de to ukendte k og d: 290 = k * 940 + d og 245 = k * 950 + d. Ved at fratrække begge ligninger får vi: 290 - 245 = k * 940 - k * 950 + d - d. Det ukendte d forsvinder på denne måde, og vi får for k = - 45/10 = -4,5. Denne værdi for k placeres i en af de to indledende ligninger: 290 = -4,5 * 940 + d. På denne måde opnår man værdien for d, specifikt d = 4520.

Hvis du vil have lufttrykket, f.eks. Kun repræsenterer 955 mbar til 985 mbar, sætter du værdiparene (955, 290) og (960, 245) i ligelinien. Derefter opnår man for k = -9 og d = 8885. På samme måde beregner man ligelinierne for temperaturen og luftfugtigheden. Disse 3 ligninger vises her i programmet:

for (i = 0; i <= 348; i ++)

{

hvis (fugtighed ! = -66)

{

myGLCD.setColor (255, 0, 0);

//myGLCD.drawPixel(81 + i, -4,5 * temperatur + 200);

myGLCD.drawLine (81 + i, -4,5 * temperatur + 200,81 + i + 1, -4,5 * temperatur [i + 1] + 200);

myGLCD.setColor (0, 255, 0);

//myGLCD.drawPixel(81 + i, -4,5 * luftfugtighed + 380);

myGLCD.drawLine (81 + i, -4,5 * luftfugtighed + 380,81 + i + 1, -4,5 * fugtighed [i + 1] + 380);

myGLCD.setColor (0, 0, 255);

//myGLCD.drawPixel(81 + i, -4,5 * tryk + 4520);

myGLCD.drawLine (81 + i, -9.0 * tryk + 8885, 81 + i + 1, -9.0 * tryk [i + 1] + 8885);

}

}

Trin 3: Resultaterne

Image
Image
Resultaterne
Resultaterne
Resultaterne
Resultaterne

Et ord til videoen: For at synliggøre udvidelsen af grafen reducerede jeg tidstrinnene til 1 sekund. Derfor flimrer displayet kraftigt. I virkeligheden er tidstrinnene 6 minutter. Så du kan ikke se noget flimrende …

Jeg ville blive glad, hvis den ene eller den anden hobbymeteorolog forsøger at pille ved min vejrstation. En sammenligning med officielle målestationer (f.eks. University of Graz/østrig) viser målekurvens brugbarhed.

Desuden ville jeg være glad, hvis du kunne stemme på mig i sensorkonkurrencen og til mine andre instruktører i videnskabskonkurrencen i klasseværelset:

  • https://www.instructables.com/id/DIY-LED-photomete…
  • www.instructables.com/id/DIY-Wind-Tunnel-a…
  • www.instructables.com/id/Simple-Autorange-…

Mange tak for dette.

Hvis du er interesseret i flere fysikprojekter, er her min youtube -kanal:

flere fysikprojekter:

I denne forstand, Eureka …

Anbefalede: