Tartalomjegyzék:

Magasság, nyomás és hőmérséklet a Raspberry Pi használatával az MPL3115A2 segítségével: 6 lépés
Magasság, nyomás és hőmérséklet a Raspberry Pi használatával az MPL3115A2 segítségével: 6 lépés

Videó: Magasság, nyomás és hőmérséklet a Raspberry Pi használatával az MPL3115A2 segítségével: 6 lépés

Videó: Magasság, nyomás és hőmérséklet a Raspberry Pi használatával az MPL3115A2 segítségével: 6 lépés
Videó: Высокая плотность 2022 2024, November
Anonim
Magasság, nyomás és hőmérséklet a Raspberry Pi használatával az MPL3115A2 segítségével
Magasság, nyomás és hőmérséklet a Raspberry Pi használatával az MPL3115A2 segítségével
Magasság, nyomás és hőmérséklet a Raspberry Pi használatával az MPL3115A2 segítségével
Magasság, nyomás és hőmérséklet a Raspberry Pi használatával az MPL3115A2 segítségével

Érdekesen hangzik. Ez teljesen lehetséges ebben az időben, amikor mindannyian az IoT generációjába lépünk. Elektronikai furcsaságként a Raspberry Pi -vel játszottunk, és úgy döntöttünk, hogy érdekes projekteket készítünk ezen ismeretek felhasználásával. Ebben a projektben a Raspberry Pi segítségével mérjük a magasságot, a légnyomást és a hőmérsékletet. Tehát itt van a dokumentáció (mindig módosítva és bővítve). Javasoljuk, hogy az utasítások követésével kezdje, és másolja le a kódot. Később kísérletezhet. Tehát kezdjük.

Lépés: Szükséges eszközök

Szükséges eszközök
Szükséges eszközök
Szükséges eszközök
Szükséges eszközök
Szükséges eszközök
Szükséges eszközök
Szükséges eszközök
Szükséges eszközök

1. Málna Pi

Az első lépés egy Raspberry Pi tábla beszerzése volt. Mi megvettük a magunkét, és ti is. Az oktatóanyagokból kezdve tanulni kezdtünk, megértettük a szkriptírást és a kapcsolódási fogalmakat, és utána tanultunk. Ez a kis zseni közös a hobbisták, tanárok és az innovatív környezetek kialakításában.

2. I²C Shield a Raspberry Pi számára

Az INPI2 (I2C adapter) biztosítja a Raspberry Pi 2/3 an I²C portot, amely több I2C eszközzel használható. Elérhető a Dcube Store -ban

3. Magasságmérő, nyomás- és hőmérsékletérzékelő, MPL3115A2

Az MPL3115A2 egy MEMS nyomásérzékelő I²C interfésszel, amely nyomás-/magasság- és hőmérséklet -adatokat szolgáltat. Ez az érzékelő az I²C protokollt használja a kommunikációhoz. Ezt az érzékelőt a Dcube Store -ból vásároltuk

4. Csatlakozó kábel

Az I2C összekötő kábel a Dcube Store -ban volt kapható

5. Micro USB kábel

A mikro USB kábel Tápegység ideális választás a Raspberry Pi tápellátásához.

6. Internet -hozzáférés javítása - Ethernet kábel/WiFi adapter

Ebben a korszakban bármi eléréséhez internetkapcsolatra van szükség (majdnem úgy, mint offline élet is). Ezért megfogadjuk egy LAN -kábel vagy egy vezeték nélküli Nano USB -adapter (WiFi) tanácsát az internetkapcsolat kiépítéséhez, hogy könnyedén és egyáltalán nem használhassuk a Rasp Pi -t.

7. HDMI kábel (opcionális, az Ön választása)

Kicsit trükkös. Lehetőség van arra, hogy egy másik monitort is csatoljon, ha akar, vagy nagyon költséghatékony, ha fejetlen Pi kapcsolatot hoz létre a számítógéppel/laptoppal.

2. lépés: Hardvercsatlakozások az áramkör összeállításához

Hardvercsatlakozások az áramkör összeállításához
Hardvercsatlakozások az áramkör összeállításához
Hardvercsatlakozások az áramkör összeállításához
Hardvercsatlakozások az áramkör összeállításához

Készítse el az áramkört az ábrán látható vázlat szerint. Általában a csatlakozások nagyon egyszerűek. Kövesse az utasításokat és a képeket, és nem lehet probléma.

A tervezés során megvizsgáltuk a hardvert és a kódolást, valamint az elektronika alapjait. Egy egyszerű elektronikai vázlatot akartunk kialakítani ehhez a projekthez. Az ábrán az I²C kommunikációs protokollokat követve láthatja a különböző alkatrészeket, tápegységeket és I²C érzékelőket. Remélhetőleg ez illusztrálja, milyen egyszerű az elektronika ehhez a projekthez.

A Raspberry Pi és az I2C Shield csatlakoztatása

Először is vegye a Raspberry Pi -t, és tegye rá az I²C pajzsot. Finoman nyomja meg a pajzsot (lásd a képet).

Az érzékelő és a Raspberry Pi csatlakoztatása

Fogja meg az érzékelőt, és csatlakoztassa hozzá az I²C kábelt. Győződjön meg arról, hogy az I²C kimenet MINDIG csatlakozik az I²C bemenethez. Ugyanezt kell követnie a Raspberry Pi -nek is, amelyre az I²C pajzs van felszerelve. Az I²C Shield és az I²C összekötő kábelek az oldalunkon vannak, ami nagyon nagy előny, mivel csak a plug and play opció marad. Nincs többé csapokkal és vezetékekkel kapcsolatos probléma, és így a zavartság megszűnt. Milyen megkönnyebbülés, ha csak képzeljük magunkat a vezetékek hálójába, és ebbe belemerülünk. Csak az egyszerű folyamat, amelyet említettünk.

Megjegyzés: A barna vezetéknek mindig követnie kell a föld (GND) kapcsolatot az egyik eszköz kimenete és egy másik eszköz bemenete között

Az internetkapcsolat létfontosságú

Valójában itt van választási lehetősége. A Raspberry Pi -t LAN -kábellel vagy vezeték nélküli Nano USB -adapterrel csatlakoztathatja a WiFi -kapcsolathoz. Mindenesetre a fő cél az volt, hogy csatlakozzon az internethez.

Az áramkör áramellátása

Csatlakoztassa a Micro USB kábelt a Raspberry Pi tápcsatlakozójához. Gyújts rá, és már indulhatunk is.

Csatlakozás a képernyőhöz

Vagy csatlakoztathatjuk a HDMI-kábelt egy új monitorhoz, vagy elkészíthetjük a fej nélküli Pi-t, amely kreatív és költséghatékony a távoli hozzáférés, például az SSH/PuTTY használatával. (Tudom, hogy nem finanszírozunk titkos szervezetként)

3. lépés: Raspberry Pi programozás Pythonban

Raspberry Pi programozás Pythonban
Raspberry Pi programozás Pythonban

A Raspberry Pi és az MPL3115A2 érzékelő Python -kódja. Ez elérhető a Github tárházunkban.

Mielőtt folytatná a kódot, feltétlenül olvassa el a Readme fájlban található utasításokat, és állítsa be a Raspberry Pi -t ennek megfelelően. Ez csak egy pillanatba telik.

A tengerszint feletti magasságot a nyomás alapján számítják ki az alábbi egyenlet segítségével:

h = 44330,77 {1 - (p / p0) ^ 0,1902632} + OFF_H (regisztrációs érték)

Ahol p0 = tengerszinti nyomás (101326 Pa) és h méterben értendő. Az MPL3115A2 ezt az értéket használja, mivel az eltolási regiszter LSB -nként 2 Pascal.

A kód egyértelműen előtted van, és a legegyszerűbb formában képzelhető el, és nem lehet gond.

Innen is másolhatja az érzékelő működő Python -kódját.

# Szabad akaratú licenccel terjesztik.# Bármilyen módon használhatja, haszonnal vagy ingyen, feltéve, hogy illeszkedik a kapcsolódó művek licenceihez. # MPL3115A2 # Ezt a kódot úgy tervezték, hogy együttműködjön a ControlEverything.com webhelyen elérhető MPL3115A2_I2CS I2C Mini modullal. #

import smbus

importálási idő

# Szerezzen I2C buszt

busz = smbus. SMBus (1)

# MPL3115A2 cím, 0x60 (96)

# Vezérlőregiszter kiválasztása, 0x26 (38) # 0xB9 (185) Aktív mód, OSR = 128, Magasságmérő mód bus.write_byte_data (0x60, 0x26, 0xB9) # MPL3115A2 cím, 0x60 (96) # Adatkonfigurációs regiszter kiválasztása, 0x13 (19)) # 0x07 (07) Adatok kész esemény engedélyezve a magasság, nyomás, hőmérséklet busz.write_byte_data (0x60, 0x13, 0x07) # MPL3115A2 cím, 0x60 (96) # Vezérlőregiszter kiválasztása, 0x26 (38) # 0xB9 (185) Aktív mód, OSR = 128, Magasságmérő mód bus.write_byte_data (0x60, 0x26, 0xB9)

time.sleep (1)

# MPL3115A2 cím, 0x60 (96)

# Adatok visszaolvasása 0x00 (00), 6 bájt # állapot, tMagasság MSB1, tMagasság MSB, tmagasság LSB, temp. MSB, temp. LSB adatok = bus.read_i2c_block_data (0x60, 0x00, 6)

# Konvertálja az adatokat 20 bitesre

tHeight = (([adatok] [1] * 65536) + (adatok [2] * 256) + (adatok [3] és 0xF0)) / 16 hőmérséklet = ((adatok [4] * 256) + (adatok [5] & 0xF0)) / 16 magasság = t Magasság / 16,0 cTemp = hőmérséklet / 16,0 fTemp = cTemp * 1,8 + 32

# MPL3115A2 cím, 0x60 (96)

# Vezérlőregiszter kiválasztása, 0x26 (38) # 0x39 (57) Aktív mód, OSR = 128, Barométer mód bus.write_byte_data (0x60, 0x26, 0x39)

time.sleep (1)

# MPL3115A2 cím, 0x60 (96)

# Adatok visszaolvasása 0x00 -tól (00), 4 bájt # állapot, előre MSB1, előre MSB, előre LSB adatok = bus.read_i2c_block_data (0x60, 0x00, 4)

# Konvertálja az adatokat 20 bitesre

pres = ((adatok [1] * 65536) + (adatok [2] * 256) + (adatok [3] és 0xF0)) / 16 nyomás = (pres / 4,0) / 1000,0

# Adatok megjelenítése a képernyőn

print "Nyomás: %.2f kPa" %nyomásnyomtatás "Magasság: %.2f m" %magasság nyomtatás "Hőmérséklet Celsius -ban: %.2f C" %cTemp nyomtatás "Hőmérséklet Fahrenheitben: %.2f F" %fTemp

4. lépés: A kódex praktikussága (tesztelés)

A kódex gyakorlatiassága (tesztelés)
A kódex gyakorlatiassága (tesztelés)

Most töltse le (vagy git pull) a kódot, és nyissa meg a Raspberry Pi -ben.

Futtassa a parancsokat a fordításhoz és a kód feltöltéséhez a terminálon, és nézze meg a Monitor kimenetét. Néhány másodperc múlva megjelenik az összes paraméter. Miután meggyőződött arról, hogy minden zökkenőmentesen működik, ezt a projektet nagyobb projektbe foglalhatja.

5. lépés: Alkalmazások és szolgáltatások

Az MPL3115A2 precíziós magasságmérő I²C érzékelőket gyakran használják olyan alkalmazásokban, mint a Térkép (Térképsegéd, Navigáció), Mágneses Iránytű vagy A GPS (GPS -holtszámolás, GPS -javítás a sürgősségi szolgáltatásokhoz), Nagy pontosságú magasságmérés, Okostelefonok/táblagépek, Személyi elektronikai magasságmérés és műholdak (meteorológiai állomások felszerelése/előrejelzés).

Mert pl. egy projekt a Personal Electronics Altimeter készítésére, amely a magasságot, a légnyomást és a hőmérsékletet méri a Raspberry Pi segítségével. A Personal Electronics Altimeter összességében meglehetősen gyors projekt. Csak néhány pillanatba telik, ha minden része megvan, és nem improvizál (természetesen megteheti!). A nyomásmagasságmérő a legtöbb repülőgépben megtalálható magasságmérő, és az ejtőernyősök csuklóra szerelt változatokat használnak hasonló célokra. A túrázók és a hegymászók csuklóra szerelt vagy kézi magasságmérőt használnak.

6. lépés: Következtetés

Reméljük, hogy ez a projekt további kísérleteket inspirál. Ez az I²C érzékelő hihetetlenül sokoldalú, olcsó és hozzáférhető. Mivel ez egy rendkívül változékony program, érdekes módon lehet ezt a projektet kiterjeszteni és még jobbá tenni. Például a magasságmérő opcionális műszer a terepjárókban, hogy segítse a navigációt. Néhány nagyteljesítményű luxusautó, amelyet soha nem szándékoztak kikövezett utakról elhagyni, használja ezt a technológiát. Az Ön kényelme érdekében van egy érdekes videó oktatóanyagunk a YouTube -on, amely segíthet a felfedezésben. Reméljük, hogy ez a projekt további kísérleteket inspirál.

Ajánlott: