- Būtini komponentai
- BMP280 slėgio jutiklio modulis:
- BMP280 sąsajos su „Arduino“ schema:
- „Arduino“ programa, skirta sąsajai BMP280 su „Arduino“:
- „Arduino BMP280“ slėgio jutiklių sąsajos projekto darbas
Jei norite sukurti savo temperatūros stebėjimo sistemą arba išmatuoti drono aukštį ar tiesiog norite išmatuoti atmosferos slėgį savo vietovėje, tada vienas iš geriausių modulių, kurį galite naudoti savo projekte, yra BMP280 slėgio jutiklio modulis. BMP280 yra absoliutus slėgio ir temperatūros stebėjimo jutiklis, kuris yra patobulinta BMP085, BMP180, BMP183 jutiklių versija. Kodėl ji vadinama atnaujinta versija? Tai bus aptarta tolesniuose skyriuose. Vienoje iš ankstesnių pamokų jau naudojome senesnę versiją BMP180 su „Arduino“.
BMP280 jutiklio modulis gali būti naudojamas kartu su mikrovaldikliais, tokiais kaip „Arduino“, PIC, AVR ir kt. Šiam projektui temperatūros ir slėgio reikšmėms rodyti naudosime „ Arduino Uno“ su BMP280 kartu su LCD 16x2 ekrano moduliu. Prieš susiedami „BMP280“ su „Arduino“, turime atsisiųsti „ BMP280 Arduino“ biblioteką, kurią sukūrė „Adafruit“. Spustelėkite šią „ Adafruit BMP280“ bibliotekos nuorodą, kad atidarytumėte atitinkamą „Github“ puslapį ir pridėtumėte antraštės failą prie „Arduino IDE“.
Būtini komponentai
- Arduino
- BMP280
- Laidų sujungimas
- Bandomoji Lenta
- LCD- 16x2
BMP280 slėgio jutiklio modulis:
BMP280 jutiklio modulis veikia esant minimaliai įtampai (VDD) 1,71 V, o ankstesnės versijos jutiklių moduliai veikia 1,8 V (VDD). Kalbant apie dabartinį suvartojimą, BMP280 sunaudoja 2,7uA, tuo tarpu BMP180 sunaudoja 12uA, o BMP183 ir BMP085 - 5uA. BMP280 taip pat palaiko naujus filtravimo režimus. BMP280 jutiklio modulis palaiko I2c ir SPI protokolus, o likęs jutiklis palaiko I2c arba SPI. BMP280 jutiklio modulio tikslumas yra ± 0,12 hPa, kuris yra lygus ± 1 m aukščio skirtumui. Dėl šių pagrindinių savybių jis dažniausiai naudojamas įvairiose programose. BMP jutiklis susideda iš slėgio jutiklio elemento, drėgmės jutiklio elemento ir temperatūros jutiklio elemento, kurie dar yra prijungti prie slėgio priekinės, drėgmės priekinės ir temperatūros priekinės pusės. Šie priekiniai IC yra jautrumo analoginiai stiprintuvai, naudojami stiprinant mažus signalus. Šios analoginės priekinės grandinės IC išvestis tiekiama į ADC kaip įvesties signalą. Tokiu būdu analoginės vertės yra konvertuojamos į skaitmeninę įtampą ir ši įtampa tiekiama į logines grandines tolesnei sąsajai su išoriniu pasauliu.
BMP280 jutiklio modulį sudaro trys energijos režimai: miego režimas, priverstinis režimas ir įprastas režimas. Miego režimu matavimai neatliekami, o energijos suvartojimas yra minimalus. Priverstiniu režimu atliekamas vienas matavimas pagal pasirinktas matavimo ir filtravimo parinktis. Įprastinis režimas nepertraukiamai keičiasi tarp matavimo ir budėjimo periodo, o ciklo laiką nustatys „Tstandby“. Budėjimo režimo srovė yra šiek tiek didesnė nei miego režimo.
BMP280 sąsajos su „Arduino“ schema:
Žemiau parodyta grandinės schema, skirta „ Arduino“ prijungti prie BMP280 jutiklio ir LCD. Jei esate visiškai naujas „Arduino“ ir LCD ekranas, galite patikrinti šią „Arduino“ LCD instrukciją, kad suprastumėte, kaip naudoti „Arduino“ su LCD ekranais.
Jutiklio VCC ir GND kaiščiai yra prijungti prie „Arduino“ 3v3 ir GND kaiščių. Jutiklio SCL ir SDA kaiščiai yra prijungti prie „Arduino“ plokštės A5 ir A4. LCD jungtys yra tokios
LCD smeigtuko pavadinimas |
Arduino kaištis |
VSS ir RW |
BND |
RS |
D9 |
E |
D8 |
D4, D5, D6, D7 |
D5, D4, D3, D2 |
„Arduino“ programa, skirta sąsajai BMP280 su „Arduino“:
Visą BMP280 „Arduino“ kodą rasite šio puslapio apačioje, kurį galite įkelti tiesiai į savo „Arduino“ lentą. To paties paaiškinimas pateiktas žemiau
Šios bibliotekos yra įtrauktos įgalinant specialias funkcijas. #Include antraštės failus galime tiesiogiai nuskaityti iš jutiklio gaunamas vertes. Įtraukti
# įtraukti
Kuriama „Adafruit_BMP280“ objekte BMP. Objektų failas sukurtas norint pasiekti specialias funkcijas.
„Adafruit_BMP280 bmp“; I2C
„Arduino“ kaiščių nustatymas norint bendrauti su LCD. Naudojant šiuos kaiščius, duomenys bus perkelti.
„LiquidCrystal LCD“ (9, 8, 5, 4, 3, 2);
LCD ir nuoseklaus ryšio inicijavimas.
negaliojanti sąranka () {lcd.begin (16,2); Serijos pradžia (9600); Serial.println (F („BMP280 testas“)); lcd.print („Sveiki atvykę į“); lcd.setCursor (0,1); lcd.print („CIRCUIT DIGEST“); vėlavimas (1000); lcd.clear (); if (! bmp.begin ()) {Serial.println (F ("Nepavyko rasti galiojančio BMP280 jutiklio, patikrinkite laidus!")); o (1); }
Ši funkcija veikia, kai nepavyksta inicijuoti bmp objekto.
/ * Numatytieji nustatymai iš duomenų lapo. * / bmp.setSampling (Adafruit_BMP280:: MODE_NORMAL, / * Operating Mode. * / Adafruit_BMP280:: SAMPLING_X2, / * Temp. oversampling * / Adafruit_BMP280:: SAMPLING_X16, / * Slėgio perteklinis mėginių ėmimas / Adafruit_BMP280:: FILTER * / „Adafruit_BMP280:: STANDBY_MS_500“; /* Budėjimo laikas. * /}
Ši kodo dalis spausdina temperatūrą serijiniame monitoriuje ir yra skirta derinimui.
void loop () {Serial.print (F ("Temperatūra =")); Serial.print (bmp.readTemperature ()); Serial.println ("* C");
Funkcijos bmp.readPressure ir bmp.readTemprature yra naudojamos norint iškviesti specialias funkcijas ir grąžinti temperatūros ir slėgio reikšmes.
lcd.print (bmp.readTemperature ()); lcd.print (bmp.readPressure ());
„Arduino BMP280“ slėgio jutiklių sąsajos projekto darbas
Funkcijos bmp.readTemprature () ir bmp.readPressure () naudojamos grąžinti temperatūros ir slėgio reikšmes. Šios funkcijos yra teiginių grupė, atliekanti specialią užduotį, mūsų atveju - grįžtamosios temperatūros ir slėgio failus. Šios funkcijos iškviečiamos naudojant bmp.readTemprature () ir bmp.readPressure () funkcijas. „ Lcd.setCursor“ nustato LCD žymeklį reikiamoje ekrano vietoje. lcd.print komanda išspausdina duomenis iš programuotojo nustatytos padėties. Jei pagal numatytuosius nustatymus LCD nėra nustatytos padėties, pradinė padėtis ir nuolatinis duomenų spausdinimas yra (0,0). Kiti duomenys užima kito stulpelio poziciją ir procedūra tęsiasi tol, kol pasiekia eilutės pabaigą ir pereina į kitą eilutę.
BMP280 gali būti naudojamas skraidantiems žaislams, mobiliesiems telefonams, planšetiniams kompiuteriams, asmeniniams kompiuteriams, GPS prietaisams, nešiojamiesiems sveikatos priežiūros prietaisams, namų meteorologijos stotims ir kt. Laikydamiesi šios procedūros ir naudodami antraštės failus bei kai kurias specialias funkcijas, mes galime lengvai susieti BMP280 su Arduino. Visą darbą taip pat galite rasti žemiau pateiktame vaizdo įraše, tikiuosi, kad jums patiko ši „ BMP280 Arduino“ pamoka ir sužinojote ką nors naudingo. Jei turite klausimų, palikite juos komentarų skiltyje žemiau arba naudokite forumus kitiems techniniams klausimams.