Агуулгын хүснэгт:

Raspberry Pi - MPL3115A2 нарийвчлалтай өндөр хэмжигч мэдрэгч Python заавар: 4 алхам
Raspberry Pi - MPL3115A2 нарийвчлалтай өндөр хэмжигч мэдрэгч Python заавар: 4 алхам

Видео: Raspberry Pi - MPL3115A2 нарийвчлалтай өндөр хэмжигч мэдрэгч Python заавар: 4 алхам

Видео: Raspberry Pi - MPL3115A2 нарийвчлалтай өндөр хэмжигч мэдрэгч Python заавар: 4 алхам
Видео: Бесконтактный датчик температуры дальнего действия MLX90614-DCI с Arduino 2024, Долдугаар сарын
Anonim
Image
Image

MPL3115A2 нь MEMS даралт мэдрэгчийг ашиглан I2C интерфэйстэй бөгөөд даралт/өндөр, температурын үнэн зөв мэдээллийг өгдөг. Мэдрэгчийн гаралтыг 24 битийн өндөр нарийвчлалтай ADC ашиглан дижитал хэлбэрт оруулсан болно. Дотоод боловсруулалт нь хүлээн авагчийн MCU системээс нөхөн олговрын даалгавруудыг арилгадаг. Энэ нь ердөө 0.05 кПа -ийн өөрчлөлтийг илрүүлэх чадвартай бөгөөд энэ нь өндрийн 0.3 м -ийн өөрчлөлттэй тэнцэнэ. Python кодыг ашиглан бөөрөлзгөнө pi -тэй хийсэн жагсаал энд байна.

Алхам 1: Танд хэрэгтэй зүйл..

Чамд юу хэрэгтэй вэ..!!
Чамд юу хэрэгтэй вэ..!!

1. Raspberry Pi

2. MPL3115A2

3. I²C кабель

4. Raspberry Pi -ийн I²C бамбай

5. Ethernet кабель

Алхам 2: Холболтууд:

Холболтууд
Холболтууд
Холболтууд
Холболтууд
Холболтууд
Холболтууд
Холболтууд
Холболтууд

Бөөрөлзгөнө pi -д зориулсан I2C бамбай аваад бөөрөлзгөнө pi -ийн gpio тээглүүрээр зөөлөн дарна уу.

Дараа нь I2C кабелийн нэг үзүүрийг MPL3115A2 мэдрэгч, нөгөө үзүүрийг I2C бамбай руу холбоно уу.

Мөн Ethernet кабелийг pi руу холбоно уу, эсвэл WiFi модулийг ашиглаж болно.

Холболтыг дээрх зураг дээр харуулав.

Алхам 3: Код:

Код
Код

MPL3115A2-ийн питон кодыг манай Github репозитороос татаж авах боломжтой- DCUBE дэлгүүрийн нийгэмлэг.

Энд линк байна

Бид SMBus номын санг python кодонд ашигласан бөгөөд бөөрөлзгөнө pi дээр SMBus суулгах алхамуудыг энд тайлбарласан болно.

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

Та мөн кодыг эндээс хуулж болно, үүнийг дараах байдлаар өгсөн болно.

# Чөлөөт зөвшөөрлийн лицензээр тараасан.

# Үүнийг холбогдох бүтээлүүдийнхээ лицензтэй тохирч байвал хүссэн хэлбэрээр ашиг, үнэгүй ашиглах боломжтой.

# MPL3115A2

# Энэ код нь MPL3115A2_I2CS I2C Mini модультай ажиллахад зориулагдсан болно

smbus импортлох

импортлох хугацаа

# I2C автобус авах

автобус = smbus. SMBus (1)

# MPL3115A2 хаяг, 0x60 (96)

# Хяналтын бүртгэлийг сонгоно уу, 0x26 (38)

# 0xB9 (185) Идэвхтэй горим, OSR = 128, Альтиметр горим

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

# MPL3115A2 хаяг, 0x60 (96)

# Өгөгдлийн тохиргооны бүртгэлийг сонгоно уу, 0x13 (19)

# 0x07 (07) Өндөр, даралт, температурын хувьд өгөгдөлд бэлэн болсон үйл явдлыг идэвхжүүлсэн

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

# MPL3115A2 хаяг, 0x60 (96)

# Хяналтын бүртгэлийг сонгоно уу, 0x26 (38)

# 0xB9 (185) Идэвхтэй горим, OSR = 128, Альтиметр горим

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

цаг унтах (1)

# MPL3115A2 хаяг, 0x60 (96)

# Өгөгдлийг 0x00 (00), 6 байтаас буцааж уншина уу

# төлөв, tHeight MSB1, tHeight MSB, tHeight LSB, temp MSB, temp LSB

өгөгдөл = bus.read_i2c_block_data (0x60, 0x00, 6)

# Өгөгдлийг 20 бит болгон хөрвүүлэх

tHeight = ((өгөгдөл [1] * 65536) + (өгөгдөл [2] * 256) + (өгөгдөл [3] & 0xF0)) / 16

temp = ((өгөгдөл [4] * 256) + (өгөгдөл [5] & 0xF0)) / 16

өндөр = t Өндөр / 16.0

cTemp = температур / 16.0

fTemp = cTemp * 1.8 + 32

# MPL3115A2 хаяг, 0x60 (96)

# Хяналтын бүртгэлийг сонгоно уу, 0x26 (38)

# 0x39 (57) Идэвхтэй горим, OSR = 128, Барометрийн горим

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

цаг унтах (1)

# MPL3115A2 хаяг, 0x60 (96)

# Өгөгдлийг 0x00 (00), 4 байтаас буцааж уншина уу

# статус, MSB1, MSB, Pres LSB

өгөгдөл = bus.read_i2c_block_data (0x60, 0x00, 4)

# Өгөгдлийг 20 бит болгон хөрвүүлэх

pres = ((өгөгдөл [1] * 65536) + (өгөгдөл [2] * 256) + (өгөгдөл [3] & 0xF0)) / 16

даралт = (pres / 4.0) / 1000.0

# Дэлгэц рүү өгөгдөл гаргана

"Даралт: %.2f кПа" %даралтыг хэвлэх

"Өндөр: %.2f м" %өндөрт хэвлэх

"Цельсийн температур: %.2f C" %cTemp хэвлэх

хэвлэх "Фаренгейт дэх температур: %.2f F" %fTemp

Алхам 4: Өргөдөл:

MPL3115A2 -ийн янз бүрийн хэрэглээнд өндөр нарийвчлалтай хэмжих хэрэгсэл, ухаалаг гар утас/таблет, хувийн электроник хэмжигч гэх мэт орно. Үүнийг GPS -ийн үхлийн тооцоо, яаралтай тусламжийн үйлчилгээний GPS -ийн сайжруулалт, газрын зургийн туслалцаа, навигаци, цаг уурын станцын тоног төхөөрөмжид оруулж болно.

Зөвлөмж болгож буй: