BARÓMETRO BMP280




TEORÍA: PRESIÓN BAROMÉTRICA

Construcción de un altímetro barométrico electrónico, con Arduino. La presión atmosférica: principios, unidades de medida, relación altura/presión, sistemas de medida, etc. Se utiliza el módulo BMP280, que incluye un sensor de presión piezo-resistivo de alta precisión y bajo consumo (2,7 uA / 1Hz), además de un sensor de temperatura. Descripción del código de programación con Arduino y sus librerías de control. Montaje del altímetro en una placa de circuito impreso independiente del módulo Arduino, con alimentación a baterías y módulo de carga.




La presión atmosférica es la fuerza por unidad de área que ejerce el aire sobre la superficie terrestre, la cual está asociada a los cambios meteorológicos. La altura modifica tanto la temperatura como la presión atmosférica. La presión atmosférica disminuye con la altitud y la humedad, ya que el peso de la masa del aire disminuye.

Los primeros barómetros fueron construidos por el físico y matemático italiano Evangelista Torricelli en el siglo XVII. La presión atmosférica equivale a la altura de una columna de agua de unos 10,33 m de altura. En los barómetros de mercurio, cuya densidad es unas 13,5 veces mayor que la del agua, la columna de mercurio sostenida por la presión atmosférica al nivel del mar es de unos 76 cm.




 La presión atmosférica normalizada, 1 atmósfera, fue definida como la presión atmosférica media al nivel del mar, que se adoptó como exactamente 101.325 Pa / 1013,25 hPa / 760 Torr. (equivalente al peso de 10,33 m de agua)
Normalmente la presión atmosférica se da en milibares, y la presión normal al nivel del mar se considera igual a 1013,25 milibares. En unidades del Sistema Internacional de Unidades, la presión se mide en pascales, aunque cuando se trata de presión atmosférica se suele utilizar el hectopascal, equivalente al milibar (1 mbar = 1 hPa).






  • 1 bar = 100.000 Pa = 1000 hPa = 100 kPa = 100 kN/m2 = 1,01972 kgf/cm2
  • 1 bar = 14,5037738 PSI(= libras/pulgada2 = lb/in2)
  • 1 bar = 750,062 mmHg(Torr)
  • 1 bar = 0,9869 atm
  • 1 atm = 101.325 Pa = 1,01325 bar
  • 1 atm = 760 mmHg (Torr)
  • 1 mmHg = 133,28947379 Pa

  • Resolución: 0,0016 hPa / 0.01ºC
  • Interface: SPI / I2C
  • Dirección I2C:  76H (SDO: 0) / 77H (SDO: 1)
  • Rango de presión:   300…1100 hPa / +9000 … -500 metros sobre el nivel del mar
  • Precisión: +- 0,12 hPa / +- 1m.


El kilopascal (kPa) es una unidad de presión que equivale a 1.000 pascales. El hectopascal (hPa) es una unidad de presión que equivale a 100 pascales y es usado por su equivalencia con el milibar.

Estación meteorológica de Toledo

Datos registrados por la estación meteorológica de Toledo. Los datos de esta estación provienen de la red de estaciones de AEMET y dispone de datos de 10 en 10 minutos.

Posición geográfica:
Latitud: 39.884722
Longitud: -4.049444
Altitud: 515
 Presión a nivel del mar:1004.2 hPa

Ejemplo datos metereológicos en Toledo UN DÍA LLUVIOSO
Temperatura: 7.6°C
Temperatura máxima en 10 minutos: 7.6°C
Temperatura mínima en 10 minutos: 7.6°C
Temperatura suelo: 7.7°C
Temperatura subsuelo 5cm: 10.2°C
Temperatura punto de rocío: 6.8°C
Velocidad media del viento:
3.4 m/s o 12.24 Km/h 99°
Velocidad máxima del viento:
5.4 m/s o 19.44 Km/h 100°
Humedad relativa: 95%
Presión atmosférica: 943.7 hPa
Presión a nivel del mar: 1004.2 hPa
Precipitación: 0.2 mm
Visibilidad: 6.271 Km
Insolación: 0.0 minutos





SENSOR BMP280



El sensor BMP180 es un sensor de presión atmosférica de alta precisión, este dispositivo está diseñado para ser conectado directamente a un microcontrolador de un dispositivo móvil a través de I2C. Los datos de presión y la temperatura tienen que ser compensado por los datos de calibración del E2PROM del BMP180.

Características del Sensor BMP180
  • Digital interfaz de dos cables (I2C)
  • Amplio rango de medición de presión barométrica
  • Ultra-bajo consumo de energía
  • Bajo ruido
  • Completamente calibrado
  • Medición de temperatura incluida
  • Ultraplano y pequeño tamaño
  • Alimentación: 1.8V – 3.6V
  • Rango de medición: 300 – 1100hPa
  • Velocidad del protocolo máxima: 3.4 MHz.

 

CONEXIONES

VDD SENSOR = 3.3V ARDUINO
GND SENSOR = GND ARDUINO
SDA/SDI = A4 ARDUINO
SCL/SCK = A5 ARDUINO








CÓDIGO  SACADO DE LA LIBRERIA (HAY QUE INCLURI Adafruit_Sensor.h  en su carpeta)
#include <Wire.h>
#include <SPI.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP280.h>

#define BMP_SCK 13
#define BMP_MISO 12
#define BMP_MOSI 11
#define BMP_CS 10

Adafruit_BMP280 bme; // I2C
//Adafruit_BMP280 bme(BMP_CS); // hardware SPI
//Adafruit_BMP280 bme(BMP_CS, BMP_MOSI, BMP_MISO,  BMP_SCK);
 
void setup() {
  Serial.begin(9600);
  Serial.println(F("BMP280 test"));
 
  if (!bme.begin()) { 
    Serial.println("Could not find a valid BMP280 sensor, check wiring!");
    while (1);
  }
}
 
void loop() {
    Serial.print("Temperature = ");
    Serial.print(bme.readTemperature());
    Serial.println(" *C");
   
    Serial.print("Pressure = ");
    Serial.print(bme.readPressure()/100);  //Toledo 1004.2hPa de nivel mar
    Serial.println(" hPa");

    Serial.print("Approx altitude = ");
    Serial.print(bme.readAltitude()-45); // this should be adjusted to your local forcase
    Serial.println(" m");
   
    Serial.println();
    delay(2000);
}