Está en la página 1de 38

REPORTE DE PRACTICAS

CONTROL DE PROCESOS

ALEJANDRO LIRA DOVALINA 19131212

CARLOS ESTRADA CASA 19131487

ANGEL GABRIEL VAZQUEZ ROJAS 19131274

FELIPE ESTEBAN VEGA REYES 19131275

Docente: Ing. Nazle Herrera


25/04/2023
CONTROL PRECALCULADO

DIAGRAMA DE BLOQUES

¿QUÉ SE PIDE?
Diseñar un controlador precalculado para el caso del calentador de agua, usando el diagrama
de bloques combinando las dos acciones, la acción de realimentación y la acción anticipativa.

CALCULOS CORRESPONDIENTES
Modelo de la Temperatura de salida

Modelo de la temperatura de entrada


Control Anticipativo constante

Control Anticipativo de orden 1

CODIGO MATLAB

A continuación, se muestra el código de Matlab en donde se puede simular el ejemplo,


además está el diagrama de simulink.

%Modelo de la Temperatura de salida


Gu=tf(1.45,[4.5 1]);
%Modelo de la temperatura de entrada
Gq=tf(1,[3.5 1]);
%Control Anticipativo constante
Ca1=tf(-1,1.45);
%Control Anticipativo de orden 1
Ca2=tf(-[4.5 1],1.45*[3.5 1]);
%% Control por Realimentacion
%Control simple PI por cancelación de polos
Ti=4.5; %Coloca el TI igual al tao de la planta
Tr=4.5/3; %Tr es la velocidad que deseo para mi lazo de control, lo escojo 3 veces m
%mas rapido que el lazo abierto

Kc=Ti/(1.45*Tr); %Encuentro Kc
C=tf(Kc*[Ti 1],[Ti 0]); %Control PI

DIAGRAMA SIMULINK
1-Como primer paso agregamos un mux

2-Agregar sumador al área de trabajo.


3. agregar scope y agregar step (que es una señal de entrada).

4. agregar LTI System (este es un bloque de control System toolbox)


5. Modificamos el valor del step
6. Estos son los valores necesarios
7. conectamos los elementos. El escalón o señal Q tendrá un valor de step time: 50 y final value en
0.8. el cual alimentará al modelo del proceso. Ahora será Gq (perturbación) , además se creará una
copia del bloque pero será Ca1. Y el otro que será el modelo de la planta es Gu.

El sumador se conectará a Ca1. Se agregará un nuevo escalón que también se conectará a este. El
escalón se llamará Ur y el primer valor será 1, al igual que final value.
El mux se alargó a 3 para poder conectarlo al escalón.
8. configuramos el SUM
9. Modificamos el state de LTI

10. Modificamos el stop time a 100


11. Resultado final

GRAFICA RESULTANTE

Rojo: Escalón

Azul: respuesta

Amarillo: planta
CONTROL DE RAZON
Programación de Software:
1) El programa comienza con la normalización y escalado del valor analógico
referente al flujo salvaje (pin color azul). El escalado se realiza en un rango
de 0 a 255 ya que estos son los valores sobre los cuales se manejan los
pines del led.

2) A continuación, se añaden las razones con las cuales trabajara el programa,


cuya función es similar a los “setpoints” de un controlador, ya que determinan
la proporción deseada

3) El siguiente paso es obtener el valor para el flujo controlado (pin color verde),
que estará dado por la razón establecida y el flujo salvaje a partir de la
multiplicación de ambos.
4) Por último, el valor obtenido se normaliza y escala, para enviarse a la salida
analógica.

Armado físico:
Las conexiones realizadas se enlistan a continuación:
• Pin color rojo RGB - tierra analógica del PLC (0M)
• Pin tierra RGB - tierra analógica del PLC (0M)
• Pin color verde RGB – resistencia10kΩ - salida analógica 0 del PLC
• Pin color azul RGB - resistencia10kΩ - entrada analógica 0 del PLC – positivo
de la fuente
• Tierra analógica entrada (2M) – negativo de la fuente
De la misma forma se añade una imagen para un mejor entendimiento,
destacando aparte las conexiones propias del PLC (clavija) y las conexiones de la
fuente.
• Ejecución y Resultados:
Se comenzó por alimentar el flujo salvaje con un voltaje de 3.5V, dando un valor
digital para el led de 177

A continuación, se establece una razón de 1.2, forzando la memoria M0.1.

Nota: En este punto cabe destacar que se debe desactivar la memoria ya que en
caso de mantenerse en alto llega a mostrar cierto error en la ejecución, como se
muestra en la imagen.
Se realiza la multiplicación de razón por el valor digital de la entrada analógica, y se
obtiene un valor de 213 para el color verde

Por lo tanto,
usando una
calculadora de
colores RGB y
dando los
valores
obtenidos se puede obtener una idea de los resultados deseados:

El resultado obtenido es el siguiente el cual se puede notar cierta similitud, sobre


todo mientras se refleja en el PLC.
Probando un caso diferente manteniendo la misma proporción, pero variando el
voltaje del flujo salvaje de forma que no llegue al mínimo de encendido, se
obtendrían valores de:

Que al introducir a la calculadora online y comparando con los resultados


obtenidos, se podría decir que efectivamente se obtiene el resultado adecuado.

Por último, se realizaron pruebas con una razón menor a la de la entrada, dada por
0.8
Se utiliza una vez más la calculadora de colores RGB y se tiene una propuesta de:

Como resultado se obtuvo:


El cual, se puede apreciar la predominancia azul y un poco de verde como era de
esperarse debido a la razón dada.

CONTROL MULTIVARIABLE
Lo primero que se debe hacer es dibujar el diagrama de bloques de circuito abierto general para
este sistema (Partiendo del diagrama de bloques que se mostró anteriormente, sin control y sin
desacoplador):
2.- Una vez obtenido el diagrama de bloques, se dispone a realizar una simplificación en el
esquema para un mejor análisis.

3.- A continuación, se estiman las funciones de transferencia para cada controlador tanto del nivel
como de la fracción de masa. [Empleando el método 3 del capítulo 6: Diseño de sistemas de
control por retroalimentación, en el libro Control automático de procesos de Carlos Smith].
Controlador 1

0.072𝑒−0.3𝑠 𝑚
𝐺𝑃𝐿1(𝑠) = ,
2.7𝑠 + 1 % 𝑑𝑒 𝑠𝑎𝑙𝑖𝑑𝑎 𝑑𝑒𝑙 𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑑𝑜𝑟 1
−0.00336𝑒−0.15𝑠 𝑓𝑟𝑎𝑐𝑐𝑖ó𝑛 𝑑𝑒 𝑚𝑎𝑠𝑎
𝐺𝑃𝑥1(𝑠) = ,
1.05𝑠 + 1 % 𝑑𝑒 𝑠𝑎𝑙𝑖𝑑𝑎 𝑑𝑒𝑙 𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑑𝑜𝑟 1
Controlador 2

0.036𝑒−0.03𝑠 𝑚
𝐺𝑃𝐿2(𝑠) = ,
2.97𝑠 + 1 % 𝑑𝑒 𝑠𝑎𝑙𝑖𝑑𝑎 𝑑𝑒𝑙 𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑑𝑜𝑟 1
−0.00144𝑒−0.4𝑠 𝑓𝑟𝑎𝑐𝑐𝑖ó𝑛 𝑑𝑒 𝑚𝑎𝑠𝑎
𝐺𝑃𝑥1(𝑠) = ,
1.65𝑠 + 1 % 𝑑𝑒 𝑠𝑎𝑙𝑖𝑑𝑎 𝑑𝑒𝑙 𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑑𝑜𝑟 1

Selección de pares de variables controladas y manipuladas


Para empezar, tiene sentido que cada variable controlada se controle mediante la variable
manipulada que ejerce mayor “influencia” sobre aquélla. En este contexto, la influencia y la
ganancia tienen el mismo significado y, en consecuencia, para tomar una decisión se deben
encontrar todas las ganancias del proceso (4 ganancias para un sistema 2 X 2). Específicamente,
las ganancias de estado estacionario de circuito abierto de interés son las siguientes:
Δ𝐶1 Δ𝐶1
𝐾11 = | 𝐾12 = |
Δ𝑚1 𝑚2 Δ𝑚2 𝑚1

Δ𝐶2 Δ𝐶2
𝐾21 = | 𝐾22 = | Δ𝑚1 𝑚2 Δ𝑚2 𝑚1

Donde 𝐾𝑖𝑗 es la ganancia que relaciona la variable controlada 𝑖 con la variable manipulada 𝑗.

Las cuatro ganancias se pueden ordenar en forma de matriz, a fin de tener una descripción gráfica
de su relación con las variables controlada y manipulada. La matriz se conoce como matriz de
ganancia de estado estacionario (MGEE) (SSGM por sus siglas en inglés), como se muestra a
continuación

Con base en esta MGEE, parecería que debiera elegirse la combinación de variable

controlada y manipulada con que se obtiene el valor absoluto más grande en cada línea; es decir,
si |𝐾12| es mayor que |𝐾11|,entonces se debe elegir 𝑚2 para controlar a 𝐶1; sin embargo, esta
manera de elegir el par de variable controlada y manipulada no es completamente correcta, ya
que las ganancias 𝐾𝑖𝑗 pueden tener diferentes unidades y, consecuentemente, no es posible hacer
la comparación. Como se ve, la matriz depende de las unidades y, por lo tanto, no es útil para este
propósito.

Para normalizar la MGEE y hacerla independiente de las unidades, se propone una técnica que
desarrolló Bristol, cuyos resultados probaron ser buenos; dicha técnica se denomina ganancia
relativa de la matriz (GRM) o medida de interacción.

δ 𝐶1 | Δ 𝐶1 |

𝜇11 = δδδ𝑚𝑚𝐶11 |𝑚2 ≈ ΔΔΔ𝑚𝑚𝐶111|𝑚𝑐22 = 𝐾𝐾𝑖𝑗𝑖𝑗′

1 𝑐2 O

en general:

δ𝐶𝑖 |
𝜇11 = δ

δ𝑚𝐶𝑗𝑖 |𝑚

δ𝑚𝑗 𝑐

A continuación, se analizan estos elementos. El numerador:

δ𝐶𝑖
| δ𝑚𝑗
𝑚

Es la ganancia de estado estacionario, 𝐾𝑖𝑗, que se definió anteriormente, es decir, es la ganancia de


𝑚𝑗 sobre 𝑐𝑖 cuando todas las demás variables manipuladas se mantienen constantes. El
denominador

δ𝐶𝑖
| δ𝑚𝑗
𝑐

Es otro tipo de ganancias 𝐾𝑖𝑗′ , ésta es la ganancia de 𝑚𝑗 sobre 𝑐𝑖 cuando se cierran todos los
demás circuitos, y se supone que los demás controladores tienen acción integral; por tanto, todas
las demás variables controladas se regresan a su punto de control. En consecuencia, se puede
escribir:

𝑔𝑎𝑛𝑎𝑐𝑖𝑎 𝑐𝑢𝑎𝑛𝑑𝑜 𝑠𝑒 𝑎𝑏𝑟𝑒𝑛 𝑙𝑜𝑠 𝑑𝑒𝑚á𝑠 𝑐𝑖𝑟𝑐𝑢𝑖𝑡𝑜𝑠 𝐾𝑖𝑗


𝜇𝑖𝑗 = 𝑔𝑎𝑛𝑎𝑛𝑐𝑖𝑎 𝑐𝑢𝑎𝑛𝑑𝑜 𝑠𝑒 𝑐𝑖𝑒𝑟𝑟𝑎𝑚 𝑙𝑜𝑠 𝑑𝑒𝑚á𝑠 𝑐𝑖𝑟𝑐𝑢𝑖𝑡𝑜𝑠 = 𝐾𝑖𝑗′
Como se aprecia en esta definición, el término de ganancia relativa es una cantidad sin
dimensiones, la cual se puede utilizar para decidir la agrupación por pares de las variables
controlada y manipulada.

Ya que para poder realizar este cálculo es necesario evaluar por computadora, se empleará otro
método para poder relacionar las ganancias MGEE y poder obtener la GRM, que se muestra a
continuación:

Ahora, con esta información se puede decidir sobre la agrupación por pares correcta y el diseño
de los sistemas de desacoplamiento. La matriz de ganancia de estado estacionario es la siguiente:
Se aplican las ecuaciones correspondientes para obtener la matriz de ganancia relativa:

De lo que resulta la agrupación por pares: 𝐿 − 𝑚2 𝑦 𝑥 − 𝑚1.

Desacoplamiento
Procedimiento que busca construir un sistema de control en el que se desea reducir o eliminar la
relación entre los circuitos que interactúan.

Para ello, se diseña el desacoplador 𝐷12(𝑠) de manera que, cuando la salida del segundo
controlador cambie, la primera variable controlada permanezca constante. De manera similar,
𝐷21(𝑠) se puede diseñar de modo que cuando los valores del controlador 1 cambien, la segunda
variable permanezca constante.

𝐷𝑥2(𝑠) = 𝐺𝐺 𝑃𝑃1211((𝑠𝑠))

𝐺𝑃21(𝑠)
𝐷𝐿1(𝑠) = 𝐺 (𝑠)
𝑃22

Para desarrollar el desacoplador, se realiza el diagrama de bloques adecuado para no perderse en


el orden de los valores en la ecuación:
Entonces se tiene:
𝐷𝑥2(𝑠) = 𝐺 𝑃𝑥𝑃𝑥21((𝑠𝑠)) = − (00..0014400336)
(11 ..0565𝑠𝑠 ++ 11) 𝑒−0.25𝑠 𝐺

𝐷𝐿1(𝑠) = 𝐺𝐺 𝑃𝐿1((𝑠𝑠)) = − (0 0.0072.036 )


(22.97.7𝑠𝑠++11) 𝑒−0.27𝑠3
𝑃𝐿2

Finalmente, al haber obtenido los valores, se implementa el desacoplamiento en el sistema para


un proceso de 2 x 2.

A continuación se realizará la simulación con ayuda de simulink, construyendo el esquema del


diagrama de bloques ya con las funciones de transferencia, pero se evaluarán tres casos distintos.
Debido a que se busca controlar el nivel del tanque así como la fracción de masa de NaOH, al
accionar las válvulas que controlan el caudal de entrada y el producto obtenemos el primero de
los casos:

1.- Se muestra el sistema en donde no se aplica un controlador al sistema, por lo cual obtenemos
la siguiente respuesta a la salida del diagrama.
Podemos observar a continuación la gráfica del nivel del tanque; de acuerdo con las
especificaciones establece que el nivel del tanque se debe mantener entre 1 y 5 m, por lo que el
nivel debería estabilizarse en ese rango.

Al no cumplir con lo esperado, es por ello que se debe incluir un controlador.

En la segunda gráfica podemos observar el comportamiento que tiene la concentración de masa


en la sosa caustica (NaOH), quien, de acuerdo con las especificaciones, debe mantener una
proporción de entre 0.2 y 0.5 fracciones de masa.
Como vemos, el sistema tiende a desestabilizar la respuesta, interpretando este resultado
podemos observar que en ningún momento mantiene la proporción deseada, ya que no está ni
cerca del rango requerido.

2.- Ahora en el siguiente paso, aplicaremos un control PID. Los parámetros de las ganancias para el
primer controlador se implementan con un bloque ya incluido en simulink y se muestran a
continuación.

Siendo el de la izquierda el primer controlador y el de la derecha el segundo, quedando el


diagrama como se muestra a continuación.
Analizando la gráfica del nivel del tanque

Podemos observar que pasados 60 seg, alcanza el mínimo del nivel establecido, el cual es 1 m, por
lo que podemos afirmar que una de las variables cumple con las especificaciones.

Al ver la gráfica de la fracción de masa podemos observar lo siguiente:


De la misma forma que en primer caso, observamos que la concentración no mantiene la
proporción especificada, sino que se aleja bastante de la respuesta esperada.

3.- Como se mencionó en la exposición, esto es debido a que existe una interacción mutua entre
las variables controladas, para poder disminuir e incluso eliminar esta interacción se emplean los
desacopladores en conjunto con el controlador, quedando el diagrama de bloques de la siguiente
forma.

Donde la parte seleccionada en rojo, es el equivalente a los dos desacopladores (uno por cada
controlador respecto a la variable). Y a continuación realizamos la simulación para ver su
comportamiento.

Podemos ver que cambia a un sistema subamortiguado, teniendo un ligero sobreimpulso en el


nivel del tanque, pero finalmente pasado unos segundos, el nivel se estabiliza en el mínimo
permitido, cumpliendo así con las especificaciones deseadas.

Ahora revisando la segunda variable manipulada


Podemos observar que tarda unos segundos en alcanzar la fracción de masa deseada pero que al
cabo de un tiempo, alcanza a estabilizarse en el rango deseado, afirmando de ese modo que el
sistema cumple con ambas especificaciones indicando que el control del sistema multivariable
funciona adecuadamente.

Sin embargo hay que establecer unos puntos importantes que dejaremos aquí a manera de
observación.

1. Para poder obtener las funciones de transferencia de la planta de un sistema de control


multivariable es necesario implementar una serie de procedimientos que de acuerdo con
el autor del libro Control Automático de Procesos de Carlos Smith, en el capítulo 3
menciona que, para obtener los cálculos, es necesario simular un comportamiento
esperado a partir de datos reales obtenidos a partir de un proceso real, de este modo, al
comparar ambos comportamientos, se obtienen las ganancias 𝐾𝑖𝑗 que se emplean para
poder diseñar los desacopladores.
2. El valor de las ganancias de los controladores PID son propuestos específicamente para este
problema, ya que es probable que no sean de utilidad para otro tipo de problemas o
sistemas.
3. Si se desea evaluar o modificar el comportamiento de nuestro sistema, por ejemplo que el
nivel del tanque se estabilice en 3 m y la fracción de masa en 0.4 es necesario modificar
todos los parámetros, desde las funciones de transferencia de la planta, los valores de las
ganancias del controlador así como el diseño de los desacopladores; sin embargo al no
contar con los medios para poder obtener las ganancias mencionadas en la Nota 1, esta
parte de prueba queda inconcluso, pero para fines didácticos y a manera de resultado, el
controlador cumple con su objetivo.
CONTROL DE SOBREPOSICION
1. Abrimos el software de programación Matlab, seleccionamos el complemento Simulink y
creamos un nuevo modelo en blanco.

2. Abrimos la librería y colocamos los componentes necesarios para recrear el diagrama de


bloques que se muestra a continuación. El nombre de los componentes se muestra debajo del
mismo, en caso de no encontrar algún componente utilice la herramienta de búsqueda.
Nota: Los bloques “In1”, “In2” e “In3” son simbólicos, es decir, no es necesario colocarlos.

Componentes del diagrama de bloques para sobreposición

3. Configuramos el switch de la siguiente manera.

Configuración del switch


4. Hacemos doble clic en el bloque MATLAB Function para ingresar la programación interna
del bloque de sobreposición. El código a ingresar se muestra en la siguiente imagen.
Código para bloque MATLAB Function

5. Recordando la estructura general de un controlador por sobreposición, acoplamos los dos lazos
de control individual (anexados en la primera parte de este documento) para generar la
sobreposición de los controladores de nivel y flujo.

6. Primeramente, agregamos dos bloques Transfer Fcn para añadir la función de transferencia de
la bomba y de la planta al diagrama de bloques como se muestra a continuación.

7. Para completar los dos lazos de control e implementarlos en un solo control, agregamos dos
escalones mediante el bloque Step, dos Sum, dos bloques de control PID (modificando uno de
ellos podemos convertirlo en PI) y dos bloques Gain para los datos pre-calculados.
8. Configuramos los componentes correspondientes al lazo de nivel como se muestra. Es de suma
importancia ingresar correctamente los datos. Nota: escribir “-+|” en el Sum.
9. Configuramos los componentes correspondientes al lazo de flujo como se muestra. Es de suma
importancia ingresar correctamente los datos. Nota: escribir “|+-” en el Sum.

10. Ahora que todos los bloques están configurados adecuadamente, realizamos las siguientes
conexiones.
11. Con la finalidad de simplificar y visualizar mejor la distribución del diagrama de bloques para el
control por sobreposición, encerramos los bloques del algoritmo de sobreposición y damos clic
en la opción Create Subsystem.

Creación de subsistema

Diagrama de bloques para control de sobreposición

12. Finalmente, añadimos los Scope que se muestran a continuación para poder monitorear
el funcionamiento de la práctica.
CONTROL SELECTIVO
El siguiente circuito, es la planta que se utilizó para la siguiente
práctica, los actuadores dependientes de una selección dada por
las medidas efectuadas por el sensor son las salidas 0 a 4 digitales
del plc, siendo esta ultima un dispositivo de audio.

Se realizan las conexiones según correspondan con el siguiente


diagrama, cuidando las conexiones comunes (GND) y las
alimentaciones. Observe que, la salida del plc Siemens s71200 es
de 24v, y la fuente utilizada para el circuito tanto como para la
alimentación del módulo de las salidas digitales del plc es una
fuente externa de 5vcc.

Nota: el sensor de humedad de suelo arroja resultados inversamente proporcionales


al valor medido, es decir a mayor voltaje menor humedad, o menor cantidad de
datos, mayor humedad, también tiene configuración para usarse de manera digital,
en este caso, esa salida va aislada, solo se conecta la salida análoga que es la
relevante.
Programación:
Lo siguiente por realizar, es la programación, cabe decir que, esta es dependiente de los
sensores y actuaadores que se tengan en la planta, la siguiente programación en lenguaje
Lader o Escalera (plc) es para la planta mostrada anteriormente.
La parte de la programación es importante, ya que aquí se le asignan las funciones a cada
una de las salidas y entradas del plc, se le programa y configura para que funcionen de la
manera en que se desea.

Segmento 1: En el primer segmento, se tienen los bloques de NORM_X y SCALE_X, siendo


estos para normalizar una variable (entrada, valor numérico, etc.) y escalarla para tomar
en cuenta las medidas adecuadas de los valores, de dicha variable normalizada. Este
procedimiento se utiliza para medir y tomar lectura de variables de entrada análogas, en
este caso, humedad.

Segmento 2: En esta parte del diagrama Ladder, se establecen los rangos o limites sobre
los que se necesita actuar, es decir, los bloques de comparación, sirven para establecer las
condiciones a una salida o actuador dependiendo de lo que se este comparando. Se puede
apreciar que, los comparadores permiten un rango de entre 0 y 3.5 unidades del valor
medido y escalado, y la condición es la activación de la salida .0 del plc, es decir, Si
humedad entre 0 y 3.5, entonces salida Q0.0 activa.

Segmento 3: Se asigna una segunda condición que al igual que en la anterior, activando
una salida cuando se cumple con dicha condición, es decir, si (3.6<humedad medida<8.0)
entonces Q0.1 ON
Segmento 4: Se repite lo mismo para establecer una tercer condición, cuando este sea
mayor que 8, se encienden la tercera y cuarta salida, siendo esta ultima la
correspondiente al dispositivo de audio

Así, se controla el nivel de humedad deseado en la planta con estos comparadores, el


control selectivo se encarga, de seleccionar el actuador indicado dependiendo de la
condición de la planta, es un control funcional regulador de una variable.
De esta manera, se concluye la practica de un sistema de control selectivo para el
funcionamiento optimo de una planta, siendo este un control sencillo, automático y
excelentemente funcional dependiendo de los rangos que se le establezcan, siempre
tratara de asegurar la salida deseada mediante el valor de setpoint deseado.

También podría gustarte