Мазмұны:
Бейне: Соңғы 1-2 күнде үрдісті көруге арналған Arduino, BME280 және дисплейі бар ауа райы станциясы: 3 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
Сәлеметсіз бе!
Нұсқау бойынша метеостанциялар енгізілген. Олар ағымдағы ауа қысымын, температура мен ылғалдылықты көрсетеді. Оларға соңғы 1-2 күн ішінде курстың презентациясы жетіспеді. Бұл процестің артықшылығы болар еді, сіз тек ағымдағы мәндерді графикалық түрде оқып қана қоймай, сонымен қатар олардың соңғы 1-2 күнде қалай өзгергенін көре аласыз. Нәтижесінде, мысалы, ауа қысымы қатты өзгеретіндіктен, ауа райының өзгеруі мүмкін екенін таниды. Сонымен қатар, өлшенетін шамалар арасындағы жалпы қатынастарды тануға болады.
Мысалы, ауа температурасы көтерілгенде ылғалдылық төмендейді. Себебі жылы ауа суық ауаға қарағанда ылғалдылықты көбірек сіңіре алады. Егер салыстырмалы ылғалдылық 20 ° C температурада шамамен 60% болса, онда 25 ° C температурада ауа ылғалдылықты абсолютті түрде сіңіруі мүмкін. Демек, салыстырмалы ылғалдылық енді 60% емес, мысалы, тек 50% жеңілдік.
Сондай -ақ, сіз тәуліктің қай мезгілінде ең жоғары немесе ең төменгі температура күтілетінін жақсы көре аласыз. Немесе жаңбыр жауғанда ылғалдылық күрт көтеріледі. Хобби метеоролог үшін өте қолайлы. Егер сіз өз тәжірибеңізді түсініктемелерде жаза алсаңыз, мен өте қуанышты болар едім.
1 -қадам: бөлшектер
Бұл метеостанция үшін сізге тек 5 бөлік қажет:
* Arduino мега: ebay arduino мега
* Ауа райы датчигі BME280: ebay BME280
* Arduino Mega: ebay 320x480 дисплейі үшін 320x480 пиксельді дисплей
* + 9В қуат көзі: ebay қуат көзі
* Электр сымы
Жалпы шығын 25 доллардан аспайды.
2 -қадам: Arduino коды
Схема өте қарапайым. Сенсорды arduino мегаға осылайша қосу керек:
Вин +5В
GND GND
SDA түйрегіші 20
SCL түйрегіші 21
Дисплей тек arduino mega коннекторына қосылады.
Сізге қажет arduino-кітапханаларына сілтемелер:
BME280-кітапханасы:
жалпы сенсор-кітапхана:
Бұл метеостанцияның жүрегі, мен айтқанымдай, ауа райы туралы деректердің графикалық бейнесі. Қазіргі уақытта мәндер әр 6 минут сайын жаңартылып отырады және графиктер 1 пиксель солға жылжиды. Осылайша, соңғы 1,5 күнді жазуға болады. Әрине, оны кез келген уақытта өзгертуге болады. Тек содан кейін 360000 мс (= 6 минут) мәні және әрине сағат бойынша уақыт осі өзгеруі керек. Міне, сізге өзгерту керек сызықтар:
уақыт_неу = миллис ();
if (time_neu <time_alt) // миллис толғаннан кейін проблемаларды болдырмау үшін
{
time_next = 0 + 360000;
}
if (time_neu> time_next && time_next> = 360000) // 6 минуттан кейін жаңа өлшеу
{
Мен температураны, ауа қысымын және ылғалдылық шкаласын өзгеріссіз қалдыруға шешім қабылдадым, себебі ол ағымдағы көрсеткіштердің орналасқан жеріне байланысты ауа қысымының жоғары, орташа немесе төмен екенін уақыт өте тез бағалауға мүмкіндік береді. Егер мен шкаланы қайта -қайта реттейтін болсам, мен мұны бір қарағанда мойындамас едім. Уақыт осі y = 290 пиксель позициясында орналасқан. Y осьтеріндегі белгілер бір-бірінен 45 пиксельді құрайды. Егер сіз ауа қысымын 940 мбардан 1000 мбарға дейін 10 мбар қадаммен көрсеткіңіз келсе, келесі әрекеттерді орындаңыз:
Алдымен y = k * x + d жалпы теңдеуін орнатыңыз. Енді сіз осы 2 мән жұбын қолданасыз (x = 940, y = 290) және (x = 950, y = 245). Бұл k және d белгісіз екі теңдеу береді: 290 = k * 940 + d және 245 = k * 950 + d. Екі теңдеуді де алып тастап, біз мынаны аламыз: 290 - 245 = k * 940 - k * 950 + d - d. Белгісіз d осылайша жоғалады және біз k = - 45/10 = -4.5 үшін аламыз. K үшін бұл мән екі бастапқы теңдеудің біріне орналастырылады: 290 = -4.5 * 940 + d. Осылайша d мәнін алады, дәлірек айтқанда d = 4520.
Егер сіз ауа қысымын алғыңыз келсе, мысалы, 955 мбар-дан 985 мбарға дейін болса, (955, 290) және (960, 245) мәндерінің жұптарын түзу теңдеуге қойыңыз. Содан кейін k = -9 және d = 8885 алады. Сол сияқты температура мен ылғалдылықтың түзу теңдеулерін есептейді. Бұл 3 теңдеу бағдарламада пайда болады:
үшін (i = 0; i <= 348; i ++)
{
егер (ылғалдылық ! = -66)
{
myGLCD.setColor (255, 0, 0);
//myGLCD.drawPixel(81 + i, -4.5 * температура + 200);
myGLCD.drawLine (81 + i, -4.5 * температура + 200.81 + i + 1, -4.5 * температура [i + 1] + 200);
myGLCD.setColor (0, 255, 0);
//myGLCD.drawPixel(81 + i, -4.5 * ылғалдылық + 380);
myGLCD.drawLine (81 + i, -4.5 * ылғалдылық + 380.81 + i + 1, -4.5 * ылғалдылық [i + 1] + 380);
myGLCD.setColor (0, 0, 255);
//myGLCD.drawPixel(81 + i, -4.5 * қысым + 4520);
myGLCD.drawLine (81 + i, -9.0 * қысым + 8885, 81 + i + 1, -9.0 * қысым [i + 1] + 8885);
}
}
3 -қадам: Нәтижелер
Бейнеге бір сөз: Графиктің кеңеюін көріну үшін мен уақытты 1 секундқа дейін қысқарттым. Сондықтан дисплей қатты жыпылықтайды. Іс жүзінде уақыт 6 минутты құрайды. Сондықтан сіз ешқандай жыпылықтауды көре алмайсыз …
Егер бір немесе басқа әуесқой метеоролог менің метеостанциямды қарауға тырысса, мен қуанар едім. Ресми өлшеу станцияларымен салыстыру (мысалы, Грац университеті/Австрия) өлшеу қисықтарының қолданылуын көрсетеді.
Сонымен қатар, сенсорлар байқауында маған және сыныптағы ғылыми жарыстарда менің басқа да нұсқаушыларыма дауыс берсеңіз, мен бақытты болар едім:
- https://www.instructables.com/id/DIY-LED-photomete…
- www.instructables.com/id/DIY-Wind-Tunnel-a…
- www.instructables.com/id/Simple-Autorange-…
Бұл үшін көп рахмет.
Егер сізді физика бойынша басқа да жобалар қызықтырса, міне менің youtube каналым:
басқа физика жобалары:
Бұл тұрғыда Эврика…
Ұсынылған:
DIY ауа райы станциясы мен WiFi сенсорлық станциясы: 7 қадам (суреттермен)
DIY ауа райы станциясы мен WiFi сенсорлық станциясы: Бұл жобада мен сізге WiFi сенсор станциясымен бірге ауа райы станциясын қалай жасау керектігін көрсетемін. Сенсорлық станция жергілікті температура мен ылғалдылық деректерін өлшейді және WiFi арқылы метеостанцияға жібереді. Содан кейін метеостанция мыналарды көрсетеді
Wemos D1 Mini, BME280 және Sensate қолданатын ауа райы станциясы: 6 қадам
Wemos D1 Mini, BME280 және Sensate қолданатын метеорологиялық станция. Алдыңғы жазбаларда мен метеостанцияны құрудың әр түрлі әдістерімен бөліскенмін. Егер сіз оны тексермеген болсаңыз, сілтеме - бұл нұсқаулықта мен Wemos пен Sensate деп аталатын IoT платформасын қолдана отырып, қарапайым метеостанцияны қалай құруға болатынын көрсетемін
DHT11 және OLED дисплейі бар қарапайым DIY ауа райы станциясы: 8 қадам
DHT11 және OLED дисплейі бар қарапайым DIY ауа райы станциясы: Бұл оқулықта біз температура мен ылғалдылықты көрсету үшін Arduino, DHT11 сенсоры, OLED дисплейі мен Visuino көмегімен қарапайым ауа райы станциясын құруды үйренеміз
Nextion дисплейі мен Arduino бар DIY ауа райы станциясы: 11 қадам
Nextion дисплейі мен Arduino бар DIY ауа райы станциясы: Бұл оқулықта ағымдағы уақытты, температураны және ылғалдылықты көрсету үшін Nextion дисплейі, rtc1307 уақыт модулі, Arduino UNO және Visuino қолданамыз
RPi және ESP8266 бар IoT ауа райы станциясы: 10 қадам
RPi мен ESP8266 бар IoT ауа райы станциясы: Алдыңғы оқулықтарда біз NodeMCU, сенсорлармен ойнадық және ThingSpeak (Интернеттегі заттар (IoT) платформасында деректерді бұлтта жинауға және сақтауға мүмкіндік беретін) деректерді алуды және тіркеуді үйрендік. және IoT қосымшаларын жасаңыз): IOT