Isi kandungan:
Video: Raspberry Pi - MPL3115A2 Precision Altimeter Sensor Java Tutorial: 4 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:09
MPL3115A2 menggunakan sensor tekanan MEMS dengan antara muka I2C untuk memberikan data Tekanan / Ketinggian dan Suhu yang tepat. Keluaran sensor didigitalkan oleh ADC 24-bit resolusi tinggi. Pemprosesan dalaman membuang tugas pampasan dari sistem MCU tuan rumah. Ia mampu mengesan perubahan hanya 0.05 kPa yang setara dengan perubahan ketinggian 0.3m. Berikut adalah demonstrasinya dengan raspberry pi menggunakan kod java.
Langkah 1: Apa yang Anda Perlu..
1. Raspberry Pi
2. MPL3115A2
3. Kabel I²C
4. Perisai I²C untuk Raspberry Pi
5. Kabel Ethernet
Langkah 2: Sambungan:
Ambil pelindung I2C untuk raspberry pi dan tekan perlahan ke atas pin gpio raspberry pi.
Kemudian sambungkan satu hujung kabel I2C ke sensor MPL3115A2 dan hujung yang lain ke pelindung I2C.
Sambungkan juga kabel Ethernet ke pi atau anda boleh menggunakan modul WiFi.
Sambungan ditunjukkan dalam gambar di atas.
Langkah 3: Kod:
Kod java untuk MPL3115A2 boleh dimuat turun dari github repositori kami - DCUBE Store.
Berikut adalah pautan yang sama:
github.com/DcubeTechVentures/MPL3115A2/tree/master/Java
Kami telah menggunakan perpustakaan pi4j untuk kod java, langkah-langkah untuk memasang pi4j pada raspberry pi dijelaskan di sini:
pi4j.com/install.html
Anda juga boleh menyalin kod dari sini, ia diberikan seperti berikut:
// Diagihkan dengan lesen kehendak bebas.
// Gunakan dengan cara yang anda mahukan, untung atau percuma, dengan syarat ia sesuai dengan lesen karya yang berkaitan.
// MPL3115A2
// Kod ini direka untuk berfungsi dengan Modul Mini MPL3115A2_I2CS I2C yang tersedia dari
import com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice;
import com.pi4j.io.i2c. I2CFactory;
import java.io. IOException;
kelas awam MPL3115A2
{
utama kekosongan statik awam (String args ) melontarkan Pengecualian
{
// Buat bas I2C
Bas I2CBus = I2CFactory.getInstance (I2CBus. BUS_1);
// Dapatkan peranti I2C, alamat MPL3115A2 I2C adalah 0x60 (96)
Peranti I2CDevice = Bus.getDevice (0x60);
// Pilih daftar kawalan
// Mod aktif, OSR = 128, mod altimeter
device.write (0x26, (bait) 0xB9);
// Pilih daftar konfigurasi data
// Acara siap data diaktifkan untuk ketinggian, tekanan, suhu
device.write (0x13, (bait) 0x07);
// Pilih daftar kawalan
// Mod aktif, OSR = 128, mod altimeter
device.write (0x26, (bait) 0xB9);
Thread.sleep (1000);
// Baca 6 bait data dari alamat 0x00 (00)
// status, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb
bait data = bait baru [6];
device.read (0x00, data, 0, 6);
// Tukarkan data menjadi 20-bit
int tHeight = ((((data [1] & 0xFF) * 65536) + ((data [2] & 0xFF) * 256) + (data [3] & 0xF0)) / 16);
int temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16;
ketinggian dua kali ganda = tHeight / 16.0;
double cTemp = (temp / 16.0);
double fTemp = cTemp * 1.8 + 32;
// Pilih daftar kawalan
// Mod aktif, OSR = 128, mod barometer
device.write (0x26, (byte) 0x39);
Thread.sleep (1000);
// Baca 4 bait data dari alamat 0x00 (00)
// status, pres msb1, pres msb, pres lsb
device.read (0x00, data, 0, 4);
// Tukarkan data menjadi 20-bit
int pres = (((data [1] & 0xFF) * 65536) + ((data [2] & 0xFF) * 256) + (data [3] & 0xF0)) / 16;
tekanan berganda = (pres / 4.0) / 1000.0;
// Keluarkan data ke skrin
System.out.printf ("Tekanan:%.2f kPa% n", tekanan);
System.out.printf ("Ketinggian:%.2f m% n", ketinggian);
System.out.printf ("Suhu dalam Celsius:%.2f C% n", cTemp);
System.out.printf ("Suhu dalam Fahrenheit:%.2f F% n", fTemp);
}
}
Langkah 4: Aplikasi:
Pelbagai aplikasi MPL3115A2 termasuk Altimetri Ketepatan Tinggi, Telefon Pintar / Tablet, Altimetri Elektronik Peribadi dan lain-lain. Ia juga dapat digabungkan dalam Perangkaan Mati GPS, Peningkatan GPS untuk Perkhidmatan Kecemasan, Bantuan Peta, Navigasi dan juga Peralatan Stesen Cuaca.
Disyorkan:
Raspberry Pi - TSL45315 Ambient Light Sensor Java Tutorial: 4 Langkah
Raspberry Pi - TSL45315 Ambient Light Sensor Java Tutorial: TSL45315 adalah sensor cahaya ambien digital. Ini menghampiri tindak balas mata manusia dalam pelbagai keadaan pencahayaan. Peranti mempunyai tiga masa integrasi yang dapat dipilih dan memberikan output lux 16-bit langsung melalui antara muka bas I2C. Peranti itu
Tutorial Java Raspberry Pi MCP9803 Sensor Suhu: 4 Langkah
Raspberry Pi MCP9803 Sensor Suhu Java Tutorial: MCP9803 adalah sensor suhu ketepatan tinggi 2-wayar. Mereka dilengkapi dengan daftar yang dapat diprogram pengguna yang memudahkan aplikasi penginderaan suhu. Sensor ini sesuai untuk sistem pemantauan suhu multi-zon yang sangat canggih. Di sini
Tutorial Java Raspberry Pi MCP9805 Sensor Suhu: 4 Langkah
Raspberry Pi MCP9805 Temperature Sensor Java Tutorial: MCP9805 adalah modul suhu digital sensor memori. Ini digabungkan dengan daftar pengguna yang dapat diprogramkan yang memberikan fleksibilitas untuk aplikasi penginderaan suhu. Sensor ini dirancang untuk dimasukkan ke dalam modul memori platform mudah alih
Tutorial Java Raspberry Pi - TMP100 Sensor Suhu: 4 Langkah
Raspberry Pi - TMP100 Temperature Sensor Java Tutorial: TMP100 High-Accuracy, Low-Power, Digital Temperature Sensor I2C MINI module. TMP100 sangat sesuai untuk pengukuran suhu yang diperpanjang. Peranti ini menawarkan ketepatan ± 1 ° C tanpa memerlukan penentukuran atau pengkondisian isyarat komponen luaran. Dia
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: 4 Langkah
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: A1332 adalah sensor kedudukan sudut magnetik beresolusi tinggi yang boleh diprogramkan 360 °. Ia direka untuk sistem digital menggunakan antara muka I2C. Ia dibina berdasarkan teknologi Circular Vertical Hall (CVH) dan isyarat berasaskan mikropemproses yang dapat diprogramkan