Sisukord:
Video: Raspberry Pi - MPL3115A2 Täpse altimeetri anduri Pythoni õpetus: 4 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
MPL3115A2 kasutab rõhu/kõrguse ja temperatuuri täpsete andmete saamiseks IEM -liidesega MEMS -rõhuandurit. Anduri väljundid digiteeritakse kõrge eraldusvõimega 24-bitise ADC abil. Sisemine töötlemine eemaldab kompenseerimisülesanded host -MCU süsteemist. See on võimeline tuvastama muutusi vaid 0,05 kPa, mis võrdub 0,3 m kõrguse muutusega. Siin on selle demonstratsioon vaarika pi abil, kasutades pythoni koodi.
Samm: mida vajate..
1. Vaarika Pi
2. MPL3115A2
3. I²C kaabel
4. I²C kilp Raspberry Pi jaoks
5. Etherneti kaabel
Samm: ühendused:
Võtke vaarika pi jaoks I2C -kilp ja lükake see õrnalt üle vaarika pi gpio -tihvtide.
Seejärel ühendage I2C kaabli üks ots MPL3115A2 anduriga ja teine ots I2C varjestusega.
Ühendage ka Etherneti kaabel pi -ga või võite kasutada WiFi -moodulit.
Ühendused on näidatud ülaltoodud pildil.
3. samm: kood:
MPL3115A2 püütoni koodi saab alla laadida meie Githubi hoidlast- DCUBE Store Community.
Siin on link
Oleme python -koodi jaoks kasutanud SMBusi teeki, SMBus -i vaarika pi -le installimise samme kirjeldatakse siin:
pypi.python.org/pypi/smbus-cffi/0.5.1
Siit saate koodi ka kopeerida, see on järgmine:
# Levitatud vabatahtliku litsentsiga.
# Kasutage seda mis tahes viisil, kasumit teenides või tasuta, tingimusel et see sobib sellega seotud teoste litsentsidega.
# MPL3115A2
# See kood on loodud töötama koos MPL3115A2_I2CS I2C minimooduliga
import smbus
impordi aeg
# Hankige I2C buss
buss = smbus. SMBus (1)
# MPL3115A2 aadress, 0x60 (96)
# Valige juhtregister, 0x26 (38)
# 0xB9 (185) Aktiivne režiim, OSR = 128, kõrgusmõõturi režiim
bus.write_byte_data (0x60, 0x26, 0xB9)
# MPL3115A2 aadress, 0x60 (96)
# Valige andmete konfiguratsiooniregister, 0x13 (19)
# 0x07 (07) Andmevalmis sündmus on lubatud kõrguse, rõhu ja temperatuuri jaoks
bus.write_byte_data (0x60, 0x13, 0x07)
# MPL3115A2 aadress, 0x60 (96)
# Valige juhtregister, 0x26 (38)
# 0xB9 (185) Aktiivne režiim, OSR = 128, kõrgusmõõturi režiim
bus.write_byte_data (0x60, 0x26, 0xB9)
aeg. uni (1)
# MPL3115A2 aadress, 0x60 (96)
# Lugege andmeid tagasi 0x00 (00), 6 baiti
# olek, tKõrgus MSB1, tKõrgus MSB, tKõrgus LSB, temp MSB, temp LSB
andmed = bus.read_i2c_block_data (0x60, 0x00, 6)
# Teisendage andmed 20-bitisteks
tKõrgus = ((andmed [1] * 65536) + (andmed [2] * 256) + (andmed [3] ja 0xF0)) / 16
temp = ((andmed [4] * 256) + (andmed [5] ja 0xF0)) / 16
kõrgus = tKõrgus / 16,0
cTemp = temp / 16.0
fTemp = cTemp * 1,8 + 32
# MPL3115A2 aadress, 0x60 (96)
# Valige juhtregister, 0x26 (38)
# 0x39 (57) Aktiivne režiim, OSR = 128, baromeetri režiim
bus.write_byte_data (0x60, 0x26, 0x39)
aeg. uni (1)
# MPL3115A2 aadress, 0x60 (96)
# Lugege andmeid tagasi 0x00 (00), 4 baiti
# olek, enne MSB1, enne MSB, enne LSB
andmed = bus.read_i2c_block_data (0x60, 0x00, 4)
# Teisendage andmed 20-bitisteks
pres = ((andmed [1] * 65536) + (andmed [2] * 256) + (andmed [3] ja 0xF0)) / 16
rõhk = (pres / 4,0) / 1000,0
# Väljastage andmed ekraanile
print "Rõhk: %.2f kPa" %rõhk
print "Kõrgus: %.2f m" %kõrgus
print "Temperatuur Celsiuse järgi: %.2f C" %cTemp
print "Temperatuur Fahrenheiti järgi: %.2f F" %fTemp
4. samm: rakendused:
MPL3115A2 mitmesugused rakendused hõlmavad suure täpsusega kõrguse mõõtmist, nutitelefoni/tahvelarvutit, isikliku elektroonika kõrguse mõõtmist jne. Seda saab lisada ka GPS -i surnud arvestusse, hädaabiteenuste GPS -i täiustamisse, kaardiabi, navigeerimisseadmesse ja ilmajaama seadmetesse.
Soovitan:
Raspberry Pi - ADXL345 3 -teljeline kiirendusmõõturi Pythoni õpetus: 4 sammu
Raspberry Pi-ADXL345 3-teljeline kiirendusmõõturi Pythoni õpetus: ADXL345 on väike, õhuke ülivõimsus, 3-teljeline kiirendusmõõtur, millel on kõrge eraldusvõimega (13-bitine) mõõtmine kuni ± 16 g. Digitaalsed väljundandmed on vormindatud 16-bitiste kaheosaliste täienditena ja neile on juurdepääs digitaalse liidese I2 C kaudu. See mõõdab
Raspberry Pi SHT25 niiskuse ja temperatuuri anduri Pythoni õpetus: 4 sammu
Raspberry Pi SHT25 niiskuse ja temperatuuri anduri Python õpetus: SHT25 I2C niiskuse ja temperatuuri andur ± 1,8%RH ± 0,2 ° C I2C minimoodul. SHT25 suure täpsusega niiskus- ja temperatuuriandur on muutunud vormiteguri ja intelligentsuse poolest tööstusstandardiks, pakkudes kalibreeritud ja lineariseeritud andurite märke
Raspberry Pi - BH1715 digitaalse ümbritseva valguse anduri Pythoni õpetus: 4 sammu
Raspberry Pi - BH1715 Digitaalse ümbritseva valguse anduri Pythoni õpetus: BH1715 on digitaalne ümbritseva valguse andur, millel on I²C siiniliides. BH1715 kasutatakse tavaliselt ümbritseva valguse andmete saamiseks, et reguleerida mobiilseadmete LCD -ekraani ja klaviatuuri taustvalgustust. See seade pakub 16-bitist eraldusvõimet ja reguleerib
Raspberry Pi - TSL45315 ümbritseva valguse anduri Pythoni õpetus: 4 sammu
Raspberry Pi - TSL45315 ümbritseva valguse anduri Pythoni õpetus: TSL45315 on digitaalne ümbritseva valguse andur. See lähendab inimese silma reaktsiooni erinevates valgustingimustes. Seadmetel on kolm valitavat integreerimisaega ja need pakuvad otsest 16-bitist luksväljundit I2C siiniliidese kaudu. Seade koos
Raspberry Pi - HIH6130 I2C niiskuse ja temperatuuri anduri Pythoni õpetus: 4 sammu
Raspberry Pi - HIH6130 I2C niiskus- ja temperatuurianduri Pythoni õpetus: HIH6130 on digitaalse väljundiga niiskus- ja temperatuuriandur. Need andurid tagavad täpsuse taseme ± 4% RH. Tööstusharu juhtiva pikaajalise stabiilsusega, tõelise temperatuuriga kompenseeritud digitaalse I2C-ga, tööstusharu juhtiva töökindlusega, energiatõhususega