Introduction: PT Temperatura Y Milibares , Lcd and BMP180

Hola este DIY te va a enseñar como usar un Arduino Uno, BMP180 y un display LCD para poder calcular la temperatura y la presión del area en el que estas.

Primero lo que tienes que hacer es soldar el BMP180 a 4 cables y el LCD

Después de que hagas esto ya estas listo para armar tu montage

Step 1: Materiales

Los materiales necesitados para realizar este montaje son:

- 20 Cables

- Display lcd

- Arduino Uno

- Protoboard (Grande)

- Resistencia de 220

- Potencio-metro de 10k

-Cuando haz verificado de que tienes estos materiales puedes empezar a armar el montaje

Step 2: Montage

Realizar el montaje que esta arriba, pero al conectar el bmp180 conectado con estos instrucciones

VIN --- 3.3 v

GND --- GND

SCL --- A5

SDA --- A4

Step 3: Descargar Arduino Y El Codigo

Antes de copiar y pegar este codigo en Arduino es MANDATORIO que descarges esta libreria. Abajo encontrara el link de la página, solo tiene que descargarlo e instalarlo en Arduino.

https://learn.sparkfun.com/tutorials/bmp180-barome...

Después de que descargues la librería copiar este código y pegarlo en arduino

// include the library
code:

#include

#include

#include

// initialize the library with the numbers of the interface pins

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

SFE_BMP180 pressure;

double PresionBase;

double Presion = 0;

double Altura = 0;

double Temperatura = 0;

char status;

void setup() {

// set up the LCD's number of columns and rows:

lcd.begin(16, 2);

Serial.begin(9600);

SensorStart();

}

void loop() {

// set the cursor to column 0, line 1

// (note: line 1 is the second row, since counting begins with 0):

lcd.setCursor(0, 1);

// print the number of seconds since reset:

ReadSensor();

//Se imprimen las variables

lcd.print("Temperatura: ");

lcd.print(Temperatura);

lcd.println(" grados C");

lcd.print("Presion: ");

lcd.print(Presion);

lcd.println(" milibares");

delay(1000);

}

void SensorStart() {

//Secuencia de inicio del sensor

if (pressure.begin())

Serial.println("BMP180 init success");

else

{

Serial.println("BMP180 init fail (disconnected?)\n\n");

while (1);

}

//Se inicia la lectura de temperatura

status = pressure.startTemperature();

if (status != 0) {

delay(status);

//Se lee una temperatura inicial

status = pressure.getTemperature(Temperatura);

if (status != 0) {

//Se inicia la lectura de presiones

status = pressure.startPressure(3);

if (status != 0) {

delay(status);

//Se lee la presión inicial incidente sobre el sensor en la primera ejecución

status = pressure.getPressure(PresionBase, Temperatura);

}

}

}

}

void ReadSensor() {

//En este método se hacen las lecturas de presión y temperatura y se calcula la altura

//Se inicia la lectura de temperatura

status = pressure.startTemperature();

if (status != 0)

{

delay(status);

//Se realiza la lectura de temperatura

status = pressure.getTemperature(Temperatura);

if (status != 0)

{

//Se inicia la lectura de presión

status = pressure.startPressure(3);

if (status != 0)

{

delay(status);

//Se lleva a cabo la lectura de presión,

//considerando la temperatura que afecta el desempeño del sensor

status = pressure.getPressure(Presion, Temperatura);

if (status != 0)

{

//Se hace el cálculo de la altura en base a la presión leída en el Setup

}

else Serial.println("error en la lectura de presion\n");

}

else Serial.println("error iniciando la lectura de presion\n");

}

else Serial.println("error en la lectura de temperatura\n");

}

else Serial.println("error iniciando la lectura de temperatura\n");

}

Step 4: Terminar

Sube el código a Arduino y te debe funcionar representando a la temperatura en C y la presión en milibares. Te debería enseñar algo como el imagen arriba.