![Tutorial Arduino Nano - MPL3115A2 Precision Altimeter Sensor: 4 Langkah Tutorial Arduino Nano - MPL3115A2 Precision Altimeter Sensor: 4 Langkah](https://i.howwhatproduce.com/images/002/image-3723-13-j.webp)
Isi kandungan:
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-23 15:00
![Image Image](https://i.howwhatproduce.com/images/002/image-3723-15-j.webp)
![](https://i.ytimg.com/vi/1SQNlzMTexM/hqdefault.jpg)
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. Inilah demonstrasinya dengan Arduino Nano.
Langkah 1: Apa yang Anda Perlu..
![Apa yang kamu perlu..!! Apa yang kamu perlu..!!](https://i.howwhatproduce.com/images/002/image-3723-16-j.webp)
1. Arduino Nano
2. MPL3115A2
3. Kabel I²C
4. Perisai I²C untuk Arduino Nano
Langkah 2: Sambungan:
![Sambungan Sambungan](https://i.howwhatproduce.com/images/002/image-3723-17-j.webp)
![Sambungan Sambungan](https://i.howwhatproduce.com/images/002/image-3723-18-j.webp)
![Sambungan Sambungan](https://i.howwhatproduce.com/images/002/image-3723-19-j.webp)
![Sambungan Sambungan](https://i.howwhatproduce.com/images/002/image-3723-20-j.webp)
Ambil pelindung I2C untuk Arduino Nano dan perlahan-lahan menolaknya ke atas pin Nano.
Kemudian sambungkan satu hujung kabel I2C ke sensor MPL3115A2 dan hujung yang lain ke pelindung I2C.
Sambungan ditunjukkan dalam gambar di atas.
Langkah 3: Kod:
![Kod Kod](https://i.howwhatproduce.com/images/002/image-3723-21-j.webp)
Kod arduino untuk MPL3115A2 boleh dimuat turun dari github repositori-DCUBE Store kami.
Berikut adalah pautan yang sama:
github.com/DcubeTechVentures/MPL3115A2/blob/master/Arduino/MPL3115A2.ino
Kami menyertakan perpustakaan Wire.h untuk memudahkan komunikasi sensor I2c dengan papan Arduino.
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
#sertakan
// Alamat MPL3115A2 I2C ialah 0x60 (96)
#tentukan Addr 0x60
persediaan tidak sah ()
{
// Memulakan komunikasi I2C
Wire.begin ();
// Inisialisasi Serial Communication, tetapkan baud rate = 9600
Serial.begin (9600);
// Mulakan penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih daftar kawalan
Wire.write (0x26);
// Mod aktif, OSR = 128, mod altimeter
Wire.write (0xB9);
// Hentikan penghantaran I2C
Wire.endTransmission ();
// Mulakan penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih daftar konfigurasi data
Wire.write (0x13);
// Acara siap data diaktifkan untuk ketinggian, tekanan, suhu
Wire.write (0x07);
// Hentikan penghantaran I2C
Wire.endTransmission ();
kelewatan (300);
}
gelung kosong ()
{
data int yang tidak ditandatangani [6];
// Mulakan penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih daftar kawalan
Wire.write (0x26);
// Mod aktif, OSR = 128, mod altimeter
Wire.write (0xB9);
// Hentikan penghantaran I2C
Wire.endTransmission ();
kelewatan (1000);
// Mulakan penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih daftar data
Wire.write (0x00);
// Hentikan penghantaran I2C
Wire.endTransmission ();
// Minta 6 bait data
Wire.requestFrom (Addr, 6);
// Baca 6 bait data dari alamat 0x00 (00)
// status, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb
jika (Wire.available () == 6)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
data [4] = Wire.read ();
data [5] = Wire.read ();
}
// Tukarkan data menjadi 20-bit
int tHeight = (((panjang) (data [1] * (panjang) 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16);
int temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16;
ketinggian apungan = tHeight / 16.0;
apungan cTemp = (temp / 16.0);
apungan fTemp = cTemp * 1.8 + 32;
// Mulakan penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih daftar kawalan
Wire.write (0x26);
// Mod aktif, OSR = 128, mod barometer
Wire.write (0x39);
// Hentikan penghantaran I2C
Wire.endTransmission ();
kelewatan (1000);
// Mulakan penghantaran I2C
Wire.beginTransmission (Addr);
// Pilih daftar data
Wire.write (0x00);
// Hentikan penghantaran I2C
Wire.endTransmission ();
// Minta 4 bait data
Wire.requestFrom (Addr, 4);
// Baca 4 bait data
// status, pres msb1, pres msb, pres lsb
jika (Wire.available () == 4)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
}
// Tukarkan data menjadi 20-bit
long pres = (((long) data [1] * (long) 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16;
tekanan apungan = (pres / 4.0) / 1000.0;
// Keluarkan data ke monitor bersiri
Serial.print ("Ketinggian:");
Serial.print (ketinggian);
Serial.println ("m");
Serial.print ("Tekanan:");
Cetakan bersiri (tekanan);
Serial.println ("kPa");
Serial.print ("Suhu dalam Celsius:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Suhu di Fahrenheit:");
Serial.print (fTemp);
Serial.println ("F");
kelewatan (500);
}
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:
Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 Langkah
![Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 Langkah Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 Langkah](https://i.howwhatproduce.com/images/001/image-610-10-j.webp)
Arduino Nano - TSL45315 Ambient Light Sensor 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
Dirt-O-Meter Murah Dirt - $ 9 Altimeter Berdasarkan Arduino: 4 Langkah (dengan Gambar)
![Dirt-O-Meter Murah Dirt - $ 9 Altimeter Berdasarkan Arduino: 4 Langkah (dengan Gambar) Dirt-O-Meter Murah Dirt - $ 9 Altimeter Berdasarkan Arduino: 4 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/005/image-14250-j.webp)
Dirt-O-Meter Murah Dirt - $ 9 Arduino Berdasarkan Audimeter Altimeter: Dytters (Altimeter Suara A.K.A) menyelamatkan nyawa skydivers selama bertahun-tahun. Sekarang, Audible Abby juga akan menjimatkan wang mereka. Dytter Asas mempunyai empat penggera, satu dalam perjalanan ke atas, dan tiga di bawah. Dalam menaiki kapal terbang, skydivers perlu tahu bila
Tutorial Arduino Nano - HTS221 Kelembapan dan Sensor Suhu Relatif: 4 Langkah
![Tutorial Arduino Nano - HTS221 Kelembapan dan Sensor Suhu Relatif: 4 Langkah Tutorial Arduino Nano - HTS221 Kelembapan dan Sensor Suhu Relatif: 4 Langkah](https://i.howwhatproduce.com/images/010/image-27332-j.webp)
Arduino Nano - HTS221 Relatif Kelembapan dan Sensor Suhu Tutorial: HTS221 adalah sensor digital kapasitif ultra kompak untuk kelembapan dan suhu relatif. Ini termasuk elemen penginderaan dan litar bersepadu khusus aplikasi isyarat campuran (ASIC) untuk memberikan maklumat pengukuran melalui siri digital
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: 4 Langkah
![Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: 4 Langkah Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: 4 Langkah](https://i.howwhatproduce.com/images/002/image-3072-60-j.webp)
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
Arduino Altimeter Menggunakan BMP dan SPI atau I2C OLED: 5 Langkah
![Arduino Altimeter Menggunakan BMP dan SPI atau I2C OLED: 5 Langkah Arduino Altimeter Menggunakan BMP dan SPI atau I2C OLED: 5 Langkah](https://i.howwhatproduce.com/images/003/image-8379-18-j.webp)
Arduino Altimeter Menggunakan BMP dan SPI atau I2C OLED: Sudah lama saya mencari altimeter dan suhu menggunakan sensor tunggal dan memaparkannya ke OLED berasaskan SPI. Oleh kerana saya tidak dapat menemui sesuatu yang tepat, fikir saya akan membina sendiri menggunakan perpustakaan U8glib. Terdapat satu tutorial di dalam tab