En este tutorial vamos a diseñar un sistema de medición de presión barométrica usando BMP180 y ARDUINO. En primer lugar, para conectar BMP180 a ARDUINO, necesitamos descargar una biblioteca diseñada específicamente para BMP180. Esta biblioteca está disponible en: https://github.com/adafruit/Adafruit-BMP085-Library Después de adjuntar esa biblioteca, podemos llamar a funciones especiales que facilitarán el trabajo con el sensor BMP180.
Componentes requeridos
Hardware: placa Arduino uno, pines de conexión, resistencia de 220 Ω, sensor de presión barométrica BMP180, LCD de 16x2, placa de pruebas.
Software: Arduino todas las noches
Diagrama de circuito y explicación de trabajo
Después de llamar al encabezado, no debemos preocuparnos por establecer la comunicación entre Arduino Uno y el sensor BMP180. Simplemente podemos llamar a funciones especiales que lo harán por nosotros. Solo necesitamos inicializar una pantalla LCD y mostrar los valores llamados de SENSOR en ella.
En LCD de 16x2 hay 16 pines en total si hay luz de fondo, si no hay luz de fondo habrá un total de 14 pines. Uno puede encender o dejar los pines de luz de fondo. Ahora en los 14 pines hay 8 pines de datos (7-14 o D0-D7), 2 clavijas de alimentación de alimentación (1 y 2 o VSS y VDD o GND y + 5V), 3 rd PIN para el control de contraste (Vee-controla cómo de espesor los caracteres deben estar se muestra) y 3 pines de control (RS & RW & E).
En el circuito, puede observar que solo he tomado dos pines de control, el bit de contraste y READ / WRITE no se usan con frecuencia por lo que pueden cortocircuitarse a tierra. Esto coloca a la pantalla LCD en el modo de mayor contraste y lectura. Solo necesitamos controlar los pines ENABLE y RS para enviar caracteres y datos en consecuencia.
Las conexiones que se realizan para LCD se dan a continuación:
PIN1 o VSS a tierra
PIN2 o VDD o VCC a + 5v de potencia
PIN3 o VEE a tierra (ofrece el mejor contraste máximo para un principiante)
PIN4 o RS (Selección de registro) a PIN8 de ARDUINO UNO
PIN5 o RW (lectura / escritura) a tierra (pone la pantalla LCD en modo lectura facilita la comunicación para el usuario)
PIN6 o E (habilitado) a PIN9 de ARDUINO UNO
PIN11 o D4 a PIN10 de ARDUINO UNO
PIN12 o D5 a PIN11 de ARDUINO UNO
PIN13 o D6 a PIN12 de ARDUINO UNO
PIN14 o D7 a PIN13 de ARDUINO UNO
El ARDUINO IDE permite al usuario utilizar LCD en modo de 4 bits. Este tipo de comunicación permite al usuario disminuir el uso de pines en ARDUINO, a diferencia de otros, el ARDUINO no necesita ser programado por separado para usarlo en el modo 4 porque, por defecto, el ARDUINO está configurado para comunicarse en modo 4 bits. En el circuito se puede ver que hemos utilizado comunicación de 4 bits (D4-D7).
Entonces, a partir de la mera observación de la tabla anterior, estamos conectando 6 pines de LCD al controlador en el que 4 pines son pines de datos y 2 pines para control.
Para conectar el BMP180 a Arduino Uno, debemos hacer lo siguiente:
|
Primero necesitamos llamar al archivo de encabezado para habilitar funciones especiales "#include".
Con este archivo de encabezado podemos llamar a funciones que pueden leer valores de Sensor directamente sin ningún problema.
Ahora necesitamos habilitar la comunicación C, esto se hace llamando a "#include
Podemos leer la presión llamando a ”String PRESSUREVALUE = String (bmp.readPressure ());”. Aquí, el valor de presión se leerá del sensor y se almacenará en la cadena "VALOR DE PRESIÓN".
Podemos leer la temperatura llamando a ”String TEMPARATUREVALUE = String (bmp.readTemperature ());”. Aquí, el valor de presión se leerá del sensor y se almacenará en la cadena "TEMPARATUREVALUE".
Primero necesitamos habilitar el archivo de encabezado ('#include
En segundo lugar, necesitamos decirle a la placa qué tipo de LCD estamos usando aquí. Dado que tenemos tantos tipos diferentes de LCD (como 20 * 4, 16 * 2, 16 * 1, etc.). Aquí vamos a conectar una pantalla LCD de 16 * 2 a UNO para que obtengamos 'lcd.begin (16,2);'. Para 16 * 1 obtenemos 'lcd.begin (16,1);'.
En esta instrucción vamos a decirle a la placa dónde conectamos los pines. Los pines que están conectados se deben representar en orden como “RS, En, D4, D5, D6, D7”. Estos pines deben representarse correctamente. Dado que conectamos RS a PIN0 y así sucesivamente como se muestra en el diagrama del circuito, representamos el número de pin a la placa como “LiquidCrystallcd (0,1,8,9,10,11);”.
Después de lo anterior, todo lo que queda es enviar datos, los datos que deben mostrarse en la pantalla LCD deben escribirse como “cd.print (" ¡hola, mundo! ");”. Con este comando, la pantalla LCD muestra "¡hola, mundo!".
Como puede ver, no debemos preocuparnos por nada más, solo tenemos que inicializar y el UNO estará listo para mostrar datos. No tenemos que escribir un ciclo de programa para enviar los datos BYTE por BYTE aquí. Después de leer el valor del sensor, lo mostraremos en una pantalla LCD de 16x2.