• Bild 1 von 7
  • Bild 2 von 7
  • Bild 3 von 7
  • Bild 4 von 7
  • Bild 5 von 7
  • Bild 6 von 7
  • Bild 7 von 7

BMP180 Digitale barometrische Drucksensor Board Modul

A164
Beschreibung:

Artikelname: BMP180 Sensor Modul
Größe: 13mm x 10mm
1.8V bis 3.6 V Versorgungsspannung
Max I2C Geschwindigkeit: 3.5 MHz
Geringe..
Lager: Lager
CHF 8.90
exkl. MWST

Beschreibung

Beschreibung:

  • Artikelname: BMP180 Sensor Modul
  • Größe: 13mm x 10mm
  • 1.8V bis 3.6 V Versorgungsspannung
  • Max I2C Geschwindigkeit: 3.5 MHz
  • Geringer Stromverbrauch: 0.5uA bei 1 Hz
  • I2C Schnittstelle
  • Sehr geringe Geräuschentwicklung: bis zu 0.02hPa (17cm)
  • Voll kalibriert
  • Druckbereich: 300hPa bis 1100 hPa (+ 9000m bis -500m)

Lieferumfang

  • 1 x BMP180 Sensor Modul
  • 1 x Stiftleiste 

Arduino Sketch

/* SFE_BMP180 library example sketch
 
This sketch shows how to use the SFE_BMP180 library to read the
Bosch BMP180 barometric pressure sensor.
Hardware connections:
 
- (GND) to GND
+ (VDD) to 3.3V
 
(WARNING: do not connect + to 5V or the sensor will be damaged!)
 
You will also need to connect the I2C pins (SCL and SDA) to your
Arduino. The pins are different on different Arduinos:
 
Any Arduino pins labeled:  SDA  SCL
Uno, Redboard, Pro:        A4   A5
Mega2560, Due:             20   21
Leonardo:                   2    3
*/
 
#include
#include
 
 
SFE_BMP180 pressure;
 
#define ALTITUDE 85.0 //Hoehe von Braunschweig
 
void setup()
{
  Serial.begin(9600);
  Serial.println("REBOOT");
 
  // Initialize the sensor (it is important to get calibration values stored on the device).
 
  if (pressure.begin())
    Serial.println("BMP180 init success");
  else
  {
    connections.
 
    Serial.println("BMP180 init fail\n\n");
    while(1); // Pause forever.
  }
}
 
void loop()
{
  char status;
  double T,P,p0,a;
 
  // Loop here getting pressure readings every 10 seconds.
 
  // If you want sea-level-compensated pressure, as used in weather reports,
  // you will need to know the altitude at which your measurements are taken.
  // We're using a constant called ALTITUDE in this sketch:
   
  Serial.println();
  Serial.print("provided altitude: ");
  Serial.print(ALTITUDE,0);
  Serial.print(" meters, ");
    
   
  status = pressure.startTemperature();
  if (status != 0)
  {
    // Wait for the measurement to complete:
    delay(status);
 
    // Retrieve the completed temperature measurement:
    // Note that the measurement is stored in the variable T.
    // Function returns 1 if successful, 0 if failure.
 
    status = pressure.getTemperature(T);
    if (status != 0)
    {
  
      Serial.print("temperature: ");
      Serial.print(T,2);
      Serial.print(" deg C, ");
            
      // Start a pressure measurement:
      // The parameter is the oversampling setting, from 0 to 3 (highest res, longest wait).
      // If request is successful, the number of ms to wait is returned.
      // If request is unsuccessful, 0 is returned.
 
      status = pressure.startPressure(3);
      if (status != 0)
      {
        // Wait for the measurement to complete:
        delay(status);
 
        // Retrieve the completed pressure measurement:
        // Note that the measurement is stored in the variable P.
        // Note also that the function requires the previous temperature measurement (T).
        // (If temperature is stable, you can do one temperature measurement for a number of pressure measurements.)
        // Function returns 1 if successful, 0 if failure.
 
        status = pressure.getPressure(P,T);
        if (status != 0)
        {
          // Print out the measurement:
          Serial.print("absolute pressure: ");
          Serial.print(P,2);
          Serial.print(" mb, ");
          
 
          // The pressure sensor returns abolute pressure, which varies with altitude.
          // To remove the effects of altitude, use the sealevel function and your current altitude.
          // This number is commonly used in weather reports.
          // Parameters: P = absolute pressure in mb, ALTITUDE = current altitude in m.
          // Result: p0 = sea-level compensated pressure in mb
 
          p0 = pressure.sealevel(P,ALTITUDE);
          Serial.print("relative (sea-level) pressure: ");
          Serial.print(p0,2);
          Serial.print(" mb, ");
           
 
          // On the other hand, if you want to determine your altitude from the pressure reading,
          // use the altitude function along with a baseline pressure (sea-level or other).
          // Parameters: P = absolute pressure in mb, p0 = baseline pressure in mb.
          // Result: a = altitude in m.
 
          a = pressure.altitude(P,p0);
          Serial.print("computed altitude: ");
          Serial.print(a,0);
          Serial.print(" meters, ");
           
        }
        else Serial.println("error retrieving pressure measurement\n");
      }
      else Serial.println("error starting pressure measurement\n");
    }
    else Serial.println("error retrieving temperature measurement\n");
  }
  else Serial.println("error starting temperature measurement\n");
 
  delay(5000);  // Pause for 5 seconds.
}