Sensor de presión atmosférica, el BMP180

0
802

Hoy traemos para ustedes un sencillo tutorial sobre el uso del sensor BMP180, que nos permite medir presión atmosférica/barométrica y diferencias de alturas entre dos puntos.

Antes de empezar a explicar el funcionamiento del sensor BMP180, me gustaría introducir el concepto de presión atmosférica o barométrica. Citaré un artículo de Wikipedia con algunos conceptos sobre este tema.

La presión atmosférica es la fuerza por unidad de superficie que ejerce el aire sobre la superficie terrestre.

La presión atmosférica en un punto coincide numéricamente con el peso de una columna estática de aire de sección recta unitaria que se extiende desde ese punto hasta el límite superior de la atmósfera. Como la densidad del aire disminuye conforme aumenta la altura, no se puede calcular ese peso a menos que seamos capaces de expresar la variación de la densidad del aire ρ en función de la altitud z o de la presión p. Por ello, no resulta fácil hacer un cálculo exacto de la presión atmosférica sobre un lugar de la superficie terrestre. Además tanto la temperatura como la presión del aire están variando continuamente, en una escala temporal como espacial, dificultando el cálculo. Podemos obtener una medida de la presión atmosférica en un lugar determinado pero con ella no se pueden obtener muchas conclusiones: es la variación de dicha presión a lo largo del tiempo lo que nos permite obtener una información útil que, unida a otros datos meteorológicos (temperatura atmosférica, humedad y vientos) nos da una imagen bastante acertada del tiempo atmosférico en dicho lugar e incluso un pronóstico a corto plazo del mismo.

En pocas palabras, la presión atmosférica se da por la columna de aire que existe sobre nosotros. La misma está en función de la altura y relacionada con las condiciones meteorológicas de determinado lugar en determinado momento.

El sensor BMP180 es un sensor de presión atmosférica de alta precisión. En la hoja de datos del dispositivo se detalla esta información.

$T2eC16ZHJIcFHOV!S3DLBR18MoR,Jg~~60_35

Se utiliza la interfaz I2C para comunicación. Las conexiones de este sensor son muy sencillas:

BMP180

Para el uso de este sensor existe una librería llamada BMP180, la cual podemos descargar aquí. También podemos consultar los archivos de la librería en Github.

Vamos a probar nuestro sensor. Primero hacemos las conexiones siguiendo la tabla de la parte superior.

El sensor BMP180 es capaz de leer presión barométrica (absoluta) y temperatura. Por medio de cálculos matemáticos es capaz de detectar diferencias de alturas. ¿Cómo? Pues como ya mencionamos la Presión Atmosférica o Barométrica es inversamente proporcional a la altura sobre el nivel del mar, es decir, a medida que nos elevamos decrece la presión. Por eso es que cuando viajamos por carreteras que atraviesan colinas o montañas sentimos que nuestros oídos se tapan al descender. Esto se debe a que la presión atmosférica aumenta y sentimos el efecto del aumento en la presión. En el código que presentaré se hará una lectura inicial de la presión barométrica, expresada en milibares. A medida que nos desplacemos hacia un punto más alto o más bajo el sensor medirá la diferencia en la presión y la expresará como una variación en la altitud a la cual se encuentra el sensor con respecto a la medición inicial que será considerada como 0.

Conectemos nuestro sensor al Arduino.

20140606_161359

Ahora el código que vamos a utilizar es el siguiente.

Nota: este código está basado en uno de los ejemplos que vienen con la librería; lo he simplificado y las instrucciones están en español. El ejemplo original está en la carpeta “Examples” dentro del archivo de la librería y ha sido adaptado a las condiciones locales del almacén de Sparkfun en Colorado.

 

El resultado que obtendremos en el Monitor Serial, cada 2 segundos es el siguiente.

BMP180

 

Espero que la información suministrada sea de mucha utilidad para todos y todas. Los invito a seguirnos en Facebook, Twitter y a suscribirse a nuestro Canal de Youtube.

Saludos.