Objetivo:
El objetivo de este manual es utilizar nuestro pequeño modulo sensor de presión para identificar la temperatura y la presión. Si quieres saber mas detalles de este producto puedes hacer clic aquí.
Características:
- Digital interfaz de dos cables (I2C)
- Amplio rango de medición de presión barométrica
- Ultra-bajo consumo de energía de 5µA a 1 Dato/sec. En modo normal
- Bajo ruido 0.06pPa (0.5m) en modo de ultra bajo consumo
- 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
Materiales necesarios:
- Uno R3 + Cable USB para Arduino
- Modulo sensor de presión barométrica BMP180
- 1 Protoboard (Breadboard)
- Varios Jumpers
- Pantalla LCD
Liberia para Modulo Sensor de presión barométrica:
Para el tutorial de este modulo utilizaremos la librería del modulo para que podamos manipularlo, puedes descargarla haciendo clic en el enlace.
Es necesario descargar e importar la librería a nuestro IDE de Arduino, antes de subir nuestro código del programa.
- Liberia del Modulo Sensor de presión barométrica
Grafico de Conexión:
Código / Lectura de Temperatura y Presión:
#include < SFE_BMP180.h>
#include < Wire.h>
SFE_BMP180 bmp180;
void setup()
{
Serial.begin(9600);
if (bmp180.begin())
Serial.println("BMP180 iniciado correctamenten");
else
{
Serial.println("Error al iniciar el BMP180");
while(1); // bucle infinito
}
}
void loop()
{
char status;
double T,P;
status = bmp180.startTemperature();//Inicio de lectura de temperatura
if (status != 0)
{
delay(status); //Pausa para que finalice la lectura
status = bmp180.getTemperature(T); //Obtener la temperatura
if (status != 0)
{
status = bmp180.startPressure(3); //Inicio lectura de presión
if (status != 0)
{
delay(status);//Pausa para que finalice la lectura
status = bmp180.getPressure(P,T); //Obtenemos la presión
if (status != 0)
{
Serial.print("Temperatura: ");
Serial.print(T,2);
Serial.print(" *C , ");
Serial.print("Presion: ");
Serial.print(P,2);
Serial.println(" mb");
}
}
}
}
delay(1000);
}