Está en la página 1de 83

n◦ : 2006–no tiene

Proyecto de Grado

Presentado ante la ilustre Universidad de Los Andes como requisito parcial para
obtener el Tı́tulo de Ingeniero de Sistemas

Control de los hornos de retención en el área


de colada en CVG Venalum: una propuesta

Por

Br. Ricci Mayerling Dorta Rodriguez

Tutor: Prof. Richard Márquez


Cotutor: Prof. Francklin Rivas

Septiembre 2006

2006
c Universidad de Los Andes Mérida, Venezuela
Control de los hornos de retención en el área de colada en
CVG Venalum: una propuesta

Br. Ricci Mayerling Dorta Rodriguez

Proyecto de Grado — Control y Automatización, 71 páginas

Resumen: se estudia el sistema de control de los hornos de retención del área de


colada de la empresa CVG Venalum. Se analiza el sistema de control actual y se
realizan dos propuestas para mejorar su efectividad. La primera propuesta, basada en
la configuración actual que usa el control proporcional, consiste en disminuir el valor de
la ganancia del controlador. A partir del modelo identificado en lazo cerrado, se realiza
un análisis del lugar de las raı́ces el cual justifica tal propuesta. Esta propuesta ya
fue implementada y evaluada (Febrero 2006) con resultados satisfactorios. La segunda
propuesta consiste en una identificación en lı́nea, mediante el algoritmo de mı́nimos
cuadrados recursivo, que permite hacer un recálculo de los parámetros de control en
tiempo real. Se realizó el diseño previo necesario para implementar tal propuesta
(se muestran algunas pruebas realziadas mediante simulaciones numéricas). En este
momento, esta segunda propuesta está en planes de implementación en la empresa.

Palabras clave: hornos de retención, modelado, controladores PID, identificación en


lı́nea, producción de aluminio
Este trabajo fue procesado en LATEX.
El Proyecto de Grado titulado “Control de los hornos de retención en el área de colada en
CVG Venalum: una propuesta”, realizado por Br. Ricci Mayerling Dorta Rodriguez, C.I.
N◦ 16.163.391, fue presentado el dı́a (fecha): 28 de Septiembre de 2006, en (lugar): Salón de reuniones
EISULA, ante el Jurado evaluador conformado por:

Tutor: Prof. Richard Márquez

Cotutor: Prof. Francklin Rivas

Jurado: Dr. Miguel Rı́os

Jurado: Dr. Pablo Lischinsky

Este proyecto no tiene mención especial.


A mi Dios todopoderoso que no me abandona.
A uno de los seres más importantes de mi vida,
mi tı́o Domingo Dorta
por darme tanto amor y apoyo,
por la confianza y la fuerza que me ha
inspirado para querer ser alguien en la vida.
A mis padres Elicio e Iraima
por querer siempre darnos lo mejor,
en especial a mi madre
por no descuidar nunca ningún detalle.
A mis hermanos, Darwin, Vero y Roberto;
que me han hecho vivir muchos sentimientos
y que cada dı́a quiero más.
A mi sobrina - ahijada
por ser una linda lucecita
que alumbró nuestra existencia.
A mi vieja Morabia por ser amiga,
madre y sobretodo apoyo.
Índice

Índice de Tablas vii

Índice de Figuras viii

Agradecimientos xi

1 Introducción 1
1.1 Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.1 Caracterı́sticas de los hornos de retención en CVG Venalum . . 4
1.1.2 Estrategia de control de temperatura en los hornos de retención 12
1.2 Situación problemática . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.1 Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.2 Objetivos especı́ficos . . . . . . . . . . . . . . . . . . . . . . . . 15

2 Conceptos básicos de identificación 16


2.1 Tipos de identificación . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2 Identificación en lı́nea . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3 Algoritmo de mı́nimos cuadrados recursivo . . . . . . . . . . . . . . . . 19

3 Control PID 22
3.1 Algoritmo PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Bloque PID FB41 CONT C en los PLCs Siemens S7-300. . . . . . . . . . 24
3.3 Control mediante identificación en lı́nea . . . . . . . . . . . . . . . . . . 26
3.4 Herramienta de comunicación OPC . . . . . . . . . . . . . . . . . . . . 26

v
3.4.1 Servidor OPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.2 Cliente OPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4 Modelado del horno 8 31


4.1 Identificación del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2 Estimación y validación del modelo . . . . . . . . . . . . . . . . . . . . 35

5 Control proporcional 40
5.1 Análisis del sistema a partir del modelo obtenido . . . . . . . . . . . . 40
5.2 Entonación del control proporcional . . . . . . . . . . . . . . . . . . . . 41
5.3 Implementación con disminución de la ganancia . . . . . . . . . . . . . 42

6 Control mediante identificación en lı́nea 47


6.1 Identificación en lı́nea . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.2 Algoritmo PD por asignación de polos deseados . . . . . . . . . . . . . 48
6.3 Resultados obtenidos mediante simulación usando el algoritmo PD por
asignación de polos deseados . . . . . . . . . . . . . . . . . . . . . . . . 51

7 Propuesta para la implementación 58

8 Conclusiones 63

Bibliografı́a 64

A Programa de identificación 66

B Programa de control 69
Índice de Tablas

1.1 Capacidades de los hornos de retención. . . . . . . . . . . . . . . . . . . 5


1.2 Caracterı́sticas de los hornos de retención del 1 al 6. . . . . . . . . . . . 6
1.3 Caracterı́sticas de los hornos de retención del 7 al 12. . . . . . . . . . . 6
1.4 Componentes del sistema de control S7-300. . . . . . . . . . . . . . . . 8
1.5 Temperaturas para preparación y colada de metal puro. . . . . . . . . . 12
1.6 Temperaturas para preparación y colada de metal aleado. . . . . . . . . 13

2.1 Algunos ejemplos de la relación existente entre el objetivo final


del modelo (aplicación) y las especificaciones del proceso de
identificación (tomado de Iserman 1980). . . . . . . . . . . . . . . . . . 20

vii
Índice de Figuras

1.1 Proceso productivo de aluminio en CVG Venalum. . . . . . . . . . . . . 3


1.2 Distribución de los hornos de retención de acuerdo al proceso productivo
que realizan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Válvulas Maxon y de Venteo ubicadas en la tuberı́a principal de gas del
horno de retención. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Distribución de los componentes en los racks del S7-300. . . . . . . . . 9
1.5 Termocupla de baño o termopozo. . . . . . . . . . . . . . . . . . . . . . 9
1.6 Esquema del damper de aire y su conexión con la salida de gas. . . . . 10
1.7 Pantalla del sistema de supervisión donde se presenta el estado general
del horno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.8 Funcionamiento del bloque de control actual en los hornos de retención. 14

2.1 Diagrama de bloques del sistema en lazo cerrado. . . . . . . . . . . . . 18


2.2 Formas para el procesado de los métodos de identificación. . . . . . . . 19

3.1 Esquema de bloques de CONT C. . . . . . . . . . . . . . . . . . . . . . 25


3.2 Funciones OPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.1 Datos del sistema en lazo abierto. . . . . . . . . . . . . . . . . . . . . . 32


4.2 Selección de los datos para estimar el modelo de la temperatura en el
horno 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.3 Datos usados para la identificación en el horno 8 (Método Indirecto). . 33
4.4 Caracterı́sticas de la respuesta temporal. . . . . . . . . . . . . . . . . . 35
4.5 Diagrama de bloques en Simulink
r para la validación del modelo en
lazo cerrado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

viii
4.6 Comparación de respuestas para la validación (segmento de datos de
identificación.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.7 Diagrama de bloques en Simulink
r para la validación del modelo en
lazo abierto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.8 Comparación de respuestas para la validación (todos los datos). . . . . 38
4.9 Set de datos usado para la identificación y la validación (Detalle de la
Figura 4.8). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.10 Set de datos para validación, con desfasaje debido a que los datos reales
presentan saturación en el damper para el cambio de set point (Detalle
de la Figura 4.8). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.11 Comparación del control para el modelo vs el control para datos reales. 39

5.1 Lugar de las raı́ces del modelo obtenido. . . . . . . . . . . . . . . . . . 40


5.2 Respuesta al escalón del modelo obtenido. . . . . . . . . . . . . . . . . 41
5.3 Respuesta del modelo a la entrada escalón con un control proporcional
K = 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.4 Comparación del modelo para K = 5 vs los datos reales (K = 10, 5). . . 43
5.5 Respuesta del modelo a la entrada escalón con un control proporcional
K = 1, 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.6 Comparación del modelo para K = 1, 5 vs los datos reales (K = 10, 5). 45
5.7 Comparación de las respuestas para K = 10, 5 y K = 7. . . . . . . . . . 46

6.1 Esquema de control mediante identificación en lı́nea. . . . . . . . . . . 47


6.2 Primer conjunto de datos usado para la identificación en lı́nea. . . . . . 51
6.3 Respuesta del sistema con el control calculado a partir del modelo de la
Ecuación (6.4). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.4 Segundo conjunto de datos usado para la identificación en lı́nea. . . . . 53
6.5 Tercer conjunto de datos usado para la identificación en lı́nea. . . . . . 53
6.6 Cuarto conjunto de datos usado para la identificación en lı́nea. . . . . . 54
6.7 Quinto conjunto de datos usado para la identificación en lı́nea . . . . . 55
6.8 Respuesta del sistema con el control calculado a partir del modelo de la
Ecuación (6.9). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.9 Sexto conjunto de datos usado para la identificación en lı́nea. . . . . . . 57

7.1 Principio de montaje para leer los datos del control y mostrarlos en
MATLAB.
r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.2 Configuración de la interfase de acceso Industrial Ethernet. . . . . . . . 60
7.3 Configuración Hardware de la CP343-1 TCP. . . . . . . . . . . . . . . . 61
7.4 Configuración en el SIMATIC NET OPC Server. . . . . . . . . . . . . . 62
Agradecimientos

Mi gratitud en primer lugar a Dios, el creador, quien nos pone pruebas en la vida para
hacernos más grandes en cada levantada y nos da la libertad de acertar o equivocarnos.
Han sido muy valiosas las aportaciones de los Ingenieros Luis Reyes y Sonia
Serrano, y del Lic. Miguel Martı́nez; les agradezco además por su calidad humana y
por su incondicional apoyo en la realización de este proyecto.
No puedo dejar de agradecer a todo el personal de CVG Venalum que, de alguna
manera, colaboró en el desarrollo de este trabajo.
Le agradezco con toda mi alma a mis padres y a mi tı́o, por ser los pilares
fundamentales en mi vida; y al resto de mi familia por el simple hecho de existir.
Especial gratitud a Morabia por ayudarme siempre en todo lo que estaba a su
alcance y por saber compartir tanto las ilusiones como los malos momentos que me ha
tocado pasar.
Le agradezco mucho a la Tı́a Ziomara por ser una madre cuando estuve lejos y
a Maru por ser mi amiga y estar siempre ahı́.
Deseo destacar a la ilustre Universidad de los Andes y a mis profesores, en
especial a mis tutores Richard Márquez y Francklin Rivas, por demostrarme que puedo
lograr lo que quiera en la vida y que el esfuerzo siempre tiene recompensa.
A todos los que no nombré y que también participaron de este proyecto:
GRACIAS. . . De todo corazón!!!

xi
Capı́tulo 1

Introducción

El Aluminio (Al) es uno de los elementos más abundantes de la corteza terrestre de la


cual forma más del 7%, es el tercer metal más abundante en la superficie de la tierra,
sin embargo, fue descubierto a principios del siglo XIX. Tiene como principal ventaja
su ligereza, pues pesa casi tres veces menos que el acero ordinario. La materia prima
para la producción de aluminio (Aluminio 2005) es la bauxita que proviene del sur de
nuestro paı́s.
El aluminio es un metal sin igual por sus caracterı́sticas: es liviano, fuerte y
de larga duración, no tóxico, resistente a la corrosión, excelente conductor de calor y
electricidad, no magnetizable, de fácil manejo, excelente reflector de la luz y reciclable.
La producción de aluminio consiste de 3 pasos: extracción de bauxita,
producción de alúmina y electrólisis de aluminio.
La bauxita está compuesta principalmente por uno o más componentes de
hidróxido de aluminio, además de sı́lice, hierro y óxido de titanio como las principales
impurezas.
La bauxita es extraı́da, principalmente, por métodos de mina abierta, los cuales
tienen un impacto en el ambiente. Los principales aspectos ecológicos a considerar
están relacionados con la limpieza del suelo, impacto en la flora y fauna local y la
erosión del suelo.
La bauxita tiene que ser convertida en óxido de aluminio puro (alúmina) antes de
que pueda ser transformada en aluminio por medio de la electrólisis. Esto es realizado
1 Introducción 2

a través del proceso quı́mico Bayer en las refinerı́as de alúmina. El óxido de aluminio es
separado de las otras sustancias de la bauxita mediante una solución de soda cáustica.
La mezcla obtenida es filtrada para remover todas las partı́culas insolubles. Después
de esto, el hidróxido de aluminio es precipitado de la solución de soda, lavado y secado,
mientras que la solución de soda es reciclada. Después de la calcinación, el producto
final, óxido de aluminio (Al2 O3 ), es un fino polvo blanco. El aluminio primario es
producido en plantas de reducción.
Cuatro toneladas de bauxita son requeridas para producir dos toneladas de
alúmina, las cuales producirán una tonelada de aluminio en una reductora.
CVG VENALUM se constituye con el objetivo fundamental de producir
aluminio en diversas formas, para fines de exportación. Para esto cuenta con tres
áreas básicas: Carbón, Reducción y Colada.
El área de Reducción es donde el aluminio puro es extraı́do de la alúmina por
medio del proceso Hall-Heroult. El proceso de reducción de alúmina en aluminio lı́quido
es realizado a una temperatura promedio de 950 grados Celsius en un baño fluorinado y
bajo una alta intensidad de corriente. Este proceso es realizado en celdas electrolı́ticas,
donde los cátodos de carbón forman el fondo de la celda y actúan como electrodo
negativo, los ánodos (electrodos positivos) son mantenidos en el tope y son consumidos
durante el proceso cuando reaccionan con el oxı́geno proveniente del electrolito.
Todas las lı́neas de celda construidas desde principios de 1970 usan la tecnologı́a
de ánodo precocido, donde los ánodos manufacturados de una mezcla de coque de
petróleo y alquitrán son pre-cocidos en una planta de ánodos (Área de Carbon en
CVG Venalum). En la tecnologı́a Soederberg, la pasta de carbón es alimentada
directamente en el tope de la celda y los ánodos son producidos utilizando el calor
liberado por el proceso de reducción.
El aluminio trasegado de las celdas a intervalos regulares, es transportado a
la sala de colada, donde las aleaciones de aluminio son preparadas de acuerdo a los
requerimientos del cliente. El aluminio lı́quido obtenido en la sala de celdas, 99,8 %
puro, es transferido en crisoles a la sala de Colada y vertido en hornos de retención,
donde metales como titanio, magnesio, hierro y cobre son añadidos para preparar las
aleaciones requeridas por los clientes. El metal lı́quido en los hornos es sometido a
1 Introducción 3

diferentes pruebas de calidad para luego ser transferido a la unidad de producción


respectiva. Durante el proceso de producción, el aluminio lı́quido es vaciado en moldes
enfriados por agua. El producto final puede ser aluminio primario en lingotes para
refusión y lingotes para extrusión. En la Figura 1.1 se muestran los distintos procesos
productivos que se realizan en CVG Venalum.

Figura 1.1: Proceso productivo de aluminio en CVG Venalum.


1.1 Antecedentes 4

1.1 Antecedentes
La Superintendencia de Control de Procesos, adscrita a la Gerencia de Control de
Calidad y Procesos de la empresa CVG Venalum, es una unidad funcional de servicio
de las unidades de producción y servicios, que tiene como misión garantizar la
automatización e integración de los procesos productivos susceptibles a ser controlados,
monitoreados, supervisados y operados continuamente en función de las especificaciones
técnicas de los procesos y productos (requisitos de calidad) y criterios establecidos para
el diseño, desarrollo y mantenimiento de sistemas.
Los hornos de retención deben mantener el metal a determinadas temperaturas
establecidas para que se pueda realizar la preparación del horno para el proceso de
colada, la adición de los aleantes (magnesio, silicio, hierro, etc.), la retención del metal
en estado lı́quido, etc. El mantenimiento de la temperatura en los rangos operativos
adecuados, va a estar afectado por distintos factores que no permiten conservar la
temperatura en las operaciones; algunos de estos factores son:

• la carga de chatarra

• el vaciado de crisoles

• el mezclado y desnatado, para lo que se realiza la apertura y cierre de puertas

• la combustión, que implica el encendido y apagado del ventilador

• las distintas fallas que se puedan dar en la instrumentación como el daño de los
quemadores, las termocuplas y las válvulas;

por lo tanto, se requiere el control y supervisión de los mismos para lograr que la
temperatura se mantenga en el rango establecido según el proceso.

1.1.1 Caracterı́sticas de los hornos de retención en CVG


Venalum
La sala de colada consta de 12 hornos de retención que tienen como función: mantener
el metal proveniente de las celdas, en estado lı́quido y a temperatura de trabajo (700-
750) o C. En la Tabla 1.1 se presentan las capacidades de los hornos.
1.1 Antecedentes 5

Tabla 1.1: Capacidades de los hornos de retención.

Cada horno de retención está asociado a un proceso de producción de producto


terminado de una forma especı́fica: lingotes de 10, 22 y 680 kg, cilindros y metal
lı́quido.

Figura 1.2: Distribución de los hornos de retención de acuerdo al proceso productivo


que realizan.

En las Tablas 1.2 y 1.3 se muestran algunas caracterı́sticas de los hornos de


retención.
El sistema del horno de retención se puede dividir en tres subsistemas:

1. Subsistema de potencia
1.1 Antecedentes 6

Tabla 1.2: Caracterı́sticas de los hornos de retención del 1 al 6.

Tabla 1.3: Caracterı́sticas de los hornos de retención del 7 al 12.


1.1 Antecedentes 7

2. Subsistema de seguridad

3. Subsistema de control

Subsistema de potencia. El subsistema de potencia está dimensionado para los


requerimientos de corriente y voltaje de los elementos eléctricos pertenecientes al
horno de retención. Está conformado principalmente por el Centro de Control de
Motores (CCM) cuyos componentes son los contactores y protectores térmicos para los
motores de las puertas y del ventilador.

Subsistema de seguridad. También se le puede llamar sistema de combustión o de


control de llama, los componentes principales de este subsistema son:

• Válvulas Maxon: son dos, la válvula de cierre (lado izquierdo) y la válvula de


bloqueo (lado derecho), están ubicadas en la lı́nea de gas principal, cumplen
una función de seguridad; en los hornos 2, 5, 8, 11 y 12 anteriormente cuando
se apagaba un quemador estas válvulas cerraban la alimentación de gas a los
quemadores y se apagaba el horno, actualmente (en estos hornos) hay válvulas
de este tipo en las lı́neas de gas particulares de cada quemador.

• Válvula de venteo: se abre cuando las válvulas Maxon están cerradas para
eliminar los residuos de gas que quedan en la tuberı́a de gas del quemador. Ver
Figura 1.3.

Figura 1.3: Válvulas Maxon y de Venteo ubicadas en la tuberı́a principal de gas del
horno de retención.
1.1 Antecedentes 8

• Quemadores: dentro de estos se realiza el proceso de combustión aire-gas que, al


ser quemados, permiten subir la temperatura a la necesaria para el calentamiento
del aluminio, con tres o más quemadores apagados el horno se apaga por
completo.

• Sensor de llama: es un transductor óptico que indica cuando existe llama en


los quemadores y envı́a la información a los módulos especiales de control de
llama para que se encarguen de habilitar los pilotos para el encendido de los
quemadores.

• Transformador de ignición: es un componente que se encarga de alimentar con un


cierto voltaje a la bujı́a de encendido, la cual provoca la chispa para el encendido
de los pilotos.

• Regulador de gas: se encarga de regular la cantidad de gas que se va a enviar a


los quemadores y a los pilotos.

Subsistema de control. Este se basa principalmente en un sistema de


automatización de la serie S7-300 de Siemens. En la Tabla 1.4 se enumeran los
principales componentes de este sistema y en la Figura 1.4 se muestra la distribución
de los componentes en los racks del S7-300.

Tabla 1.4: Componentes del sistema de control S7-300.

Este sistema se encarga de realizar el control de todos los componentes del horno
y de la supervisión de todas las señales del sistema. Se provee al usuario de una interfaz
hombre máquina mediante el panel operador y pulsadores e indicadores locales.
1.1 Antecedentes 9

Figura 1.4: Distribución de los componentes en los racks del S7-300.

Para realizar el monitoreo se necesitan componentes que transmitan la


información al sistema de control, estos son:

• Transmisor de flujo de gas: informa al sistema supervisorio cual es el flujo de gas


que circula por la tuberı́a de gas.

• Transmisor de flujo de aire: informa al sistema supervisorio el flujo de aire que


circula por la tuberı́a de aire.

• Termocupla de baño: sensor usado para medir la temperatura del metal lı́quido,
tiempo de vida de 3 a 6 dı́as. Ver Figura 1.5.

Figura 1.5: Termocupla de baño o termopozo.

• Termocupla de techo: sensor usado para medir la temperatura de la superficie en


el techo del horno.
1.1 Antecedentes 10

• Termocuplas de refractario: se usan para medir la temperatura del refractario en


distintos puntos del horno.

El componente fı́sico del horno que permite el control de la temperatura es el


damper de aire. El damper es una válvula que controla el porcentaje de aire que el
motor o ventilador de combustión debe alimentar al horno, a su vez controla de manera
indirecta el flujo de gas. Ver Figura 1.6.

Figura 1.6: Esquema del damper de aire y su conexión con la salida de gas.

El sistema de supervisión permite observar las condiciones operativas del horno


(ver Figura 1.7). La terminologı́a estándar es: quemador en rojo: encendido; quemador
en verde: apagado; tuberı́as de gas amarillas, tuberı́as de aire azules.

Estados operativos del horno. Los principales estados operativos del horno de
retención son:

• arranque: se da antes del estado de purga, cuando se está abriendo el damper;

• purga: es una operación en la que se abre el damper en un 100 % para limpiar


las tuberı́as del horno, parecida a la que se hace localmente en los quemadores
con las válvulas de bloqueo, cierre y venteo, pero esta ocurre en todo el horno;

• ignición: indica que se están encendiendo los pilotos;

• pilotos: el horno está encendido a nivel de pilotos, cuando el horno se encuentra


en este estado se deben abrir las válvulas Maxon de la tuberı́a de gas principal,
primero la de bloqueo (lado derecho) y luego la de cierre (lado izquierdo);
1.1 Antecedentes 11

Figura 1.7: Pantalla del sistema de supervisión donde se presenta el estado general del
horno.

• encendido: el horno se encuentra encendiendo;

• encen 3 4Q: se encuentran encendidos 3 o 4 quemadores, de los 5 que tiene el


horno;

• mantenimiento: indica que el horno está en mantenimiento;

• apagado: indica que el horno está apagado.

En los hornos se deben realizar tres operaciones importantes durante el proceso


de producción:

• Raspado: se hace solo cuando el horno está vacı́o, se eliminan las impurezas en
la salida del horno para que circule el metal hacia la piquera.

• Desnatado: se realiza en cada preparación del horno, consiste en la eliminación


de la escoria producto de la oxidación del aluminio.

• Agitado: se hace cuando se carga al horno con aleantes o con una composición
quı́mica distinta a la que tiene el metal en retención para mezclarlo con los nuevos
componentes.
1.1 Antecedentes 12

Condiciones operativas de temperatura en los hornos de retención. Existen


ciertos valores de temperatura que debe tener el aluminio en los hornos de retención en
los procesos de preparación y colada, estos varı́an según el tipo de producto (Márquez
2004). En la Tabla 1.5 se presentan las temperaturas para la preparación y colada de
metal puro.

Tabla 1.5: Temperaturas para preparación y colada de metal puro.

La diferencia entre la temperatura de colada de los lingotes de 22 Kg y los


lingotes de 680 Kg, se debe a que el vaciado del aluminio en los moldes para lingotes de
680 Kg (pailas) se hace directamente a los mismos y para la colada de lingotes de 22 Kg
se debe hacer un recorrido por los canales antes de que el aluminio sea introducido en
los moldes, esto implica una pérdida de calor, por eso se requiere una temperatura
mayor.
La Tabla 1.6 contiene los parámetros operativos para la carga de aleantes según
la aleación a preparar.

1.1.2 Estrategia de control de temperatura en los hornos de


retención
El sistema actual de control de temperatura en los hornos de retención es llevado a
cabo por medio de PLCs de la serie S7-300 de Siemens, CPU 315-2DP.
El objetivo de un sistema de control es mantener según especificaciones la
variable controlada.
En este caso la variable de proceso es la temperatura de salida del aluminio
para la colada, la señal de consigna o set point es el valor deseado de temperatura
del aluminio y la acción de control es la que va a producir la apertura o cierre de las
válvulas de gas o aire para que se produzca más o menos llama y, de esa manera, se
1.2 Situación problemática 13

Tabla 1.6: Temperaturas para preparación y colada de metal aleado.

caliente o enfrı́e el aluminio a la temperatura que se requiera. La acción de control


intentará que la diferencia entre la consigna y el valor de proceso sea mı́nima e incluso
nula; para ello se dispone de lo que se llama un bloque de la familia PID que en función
de unos parámetros de ajuste internos variará la salida de control de manera que ası́
sea, de este bloque, se usa actualmente solo la parte proporcional (P).
El funcionamiento del bloque de control actual consiste en calcular la diferencia
entre el set point y la temperatura real o valor de proceso, esta diferencia da como
resultado un error que se multiplica por una ganancia para obtener un porcentaje,
este se suma o resta al valor de equilibrio de apertura del damper (entre 0-100) y el
resultado de esa operación determina el set point para apertura o cierre del damper de
aire. Ver Figura 1.8.

1.2 Situación problemática


Actualmente en el sistema de control de temperatura de los hornos de retención,
los parámetros del controlador PID son constantes y su cálculo es realizado de
manera manual, esto produce que en algunas ocasiones no se obtenga una respuesta
1.2 Situación problemática 14

Figura 1.8: Funcionamiento del bloque de control actual en los hornos de retención.

adecuada cuando las condiciones del horno cambian, debido a perturbaciones tales
como: la variación del nivel del metal, la cantidad de quemadores que se encuentren
en funcionamiento, la apertura de puertas para añadir los diferentes aleantes o para
realizar el desnatado; esto implica temperaturas inestables y pérdida de tiempo en caso
de que se requiera ajustar los valores de los parámetros del PID.
En el presente trabajo se pretende analizar el sistema de control actual y
proponer modificaciones. Se realizan dos propuestas para el control apropiado del
proceso productivo:

1. la primera consiste en disminuir el valor de la ganancia del control proporcional


de temperatura del horno y,

2. la segunda consiste en implementar un algoritmo de control de temperatura


que pueda cambiar de acuerdo con las modificaciones imprevisibles del medio
o estructura detectadas por medio de una identificación en lı́nea, es decir, el
sistema de control debe, de acuerdo a los cambios en los parámetros de la planta,
realizar los ajustes necesarios en los parámetros del controlador.

Con la aplicación de algunos de estos controladores en el sistema de control


de temperatura en los hornos de retención, se espera mejorar la eficiencia del
sistema, mejorar la calidad del producto, disminuir el rechazo del producto por fallas
de temperaturas fuera de rango, mantener mayor cantidad de tiempo el metal a
temperaturas estables y minimizar los tiempos usados para la calibración del sistema
1.3 Objetivos 15

de control.

1.3 Objetivos

1.3.1 Objetivo general


Analizar y diseñar un sistema de control de temperatura de los hornos de retención del
área de colada para mantener la temperatura deseada y evitar cambios bruscos cuando
varı́en las condiciones de operación del horno.

1.3.2 Objetivos especı́ficos


• Estudiar los hornos de retención del área de Colada en CVG Venalum.

• Obtener un modelo matemático del horno de retención que describa el


comportamiento del mismo y permita analizar y diseñar esquemas de control
de temperatura.

• Entonar el control actual de manera que se consiga mejorar su funcionamiento.

• Diseñar un nuevo controlador de cálculo automático para la temperatura, que


busque los parámetros idóneos de regulación según la condición fı́sica u operativa
que presenten los hornos.

• Determinar y estudiar la lógica de funcionamiento del sistema de control de


temperatura actual (PLC Siemens S7-300) en los hornos de retención.

• Proponer la implementación del control diseñado.


Capı́tulo 2

Conceptos básicos de identificación

La identificación es un proceso experimental de construcción de modelos matemáticos


usando mediciones de variables de entrada u, de la salida del sistema real y y de su
modelo ym . Una vez escogida la estructura del modelo, la diferencia e = y − ym
es minimizada iterativamente mediante la actualización o estimación óptima de los
parámetros o coeficientes del modelo. Esto puede verse también como ajustar el modelo
a las observaciones realizadas sobre el sistema. La identificación es también conocida
como modelado empı́rico por su naturaleza eminentemente experimental (Lischinsky
2004).
Algunas caracterı́sticas de la identificación de sistemas son las siguientes:

• La estructura del modelo debe decidirse o prefijarse de antemano.

• Usualmente resulta en un modelo de “caja negra”, es decir, un modelo que


reproduce solamente las relaciones entrada-salida del sistema.

• Los parámetros son números sin relación con cantidades fı́sicas.

• Proporciona un modelo “ad hoc”, válido solamente para el sistema estudiado y


para el régimen de operación especı́fico para el cual se realizaron las experiencias
y mediciones.

• Sólo se puede aplicar a sistemas existentes y en operación.

• No se requiere conocer o modelar procesos internos.


2.1 Tipos de identificación 17

• Una vez que se tiene un paquete computacional para la identificación, éste puede
utilizarse rápida y fácilmente en la obtención de varios modelos para diferentes
sistemas.

2.1 Tipos de identificación


Existen diversas clasificaciones de los métodos de identificación. En este trabajo
se dividirán en identificación en lazo abierto e identificación en lazo cerrado, (véase
de Klerk 2004), debido a la forma en que se realizan (si se emplea una ley de control
en lazo cerrado o no).

Identificación en lazo abierto (LA). Se refiere al proceso en el que se identifican


modelos de la planta usando datos recolectados de los experimentos en lazo abierto.
Es la forma más común de identificación.

Identificación en lazo cerrado (LC). La identificación de sistemas en lazo cerrado


se refiere al proceso en el que se identifican modelos de la planta usando datos
recolectados de los experimentos en lazo cerrado, donde el proceso subyacente está
totalmente bajo el control de la realimentación. Se deben realizar experimentos de
identificación en lazo cerrado, porque la planta puede ser inestable, debe controlarse
para la producción, economı́a, seguridad, o contiene mecanismos de realimentación
inherentes.
En el pasado, la identificación en lazo cerrado fue considerada difı́cil, pero ahora
este método es factible y ofrece varias ventajas prácticas sobre la identificación en lazo
abierto pues permite la verificación del controlador diseñado y rediseño en lı́nea, la
obtención de los modelos para el diseño del controlador, mantenimiento del control, y
reducción del orden del controlador. El mantenimiento del control incluye aprobación
del mismo y rediseño del control, en base a un modelo recientemente identificado. La
identificación de sistemas en lazo cerrado permite hacer la validación e identificación
con el mismo juego de datos, tiene una ventaja sobre el lazo abierto.
En el Método Indirecto de Identificación en Lazo Cerrado, el sistema en lazo
cerrado se identifica de la referencia r a la salida y, ver Figura 2.1. De este sistema en
2.2 Identificación en lı́nea 18

lazo cerrado identificado, se obtiene el sistema en lazo abierto (planta), haciendo uso
del controlador conocido. En el Método Directo, la salida y del proceso y la entrada
u se usan de la misma manera que en la identificación de sistemas en lazo abierto, es
decir, se ignora que haya realimentación.

Figura 2.1: Diagrama de bloques del sistema en lazo cerrado.

2.2 Identificación en lı́nea


Con el hecho de disponer de un ordenador para realizar la identificación del modelo,
podemos distinguir entre dos formas de acoplar el proceso con el ordenador, son
las denominadas: operación en lı́nea (acoplamiento directo) y operación fuera de
lı́nea (acoplamiento indirecto). En el caso fuera de lı́nea se almacenan los datos
adquiridos del proceso y posteriormente se transfieren al ordenador para ser evaluados
y procesados. Ya que este tipo de identificación se realiza sobre un conjunto de datos,
puede considerarse como un proceso en lote (batch processing). Cuando se trabaja
en lı́nea los datos son directamente procesados, dando lugar a lo que se denomina
procesado en tiempo real, o bacth processing cuando los datos son evaluados después
de realizarse un conjunto de medidas. Las distintas formas de procesar los datos se
describen en la Figura 2.2 (Iserman 1980).
Con respecto a los algoritmos utilizados en los métodos de identificación, se
puede distinguir entre algoritmos recursivos o algoritmos no recursivos. En el primer
caso la estimación de los parámetros se realiza después de cada nuevo conjunto de
datos, utilizando el valor de los parámetros estimados con un conjunto de datos como
2.3 Algoritmo de mı́nimos cuadrados recursivo 19

Figura 2.2: Formas para el procesado de los métodos de identificación.

punto de partida en la estimación de los parámetros para el conjunto de datos posterior.


Con el algoritmo no recursivo se utilizan secuencias enteras que comprenden todos los
datos almacenados para calcular en un solo paso el valor de los parámetros.

2.3 Algoritmo de mı́nimos cuadrados recursivo


El método de mı́nimos cuadrados es un método de estimación paramétrico. A
continuación se presenta el algoritmo de mı́nimos cuadrados (Aguado & Campos 1982)
2.3 Algoritmo de mı́nimos cuadrados recursivo 20

Tabla 2.1: Algunos ejemplos de la relación existente entre el objetivo final del modelo
(aplicación) y las especificaciones del proceso de identificación (tomado de Iserman
1980).

y se repite para cada t, desde t = 0:

g(t + 1) = C(t)z(t + 1) (2.1)


α2 (t + 1) = ϕ2 + z T (t + 1)g(t + 1) (2.2)
ê(t + 1) = y(t + 1) − parT (t)z(t + 1) (2.3)
1
p
ar(t + 1) = par(t) + 2 g(t + 1)ê(t + 1) (2.4)
α (t + 1)
 
1 1
C(t + 1) = C(t) − 2 T
g(t + 1)g (t + 1) (2.5)
2 α (t + 1)
donde: z(t) = [u(t), y(t − 1), u(t − 1), y(t − 2)] es el vector de datos, en el que u(t) y y(t)
son la entrada y salida respectivamente; C es la matriz de covarianza de la estimación;
g y α son respectivamente un vector y un escalar auxiliares para el proceso de cálculo;
ϕ es el coeficiente de olvido exponencial ; e(t) es el error de predicción del modelo y
2.3 Algoritmo de mı́nimos cuadrados recursivo 21

p
ar es un vector que contiene las estimaciones mı́nimo cuadráticas de los parámetros
ar = [b1 , a1 , b2 , a2 ].
−1 −2
del modelo b1z −1+b2z −2 y se define: p
1−a1z −a2z
Como medida de la incertidumbre en la identificación, sirve la matriz simétrica
y definida positiva C que actúa como una matriz de “atenuación” de la covarianza o
de la incertidumbre en el proceso de identificación.
El coeficiente de olvido exponencial evita la saturación del algoritmo cuando
funciona durante perı́odos prolongados de tiempo. Este coeficiente se encuentra en el
intervalo de 0 a 1, de manera que ϕ = 1 significa que se tienen en cuenta todos los
datos obtenidos durante la identificación y ϕ < 1 implica que se olvidan los datos más
viejos. En la medida en que ϕ asume valores más próximos a 0, la “ventana” de datos
efectivos es más estrecha.
Los valores par(0) y C(0) en el algoritmo pueden interpretarse como la
estimación inicial de par cuya imprecisión se caracteriza mediante C(0). En la
estimación inicial puede incorporarse toda la información existente a priori acerca de
los valores probables de los parámetros. Si no hay ninguna información, que es el
caso más frecuente, pueden escogerse valores arbitrarios para los coeficientes de par(0).
C(0) se selecciona como una matriz definida positiva, preferentemente diagonal, con
coeficientes grandes en la diagonal principal.
Capı́tulo 3

Control PID

3.1 Algoritmo PID


La familia de controladores PID son los que más se utilizan en la industria. La
estructura de un controlador PID es simple, aunque su simplicidad es también su
debilidad, dado que limita el rango de plantas que pueden controlarse en forma
satisfactoria (existe un grupo de plantas inestables que no pueden ser estabilizadas
con ningún miembro de la familia PID) (Mazzone 2002).
Los miembros de la familia de controladores PID incluyen tres acciones:
proporcional (P), integral (I) y derivativa (D). Estos controladores son los denominados
P, I, PI, PD y PID. En este trabajo se hará referencia a los controladores P, PD y PID.

Acción de control proporcional P. Da una salida del controlador que es


proporcional al error, es decir: u(t) = Kp e(t), que descrita desde su función
transferencia queda:
u(s)
Cp (s) = = Kp
e(s)
donde Kp es una ganancia proporcional ajustable. Un controlador proporcional puede
controlar diversos tipos de sistemas, pero posee desempeño limitado y, posiblemente,
error en régimen permanente (off-set).
3.1 Algoritmo PID 23

Control proporcional-derivativo PD. Se define mediante:


de(t)
u(t) = Kp e(t) + Kp Td
dt
donde Td es una constante denominada tiempo derivativo. Esta acción tiene carácter
de predicción, lo que hace más rápida la acción de control, aunque tiene la desventaja
importante que amplifica las señales de ruido y puede provocar saturación en el
actuador. La acción de control derivativa nunca se utiliza por sı́ sola, debido a que sólo
es eficaz durante perı́odos transitorios. La función transferencia de un controlador PD
resulta:
CP D (s) = Kp + sKp Td

Cuando una acción de control derivativa se agrega a un controlador proporcional,


permite obtener un controlador de alta sensibilidad, es decir, que responde a la
velocidad del cambio del error y produce una corrección significativa antes de que la
magnitud del error se vuelva demasiado grande. Aunque el control derivativo no afecta
en forma directa al error en estado estacionario, añade amortiguamiento al sistema y,
por tanto, permite un valor más grande de la ganancia K, lo cual provoca una mejora
en la precisión en estado estacionario.

Control proporcional-integral-derivativo PID. Esta acción combinada reúne las


ventajas de cada una de las tres acciones de control individuales. La ecuación de un
controlador con esta acción combinada se obtiene mediante:
t
Kp de(t)
u(t) = Kp e(t) + e(τ )dτ +Kp Td
Ti dt
0

y su función de transferencia resulta:


 
1
CP ID (s) = Kp 1+ + Td s
Ti s
En los sistemas de control básicos vistos hasta ahora, si la entrada de referencia es un
escalón, debido a la presencia del término derivativo en la acción de control, la variable
manipulada u(t) contendrá una función impulso (delta δ). En un controlador PID real,
en lugar del término derivativo Td s emplearemos:
Td s
τD s + 1
3.2 Bloque PID FB41 CONT C en los PLCs Siemens S7-300. 24

donde τD , denominada constante de tiempo derivativa, normalmente es elegida tal que


0.1 < τD < 0.2. Cuanto más pequeña es τD , mejor es la aproximación entre el término
“derivativo filtrado” de la ecuación anterior y el “derivativo” Td s, es decir son iguales
en el lı́mite:
t
Kp de(t)
lim uP ID (t) = Kp e(t) + e(τ )dτ +Kp Td
τD →0 Ti dt
0

Con la inclusión de un polo evitamos utilizar acciones de control grandes en respuesta


a errores de control de alta frecuencia, tales como errores inducidos por cambios de
setpoint (referencia) o mediciones de ruido. El argumento clásico por el cual se elige
τD = 0 es, además de asegurar un controlador propio, para atenuar ruido de alta
frecuencia. Casi todos los controladores industriales PID definen a τD como una
fracción fija de Td , en lugar de tomarlo como un parámetro independiente de diseño.

3.2 Bloque PID FB41 CONT C en los PLCs Siemens


S7-300.
En el área de colada de CVG Venalum, los controladores del tipo PID están
implementados en el PLC mediante el bloque FB41 CONT C (Siemens-AG 1996). El
FB CONT C sirve para la regulación de procesos industriales con magnitudes de entrada
y salida continuas utilizando sistemas de automatización SIMATIC S7. Mediante la
parametrización es posible conectar o desconectar las funciones parciales del regulador
PID, adaptándolo ası́ al proceso regulado, ver Figura 3.1. El algoritmo PID trabaja en
el algoritmo de posición (la acción es proporcional al error de posición, posición actual -
posición anterior ). Las acciones proporcional, integral (INT) y derivativa (DIF) están
conectadas en paralelo y pueden activarse y desactivarse por separado. De este modo
se pueden parametrizar reguladores P, PI, PD y PID.
La respuesta indicial en el margen de tiempo es:
 
1 −t
LM N Sum(t) = GAIN · ER(0) 1 + ·t+D F ·e T D/D F (3.1)
TI
donde: LMN Sum(t) es la magnitud manipulada en modo automático del regulador;
ER(0) es la amplitud del escalón del error de regulación normalizado; GAIN es la
3.2 Bloque PID FB41 CONT C en los PLCs Siemens S7-300. 25

Figura 3.1: Esquema de bloques de CONT C.

ganancia del regulador; TI es el tiempo de acción integral; TD es el tiempo de acción


derivativa y D F es el factor de acción derivativa.
TD
En el termino derivativo filtrado de la sección anterior: Td = D F y τD = D F
.
3.3 Control mediante identificación en lı́nea 26

3.3 Control mediante identificación en lı́nea


El método propuesto por Aguado y Campos (1982) consiste de un esquema de control
que utiliza un algoritmo PID con la capacidad de recálculo de los parámetros de control,
que se basa en la asignación de tres polos deseados, que se ubican en la zona de
estabilidad y cuyos valores son los parámetros de diseño fundamentales del regulador.
Se incluye la identificación en lı́nea, utilizando el método de mı́nimos cuadrados
en su versión recursiva, de un modelo discreto de segundo orden, donde se identifican
los parámetros a1 , a2 , b1 y b2 .
A partir de la estimación de los parámetros e igualando el polinomio
caracterı́stico del sistema en lazo cerrado a un polinomio de tercer orden se obtienen
las ecuaciones para el cálculo de los parámetros del regulador (se explicará con más
detalle en el Capı́tulo 6).

3.4 Herramienta de comunicación OPC


Las soluciones de automatización requieren integrar toda una serie de componentes:
equipos tales como PLCs, accionamientos, sensores y las denominadas aplicaciones,
por ejemplo para funciones de manejo y visualización o para la gestión de datos del
proceso. La combinación de equipos y aplicaciones de diferentes fabricantes usados
para una misma solución constituye con frecuencia un problema (Siemens-AG 2004).
El bus OPC (OLE for Process Control ) es un estándar de comunicación en
el campo del control y supervisión de procesos. Este estándar permite que diferentes
fuentes de datos envı́en datos a un mismo servidor OPC, al que a su vez podrán
conectarse diferentes programas compatibles con dicho estándar. De este modo se
elimina la necesidad de que todos los programas cuenten con drivers para dialogar con
múltiples fuentes de datos (equipos y aplicaciones de diferentes fabricantes), basta que
tengan un driver OPC (El bus OPC n.d.).
En realidad OPC es un conjunto de protocolos entre los que podemos destacar
los siguientes:

• OPC-DA (Data Access): El protocolo original, sirve para el intercambio de datos


3.4 Herramienta de comunicación OPC 27

a tiempo real entre servidores y clientes.

• OPC-AE (Alarms & Events): Proporciona alarmas y notificaciones de eventos.

• OPC B (Batch): Útil en procesos discontinuos.

• OPC DX (Data eXchange): Proporciona inter-operabilidad entre varios


servidores.

• OPC HDA (Historical Data Access): Acceso histórico a datos OPC.

• OPC S(Security): Especifica cómo controlar el acceso de los clientes a los


servidores.

• OPC XML-DA (XML Data Access): Es una combinación de OPC-XML


(eXtensible Markup Language) y OPC-DA.

• OPC CD (Complex Data): Permite a los servidores exponer y describir tipos de


datos más complicados en forma de estructuras binarias y documentos XML.

OPC (Siemens-AG 2004) ofrece tanto a los productores como a los usuarios de
software y hardware industrial las ventajas siguientes:

1. El usuario puede elegir entre una amplia oferta los productos que mejor se
adaptan a su sistema de automatización. La compatibilidad de los dispositivos
está totalmente garantizada. Esto reduce enormemente los costos de integración
y contribuye a incrementar la productividad.

2. Para el fabricante de componentes de automatización, los gastos de desarrollo


para drivers se reducen a una única interfaz para OPC. Ello le permite
concentrarse en la funcionalidad de su solución de automatización. Esto acorta
el tiempo de desarrollo y reduce los costos.

Campo de aplicación. A través de la interfaz para OPC se pueden intercambiar


datos entre sistemas de automatización y aplicaciones de distintos fabricantes. También
sirve para almacenar datos del proceso en formatos de Office como, por ejemplo, Excel
o Access. Para archivar grandes cantidades de datos también existe la posibilidad de
integrar bases de datos.
3.4 Herramienta de comunicación OPC 28

Arquitectura. La arquitectura del OPC se basa en dos componentes esenciales:


servidor OPC y cliente OPC.

3.4.1 Servidor OPC


Un servidor OPC es una implementación de una interfaz OPC. Las aplicaciones utilizan
los servicios del servidor OPC exclusivamente a través de la interfaz definida por OPC.
El servidor OPC es el componente que ofrece métodos estandarizados. Un servidor
OPC puede ser la reproducción directa de un aparato del proceso o representar datos
ya acondicionados de una aplicación.
En este trabajo se hace una propuesta de implementación usando el servidor
OPC SIMATIC NET.

Servidor OPC SIMATIC NET. El servidor OPC SIMATIC NET forma parte del
software SIMATIC NET de Siemens y ofrece los siguientes accesos:

1. Industrial Ethernet:

• Comunicación PROFINET IO

• Comunicación S7

• Comunicación compatible S5 (SEND/RECEIVE)

• Comunicación nativa TCP/IP

2. PROFIBUS:

• Comunicación S7

• Comunicación compatible S5

• Comunicación FMS

• Comunicación DP
3.4 Herramienta de comunicación OPC 29

Figura 3.2: Funciones OPC

3.4.2 Cliente OPC


Los clientes OPC utilizan la interfaz estandarizada del servidor OPC para acceder a
los datos del proceso.
Pueden ser clientes OPC, por ejemplo: sistemas de visualización, Manufacturing
Execution Systems o herramientas de Microsoft Office.
Para la propuesta de implementación a la que se hace referencia en la sección
anterior, se usa como cliente a MATLAB,
r mediante el OPC Toolbox.

OPC Toolbox de MATLAB. El OPC Toolbox (Mathworks 2004) es una colección


de funciones que extienden la capacidad del ambiente numérico MATLAB.
r Usando el
OPC Toolbox, se pueden adquirir datos reales del OPC directamente en MATLAB
r
y Simulink,
r y escribir datos directamente al servidor OPC desde MATLAB
r y
Simulink.
r
El OPC Toolbox lleva a cabo un acercamiento jerárquico orientado a objetos
comunicándose con servidores de OPC que usan la norma de acceso de datos OPC.
3.4 Herramienta de comunicación OPC 30

Usando las funciones del toolbox, se crea un objeto cliente (objeto opcda) que
representa la conexión entre MATLAB
r y un OPC servidor. Las propiedades del
objeto cliente “opcda” permiten controlar los aspectos de la comunicación, como el
tiempo de muestreo, estado de la conexión, y el almacenamiento de eventos relacionados
con ese cliente.
Una vez se establece una conexión a un servidor de OPC, se crea un objeto
grupo (el objeto dagroup) este representa colecciones de artı́culos (variables medidas).
Luego se agrega el objeto artı́culo (el objeto daitem) a ese grupo.
La norma de acceso de datos OPC no proporciona acceso a histórico de datos.
Mientras la Fundación de OPC ha definido las especificaciones para el acceso a los
datos históricos, un gran número de los servidores de acceso de datos no apoyan esta
norma. Usando el OPC Toolbox, se puede anotar en archivos una lista de los artı́culos
que han cambiado, y sus nuevos valores. Los datos acceden del servidor al disco o a la
memoria, para luego procesarlos. La anotación es controlada por el objeto dagroup.
Para trabajar con los datos que se adquieren, éstos se deben traer al workspace
de MATLAB.
r Cuando los archivos son adquiridos, el toolbox los guarda en memoria
o en disco. El toolbox proporciona varias maneras de traer uno o más archivos de datos
en el workspace para poder analizar o visualizar los datos.
Capı́tulo 4

Modelado del horno 8

4.1 Identificación del sistema


Se realizaron dos experimentos: en lazo abierto y en lazo cerrado.
En lazo abierto, se apagó el control y se cambió el damper (actuador) de 0 a
50%, en la Figura 4.1 se muestra la respuesta a este cambio. Aparentemente, pudiera
parecer que el sistema posee una inestabilidad, por su caracter creciente, pero también
puede estar asociado a la presencia de un integrador en respuesta a la entrada escalón.
Para la identificación del modelo en lazo cerrado, el control se encontraba activo
y se hicieron cambios en la referencia. Se usó el método indirecto de identificación en
lazo cerrado (ver Sección 2.1).

Recolección de los datos. Se usaron para la identificación datos reales de la


respuesta del sistema (temperatura en el horno de retención) en lazo cerrado. Se
seleccionó una fracción de los datos que proporcione información útil del sistema.
Se obtuvo un modelo para el horno # 8 usando datos del mes de octubre del
2005. Ver Figuras 4.2 y 4.3.
Los criterios para la selección de los datos fueron: que no exista saturación en
el control y que la respuesta esté afectada lo menos posible por perturbaciones (debido
al vaciado de crisoles y a la carga de chatarra principalmente).
4.1 Identificación del sistema 32

Figura 4.1: Datos del sistema en lazo abierto.


4.1 Identificación del sistema 33

Figura 4.2: Selección de los datos para estimar el modelo de la temperatura en el


horno 8.

Figura 4.3: Datos usados para la identificación en el horno 8 (Método Indirecto).


4.1 Identificación del sistema 34

Selección de la estructura del modelo. El sistema no se puede representar con


un modelo de primer orden debido a que la respuesta para la entrada escalón presenta
oscilaciones, por lo tanto, se concluye que la estructura del modelo debe ser de segundo
orden o mayor.
Partiremos del supuesto de que el sistema es de segundo orden:

K.ωn2
(4.1)
s2 + 2ζωn s + ωn2
La ecuación (4.1) representa la función de transferencia de un sistema de
segundo orden donde ζ es el coeficiente de amortiguamiento y ωn la frecuencia natural
amortiguada.
A continuación se presenta el procedimiento paso a paso para la obtención
del modelo en lazo abierto, a partir del modelo en lazo cerrado, por regresión (ver
Figura 2.1):

Y (s) = G(s)U (s)

U (s) = GC (s)E(s)

E(s) = R(s) − Y (s)

Y (s) = (R(s) − Y (s))GC (s)G(s)

Y (s)(1 + GC (s)G(s)) = R(s)GC (s)G(s)

Y (s) GC (s)G(s)
=
R(s) 1 + GC (s)G(s)
Función de Transferencia en Lazo Cerrado:
Y (s)
GLC (s) =
R(s)
4.2 Estimación y validación del modelo 35

GLC (s)(1 + GC (s)G(s)) = GC (s)G(s)

GLC (s) = (1 − GLC (s))GC (s)G(s)

Función de Transferencia en Lazo Abierto por Regresión:


GLC (s)
G(s) =
GC (s)(1 − GLC (s))

4.2 Estimación y validación del modelo


Para la estimación del modelo, se identificaron las caracterı́sticas de la respuesta
temporal (ver Figura 4.4) perı́odo T = 28, 5min, sobredisparo M p = 45, 83%, tiempo

Figura 4.4: Caracterı́sticas de la respuesta temporal.

de asentamiento ts = 61min y tiempo de levantamiento tr = 13, 5min; con estos datos,


a partir de las ecuaciones:
− √ πζ
Mp = e 1−ζ 2 × 100


 3,2
si 0 < ζ ≤ 0, 69
ζωn
ts =
 4,5ζ
si ζ > 0, 69
ωn

de sobredisparo y tiempo de asentamiento, se calcularon ζ y ωn , se sustituyeron en la


ecuación (4.1) y haciendo algunos ajustes se obtuvo el siguiente modelo:
4.2 Estimación y validación del modelo 36

Función de Transferencia del Sistema en Lazo Cerrado:


0, 045
GLC (s) = (4.2)
s2 + 0, 08s + 0, 045
con un control proporcional GC (s) = 10, 5; por regresión:

Función de Transferencia del Sistema en Lazo Abierto:


0, 0042857
G(s) = (4.3)
s(s + 0, 08)
Del modelo en lazo abierto se puede notar que posee un integrador lo cual
confirma nuestra suposición de la sección anterior.
En la Figura 4.5 se observa el diagrama de bloques en Simulink
r para la
validación del modelo en lazo cerrado.

Figura 4.5: Diagrama de bloques en Simulink


r para la validación del modelo en lazo
cerrado.

En la Figura 4.6 se aprecia la correspondencia entre el modelo diseñado y los


datos reales. El modelo en lazo cerrado se ajusta apropiadamente a la respuesta del
sistema.
Para la validación del modelo en lazo abierto se observa el diagrama de bloques
en Simulink
r (ver Figura 4.7) y la comparación de las respuestas (con todos los datos),
ver Figura 4.8.
De la Figura 4.8 se toman algunos detalles que permiten apreciar mejor la
correspondencia de la respuesta del modelo en lazo abierto y los datos reales.
4.2 Estimación y validación del modelo 37

Figura 4.6: Comparación de respuestas para la validación (segmento de datos de


identificación.)

Figura 4.7: Diagrama de bloques en Simulink


r para la validación del modelo en lazo
abierto.

La Figura 4.9 muestra el set de datos usado para la identificación, ahora también
para la validación del modelo.
La Figura 4.10 muestra otro set de datos usado para validación pero con
desfasaje en la respuesta debido a que existe una saturación en el damper para este
cambio de set point.
De igual manera se compara el control entre el modelo y los datos reales, ver
Figura 4.11.
La Figuras 4.9, 4.10 y 4.11 permiten observar que el perı́odo y en general las
caracterı́sticas de la respuesta del modelo se van a ajustar a la respuesta real.
4.2 Estimación y validación del modelo 38

Figura 4.8: Comparación de respuestas para la validación (todos los datos).

Figura 4.9: Set de datos usado para la identificación y la validación (Detalle de la


Figura 4.8).
4.2 Estimación y validación del modelo 39

Figura 4.10: Set de datos para validación, con desfasaje debido a que los datos reales
presentan saturación en el damper para el cambio de set point (Detalle de la Figura 4.8).

Figura 4.11: Comparación del control para el modelo vs el control para datos reales.
Capı́tulo 5

Control proporcional

5.1 Análisis del sistema a partir del modelo


obtenido
Para el análisis de la estabilidad del modelo se puede observar en la Figura 5.1 el lugar
de las raı́ces en función de la ganancia proporcional K.

Figura 5.1: Lugar de las raı́ces del modelo obtenido.


5.2 Entonación del control proporcional 41

La flecha en la gráfica indica el movimiento de los polos a medida que aumenta la


ganancia. A partir de K = 0, 374 los polos del sistema van a ser complejos conjugados
y para K → ∞ el sistema va a ser crı́tico (oscilatorio).
En la Figura 5.2 se observa la respuesta al escalón del modelo en lazo cerrado
para el valor actual de ganancia en el controlador (K = 10, 5).

Figura 5.2: Respuesta al escalón del modelo obtenido.

5.2 Entonación del control proporcional


En la Figura 5.2 se observa el comportamiento ante un escalón del modelo obtenido
para el valor de ganancia de 10,5 en el horno 8, mientras en la Figura 4.2 se puede ver
el comportamiento de la respuesta real del sistema para ese mismo valor de ganancia.
Se hace un análisis del comportamiento del sistema para nuevos valores en el control
que mejoren, la respuesta de la temperatura en los hornos (evitar desviaciones muy
grandes de la salida respecto a la referencia y disminuir el tiempo de saturación en el
5.3 Implementación con disminución de la ganancia 42

controlador).
Los principales problemas que se observan, al ver las gráficas a las que se
hace referencia en el párrafo anterior, son: que existe mucha saturación en el control
(apertura del damper o válvula de aire) y la gran cantidad de oscilación en la salida
(temperatura del baño de metal en el horno). Las Figuras 5.3 y 5.4 muestran la
respuesta del modelo para K = 5.

Figura 5.3: Respuesta del modelo a la entrada escalón con un control proporcional
K = 5.

En las Figuras 5.3 y 5.4 se observa que existe una pequeña mejora en el
tiempo de asentamiento y en el sobredisparo, y la saturación en el control disminuye
significativamente con respecto a los datos reales (K = 10, 5).
En las Figuras 5.5 y 5.6 se usa una ganancia K=1,5 y se observa una gran
mejora en todas las caracterı́sticas de la respuesta: el tiempo de asentamiento disminuye
aproximadamente en 10 min, el sobredisparo en un 40% y prácticamente no se observan
saturaciones en el control.

5.3 Implementación con disminución de la ganancia


A continuación se hará un análisis de las caracterı́sticas reales del sistema para distintas
ganancias, y la comparación de las mismas.
5.3 Implementación con disminución de la ganancia 43

Figura 5.4: Comparación del modelo para K = 5 vs los datos reales (K = 10, 5).

En la Figura 5.7 se observa una comparación de las respuestas reales para K =


10.5 y K = 7. La mejora más significativa es la disminución en el tiempo de saturación
del control. En muchos casos, en su lı́mite superior el damper no se satura a diferencia
de la respuesta para K = 10.5. También disminuye la desviación de la respuesta
respecto a la referencia. Se intentó hacer el experimento para K = 5 pero el horno en
el momento que se dispuso para esta prueba estaba funcionando con tres quemadores,
en lugar de cinco quemadores, por lo que no es posible compararlo con los resultados
anteriores.
Esta implementación (disminución de la ganancia K) también se hizo en los
hornos 2 y 11, en los que se observaron mejoras similares.
Tomando en consideración los experimentos hechos, se puede deducir que no
importa el valor que tenga el control proporcional: el sistema no es más rápido.
Para valores pequeños de ganancia se mejora la respuesta transitoria de la temperatura
5.3 Implementación con disminución de la ganancia 44

Figura 5.5: Respuesta del modelo a la entrada escalón con un control proporcional
K = 1, 5.

en los hornos y el actuador va a trabajar fuera de sus lı́mites de saturación, con menos
esfuerzo, por ende, va a tener mayor vida útil.
5.3 Implementación con disminución de la ganancia 45

Figura 5.6: Comparación del modelo para K = 1, 5 vs los datos reales (K = 10, 5).
5.3 Implementación con disminución de la ganancia 46

Figura 5.7: Comparación de las respuestas para K = 10, 5 y K = 7.


Capı́tulo 6

Control mediante identificación en


lı́nea

Figura 6.1: Esquema de control mediante identificación en lı́nea.

6.1 Identificación en lı́nea


La identificación en lı́nea se realiza a través del algoritmo de mı́nimos cuadrados
recursivo (ver Sección 2.2), implementado en un algoritmo en MATLAB
r (ver
Apéndice A). La Figura 6.1 muestra un esquema de como se hace la identificación
y el control en lı́nea, donde: TB es la temperatura de baño, SP es el set point de
temperatura, AD es el porcentaje de apertura del damper y SD es el set point de
apertura del damper; las otras variables ya se conocen de los capı́tulos anteriores.
6.2 Algoritmo PD por asignación de polos deseados 48

Recolección de los datos. Los datos se adquieren mediante OPC y se guardan en


un vector llamado V alor, de este vector se toman los datos necesarios para el proceso
de identificación.

Selección de la estructura del modelo. Se mantiene la estructura de la


Ecuación 4.1, de segundo orden, pero como se hace muestreo de datos se va a trabajar
con la estructura en discreto de la siguiente forma:

y(t) b1 · z −1 + b2 · z −2
Gp (z −1 ) = = (6.1)
u(t) 1 − a1 · z −1 − a2 · z −2

Estimación y validación del modelo. En el programa de identificación que se


presenta en el Apéndice A, se establecen las condiciones iniciales para la estimación
del modelo y se realiza el algoritmo de la Seccion 2.3.
Para la validación del modelo lo primero que se hace es tomar un porcentaje de
los datos y calcular el error respecto a la respuesta real del sistema, luego se cargan los
datos para la validación, se calcula la estabilidad del modelo y la adaptación de este al
comportamiento actual del horno.

6.2 Algoritmo PD por asignación de polos deseados


Se asume que el proceso a controlar puede aproximarse mediante un modelo de segundo
orden discreto como el de la Ecuación (6.1), esta aproximación establece los lı́mites
en que puede aplicarse éste método, es decir, en tanto el proceso pueda modelarse
adecuadamente.
La ecuación del regulador PD discreto viene dada por:

− DF T −1
1 + D F − e TD z N0 + N1 z −1
Gr (z −1 ) = GAIN DF = (6.2)
1 − e− T D T z −1 1 + D1 z −1

− DF DF
donde: N0 = GAIN (1 + D F ), N1 = GAIN −e T D
T
y D1 = −e− T D T .
Se usa un PD debido a que: la presencia del integrador en la planta provoca
que la temperatura vaya a la referencia, en consecuencia, no se agrega la parte
integral; el control proporcional por sı́ sólo no logra una mejora en el tiempo de
6.2 Algoritmo PD por asignación de polos deseados 49

asentamiento, por esto se agrega la parte derivativa, aunque cuando ésta se encuentre
activa probablemente se tendrá que pagar el costo de la saturación del damper ante un
cambio de set point.
La ecuación caracterı́stica del sistema en lazo cerrado resulta entonces:

1 + Gp (z −1 )Gr (z −1 ) = 0 (6.3)

El algoritmo PD por asignación de polos esta implementado en el programa en


MATLAB
r del Apéndice B.
En el algoritmo se calculan ζ y ωn a partir de un sobredisparo y un tiempo
de asentamiento deseado, usando las mismas ecuaciones que en la Sección 4.2, estos
valores pueden predeterminarse en vez de introducirlos por pantalla.
Para obtener los parámetros del control en el algoritmo, se iguala la ecuación
caracterı́stica del sistema deseado a la ecuación (6.3).

%CALCULO DEL SISTEMA DESEADO


>> numclc=[wn*wn]
>> denps=[1 10*sita*wn]
>> denpc=[1 2*sita*wn wn*wn]
>> denclc=conv(denps,denpc)
>> fprintf(‘SC’)
>> syscd=tf(numclc,denclc) %Sistema deseado en continuo
>> fprintf(‘SD sysdd’)
>> sysdd=c2d(syscd,T) %Sistema deseado en discreto
>> numz=sysdd.num{1,1};
>> pcz=sysdd.den{1,1};

A partir de las ecuaciones:

ecuaccar [2] = N0 b1 − a1 + D1
ecuaccar [3] = N0 b2 + N1 b1 − a2 − D1 a1
ecuaccar [4] = N1 b2 − D1 a2
se despejan los parámetros N0 , N1 y D1 , de estos se consiguen los valores de GAIN ,
D F y T D para introducirlos en el FB41 (ver Sección 3.2).
6.2 Algoritmo PD por asignación de polos deseados 50

A continuación se presenta el algoritmo, paso a paso, para el control mediante


identificación en lı́nea:

1. se toman datos;

2. se calculan, por el método de mı́nimos cuadrados recursivo, los parámetros del


modelo;

3. se verifica el modelo (que sea estable, para ello se calcula el margen de fase y
margen de ganancia), si no es estable volvemos al paso 1;

4. se calcula la diferencia entre el modelo y los datos, si es mayor que cierto umbral
se va al paso 1, si todo OK se calcula el control a partir del siguiente paso;

5. se calculan ζ y ωn a partir de un sobredisparo y un tiempo de asentamiento


predeterminado;

6. se calcula la función de transferencia del sistema deseado;

7. se consiguen los valores de N0 , N1 y D1 , a partir de estos se calculan los


parámetros del controlador PD

8. se verifica que la ganancia no sea mayor a 10, en caso de que si lo sea se hace
GAIN = 10;

9. se verifica que la ganancia no sea menor a 0,5; en caso de que si lo sea se va al


paso 1;

10. si todo OK, se envian los valores de GAIN , D F y T D al PLC para activar el
nuevo control.

La propuesta para la implementación del control mediante identificación en lı́nea


se muestra en el próximo capı́tulo.
6.3 Resultados obtenidos mediante simulación usando el algoritmo PD por
asignación de polos deseados 51

6.3 Resultados obtenidos mediante simulación


usando el algoritmo PD por asignación de polos
deseados
Se usaron para esta prueba los mismos datos de la Figura 4.2. Para la identificación
se usaron 100 datos con un tiempo de muestreo de 3 min y 30 datos para la validación
(ver Figura 6.2).

Figura 6.2: Primer conjunto de datos usado para la identificación en lı́nea.

El modelo estimado fue el siguiente:


−0, 006258z + 0, 1273
(6.4)
z 2 − 0, 4658z − 0, 5268
Luego se calculó el control con un tiempo de asentamiento deseado de 40 min y
un sobredisparo del 10%. Obteniendo como función de transferencia deseada:
2, 602z 2 + 5, 572z + 0, 6315
(6.5)
z 3 − 1, 58z 2 + 0, 7539z − 0, 05613
Los valores obtenidos mediante el algoritmo propuesto para el controlador son:
GAIN = 4, 549; D F = 0, 3005 y T D = 0, 0751. En la Figura 6.3 se muestra la
6.3 Resultados obtenidos mediante simulación usando el algoritmo PD por
asignación de polos deseados 52

respuesta del modelo identificado, ante la acción del control calculado, a distintos
cambios de set point.

Figura 6.3: Respuesta del sistema con el control calculado a partir del modelo de la
Ecuación (6.4).

En la Figura 6.4 se muestra el siguiente conjunto de datos usado para la prueba.


El modelo obtenido fue el siguiente:
−0, 09765z + 0, 08553
(6.6)
z 2 − 0, 5593z − 0, 4409
Para este conjunto de datos el algoritmo genera un modelo inestable y, entonces,
se deben hacer de nuevo los cálculos.
El tercer conjunto de datos se muestra en la Figura 6.5.
El modelo estimado fue el siguiente:
0, 7133z − 0, 2658
(6.7)
z 2 + 0, 07406z − 1, 047
6.3 Resultados obtenidos mediante simulación usando el algoritmo PD por
asignación de polos deseados 53

Figura 6.4: Segundo conjunto de datos usado para la identificación en lı́nea.

Figura 6.5: Tercer conjunto de datos usado para la identificación en lı́nea.

Para este conjunto de datos el algoritmo no consiguió valores lógicos (valores


dentro del rango aceptable [0, 5 − 10, 5]) para el control, por lo tanto éste se mantiene
como estaba.
6.3 Resultados obtenidos mediante simulación usando el algoritmo PD por
asignación de polos deseados 54

El siguiente conjunto de datos (Figura 6.6) arroja un modelo inestable:


−0, 1779z + 0, 1158
(6.8)
z2 − 0, 6826z − 0, 3206

Figura 6.6: Cuarto conjunto de datos usado para la identificación en lı́nea.

La Figura 6.7 muestra el quinto conjunto de datos identificado.


El modelo obtenido fue el siguiente:
−0, 03141z + 0, 05701
(6.9)
z 2 − 0, 5877z − 0, 4107
Se calculó el control con un tiempo de asentamiento deseado de 40 min y un
sobredisparo del 10%. La función de transferencia deseada es:

2, 602z 2 + 5, 572z + 0, 6315


(6.10)
z 3 − 1, 58z 2 + 0, 7539z − 0, 05613
Los valores que propone el algoritmo para el control son: GAIN = 8, 4031;
D F = T D = 0. Ver Figura 6.8.
El siguiente conjunto de datos se muestra en la Figura 6.9.
Para este conjunto de datos el algoritmo genera un modelo inestable:
−0, 08823z + 0, 087
(6.11)
z 2 − 0, 4879z − 0, 5126
6.3 Resultados obtenidos mediante simulación usando el algoritmo PD por
asignación de polos deseados 55

Figura 6.7: Quinto conjunto de datos usado para la identificación en lı́nea

Luego de realizar estos experimentos se observan algunas caracterı́sticas sobre


del algoritmo para el control mediante identificación en lı́nea: en los casos que los
datos presentan picos o inestabilidades, el algoritmo genera un mensaje que dice que el
modelo estimado de estos datos es inestable; cuando la respuesta se mantiene alrededor
de la referencia pero con oscilaciones significativas, el algoritmo genera un parámetro
de ganancia proporcional a la amplitud de las oscilaciones; cuando la respuesta es muy
cercana a la referencia se obtienen valores muy bajos de ganancia, incluso negativos,
el algoritmo genera el mensaje de que no se obtuvieron valores lógicos de ganancia (no
es necesario cambiar el control); además cuando la respuesta es muy lenta el algoritmo
activa los parámetros derivativos con valores diferentes de 0.
Mediante simulaciones se obtienen resultados bastante aceptables usando este
control, se escapa del alcance de este trabajo la realización de las pruebas variando los
parámetros en el sistema real (hornos de retención).
Este algoritmo está en planes de implementación en la empresa.
6.3 Resultados obtenidos mediante simulación usando el algoritmo PD por
asignación de polos deseados 56

Figura 6.8: Respuesta del sistema con el control calculado a partir del modelo de la
Ecuación (6.9).
6.3 Resultados obtenidos mediante simulación usando el algoritmo PD por
asignación de polos deseados 57

Figura 6.9: Sexto conjunto de datos usado para la identificación en lı́nea.


Capı́tulo 7

Propuesta para la implementación

Propuesta para la implementación del control mediante identificación en


lı́nea. Se debe instalar en un PC, el software del servidor OPC Simatic Net de Siemens
y el OPC Toolbox de MATLAB 7. El OPC-Server de SIMATIC NET puede acceder a
los datos de SIMATIC S7 a través de un enlace S7 (TCP/IP). MATLAB como Cliente
OPC, puede acceder a estos datos del SIMATIC OPC-Server a través de un enlace
OPC.
Pasos para la configuración de la comunicación:

1. Parametrización de la interfase Industrial Ethernet de la PG:

• Ajuste el punto de acceso para la aplicación ”CP H1 1 -> TCP/IP -> Intel
r
82559 Fast Ethernet”.

• Esto se puede hacer a través de la opción Inicio -> Configuración ->


Panel de control -> Ajustar interfase PG/PC.

ATENCION: No utilice el acceso a través del administrador SIMATIC. Aquı́ no


se puede elegir el punto de acceso de la aplicación.

2. Configuración de la CP343-1 con el administrador SIMATIC

• En la configuración Hardware, se accede a las ”Propiedades de objeto”


haciendo doble click con el botón derecho del ratón sobre la CP343-1.

• Ajuste la dirección MAC y la dirección IP de la tarjeta de comunicaciones.


7 Propuesta para la implementación 59

Figura 7.1: Principio de montaje para leer los datos del control y mostrarlos en
MATLAB.
r

3. Configuración del OPC-Server con el SIMATIC NET

Arranque el ”OPC-Server” y, en el registro ”Parámetros OPC” seleccione el


protocolo S7 (Inicio -> Programas -> SIMATIC NET -> OPC-Server
-> Configuración OPC).

4. Creación del enlace con el ”OPC-Scout” de SIMATIC NET

Para comprobar si se puede acceder a los datos de la CPU con el OPC-


Server, lo más fácil es arrancar el OPC-Scout y elegir el OPC NET Server
(OPC.SimaticNET). Se crea ahora un nuevo grupo (en el ejemplo, ”mygroup”) y
se insertan dentro de él las variables a comprobar (E, A, M, DB, . . . ). Con esto,
ya se pueden visualizar en linea las variables elegidas.

5. Configuración en MATLAB
r

>> cliente=opcda(’125.125.125.70’,’OPC.SimaticNET’)
7 Propuesta para la implementación 60

Figura 7.2: Configuración de la interfase de acceso Industrial Ethernet.

>> connect(cliente)
%**********HORNOS***************
>> horno=addgroup(cliente)
>> logRate=120;
>> numRecords = 30;
>> horno.UpdateRate = logRate;
>> horno.RecordsToAcquire = numRecords;
>> horno.LoggingMode = ’disk’
>> set(horno,’LogFileName’,’prueba.txt’);
>> TB5=additem(horno,’S7:[S7 connection_5]md180’)
7 Propuesta para la implementación 61

Figura 7.3: Configuración Hardware de la CP343-1 TCP.

>> AD5=additem(horno,’S7:[S7 connection_5]md220’)


>> SP5=additem(horno,’S7:[S7 connection_5]md236’)
>> GA5=additem(horno,’S7:[S7 connection_5]md40’)
>> TB8=additem(horno,’S7:[S7 connection_8]md180’)
>> AD8=additem(horno,’S7:[S7 connection_8]md220’)
>> SP8=additem(horno,’S7:[S7 connection_8]md236’)
>> GA8=additem(horno,’S7:[S7 connection_8]md40’)
>> TB2=additem(horno,’S7:[S7 connection_2]md180’)
>> AD2=additem(horno,’S7:[S7 connection_2]md220’)
>> SP2=additem(horno,’S7:[S7 connection_2]md236’)
>> GA2=additem(horno,’S7:[S7 connection_2]md40’)
>> TB11=additem(horno,’S7:[S7 connection_11]md180’)
>> AD11=additem(horno,’S7:[S7 connection_11]md220’)
>> SP11=additem(horno,’S7:[S7 connection_11]md236’)
>> GA11=additem(horno,’S7:[S7 connection_11]md40’)
>> TB12=additem(horno,’S7:[S7 connection_12]md180’)
7 Propuesta para la implementación 62

Figura 7.4: Configuración en el SIMATIC NET OPC Server.

>> AD12=additem(horno,’S7:[S7 connection_12]md220’)


>> SP12=additem(horno,’S7:[S7 connection_12]md236’)
>> GA12=additem(horno,’S7:[S7 connection_12]md40’)
>> horno.LoggingMode=’disk&memory’

>> g=read(GA5)
>> hora=sprintf(’h%.0f’,g.TimeStamp(4))
>> minutos=sprintf(’m%.0f’,g.TimeStamp(5))
>> archivo=strcat(’hornos-’,date,hora,minutos)
>> start(horno)
>> [logIDs,Valor,logQual,logTime,logEvtTime]=getdata(horno,’double’)
>> xlswrite(archivo,Valor)
>> identopc
Capı́tulo 8

Conclusiones

En este trabajo se explica la lógica de funcionamiento del sistema de control de


temperatura actual en los hornos de retención del área de colada de CVG Venalum.
Se diseñaron modelos matemáticos de los hornos de retención usando métodos de
identificación en lazo abierto y lazo cerrado. Se evidencia que el sistema (horno de
retención) posee un integrador.
Se presentaron dos propuestas de mejora de los sistemas de control actuales:
En la primera propuesta se hicieron varios cambios de la ganancia del
controlador proporcional P del horno 8; y se hicieron simulaciones para validar cada
cambio. Se concluyó que los valores deberı́an disminuirse (preferiblemente entre K = 1
y K = 3). En la práctica se hicieron pruebas para valores inferiores (ganancias K = 7
y K = 5) al valor original (ganancia K = 10.5) con resultados satisfactorios. Esta
propuesta se implementó en los hornos 8, 2 y 11.
En la segunda propuesta se diseñó un controlador de cambio automático de los
parámetros de control, el cual realiza el cálculo de los mismos en base a: datos obtenidos
por medio de una comunicación OPC, un modelo calculado por el método de mı́nimos
cuadrados recursivo y condiciones de sobredisparo y tiempo de asentamiento deseados.
Se hizo una propuesta de implementación usando los programas OPC Simatic Net y
OPC Toolbox de Matlab. La implementación propuesta está basada en comunicación
vı́a Ethernet.
Bibliografı́a

Aguado, A. & Campos, A. (1982), Control de un manipulador de dos grados de


libertad mediante un pid autoajustable por asignación de polos, Technical report,
Departamento de Control Automático, ICIMAF.

Aluminio (2005), Disponible en Intranet http://www.venalum.com.ve/showroom.

de Klerk, E. (2004), ‘A laboratory experiment to teach closep-loop system


identification’, IEEE Transactions on Education 47(2), 276–283.

El bus OPC (n.d.), Disponible en http://es.wikipedia.org/wiki/OPC.

Iserman, R. (1980), ‘Practical aspects of process identification’, Automática 16, 575–


587.

Kuo, B. (1996), Sistemas de control automático, 7a edn, Prentice-Hall


Hispanoamericana.

Lischinsky, P. (2004), ‘Introducción al modelado de sistemas fı́sicos’, Disponible en


http://webdelprofesor.ula.ve/ingenieria/pablo/download/Guia intro mod.pdf.

Mathworks (2004), OPC Toolbox for use with Matlab


r and Simulink:
r User’s Guide,
2.0.2 edn, The MathWorks, Inc., MATLAB 7.

Mazzone, V. (2002), Controladores pid, Technical report, Automatización y Control


Industrial-Universidad Nacional de Quilmes, Control Automático I.

Márquez, W. (2004), Practica de trabajo: recepción, distribución y preparación de


metal, Gerencia de Colada, CVG Venalum, Matanzas, Edo. Bolı́var - Venezuela.
BIBLIOGRAFÍA 65

Ogata, K. (1998), Ingenierı́a de Control Moderna, 3a edn, Prentice-Hall


Hispanoamericana.

Siemens-AG (1996), Software estándar para S7-300/400 PID Control (Regulación


PID), Simatic, Disponible en los documentos del software Step 7.

Siemens-AG (2004), Acceso estandarizado a datos del proceso: descripción


abreviada, Simatic, Republica Federal de Alemania, Disponible en
http://www2.automation.siemens.com/simatic/html78/x7-soft/prdbrief/opc s.pdf.
Apéndice A

Programa de identificación

%CONDICIONES INICIALES
%***************************************************************
>> z=[u1 y1 u2 y2]; %vector de entradas "u" y salidas "y"
>> par=[8.973 1 0.6696 -5.574e-7]; %cond inic de los valores a estimar
>> coe=1; %coeficiente de olvido exponencial 0-1
>> co=200;
>> C=[co 0 0 0; 0 co 0 0; 0 0 co 0; 0 0 0 co];
>> zT=transpose(z);

%ALGORITMO MINIMOS CUADRADOS RECURSIVO


%***************************************************************
>> g=z(1,:)*C;
>> alfa=sqrt(coe*coe+g*zT(:,1));
>> alfa2=alfa*alfa;
>> e=y(1)-z(1,:)*transpose(par);
>> for k=2:numRecords-numRecords/5
>> par=par+(1/alfa2)*g*e;
>> C=(C-((transpose(g)*g)/alfa2))/2;
>> g=z(k,:)*C;
>> alfa=sqrt(coe*coe+g(1,:)*zT(:,k));
>> alfa2=alfa*alfa;
A Programa de identificación 67

>> e=y(k)-z(k,:)*transpose(par);
>> end

%VALIDACIÓN DEL MODELO


%*********************************************
>> er=0
>> for q=1:numRecords/5
>> sal(q,1)=par(1)*u1(k+q)+par(3)*u2(k+q)+par(2)*y1(k+q)+par(4)*y2(k+q)
>> sal(q,2)=y(k+q)
>> er=(er+sal(q,2)-sal(q,1))/q
>> end

%CAMBIO DE SET POINT Y VALORES PARA VALIDACIÓN


%**********************************************
>> tix = logTime;
>> Tix = Valor(:,5);
>> adix = Valor(:,6);
>> refix = Valor(:,7);

%ESTABILIDAD
%***********************************************
>> num=[par(1) par(3)]
>> den=[1 -par(2) -par(4)]
>> sys=tf(num,den,logRate)
>> [g f wg wf]=margin(sys)
>> mg=20*log10(g)
>> margin(sys)

>> if f < 0
>> fprintf(’el modelo es inestable \n’)
>> end
A Programa de identificación 68

>> if abs(er) > 5


>> fprintf(’el modelo no se adapta al comportamiento del horno 8\n’);
>> identopc11
>> else
>> controlopc8
>> end
Apéndice B

Programa de control

%****************************************************
>> T=logRate % Perı́odo

%****************************************************
%calculo de sita con Mp (sobredisparo) que se introdujo por pantalla
>> Mp=input(’Mp = ’)
>> sd=Mp/100
>> ln2=log(sd)*log(sd)
>> sita=sqrt(ln2/(pi*pi+ln2))

%****************************************************
%calculo de wn con ts que se introdujo por pantalla
>> tsin=input(’ts = ’)
>> ts=tsin*60
>> if sita <= 0.69
>> if sita > 0
>> wn=3.2/(sita*ts)
>> end
>> elseif sita > 0.69
>> wn=(4.5*sita)/ts
B Programa de control 70

>> end

%"PD" POR ASIGNACIÓN DE POLOS


%****************************************************
>> numclc=[wn*wn]
>> denps=[1 10*sita*wn]
>> denpc=[1 2*sita*wn wn*wn]
>> denclc=conv(denps,denpc)
>> fprintf(’SC’)
>> syscd=tf(numclc,denclc)
>> fprintf(’SD sysdd’)
>> sysdd=c2d(syscd,T)
>> numz=sysdd.num{1,1};
>> pcz=sysdd.den{1,1};
>> b1=par(1);
>> b2=par(3);
>> a1=par(2);
>> a2=par(4);
>> N0=(pcz(3)-(b1/b2)*pcz(4)+(a1-(b1/b2)*a1)*pcz(2)-(a1*a2*b1)
/b2+a2+a1*a1)/(b2-(b1*b1*a2)/b2+b1*a1);
>> N1=(1/b2)*(pcz(4)+(pcz(2)-N0*b1+a1)*a2);
>> D1=pcz(2)-N0*b1+a1;
>> ACTUAL8=Valor(1,8)

% PARÁMETROS DEL CONTROLADOR


>> GAIN=N1/D1
>> D_F=N0/GAIN-1
>> TD=D_F/4 % Especificación en plc

>> if D_F > GAIN/2


>> D_F=0
B Programa de control 71

>> end

>> if GAIN > 10


>> GAIN = 10
>> end

>> if GAIN <= 0.5


>> fprintf(’no existen valores lógicos de ganancia para el horno 8 \n’)
>> else
>> KCALC8=GAIN
>> write(GA8,GAIN)
>> end

>> adquirir

También podría gustarte