Está en la página 1de 23

UNIVERSIDAD TECNOLÓGICA DE PANAMÁ

FACULTAD DE INGENIERÍA MECÁNICA

LICENCIATURA EN INGENIERÍA DE ENERGÍA Y


AMBIENTE

INSTRUMENTACION Y CONTROL

TAREA #9
SOFTWARE PID SIM

PROFESOR DE TEORIA:
Sánchez, Erick

GRUPO:
1EM131

INTEGRANTES:
Coparropa, Ivan 8-873-2392
Gómez, Alexis 8-964-1543
Dickens, Ariadne 8-957-58
Zuleta, Ana 8-982-927

VERANO 2023

FECHA DE ENTREGA:
SABADO 11 FEBRERO, 2023
Control Local usando el algoritmo de PID
El programa PIDSim es una simulación educativa que demuestra las características
del algoritmo de control PID.

El programa simula una situación de flujo muy simple que consiste en una tubería
de desvío sumergida y dos piscinas separadas por una compuerta. Un flujo de
entrada constante ingresa a la piscina aguas arriba (lado izquierdo de la pantalla) y
un vertedero de desbordamiento fijo controla el caudal que sale de la piscina aguas
abajo. El desvío consiste en un orificio sumergido en la piscina aguas arriba. La
compuerta que separa las dos piscinas puede ser una compuerta de
desbordamiento o una compuerta inferior.

La compuerta se puede operar manualmente o se puede usar un algoritmo PID para


controlar la compuerta. Son posibles tres objetivos de control, el nivel del agua
aguas arriba, el nivel del agua aguas abajo o la descarga del desvío. Los
coeficientes P, I y D se pueden variar para proporcionar al usuario una idea de cómo
cada coeficiente afecta la acción del controlador. Además, se pueden establecer
bandas muertas de nivel de agua y compuerta, se puede introducir ruido en el nivel
de agua y las mediciones de descarga, y se pueden aplicar filtros exponenciales a
las lecturas del sensor. El tamaño de las diversas piscinas, compuertas, vertederos,
etc. se puede ajustar, aunque la simulación no está diseñada para reproducir con
precisión un problema de control del mundo real. La simulación no considera los
efectos de las olas o la dinámica del canal, como el tiempo de viaje requerido para
que un cambio en un extremo de un grupo se propague al otro extremo del grupo.
De hecho, los tamaños de las piscinas se especifican únicamente en términos de la
superficie de la piscina.

Para iniciar esta simulación, ejecute PIDSim.EXE desde Windows. La simulación


comienzara inmediatamente. El panel de visualización inferior muestra un esquema
de elevación del canal. Los dos paneles superiores trazan los niveles de agua, las
posiciones de las compuertas y la descarga de los desvíos en función del tiempo.
Los controles en la pantalla se pueden usar para seleccionar modos de control,
cambiar las constantes de afinación y activar diferentes modos de control u otras
funciones.

La configuración inicial del programa es la siguiente:

Objetivo (Target):

• Upstream Water Level (Nivel de agua aguas arriba): 0.8


• Downstream Water Level (Nivel de agua aguas abajo): 0.4
• Turnout Q (Participación Q): 0.13

Se debe seleccionar la opción SIN CONTROL AUTOMÁTICO (NO AUTOMATIC


CONTROL)
Parámetros de control (Control Parameters):

• Kp, Ki y Kd = 0

Ruido / Filtros / Puntos muertos

• El ruido está deshabilitado


• Los sensores de filtrado están deshabilitados.
• Los puntos muertos están establecidos en 0.

Escalas de tiempo (Time Scales):

• Paso de tiempo de simulación: 5 seg


• Intervalo de control: 5 seg
• Intervalo de tiempo del gráfico: 1000 seg

Hidráulica (Hydraulics)

• Afluencia: 0.5
• Área Piscina1: 1000
• Área Piscina2: 1000

Compuerta entre piscinas 1&2 (Gate between pools 1 & 2):

• Velocidad máxima de movimiento de la compuerta: 0.02 pies/seg


• Ancho de la compuerta: 2 pies

Vertedero bajo la piscina 2:

• Altura: 0.1 pies


• Longitud: 1 pie
En Canal Layout, se debe seleccionar Overshot Gate

Estos ajustes iniciales son algo poco realistas, porque el intervalo de control es de
solo 5 segundos (se calculara una nueva posición para la compuerta cada 5
segundos usando la ecuación PID). Sin embargo, estos ajustes demuestran el
comportamiento del algoritmo PID de forma muy espectacular. Usaremos esta
configuración inicialmente, luego probaremos un intervalo de control más realista de
60 segundos más adelante.
Paso 1:

Comienzamos simplemente moviendo manualmente la compuerta hacia arriba y


hacia abajo. Para ver que la simulación del sistema hidráulico de la compuerta
funcione como espera.

Paso 2:

Activamos el algoritmo de control PID haciendo clic en la opción Nivel de agua


aguas arriba (Upstream Water level) en el área Objetivos de la pantalla.
Paso 3:

Establecemos Kp=1 y dejamos Ki y Kd fijado en cero. Configuramos Kp en


valores mayores. Después de cada cambio, presione el botón Reset Gate to Zero
(resetear puerta a cero) para introducir una perturbación en el sistema.

Tenga en cuenta que después de cada cambio, la posición de la compuerta


aumentará y se estabilizará en un ajuste más alto, pero no se alcanzará el nivel de
agua objetivo (aunque como Kp incrementa se acerca bastante!). Esto se debe al
hecho de que toda la configuración de la compuerta proviene del término de error
Kp*, y si el error alguna vez llega a cero (es decir, hemos alcanzado el nivel de
agua objetivo), entonces la posición de la compuerta sería cero. Obviamente, una
posición de compuerta de cero no producirá el nivel de agua objetivo, por lo que
es imposible alcanzar el objetivo usando solo el término proporcional.

Cambio de Kp de 0 a 1 con una perturbación.

Cambio de Kp de 1 a 2 con una perturbación.

Cambio de Kp de 2 a 3 con una perturbación.


Cambio de Kp de 3 a 5 con una perturbación.

Cambio de Kp de 5 a 10 con 2 perturbaciones.

Paso 4:

Con un valro de Kp alrededor de 110, la compuerta comienza a oscilar


continuamente. Este valor de Kp se llama ganancia última. La ganancia última y el
período de oscilación en esta condición se pueden utilizar en el método de
sintonización de Zeigler-Nichols para obtener una primera estimación de buenos
parámetros de control para un sistema dado. El período de oscilación es de
aproximadamente 20 segundos (podemos determinarlo pausando la simulación y
contando el número de picos en el gráfico de 1000 segundos de la posición de la
puerta).

Kp de 10 a 110 sin ninguna perturbación.


Dentro del lapso de 1000 segundos se contaron 48 picos, realizando la división de
1000/48 da como resultado 20.83 el cual seria el periodo de oscilación.

Paso 5:
Ahora establecemos Kp=0 y KI= 0,01. Este es el modo de control puramente
integral, que alcanzará el valor objetivo, pero también lo sobrepasa. Tenga en
cuenta que el movimiento de la puerta tarda unos 2500 segundos (42 minutos) en
estabilizarse cuando se inicia desde una posición de puerta cero. Esto parece una
respuesta bastante lenta para este pequeño sistema.

Comportamiento durante los primeros 1000 segundos cuando Ki= 0.01

Comportamiento de 1000 a 2000 segundos cuando Ki= 0.01

Comportamiento de 2000 a 3000 segundos cuando Ki= 0.01


Comportamiento continuo durante 3000 segundos cuando Ki= 0.01

Paso 6:

Ahora intentaremos aumentar Ki para obtener una respuesta más rápida.


Restableceremos la posición de la puerta a cero cada vez. Tenga en cuenta que
esta es una operación poco realista, pero hace que el efecto de cambiar Ki más
aparente. Veremos que aumentando KI hace que el sistema alcance inicialmente el
objetivo más rápido, pero el exceso y la oscilación son más severos. Claramente,
esta no es una condición de funcionamiento deseable.

Comportamiento de 0 a 1000 segundos cuando Ki= 1

Comportamiento de 1000 a 2000 segundos cuando Ki= 1

Comportamiento de 2000 a 3000 segundos cuando Ki= 1


Comportamiento de 0 a 1000 segundos cuando Ki= 4

Comportamiento de 1000 a 2000 segundos cuando Ki= 4

Comportamiento de 2000 a 3000 segundos cuando Ki= 4


Pudimos observar que al aumentar el valor de Ki, van a aumentan los picos en el
lapso inicial de 0 a 1000 segundos, esto significa una disminución en el periodo de
oscilación.

Paso 7:

Ahora intente configurar Kp=1 y Ki=0.2. Intenta ajustar Ki y kp para obtener una
respuesta rápida sin oscilaciones indeseables. Este es un controlador PI, que es
esencialmente lo mismo que el controlador P+PR o el controlador de reinicio EL-
FLO plus (excepto que EL-FLO también incluye un elemento de filtro en el sensor
de nivel de agua). ¿Qué pasa si haces Ki o kp ¿demasiado grande?
Comportamiento de 0 a 1000 segundos cuando Kp=1 y Ki=0.2

Comportamiento de 1000 a 2000 segundos cuando Kp=1 y Ki=0.2

Pudimos observar que el sistema se estabiliza mucho más rápido en comparación


al caso anterior cuando se asignaban valores a Ki.

Comportamiento de 0 a 1000 segundos cuando Kp es muy grande.

Pudimos observar que se genera una perturbación mas brusca y corta al igual que
los primeros casos cuando Ki y Kd eran 0.

Comportamiento de 0 a 1000 segundos cuando Ki es muy grande .


Comportamiento de 1000 a 2000 segundos cuando Ki es muy grande.

Comportamiento de 2000 a 3000 segundos cuando Ki es muy grande.

Se podría pensar que se obtiene un comportamiento igual a cuando se obtiene la


ganancia ultima, sin embargo, se puede notar una gran diferencia y es que
también se genera una oscilación constante en el caudal de salida al igual que el
comportamiento oscilatorio de la compuerta.

Ahora probemos algunos ajustes más realistas. Cambie el intervalo de control a 60


segundos

Paso 8:
Establezca todas las constantes de control en cero, luego aumente gradualmente
Kp Encuentre la ganancia última y el período de oscilación.
Comportamiento cuando las constantes son 0 en un intervalo de 60 segundos.

Comportamiento cuando Kp=2 en un intervalo de 60 segundos.

Comportamiento cuando Kp=20 en un intervalo de 60 segundos.

Comportamiento cuando Kp=60 en un intervalo de 60 segundos.

Comportamiento cuando Kp=107 en un intervalo de 60 segundos.

Para todos los valores de Kp de 107 hacia abajo el sistema se estabilizaba pasado
uno o algunos periodos de 60 segundos. Cuando se evaluó 108 para Kp fue el
primer valor que genero un movimiento continuo en sistema por lo cual nunca
llego a linealizarse.

Para 108 eran muy imperceptibles los picos en un intervalo de 60 segundos:

Y para 110 se comportaban linealmente en sus puntos extremos (máximo y mínimo


de cada oscilación)

Se tomo el valor de 109 como la ganancia ultima debido a que fue el primer valor
donde más notable eran los picos en el comportamiento del sistema para un
intervalo de 60 segundos.

Por lo tanto, el periodo de oscilación seria de 10 segundos como resultado de la


división de;

60 𝑠𝑒𝑔
= 10 𝑠𝑒𝑔 𝑥 𝑜𝑠𝑐𝑖𝑙𝑎𝑐𝑖ó𝑛.
6 𝑝𝑖𝑐𝑜𝑠
Puede experimentar más cambiando las características de la piscina y la puerta,
habilitando el ruido, usando los filtros exponenciales para amortiguar el ruido en
las lecturas del sensor, configurando las bandas muertas del nivel del agua y de la
puerta, o probando diferentes modos de control, como el modo derivado (KD).

Se modificaron los valores iniciales del programa.

Resultados obtenidos con los valores seleccionados

Podemos apreciar un gran cambio en el comportamiento del nivel del agua vs


tiempo y un comportamiento mucho mas inestable de la compuerta, además de un
comportamiento inestable en el caudal de salida, el mayor cambio en el
comportamiento del sistema se reflejo al activar el ruido en el sistema.
Método de sintonización Zeigler-Nichols

El método Zeigler-Nichols para sintonizar controladores PID se presenta en la


mayoría de los libros de texto de ingeniería de control. Los pasos básicos necesarios
para implementar el método ZeiglerNichols son los siguientes:

1. Establezca los coeficientes integral y derivado en cero.


2. Aumente gradualmente el coeficiente proporcional desde cero hasta que el
sistema comience a oscilar continuamente. El coeficiente proporcional en
este punto se denomina "ganancia última", Pu. El período de oscilación en
este punto se denomina “período último”, Tu. El último período debe
expresarse en las mismas unidades utilizadas internamente en el algoritmo
PID para los cálculos que involucran el paso de tiempo delta t. (El programa
PIDSim usa segundos).
3. La configuración del controlador sugerida por Zeigler-Nichols es la siguiente:

Rendimie
Control de
# nto Kp Ki Kd
acción
deseado

¼ de
1 P 0.5 𝑃𝑢 = 0.5 𝑥 110 = 55 0 0
caida

𝑃𝑢 110
¼ de 0.54 ( ) = 0.54 ( )
0.45 𝑃𝑢 = 0.45 𝑥 110 𝑇𝑢 20
2 PI 0
caida = 49.5 = 2.97

𝑃𝑢 110
1.2 ( ) = 1.2 ( ) 0.075(𝑃𝑢 ∗ 𝑇𝑢)
¼ de 0.6 𝑃𝑢 = 0.6𝑥110 = 66 𝑇𝑢 20
3 PID = 0.075(110 ∗ 20)
caida = 6.6
= 165
𝑃𝑢 110
0.66 ( ) = 0.66 ( ) 0.11(𝑃𝑢 ∗ 𝑇𝑢)
Algo de 𝑇𝑢 20
4 PID 0.33𝑃𝑢 = 0.33𝑥110 = 36.3 = 0.11(110 ∗ 20)
exceso = 3.63
= 242
𝑃𝑢 110
Sin 0.606 ( ) = 0.606 ( ) 0.10(𝑃𝑢 ∗ 𝑇𝑢)
5 PID sobreimp 0.2𝑥𝑃𝑢 = 0.2𝑥110 = 22 𝑇𝑢 20 = 0.10(110 ∗ 20)
= 3.33
ulso = 220
• Para nuestro primer ejemplo (intervalo de control de 5 segundos) usando el
programa PIDSim, la ganancia final fue Pu=110, y el último período fue Tu=
20. Con estos valores podemos completar la tabla.

Simulación #1

Simulación #2

Simulación #3
Simulación #4

Simulación #5

Pudimso observar un comportamiento inicial igual para todos los casos, todos los
casos llegan a estabilizarse salvo la simulacion #3, se puede notar que la
simulacion #4 tiene algún parentesco con la simulacion #1 por el hecho de que
ambos presentan alguna o algunas oscilaciones posteriores al pico inicial y previo
a la estabilización. Sim embargo, las simulaciones #5 y #2 guardan mucha
similitud posterior al pico inicial, no llegan a completar una siguiente oscilación
completo, sino que posterior a dicho pico llegan a la estabilización, estas
simulaciones llegan a la estabilidad más rápido que las simulaciones #4 y #1.

Pudimos apreciar en las últimas 2 simulaciones ( #4 y #5) la diferencia entre


exceso y la ausencia de sobreimpulso, en donde se puede notar el exceso
manifestándose en las oscilaciones posteriores al pico inicial y la rápido
estabilización en el caso sin sobreimpulso.
• Para nuestro segundo ejemplo (intervalo de control de 60 segundos) usando
el programa PIDSim, la ganancia final fue Pu= 9, y el último período fue Tu=
120. Con estos valores podemos completar la tabla.

Rendimie
Control de
# nto Kp Ki Kd
acción
deseado

¼ de
1 P 0.5 𝑃𝑢 = 0.5 𝑥 9 = 4.5 0 0
caida

𝑃𝑢 9
¼ de 0.54 ( ) = 0.54 ( )
0.45 𝑃𝑢 = 0.45 𝑥 9 𝑇𝑢 120
2 PI 0
caida = 4.05 = 0.0405

𝑃𝑢 9
1.2 ( ) = 1.2 ( ) 0.075(𝑃𝑢 ∗ 𝑇𝑢)
¼ de 0.6 𝑃𝑢 = 0.6𝑥9 = 5.4 𝑇𝑢 120
3 PID = 0.075(9 ∗ 120)
caida = 0.09
= 81
𝑃𝑢 9
0.66 ( ) = 0.66 ( ) 0.11(𝑃𝑢 ∗ 𝑇𝑢)
Algo de 𝑇𝑢 120
4 PID 0.33𝑃𝑢 = 0.33𝑥9 = 3 = 0.11(9 ∗ 120)
exceso = 0.0495
= 108
𝑃𝑢 9
Sin 0.606 ( ) = 0.606 ( ) 0.10(𝑃𝑢 ∗ 𝑇𝑢)
5 PID sobreimp 0.2𝑥𝑃𝑢 = 0.2𝑥9 = 1.8 𝑇𝑢 120 = 0.10(9 ∗ 120)
= 0.04545
ulso = 118.8

Simulación #1
Simulación #2

Simulación #3

Simulación #4

Simulación #5
Para estos valores podemos notar que se presenta un comportamiento distinto al
primer ejercicio, en este no se presentan oscilaciones como tal, sino un
comportamiento escalonado en ascenso y posteriormente en descenso. Para la
simulacion #1 dicho comportamiento escalonado solo se da de forma descendente.
Al igual que el ejercicio anterior, la simulacion #3 es la única que no logra la
estabilización, este caso también presento los mayores valores para la posición de
la compuerta. A diferencia del ejercicio anterior, la diferencia no es tan marcada
entre las simulaciones #4 y #5 se podría decir que la estabilización en la simuacion
#5 tomo muy ligeramente más tiempo que la simulacion #4.

También podría gustarte