Control de Nivel de Líquido PID Con Factory Io - CQC

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 16

UNIVERSIDAD CATÓLICA DE

SANTA MARÍA

FACULTAD DE CIENCIAS E INGENIERÍAS FÍSICAS


Y FORMALES

ESCUELA PROFESIONAL DE INGENIERÍA


MECÁNICA, MECÁNICA ELÉCTRICA Y
MECATRÓNICA

INTERNET DE LAS COSAS

Alumno: Quispe Cusi Carolina Tessy

Docente: Ing. Marcelo Jaime Quispe

Ccachuco

Grupo: “C”

Arequipa – Perú

1
2022

2
Práctica 3: Control de nivel de líquido
PID con factory io.

1. Objetivos
 Conocer la interfaz del software Factory IO.
 Realizar el control PID de nivel de líquido.

2. Práctica

Creación de escena en Factory IO

Para familiarizarnos en el entorno Factory IO. Realizamos la siguiente escena que


consta de un tablero y dos pulsadores.

Figura 1: Tablero eléctrico

Luego instalamos un tanque en donde realizaremos el control de llenado.

Figura 2: Tanque de agua

3
El siguiente paso es seleccionar quien es la entrada y quien la salida en el sistema
para obtener la función de transferencia.

Figura 3: Variables de entrada y salida de nuestro sistema.

Ahora estableceremos el control del líquido del tanque. Esto lo realizaremos con las
variables de entradas y salidas de nuestro sistema.

Esto se refleja en la siguiente ilustración (figura 4). Entonces hay que configurar el
tanque de la misma manera, en donde solo aplicamos control en la válvula superior
del tanque usando nuestro retorno; el cual es el sensor de nivel.

Figura 4: Esquema de nuestro sistema para el análisis de la F. T.

4
Para este sistema tenemos que aplicar un control PID.
Para realizar el control PID, se tiene que establecer un lazo cerrado con el
controlador. Este controlador puede ser un PLC. Para esta interacción, usaremos el
programa FACTORY IO en donde realizaremos el control.

Figura 5: Programa FACTORY IO

Este este sistema vamos a la opción de “CONTROL I/O”. Y generaremos el


siguiente esquema de control PID.

Figura 6: Esquema PID.

5
Ahora hay que hacer una programación de bloques para el control PID.

Primero generamos el control del sistema en FACTORY IO con una constante.

Figura 7: Sistema armado en FACTORY IO.

Primera prueba, ingresando el valor manualmente en la programación.

Figura 8: Programación de bloques ingresando manualmente el SET POINT.

6
Luego realizamos el programa con el potenciómetro de nuestro tablero eléctrico, el
cual hicimos anteriormente (figura 1).
Nuestra programación cambiaria con el nuevo bloque de entrada de nuestro
sistema.
En donde requerimos que en el display de nuestro tablero se muestre el nivel en
“metros”. Ya que nuestra regleta de nuestro tanque va de 0 – 3 metros.

Figura 9: Programación de bloques ingresando con el potenciómetro el SET POINT.

En un experimento de prueba y error. Se puede tantear los valores de nuestro


control PID en donde se consigue una estabilidad del sistema. Manteniendo así el
nivel de agua deseado.

DATOS PID VALORES PID


KP 12
KI 1
KD 0.6

Ponemos un SET POINT de 46 cm. En donde se obtiene los siguientes resultados.


7
Figura 10: Valor mínimo de 45 cm.

Figura 11: Valor máximo de 47 cm.

Logrando así la estabilidad del sistema en el punto deseado

Figura 12: Estabilidad del sistema en los 46 cm.

Podemos observar que el caudal de salida y el de entrada encuentran su punto de


equilibrio en donde el nivel requerido se queda en el SET POINT establecido.

8
Práctica 4: Control de nivel de líquido
con Arduino

1. Objetivos
 Leer el sensor de ultrasonido.
 Accionar de manera directa el servomotor
 Establecer una lógica de control de nivel de líquido usando el sensor ultrasónico, el
servomotor y Arduino.

2. Práctica

Para esto hacerlo interactivo, nos familiarizamos con el entorno “TINKERCAD”.

Primer ejemplo; abrir un ejemplo con potenciómetro para conocer la interfaz.

Figura 13: Arduino con potenciómetro.

9
Segundo ejemplo; control de servomotor.

Un servomotor es un actuador rotativo o motor que permite un control preciso en


términos de posición angular, aceleración y velocidad, capacidades que un motor
normal no tiene. En definitiva, utiliza un motor normal y lo combina con un sensor
para la retroalimentación de posición.

Figura 14: Servomotor.

El servo es un elemento electromecánico que posee un motor eléctrico, un conjunto


de engranajes y una tarjeta de control; todos contenidos en una carcasa que puede
ser de plástico. El motor que contiene un servo se trata de un motor DC o
de corriente continua.
El eje está acoplado a una caja con engranajes parecida a una transmisión. El
objetivo de esta es potenciar el toque del motor y lograr mantener una posición fija
cuando sea necesario. Igual que sucede con los automóviles, mientras menor sea la
velocidad, menor será el torque. El circuito eléctrico se encarga de controlar el
movimiento y posición del motor.

Figura 15: Control de posición por PWM del servomotor.

Esto lo generamos en nuestra herramienta de “TINKERCAD”.


10
Figura 16: Conexión del servomotor al Arduino.

En el primer programa haremos una ida y vuelta del servomotor, el ángulo inicia en
0° y se va aumentando un grado hasta que llegue a 180° y de ahí se va
disminuyendo de 1° en 1° y cuando llega a 0° toda la secuencia se repite.

Figura 17: Programación del servomotor al Arduino.

Tercer ejemplo; lectura del sensor ultrasónico.

11
El sensor HC-SR04 es un sensor de distancia de bajo costo que utiliza ultrasonido
para determinar la distancia de un objeto en un rango de 2 a 450 cm. Destaca por su
pequeño tamaño, bajo consumo energético, buena precisión y excelente precio.

El sensor HC-SR04 posee dos transductores: un emisor y un receptor


piezoeléctricos, además de la electrónica necesaria para su operación. El
funcionamiento del sensor es el siguiente: el emisor piezoeléctrico emite 8 pulsos de
ultrasonido(40KHz) luego de recibir la orden en el pin TRIG, las ondas de sonido
viajan en el aire y rebotan al encontrar un objeto, el sonido de rebote es detectado
por el receptor piezoeléctrico, luego el pin ECHO cambia a Alto (5V) por un tiempo
igual al que demoró la onda desde que fue emitida hasta que fue detectada, el
tiempo del pulso ECO es medido por el micro controlador y así se puede calcular la
distancia al objeto. El funcionamiento del sensor no se ve afectado por la luz solar o
material de color negro (aunque los materiales blandos acústicamente como tela o
lana pueden llegar a ser difíciles de detectar).

La distancia se puede calcular utilizando la siguiente formula:

Distancia (m) = {(Tiempo del pulso ECO) * (Velocidad del sonido=340m/s)}/2

Especificaciones técnicas:

 Voltaje de Operación: 5V DC
 Corriente de reposo: < 2mA
 Corriente de trabajo: 15mA
 Rango de medición: 2cm a 450cm
 Precisión: +- 3mm
 Ángulo de apertura: 15°
 Frecuencia de ultrasonido: 40KHz
 Duración mínima del pulso de disparo TRIG (nivel TTL): 10 μS
 Duración del pulso ECO de salida (nivel TTL): 100-25000 μS
 Dimensiones: 45*20*15 mm
 Tiempo mínimo de espera entre una medida y el inicio de otra 20ms
(recomendable 50ms)

Conexión:

 VCC (+5V DC)


 TRIG (Disparo del ultrasonido)
 ECHO (Recepción del ultrasonido)
 GND (Tierra: 0V)

Figura 18: Sensor ultrasónico.

Esto lo generamos en nuestra herramienta de “TINKERCAD”.

12
Figura 19: Conexión de ultrasonido al Arduino.

Ahora implementamos el código con la conexión y explicación mostrada


anteriormente.

Figura 20: Programación del servomotor al Arduino.

Cuarto ejemplo; control de nivel de líquido.

En esta última parte trataremos de implementar de manera real el control de nivel,


13
que se vio en la tercera práctica de esta guía con FACTORY IO.

Supondremos que el tanque tiene una salida pequeña de agua en la parte inferior, y
que el ingreso se da en la parte superior con una válvula que se encuentra
accionada por un servomotor, ese conjunto se llama servo válvula. La medición de
nivel está en la parte superior con el sensor de ultrasonido y la altura del tanque es
de 100cm. Además, hay que considerar que el ángulo 0° del servo es la válvula
completamente cerrada y 90° es la válvula completamente abierta.

Figura 21: Ejemplo de servo válvula de agua.

Otra cosa importante es fijar el setpoint con un potenciómetro, podemos


considerar que podemos fijar el setpoint desde 0 hasta los 100. Todos esos datos
son importantes para establecer la lógica de control.

Figura 22: Sensor ultrasónico para control de nivel

El siguiente paso es seleccionar quien es la entrada y quien la salida en el sistema


para obtener la función de transferencia.

Esto lo generamos en nuestra herramienta de “TINKERCAD”.


14
Figura 23: Sensor ultrasónico para control de nivel con servomotor.

Ahora implementamos el código con la conexión y explicación mostrada


anteriormente.

Figura 23: Programación del sensor ultrasónico para control de nivel con servomotor.

Conclusiones:

 Realizamos la simulación de una estación real mediante la aplicación Factory


IO, adicional a esto si contamos con los conocimientos obtenidos en el
trabajo, podemos tener una noción real de lo que queremos simular.
15
 La sensación 3D del entorno Factory IO permite reconocer todos los
ambientes.
 Tinkercad es una herramienta con la cual se introduce uno muy bien al mundo
de la electrónica, sobre todo del ensayo en un protoboard muchas veces.
 El curso ayuda a aplicar los conocimientos y prácticas realizadas durante el
desarrollo del curso.

16

También podría gustarte