Turinys:
- 1 žingsnis: reikalinga įranga
- 2 veiksmas: aparatinės įrangos jungtys grandinei sujungti
- 3 žingsnis: Raspberry Pi programavimas „Python“
- 4 žingsnis: kodekso praktiškumas (testavimas)
- 5 žingsnis: programos ir funkcijos
- 6 žingsnis: Išvada
Video: Aukštis, slėgis ir temperatūra naudojant „Raspberry Pi“su MPL3115A2: 6 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Skamba įdomiai. Tai visiškai įmanoma šiuo metu, kai mes visi einame į IoT kartą. Būdami elektronikos keistuoliu, mes žaidėme su „Raspberry Pi“ir nusprendėme sukurti įdomių projektų, panaudodami šias žinias. Šiame projekte mes išmatuosime aukštį, oro slėgį, temperatūrą naudodami „Raspberry Pi“. Taigi čia pateikiami dokumentai (visada keičiami ir plečiami). Rekomenduojame pradėti nuo nurodymų ir nukopijuoti kodą. Vėliau galite eksperimentuoti. Taigi pradėkime.
1 žingsnis: reikalinga įranga
1. Avietė Pi
Pirmasis žingsnis buvo įsigyti Raspberry Pi plokštę. Mes nusipirkome savo, o jūs - ir jūs. Pradėję mokytis iš vadovėlių, supratome scenarijų ir ryšio sąvokas ir sužinojome vėliau. Šis mažas genijus būdingas mėgėjams, mokytojams ir kuriant novatorišką aplinką.
2. „I²C Shield“, skirtas „Raspberry Pi“
INPI2 (I2C adapteris) turi Raspberry Pi 2/3 an I²C prievadą, skirtą naudoti su keliais I2C įrenginiais. Tai galima rasti „Dcube“parduotuvėje
3. Aukščio matuoklis, slėgio ir temperatūros jutiklis, MPL3115A2
MPL3115A2 yra MEMS slėgio jutiklis su I²C sąsaja, suteikiančia slėgio/aukščio ir temperatūros duomenis. Šis jutiklis naudoja I²C protokolą bendravimui. Šį jutiklį įsigijome iš „Dcube Store“
4. Prijungimo kabelis
„Ic“jungiamąjį kabelį turėjome „Dcube“parduotuvėje
5. Mikro USB kabelis
Mikro USB kabelis Maitinimo šaltinis yra idealus pasirinkimas maitinant Raspberry Pi.
6. Interneto prieigos stiprinimas - eterneto kabelis/„WiFi“adapteris
Šiuo laikotarpiu norint pasiekti bet ką reikia interneto ryšio (beveik taip pat, kaip ir gyvenimas neprisijungus). Taigi, norėdami užmegzti interneto ryšį, kad galėtume lengvai ir be jokių problemų naudotis LAN patarimu, kreipiamės į LAN kabelį arba belaidį „Nano USB“adapterį („WiFi“).
7. HDMI kabelis (pasirinktinai, jūsų pasirinkimas)
Tai šiek tiek sudėtinga. Jei norite, galite turėti galimybę prijungti kitą monitorių, jei jis yra labai ekonomiškas, sukurdami „Pi“ryšį be galvos su kompiuteriu/nešiojamuoju kompiuteriu.
2 veiksmas: aparatinės įrangos jungtys grandinei sujungti
Padarykite grandinę pagal pateiktą schemą. Apskritai, jungtys yra labai paprastos. Vykdykite instrukcijas ir vaizdus, ir jums neturėtų kilti problemų.
Planuodami mes pažvelgėme į aparatūrą ir kodavimą, taip pat į elektronikos pagrindus. Šiam projektui norėjome sukurti paprastą elektronikos schemą. Diagramoje galite pastebėti skirtingas dalis, maitinimo komponentus ir I²C jutiklį pagal I²C ryšio protokolus. Tikimės, kad tai parodo, kaip paprasta šio projekto elektronika.
„Raspberry Pi“ir „I2C Shield“jungtis
Pirmiausia paimkite Raspberry Pi ir uždėkite ant jo I²C skydą. Švelniai paspauskite skydą (žr. Paveikslėlį).
Jutiklio ir „Raspberry Pi“prijungimas
Paimkite jutiklį ir prijunkite prie jo I²C kabelį. Įsitikinkite, kad I²C išvestis VISADA jungiasi prie I²C įvesties. To paties turi laikytis „Raspberry Pi“su virš jo pritvirtintu „I²C“ekranu. „I²C Shield“ir „I²C“jungiamieji kabeliai yra labai didelis privalumas, nes mums lieka tik prijungimo ir paleidimo funkcija. Daugiau jokių kaiščių ir laidų problemų, taigi painiavos nebeliko. Koks palengvėjimas, kaip įsivaizduoti save laidų tinkle ir patekti į tai. Tiesiog paprastas procesas, kurį mes minėjome.
Pastaba: ruda viela visada turi sekti įžeminimo (GND) jungtį tarp vieno įrenginio išvesties ir kito įrenginio įvesties
Interneto ryšys yra gyvybiškai svarbus
Čia jūs tikrai turite pasirinkimą. „Raspberry Pi“galite prijungti LAN kabeliu arba belaidžiu „Nano“USB adapteriu, kad galėtumėte prisijungti prie „WiFi“. Bet kokiu atveju pagrindinis tikslas buvo prisijungti prie interneto.
Grandinės maitinimas
Prijunkite „Micro USB“kabelį prie „Raspberry Pi“maitinimo lizdo. Įžiebkite šviesą ir mums gera eiti.
Ryšys su ekranu
Mes galime prijungti HDMI kabelį prie naujo monitoriaus arba sukurti „Pi“be galvos, kuris yra kūrybingas ir ekonomiškas naudojant nuotolinę prieigą, pvz., SSH/PuTTY. (Žinau, kad mes nefinansuojami kaip slapta organizacija)
3 žingsnis: Raspberry Pi programavimas „Python“
Raspberry Pi ir MPL3115A2 jutiklio „Python“kodas. Tai galima rasti mūsų „Github“saugykloje.
Prieš pereidami prie kodo, būtinai perskaitykite „Readme“faile pateiktas instrukcijas ir pagal tai nustatykite „Raspberry Pi“. Tai užtruks tik akimirką.
Aukštis apskaičiuojamas pagal slėgį, naudojant toliau pateiktą lygtį:
h = 44330,77 {1 - (p / p0) ^ 0,1902632} + OFF_H (registro vertė)
Kur p0 = jūros lygio slėgis (101326 Pa) ir h yra metrais. MPL3115A2 naudoja šią vertę, nes poslinkio registras yra apibrėžtas kaip 2 Pascal per LSB.
Kodas aiškiai matomas priešais jus ir yra paprasčiausios formos, kokią galite įsivaizduoti, ir jums neturėtų kilti problemų.
Iš čia taip pat galite nukopijuoti šio jutiklio veikiančią „Python“kodą.
# Platinama su laisvos valios licencija. # MPL3115A2 # Šis kodas skirtas dirbti su „MPL3115A2_I2CS I2C Mini“moduliu, kurį galima įsigyti iš „ControlEverything.com“. #
importuoti smbus
importo laikas
# Gaukite I2C autobusą
autobusas = smbus. SMBus (1)
# MPL3115A2 adresas, 0x60 (96)
# Pasirinkite valdymo registrą, 0x26 (38) # 0xB9 (185) Aktyvus režimas, OSR = 128, Altimeter mode bus.write_byte_data (0x60, 0x26, 0xB9) # MPL3115A2 adresas, 0x60 (96) # Pasirinkite duomenų konfigūracijos registrą, 0x13 (19)) # 0x07 (07) Įjungtas duomenų paruošimo įvykis aukščiui, slėgiui, temperatūrai magistralėje.write_byte_data (0x60, 0x13, 0x07) # MPL3115A2 adresas, 0x60 (96) # Pasirinkite valdymo registrą, 0x26 (38) # 0xB9 (185) Aktyvus režimas, OSR = 128, altimetro režimo magistralė.write_byte_data (0x60, 0x26, 0xB9)
laikas. miegas (1)
# MPL3115A2 adresas, 0x60 (96)
# Skaityti duomenis iš 0x00 (00), 6 baitų # būsenos, tAukštis MSB1, tAukštis MSB, tAukštis LSB, temp MSB, temp LSB duomenys = autobusas.read_i2c_block_data (0x60, 0x00, 6)
# Konvertuokite duomenis į 20 bitų
tAukštis = ((duomenys [1] * 65536) + (duomenys [2] * 256) + (duomenys [3] ir 0xF0)) / 16 temp = ((duomenys [4] * 256) + (duomenys [5] ir 0xF0)) / 16 aukštis = tAukštis / 16,0 cTemp = temp / 16,0 fTemp = cTemp * 1,8 + 32
# MPL3115A2 adresas, 0x60 (96)
# Pasirinkite valdymo registrą, 0x26 (38) # 0x39 (57) Aktyvusis režimas, OSR = 128, Barometro režimo magistralė.write_byte_data (0x60, 0x26, 0x39)
laikas. miegas (1)
# MPL3115A2 adresas, 0x60 (96)
# Skaityti duomenis iš 0x00 (00), 4 baitų # būsenos, iš anksto MSB1, iš anksto MSB, iš anksto LSB duomenys = bus.read_i2c_block_data (0x60, 0x00, 4)
# Konvertuokite duomenis į 20 bitų
pres = ((duomenys [1] * 65536) + (duomenys [2] * 256) + (duomenys [3] ir 0xF0)) / 16 slėgis = (pres / 4,0) / 1000,0
# Išveskite duomenis į ekraną
spausdinti "Slėgis: %.2f kPa" %slėgio spausdinimas "Aukštis: %.2f m" %aukščio spausdinimas "Temperatūra Celsijaus laipsniais: %.2f C" %cTemp spausdinimas "Temperatūra Farenheitu: %.2f F" %fTemp
4 žingsnis: kodekso praktiškumas (testavimas)
Dabar atsisiųskite (arba ištraukite) kodą ir atidarykite jį „Raspberry Pi“.
Vykdykite komandas kompiliuoti ir įkelti kodą terminale ir pamatysite monitoriaus išvestį. Po kelių sekundžių jis parodys visus parametrus. Įsitikinę, kad viskas veikia sklandžiai, galite perkelti šį projektą į didesnį projektą.
5 žingsnis: programos ir funkcijos
MPL3115A2 tikslaus aukščio matuoklio I²C jutiklis dažniausiai naudojamas tokiose programose kaip Žemėlapis (Žemėlapio asistentas, Navigacija), Magnetinis kompasas arba GPS (GPS mirusiųjų skaičiavimas, GPS patobulinimas skubios pagalbos tarnyboms), Didelio tikslumo aukščio matavimas, Išmanieji telefonai/planšetiniai kompiuteriai, Asmeninės elektronikos aukščio matuoklis ir palydovai (orų stoties įranga/prognozavimas).
Dėl pvz. projektas, skirtas „Personal Electronics Altimeter“, kuris matuoja aukštį, oro slėgį, temperatūrą naudojant „Raspberry Pi“. „Personal Electronics Altimeter“yra gana greitai sukurtas projektas. Tai užtruks tik kelias akimirkas, jei turite visas dalis ir neimprovizuosite (žinoma, galite!). Slėgio aukščio matuoklis yra altimetras, randamas daugumoje orlaivių, o parašiutininkai panašiems tikslams naudoja ant riešo montuojamas versijas. Žygeiviai ir alpinistai naudoja ant riešo arba rankoje laikomus aukščiamačius.
6 žingsnis: Išvada
Tikiuosi, kad šis projektas įkvėps tolesniems eksperimentams. Šis I²C jutiklis yra neįtikėtinai universalus, pigus ir prieinamas. Kadangi tai labai kintanti programa, yra įdomių būdų, kaip išplėsti šį projektą ir padaryti jį dar geresnį. Pavyzdžiui, aukščio matuoklis yra neprivalomas prietaisas visureigėse transporto priemonėse, padedantis naršyti. Kai kurie aukštos kokybės prabangūs automobiliai, kurie niekada nebuvo skirti išvažiuoti iš asfaltuotų kelių, naudoja šią technologiją. Jūsų patogumui „YouTube“turime įdomią vaizdo įrašo pamoką, kuri gali padėti jūsų tyrimams. Tikiuosi, kad šis projektas įkvėps tolesniems eksperimentams.
Rekomenduojamas:
M5STACK Kaip rodyti temperatūrą, drėgmę ir slėgį naudojant „M5StickC ESP32“naudojant „Visuino“- lengva padaryti: 6 žingsniai
„M5STACK“Kaip rodyti temperatūrą, drėgmę ir slėgį „M5StickC ESP32“naudojant „Visuino“- lengva padaryti: šioje pamokoje sužinosime, kaip užprogramuoti „ESP32 M5Stack StickC“su „Arduino IDE“ir „Visuino“rodyti temperatūrą, drėgmę ir slėgį naudojant ENV jutiklį (DHT12, BMP280, BMM150)
„Arduino“orų stotis naudojant BMP280 -DHT11 - temperatūra, drėgmė ir slėgis: 8 žingsniai
„Arduino“orų stotis naudojant BMP280 -DHT11 - Temperatūra, drėgmė ir slėgis: Šioje pamokoje sužinosime, kaip sukurti orų stotį, kuri TFT 7735 LCD ekrane rodys TEMPERATŪRĄ, DRĖGMĘ IR SLĖGĮ Žiūrėkite demonstracinį vaizdo įrašą
AUKŠTAS AUKŠTIS: 9 žingsniai
AUKŠTAS AUKŠTIS: visiems reikia kompiuterio, kuriuo galėtumėte žiūrėti vaizdo įrašus, skaityti straipsnius, žaisti žaidimus ir evangelinį darbą !! problema yra ta, kad kiekvienas turi vieną, todėl visi linkę atrodyti vienodai nuobodi juoda dėžutė, manau, jei norite būti „žaidėjas“galite pridėti
Visuino I2C BMP280 slėgis, temperatūra+OLED: 7 žingsniai
Visuino I2C BMP280 slėgis, temperatūra+OLED: šioje pamokoje naudosime I2C BMP280 slėgį, temperatūros jutiklį, OLED LCD, „Arduino UNO“matuoti slėgį ir temperatūrą bei rodyti rezultatus LCD ekrane. Žiūrėkite demonstracinį vaizdo įrašą
„Raspberry Pi“naudojimas, išmatuokite aukštį, slėgį ir temperatūrą naudodami MPL3115A2: 6 žingsniai
Naudodami „Raspberry Pi“, išmatuokite aukštį, slėgį ir temperatūrą naudodami MPL3115A2: žinokite, kas jums priklauso, ir žinokite, kodėl jums tai priklauso! Tai intriguoja. Mes gyvename interneto automatikos amžiuje, nes ji pasineria į daugybę naujų programų. Kaip kompiuterių ir elektronikos entuziastai, mes daug išmokome su „Raspberry Pi a