Sie sind auf Seite 1von 13

CURSO: INTRODUCCION AL DISEÑO ELECTRICO

INFORME: SENSOR PARA MEDICION DE AGUA CON ARDUINO

DOCENTE: ING. JAMES SKINNER CELADA PADILLA

INTEGRANTES:

 CALLLE HUAMAN, HENRRY GRABIEL 160486J

 RUIZ VILCHEZ, JHON ANTHONY 164044J

 CORDOVA MACEDO, EDWIM JHOEL 160493F

2018

ARDUINO CON SENSOR DE AGUA


INDICE:

 Definición y conceptos de sensor de agua.

 El sensor de nivel de agua con Arduino nos permite medir cualquier


líquido gracias al sensor de ultrasonidos.

 Componentes necesarios para el sensor de nivel de agua con Arduino

 Circuito eléctrico

 Montando el sensor en la cubeta

 Calibrando el sensor de nivel de agua con Arduino

 Mostrando los datos en el LCD

 Conclusiones
1. DEFINICION DE SENSOR DE AGUA:

En muchas ocasiones vamos a querer tener controlado el volumen de


agua que tengamos en alguna parte. Con este tipo de sensor podemos
saber si está seco, salpicado, sumergido en parte o sumergido del todo.

Pueden ser útiles en para detectar si se está condensando agua en algún


sitio, para conocer el nivel de agua en un depósito (aunque este modelo
tiene muy poco recorrido) o para saber si está lloviendo.

Estos sensores de agua son sencillísimos de conectar y de programar,


y además baratos.

2. EL SENSOR DE NIVEL DE AGUA CON ARDUINO NOS


PERMITE MEDIR CUALQUIER LIQUIDO GRACIAS AL
SENSOR DE ULTRASONIDOS:

La pieza más importante en este proyecto será el Arduino. En este caso


podemos utilizar cualquier modelo que tenga como mínimo 8 entradas
digitales. En este tutorial trabajaré con la placa más famosa de
Arduino, la UNO.

El proyecto va a constar de diferentes fases donde iremos avanzando


para conseguir nuestro objetivo.

 Circuito eléctrico, conectando los componentes


 Probar todos los componentes y conexiones
 Montando el sensor en la cubeta
 Calibrando el sensor de nivel de agua con Arduino
 Mostrando los datos en el LCD
3. COMPONENTES NECESARIOS PARA EL NIVEL DE
SENSOR DE AGUA CON ARDUINO:

Lo primero que debemos hacer si queremos crear un sensor de nivel


de agua con Arduino, es conocer los componentes que vamos a
utilizar. Por supuesto que esto es solo una idea, de todos los
componentes que voy a detallar a continuación, alguno es
prescindible.

Arduino UNO

Será el cerebro de la aplicación y el encargado de gestionar todos los


sensores a través de las entradas y salidas digitales. En la
programación reside su potencia. Veremos que código debemos
implementar para poder medir el nivel en un recipiente.

Precio: 23,33€
Sensor ultrasonidos HC-SR04

Ya hemos visto en diferentes artículos e incluso un capítulo del


podcast cómo funciona este sensor. No voy a entrar en detalle en su
funcionamiento solo comentar que este tipo de sensores se basan en
medir cuanto tiempo tarda en viajar una onda ultrasónica desde que
sale del sensor hasta que regresa.
Gracias a este tiempo y sabiendo la velocidad del sonido, es fácil
calcular la distancia aplicando la famosa fórmula.

Precio: 1,49€
Pantalla LCD 16×2

Este componente también lo hemos visto en varios artículos.


Mostrando texto en movimiento y mostrando la temperatura de un
sensor. Consiste en una pantalla de cristal líquido de 16 columnas y 2
filas. En ella iremos escribiendo los resultados obtenidos de las
mediciones, así como alguna otra información útil en este proyecto.

Precio: 2,84€

Demás componentes electrónicos


Además de los componentes esenciales para el sensor de nivel de agua
con Arduino, vamos a necesitar los típicos componentes que se suelen
utilizar en muchos circuitos. Te los detallo a continuación.

 Protoboard (1,92€)
 Potenciómetro 10kΩ (1,60€)
 Resistencia 220Ω (3,49€)
 Cables (8,99€)
4. CIRCUITO ELECTRICO:

Con todos los componentes en nuestro poder, ya podemos empezar a


montar el circuito. Como ya he comentado al principio del artículo,
vamos a necesitar 8 entradas y salidas digitales. Además, utilizaremos
el pin de 5V y el GND (toma de tierra).

5. MONTANDO EL SENSOR EN LA CUBETA:

Ya hemos montado todo el circuito, hemos comprobado que todo


funciona correctamente y ahora vamos a montar el sensor encima del
recipiente o cubeta donde vamos a tener el líquido. Lo podemos hacer
de muchas formas, yo te voy a mostrar una muy sencilla utilizando
dos palos de madera que se utilizan para cocinar. Son los típicos para
saber si el bizcocho está hecho o para hacer brochetas.

Además, he utilizado dos alambres de los típicos que vienen en


cualquier embalaje para sujetar cables. Suelo recolectar este tipo de
agarres ya que son muy útiles en muchas ocasiones. El resultado lo
puedes ver en las siguientes imágenes.
Gracias a estos dos palos podemos situar el ultrasonido baca abajo
encima de cualquier recipiente o cubeta. En la siguiente imagen te
muestro un ejemplo de cómo quedaría.

6. CALIBRANDO EL SENSOR DE NIVEL DE AGUA CON


ARDUINO:

Ha llegado la hora de empezar a programar. Lo primero que debemos


hacer es calibrar el sensor de nivel de agua con Arduino. Para ello voy
a utilizar un vaso medidor, es decir, un vaso que tiene marcadas las
medidas. Así podremos asignar una medida del sensor de ultrasonidos
a una cantidad de líquido. Esto nos permitirá saber qué cantidad de
líquido tenemos en el recipiente.

Algo que tienes que tener en cuenta es que el sensor de ultrasonidos


mide la cantidad de espacio vacío en el recipiente. Por lo tanto, si
conocemos la capacidad total del recipiente, al restar la cantidad de
espacio vacío sabremos cuánto líquido hay. Mira el esquema general.
Entonces, según este esquema general debemos conocer que valor
obtenemos con el sensor de ultrasonidos cuando está vacío, cuando
está lleno y una medida conocida. Esta última medida la haremos con
vaso medidor calculando el valor para 100 ml.

Antes de comenzar con las medidas, debemos de tener en cuenta que


el vaso debe ser cilíndrico, es decir, la base debe ser del mismo
diámetro que la parte de arriba. Si intentamos medir en un recipiente
que no es cilíndrico, en forma de cono, las medidas no
serán proporcionales.

Calcular la media para eliminar el ruido:

En todos los sistemas electrónicos se genera un ruido debido al


movimiento de los electrones, al propio sensor, la placa de Arduino,
etc… Esto se traduce en una variación o fluctuación en las medidas
que vamos obteniendo a través del sensor. Para eliminar este tipo de
ruido se suele aplicar un filtro paso bajo que elimina las frecuencias
bajas, justo donde se encuentra el ruido. La forma más sencilla de
aplicarlo a través de la programación es hacer una media de los valores
que se van obteniendo.
Pero no solo para eliminar el ruido, calculando la media podemos
eliminar las fluctuaciones debidas al movimiento del recipiente.
Imagínate un depósito de gasolina de un coche. Cuando va en marcha
el combustible no está quieto, se va moviendo. Si se quiere medir con
un sensor de ultrasonidos sería complicado si no se utiliza alguna
técnica como esta.

Dependiendo del número de muestras que utilicemos para obtener la


media, podremos tener un valor más preciso o menos preciso. Pero
esto también influye en cuánto tarda en estabilizarse la medida cuando
se produce un cambio. Por lo tanto, si cogemos un número alto de
muestras, la media será más precisa, pero tardará más tiempo en
reflejar los cambios. Por el contrario, si cogemos un número bajo de
muestras, la media será menos precisa, pero veremos reflejados más
rápidos los cambios. Elegir uno u otro dependerá de lo que queramos
conseguir, rapidez o precisión.

Otro factor a tener en cuenta es el tamaño del tipo de dato que vamos
a almacenar. Debemos de tener mucho ojo ya que podemos provocar
un desbordamiento. Todas las muestras se irán almacenando en una
variable para luego calcular la media, por lo tanto, si elegimos un
número alto de muestras debemos asegurarnos que no nos saldremos
de rango.

En este caso yo voy a elegir precisión, voy a coger un rango de


muestras de 100. El código es muy parecido al que hemos utilizado
para probar el sensor de ultrasonidos al que he añadido el cálculo de
la media cada 100 valores. No voy a profundizar más en esta técnica,
si quieres aprender todo lo que hay detrás te aconsejo que veas la
lección donde muestro como estabilizar el sensor de temperatura
LM35.
Calculando el nivel de líquido

Con los datos obtenidos en la fase anterior, con el recipiente en vacío,


lleno y con 100 ml, ya podemos obtener una fórmula para el sensor de
nivel de agua con Arduino. Las medidas obtenidas nos indican la
cantidad de espacio vacío que hay en el recipiente. Vamos a comenzar
cambiando el rango para llevarlo a 0 eliminando el offset de 2,20 cm.
Es como si el líquido estuviera a 0 cm cuando el recipiente está cero.

VACÍO LLENO 100 ML

11,41 cm 2,20 cm 9,26 cm

9,21 cm 0 cm 7,06 cm

El siguiente paso es calcular cuánto ocupa 100 ml de líquido en


nuestro recipiente. Esto se hace restando la distancia cuando está vacío
menos la distancia cuando tiene 100 ml.

9,21 - 7,06 = 2,15 cm / 100 ml

Esta medida nos dice que cada 2,15 cm hay 100 ml de líquido. Con
esto ya es sencillo calcular cuánto líquido hay dentro del recipiente.
Vamos a hacerlo con un ejemplo. Supongamos que el sensor de
ultrasonidos nos da una distancia de 7,11 cm. Ese sería el espacio
vacío, pero nosotros queremos saber cuánto espacio queda lleno. Lo
calculamos restando la distancia en vacío menos la distancia obtenida.

11,41 - 7,11 = 4,30 cm


Como sabemos que cada 2,15 cm hay 100 ml, aplicando una simple
regla de 3 sabremos la cantidad de líquido que tenemos.

Pues ya tenemos la base matemática para calcular el nivel de líquido


en nuestro recipiente, ahora solo nos queda aplicar dichos cálculos en
nuestro sketch.

7. MOSTRANDO LOS DATOS LCD:

Por último y, aunque no es necesario, vamos a mostrar la información


en una pantalla LCD de 16×2. La información que vamos a mostrar es
la cantidad de líquido en ml y el porcentaje de llenado. Estos datos son
fundamentales en el sensor de nivel de agua con Arduino.

El siguiente código lo único que hago es mezclar el código anterior


donde obtenemos la cantidad de líquido y el código con el que hemos
probado el LCD.

Das könnte Ihnen auch gefallen