Daftar Isi:

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

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

Video: Menggunakan Raspberry Pi, Mengukur Ketinggian, Tekanan, dan Suhu Dengan MPL3115A2: 6 Langkah
Video: Altitude Sensor | High Altitude Balloon Project | Raspberry Pi 3 B+ 2024, November
Anonim
Image
Image
Peralatan yang Sangat Kami Butuhkan
Peralatan yang Sangat Kami Butuhkan

Ketahui apa yang Anda miliki, dan ketahui mengapa Anda memilikinya

Ini menarik. Kita hidup di era Otomasi Internet karena masuk ke banyak aplikasi baru. Sebagai penggemar komputer dan elektronik, kami telah belajar banyak dengan Raspberry Pi dan memutuskan untuk memadukan minat kami. Proyek ini memakan waktu sekitar satu jam jika Anda baru mengenal koneksi I²C dan pengaturan Perangkat Lunak, dan ini adalah cara yang bagus untuk memperluas kemampuan MPL3115A2 dengan Raspberry Pi di Java.

Langkah 1: Peralatan yang Sangat Kami Butuhkan

Peralatan yang Sangat Kami Butuhkan
Peralatan yang Sangat Kami Butuhkan
Peralatan yang Sangat Kami Butuhkan
Peralatan yang Sangat Kami Butuhkan
Peralatan yang Sangat Kami Butuhkan
Peralatan yang Sangat Kami Butuhkan

1. Raspberry Pi

Langkah pertama adalah mendapatkan papan Raspberry Pi. Jenius kecil ini digunakan oleh penghobi, guru dan dalam menciptakan lingkungan yang inovatif.

2. Perisai I2C untuk Raspberry Pi

INPI2 (adaptor I2C) menyediakan port I²C Raspberry Pi 2/3 untuk digunakan dengan beberapa perangkat I2C. Ini tersedia di Dcube Store.

3. Altimeter, Sensor Tekanan dan Suhu, MPL3115A2

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

4. Menghubungkan Kabel

Kami menggunakan kabel penghubung I²C yang tersedia di Dcube Store.

5. Kabel USB mikro

Raspberry Pi didukung oleh suplai micro USB.

6. Peningkatan Akses Internet - Kabel Ethernet/Modul WiFi

Salah satu hal pertama yang ingin Anda lakukan adalah menghubungkan Raspberry Pi Anda ke Internet. Anda dapat terhubung menggunakan kabel Ethernet atau dengan adaptor WiFi Nano USB Nirkabel.

7. Kabel HDMI (Opsional, Pilihan Anda)

Anda dapat menghubungkan Raspberry Pi ke monitor menggunakan kabel HDMI. Juga, Anda dapat mengakses Raspberry Pi Anda dari jarak jauh dengan menggunakan SSH/PuTTY.

Langkah 2: Koneksi Perangkat Keras untuk Menyatukan Sirkuit

Koneksi Perangkat Keras untuk Menyatukan Sirkuit
Koneksi Perangkat Keras untuk Menyatukan Sirkuit
Koneksi Perangkat Keras untuk Menyatukan Sirkuit
Koneksi Perangkat Keras untuk Menyatukan Sirkuit

Buat rangkaian sesuai skema yang ditunjukkan. Secara umum, koneksinya cukup sederhana. Ikuti petunjuk dan gambar di atas, dan Anda seharusnya tidak memiliki masalah. Saat merencanakan, kami melihat perangkat keras dan pengkodean serta dasar-dasar elektronik. Kami ingin merancang skema elektronik sederhana untuk proyek ini. Dalam diagram, Anda dapat melihat berbagai bagian, komponen daya, dan sensor I²C mengikuti protokol komunikasi I²C. Mudah-mudahan, ini menggambarkan betapa sederhananya elektronik untuk proyek ini.

Koneksi Raspberry Pi dan I2C Shield

Untuk ini, Raspberry Pi dan letakkan I²C Shield di atasnya. Tekan Perisai dengan lembut (Lihat gambar).

Koneksi Sensor dan Raspberry Pi

Ambil sensor dan sambungkan kabel I²C dengannya. Pastikan Output I²C SELALU terhubung ke Input I²C. Hal yang sama akan diikuti oleh Raspberry Pi dengan pelindung I²C yang terpasang di atasnya. Kami memiliki I²C Shield dan kabel penghubung I²C di pihak kami sebagai keuntungan yang sangat besar karena kami hanya memiliki opsi plug and play. Tidak ada lagi masalah pin dan kabel dan karenanya, kebingungan hilang. Sungguh melegakan karena membayangkan diri Anda berada di jaring kabel dan masuk ke dalamnya. Sesederhana ini!

Catatan: Kabel coklat harus selalu mengikuti koneksi Ground (GND) antara output dari satu perangkat dan input dari perangkat lain

Konektivitas Internet Sangat Penting

Untuk membuat proyek kami sukses, kami membutuhkan akses internet untuk Raspberry Pi kami. Dalam hal ini, Anda memiliki opsi seperti menghubungkan kabel Ethernet (LAN). Juga, sebagai cara alternatif namun mengesankan untuk menggunakan adaptor WiFi.

Pemberdayaan Sirkuit

Colokkan kabel Micro USB ke colokan listrik Raspberry Pi. Nyalakan dan voila, kami siap berangkat!

Koneksi ke Layar

Kita bisa menghubungkan kabel HDMI ke monitor atau kita bisa sedikit inovatif untuk membuat Pi tanpa kepala kita (menggunakan -SSH/PuTTY) yang membantu memotong biaya tambahan karena kita entah bagaimana hobi.

Ketika sebuah kebiasaan mulai membutuhkan uang, itu disebut hobi

Langkah 3: Pemrograman Raspberry Pi di Java

Pemrograman Raspberry Pi di Java
Pemrograman Raspberry Pi di Java

Kode Java untuk Sensor Raspberry Pi dan MPL3115A2. Ini tersedia di repositori Github kami.

Sebelum melanjutkan ke kode, pastikan Anda membaca instruksi yang diberikan dalam file Readme dan mengatur Raspberry Pi Anda sesuai dengan itu. Hanya perlu beberapa saat untuk melakukannya. Ketinggian dihitung dari tekanan menggunakan persamaan di bawah ini:

h = 44330,77 {1 - (p / p0) ^ 0,1902632} + OFF_H (Nilai Daftar)

di mana p0 = tekanan permukaan laut (101326 Pa) dan h dalam meter. MPL3115A2 menggunakan nilai ini karena register offset didefinisikan sebagai 2 Pascal per LSB. Kodenya jelas ada di depan Anda dan dalam bentuk paling sederhana yang dapat Anda bayangkan dan Anda seharusnya tidak memiliki masalah.

Anda dapat menyalin kode Java yang berfungsi untuk sensor ini dari sini juga.

// Didistribusikan dengan lisensi kehendak bebas.// Gunakan sesuka Anda, untung atau gratis, asalkan sesuai dengan lisensi karya terkait. // MPL3115A2 // Kode ini dirancang untuk bekerja dengan Modul Mini MPL3115A2_I2CS I2C yang tersedia dari ControlEverything.com. //

impor com.pi4j.io.i2c. I2CBus;

impor com.pi4j.io.i2c. I2CDevice; impor com.pi4j.io.i2c. I2CFfactory; impor java.io. IOException;

kelas publik MPL3115A2

{ public static void main(String args) throws Exception { // Buat I2C bus I2CBus Bus = I2CFactory.getInstance(I2CBus. BUS_1); // Dapatkan perangkat I2C, alamat I2C MPL3115A2 adalah 0x60(96) Perangkat I2CDevice = Bus.getDevice(0x60); // Pilih register kontrol // Mode aktif, OSR = 128, mode altimeter device.write(0x26, (byte)0xB9); // Pilih register konfigurasi data // Acara siap data diaktifkan untuk ketinggian, tekanan, suhu device.write(0x13, (byte)0x07); // Pilih register kontrol // Mode aktif, OSR = 128, mode altimeter device.write(0x26, (byte)0xB9); Thread.sleep(1000);

// Baca 6 byte data dari alamat 0x00(00)

// status, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb byte data = new byte[6]; device.read(0x00, data, 0, 6);

// Ubah data menjadi 20-bit

int tinggi = ((((data[1] & 0xFF) * 65536) + ((data[2] & 0xFF) * 256) + (data[3] & 0xF0)) / 16); int temp = ((data[4] * 256) + (data[5] & 0xF0)) / 16; ketinggian ganda = tinggi / 16.0; cTemp ganda = (temp / 16.0); fTemp ganda = cTemp * 1,8 + 32;

// Pilih register kontrol

// Mode aktif, OSR = 128, perangkat mode barometer.write(0x26, (byte)0x39); Thread.sleep(1000); // Membaca 4 byte data dari alamat 0x00(00) // status, pres msb1, pres msb, pres lsb device.read(0x00, data, 0, 4);

// Ubah data menjadi 20-bit

int pres = (((data[1] & 0xFF) * 65536) + ((data[2] & 0xFF) * 256) + (data[3] & 0xF0)) / 16; tekanan ganda = (pres / 4.0) / 10000.0; // Keluarkan data ke layar System.out.printf("Tekanan: %.2f kPa %n", tekanan); System.out.printf("Ketinggian: %.2f m %n", ketinggian); System.out.printf("Suhu dalam Celcius: %.2f C %n", cTemp); System.out.printf("Suhu dalam Fahrenheit: %.2f F %n", fTemp); } }

Langkah 4: Kepraktisan Kode (Bekerja)

Kepraktisan Kode (Bekerja)
Kepraktisan Kode (Bekerja)

Sekarang, unduh (atau git pull) kode dan buka di Raspberry Pi. Jalankan perintah untuk Kompilasi dan Unggah kode di terminal dan lihat hasilnya di Monitor. Setelah beberapa detik, itu akan menampilkan semua parameter. Setelah memastikan semuanya berjalan lancar, Anda dapat membawa proyek ini ke proyek yang lebih besar.

Langkah 5: Aplikasi dan Fitur

Penggunaan umum sensor Altimeter Presisi MPL3115A2 adalah dalam aplikasi seperti Peta (Map Assist, Navigasi), Kompas Magnetik, Atau GPS (GPS Dead Reckoning, Peningkatan GPS Untuk Layanan Darurat), Altimetri Akurasi Tinggi, Smartphone/Tablet, Altimetri Elektronik Pribadi dan Satelit (Peralatan Stasiun Cuaca/Peramalan).

Untuk misalnya Dengan menggunakan sensor ini dan Rasp Pi, Anda dapat membuat Digital Visual Altimeter, peralatan skydiving terpenting, yang dapat mengukur ketinggian, tekanan udara, dan suhu. Anda dapat menambahkan kasa angin dan sensor lainnya sehingga membuatnya lebih menarik.

Langkah 6: Kesimpulan

Karena program ini luar biasa dapat disesuaikan, ada banyak cara menarik di mana Anda dapat memperluas proyek ini dan membuatnya lebih baik. Misalnya, sebuah altimeter/interferometer akan mencakup beberapa altimeter yang dipasang pada tiang yang akan memperoleh pengukuran secara bersamaan, sehingga memberikan cakupan area luas yang kontinu, tunggal atau multi-altimeter. Kami memiliki video tutorial menarik di YouTube yang dapat membantu Anda memahami proyek ini dengan lebih baik.

Direkomendasikan: