- Компоненте потребне
- БМП280 Модул сензора притиска:
- Шема кола за повезивање БМП280 са Ардуином:
- Ардуино програм за повезивање БМП280 са Ардуином:
- Рад Ардуино БМП280 пројекта повезивања сензора притиска
Ако желите да направите сопствени систем за надгледање температуре или да измерите надморску висину вашег дрона или једноставно желите да измерите атмосферски притисак у вашем подручју, онда је један од најбољих модула који ћете користити у свом пројекту модул сензора притиска БМП280. БМП280 је сензор за апсолутни надзор притиска и температуре који је надограђена верзија сензора БМП085, БМП180, БМП183. Зашто се зове надограђена верзија? О томе ће бити речи у следећим одељцима. Већ смо користили старију верзију БМП180 са Ардуином у једном од наших претходних водича.
БМП280 сензорски модул може се користити заједно са микроконтролерима као што су Ардуино, ПИЦ, АВР итд. За овај пројекат ћемо користити Ардуино Уно са БМП280 заједно са ЛЦД модулом дисплеја 16к2, за приказ вредности температуре и притиска. Пре повезивања БМП280 са Ардуином, морамо да преузмемо БМП280 Ардуино библиотеку, коју је развио Адафруит. Кликните на ову везу библиотеке Адафруит БМП280 да бисте отворили одговарајућу Гитхуб страницу и додали датотеку заглавља у свој Ардуино ИДЕ.
Компоненте потребне
- Ардуино
- БМП280
- Повезивање жица
- Даска за хлеб
- ЛЦД- 16к2
БМП280 Модул сензора притиска:
Сензорски модул БМП280 ради са минималним напоном (ВДД) од 1,71 В, док сензорски модули претходне верзије раде на 1,8 В (ВДД). Што се тиче тренутне потрошње, БМП280 троши 2,7уА, док БМП180 троши 12уА, а БМП183 и БМП085 троше по 5уА. БМП280 такође подржава нове режиме филтрирања. Модул сензора БМП280 подржава И2ц и СПИ протоколе, док преостали сензор подржава И2ц или СПИ. Модул сензора БМП280 има тачност од ± 0,12 хПа, што је еквивалентно ± 1 м висинске разлике. Због ових кључних карактеристика, углавном се користи у разним апликацијама. БМП сензор се састоји од елемента за осетљивост притиска, елемента за осетљивост влаге и осетника температуре који су даље повезани са предњим делом за притисак, предњим делом за влагу и предњим делом за температуру. Ови ИЦ предњи крај су аналогни појачавачи осетљивости који се користе у појачавању малих сигнала. Излаз ових аналогних предњих ИЦ-а доводи се у АДЦ као улазни сигнал. У овом случају аналогне вредности се претварају у дигитални напон и овај напон се доводи у логичке склопове ради даљег повезивања са спољним светом.
Модул сензора БМП280 састоји се од три начина мировања, принудног и нормалног режима. У режиму спавања не врше се мерења, а потрошња енергије је минимална. У принудном режиму врши се једно мерење према изабраним опцијама мерења и филтера. Уобичајени режим континуирано кружи између мерења и периода приправности, а временски период циклуса дефинисаће Тстандби. Јачина струје у пасивном режиму је нешто већа од режима мировања.
Шема кола за повезивање БМП280 са Ардуином:
Дијаграм спојева за повезивање Ардуина са БМП280 сензором и ЛЦД-ом приказан је испод. Ако сте потпуно нови у Ардуину и ЛЦД-у, тада можете погледати овај Ардуино ЛЦД водич да бисте разумели како се Ардуино користи са ЛЦД екранима.
ВЦЦ и ГНД пинови сензора повезани су на 3в3 и ГНД пинове Ардуина. Прибадаче СЦЛ и СДА сензора повезане су на А5 и А4 плоче Ардуино. ЛЦД везе су следеће
Име ЛЦД екрана |
Ардуино Пин |
ВСС и РВ |
ГНД |
РС |
Д9 |
Е. |
Д8 |
Д4, Д5, Д6, Д7 |
Д5, Д4, Д3, Д2 |
Ардуино програм за повезивање БМП280 са Ардуином:
Комплетни БМП280 Ардуино код налази се на дну ове странице и може се учитати директно на вашу Ардуино плочу. Објашњење истог дато је у наставку
Ове библиотеке су укључене за омогућавање посебних функција. Датотеке заглавља #инцлуде могу директно очитавати вредности које долазе са сензора. #Инцлуде
#инцлуде
Креирање на објекту БМП за Адафруит_БМП280. Датотека објекта креира се за приступ посебним функцијама.
Адафруит_БМП280 бмп; // И2Ц
Подешавање пинова Ардуина за комуникацију са ЛЦД-ом. Коришћењем ових пинова подаци ће се пренети.
ЛЦД ЛикуидЦристал (9, 8, 5, 4, 3, 2);
Иницијализација ЛЦД-а и серијске комуникације.
воид сетуп () {лцд.бегин (16,2); Сериал.бегин (9600); Сериал.принтлн (Ф („БМП280 тест“)); лцд.принт ("Добродошли у"); лцд.сетЦурсор (0,1); лцд.принт ("ДИГЕСТ ЦИРЦУИТ"); кашњење (1000); лцд.цлеар (); иф (! бмп.бегин ()) {Сериал.принтлн (Ф („Не могу да пронађем важећи сензор БМП280, проверите ожичење!“)); док (1); }
Ова функција ради када иницијализација бмп објекта није успела.
/ * Подразумеване поставке из листа са подацима. * / бмп. * / Адафруит_БМП280:: СТАНДБИ_МС_500); /* Време на чекању. * /}
Овај део кода исписује температуру на серијском монитору и служи за отклањање грешака.
воид лооп () {Сериал.принт (Ф ("Температуре =")); Сериал.принт (бмп.реадТемпературе ()); Сериал.принтлн ("* Ц");
Функције бмп.реадПрессуре и бмп.реадТемпратуре користе се за позивање посебних функција и враћање вредности температуре и притиска.
лцд.принт (бмп.реадТемпературе ()); лцд.принт (бмп.реадПрессуре ());
Рад Ардуино БМП280 пројекта повезивања сензора притиска
Функције бмп.реадТемпратуре () и бмп.реадПрессуре () користе се за враћање вредности температуре и притиска. Ове функције су група изјава које извршавају посебан задатак, у нашем случају за враћање датотека температуре и притиска. Ове функције се позивају помоћу функција бмп.реадТемпратуре () и бмп.реадПрессуре () . Лцд.сетЦурсор поставља курсор на ЛЦД у жељени положај на екрану. лцд.принт наредба исписује податке са положаја који је поставио програмер. Ако за ЛЦД није подразумевано постављен ниједан положај, узима се (0,0) као почетни положај и континуирано штампање података. Следећи податак заузима положај следеће колоне, а поступак се наставља све док не дође до краја реда и пребаци се на следећи ред.
БМП280 се може користити користи се у летећим играчкама, мобилним телефонима, таблетима, рачунарима, ГПС уређајима, преносним здравственим уређајима, кућним метеоролошким станицама итд. Следећи овај поступак и користећи датотеке заглавља и неке посебне функције, лако можемо повезати БМП280 са Ардуино. Комплетан рад се такође може наћи у видеу датом испод, надамо се да сте уживали у овом БМП280 упутству за Ардуино и научили нешто корисно. Ако имате питања, оставите их у одељку за коментаре испод или користите форуме за друга техничка питања.