El sensor de presión barométrica MS5611 es una solución avanzada diseñada para ofrecer alta precisión y bajo consumo de energía. Este sensor es ideal para medir altitud y se utiliza frecuentemente en sistemas de autopiloto para drones (UAVs).

El sensor de presión barométrica MS5611 es una solución avanzada diseñada para ofrecer alta precisión y bajo consumo de energía. Este sensor es ideal para medir altitud y se utiliza frecuentemente en sistemas de autopiloto para drones (UAVs). Gracias a su tecnología MEMS de última generación y a la experiencia de MEAS Suiza, el MS5611 garantiza una baja histéresis y una alta estabilidad en la medición de la presión barométrica y la temperatura.

Características Principales

  • Alta Precisión: El MS5611 proporciona una resolución de presión de 0.012 mbar y una resolución de temperatura de 0.01 °C, asegurando mediciones detalladas y exactas.
  • Bajo Consumo de Energía: Con un consumo energético de solo 1 µA en modo de espera (menos de 0.15 µA), es ideal para aplicaciones en drones donde la eficiencia energética es crucial.
  • Rango de Medición Amplio: Capaz de medir presiones desde 10 hasta 1200 mBar y temperaturas desde -40 °C hasta 85 °C, lo que lo hace versátil para diversas condiciones ambientales.
  • Conversión Rápida: Ofrece una conversión de datos en tan solo 1 ms, lo que permite respuestas rápidas y precisas durante el vuelo.

Conectividad y Compatibilidad

El sensor MS5611 está diseñado para conectarse fácilmente a microcontroladores mediante interfaces I2C o SPI. La selección del protocolo de comunicación se realiza a través del pin PS:

  • I2C: Si el pin PS está conectado a 5V, el sensor funciona en modo I2C con direcciones de 0x77 (pin CSB a GND) o 0x76 (pin CSB a VCC).
  • SPI: Si el pin PS está conectado a GND, el sensor opera en modo SPI con las conexiones SCL=SCK, SDA=SDI, y SDO=SDO.

Aunque el MS5611 opera internamente a 3.3V, el módulo incorpora un regulador de voltaje que permite su alimentación con 5V. Además, incluye acondicionadores de voltaje para los pines de comunicación lógica.

Especificaciones Técnicas

  • Módulo: GY-63
  • Chip: MS5611
  • Voltaje de Operación: 3.3V – 5V DC
  • Interfaz de Comunicación Digital: I2C o SPI
  • ADC Interno: 24 bits
  • Rango de Medición de Presión: 10 a 1200 mBar
  • Resolución de Presión: 0.012 mbar (configurable por software)
  • Rango de Medición de Temperatura: -40 °C a 85 °C
  • Resolución de Temperatura: 0.01 °C
  • Conversión Rápida: 1 ms
  • Consumo de Energía: 1 µA (en espera <0,15 µA)

 

Código de Ejemplo Básico para Arduino

Este código básico te permitirá empezar a trabajar con el sensor MS5611 y verificar que todo está funcionando correctamente.

				
					#include <Wire.h>
#include <Adafruit_MS5611.h>

// Crea una instancia del sensor MS5611
Adafruit_MS5611 ms5611 = Adafruit_MS5611();

void setup() {
  Serial.begin(9600);
  
  // Inicia el sensor
  if (!ms5611.begin()) {
    Serial.println("No se pudo encontrar el sensor MS5611. Verifica las conexiones.");
    while (1);
  }
  
  Serial.println("Sensor MS5611 inicializado correctamente.");
}

void loop() {
  // Lee la presión y la temperatura
  ms5611.read();
  float pressure = ms5611.getPressure();  // en Pascales
  float temperature = ms5611.getTemperature();  // en grados Celsius

  // Imprime los resultados en el monitor serial
  Serial.print("Presión: ");
  Serial.print(pressure);
  Serial.println(" Pascales");

  Serial.print("Temperatura: ");
  Serial.print(temperature);
  Serial.println(" °C");

  // Espera 1 segundo antes de la siguiente lectura
  delay(1000);
}
				
			

Explicación del Código

  • Inclusión de Bibliotecas: Se incluyen las bibliotecas Wire.h para la comunicación I2C y Adafruit_MS5611.h para manejar el sensor.
  • Inicialización: En el setup(), se inicializa el sensor y se verifica que esté conectado correctamente.
  • Lectura de Datos: En el loop(), se leen y se imprimen la presión y la temperatura en el monitor serial. Los valores se actualizan cada segundo.

Consideraciones

  • Protocolos de Comunicación: Este código está configurado para trabajar con I2C. Si estás usando SPI, necesitarás modificar el código para configurar los pines SPI y cambiar las funciones de comunicación.
  • Calibración: Asegúrate de calibrar el sensor adecuadamente si es necesario para tus aplicaciones específicas.

Libreria Adafruit_MS5611