Talaan ng mga Nilalaman:

Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa Loob ng Huling 1-2 Araw: 3 Mga Hakbang (na may Mga Larawan)
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa Loob ng Huling 1-2 Araw: 3 Mga Hakbang (na may Mga Larawan)

Video: Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa Loob ng Huling 1-2 Araw: 3 Mga Hakbang (na may Mga Larawan)

Video: Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa Loob ng Huling 1-2 Araw: 3 Mga Hakbang (na may Mga Larawan)
Video: Arduino MASTERCLASS | Full Programming Workshop in 90 Minutes! 2024, Nobyembre
Anonim
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa loob ng Huling 1-2 Araw
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa loob ng Huling 1-2 Araw
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa loob ng Huling 1-2 Araw
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa loob ng Huling 1-2 Araw
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa Loob ng Huling 1-2 Araw
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa Loob ng Huling 1-2 Araw
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa Loob ng Huling 1-2 Araw
Istasyon ng Panahon Sa Arduino, BME280 at Display para sa Nakikita ang Uso Sa Loob ng Huling 1-2 Araw

Kamusta!

Dito sa mga itinuturo na mga istasyon ng panahon ay ipinakilala na. Ipinapakita nila ang kasalukuyang presyon ng hangin, temperatura at halumigmig. Ang kulang sa kanila ngayon ay isang pagtatanghal ng kurso sa loob ng huling 1-2 araw. Ang prosesong ito ay magkakaroon ng kalamangan na hindi mo lamang mababasa nang grapikal ang mga kasalukuyang halaga ngunit din sa isang sulyap, tingnan kung paano sila nagbago sa huling 1-2 araw. Bilang isang resulta, kinikilala ng isang tao, halimbawa, ang isang posibleng pagbabago sa panahon, dahil ang presyon ng hangin ay lubos na nagbabago. Gayunpaman, kinikilala rin ng isa ang pangkalahatang mga ugnayan sa pagitan ng sinusukat na dami.

Halimbawa, ang halumigmig ay bumababa kapag ang temperatura ng hangin ay tumaas. Ito ay dahil ang mainit na hangin ay maaaring tumanggap ng higit na kahalumigmigan kaysa sa malamig na hangin. Kung ang kamag-anak na kahalumigmigan ay halos 60% sa 20 ° C, pagkatapos ay sa 25 ° C ang hangin ay maaaring tumanggap ng higit na kahalumigmigan sa ganap na mga tuntunin. Samakatuwid, ang kamag-anak na kahalumigmigan ay hindi na 60%, ngunit halimbawa, 50% lamang ang diskwento.

Gayundin maaari mong makita nang maayos kung anong oras ng araw ang inaasahan ang pinakamataas o pinakamababang temperatura. O na ang kahalumigmigan tumaas nang husto kapag umuulan. Mainam para sa hobby meteorologist. Masayang-masaya ako kung mai-post mo ang iyong mga karanasan sa mga komento.

Hakbang 1: Mga Bahagi

Mga Bahagi
Mga Bahagi
Mga Bahagi
Mga Bahagi
Mga Bahagi
Mga Bahagi
Mga Bahagi
Mga Bahagi

Para sa istasyon ng panahon na ito kailangan mo lamang ng 5 bahagi:

* Arduino mega: ebay arduino mega

* Weather sensor BME280: ebay BME280

* 320x480 pixel display para sa Arduino Mega: ebay 320x480 display

* + 9V power supply: suplay ng kuryente ng ebay

* Electric wire

Ang kabuuang gastos ay mas mababa lamang sa $ 25.

Hakbang 2: Ang Arduino Code

Ang Arduino Code
Ang Arduino Code
Ang Arduino Code
Ang Arduino Code
Ang Arduino Code
Ang Arduino Code

Napaka-simple ng circuit. Kailangan mo lamang ikonekta ang sensor sa arduino mega sa ganitong paraan:

Vin + 5V

GND GND

SDA pin 20

SCL pin 21

Ang display ay naka-plug lamang sa konektor strip sa arduino mega.

Narito ang mga link para sa mga arduino-library na kakailanganin mo:

BME280-library:

karaniwang sensor-library:

Ang puso ng istasyon ng panahon na ito ay, tulad ng sinabi ko, ang graphic na representasyon ng data ng panahon. Sa ngayon, ang mga halaga ay na-update tuwing 6 minuto at ang mga graph ay inilipat ng 1 pixel sa kaliwa. Sa ganitong paraan, maaaring maitala ang huling 1.5 araw. Siyempre maaari itong mabago anumang oras. Pagkatapos lamang ang halagang 360000 ms (= 6 minuto) at syempre dapat baguhin ang axis ng oras sa oras. Narito ang mga linya na kailangan mong baguhin:

time_neu = millis ();

kung (time_neu <time_alt) // upang maiwasan ang mga problema pagkatapos ng millis-overflow

{

time_next = 0 + 360000;

}

kung (time_neu> time_next && time_next> = 360000) // bagong pagsukat pagkalipas ng 6 minuto

{

Napagpasyahan kong panatilihing hindi nagbabago ang mga antas ng temperatura, presyon ng hangin at halumigmig, dahil pinapayagan kang mabilis na masuri, sa paglipas ng panahon, kung mataas ang presyon ng hangin, daluyan o mababa, batay sa lokasyon ng kasalukuyang mga pagbasa. Kung aayusin ko nang paulit-ulit ang sukat, hindi ko ito makikilala sa unang tingin. Ang axis ng oras ay matatagpuan sa posisyon na y = 290 mga pixel. Ang mga marka sa y-axes ay 45 pixel ang pagitan. Kung nais mong ipakita ang presyon ng hangin mula 940 mbar hanggang 1000 mbar sa 10 mga hakbang sa mbar, magpatuloy tulad ng sumusunod:

Una, i-set up ang pangkalahatang equation y = k * x + d. Ngayon ay ginagamit mo ang 2 pares na halaga (x = 940, y = 290) at (x = 950, y = 245). Nagbibigay ito ng 2 mga equation sa dalawang hindi kilalang k at d: 290 = k * 940 + d at 245 = k * 950 + d. Sa pamamagitan ng pagbawas sa parehong mga equation, nakukuha natin ang: 290 - 245 = k * 940 - k * 950 + d - d. Ang hindi kilalang d nawala sa ganitong paraan at nakukuha namin para sa k = - 45/10 = -4.5. Ang halagang ito para sa k ay inilalagay sa isa sa dalawang paunang equation: 290 = -4.5 * 940 + d. Sa ganitong paraan makakakuha ang isa ng halaga para sa d, partikular na d = 4520.

Kung nais mo ang presyon ng hangin, halimbawa ay kumakatawan lamang sa 955 mbar hanggang 985 mbar, inilalagay mo ang mga pares ng halaga (955, 290) at (960, 245) sa equation ng straight-line. Pagkatapos ay nakakakuha ang isa para sa k = -9 at d = 8885. Katulad nito, kinakalkula ng isa ang mga equation na straight-line para sa temperatura at halumigmig ng hangin. Ang 3 mga equation na ito ay lilitaw dito sa programa:

para sa (i = 0; i <= 348; i ++)

{

kung (halumigmig ! = -66)

{

myGLCD.setColor (255, 0, 0);

//myGLCD.drawPixel(81 + i, -4.5 * temperatura + 200);

myGLCD.drawLine (81 + i, -4.5 * temperatura + 200.81 + i + 1, -4.5 * temperatura [i + 1] + 200);

myGLCD.setColor (0, 255, 0);

//myGLCD.drawPixel(81 + i, -4.5 * halumigmig + 380);

myGLCD.drawLine (81 + i, -4.5 * halumigmig + 380.81 + i + 1, -4.5 * halumigmig [i + 1] + 380);

myGLCD.setColor (0, 0, 255);

//myGLCD.drawPixel(81 + i, -4.5 * pressure + 4520);

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

}

}

Hakbang 3: Ang Mga Resulta

Image
Image
Ang Mga Resulta
Ang Mga Resulta
Ang Mga Resulta
Ang Mga Resulta

Isang salita sa video: Upang makita ang pagpapalawak ng grap na binawasan ko ang mga hakbang sa oras hanggang sa 1 segundo. Samakatuwid ang display ay malakas na kumikislap. Sa katotohanan ang mga hakbang sa oras ay 6 minuto. Kaya't hindi ka makakakita ng anumang kumikislap…

Masisiyahan ako kung susubukan ng isa o iba pang hobby meteorologist na tinker ang aking istasyon ng panahon. Ang isang paghahambing sa mga opisyal na istasyon ng pagsukat (f.e. University of Graz / austria) ay nagpapakita ng kakayahang magamit ng mga curve sa pagsukat.

Bukod dito, magiging masaya ako kung maaari mo akong iboto sa paligsahan ng sensor at para sa aking iba pang mga itinuturo sa paligsahan sa agham ng silid-aralan:

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

Maraming salamat para dito.

Kung interesado ka sa maraming mga proyekto sa pisika, narito ang aking channel sa youtube:

mas maraming mga proyekto sa pisika:

Sa puntong ito, Eureka…

Inirerekumendang: