Innehållsförteckning:
Video: Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Python Tutorial: 4 Steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:38
MPL3115A2 använder en MEMS -trycksensor med ett I2C -gränssnitt för att ge exakta tryck/höjd- och temperaturdata. Sensorutgångarna digitaliseras med en högupplöst 24-bitars ADC. Intern behandling tar bort kompensationsuppgifter från värd -MCU -systemet. Den kan upptäcka en förändring på endast 0,05 kPa vilket motsvarar en höjdförändring på 0,3 m. Här är dess demonstration med hallon pi med pythonkod.
Steg 1: Vad du behöver.. !
1. Hallon Pi
2. MPL3115A2
3. I²C -kabel
4. I²C -sköld för Raspberry Pi
5. Ethernet -kabel
Steg 2: Anslutningar:
Ta en I2C -sköld för hallonpi och tryck den försiktigt över gpio -stiften på hallonpi.
Anslut sedan den ena änden av I2C -kabeln till MPL3115A2 -sensorn och den andra änden till I2C -skärmen.
Anslut också Ethernet -kabeln till pi eller så kan du använda en WiFi -modul.
Anslutningar visas på bilden ovan.
Steg 3: Kod:
Pythonkoden för MPL3115A2 kan laddas ner från vårt Github-arkiv- DCUBE Store Community.
Här är länken
Vi har använt SMBus -biblioteket för pythonkod, stegen för att installera SMBus på hallon pi beskrivs här:
pypi.python.org/pypi/smbus-cffi/0.5.1
Du kan också kopiera koden härifrån, den ges enligt följande:
# Distribueras med en fri vilja licens.
# Använd det hur du vill, vinst eller gratis, förutsatt att det passar i licensen för dess associerade verk.
# MPL3115A2
# Denna kod är utformad för att fungera med MPL3115A2_I2CS I2C Mini Module
importera smbus
importtid
# Skaffa I2C -buss
buss = smbus. SMBus (1)
# MPL3115A2 -adress, 0x60 (96)
# Välj kontrollregister, 0x26 (38)
# 0xB9 (185) Aktivt läge, OSR = 128, höjdmätarläge
bus.write_byte_data (0x60, 0x26, 0xB9)
# MPL3115A2 -adress, 0x60 (96)
# Välj datakonfigurationsregister, 0x13 (19)
# 0x07 (07) Dataklar händelse aktiverad för höjd, tryck, temperatur
bus.write_byte_data (0x60, 0x13, 0x07)
# MPL3115A2 -adress, 0x60 (96)
# Välj kontrollregister, 0x26 (38)
# 0xB9 (185) Aktivt läge, OSR = 128, höjdmätarläge
bus.write_byte_data (0x60, 0x26, 0xB9)
tid. sover (1)
# MPL3115A2 -adress, 0x60 (96)
# Läs tillbaka data från 0x00 (00), 6 byte
# status, höjd MSB1, höjd MSB, höjd LSB, temp MSB, temp LSB
data = buss.läs_i2c_block_data (0x60, 0x00, 6)
# Konvertera data till 20-bitar
tHöjd = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16
temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16
höjd = tHöjd / 16,0
cTemp = temp / 16,0
fTemp = cTemp * 1,8 + 32
# MPL3115A2 -adress, 0x60 (96)
# Välj kontrollregister, 0x26 (38)
# 0x39 (57) Aktivt läge, OSR = 128, Barometerläge
bus.write_byte_data (0x60, 0x26, 0x39)
tid. sover (1)
# MPL3115A2 -adress, 0x60 (96)
# Läs data tillbaka från 0x00 (00), 4 byte
# status, pres MSB1, pres MSB, pres LSB
data = buss.läs_i2c_block_data (0x60, 0x00, 4)
# Konvertera data till 20-bitar
pres = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16
tryck = (pres / 4.0) / 1000.0
# Mata ut data till skärmen
tryck "Tryck: %.2f kPa" %tryck
print "Höjd: %.2f m" %höjd
print "Temperatur i Celsius: %.2f C" %cTemp
print "Temperatur i Fahrenheit: %.2f F" %fTemp
Steg 4: Ansökningar:
Olika tillämpningar av MPL3115A2 inkluderar hög noggrannhetsmätning, smartphones/surfplattor, personlig elektronisk höjdmätning etc. Det kan också införlivas med GPS Dead Reckoning, GPS -förbättring för räddningstjänster, kartassistans, navigering samt väderstationsutrustning.
Rekommenderad:
RC Plane Altimeter (kompatibel med Spektrum Telemetry): 7 steg
RC Plane Altimeter (kompatibel med Spektrum Telemetry): Jag gjorde denna höjdmätare så att piloten kunde veta att de är under 400 fotgränsen på RC -flygplan i USA. Min vän var orolig eftersom han inte kunde säga säkert att han alltid var under 400 fot och ville ha en extra försäkran om att en sensor
DropArt - Precision Two Drop Photographic Collider: 11 steg (med bilder)
DropArt - Precision Two Drop Photographic Collider: Hej alla och alla, I denna instruerbara presenterar jag min design för en datorstyrd två vätskedroppar. Innan vi börjar med designdetaljerna tycker jag att det är vettigt att förklara exakt vad som är syftet med designen. Ett roligt, intressant
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Handledning: 4 steg
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Handledning: A1332 är en 360 ° kontaktlös högupplöst programmerbar magnetisk vinkelsensor. Den är designad för digitala system med ett I2C -gränssnitt. Den är byggd på Circular Vertical Hall (CVH) -teknologi och en programmerbar mikroprocessorbaserad signal
Ett experiment för rättelse av precision: 11 steg
Ett experiment för rättelse av precision: Jag har nyligen gjort ett experiment på en precisionsriktningskrets och fått några grova slutsatser. Med tanke på att precisionslikriktarkretsen är en vanlig krets kan resultaten från detta experiment ge lite referensinformation. E
Pulsoximeter med mycket förbättrad precision: 6 steg (med bilder)
Pulsoximeter med mycket förbättrad precision: Om du nyligen besökte en läkare är chansen stor att dina grundläggande vitala tecken undersöktes av en sjuksköterska. Vikt, höjd, blodtryck, liksom puls (HR) och syremättnad i perifert blod (SpO2). Kanske erhölls de två sista från