Isi kandungan:

Ketinggian, Tekanan dan Suhu Menggunakan Raspberry Pi Dengan MPL3115A2: 6 Langkah
Ketinggian, Tekanan dan Suhu Menggunakan Raspberry Pi Dengan MPL3115A2: 6 Langkah

Video: Ketinggian, Tekanan dan Suhu Menggunakan Raspberry Pi Dengan MPL3115A2: 6 Langkah

Video: Ketinggian, Tekanan dan Suhu Menggunakan Raspberry Pi Dengan MPL3115A2: 6 Langkah
Video: Altitude Sensor | High Altitude Balloon Project | Raspberry Pi 3 B+ 2024, Julai
Anonim
Ketinggian, Tekanan dan Suhu Menggunakan Raspberry Pi Dengan MPL3115A2
Ketinggian, Tekanan dan Suhu Menggunakan Raspberry Pi Dengan MPL3115A2
Ketinggian, Tekanan dan Suhu Menggunakan Raspberry Pi Dengan MPL3115A2
Ketinggian, Tekanan dan Suhu Menggunakan Raspberry Pi Dengan MPL3115A2

Bunyinya menarik. Sangat mungkin pada masa ini ketika kita semua memasuki generasi IoT. Sebagai alat elektronik, kami telah bermain dengan Raspberry Pi, dan memutuskan untuk membuat projek menarik menggunakan pengetahuan ini. Dalam projek ini, kita akan mengukur ketinggian, tekanan udara, suhu menggunakan Raspberry Pi. Jadi, inilah dokumentasi (selalu diubah suai, dan dikembangkan). Kami mengesyorkan bermula dengan mengikuti arahan dan menyalin kodnya. Anda boleh bereksperimen di kemudian hari. Oleh itu, mari kita mulakan.

Langkah 1: Peralatan Imperatif yang Kami Perlu

Peralatan Imperatif Yang Kami Perlu
Peralatan Imperatif Yang Kami Perlu
Peralatan Imperatif Yang Kami Perlu
Peralatan Imperatif Yang Kami Perlu
Peralatan Imperatif Yang Kami Perlu
Peralatan Imperatif Yang Kami Perlu
Peralatan Imperatif Yang Kami Perlu
Peralatan Imperatif Yang Kami Perlu

1. Raspberry Pi

Langkah pertama adalah mendapatkan papan Raspberry Pi. Kami membeli barang kami dan anda juga boleh. Mula belajar dari tutorial, kami memahami konsep skrip dan sambungan dan belajar selepas itu. Genius kecil ini biasa dilakukan oleh penggemar hobi, guru dan dalam mewujudkan persekitaran yang inovatif.

2. Perisai I²C untuk Raspberry Pi

INPI2 (penyesuai I2C) menyediakan port Raspberry Pi 2/3 dan I²C untuk digunakan dengan pelbagai peranti I2C. Ia boleh didapati di Dcube Store

3. Altimeter, Sensor Tekanan dan Suhu, MPL3115A2

MPL3115A2 adalah sensor tekanan MEMS dengan antara muka I²C untuk memberikan data Tekanan / Ketinggian dan Suhu. Sensor ini menggunakan protokol I²C untuk berkomunikasi. Kami membeli sensor ini dari Dcube Store

4. Menyambung Kabel

Kami mempunyai kabel penyambung I2C yang terdapat di Dcube Store

5. Kabel USB mikro

Bekalan kuasa kabel USB mikro adalah pilihan yang sesuai untuk menghidupkan Raspberry Pi.

6. Peningkatan Akses Internet - Penyesuai Kabel / WiFi Ethernet

Pada era ini, mendapatkan akses ke apa sahaja memerlukan sambungan internet (hampir sama ada kehidupan di luar talian juga). Oleh itu, kami mengambil nasihat kabel LAN atau Wireless Nano USB Adapter (WiFi) untuk membina sambungan internet supaya kami dapat menggunakan Rasp Pi kami dengan mudah dan tanpa masalah sama sekali.

7. Kabel HDMI (Pilihan, Pilihan Anda)

Agak sukar. Anda boleh mempunyai kekuatan untuk memasang Monitor lain sekiranya anda mahu atau sangat menjimatkan kos untuk diri sendiri dengan membuat sambungan Pi tanpa kepala dengan PC / Laptop anda.

Langkah 2: Sambungan Perkakasan untuk Menyatukan Litar

Sambungan Perkakasan untuk Menyatukan Litar
Sambungan Perkakasan untuk Menyatukan Litar
Sambungan Perkakasan untuk Menyatukan Litar
Sambungan Perkakasan untuk Menyatukan Litar

Buat litar mengikut skema yang ditunjukkan. Secara umum, sambungannya sangat mudah. Ikuti arahan dan gambar, dan anda semestinya tidak menghadapi masalah.

Semasa merancang, kami melihat perkakasan dan pengekodan serta asas elektronik. Kami ingin merancang skema elektronik mudah untuk projek ini. Dalam rajah, anda dapat melihat bahagian, komponen kuasa dan sensor I²C yang berlainan mengikuti protokol komunikasi I²C. Mudah-mudahan, ini menggambarkan betapa mudahnya elektronik untuk projek ini.

Sambungan Raspberry Pi dan I2C Shield

Mula-mula ambil Raspberry Pi dan letakkan I²C Shield di atasnya. Tekan Perisai dengan lembut (Lihat gambar).

Sambungan Sensor dan Raspberry Pi

Ambil sensor dan Sambungkan kabel I²C dengannya. Pastikan Output I²C SELALU menghubungkan ke Input I²C. Perkara yang sama diikuti oleh Raspberry Pi dengan perisai I²C yang terpasang di atasnya. Kami mempunyai kabel penghubung I²C dan kabel penyambung I²C di sisi kami sebagai kelebihan yang sangat besar kerana kami hanya tinggal pilihan plug and play. Tidak ada lagi pin dan masalah pendawaian dan oleh itu, kekeliruan hilang. Lega kerana hanya membayangkan diri anda dalam jaringan wayar dan masuk ke dalamnya. Hanya proses sederhana yang telah kami sebutkan.

Catatan: Kawat coklat harus selalu mengikuti hubungan Ground (GND) antara output satu peranti dan input peranti lain

Kesambungan Internet sangat penting

Anda sebenarnya ada pilihan di sini. Anda boleh Sambungkan Raspberry Pi dengan kabel LAN atau Adaptor Nano USB tanpa wayar untuk Kesambungan WiFi. Bagaimanapun, ia melakukan tujuan utama iaitu menyambung ke internet.

Kuasa Litar

Pasangkan kabel Micro USB ke soket kuasa Raspberry Pi. Nyalakan dan kami bersedia untuk pergi.

Sambungan ke Skrin

Kita boleh menyambungkan kabel HDMI ke monitor baru atau membuat Pi tanpa kepala kita yang kreatif dan menjimatkan penggunaan menggunakan akses jauh seperti SSH / PuTTY. (Saya tahu kita tidak dibiayai seperti organisasi rahsia)

Langkah 3: Pengaturcaraan Raspberry Pi di Python

Pengaturcaraan Raspberry Pi di Python
Pengaturcaraan Raspberry Pi di Python

Kod Python untuk Raspberry Pi dan MPL3115A2 Sensor. Ia tersedia di repositori Github kami.

Sebelum meneruskan kod, pastikan anda membaca arahan yang diberikan dalam fail Readme dan Siapkan Pi Raspberry anda sesuai dengannya. Hanya perlu sedikit masa untuk melakukannya.

Ketinggian dikira dari tekanan menggunakan persamaan di bawah:

h = 44330.77 {1 - (p / p0) ^ 0.1902632} + OFF_H (Nilai Daftar)

Di mana p0 = tekanan permukaan laut (101326 Pa) dan h adalah dalam meter. MPL3115A2 menggunakan nilai ini kerana daftar offset ditakrifkan sebagai 2 Pascals per LSB.

Kodnya jelas di hadapan anda dan terdapat dalam bentuk termudah yang dapat anda bayangkan dan anda semestinya tidak mempunyai masalah.

Anda boleh menyalin kod Python yang berfungsi untuk sensor ini dari sini juga.

# Diagihkan dengan lesen kehendak bebas. # Gunakan dengan cara yang anda mahukan, untung atau percuma, dengan syarat ia sesuai dengan lesen karya-karya yang berkaitan. # MPL3115A2 # Kod ini direka untuk berfungsi dengan Modul Mini MPL3115A2_I2CS I2C yang tersedia dari ControlEverything.com. #

import smbus

masa import

# Dapatkan bas I2C

bas = smbus. SMBus (1)

# MPL3115A2 alamat, 0x60 (96)

# Pilih register kawalan, 0x26 (38) # 0xB9 (185) Mod aktif, OSR = 128, bas mod Altimeter.write_byte_data (0x60, 0x26, 0xB9) # alamat MPL3115A2, 0x60 (96) # Pilih daftar konfigurasi data, 0x13 (19) # 0x07 (07) Acara siap data diaktifkan untuk ketinggian, tekanan, suhu bas.write_byte_data (0x60, 0x13, 0x07) # alamat MPL3115A2, 0x60 (96) # Pilih daftar kawalan, 0x26 (38) # 0xB9 (185) Mod aktif, OSR = 128, bas mod Altimeter.write_byte_data (0x60, 0x26, 0xB9)

masa. tidur (1)

# MPL3115A2 alamat, 0x60 (96)

# Membaca kembali data dari 0x00 (00), 6 bait # status, tHeight MSB1, tHeight MSB, tHeight LSB, temp MSB, temp LSB data = bus.read_i2c_block_data (0x60, 0x00, 6)

# Tukar data menjadi 20-bit

tHeight = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16 temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16 ketinggian = tTinggi / 16.0 cTemp = temp / 16.0 fTemp = cTemp * 1.8 + 32

# MPL3115A2 alamat, 0x60 (96)

# Pilih register kawalan, 0x26 (38) # 0x39 (57) Mod aktif, OSR = 128, bus mod Barometer.write_byte_data (0x60, 0x26, 0x39)

masa. tidur (1)

# MPL3115A2 alamat, 0x60 (96)

# Baca kembali data dari 0x00 (00), 4 bait # status, MSB1 pres, MSB pres, pres data LSB = bus.read_i2c_block_data (0x60, 0x00, 4)

# Tukar data menjadi 20-bit

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

# Keluarkan data ke skrin

cetak "Tekanan:%.2f kPa"% tekanan cetak "Ketinggian:%.2f m"% ketinggian cetak "Suhu dalam Celsius:%.2f C"% cTemp cetak "Suhu dalam Fahrenheit:%.2f F"% fTemp

Langkah 4: Praktikal Kod (Ujian)

Praktikal Kod (Ujian)
Praktikal Kod (Ujian)

Sekarang, muat turun (atau git tarik) kod dan buka di Raspberry Pi.

Jalankan arahan untuk Menyusun dan Memuat naik kod di terminal dan melihat outputnya di Monitor. Setelah beberapa saat, ia akan memaparkan semua parameter. Setelah memastikan semuanya berjalan dengan lancar, anda boleh menjadikan projek ini menjadi projek yang lebih besar.

Langkah 5: Aplikasi dan Ciri

Penggunaan umum sensor MPL3115A2 Precision Altimeter I²C adalah dalam aplikasi seperti Peta (Map Assist, Navigation), Magnetic Compass, or GPS (GPS Dead Reckoning, GPS Enhancement For Emergency Services), Altimetri Ketepatan Tinggi, Telefon Pintar / Tablet, Altimetri Elektronik Peribadi dan Satelit (Peralatan / Ramalan Stesen Cuaca).

Contohnya projek membuat Altimeter Elektronik Peribadi yang mengukur ketinggian, tekanan udara, suhu menggunakan Raspberry Pi. Altimeter Elektronik Peribadi adalah satu projek yang cukup pantas untuk dibina. Hanya akan memerlukan beberapa saat jika anda mempunyai semua bahagian dan tidak melakukan improvisasi (tentu anda boleh!). Altimeter tekanan adalah altimeter yang terdapat di kebanyakan pesawat, dan skydivers menggunakan versi yang dipasang di pergelangan tangan untuk tujuan serupa. Pendaki dan pendaki gunung menggunakan altimeter yang dipasang di pergelangan tangan atau genggam.

Langkah 6: Kesimpulannya

Semoga projek ini memberi inspirasi kepada eksperimen lebih lanjut. Sensor I²C ini sangat serba boleh, murah dan mudah diakses. Oleh kerana ia adalah program yang sangat berubah-ubah, ada cara menarik untuk memperluaskan projek ini dan menjadikannya lebih baik. Sebagai contoh, altimeter adalah instrumen pilihan dalam kenderaan luar jalan untuk membantu dalam navigasi. Beberapa kereta mewah berprestasi tinggi yang tidak pernah dimaksudkan untuk meninggalkan jalan berturap, menggunakan teknologi ini. Untuk kemudahan anda, kami mempunyai tutorial video menarik di YouTube yang mungkin dapat membantu penjelajahan anda. Semoga projek ini memberi inspirasi kepada eksperimen lebih lanjut.

Disyorkan: