Вы находитесь на странице: 1из 12

Sensores de Caudal y Nivel

Jorge Alejandro Achury Fonseca

702350

Jhon Alexander Delgadillo Muñoz

702374

Jimmy Alexander Ruiz Pinzón

702367

JhoanSebantian Valero Vanegas

702366

Instrumentación y Sensores

Lucas Forero

Universidad Católica de Colombia

Bogotá D.C

2019

CONTENIDOS
1. INTRODUCCION

2. OBJETIVOS

3. PROCESO

4. CODIGOS UTILIZADOS

5. RESULTADOS

6. CONCLUSIONES
INTRODUCCION

Los sensores de agua y flujo están pensados para poder medir el nivel que puede llegar a tener el
agua, en determinada área o volumen en el cual se desea medir , también la mayoría de veces se
utilizan estos para detectar si se encuentra un fuga presente ya que solo con tener una breve
tocada por el material o la sustancia estos sensores ya lo detectan, el de caudal se utiliza para
poder medir la cantidad de fluidos que transcurren por determinada zona estos pueden medir
tanto Litros por minuto (L/M) como Litros por hora (L/H) existen varios tipos de sensores tanto
invasivos como no invasivos, en esta práctica se utilizaron sensores invasivos ya que estos debían
estar tocando la muestra para poder censarla, estos tipos de sensores no son muy recomendados
en la industria ya que un solo toque de algo con la muestra podría afectar sus características, pero
como estos solo se utilizaron para fines académicos no ocurrió ningún problema relacionado con
esto.

Los sensores que se utilizaron para esta práctica son el YF-S201 que es un sensor de flujo con
turbina el sensor de flujo es un dispositivo que, instalado en línea con una tubería, permite
determinar cuándo está circulando un líquido o un gas. Estos son del tipo apagado/encendido;
determinan cuándo está o no circulando un fluido, también se utilizo el sensor de nivel de agua el
sensor de nivel es un dispositivo electrónico que mide la altura del material, generalmente líquido,
dentro de un tanque u otro recipiente.
Objetivos

 Conocer el manejo básico de los sensores de caudal y los sensores de nivel.

 Diseñar circuitos transductores para los sensores de caudal y de nivel.

 Utilizar sensores de caudal de turbina.

 Utilizar sensores de nivel invasivos.


PROCESO
En primer lugar, se realizó la configuración del sensor de caudal en el cual se conectaron dos
mangueras de flujo una en cada extremo correspondientemente,

esto se realizó para garantizar que el flujo llegara con fuerza a la turbina interna, haciendo que
este se accione e inicie el flujo de agua,
luego se realizó el montaje con un microprocesador, donde a partir de la frecuencia que se
obtenía del flujo se logra calcular el flujo total de agua en determinado tiempo
CODIGO DE ARDUINO SENSOR DE CAUDAL

volatile int NumPulsos; //variable para la cantidad de pulsos recibidos


int PinSensor = 2; //Sensor conectado en el pin 2
float factor_conversion=7.11; //para convertir de frecuencia a caudal
float volumen=0;
long dt=0; //variación de tiempo por cada bucle
long t0=0; //millis() del bucle anterior

//---Función que se ejecuta en interrupción---------------


void ContarPulsos ()
{
NumPulsos++; //incrementamos la variable de pulsos
}

//---Función para obtener frecuencia de los pulsos--------


int ObtenerFrecuecia()
{
int frecuencia;
NumPulsos = 0; //Ponemos a 0 el número de pulsos
interrupts(); //Habilitamos las interrupciones
delay(1000); //muestra de 1 segundo
noInterrupts(); //Deshabilitamos las interrupciones
frecuencia=NumPulsos; //Hz(pulsos por segundo)
return frecuencia;
}

void setup()
{

Serial.begin(9600);
pinMode(PinSensor, INPUT);
attachInterrupt(0,ContarPulsos,RISING);//(Interrupción 0(Pin2),función,Flanco de subida)
Serial.println ("Envie 'r' para restablecer el volumen a 0 Litros");
t0=millis();
}

void loop ()
{
if (Serial.available()) {
if(Serial.read()=='r')volumen=0;//restablecemos el volumen si recibimos 'r'
}
float frecuencia=ObtenerFrecuecia(); //obtenemos la frecuencia de los pulsos en Hz
float caudal_L_m=frecuencia/factor_conversion; //calculamos el caudal en L/m
dt=millis()-t0; //calculamos la variación de tiempo
t0=millis();
volumen=volumen+(caudal_L_m/60)*(dt/1000); // volumen(L)=caudal(L/s)*tiempo(s)

//-----Enviamos por el puerto serie---------------


Serial.print ("Caudal: ");
Serial.print (caudal_L_m,3);
Serial.print ("L/min\tVolumen: ");
Serial.print (volumen,3);
Serial.println (" L");
}

Sensor nivel de agua

Código
float valor,resultado;
void setup()
{
Serial.begin(9600);
}

void loop()
{
valor=analogRead(A0); //VARIABLE QUE SE LE ASIGNA EL ADC
resultado=(0.002222188*(valor)-0.301842679); //ECUACION DE LA
RECTA
Serial.println(resultado); //IMPRIMIR EL RESULTADO
}

Al principio con este sensor tuvimos varios problemas ya que no existe alguna fórmula para poder
convertir de voltaje a nivel de agua, lo primero fue saber que este sensor es analógico y no digital
ya que si es digital no serviría para saber la cantidad exacta de agua que hay en un recipiente,
porque solo respondería con ‘1’ y con ‘0’ diciendo que si es ‘1’ hay agua y ‘0’ no hay agua pero no
la cantidad precisa que se desea tener, por lo cual se compró un sensor de nivel análogo al ser
análogo con el software de Arduino se toman los valores del ADC (conversor análogo a digital)
estas medidas o resultados que da el ADC, son voltajes que pueden variar entre 0 y 1023 siendo el
0 el mínimo valor y el 1023 el mayor valor, sabiendo esto el siguiente paso que se realizo fue
tomar diferentes medidas de agua en un recipiente con medidas de mililitros(mL) para poder
saber la relación entre el resultado del ADC y la cantidad de agua en el recipiente, se toman
aproximadamente 9 muestras, al tener las medidas lo que procede es hacer una estimación lineal
en Excel entre el ADC y la cantidad de mililitros, esto dará como resultado una pendiente y un
punto de corte con estos datos lo que se realiza es introducirlos en el código de Arduino y
utilizando la ecuación de la recta (Y=MX+B) donde:
Y: El valor de litros real
M: La pendiente en este caso es 0.002222188
X: El valor del ADC
B: El punto de corte para este caso es -0.301842679
Al reemplazar esta ecuación en el código lo que se conseguirá como resultado es la conversión del
valor del ADC a un valor en Litros el cual es el objetivo del laboratorio ya que se desea saber la
cantidad de agua que se encuentra en un recipiente.

TABLA MUESTRAS TOMADAS:

PENDIENTE Y PUNTO DE CORTE:

GRAFICA MILILITROS VS ADC:

Mililitros VS ADC
4.50E-01
4.00E-01
3.50E-01
3.00E-01
2.50E-01
2.00E-01 mililitros
1.50E-01
1.00E-01
5.00E-02
0.00E+00
0 50 100 150 200 250 300 350
IMÁGENES PRUEBA DE LABORATORIO
Resultados
Una vez realizado el montaje de los sensores de caudal y nivel invasivo, el primer inconveniente
que se presento fue que el sensor de caudal no arrojaba mediciones si el líquido en este caso agua
no iba con cierta presión, se optó por inclinar el sensor y así ya arrojaba mediciones más exactas.
Por otra parte, para el sensor de nivel se toman aproximadamente 9 muestras, al tener las
medidas lo que procede es hacer una estimación lineal en Excel entre el valor arrojado por el
puerto ADC del Arduino y la cantidad de mililitros, esto dará como resultado una pendiente y un
punto de corte con estos datos lo que se realiza es introducirlos en el código de Arduino y
utilizando la ecuación de la recta (Y=MX+B) donde al reemplazar en esta ecuación en el código lo
que se conseguirá como resultado es la conversión del valor del ADC a un valor en Litros.

Se realiza con éxito la unión de ambos sensores y se observa que el valor de medición arrojado por
el sensor de caudal de la cantidad de líquido que ha pasado es el mismo que nos detecta el sensor
de nivel invasivo.
Conclusiones
 En la práctica anterior, se realizó la correspondiente lectura de los DATASHEET de los
sensores utilizados, de igual manera se realizó su respectivo montaje, con su configuración
para la lectura de datos a través del Arduino.
 Se conoció el manejo básico de los sensores de caudal, nivel y se diseñó los circuitos
transductores para cada uno.
 En el sensor de caudal se pudo observar que necesita que el líquido el cual se va a medir
necesita determinada presión para que se puedan obtener datos correctos, por otra parte,
el sensor de nivel invasivo tiene muy poco rango por lo cual se modificó el código de
programación para poder medir con exactitud un nivel alto.
 Se construyo un prototipo en el que se juntarón los dos sensores y se pudo observar el
comportamiento e implementación de estos en la vida cotidiana.