Cara menggunakan sensor tekanan barometrik BMP180 dengan Arduino

How to Use the BMP180 Barometric Pressure Sensor with Arduino

BMP180 adalah tekanan barometrik presisi tinggi dan sensor suhu yang dapat dengan mudah dihubungkan dengan Arduino menggunakan protokol I2C. Ini banyak digunakan dalam pemantauan cuaca, pengukuran ketinggian, dan aplikasi IoT. Tutorial ini akan memandu Anda melalui penghubung dan menggunakan BMP180 dengan Arduino.


Apa yang Anda Butuhkan

  1. Modul Sensor BMP180
  2. Dewan Arduino (mis., Uno, mega, nano)
  3. Papan tempat memotong papan dan kabel jumper
  4. Komputer dengan IDE Arduino diinstal

Langkah 1: Memahami BMP180

BMP180 mengukur tekanan dan suhu barometrik dan dapat menghitung ketinggian berdasarkan pembacaan tekanan. Ini berkomunikasi dengan Arduino menggunakan protokol I2C.

Pinout BMP180

Pin Fungsi
Vin Catu daya (3.3V/5V)
Gnd Tanah
SDA Jalur data I2C
Scl I2C Clock Line

Langkah 2: Kabel BMP180 ke Arduino

Inilah cara menghubungkan BMP180 ke Arduino UNO:

Pin BMP180 Pin Arduino
Vin 5v
Gnd Gnd
SDA A4
Scl A5

Catatan: Untuk papan Arduino lainnya, verifikasi pin I2C dalam dokumentasi dewan Anda (mis., Mega menggunakan pin 20 dan 21 untuk SDA dan SCL).


Langkah 3: Instal perpustakaan yang diperlukan

Perpustakaan "Adafruit BMP085 Unified" dapat digunakan untuk BMP180 karena sepenuhnya kompatibel.

Langkah -langkah untuk menginstal perpustakaan:

  1. Buka Ide Arduino.
  2. Pergi ke Sketsa > Sertakan perpustakaan > Kelola Perpustakaan.
  3. Cari "Adafruit BMP085 Unified" dan klik Memasang.

Langkah 4: Unggah kode

Inilah contoh sketsa untuk membaca suhu, tekanan, dan menghitung ketinggian:

#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP085_U.h>

Adafruit_BMP085_Unified bmp = Adafruit_BMP085_Unified(10085);

void setup() {
  Serial.begin(9600);
  Serial.println("BMP180 Sensor Test");

  if (!bmp.begin()) {
    Serial.print("Could not find a valid BMP180 sensor, check wiring!");
    while (1);
  }
}

void loop() {
  sensors_event_t event;
  bmp.getEvent(&event);

  if (event.pressure) {
    // Display pressure
    Serial.print("Pressure: ");
    Serial.print(event.pressure);
    Serial.println(" hPa");

    // Display temperature
    float temperature;
    bmp.getTemperature(&temperature);
    Serial.print("Temperature: ");
    Serial.print(temperature);
    Serial.println(" °C");

    // Calculate altitude
    float seaLevelPressure = 1013.25; // hPa
    Serial.print("Altitude: ");
    Serial.print(bmp.pressureToAltitude(seaLevelPressure, event.pressure));
    Serial.println(" m");
    Serial.println();
  } else {
    Serial.println("Sensor error!");
  }

  delay(2000); // Wait 2 seconds before the next reading
}

Langkah 5: Uji pengaturan

  1. Hubungkan Arduino ke komputer Anda melalui USB.
  2. Buka IDE Arduino dan pilih yang benar Papan Dan Pelabuhan di bawah Peralatan menu.
  3. Unggah kode ke Arduino dengan mengklik Mengunggah.
  4. Buka monitor serial (Peralatan > Monitor serial) dan atur baud rate ke 9600.
  5. Amati pembacaan tekanan, suhu, dan ketinggian yang ditampilkan di monitor serial.

Aplikasi BMP180

  1. Sistem Pemantauan Cuaca
  2. Pengukuran ketinggian dalam drone dan penerbangan
  3. Pemantauan lingkungan IoT
  4. Pencatatan Data Tekanan Barometrik

Pemecahan masalah

  • Tidak ada tanggapan dari sensor: Periksa kabel dan pastikan pin I2C yang benar digunakan.
  • Bacaan yang salah: Verifikasi bahwa sensor tidak terpapar pada kondisi lingkungan yang ekstrem.
  • Kesalahan Perpustakaan: Pastikan perpustakaan "Adafruit BMP085 Unified" diinstal dengan benar.

Kesimpulan

Anda telah berhasil menghubungkan sensor tekanan barometrik BMP180 dengan Arduino. Sensor serbaguna ini sangat ideal untuk proyek yang membutuhkan pengukuran tekanan dan suhu yang akurat. Eksperimen lebih lanjut dengan mengintegrasikannya dengan logger data, tampilan, atau platform IoT!

Tinggalkan komentar

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.