Paano gamitin ang sensor ng BMP180 barometric na may arduino

How to Use the BMP180 Barometric Pressure Sensor with Arduino

Ang BMP180 ay isang high-precision barometric pressure at temperatura sensor na maaaring madaling makialam sa Arduino gamit ang I2C protocol. Malawakang ginagamit ito sa pagsubaybay sa panahon, mga sukat ng taas, at mga aplikasyon ng IoT. Ang tutorial na ito ay gagabay sa iyo sa pamamagitan ng pagkonekta at paggamit ng BMP180 kasama si Arduino.


Ano ang kakailanganin mo

  1. BMP180 Sensor Module
  2. Arduino Board (hal., Uno, Mega, Nano)
  3. Mga wire ng tinapay at jumper
  4. Isang computer na may naka -install na Arduino IDE

Hakbang 1: Pag -unawa sa BMP180

Sinusukat ng BMP180 ang presyon at temperatura ng barometric at maaaring makalkula ang taas batay sa pagbabasa ng presyon. Nakikipag -usap ito kay Arduino gamit ang protocol ng I2C.

BMP180 Pinout

Pin Function
Vin Power Supply (3.3V/5V)
Gnd Lupa
SDA I2C Data Line
SCL I2C linya ng orasan

Hakbang 2: Ang mga kable ng BMP180 kay Arduino

Narito kung paano ikonekta ang BMP180 sa isang Arduino Uno:

BMP180 PIN Arduino Pin
Vin 5v
Gnd Gnd
SDA A4
SCL A5

Tandaan: Para sa iba pang mga board ng Arduino, i -verify ang mga i2C pin sa dokumentasyon ng iyong board (hal., Ang MEGA ay gumagamit ng mga pin 20 at 21 para sa SDA at SCL).


Hakbang 3: I -install ang kinakailangang library

Ang library ng "Adafruit BMP085 Unified" ay maaaring magamit para sa BMP180 dahil ito ay ganap na magkatugma.

Mga Hakbang upang I -install ang Library:

  1. Buksan ang Arduino IDE.
  2. Pumunta sa Sketch > Isama ang library > Pamahalaan ang mga aklatan.
  3. Maghanap para sa "Adafruit BMP085 Pinagkaisa" at i -click I -install.

Hakbang 4: Mag -upload ng code

Narito ang isang halimbawa ng sketch upang mabasa ang temperatura, presyon, at kalkulahin ang taas:

#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
}

Hakbang 5: Subukan ang pag -setup

  1. Ikonekta ang Arduino sa iyong computer sa pamamagitan ng USB.
  2. Buksan ang Arduino IDE at piliin ang tama Lupon at Port sa ilalim ng Mga tool menu.
  3. I -upload ang code sa Arduino sa pamamagitan ng pag -click Mag -upload.
  4. Buksan ang serial monitor (Mga tool > Serial monitor) at itakda ang rate ng baud sa 9600.
  5. Alamin ang presyon, temperatura, at pagbabasa ng taas na ipinapakita sa serial monitor.

Mga aplikasyon ng BMP180

  1. Mga sistema ng pagsubaybay sa panahon
  2. Pagsukat ng taas sa mga drone at aviation
  3. IoT monitoring sa kapaligiran
  4. Pag -log ng Data ng Barometric Pressure

Pag -aayos

  • Walang tugon mula sa sensor: Suriin ang mga kable at tiyakin na ginagamit ang tamang i2c pin.
  • Maling pagbabasa: Patunayan na ang sensor ay hindi nakalantad sa matinding kondisyon sa kapaligiran.
  • Mga error sa library: Tiyakin na ang aklatan na "Adafruit BMP085 Unified" ay naka -install nang tama.

Konklusyon

Matagumpay mong na -interface ang BMP180 barometric pressure sensor kasama si Arduino. Ang maraming nalalaman sensor ay mainam para sa mga proyekto na nangangailangan ng tumpak na presyon at pagsukat ng temperatura. Eksperimento karagdagang sa pamamagitan ng pagsasama nito sa mga data logger, display, o IoT platform!

Mag -iwan ng komento

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.