Sisällysluettelo:

Raspberry Pi - MPL3115A2 Tarkka korkeusmittarin anturi Python -opetusohjelma: 4 vaihetta
Raspberry Pi - MPL3115A2 Tarkka korkeusmittarin anturi Python -opetusohjelma: 4 vaihetta

Video: Raspberry Pi - MPL3115A2 Tarkka korkeusmittarin anturi Python -opetusohjelma: 4 vaihetta

Video: Raspberry Pi - MPL3115A2 Tarkka korkeusmittarin anturi Python -opetusohjelma: 4 vaihetta
Video: Raspberry Pi MPL3115A2 Precision Altimeter Sensor Python Tutorial 2024, Marraskuu
Anonim
Image
Image

MPL3115A2 käyttää MEMS -paineanturia, jossa on I2C -liitäntä, joka antaa tarkat paine-/korkeus- ja lämpötilatiedot. Anturilähdöt digitalisoidaan korkean resoluution 24-bittisellä ADC: llä. Sisäinen käsittely poistaa korvaustehtävät isäntä MCU -järjestelmästä. Se pystyy havaitsemaan muutoksen vain 0,05 kPa, mikä vastaa 0,3 metrin korkeuden muutosta. Tässä on sen esittely vadelma pi: llä käyttäen python -koodia.

Vaihe 1: Mitä tarvitset..

Mitä tarvitset..!!
Mitä tarvitset..!!

1. Vadelma Pi

2. MPL3115A2

3. I²C -kaapeli

4. I²C -kilpi Raspberry Pi: lle

5. Ethernet -kaapeli

Vaihe 2: Liitännät:

Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät

Ota I2C -kilpi vadelma pi: lle ja työnnä sitä varovasti vadelma pi: n gpio -nastojen päälle.

Liitä sitten I2C -kaapelin toinen pää MPL3115A2 -anturiin ja toinen pää I2C -suojaan.

Liitä myös Ethernet -kaapeli pi: hen tai voit käyttää WiFi -moduulia.

Liitännät näkyvät yllä olevassa kuvassa.

Vaihe 3: Koodi:

Koodi
Koodi

MPL3115A2: n python-koodi voidaan ladata Github-arkistostamme- DCUBE Store -yhteisöstä.

Tässä on linkki

Olemme käyttäneet SMBus -kirjastoa python -koodille, SMBus -asennuksen vaiheet vadelma pi: lle on kuvattu tässä:

pypi.python.org/pypi/smbus-cffi/0.5.1

Voit myös kopioida koodin täältä, se annetaan seuraavasti:

# Jaetaan vapaaehtoisella lisenssillä.

# Käytä sitä haluamallasi tavalla, voittoa tai ilmaiseksi, jos se sopii siihen liittyvien teosten lisensseihin.

# MPL3115A2

# Tämä koodi on suunniteltu toimimaan MPL3115A2_I2CS I2C Mini -moduulin kanssa

tuoda smbus

tuonnin aika

# Hanki I2C -bussi

väylä = smbus. SMBus (1)

# MPL3115A2 -osoite, 0x60 (96)

# Valitse ohjausrekisteri, 0x26 (38)

# 0xB9 (185) Aktiivinen tila, OSR = 128, korkeusmittari

bus.write_byte_data (0x60, 0x26, 0xB9)

# MPL3115A2 -osoite, 0x60 (96)

# Valitse tietojen määritysrekisteri, 0x13 (19)

# 0x07 (07) Tietojen valmis tapahtuma käytössä korkeudessa, paineessa ja lämpötilassa

bus.write_byte_data (0x60, 0x13, 0x07)

# MPL3115A2 -osoite, 0x60 (96)

# Valitse ohjausrekisteri, 0x26 (38)

# 0xB9 (185) Aktiivinen tila, OSR = 128, korkeusmittari

bus.write_byte_data (0x60, 0x26, 0xB9)

time.sleep (1)

# MPL3115A2 -osoite, 0x60 (96)

# Lue tiedot takaisin 0x00 (00), 6 tavua

# tila, tKorkeus MSB1, tKorkeus MSB, tKorkeus LSB, lämpötila MSB, lämpötila LSB

data = bus.read_i2c_block_data (0x60, 0x00, 6)

# Muunna tiedot 20-bittisiksi

tKorkeus = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16

lämpötila = ((data [4] * 256) + (data [5] & 0xF0)) / 16

korkeus = tKorkeus / 16,0

cTemp = lämpötila / 16,0

fTemp = cTemp * 1,8 + 32

# MPL3115A2 -osoite, 0x60 (96)

# Valitse ohjausrekisteri, 0x26 (38)

# 0x39 (57) Aktiivinen tila, OSR = 128, barometritila

bus.write_byte_data (0x60, 0x26, 0x39)

time.sleep (1)

# MPL3115A2 -osoite, 0x60 (96)

# Lue tiedot takaisin 0x00 (00), 4 tavua

# tila, esivalinta MSB1, esivalittu MSB, esivalinta LSB

data = bus.read_i2c_block_data (0x60, 0x00, 4)

# Muunna tiedot 20-bittisiksi

pres = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16

paine = (pres / 4.0) / 1000.0

# Tulosta tiedot näytölle

tulosta "Paine: %.2f kPa" %paine

tulosta "Korkeus: %.2f m" %korkeus

tulosta "Lämpötila celsiusasteina: %.2f C" %cTemp

tulosta "Lämpötila Fahrenheit: %.2f F" %fTemp

Vaihe 4: Sovellukset:

MPL3115A2: n eri sovelluksiin kuuluu korkean tarkkuuden korkeusmittari, älypuhelimet/tabletit, henkilökohtaisen elektroniikan korkeusmittari jne. Se voidaan sisällyttää myös GPS -kuolleen laskennan, hätäpalvelujen GPS -parannuksen, kartta -avustimen, navigoinnin ja sääaseman laitteisiin.

Suositeltava: