Sensor de Presión Barométrica BMP085 – Tecno-Fly


La robótica aérea ha experimentado en los últimos tiempos un auge importante gracias a la introducción de los UAV (drones) en el ámbito civil y su relativa facilidad de acceso, haciendo crecer a entusiastas del aeromodelismo y permitiendo la creación de nuevos ámbitos laborales; sin embargo, la complejidad tecnológica que combina su interior hace que muchos no se atrevan aún a la construcción propia, sino que dependan de aquellos comerciales que no cumplen con requisitos necesarios para ciertas tareas. Es por ello que nosotros en Tecno-Fly a partir de ahora nos vamos a permitir compartir información al respecto, promoviendo el desarrollo de dispositivos a partir de tecnologías abiertas, expandiendo así, aún más, el conocimento. El siguiente artículo es el primero de una serie sobre los sensores vitales para el funcionamiento correcto en vuelo, con la intención de ir generando confianza en todos aquellos que deseen emprender proyectos en este ámbito.

Uno de los datos básicos para la aeronática es la meteorología, dentro de la cual la observación de los cambios en la presión es vital para determinar la información de vuelo, ya que esta al variar a diferentes alturas influye directamente en la determinación de la altitud.

Para obtener la presión básica basta con tomar una serie de medidas y obtener su media, sin embargo para relieves irregulares  donde las variaciones de la presión son distintas por la diferencia de altitud, se hace difícil la obtención de las comparaciones entre lugares, siendo entonces muy importante conocer lo más pronto posible la presión típica para que los meteorólogos, en base a comparaciones de data, puedan conocer si la presión varía y de que manera.

Sobre el particular, la presión barómetrica es aquella aplicada por la atmósfera de la tierra en determinado punto, que es equivalente a la ejercida por una columna de mercurio; en específico la presión atmosférica local más una corrección por la altitud geopotencial local, oscilando alrededor de la presión atmosférica normalizada (1013,25 hPa). Su uso es muy importante en diferentes campos, particularmente en el aéreo, ya que la variación vertical de la presión de la atmósfera (altitud) permite conocer, entre otras cosas, la separación entre aeronaves, la convergencia a la elevación de la pista y la altura verdadera en relación al suelo.

En base a lo anteriormente descrito, existen una serie de sensores con la capacidad de determinar estos valores, permitiendo adicionalmente obtener la temperatura del ambiente circundante. Entre ellos se encuentra el sensor BMP 085, basado en tecnología piezo-resistiva de alta precisión, eficacia, con robustez EMC, linealidad y estabilidad a largo plazo. Entrega un rango de medición entre los 300 a 1100 hectopascal (hPa) con una precisión absoluta de hasta 0,03 hPa.  Es importante acotar que la alimentación debe estar entre 1.8 y 3.6VDC, excederse de ello es correr el riesgo de inhabilitar permanentemente el componente. Puede ser conectado directamente a un microcontrolador por medio del I2C.

Información y características:

  • Interfaz de dos cables I2C.
  • Amplio rango de medición.
  • Alimentación: 3.3VDC.
  • Bajo consumo eléctrico.
  • Calibración de fabricante.
  • Medición de temperatura, altitud y presión.
  • Dimensiones: 15,7mm x 20,3mm.
  • Medición de bajo ruido.

Información adicional: Es menos conocido el voltaje de alimentación de operación para SDA/SCL, no siendo necesario convertir lógicamente de 5V a 3.3V, el sensor puede operar perfectamente en sus pines de trabajo con la conexión directa de Arduino sin problemas.

Su conexión física con Arduino es sencilla, de GND a tierra, VCC a 3.3V, SCL BMP085 a SCL Arduino (en el caso del ejemplo MEGA 2560), SDA BMP085 a SDA Arduino:

 

 

Posterior a ello, solo nos resta la instalación específica de la libreria de uso para el sensor ( #include <Adafruit_BMP085.h> ) la cual es descargable desde adafruit.com cuyo enlace queda acontinuación:

https://learn.adafruit.com/bmp085/using-the-bmp085

El código de uso con la librería es el siguiente:

 

Finalmente el resultado:

 

 

Existen en el mercado actual sensores de reemplazo para el BMP085, como lo es el BMP180, cuya diferencia fundamental radica en la disminución de número de pines y que constituye el modelo de cambio posterior principal para el 085, descontinuandolo. En diferentes foros y páginas indican que es más preciso y rápido, sin embargo en el particular no he notado diferencia alguna que sobresalga: código, información a sensar y capacidad de respuesta son prácticamente las mismas.

En el campo de la robótica aérea el BMP085 es fundamental para la determinación de la altitud, sin embargo es importante indicar que debe combinarse con otros para lograr el cometido de compilar información de vuelo (telemetría) vital para el funcionamiento correcto de la aeronave y su permanencia en el aire, son aquellos que precisamente permiten la estabilidad de la aeronave y orientación: magnetómetro, giroscopio y acelerómetro.

En futuros artículos estaremos conversando sobre cada uno de ellos, es decir, de las variantes para el BMP085 y su combinación con otros para el éxito de vuelo en los UAV, así como aquellos que compilan en un todo en uno para lograr varios grados de libertad (DOF) como el Sensor 1232055 10DOF.