Мазмуну:

Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы: 3 кадам (сүрөттөр менен)
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы: 3 кадам (сүрөттөр менен)

Video: Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы: 3 кадам (сүрөттөр менен)

Video: Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы: 3 кадам (сүрөттөр менен)
Video: NO-SQL BLUEPRINTS: Архитектура сырларын ачуу! 🏗️🔑 2024, Июль
Anonim
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы
Акыркы 1-2 күндүн ичинде трендди көрүү үчүн Arduino, BME280 жана дисплей менен аба ырайы станциясы

Салам!

Бул жерде көрсөтмөлөр боюнча метеостанциялар киргизилген. Алар учурдагы абанын басымын, температурасын жана нымдуулугун көрсөтөт. Аларга акыркы 1-2 күндүн ичинде курстун презентациясы жетишпеди. Бул процесстин артыкчылыгы болмок, сиз учурдагы баалуулуктарды графикалык түрдө гана окуп койбостон, бир караганда, акыркы 1-2 күндө алардын кандай өзгөргөнүн көрө аласыз. Натыйжада, мисалы, аба басымы абдан өзгөргөндүктөн, аба ырайынын мүмкүн болгон өзгөрүүсүн тааныйт. Бирок, өлчөнүүчү чоңдуктардын ортосундагы жалпы мамилелерди да тааныйт.

Мисалы, абанын температурасы жогорулаганда нымдуулук төмөндөйт. Себеби жылуу аба муздак абага караганда нымдуулукту көбүрөөк сиңире алат. Эгерде салыштырмалуу нымдуулук 20 ° Сде болжол менен 60% болсо, анда 25 ° Сде аба абсолюттук мааниде көбүрөөк нымдуулукту сиңирип алмак. Демек, салыштырмалуу нымдуулук 60% эмес, бирок, мисалы, 50% га гана.

Ошондой эле сиз эң жогорку же эң төмөнкү температура күндүн кайсы убагында күтүлөрүн жакшы көрө аласыз. Же жамгыр жааганда нымдуулук кескин жогорулайт. Хобби метеоролог үчүн идеалдуу. Тажрыйбаңызды комментарийге жаза алсаңыз, мен абдан кубанычта болом.

1 -кадам: Бөлүктөр

Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр
Бөлүктөр

Бул аба ырайы бекети үчүн сизге болгону 5 бөлүк керек:

* Ардуино мега: ebay arduino мега

* Аба ырайы сенсору BME280: ebay BME280

* 320x480 пикселдик дисплей Arduino Mega: ebay 320x480 дисплейи үчүн

* + 9V электр менен камсыздоо: ebay электр менен камсыздоо

* Электр зымы

Жалпы чыгымдар болгону 25 доллардан аз.

2 -кадам: Arduino коду

Arduino коду
Arduino коду
Arduino коду
Arduino коду
Arduino коду
Arduino коду

Район абдан жөнөкөй. Сенсорду arduino мегага ушул жол менен туташтыруу керек:

Vin +5V

GND GND

SDA пин 20

SCL пин 21

Дисплей arduino мегадагы туташтыргычка гана туташтырылган.

Бул жерде сизге керек болгон arduino-китепканаларга шилтемелер:

BME280-китепкана:

жалпы сенсор-китепкана:

Бул метеостанциянын жүрөгү, мен айткандай, аба ырайы маалыматтарынын графикалык көрүнүшү. Учурда баалуулуктар 6 мүнөт сайын жаңыртылып турат жана графиктер 1 пикселди солго жылдырат. Ошентип, акыркы 1,5 күндү жазууга болот. Албетте, бул каалаган убакта өзгөртүлүшү мүмкүн. Ошондо гана 360000 мс (= 6 мүнөт) мааниси жана албетте сааттардагы убакыт огу өзгөртүлүшү керек. Бул жерде сиз өзгөртө турган саптар:

time_neu = millis ();

if (time_neu <time_alt) // миллис толуп кеткенден кийин көйгөйлөрдү болтурбоо үчүн

{

time_next = 0 + 360000;

}

if (time_neu> time_next && time_next> = 360000) // 6 мүнөттөн кийин жаңы өлчөө

{

Мен температураны, абанын басымын жана нымдуулук таразаларын өзгөрүүсүз калтырууну чечтим, анткени ал учурдагы көрсөткүчтөрдүн жайгашкан жерине жараша абанын басымы жогорку, орто же төмөн экендигин тез арада баалоого мүмкүндүк берет. Эгерде мен масштабды кайра -кайра туураласам, мен муну бир караганда тааныбайт элем. Убакыт огу y = 290 пиксел абалында жайгашкан. Y-окторундагы белгилер бири-биринен 45 пиксел. Эгерде сиз 10 мбар кадам менен 940 мбардан 1000 мбарга чейин аба басымын көрсөткүңүз келсе, төмөнкүдөй кылыңыз:

Биринчиден, y = k * x + d жалпы теңдемесин орнотуңуз. Эми сиз ошол 2 маани жуптарын колдоносуз (x = 940, y = 290) жана (x = 950, y = 245). Бул k жана d белгисиз 2 теңдеме берет: 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 -кадам: Жыйынтыктар

Image
Image
Жыйынтыктар
Жыйынтыктар
Жыйынтыктар
Жыйынтыктар

Видеого бир сөз: Графиктин кеңейишин көрүнүктүү кылуу үчүн мен убакытты 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 каналым:

башка физика долбоорлору:

Бул жагынан алганда, Эврика…

Сунушталууда: