You are on page 1of 113

Automatización de Procesos Industriales

Ingeniero de Organización. Curso 1o

Jose Mari González de Durana


Dpto. I.S.A., EUITI e ITT - UPV/EHU
Vitoria-Gasteiz

Febrero 2004
2
Indice

1 Introducción 7
1.1 Perspectiva histórica . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 La empresa productiva . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.1 El proceso productivo . . . . . . . . . . . . . . . . . . . . . . 11
1.2.2 Operaciones básicas de fabricación . . . . . . . . . . . . . . . 12
1.2.3 Tipos de procesos . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.4 Ubicación de los procesos . . . . . . . . . . . . . . . . . . . . . 15
1.3 El proceso en feedback . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.1 El regulador de Watt . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.2 Esquema de regulación en feedback . . . . . . . . . . . . . . . 17
1.3.3 El significado del control . . . . . . . . . . . . . . . . . . . . . 18
1.3.4 El control en la empresa . . . . . . . . . . . . . . . . . . . . . 19
1.4 La automatización industrial . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.1 Técnicas de control . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.2 Estructuras de automatización . . . . . . . . . . . . . . . . . . 20
1.4.3 Ventajas e inconvenientes de la automatización . . . . . . . . 22
1.4.4 Elementos de la automatización . . . . . . . . . . . . . . . . . 23
1.5 Modelos matemáticos de sistemas . . . . . . . . . . . . . . . . . . . . 24
1.6 Modelado y simulación de sistemas complejos . . . . . . . . . . . . . 25
1.6.1 Importancia del modelado . . . . . . . . . . . . . . . . . . . . 25
1.7 Estructura del curso . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.7.1 Control de procesos continuos . . . . . . . . . . . . . . . . . . 30
1.7.2 Control de procesos de eventos discretos . . . . . . . . . . . . 30
1.7.3 Automatización local . . . . . . . . . . . . . . . . . . . . . . . 30
1.7.4 Automatización global . . . . . . . . . . . . . . . . . . . . . . 31

I Control de procesos continuos 33


2 Diseño de Controladores 35
2.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.2 Tipos de controladores . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.2.1 Controlador tipo proporcional P . . . . . . . . . . . . . . . . . 36
2.2.2 Controlador tipo integrador . . . . . . . . . . . . . . . . . . . 37
2.2.3 Controlador tipo derivativo D . . . . . . . . . . . . . . . . . . 37

3
4 INDICE

2.2.4 Controladores PID . . . . . . . . . . . . . . . . . . . . . . . . 38


2.2.5 Controladores de adelanto y de retraso de fase . . . . . . . . . 39
2.3 Métodos de diseño basados en el lugar de las raı́ces . . . . . . . . . . 41
2.3.1 Diseño de una red de adelanto de fase . . . . . . . . . . . . . . 43
2.3.2 Diseño de un controlador PID . . . . . . . . . . . . . . . . . . 45
2.4 Diseño en el Lugar de las Raı́ces . . . . . . . . . . . . . . . . . . . . . 46
2.4.1 Compensador de adelanto de fase . . . . . . . . . . . . . . . . 47
2.4.2 Consideraciones de diseño . . . . . . . . . . . . . . . . . . . . 52
2.4.3 Re-diseño. Compensador en serie . . . . . . . . . . . . . . . . 54
2.4.4 Compensador en realimentación . . . . . . . . . . . . . . . . . 54
2.4.5 Compensador de retraso de fase en serie . . . . . . . . . . . . 56
2.4.6 Máxima fase de un controlador de adelanto . . . . . . . . . . . 56
2.5 Diseño en la respuesta de frecuencia . . . . . . . . . . . . . . . . . . . 60
2.5.1 El problema del diseño de feedback . . . . . . . . . . . . . . . 61
2.6 Diseño en el Espacio de Estado . . . . . . . . . . . . . . . . . . . . . 63
2.6.1 Asignación de polos . . . . . . . . . . . . . . . . . . . . . . . . 64
2.7 Sintonı́a de controladores PID . . . . . . . . . . . . . . . . . . . . . . 64
2.7.1 Ajuste de los parámetros del PID . . . . . . . . . . . . . . . . 67

II Control de procesos de eventos discretos 69


3 Sistemas booleanos 71
3.1 Dispositivos lógicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.2 Algebra de Boole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.2.1 Funciones booleanas . . . . . . . . . . . . . . . . . . . . . . . 74
3.2.2 Simplificación de funciones booleanas . . . . . . . . . . . . . . 76
3.3 Sistemas combinacionales . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.4 Sistemas secuenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
3.5 Máquinas de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
3.5.1 Autómata de Mealy . . . . . . . . . . . . . . . . . . . . . . . . 85
3.5.2 Autómata de Moore . . . . . . . . . . . . . . . . . . . . . . . 85
3.5.3 Tablas de estado . . . . . . . . . . . . . . . . . . . . . . . . . 86
3.5.4 Diagramas de estado . . . . . . . . . . . . . . . . . . . . . . . 87
3.5.5 Dispositivos biestables . . . . . . . . . . . . . . . . . . . . . . 87

4 Sistemas reactivos 89
4.1 Modelos de sistemas productivos . . . . . . . . . . . . . . . . . . . . . 90
4.2 Grafcet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.2.1 Reglas de funcionamiento . . . . . . . . . . . . . . . . . . . . 93
4.2.2 Estructuras básicas . . . . . . . . . . . . . . . . . . . . . . . . 94
4.2.3 Posibilidades avanzadas . . . . . . . . . . . . . . . . . . . . . 95
4.2.4 Jerarquı́a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.2.5 Comunicación . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.3 Cartas de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
INDICE 5

4.3.1 Stateflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.4 Creación de un modelo con Stateflow–Simulink . . . . . . . . . . . . . 97
4.4.1 Elementos de una carta de estado . . . . . . . . . . . . . . . . 98

III Automatización Local 103


5 Automatismos 105

6 Automatismos eléctricos 107


6.1 El relé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.2 Funciones lógicas con relés . . . . . . . . . . . . . . . . . . . . . . . . 108
6.2.1 Función lógica identidad . . . . . . . . . . . . . . . . . . . . . 108
6.2.2 Función lógica negación . . . . . . . . . . . . . . . . . . . . . 108
6.2.3 Función lógica AND . . . . . . . . . . . . . . . . . . . . . . . 108
6.2.4 Función lógica NAND . . . . . . . . . . . . . . . . . . . . . . 108

7 Autómatas programables 111


6 INDICE
Capı́tulo 1

Introducción

La Automatización se compone de todas las teorı́as y tecnologı́as encaminadas de


alguna forma a sustituir el trabajo del hombre por el de la máquina. En este
capı́tulo daremos unas ideas muy generales sobre esta área, tan amplia y compleja,
y posteriormente las desarrollaremos a lo largo del curso.
Conceptualmente, la automatización se basa en una reiterada aplicación del me-
canismo de feedback y, por ello, está en ese sentido relacionada con las Teorı́as de
Control y de Sistemas. En cuanto a su aspecto tecnológico, puede decirse que siem-
pre ha estado “a la última”, adoptando en cada momento histórico los más recientes
avances.
Siendo nuestro objetivo automatizar ciertos procesos, parece claro que primero
hemos saber cómo funcionan esos procesos. Como veremos, el tipo de automa-
tización a implantar depende del tipo de porceso a automatizar: no da lo mismo
automatizar un proceso continuo que un proceso gobernado por eventos. Debido a la
gran cantidad de procesos distintos que funcionan actualmente, consideraremos sólo
los más importantes desde el punto de de la automatización, y obtendremos modelos
con sus caracterı́sticas esenciales. Los procesos y modelos que iremos estudiando en
capı́tulos posteriores son:

• Procesos continuos (tiempo continuo y/o discreto)

• Procesos comandados por eventos

• Procesos de fabricación

Aparte de las explicaciones dadas en clase sobre los procesos industriales y de su


estudio, puede ser un complemento interesante su observación real, in situ, realizando
visitas a algunas empresas.
Pero no es suficiente con aprender a automatizar cada proceso. En una moderna
factorı́a todos los procesos están conectados entre sı́ y desde la gestión de la empresa
se pueden controlar y supervisar algunos o todos los procesos, a través de redes
locales y buses de comunicación. También pueden estar en conexión los diferentes
departamentos de la empresa, e incluso empresas diferentes a través de redes propias
o de Internet. Es por ello interesante describir cada proceso como inscrito en el marco

7
8 CAPÍTULO 1. INTRODUCCIÓN

jerárquico que representa la estructura completa de la empresa. En este marco, las


redes locales y los buses de comunicación cobran especial interés.

1.1 Perspectiva histórica


Se cree que cuando el homo sapiens dominó el fuego, comenzó a usarlo como elemen-
to calefactor y para condimentar alimentos. Tuvo que pasar mucho tiempo, hasta la
Edad del Bronce, para que lo empleara en la obtención de metales y en la cerámica
dando ası́ lugar a los que podrı́amos llamar primeros procesos de fabricación de la
historia.
Pero el fuego no ha sido la única fuente de energı́a de la antigüedad. Hacia el año
2000 a. de J.C. se utiliza por primera vez la energı́a eólica para mover embarcaciones
dotadas de velas y, hacia el 1000 a. de J.C., los fenicios atravesaban el Mediterráneo
con sus navı́os. Más tarde, sobre el 50 a. de J.C., los Romanos empiezan a utilizar
la energı́a hidráulica para la extracción de agua por medio de la noria. Durante la
edad media se utilizó mucho, en prácticamente toda Europa, la energı́a generada
por los molinos de viento.
La invención de la máquina de vapor por James Watt hacia 1750 es el aconte-
cimiento que marca el inicio de la Revolución Industrial, que dura hasta finales de
siglo. Las tecnologı́as productivas nacen en ese momento: la maquina de vapor se
emplea rápidamente para mover las bombas de extracción de agua en las minas de
carbón de Gales y en la automatización de los telares en Manchester.
Durante este perı́odo, con las de máquinas de vapor y luego con las de com-
bustión interna y los motores eléctricos, se van produciendo cambios progresivos
en los procesos de producción. Las máquinas herramienta ganan potencia y preci-
sión, lo que a su vez permite fabricar productos de mayor calidad. Surgen ası́ los
primeros talleres mecánicos que producen máquinas algunas de las cuales llevan ya
rudimentarios sistemas de control.
En el siglo XX, aunque ya no se denomine asi, continúa la revolución industrial
con un desenfrenado avance tecnológico y cientı́fico. La evolución de la técnica es
permanente, con una sucesión interminable de inventos y aplicaciones, muchos de
los cuales (pensemos sin ir más lejos en el automóvil y en los electrodomésticos) se
han convertido en herramientas básicas para hombre actual.
Todo este desarrollo ha sido consecuencia de una premisa fundamental: la exis-
tencia de fuentes de energı́a inagotables y baratas. Pero su veracidad se ha puesto
en entredicho con la crisis del petróleo iniciada en las últimas décadas del siglo XX.
Los sistemas productivos no han sido ajenos a todos estos avances. La empresa,
motor del desarrollo del sector privado e incluso del sector público, se ve obligada
casi siempre a incorporar las últimas tecnologı́as en sus procesos o de lo contrario
corre el peligro que quedar rápidamente obsoleta.
Algunas teorı́as, tecnologı́as y áreas tecnológicas cuyo avance ha favorecido la
evolución de los procesos productivos son las siguientes:

• Teorı́as
1.1. PERSPECTIVA HISTÓRICA 9

– Teorı́as de Control y de Sistemas


– Teorı́a de la señal
– Sistemas de eventos discretos
– Máquinas de estado
– Redes de Petri
– Gráficos etapa-transición (grafcet)
– Cartas de estado (statechart)

• Tecnologı́as

– Neumática
– Hidráulica
– Electrónica
– Microprocesadores
– Ordenadores
– Autómatas programables
– Robótica
– Comunicaciones
– Desarrollo del software

• Areas tecnológicas

– Automatización de las máquinas-herramienta


– Control de procesos por computador
– Diseño asistido por computador (CAD)
– Fabricación asistida por computador (CAM)
– Fabricación integral por computador (CIM)
– Control de procesos distribuı́do
– Células flexibles de mecanizado y de montaje

Cabe aquı́ decir que el crecimiento de Robótica no ha sido tán rápido como
vaticinaban ciertas predicciones realizadas en los primeros años de la década de los
80. Quizás esto se deba a la carestı́a de los equipos y a la no tan evidente importancia
de su flexibilidad como en principio se creı́a: si un robot va a hacer siempre la misma
tarea, resulta más económico utilizar otro sistema menos flexible y más especializado.
Por ello, en tareas repetitivas que no requieren mucha precisión resulta aconsejable
utilizar manipuladores (neumáticos por ejemplo) en vez de robots. En otras tareas
más complejas (tales como la soldadura por laser) que precisan el seguimiento de
trayectorias complejas, sı́ que el robot sigue siendo insustituible.
10 CAPÍTULO 1. INTRODUCCIÓN

1.2 La empresa productiva


Una empresa productiva es un ente socioeconómico capaz de adecuar parcialmente
dos flujos esenciales que concurren en el mercado: producción y consumo. Por un
lado, por medio de estudios de mercado, determina las necesidades del consumidor
y le transfiere los productos que demanda y, por otro, produce los productos que le
va a trasferir. [3, p.3]. Hay otras empresas, de servicios, en las que los productos
se sustituyen por servicios. Ası́ que toda empresa puede considerarse como formada
por dos subsistemas, uno de los cuales se encarga de medir las necesidades de los
consumidores y de trasferirles los productos que las satisfagan y el otro que se
encarga de la producción. La empresa es, por tanto, un elemento productivo en el
mercado pero puede verse también como elemento consumidor (de materias primas)
en el mismo.
La empresa se articula en departamentos o secciones de los que los más impor-
tantes tradicionalmente vienen siendo los siguientes:

• Finanzas

• Gestión

• Compras

• Almacén de materias primas

• Producción

• Almacén de productos terminados

• Ventas

Todos estos departamentos no son, ni mucho menos, los únicos existentes sino
que a su vez se articulan en otros departamentos y secciones que en función del
tamaño de la empresa esa pueden ser de mayor o menor complejidad. Los nombres
pueden cambiar según sea el contexto en que se enmarque o se estudie la empresa.
La actividad de la empresa se puede representar por medio de un diagrama de
bloques en el que los bloques son los procesos y las flechas son los flujos de entrada
y salida de cada proceso. En la figura se han representado los principales bloques y
flujos de la empresa. Los flujos que las flechas representan son:

=⇒ flujos de producto

−→ flujos de capital

· · · . flujos de control (órdenes y medidas)

Obsérvese que todos los bloques reciben flechas (órdenes) del bloque de gestión
y envı́an flechas (medidas) al mismo. El bloque de gestión es el más importante en
el sentido de que controla a todos los demás.
1.2. LA EMPRESA PRODUCTIVA 11

Almacén de Producción Almacén de


materias primas productos terminados

Gestión

Compras Finanzas Ventas

MERCADO

Figura 1.1: Esquema de la empresa productiva

El diagrama de bloques puede dividirse en dos partes. La parte superior que se


encarga de la generación del producto (gestión de producción) y la parte inferior
que se encarga llevar el producto al mercado y de obtener el beneficio (gestión de
mercado o mercadotecnia).
Cada uno de estos bloques se subdivide a su vez de otros bloques, subprocesos,
con sus flujos asociados.
El objetivo de la empresa es maximizar el beneficio.

1.2.1 El proceso productivo


Un proceso productivo es una serie de operaciones que se realizan sobre unas ma-
terias primas (o productos más elementales) para obtener un producto terminado,
listo para su utilización.
Una definición descriptiva de proceso productivo puede resultar muy complicada,
puesto que hay muchas clases de procesos, siendo en cambio más sencillo dar una
definición de tipo “entrada-salida”:
Un proceso productivo es un sistema dinámico de control cuya entrada es un flujo
de producto (materias primas) y cuya salida es otro flujo de productos (productos
terminados).

Materias primas- Proceso Productos terminados-


productivo
12 CAPÍTULO 1. INTRODUCCIÓN

Con una definición ası́ perdemos toda noción de lo que sucede por dentro del
proceso pero en cambio capturamos lo esencial desde el punto de vista productivo:
flujos de producto de entrada y de salida (flechas) y cómo se relacionan entre sı́
(bloque). Sin embargo el bloque o “función” que relacona ambos flujos no es simple
sino que es un complejo sistema movido por eventos.
Un proceso productivo se compone internamente de diferentes subprocesos más
simples conectados entre sı́, cada uno de los cuales se puede considerar tembién
como un sistema dinámico de control o proceso. Por tanto, hemos de tener una
idea de cuales son y cómo funcionan (o sea cuales son sus modelos matemáticos) los
sistemas de control o procesos más simples porque de ese modo podremos entender
después cómo funcionan los procesos de fabricación.
Los procesos productivos están catalogados como sistemas complejos en la Teorı́a
de Sistemas. La complejidad surge de la interconexión de unos procesos con otros
y de la naturaleza estocástica de muchos de los eventos que dirigen la evolución del
sistema. Cada proceso está conectado con otros procesos internos y externos a la
empresa, que pueden ser de muy distinta naturaleza y, en general, se compone de
subprocesos más simples interrelacionados entre si.

Materia prima - Producto terminado-


Proceso

Cada proceso productivo va asociado a un producto. Si queremos fabricar otro


producto deberemos cambiar el proceso. Sin embargo, para un producto terminado
dado y para la misma materia prima, el proceso puede no ser único: en general, un
mismo producto se puede fabricar de muchas formas diferentes.

1.2.2 Operaciones básicas de fabricación


Los procesos de fabricación más simples se llaman operaciones básicas. Algunas de
ellas son:
• Procesado de un elemento
• Montaje
• Movimiento de material
• Almacenamiento
• Inspección y control

Procesado de un elemento
Es un proceso que se aplica a un solo producto, bien sea una pieza elemental o bien
un conjunto de piezas ya montado. Son de este tipo los procesos de mecanizado, los
de pintura, los tratamientos térmicos, etc.

Materia prima - Pieza -


Mecanizado
1.2. LA EMPRESA PRODUCTIVA 13

Proceso de montaje

Cuando un producto (terminado o no) se compone de varios elementos, la serie de


operaciones necesarias para unir todas las piezas formando el producto terminado
se llama proceso de montaje.

Mat. prima 1- Pieza 1-


Mecanizado 1

Montaje Producto-
Mat. prima 2- Pieza 2-
Mecanizado 2

1.2.3 Tipos de procesos


Si en nuestro hogar echamos una mirada a nuestro alrededor y observamos los objetos
que nos rodean, veremos que la gran mayorı́a de ellos son el resultado o producto
de algún proceso de fabricación y nos daremos cuenta que deben existen multitud
de ellos. Incluso, con un poco de imaginación y ciertos conocimientos técnicos,
podemos adivinar cual ha sido el proceso para fabricar un determinado producto o,
mejor dicho, los posibles procesos, ya que también nos daremos cuenta enseguida
de que hay muchas formas de fabricar el mismo producto. Ahora bien, tras muchos
años de experiencia, se han afianzado cuatro tipos estándar de procesos:

• Job Shops

• Producción por lotes

• Lı́neas de producción

• Producción continua

Job Shops

Es un tipo de producción que permite fabricar una amplia gama de productos en


series de tamaño pequeño o mediano. Los productos suelen ser conjuntos de compo-
nentes, posiblemente complicados o de alta tecnologı́a, montados. Se utiliza para la
fabricación de ciertas máquinas herramientas, robots, aviones, aeronaves y algunos
prototipos. Suelen exigir mano de obra muy especializada y mucho tiempo para el
diseño de los procesos y para la preparación de la maquinaria y los equipos huma-
nos de montaje. Por todo ello, los tiempos de producción son elevados y los costes
también.
14 CAPÍTULO 1. INTRODUCCIÓN

Producción por lotes


Está orientada a la fabricación de lotes de tamaño medio de un determinado produc-
to. La producción de cada lote se hace de una tirada y, una vez terminado un lote,
el departamento de fabricación envı́a una orden de control indicando si se puede
pasar a fabricar otro lote del mismo o de otro producto, en función de la demanda.
La maquinaria y el personal han de estar preparados para realizar con celeridad
las operaciones de cambio de lote.
Es quizás el tipo de producción que se emplea para fabricar mayor número de pro-
ductos. Las industrias de calzado, muebles, electrodoméstcos, máquina-herramienta
y otras muchas, lo utilizan.

Lı́neas de producción
Estos procesos son el resultado de la evolución de la producción en cadena, ideada
por Henry Ford. Se utiliza para producir grandes series de unos pocos productos,
que suelen estar formados mediante el montaje de piezas. El producto se desplaza
colocado en cintas trasportadoras, en carros o en otros elementos de transporte y
va pasando por estaciones de trabajo en cada una de las cuales se le aplica un
determinado proceso.
Si en una planta se utilizan varias lineas de producción, los productos pueden
pasar de una lı́nea a otra, existiendo muchas configuraciones posibiles, asi como dife-
rentes métodos y mecanismos de transferencia. Se suenen utilizar zonas o recipientes
a modo de pequeños almacenes, para el almacenamiento intermedio de productos
semielaborados, y alimentadores de piezas para los procesos.
Básicamente hay dos tipos de lı́neas: lı́neas de proceso y lı́neas de montaje. En
las primeras, un producto o materia prima va pasando por distintos procesos que
lo van transformando hasta llegar al producto final. Un ejemplo lo tenemos en el
mecanizado de piezas. Las lı́neas de montaje se utilizan para fabricar productos
formados por conjuntos de piezas montados.
Quizás sea la fabricación de automóviles el ejemplo más tı́pico de este tipo de
producción. Se fabrican grandes series de unos pocos modelos. Otros ejemplos son
la fabricación de ciertos productos de gran consumo como neumáticos, bombillas,
bicicletas, envases de plástico, etc.
En este tipo de fabricación se diseña toda la factorı́a en función del producto
a fabricar, por lo que un cambio de producto suele exigir el cierre de aquella o, al
menos, una completa remodelación de la misma.

Producción continua
Es el tipo indicado cuando se desea producir pocos productos, de naturaleza simple
(no compuestos de muchas piezas) y en grandes cantidades. Se puede ver como un
flujo continuo de producto sobre el que se van realizando una serie de operaciones
o procesos. Por un lado entra la materia prima y por otro sale el producto final
(figura 1.2).
1.2. LA EMPRESA PRODUCTIVA 15

Materia prima Producto final


Proceso 1 Proceso 2 Proceso 3

Figura 1.2: Proceso de producción continua

Este tipo de producción se aplica sobre todo en las industrias quı́micas, petro-
quı́micas, textiles, de plástico y de laminación de acero.

1.2.4 Ubicación de los procesos


La disposición de los procesos dentro de la planta de producción es importante por-
que de ella dependen muchos factores del proceso de producción asi como la comodi-
dad del personal, los cableados de alimentación y buses de comunicaciones, etc. Los
programas simulación (estocástica) de procesos pueden ayudar mucho en el diseño
de la distribución en planta. Tradicionalmente se consideran cuatro posibilidades de
ubicación

• Producto en posición fija

• Por clases de procesos

• En flujo de producto

• Por tecnologı́a de grupo

Producto en posición fija


Cuando el producto es muy grande, muy pesado o, por alguna otra razón, no debe
moverse, hay que ubicar las herramientas y los otros equipos de fabricación en la
zona más idónea para, en su momento, incidir en el producto. A veces se precisa
realizar obras e instalaciones especiales para poner todo en una buena disposición.
Es la disposición más indicada en las industrias naval y aeronáutica.

Por clases de procesos


Las máquinas de producción se ubican en zonas o locales de la factorı́a por clases
de procesos. En cada zona o local sólo se realiza un proceso. Es una distribución
que se implanta mucho para procesos de mecanizado de piezas: la misma pieza va
pasando por las distintas zonas hasta finalizar su mecanizado.
Resulta un tipo de fabricación muy flexible puesto que se puede cambiar el
proceso simplemente añadiendo o quitando ciertas máquinas.

En flujo de producto
Los elementos que intervienen en la producción se disponen a lo largo del flujo de
producto. Por ejemplo, a lo largo de una lı́nea de montaje en una fabricación de
16 CAPÍTULO 1. INTRODUCCIÓN

lı́neas dedicadas o a lo largo del flujo de producto una producción continua. No es


fácil hacer cambios en el proceso.

Por tecnologı́a de grupo


Esta distribución está indicada para factorı́as con gran diversidad de productos y
pretende ser una combinación de las dos anteriores. Se basa en clasificar en familias
las piezas a fabricar (sin importar el producto en el que irán montadas) por su
semejanza en su diseño y fabricación. Con esto se puede conseguir organizar la
producción en dos partes: 1) por clases de procesos, (que fabricarı́a las familias de
piezas) y 2) en flujo de producto (que fabricarı́a el resto de las piezas y harı́a los
montajes pertinentes).

1.3 El proceso en feedback


La realimentación o feedback es el artificio básico del control. Aunque suponemos
que el tema es ya conocido por el lector, creemos conveniente recapacitar sobre
su funcionamiento, por ser básico para muchas de las partes que se tratarán más
adelante. Lo haremos (por razones históricas) a partir del primer mecanismo que lo
incorporó: el governor de Watt.

1.3.1 El regulador de Watt


Aunque se conocen algunas aplicaciones de aparatos que funcionaban siguiendo el
principio de la realimentación y que datan de épocas muy antiguas, se puede decir
que el primer sistema de control industrial de la historia fué el regulador (governor )
inventado (o al menos adaptado) por James Watt hacia 1788 para su máquina de
vapor. Veamos, a modo ilustrativo, su esquema. En la figura aparece la pieza
quizás mas importante que suele llamarse “regulador de bolas” y que ejerce a la vez
captador, regulador y actuador.
ω(t) El operador o maquinista controla la posición
C xC del punto superior del cuadrilátero articu-
lado fijando ası́ la consigna de velocidad ωref .
El eje dibujado está unido al eje de rotación
de la máquina de vapor. Si la velocidad ω(t)
B de ésta aumenta, entonces, debido a la fuerza
centrı́fuga, las bolas B se separan y el vértice
inferior A del cuadrilátero articulado, móvil,
actúa cerrando la válvula de salida de vapor
A de la caldera. Se establece ası́ un proceso en
Actuador
válvula “feedback” que se puede explicar con el dia-
x grama de bloques siguiente. El regulador de
bolas hace las funciones del punto de suma y
de los bloques captador y actuador.
1.3. EL PROCESO EN FEEDBACK 17

xC - m  - x- p- r ω(s)-
+ Controlador Válvula Máquina
(ωref )
− 6

Captador 

La tarea que realiza este controlador es simple y efectiva: el controlador abre


o cierra la la válvula en función de la diferencia e entre la medida xA de la salida
(variable controlada) y la entrada xC (referencia). Si e es cero entonces la medida
de la salida es igual a la referencia, es decir, el valor de la variable controlada es el
deseado y la salida del actuador es cero (no actúa); en caso contrario el controlador
moverá la válvula en sentido de apertura o de cierre, dependiendo de que el valor e
sea positivo o negativo. Es fácil acoplar mecánicamente el punto A a la válvula de
modo que esta se abra si e > 0.
De este modo se consigue que la velocidad de rotación ω(t) del eje de la máquina
se mantenga más o menos constante, incluso aunque se produzcan variaciones en la
potencia entregada o en la presión p de la caldera.

1.3.2 Esquema de regulación en feedback


El artificio que hace funcionar al regulador de Watt es la realimentación o feedback.
Una vez entendamos cómo funciona podremos comprobar, quizás con asombro, que
no sólo puede aplicarse a la máquina de vapor sino que puede servir de base para
controlar otros sistemas fı́sicos de muy diferente naturaleza tales como sistemas
económicos y sistemas productivos. Además, la realimentación aparece a veces como
un componente básico en muchos procesos de la Naturaleza, incluso en los seres
vivos.
D(s)

Yref - m(s)- X(s)


- A U (s)
?V (s)
- +m r Y (s)-
+ C - P
Ym (s)
− 6

M 

Figura 1.3: Esquema de regulación en feedback

Los elementos esenciales que aparecen en el regulador de Watt y que configuran


todo mecanismo de control con realimentación (figura 1.3) son los siguientes:
y
ref
−→ Entrada de referencia o de consigna
d(t)
−→ Entrada perturbadora
y(t)
−→ Salida
18 CAPÍTULO 1. INTRODUCCIÓN

C Controlador. Es el dispositivo que toma la diferencia (t) entre la entrada


de referencia yref y la medida ym (t) de la respuesta, la procesa y, como re-
sultado del proceso, envı́a estı́mulos x(t) sobre el actuador. Realmente es un
procesador de señal.

A Actuador. Actúa, con la potencia necesaria, sobre la planta.

P Planta o Proceso: es el sistema a controlar (la máquina de vapor en el regulador


de Watt).

M Medidor. Es un aparato para medir, normalmente en forma eléctrica, el valor


de la salida y(t).

La idea del control es simple: con la entrada de referencia yref el operador fija el
valor deseado para la variable de salida y(t) (a controlar); el controlador recibe en
su entrada la diferencia (t) entre la entrada yref de referencia y la medida ym (t) de
dicha salida en un instante t1 , de modo que si esa diferencia es positiva (ym < yref )
entonces, tras el proceso de la señal (t), enviará estı́mulos x(t) al actuador para
que éste ejerza una acción u(t) sobre la planta con el fin de que el valor de la salida
y(t) vaya aumentando para t > t1 . Cuando en otro instante t2 > t1 la diferencia e
sea negativa, la acción del controlador será la inversa, es decir, ejercerá una acción
u(t) sobre la planta tal que el valor de la salida y(t) vaya disminuyendo para t > t2 .
En adecuadas condiciones, si el controlador se diseña correctamente, es posible
conseguir que el valor de la salida se mantenga, más o menos, igual al valor de la
entrada de referencia incluso en presencia de la perturbación d(t).

1.3.3 El significado del control


Controlar un sistema dinámico significa conducirlo, llevarlo, gobernarlo o comardar-
lo, de tal manera que su trayectoria o evolución en el tiempo se aproxime a una
fijada de antemano, mediante la actuación sobre unos elementos del sistema lla-
mados controles. Ası́, un chófer controla la trayectoria de un vehı́culo girando el
volante, pisando el acelerador y los frenos y moviendo el cambio de marchas. De
forma más imprecisa, el gobierno de una nación dispone de ciertos controles, como
los salarios, los impuestos, el valor de la moneda, etc., para controlar la evolución
de la tasa de inflación.
La Teorı́a de Control estudia los sistemas que son de algún modo controlables
ası́ como los problemas relacionados con este control.
Un sistema de control es una entidad u objeto provisto de unos terminales de
entrada (controles), por los cuales puede recibir estı́mulos, y otros de salida, por de
que emite su respuesta. Esta definición permite representar gráficamente un sistema
de control como una caja negra o bloque con flechas de entrada y de salida. La figura
1.4 representa un sistema monovariable, es decir, con una entrada y una salida.
El sistema objeto de control suele denominarse Planta o Proceso, de acuerdo con
sus aplicaciones en ingenierı́a.
1.4. LA AUTOMATIZACIÓN INDUSTRIAL 19

Entrada- Salida -
Bloque

Figura 1.4: Sistema

1.3.4 El control en la empresa


El esquema de regulación en feedback es aplicable a muchos de los procesos de la
empresa, dando lugar a diferentes clases de control según sea la aplicación. Algunos
de ellos son:
• Control de producción
• Control de calidad
• Control de presupuestos
• Control de procesos
Los elementos esenciales del control van a seguir siendo siempre la medida de va-
riables del proceso a controlar, la realimentación de las variable medidas, la com-
paración con una consigna previamente establecida y, en función de esta última, la
actuación sobre el proceso.

1.4 La automatización industrial


Automatizar un proceso es conseguir que, aplicando el mecanismo de feedback,
funcione sin intervención humana. Como veremos, esta idea resulta muy clara en el
caso del control de procesos continuos, pero también se ve que funciona en el caso
de otros tipos de control, como es el caso de los procesos movidos por eventos.

1.4.1 Técnicas de control


Atendiendo a la técnica utilizada para procesar señales, el bloque de control C de
la figura 1.3 se puede realizar fı́sicamente mediante
• técnicas analógicas
• técnicas digitales

Técnicas analógicas
Es el método más antiguo de los dos y dio lugar a las técnicas de control clásicas. El
proceso analógico de señales puede ser mecánico, neumático, hidráulico, eléctrico,
electrónico y óptico. En el regulador de Watt es de tipo mecánico. El componente
fundamental que permitió el desarrollo de el control analógico fue el amplificador
electrónico, inventado en la década de los 50.
20 CAPÍTULO 1. INTRODUCCIÓN

La aplicación principal de las técnicas analógicas es la realización de contro-


ladores de Procesos Continuos industriales: mecanismos y máquinas movidos por
motores eléctricos, procesos con fluidos, hornos, etc.
Hay dos tipos que han sido, y siguen siendo, muy utilizados: el controlador de
adelanto-retraso de fase y el controlador PID. En este último, las letras significan
proporcional, integral, derivativo e indican el proceso, o función matemática C(·),
que realiza el controlador:
1 t
 Z 
dx(t)
x(t) = C((t)) = Kp 1 + Td + x(τ )dτ , (1.1)
dt Ti 0
en donde los parámetros Kp , Td y Ti son constantes. La realización de esta función
se hace casi siempre utilizando componentes electrónicos analógicos, generalmente
amplificadores operacionales, pero son posibles las realizaciones con componentes de
flúidos.

Técnicas digitales
La aparición primero del ordenador y posteriormente de los microprocesadores y
microcontroladores y del ordenador personal, asi como el desarrollo de las comuni-
caciones, del software y de otros campos afines, han hecho que las técnicas de control
se hayan sofisticado y extendido.
Las aplicaciones son muchas. En principio, las técnicas digitales se utilizaron
para realizar controladores para los procesos continuos. Los controladores antaño
analógicos, y en particular el PID, hoy dı́a se realizan y comercializan en su ver-
sión digital. Ahora la función (1.1) la realiza un microprocesador a través de un
algoritmo. El campo de aplicación es el mismo pero las prestaciones de los digitales
son muy superiores a las de sus hermanos analógicos. Resulta más fácil sintonizar-
los, es decir, ponerles los parámetros adecuados, y están preparados para poder ser
operados a distancia a través de buses de comunicación.
Después, se utilizaron para el desarrollo de otros dispositivos de control, entre
los que cabe destacar el autómata programable de gran aplicación en el Control de
procesos de eventos discretos.
Y, finalmente, han hecho posible una creciente Automatización Global, es decir,
la expansión del control y las comunicaciones por toda la empresa en base a las
estructuras de control que se han ido creando: control centralizado, control distri-
buı́do, control jerárquico, etc.

1.4.2 Estructuras de automatización


En el intento de automatizar cualquier empresa siempre nos van a surgir un buen
número de cuestiones: ¿dónde va ubicado y cómo se realiza el control de cada
proceso? ¿cómo se conectan unos controles con otros? ¿se pueden controlar y/o
supervisar procesos desde la gestión de la empresa? Para responderlas, habremos
de idear algún plan para estructurar el control. El grado de automatización deseado
va a ser fundamental para trazar dicho plan. Se suelen distinguir como cuatro
categorı́as:
1.4. LA AUTOMATIZACIÓN INDUSTRIAL 21

Proceso 1 Proceso 2 Proceso 3 Proceso 4

Figura 1.5: Estructura de control: computador – 4 autómatas

• Automatización fija
• Automatización programable
• Automatización flexible
• Automatización total
La automatización fija se utiliza cuando el volumen de producción es muy alto
y, por tanto, se puede justificar económicamente el alto costo del diseño de equipo
especializado para procesar el producto, con un rendimiento alto y tasas de pro-
ducción elevadas. Un ejemplo tı́pico puede ser la fabricación de automóviles. Un
inconveniente de la automatización fija es que su ciclo de vida depende de la vigencia
del producto en el mercado.
La automatización programable se emplea cuando el volumen de producción es
relativamente bajo y hay una diversidad de productos a obtener. En este caso el
equipo de producción es diseñado para adaptarse a la variaciones de configuración
del producto y esta adaptación se realiza por medio de Software. Un ejemplo podrı́a
ser la fabricación de diferentes tipos de tornillos bajo pedido.
Por su parte, la automatización flexible es más adecuada para un rango de pro-
ducción medio. Los sistemas flexibles poseen caracterı́sticas de la automatización
fija y de la automatización programada. Suelen estar constituidos por una serie
de estaciones de trabajo interconectadas entre si por sistemas de almacenamiento y
manipulación de materiales, controlados en su conjunto por una computadora.
El escalón final es la automatización total de la producción, en la que, idealmente,
la fabricación se realizarı́a sin intervención humana.
En la figura 1.5 se muestra una estructura de control sencilla compuesta por un
computador que se comunica, a través de un bus, con cuatro autómatas programa-
bles cada uno de los cuales controla un determinado proceso.
22 CAPÍTULO 1. INTRODUCCIÓN

1.4.3 Ventajas e inconvenientes de la automatización


Como es lógico, la automatización tiene sus ventajas e inconvenientes. Entre las
primeras podemos citar:

• Permite aumentar la producción y adaptarla a la demanda

• Disminuye el coste del producto

• Consigue mejorar la calidad del producto y mantenerla constante

• Mejora la gestión de la empresa

• Disminuye de la mano de obra necesaria

• Hace más flexible el uso de la herramienta

Algunos inconvenientes son

• Incremento del paro en la sociedad

• Incremento de la energı́a consumida por producto

• Repercusión de la inversión en el coste del producto

• Exigencia de mayor nivel de conocimientos de los operarios

Hasta ahora no se ha dado mucha importancia al segundo punto pero cabe pensar
que, en el futuro, el aumento del coste de la energı́a pueda repercutir en un consi-
derable aumento de los costes de la producción automatizada. Ello nos llevarı́a a
tener que considerar nuevos métodos o, quizás, a reconsiderar antiguos métodos de
fabricación semi-automatizada en la que ciertas tareas podrı́an ser realizadas por
operarios humanos. De hecho, aunque lamentable, es significativa la práctica de la
utilización de mano de obra barata, no especializada (incluso infantil), por grandes
compañı́as que instalan sus factorı́as en paı́ses subdesarrollados.
En el mundo industrial actual la Automatización es prácticamente imprescindi-
ble, debido a los niveles de productividad, fiabilidad y rentabilidad que el mercado
exige a los productos elaborados para ser competitivos.
Antaño la automatización se aplicaba sólo al proceso productivo (a las máquinas),
porque era el que más recursos humanos consumı́a, resultando ası́ una automatiza-
ción local. Pero hoy dı́a podemos hablar de una automatización global ya que se ha
extendido no sólo a todos los procesos de la empresa (bloques de la figura 1.1) sino
también a los flujos de control (lı́neas a trazos de la figura 1.1), que pueden también
ser automatizados mediante buses de comunicación y redes de área local; además,
una empresa puede comunicarse a través de Internet con otras empresas pudiendo
crearse de esta forma redes de empresas extendidas por todo el mundo.
1.4. LA AUTOMATIZACIÓN INDUSTRIAL 23

1.4.4 Elementos de la automatización


Hay muchas áreas y tecnologı́as que intervienen en la Automatización. Las más
importantes, junto con algunos de sus elementos, son:

• Mecánica

– Herramientas
– Mecanismos
– Máquinas
– Elementos de transporte

• Eléctrica

– Automatismos eléctricos
– Motores eléctricos de c.c. y c.a.
– Cableados de fuerza y de mando
– Aparillajes eléctricos en general

• Tecnologı́a Electrónica

– Controladores analógicos
– Sensores / Transductores
– Pre-acionadores
– Drivers de accionamientos
– Communicaciones
– Telemando y Telemetrı́a
– Sistemas de comunicación inalámbrica

• Neumática y electro-neumática

– Cilindros neumáticos
– Válvulas neumáticas y electro-neumáticas
– Automatismos neumáticos

• Hidráulica y electro-hidráulica

– Cilindros hidráulicos
– Válvulas hidráulicas y electro-hidráulicas
– Automatismos hidráulicos

• Aplicaciones de Control e Informática Industrial

– Controladores de procesos
24 CAPÍTULO 1. INTRODUCCIÓN

– Control por computador


– Control embutido (embedded control)
– Autómatas programables
– Visión artificial
– Robótica
– Mecatrónica / Control de movimiento
– Células de fabricación flexible
– Células de Mecanizado
– Células de Montaje Automático
– Control Numérico
– Sistemas CAD-CAM (Computer Aided Design & Manufacturing)
– Sistemas CIM (Computer Integrated Manufacturing System)
– Redes y buses de comunicaciones

1.5 Modelos matemáticos de sistemas


En el análisis de los sistemas de control juegan un papel primordial los modelos
matemáticos. Un modelo matemático de un sistema dinámico es una ecuación o
sistema de ecuaciones, de un determinado tipo, que lo representa, y cuya evolución
en el tiempo se coresponde con la del sistema.
El modelo permite hacer cálculos, predicciones, simulaciones y diseñar nuevos
sistemas de control “sobre el papel” sin necesidad de tener que construirlos hasta
que se considere oportuno.
Los bloques, entradas y salidas que componen un sistema de control pueden ser
de naturaleza muy diferente según sea la aplicación que estemos considerando. La
Teorı́a de Control es la parte de la ciencia que estudia todos estos sistemas desde
los puntos de vista matemático, fı́sico y tecnológico.
Lo primero que vamos a hacer para estudiar matemáticamente los sistemas es
clasificarlos atendiendo a alguna propiedad importante. Como no cabe duda que el
tiempo es esencial para todo sistema de control, puesto su evolución depende del
tiempo, podemos clasificarlos, atendiendo a cómo sea dicha evolución, en

• Sistemas de tiempo continuo

• Sistemas de tiempo discreto

• Sistemas de eventos discretos

Esta clasificación nos va servir tanto para el estudio matemático, análisis y mo-
delado de los sistemas de control como para su sı́ntesis, o sea, su diseño y realización
utilizando diferentes tecnologı́as. Cada una de estas clases se divide a su vez en otras
1.6. MODELADO Y SIMULACIÓN DE SISTEMAS COMPLEJOS 25

que van configurando las diferentes partes que configuran la Teorı́a de Control y sus
aplicaciones.
Los sistemas de eventos discretos reciben también el nombre de sistemas re-
activos o sistemas comandados por eventos (event-driven systems). Sus modelos
matemáticos son complejos, se basan en procesos estocástcos y procesos de colas,
por lo que es habitual trabajar con modelos no matemáticos basados en computador.
En este sentido ha supuesto un gran avance la especificación del Lenguaje Uni-
ficado de Modelado (UML).

1.6 Modelado y simulación de sistemas complejos


El modelado y simulación se utiliza en muy aplicaciones diversas, tales como dinámica
de fluidos, sistemas energéticos y gestión de negocios. Dentro de los currı́cula uni-
versitarios se estudia, entre otras, en las áreas de Teorı́a de Sistemas, Teorı́a de
Control, Análisis Numérico, Ciencias de la Computación, Inteligencia Artificial e
Investigación Operativa. Poco a poco ha ido haciéndose cada vez más potente hasta
el punto en que hoy se considera con capacidad para integrar todas las anteriores
disciplinas. Más aún, ha sido propuesto por algunos como el paradigma de la com-
putación del futuro. Como paradigma, constituye un método para representar los
problemas, para analizarlos y para obtener soluciones. En la fase de análisis, el
modelo se construye inductivamente a partir de observaciones realizadas sobre un
sistema real. En la fase de sı́ntesis se utilizan los modelos creados en la fase de
análisis para diseñar nuevos modelos que satisfagan determinadas especificaciones y
se construyen los sistemas reales (realizaciones) si se considera oportuno. A veces
suele ser preciso repetir iterativamente las fases de análisis y diseño hasta conseguir
dar con la solución buscada.

1.6.1 Importancia del modelado


El conocimiento sobre las cosas que tenemos a nuestro alrededor, adquirido a través
de los sentidos y almacenado en el cerebro, no es la realidad sino una abstracción,
un modelo de la misma. Es un modelo en el que se reflejan algunas caracterı́sticas
estáticas (forma, dimensiones, color, sonido, olor, temperatura, acabado superficial,
etc.) y quizás también algunas otras dinámicas (velocidad, etc). Si utilizamos instru-
mentos de medida, la información que adquirimos puede enriquecerse con números,
gráficos y quizás con otros tipos de información propia de cada instrumento.
De alguna manera, la información que hemos adquirido sobre un objeto es el
resultado de experiencias (experimentos) que hemos realizado sobre el mismo. Por
tanto, la información adquirida es siempre parcial, se refiere a los resultados de
experiencias o experimentos y el modelo de cualquier sistema es también parcial,
es decir, sólo refleja aquellos aspectos que han sido medidos y analizados dentro de
un determinado contexto experimental. Otros aspectos pueden quedar ocultos en el
modelo porque aún no se conocen, sencillamente porque no se han medido o, si se
quiere, porque quedan fuera de contexto.
26 CAPÍTULO 1. INTRODUCCIÓN

REALIDAD MODELO

Entidad Modelo
del
básico
OBJETIVOS
Mundo Real

análisis sólo
en contexto
experimental

dentro del contexto Conocimiento


Sistema S Modelo M a priori del
modelo básico

experimento Simulación =
dentro de contexto Experimento virtual

Datos Validación Resultados


observados de de
Experimento Simulación Proceso de
Modelado y Simulación

Figura 1.6: Esquema del modelado

En la figura 1.6 se indica esquemáticamente el proceso de obtención de un modelo


a partir de la realidad. Es importante recalcar de que la información que podemos
tener sobre una determinada entidad real la adquirimos a través de experimentos
hechos en un determinado contexto de modelado. Por esta razón, los nombres con
que muchas veces se etiquetan ciertas entidades del mundo real provienen no de la
entidad misma sino de su modelo. Ası́, por ejemplo, si hablamos de sistemas de
tiempo continuo nos estamos refiriendo a la familia de entidades reales que admiten
un modelo de tiempo continuo. Es decir que lo que estamos haciendo es clasificar
las entidades reales en clases en función de las caracterı́sticas de los modelos. Es
evidente que una misma entidad real puede pertenecer a varias de estas clases, o sea,
puede admitir distintos modelos, dependiendo de las caracterı́sticas que se quieran
poner de manifiesto.
Disponer de un modelo antes de proceder al desarrollo de software y hardware es
tan importante para el ingeniero responsable de cualquier automatización industrial
como puede ser, para el arquitecto, tener un anteproyecto antes de construir un gran
edificio.
El modelado adquiere mayor importancia cuanto mayor es la complejidad del
sistema. Algunos sistemas (por ejemplo biológicos) son tan complicados que hasta
hace poco no se sabı́a muy bien cómo funcionaban pero que, tras el modelado de
sus partes elementales y la posterior conexión de las mismas, empiezan ya a ser
estudiados y entendidos, al menos en alguno de sus aspectos. Sin ir tan lejos,
tener un buen modelo resulta de una ayuda inestimable para cualquier diseño de
automatización industrial.
1.6. MODELADO Y SIMULACIÓN DE SISTEMAS COMPLEJOS 27

Serı́a estupendo que el lenguaje de modelización fuera universal pues ello facili-
tarı́a la comunicación entre los equipos de desarrollo dentro de la empresa y también,
fuera de ella, entre los miembros de la comunidad cientı́fica.
Un buen lenguaje de modelización ha de tener

• Elementos del modelo – conceptos fundamentales y semántica

• Notación – representación visual de los elementos del modelo

• Directivas – lenguajes a utilizar para el modelado

Lenguaje Unificado de Modelización (UML)


La carencia de un lenguaje estándar de modelización ha sido durante mucho tiempo
el principal quebradero de cabeza de muchos diseñadores de software. La situación
era caótica hasta hace poco porque, al ser las herramientas de desarrollo de software
de diferentes fabricantes e incompatibles entre sı́, cuando alguien pretendı́a modelar
un sistema complejo, formado por subsistemas de diferente naturaleza, al final se le
presentaba la complicada tarea de acoplar los resultados de los modelos de cada una
de las partes, desarrolladas en diferentes lenguajes. Afortunadamente la situación ha
cambiado recientemente con la aparición del denominado Unified Modeling Language
(UML). El desarrollo de este lenguaje comenzó en Octubre de 1994 cuando Grady
Booch y Jim Rumbaugh, de la empresa Rational Software Corporation, unificaron
el anterior método de Booch y el llamado técnica de Modelado de Objetos (OMT) y
crearon un proyecto común, al que llamaron Unified Method, cuyo primer borrador
vio la luz en Octubre de 1995. A finales del mismo año Ivan Jacobson y su empresa
Objectory se unieron a Rational Software y como resultado de la unión surgió el
método OOSE (Object-Oriented Software Engineering).
Al comenzar a trabajar juntos, Booch, Rumbaugh y Jacobson fijaron como obj-
tivos los siguientes:

1. Otorgar al modelado de sistemas (y no sólo al software) la capacidad de utilizar


conceptos orientados a objetos.

2. Establecer un acoplamiento explı́cito con los artefactos tanto conceptual como


ejecutable.

3. Tratar los temas inherentes a la escala en los sistemas complejos y de misión


crı́tica.

4. Crear un lenguaje de modelado entendible tanto por las máquinas como por
los seres humanos.

Los esfuerzos de los tres ingenieros dieron su fruto con la publicación de las
versiones 0.9 y 0.91 de UML, en Junio y en Octubre de 1996. UML comenzó a
extenderse con rapidez y muchas importantes empresas vieron en UML un asunto
de importancia estratégica para sus negocios. Tras una primera fusión con OMG
(Object Management Group), Rational Software estableció las bases para crear un
28 CAPÍTULO 1. INTRODUCCIÓN

consorcio empresarial, al que pronto se unieron las compañı́as más importantes del
mundo de la informática: DEC, HP, IBM, Microsoft, Oracle, TI, Unisys, etc.
UML se ha ido enriqueciendo con las aportaciones de los nuevos socios dando
lugar a la aparición de nuevas versiones. La versión UML 1.3, de Junio de 1999.
Actualmente la version de UML mas ”en boga”es la 1.5, y se esta trabajando en la
2.0.

• Ofrecer a los usuarios un lenguaje de modelado de uso inmediato, expresivo y


visual, para desarrollar e intercambiar modelos significativos.

• Suministrar mecanismos de extensión y especialización que permitan extender


los conceptos del núcleo del lenguaje.

• Soportar especificaciones que sean independientes de los lenguajes de progra-


mación particulares y de los procesos de desarrollo.

• Dar una base formal para el aprendizaje del lenguaje.

• Animar el crecimiento del mercado de herramientas para objetos.

• Soportar conceptos de desarrollo de alto nivel: components, collaborations,


frameworks, patterns.

• Integrar las mejores prácticas de programación.

Caracterı́sticas de UML
UML es un lenguaje sin propietario y abierto a todos. Ofrece a los ingenieros de
sistemas que trabajan en análisis y diseño orientados a objetos, un consistente len-
guaje para especificar, visualizar, construir y documentar los artefactos de software
y también para el modelado de negocios y de otros sistemas. Está estructurado en
9 paquetes:

• Data Types

• Core

• Extension Mechanisms

• Comon Behavior

• State Machines

• Activity Graphs

• Collaborations

• Use Cases

• Model Management
1.6. MODELADO Y SIMULACIÓN DE SISTEMAS COMPLEJOS 29

Los fabricantes y desarrolladores de software que adoptan el lenguaje UML deben


etiquetar sus productos con la frase UML compliant e indicar el grado de cumpli-
miento con cada una de las especificaciones del lenguaje.
Para el desarrollo de los artefactos de software, UML tiene en cuenta las siguien-
tes consideraciones:

• El estudio de todo sistema complejo se aborda mejor por medio de una se-
cuencia de visiones distintas del modelo. Una sola vista no es suficiente.

• Todo modelo se puede expresar a diferentes niveles de fidelidad.

• Los mejores modelos están conectados a la realidad.

En términos de vistas de un modelo, UML define los siguientes diagramas gráficos:

• use case diagram

• class diagram

• behavior diagrams:

– statechart diagram
– activity diagram
– interaction diagrams
∗ sequence diagram
∗ collaboration diagram
– implementation diagrams:
∗ component diagram
∗ deployment diagram

Todos estos diagramas dan múltiples perspectivas del sistema bajo análisis o
desarrollo. Además UML tiene herramientas para obtener un buen número de visio-
nes derivadas. UML no soporta diagramas de flujo de datos (data-flow diagrams),
simplemente porque no encajan limpiamente en un paradigma consistente orientado
a objeto. Para modelar flujos de datos valen los diagramas de actividad (activity
diagrams) de UML.
UML consigue acabar con las diferencias (a veces absurdas) entre los lenguajes
de modelización anteriores y, quizás más importante, unifica las perspectivas de
acercamiento entre muchas clases diferentes de sistemas (negocios contra sotware),
fases de desarrollo (requerimientos, análisis, diseño e implementación) y conceptos
internos.
30 CAPÍTULO 1. INTRODUCCIÓN

1.7 Estructura del curso


El curso se estructura en 4 partes. Las dos primeras son más bien teóricas y en ellas
se estudian los fundamentos que permiten el modelado de sistemas. Las otras dos
partes son de un contenido más bien práctico, de aplicación de lo estudiado antes,
si bien en la última parte se requieren algunos nuevos conocimientos teóricos.

• Control de procesos continuos

• Control de procesos de eventos discretos

• Automatización local

• Automatización global

1.7.1 Control de procesos continuos


Esta primera parte está enfocada al diseño de de controladores para procesos de
tiempo continuo. Suponiendo un conocimiento previo de las nociones básicas de la
Teorı́a de Control, se estudiarán algunas técnicas clásicas de diseño de controladores
analógicos y digitales. Se hará un especial énfasis en el estudio de los controladores
PID y sus métodos de sintonı́a.

1.7.2 Control de procesos de eventos discretos


En la segunda parte repasaremos primero algunos conceptos básicos sobre sistemas
combinacionales y secuenciales, para pasar a ver los modelos de sistemas de eventos
discretos más usados actualmente en automatización:

• Diagramas de estado

• Redes de Petri

• Grafcet

• Statecharts

1.7.3 Automatización local


En esta parte estudiaremos algunos de los elementos existentes en el mercado dedi-
cados a la automatización local. Es un tema más bien descriptivo y muy extenso
en el que, aparte de lo mostrado en clase, el alumno debe intentar conseguir infor-
mación (catálogos, documentos de Internet, etc.) sobre los productos comerciales.
Algunos de los elementos son

• Captadores

• Pre-actuadores y actuadores.
1.7. ESTRUCTURA DEL CURSO 31

• Automatismos eléctricos

• Automatismos neumáticos e hidráulicos

• Autómatas programables

• Controladores industriales

1.7.4 Automatización global


Esta última parte está dedicada al estudio de la automatización global y en la misma
daremos una visión general algunos aspectos importantes de la misma, tales como

• Simulación de procesos productivos

• Redes locales

• Buses industriales

• GEMMA

• SCADA

• Control jerárquico
32 CAPÍTULO 1. INTRODUCCIÓN
Parte I

Control de procesos continuos

33
Capı́tulo 2

Diseño de Controladores

2.1 Introducción

Los sistemas de control se aplican en numerosos campos de la tecnologı́a y de la


ciencia. Se pueden citar ejemplos tales como los pilotos automáticos en barcos o
aviones, el control teledirigido de naves espaciales, controles de posición y velocidad
en máquinas herramientas, control de robots, control de procesos industriales, sus-
pensión activa de los automóviles, controles diversos en electrodomésticos, etc., en
los que los sistemas de control desempeñan un importante papel. La lista de aplica-
ciones pudiera resultar interminable ya que, debido al progresivo abaratamiento y
miniaturización los componentes electrónicos, ha sido enorme su proliferación y de-
sarrollo. Un sistema de control consta de un proceso o planta que se desea controlar
y de otros elementos que realizan el control, formados esencialmente por captadores
y controladores. En la figura 2.1 se ha representado un sistema de control básico
monovariable. En la misma, la planta se representa por el bloque de función de
transferencia Gp , el controlador por Gc y el captador por H.

Los métodos de diseño sirven para proyectar el sistema de control y determinar


los componentes más adecuados para un funcionamiento satisfactorio. El objetivo
del diseño, en el caso más sencillo, suele ser una parte del sistema, denominada
controlador, que tiene asignada la misión de control. En los sistemas de control
continuos este elemento está constituido generalmente con componentes electrónicos
de tipo analógico mientras que en los sistemas de control discretos es un controlador
basado en un computador digital. Por otro lado hay que distinguir entre el control
de sistemas SISO y MIMO.

El enfoque del diseño será muy diferente para un sencillo bucle de regulación de
tipo SISO que para un sistema de control de un proceso MIMO en el que intervienen
múltiples variables interrelacionadas. En este capitulo vamos a tratar del diseño de
sistemas de control continuos monovariables [2, cap. 7].

35
36 CAPÍTULO 2. DISEÑO DE CONTROLADORES

2.2 Tipos de controladores


En la figura 2.1 el control del sistema ha sido asignado al bloque Gc denominado
controlador. Puesto que el diseño va a consistir en determinar los componentes
de este elemento, veamos en primer lugar los tipos mas comunes de controladores
utilizados en la práctica, junto con sus correspondientes implementaciones basadas
en amplificadores operacionales y componentes pasivos.

D(s)

R(s) ε Y(s)
Gc Gp

Figura 2.1: Sistema de control

2.2.1 Controlador tipo proporcional P


La función de transferencia del controlador P es

G c = Kp (2.1)

siendo Kp una constante. En la figura 2.2 se representa el esquema de un amplifi-

Vi R
Vo

R2

R1

Figura 2.2: Esquema de un controlador P


2.2. TIPOS DE CONTROLADORES 37

cador o inversor en el cual se cumple


V0 R1 + R2
Kp = =
Vi R1

2.2.2 Controlador tipo integrador


Su función de transferencia es
1
Gc = (2.2)
sTi
Siendo Ti una constante. Se ha implementado mediante el circuito integrador inver-
sor representado en la figura 2.3, en la que
V0 1/sC1 −1
Gc = =− = (2.3)
Vi R1 sR1 C1
La constante de tiempo Ti de este controlador I vale, por tanto,

C1

R1
Vi
Vo

Figura 2.3: Esquema de un controlador I

Ti = R1 C1 (2.4)

2.2.3 Controlador tipo derivativo D


Su función de transferencia es
Gc = sTd (2.5)
Siendo Td una constante. Su circuito electrónico, con una configuración inversora,
aparece en la figura 2.4, en la que
V0 R1
Gc = =− = −sR1 C1 (2.6)
Vi 1/sC1
La constante de tiempo T del controlador I vale por tanto,
Td = R1 C1 (2.7)
38 CAPÍTULO 2. DISEÑO DE CONTROLADORES

R1

C1
Vi
Vo

Figura 2.4: Esquema de un controlador D

2.2.4 Controladores PID


Los tres controladores básicos P, I, D, que acabamos de ver pueden agruparse en
forma aditiva entre sı́ dando lugar a las combinaciones PI, PD y PID. En la figura
2.5 se representa un controlador PID en forma de diagrama de bloques [2, sec. 7.10].
Su función de transferencia es
V0 1
Gc = = Kp (1 + + sTd ) (2.8)
Vi sTi

Este controlador PID se transforma fácilmente en otro PI o PD eliminando una

Vi 1 Vo
Kp
sT i

sT d

Figura 2.5: Diagrama de bloques de un controlador PID

de las ramas I o D del diagrama de bloques. Si eliminamos ambas ramas I y D


se transforma en un controlador P. Una posible implementación electrónica de este
controlador, que se ajusta al diagrama de bloques, se ilustra en la figura 2.6.
La función de transferencia del circuito PID ası́ compuesto viene dada por la
2.2. TIPOS DE CONTROLADORES 39

R1

R1
R4

C2
R5
R1
Vi
R4
Vo

R3

C3
R4

Figura 2.6: Diagrama de bloques de un controlador PID

expresión (2.9) en la que

R5
Kp = , Ti = R2 C2 , Td = R3 C3 (2.9)
R4

2.2.5 Controladores de adelanto y de retraso de fase


Son controladores que producen un avance, un retraso o una combinación de avance
y retraso en la fase de la tensión de salida con respecto a la tensión de entrada al
controlador [2, sec. 7.9]. La función de transferencia de un controlador de adelanto
o retraso es
V0 s − zc
Gc = = Kc (2.10)
Vi s − pc
Si | zc |<| pc | es un controlador de adelanto de fase mientras que si | zc |>| pc |, es
de retraso de fase.
Estos controladores pueden realizarse mediante redes pasivas RC o bien con cir-
cuitos basados en amplificadores operacionales. La figura 2.7 muestra los esquemas
de una red RC de adelanto de fase y otra de retraso. La función de transferencia de
la red de la figura 2.7a es

V0 s − zc 1 + αT s
Gc = = Kc = (2.11)
Vi s − pc α(1 + T s)

siendo α = (R1 + R2 )/R2 y T = CR1 R2 /(R1 + R2 ).


40 CAPÍTULO 2. DISEÑO DE CONTROLADORES

R1
R1

Vi Vo
Vi R2 Vo
R2

a) b)

Figura 2.7: Redes de adelanto y de retraso de fase

La red de retraso de fase de la figura 2.7b tiene por función de transferencia


V0 s − zc 1 + Ts
Gc = = Kc = (2.12)
Vi s − pc 1 + αT s
siendo α = (R1 + R2 )/R2 y T = R2 C. En la figura 2.8 se ha representado una red

C1

R1

R2
Vi Vo

C2

Figura 2.8: Red de adelanto-retraso de fase

pasiva RC de adelanto-retraso de fase, cuya función de transferencia es


V0 (1 + αT1 s)(1 + βT2 s)
Gc = = (2.13)
Vi (1 + T1 s)(1 + T2 s)
donde α > 1, β = 1/α, αT 1 = R1 C1 , T2 = R2 C2 y T1 T2 = R1 R2 C1 C2 . Los
controladores de adelanto y de retraso de fase pueden construirse también a base de
circuitos con operacionales. El circuito representado en la figura 2.9 puede funcionar
como controlador de adelanto y de retraso de fase. Su función de transferencia es
V0 s − zc C1 (s + 1/R1 C1 )
Gc = = Kc =− (2.14)
Vi s − pc C2 (s + 1/R2 C2 )
2.3. MÉTODOS DE DISEÑO BASADOS EN EL LUGAR DE LAS RAÍCES 41

C2

C1

R2

Vi
R1
Vo

Figura 2.9: Controlador de adelanto-retraso de fase

Este montaje se puede utilizar como controlador PI (eliminando la resistencia R2)


o como controlador PD (eliminando el condensador C2).

2.3 Métodos de diseño basados en el lugar de las


raı́ces
El método de diseño basado en el lugar de las raı́ces suele también denominarse de
asignación de polos. Consiste en asignar al controlador uno o varios polos y ceros,
previamente determinados por las especificaciones que ha de cumplir el sistema.
Estos polos y ceros del controlador pueden servir, en ocasiones, para eliminar ciertos
polos o ceros indeseados del sistema (cancelación de polos).
Antes de proceder al estudio de algunos ejemplos de diseño de controladores
veamos qué efecto produce la adición de un polo o de un cero sobre el lugar de las
raı́ces. Sea un sistema cuya función de transferencia en lazo abierto es:
1
G(s) = (2.15)
s2
Se trata de un sistema marginalmente estable para cualquier valor de la ganancia
K, ya que su lugar de las raı́ces es el eje imaginario (Figura 2.10). Veamos el efecto
que produce la adición de un cero en (−2.5, 0). La función de transferencia en lazo
abierto es ahora
s + 2.5
G(s) = (2.16)
s2
El lugar de las raı́ces se ha representado en la figura 2.11. Se puede observar que
la adición de un cero produce un efecto parecido a como si éste “tirase” del lugar
geométrico hacia sı́, estabilizando el sistema y generando en este caso una circunfe-
rencia como parte del lugar. Veamos ahora el efecto de añadir un polo en (−2, 0).
La función de transferencia en lazo abierto vale ahora,
1
G(s) = (2.17)
s2 (s+ 2)
42 CAPÍTULO 2. DISEÑO DE CONTROLADORES

Figura 2.10: Lugar de las raı́ces de G(s)H(s) = 1/s2

Figura 2.11: Lugar de las raı́ces de G(s)H(s) = (s + 2.5)/s2


2.3. MÉTODOS DE DISEÑO BASADOS EN EL LUGAR DE LAS RAÍCES 43

Figura 2.12: Lugar de las raı́ces de G(s)H(s) = 1/[(s2 )(s + 2)]

El lugar geométrico de las raı́ces correspondiente se ha representado en la figura 2.12.


Puede observarse en el mismo que es como si el polo s = −2 añadido parece como
si empujara al lugar, deformándolo y generando una rama de hipérbola. Produce,
por tanto, un efecto desestabilizador en el sistema.
Vistos los efectos de la adición de un polo y de un cero a la función de transfe-
rencia, vamos a considerar algunos ejemplos de diseño del controlador en un sistema
de regulación, conociendo ciertas especificaciones de funcionamiento.

2.3.1 Diseño de una red de adelanto de fase


Un controlador de adelanto de fase tiene por función de transferencia:
s − zc
G c = Kc , |zc | < |pc | (2.18)
s − pc
El diseño consiste en asignar unos valores a los parámetros del controlador, tales que
el lugar geométrico pase por un punto dado, definido a partir de las especificaciones
de funcionamiento. Vamos a considerar el mismo ejemplo anterior en el que la
función de transferencia en lazo abierto vale
1
G(s)H(s) = 2 (2.19)
s
Supongamos que las especificaciones de funcionamiento exigen un tiempo de es-
tablecimiento Ts de 4s y una sobreoscilación máxima inferior al 20%. El tiempo
de establecimiento suele considerarse igual a 4 veces la constante de tiempo τ del
sistema ( < 2%), con lo que
4
Ts = 4τ = (2.20)
ξωn
44 CAPÍTULO 2. DISEÑO DE CONTROLADORES

Por otra parte la sobreoscilación máxima esta relacionada con el coeficiente de amor-
tiguamiento. Puede probarse que una sobreoscilación del 20% corresponde a un
coeficiente de amortiguamiento ξ = 0.45. Por lo tanto, sustituyendo este valor en la
expresión anterior queda

4
4= , ωn = 2.22 (2.21)
0.45ωn

Por tanto, la raı́z correspondiente a las especificaciones propuestas es:


p
s = −ξωn ± ωn 1 − ξ 2 = −1 ± 2j (2.22)

im

Raíz deseada
2

116.56º
θp 90º

re
-5 -4 -3 -2 -1

Figura 2.13: Lugar de las raı́ces de G(s)H(s) = 1/[(s2 )(s + 2)]

Para que el lugar de las raı́ces pase por este punto hemos de situar el polo y el
cero del controlador de adelanto de fase. Primero situamos el cero del controlador
en el punto s = −1, es decir, justo bajo la raı́z (−1 ± 2j), antes hallada, por la que
ha de pasar el lugar. Aplicando el criterio del argumento, hallamos la ubicación del
polo del controlador (figura 2.13):

90o − 2(116.56o ) − θp = −180o θp = 38o

Se deduce que el polo ha de ser pc = −3.6. La función de transferencia del contro-


lador es
s+1
G c = Kc
s + 3.6
El parámetro Kc se determina aplicando la condición de módulo del lugar del las
raı́ces en el punto s = −1 + 2j, que da un valor de Kc = 8.1. El sistema de control
resultante se ha representado en la figura 2.14 y el lugar de las raı́ces correspondiente,
en la figura 2.15.
2.3. MÉTODOS DE DISEÑO BASADOS EN EL LUGAR DE LAS RAÍCES 45

Gc Gp
R(s) ε s+1 1 Y(s)
8.1 2
s+3.6 s

Figura 2.14: Ubicación del cero y del polo del controlador PID

2.3.2 Diseño de un controlador PID


Vamos a suponer que deseamos controlar la misma planta anterior, con función de
transferencia Gp (s) = 1/s2 , mediante un controlador PID. Este tipo de control no
es el más idóneo en este caso, ya que la propia planta realiza una doble integración;
se utiliza aquı́ para poder comparar con los resultados obtenidos anteriormente. Las
especificaciones son las mismas que en el ejemplo anterior y por tanto el lugar de las
raı́ces ha de pasar por el punto (−1±2j). La función de transferencia del controlador
es ahora
1 s2 Td Ti + sTi + 1
Gc = Kp (1 + + sTd ) = Kp
sTi sTi
Un sencillo método de diseño consiste en suponer que los ceros z1 y z2 del controlador
PID son reales. Ubicamos el cero z1 bajo la raı́z deseada y, aplicando la condición
de ángulo, determinamos el otro cero (figura 2.16).
Condición de ángulo:

90o + θz2 − 3(116.56o ) = −180o , θz2 = 3(116.56) − 180o − 90o = 79.69oo

y, por tanto, z2 = −1.36. El lugar de las raı́ces del sistema compensado se ha


representado en la figura 2.16.
Conocidos los valores de z1 y z2 podemos hallar las constantes Td , Ti y Kp del
controlador PID, identificando su función de transferencia con la obtenida.

s2 Td Ti + sTi + 1 s2 + 2.36s + 1.36


Kp =
sti s
de donde resulta

Ti = 2.36/1.36 = 1.73s Td = 1/2.36 = 0.42s

La constante Kp , hallada mediante la condición de ángulo, resulta ser Kp = 2.8.


El lugar de las raı́ces correspondiente se ha representado en la figura 2.17.
46 CAPÍTULO 2. DISEÑO DE CONTROLADORES

Figura 2.15: Lugar de las raı́ces de G(s)H(s) = (s + 1)/[(s2 )(s + 3.6)]

2.4 Diseño en el Lugar de las Raı́ces


El diseño en el Lugar de las raı́ces está indicado en el caso en que se pretenda
que el sistema controlado tenga un par de polos complejos dominantes y que las
especificaciones de funcionamiento vengan dadas para ese par de polos. Recordemos
que en el sistema de 2o orden, si nos dan como especificaciones la sobreoscilación
máxima Mp y el tiempo de pico tp , podemos hallar el par de polos asociado a las
mismas, ya que de
√−ζπ
Mp = e 1−ζ 2

podemos despejar ζ y a continuación, de


π
tp = p
ωn 1 − ζ 2
podemos hallar ωn .
Si el sistema controlado ha de tener polos dominantes reales, es decir, una res-
puesta temporal monótona, no es aplicable este método. No obstante, es casi siempre
deseable una respuesta oscilante puesto que ello ayuda a contrarrestar el efecto de
las posibles no linealidades.
Como los controladores utilizados, controlador de adelanto-retraso y PID, tienen
dos grados de libertad, es posible ubicar sólo dos polos del sistema en lazo cerrado.
La posición del resto de los polos queda fuera de control, y bien puede suceder, en
plantas de orden elevado, que los polos ubicados por diseño no sean efectivamente
los dominantes.
La desventaja del método del lugar de las raı́ces es que la información disponible
para el diseñador disminuye conforme aumenta el número de ramas. En estos casos
2.4. DISEÑO EN EL LUGAR DE LAS RAÍCES 47

im

Raíz deseada
2

θz2 90º
116.56º

re
-5 -4 -3 -2 -1

Figura 2.16: Ubicación de los ceros y polos del PID

la alternativa puede ser trabajar con modelos de orden reducido o bien utilizar
métodos de diseño en el dominio de la frecuencia.

2.4.1 Compensador de adelanto de fase


La función de transferencia del controlador de adelanto de fase es
s + zc
Gc (s) = Kc , zc > pc , zc > 0 , pz > 0
s + pc
Su diseño consiste en determinar las constantes Kc , zc , zc para que el sistema en
lazo cerrado cumpla con las especificaciones exigidas. En términos del lugar de las
raı́ces esto significa que el lugar ha de pasar por el par de puntos conjugados (polos
dominantes deseados) del plano complejo, calculados a partir de las especificaciones.
El primer paso es, por tanto, hallar el par de polos dominantes a partir de las
especificaciones. Supongamos que el resultado es pd = σd + jωd y p̄d = σd − jωd .
Una vez hallados, hemos de comprobar que no pertenecen al lugar de las raı́ces
del sistema original (sin compensador) ya que caso afirmativo el diseño consistirı́a
simplemente en hallar el valor de la ganancia K correspondiente al punto del lugar
de las raı́ces pd = σd + jωd .
El efecto de un compensador de adelanto de fase es desplazar el punto σc de
intersección de las ası́ntotas, a lo largo del eje real y hacia el semiplano izquierdo
(SPI), una distancia
pc − zc
∆σc =
np − nz
en donde np y nz son, respectivamente, los números de polos y ceros en lazo abierto,
incluidos los del controlador. Esto se deduce de la fórmula que da el centroide de
las ası́ntotas:
P P
i pi − j zj
σc = , i = 1, . . . , n, j = 1, . . . , m
m−n
48 CAPÍTULO 2. DISEÑO DE CONTROLADORES

Figura 2.17: Lugar de las raı́ces de G(s)H(s) = (s + 1)(s + 2.36)/s3

en donde pi son los polos y zj los ceros.


Como resultado, las ramas del lugar se “doblan” hacia el SPI (Figura 2.18).
Entonces, un simple ajuste de la ganancia puede ser suficiente para obtener polos
con mejor amortiguamiento.
La condición que vamos a utilizar para diseñar el compensador es que el lugar
de las raı́ces ha de pasar por el polo dominante pd = σd + jωd calculado a partir de
las especificaciones. Por supuesto que el lugar, por ser simétrico, pasará entonces
también por p̄d . Si pd es un punto del lugar de las raı́ces, ha de cumplir la condición
argumento. Es decir, en el punto pd del plano complejo, la fase de la función de
transferencia en lazo abierto ha de ser múltiplo impar de π:
∠Gc (pd ) + ∠Gp (pd ) = (2k + 1)π k = 0, 1, 2, . . .
Haciendo ∠Gc (pd ) = ϕc resulta
ϕc = (2k + 1)π − ∠Gc (pd ) (2.23)
para algún K = 0, 1, 2, ...
La fase ϕc del controlador en pd puede relacionarse gráficamente en el plano s
con los parámetros pz y zc del controlador (figura 2.19).
ϕc = β − α

Una vez calculada la fase ϕc que debe tener el controlador en pd , hay un número
infinito de posibles α = ∠pc y β = ∠zc que verifican ϕc = α − β. En la práctica, lo
habitual es fijar uno de los dos parámetros, pc o zc , y calcular el otro a partir de la
condición de ángulo.
2.4. DISEÑO EN EL LUGAR DE LAS RAÍCES 49

Im
∆σc

σ’c p2 σc p1
Re

Figura 2.18: Lugar de las Raı́ces sin y con compensador

Im

pd

ϕc

α β

pc zc Re

pd

Figura 2.19: Fase del controlador en pd


50 CAPÍTULO 2. DISEÑO DE CONTROLADORES

Ejemplo de diseño. Compensador en serie


D(s)

U (s)- mE(s)- s + zc - +m
? 500 Y (s)
r
+ Kc - -

s + pc s(s + 1)
6

Figura 2.20: Controlador a diseñar

Vamos a diseñar el controlador de adelanto de fase de la figura 2.20, en el que


500
Gp (s) =
s(s + 1)
y con unas especificaciones de ζ = 0.65 y ωn = 50. En este ejercicio y en los
siguientes se ha utilizado el programa Maple para efectuar los cálculos.

En primer lugar hemos de obtener el par de polos dominantes (pd , p̄d ), por el que
ha de pasar el lugar de las raı́ces, a partir de las especificaciones. En este caso es
muy sencillo:
p
pd = −ζωn + ωn 1 − ζ 2 = −32.5 + 38j
p̄d = conj(pd ) = −32.5 − 38j

Antes de proceder al diseño hemos de comprobar que el punto pd (o p̄d ) no está


en el lugar de las raı́ces del sistema sin compensar. Para ello realizamos su trazado,
que se ha representado en la figura 2.21.
Una ver comprobado que pd queda fuera del lugar, calculamos el argumento que
ha de tener el controlador en pd , aplicando la fórmula (2.23). Para ello hallamos
primero ∠Gp (pd ):
 
500
∠Gp (pd ) = arg = −260o
s(s + 1) s=−32.5+38j

y, a continuación ϕc :

ϕc = (2k + 1)π − ∠Gp (pd ) = (2k + 1)π + 260o

Para k = −1 obtenemos
ϕc = −180o + 260o = 80o
que es la fase buscada. Nótese que para otros valores de k se obtienen valores de ϕc
iguales al hallado más 360o k.
Hallada es la fase ϕc del controlador en pd , el problema es encontrar las posiciones
del cero zc y del polo pc del controlador de forma que la diferencia β − α de los
argumentos de los vectores − z−→ −−→
c pd y pc pd sea igual a ϕc (figura 2.22).
2.4. DISEÑO EN EL LUGAR DE LAS RAÍCES 51

Im

-1 -0.5 0 Re

Figura 2.21: Lugar de las Raı́ces sin compensador

Im
pd
38

ϕc
β
α
pc -32.5 -1 Re

Figura 2.22: Cancelación del polo en (−1 + 0j) con zc


52 CAPÍTULO 2. DISEÑO DE CONTROLADORES

Una buena solución, al menos a primera vista, es colocar el cero del controlador
en el punto (−1+0j), cancelando un polo de la planta (figura 2.22). Ası́ se simplifica
la función de transferencia Y (s)/U (s).
Procediendo de este modo, para obtener el parámetro pc del controlador, halla-
mos el valor del ángulo α.

β − α = ϕc ⇒ α = 130o − 80o = 50o

con lo que pc vale


pc = 32.5 + 38/ tan 50o = 64
Por último, el valor de Kc lo podemos hallar aplicando la condición de magnitud en
el punto pd :
s + zc
Kc G p (p d ) =1
s + pc
de donde resulta Kc = 4.93.
El diseño ha concluido: el sistema definido por la función de transferencia
consigna-salida G1 (s) = Y (s)/U (s), que con los valores hallados queda

Kc
G1 (s) = 500
s2 + pc s + 500 Kc

tiene un par de polos (dominantes) en (pd , p̄d ), de acuerdo con las especificaciones.
Sin embargo, no ocurre lo mismo para la función de transferencia perturbación-
salida G2 (s) = Y (s)/D(s) ya que en ésta el polo en (−1 + 0j) no se ha cancelado:
s + pc
G2 (s) = 500
(s + 1 ) ( s2 + pc s + 500 Kc )

De aquı́ que el modo e−t , “cancelado”, aparecerá en la respuesta a una perturbación


de carga d(t). Por tanto, el procedimiento utilizado de cancelación de un polo de la
planta no debe ser utilizado en la práctica, si se desea una verdadera mejora de la
rapidez.

2.4.2 Consideraciones de diseño


En vista del resultado del ejercicio anterior podemos pensar que el diseño dependerá
de la configuración de las entradas y salidas del sistema de control. Ello nos llevarı́a
a un tipo de diseño caso por caso.
No obstante, algunas configuraciones son frecuentes en la práctica por lo que con-
viene analizar con detalle los problemas asociados con ellas. El esquema de control
de la figura 2.23, denominado compensación en serie, es frecuente, por ejemplo, en el
control de motores y de otros procesos. La entrada d1 representa una perturbación
en la carga, d2 representa una perturbación en la salida y d3 , una perturbación o
ruido en la medida. No se ha considerado (H(s) = 1) la dinámica del transductor.
Nc , Dc , Np y Dp son los polinomios, numerador y denominador, del controlador y
de la planta, respectivamente.
2.4. DISEÑO EN EL LUGAR DE LAS RAÍCES 53
d1 d2

u- m  - - Nc m- m
? Np - +m
? y -
r
+ Kc + -

Dc Dp
6

+m
6

d3
Figura 2.23: Esquema de control en serie.

Para empezar, nos interesa hallar las funciones de transferencia


Y Kc N c N p E Dc Dp M Kc Nc Dp
= , = , =
U D U D U D
que relacionan la salida y, el error e y el esfuerzo de control m con la entrada u.
También interesan
Y N p Dc E Y M Y
= , =− , =−
D1 D D1 D1 D1 U
que relacionan la salida y, el error e y el esfuerzo de control m con la perturbación
d1 , y asimismo,
Y M M M
= , =−
D3 D1 D3 U
en donde D = Dc Dp + KNc Np
A partir de estas expresiones podemos deducir ciertas propiedades interesantes
de este esquema de control.
• Si Nc y Dp tienen ceros en común, estos se cancelan en las funciones de
transferencia Y /U y M/U , ya que entonces son ceros del polinomio D =
Dc Dp + KNc Np , pero no se cancelan en las Y /D1 y E/D1 , y por ello la
cancelación polo-cero no es recomendable.
• Cuando el sistema en lazo cerrado es mucho más rápido que la planta la
variable manipulada m puede tomar valores muy grandes. La idea intuitiva de
que para conseguir una respuesta más rápida el controlador ha de actuar con
más energı́a se confirma matemáticamente puesto que los polos lentos de la
planta (ceros del polinomio Dp ) son ceros en la función de transferencia M/U ,
y es sabido que un cero lento visto desde los polos (próximo relativamente al
eje imaginario) produce una sobreoscilación elevada.
• Si la planta tiene un cero en el SPD y el sistema en lazo cerrado es estable, la
respuesta y(t) a un escalón siempre comienza con una suboscilación, es decir,
arranca en sentido opuesto al de la entrada u(t). Esto es ası́ porque, en la
práctica, el cero en el SPD no va a poder ser cancelado, y los sistemas con
ceros en el SPD muestran ese comportamiento.
54 CAPÍTULO 2. DISEÑO DE CONTROLADORES

• Si la planta tiene un polo en el SPD y el sistema en lazo cerrado es estable,


la respuesta y(t) arranca en el mismo sentido que u(t) (tiene sobreoscilación).
En efecto, el polo de la planta en el SPD, según hemos visto, no va a poder
ser cancelado. Entonces, dicho polo se convierte en un cero para la función
de transferencia E/U , y en consecuencia e(t) tendrá suboscilación. Como
E = U − Y y U = 1 (escalón unitario), una suboscilación en E inducirá una
sobreoscilación en Y .

2.4.3 Re-diseño. Compensador en serie


Considerando estas propiedades, vamos a retomar el problema de diseño que antes
hemos efectuado.
En primer lugar, no es posible, en la práctica, cancelar el polo s = −1 de la
planta, como habı́amos hecho; hemos de elegir otra ubicación para el cero zc del
controlador. Como el cero zc del controlador es también un cero para la función
de transferencia Y /U , la experiencia demuestra que una elección adecuada es to-
mar zc = |pd |. De esta manera la sobreoscilación Mp del sistema en lazo cerrado
se aproximará bastante a la del sistema de segundo orden (deseado), definido por
las especificaciones. Valores mayores de zc , aunque disminuirı́an la sobreoscilación
máxima, reducirı́an la contribución de argumento ϕc del controlador.
Por tanto elegimos zc = |pd | = 50, procediendo a calcular ϕd . Pero si realizamos
la representación gráfica de la figura 2.19 vemos que esta elección no es posible,
porque el máximo ángulo ϕc que se puede obtener con pd = −32.5+38j y pc = −50 es
de unos 65o , y necesitamos 80o . Por ello nos vemos obligados a elegir otra ubicación
para zc más hacia la derecha, si bien sabemos que ası́ obtendremos un sobreimpulso
mayor que el exigido.
Con zc = 25, para ϕc = 80o , obtenemos

pc = −130.6

Con lo que la función de transferencia del controlador queda


s + 25
G c = Kc
s + 130
El valor de Kc en pd , obtenido a partir del lugar de la condición de módulo es Kc =.
Puede comprobarse que la respuesta a una entrada u(t) escalón acusa una so-
breoscilación mayor que la permitida por las especificaciones.

2.4.4 Compensador en realimentación


Una posible solución al problema anterior es colocar el compensador de adelanto en
el lazo de realimentación en lugar de en serie con la planta. El esquema del control
se indica en la figura 2.24
Calculemos las funciones de transferencia asociadas a este esquema:
Y Kc N p Df M Kc Df Dp
= , =
U D U D
2.4. DISEÑO EN EL LUGAR DE LAS RAÍCES 55
d1 d2

u- m  m - +m
? Np - +m
?
r
y -
+ - K
c
-

Dp
6

Nf 
+m
Df
6

d3
Figura 2.24: Esquema de control en feedback.

relacionan la salida y y esfuerzo de control m con la entrada u;

Y Np Df M Np Nf
= , = −Kc
D1 D D1 D

relacionan la salida y y el esfuerzo de control m con la perturbación d1 ;

Y M M N f Dp
= , = −Kc
D3 D1 D3 D

en donde D = Df Dp + KNf Np .
El error para entrada rampa vale
 
1 Y (s) 1 Kc Np Nf + Df Dp − Kc Df Np
er (s) = 2 1− =
s U (s) s2 Df Dp + Kp Nf Np

Los factores comunes (si los hay) de Nf y Dp , que en el controlador serie se


cancelaban, son polos de Y /U y de Y /D1 , y no se cancelan.
Si comparamos las expresiones Y /U y M/U con las halladas antes para el es-
quema con controlador en serie, vemos una importante diferencia: Nc ha sido reem-
plazado por Df . Esto quiere decir que en el esquema de control con compensador
en feedback, los polos del compensador se convierten en ceros en las funciones de
transferencia en lazo cerrado Y /R y M/R. Esto tiene un efecto beneficioso pues el
sobreimpulso máximo se reducirá, ya que, por ser un compensador de adelanto de
fase, pc > zc (el efecto serı́a perjudicial si el compensador fuera de retraso).
Pero esto significa que tenemos mayor libertad para escoger zp : podemos darle
un valor menor que |pd | sin que aumente el sobreimpulso.
Como conclusión se puede decir que, siempre que sea posible, el compensador
debe colocarse en el lazo de realimentación.
Hay aún otro inconveniente. El cero del compensador permanece como cero en
la función de transferencia Y /D3 , en ambas configuraciones de serie y feedback.
Debido a ello el sistema en lazo cerrado será muy sensible al ruido D3 en la medida
si los polos en lazo cerrado se han desplazado mucho hacia la izquierda en el SPI.
56 CAPÍTULO 2. DISEÑO DE CONTROLADORES

2.4.5 Compensador de retraso de fase en serie


Su función de transferencia es
s + zc
Gc (s) = ,
s + pc

igual que la del de adelanto de fase, pero con zz > pc > 0. Por ser su ganancia
estática mayor que uno, las constantes de error del sistema quedarán multiplicadas
por el factor zz /pc , por estar en serie con la planta. El diseño de este controlador
consiste en encontrar zc y pc que satisfagan una relación dada.
Sea, como antes, pd el polo dominante deseado. Puesto que para una relación
dada de |zc |/|pc |, la contribución de ángulo ϕc del controlador en pd disminuye con
|zc |, debemos seleccionar zc lo más pequeño posible para que este compensador tenga
poco efecto sobre la respuesta transitoria. Por tanto colocaremos zc próximo a los
polos dominantes.
El efecto del compensador de retraso en el lugar de las raı́ces es “doblar” el lugar
hacia el SPD, desplazando el punto σc la misma distancia que el controlador de
adelanto pero hacia la derecha.

2.4.6 Máxima fase de un controlador de adelanto


La función de transferencia de un controlador de adelanto es
s+z
G( s ) =
s+p

Como se ve en la figura 2.25, la fase de este controlador es ϕc = β −α, con p > z > 0.

Su máxima contribución de fase ϕmax depende sólo de α = z/p como puede


verse en su diagrama de Nyquist, en la figura 2.26. Su trazado con Maple para
z = 1, p = 3 se puede hacer con:

Iw+z
G :=
Iw+p
> z:=1:p:=3:

> plot([Re(G),Im(G),w=0..200],0..1.1);

Nos interesa hallar el valor máximo de ϕc y la frecuencia ωm en la que se produce.


Ponemos α y β en función de ω, z y a, con a = z/p.
ω  ω a
ϕc := arctan − arctan
z z
La derivada de esta función con respecto a ω se obtiene con

> p1:=diff(phi_c,omega);
2.4. DISEÑO EN EL LUGAR DE LAS RAÍCES 57

Im

pd

ϕc

α β

pc zc Re

pd

Figura 2.25: Fase ϕc del controlador.

Im
ωm

ϕmax ω=0 ω = oο
α 1+ α 1 Re
2

Figura 2.26: Fase máxima ϕmax .


58 CAPÍTULO 2. DISEÑO DE CONTROLADORES

1 a
p1 := 2
−
ω 2 a2
  
ω
z 1+ z 1+ 2
z2 z
Para hallar el máximo hemos de resolver la ecuación ϕ0c (ω) = 0:

> wm1:=solve(diff(phi,omega)=0,omega);

√ √
( −1 + a ) z a ( −1 + a ) z a
wm1 := ,−
−a2 + a −a2 + a
Simplificando esta expresión obtenemos la pulsación correspondiente a ϕmax :

> wm:=normal(wm1[2]);

z
wm := √
a

Sustituyendo wm en la expresión de φc queda

> fimax := subs(omega=wm,phi);

√ 
 
1
ϕmax := arctan √ − arctan a
a
El seno de esta expresión es

> sfm1:=expand(sin(fimax));


1 a
sf m1 := r −r
√ 1√ 1√
a 1+ 1+a 1+ 1+a
a a
que puede simplificarse con

> sfm:=radsimp(sfm1);

−1 + a
sfm := −
1+a
es decir que

1−a
sin(ϕmax ) =
1+a

Estas fórmulas son útiles para diseñar controladores de adelanto de fase.


2.4. DISEÑO EN EL LUGAR DE LAS RAÍCES 59

Ejemplo.
Se desea controlar un sistema dinámico cuya planta tiene por función de transferen-
cia
500
Gp (s) =
s(s + 1)
mediante un controlador de adelanto de fase, de forma que el sistema resultante tenga
una frecuencia de cruce ωc = 35 rad/s y un margen de fase de 65o . Resolución

En el trazado de Bode vemos que para ω = 35 el sistema tiene un margen de fase

de −(−180 + 178.4) = 1.6o (casi cero) y un margen de ganancia muy pequeño, casi
0dB. Para conseguir las especificaciones deseadas hemos de poner un compensador.
El compensador tiene que aportar, en ω = 35 rad/s, una fase ϕc = 65o y una
ganancia Kc tal que el margen de ganancia resultante sea de 8dB. De la ecuación
1−a
sin(ϕmax ) =
1+a
podemos hallar a, ya que conocemos ϕmax , que en radianes vale

> phi_max:=65*Pi/180;
13
ϕmax := π
36
Para hallar a hacemos

> a11:=solve(sfm=sin(phi_max),a);
36 − 13 π
a11 := −
−36 − 13 π
y obtenemos también su valor numérico

> a:=-evalf(a11);

a := .04914852341
Por otro lado, como sabemos que la pulsación ωm correspondiente a la máxima
fase ϕmax es
z
ωm := √
a
poniendo ωm = 35, podemos hallar zc .

> zc := 35 * sqrt(a);

zc := 7.759313191
y también pc :
60 CAPÍTULO 2. DISEÑO DE CONTROLADORES

> pc:=zc/a;

pc := 157.8747977
Una vez hallados pc y zc , lo único que queda es hallar Kc . Para ello aplicamos
la condición de que el margen de ganancia ha de ser de 8dB para ω = 35 rad/s.
Hallamos primero la ganancia en decibelios para ω = 35 y para los valores de zc y
pc hallados, en función de Kc

> Gdb35:=evalf(20*log10(Kc*abs(subs(w=35,p=pc,z=zc,G))));

Gdb35 := 20. log10( .2216946625 Kc )


y resolvemos la ecuación Gdb35 (Kc) = 8 en Kc .

> solve(Gdb35=8,Kc);

El valor que se obtiene es


Kc = 11.33038749
Finalizado el diseño, podemos representar el diagrama de Bode del sistema com-
pensado para verificar que cumple con las especificaciones y, si fuera preciso, realizar
los últimos ajustes de los parámetros del controlador por tanteo y mediante simula-
ción.

2.5 Diseño en la respuesta de frecuencia


La respuesta de frecuencia de un sistema dinámico es una representación no pa-
ramétrica (número infinito de parámetros), ya que viene dada en forma de curvas
continuas, en contraste con los modelos paramétricos de función de transferencia y
de estados. Una de las ventajas que tiene es que no está influida por el orden del
sistema. Recordemos que información neta que proporciona el lugar de las raı́ces
al diseñador va disminuyendo gradualmente a medida que aumenta el número de
ramas, que es igual al orden del sistema. Por otro lado el empleo de escalas lo-
garı́tmicas hacen que el rango bajo de frecuencias resulte expandido y entonces los
errores absolutos del diagrama de Bode corresponden a errores absolutos en esca-
la lineal. El dominio de la frecuencia está especialmente indicado para incluir las
imperfecciones de modelado por lo que se emplea en diseño robusto.
Al ser una representación de dimensión infinita no podemos esperar que haya
fórmulas explı́citas que relacionen la respuesta de frecuencia con los parámetros
caracterı́sticos de la respuesta temporal, o viceversa, incluso aunque se conociera
el orden del sistema. Por ello, el adquirir destreza de diseño en el dominio de la
frecuencia precisa de una considerablemente mayor experiencia que para hacerlo en
cualquiera de sus dos alternativas paramétricas, lugar de las raı́ces o espacio de
estado.
2.5. DISEÑO EN LA RESPUESTA DE FRECUENCIA 61

2.5.1 El problema del diseño de feedback


El análisis en el dominio de la frecuencia de los sistemas de segundo orden muestra
que la realimentación negativa tiene como ventajas el aumento del ancho de banda,
la disminución de la sensibilidad del sistema a las variaciones de los parámetros y
la obtención de una función de transferencia de módulo unidad (con realimenta-
ción unitaria) en el rango de frecuencias en el que la ganancia en lazo abierto es
suficientemente alta.
d1 d2

u- m  - - Nc m- m
? Np - +m
? y -
r
+ Kc + -

Dc Dp
6

+m
6

d3
Figura 2.27: Esquema de control en serie.

Supongamos el sistema de control con realimentación representado en la figura


2.27. La expresión de la salida Y (s) es
Gc Gp 1 Gp
Y = (U − D3 ) + D2 + D1 (2.24)
1 + Gc Gp 1 + Gc Gp 1 + Gc Gp

y la del error E(s),


1 Gc Gp Gp
E= (U − D2 ) + D3 − D1 (2.25)
1 + Gc Gp 1 + Gc Gp 1 + Gc Gp

Las ecuaciones (2.24) y (2.25) nos dan a entender que la tarea del diseño, condi-
cionado siempre a ciertas restricciones y con el objetivo de cumplir determinados
requisitos de funcionamiento, no parece sencilla. Por ejemplo, uno de estos requi-
sitos demanda la reducción de los errores debidos a la entrada de referencia u y a
la perturbación d2 , mientras que otro pide la reducción del error producido por el
ruido en la medida d3 .
El conflicto entre estos dos objetivos de diseño es evidente: si en la ecuación
(2.25) hacemos |Gc Gp | elevado en un amplio margen de frecuencia, para reducir los
errores asociados con u y d2 , resulta de (2.24) que entonces y ' r − d3 , con lo que
el ruido en la medida d3 pasa directamente a la salida.
Una frecuente restricción es que esfuerzo de control, o variable manipulada m,
no pueda tomar valores superiores a ciertos lı́mites (para los que alcanzarı́a la satu-
ración). En efecto, la expresión de la variable manipulada es
Gc Gc Gp
m= (U − D2 − D3 ) − D1
1 + Gc Gp 1 + Gc Gp
62 CAPÍTULO 2. DISEÑO DE CONTROLADORES

Si hacemos |Gc Gp |  1 siendo |Gp | pequeña, es decir, aumentamos la ganancia en


lazo abierto a costa sólo del controlador, queda
1
m= (U − D2 − D3 )
Gp

Que el controlador emita esta fuerte respuesta, ante las entradas U (de referencia) y
D2 (perturbación en salida), puede parecer lógico. No ası́, sin embargo, que también
lo haga ante el ruido en la medida D3 . Por ello la ganancia de lazo no debe hacerse
%$#"!%#! &%$
& #"!#! $ #"!#! $#" ! "!                  
$"('$#"!&%$
alta en un intervalo arbitrario de frecuencias.
&
'' $#"!' ( "(    " 
$ '$#"!' (   ! #    
" $ '$#"!' (   !    
" '"!' (     
 '' (     
 '' (     
 '' (     
 '' (    
  '' (   
 '' (  
  ''  '' (''

(
20 log M
($#"!

(
'"!
'' "! (
$#"!
( (
$#"!
$"! #"!
 ' (
 ' (

! "  ' (

 ' (
         
 ' (
         
 ' (
         
 ' (
         
 ' (
       
 ' (
       
 ' (
     
 ' ('
 (
' 
(     
 ' 
(     !   "     
 ' 
(     !   "     
 ' 
(           
 ' 
(          
 ' 
(          
 ' 
(          
 ' 
(          
 ' 
(        
 ' 
(        
 ' 
(      
 ' (('
(
(' 
   
( ' 
 
( ' 
 
(  
(  ' 
 
( ' 
 
( ' 
 
( ' de
 
( ' 
 
( ' 
 
( ' 
 
( ' ('' 

(' ('

 (' 

(
 
'
    (

  

'
(     (

  

'
' Limites
(     (

  

'
(     (

  

'
(     (

  

'
(     (

  

'
(     (

  

'
(    (

  

'
(    (

  

'
(   (

  

'
(   (

   (' 


 (
('
' 
('  (
 (
'
'  
   
  incertidumbres 
  
   ' 
( 
   
   ' 
( 
   
   ' 
( 
   
   ' 
( 
   
   ' 
( 
   
   ' 
( 
   
   ' 
( 
   
   ' 
( 
    ' 
( 
 
('
' 

( '  
(
 ('
 '  
(
     ('
   '  
(
     ( '
 
        '  


(
     ( '
 
 de        '  


(
     ('
 
    modelado       '  

(
     ( '
 
        '  


(
     ( '
 
        '  


(
     ( '
 
        '  


(
   ( '
 
      '  


(
   ( '
 
      '  


(
 
(   
 '    '    (('' 

(
 
QQ R
R QQ : 9 R QQ : 9 8 77 RQQ : 9 8 77 6 55 R QQ : 9 8 77 6 55 R Q43Q3 : 9211 8 77 6 55 R Q43Q3 : 9211 8 77 6 55 R Q43Q3 : 9211 0 //877 . --655 R Q43Q3 : 9211 0 //877 . --655 , ++RQ43Q3 : 9211 8 70/7/ . --655 , ++RQ43Q3 : 9211 8 70/7/ . --655 , ++RQ43Q3 : 921*)1) 870/ .-65 ,++RQ43Q3 *)):9211 
 ( 
   
(  
(    
    
(  
   
 
(     
 
(     
  
( y   
 
(     
 
(     
 
(     
 
(      ((' 

( 
R
<;RQ 
R ; < 9 
: 
R ; < 9 
: 
8 
R ; < 9 
: 
8 
6 
R ; < 9 
: 
8 
6 4 
R ; < 9 2 
: 
8 
6 4 
R ; < 9 2 
: 
8 
6 4 
R ; < 9 2 
: 
0 8 
. 6 4 
R ; < 9 2 
: 
0 8 
. 6 
, 4 R ; < 9 2 
: 0 
8 
. 6 
, 4 R ; < 9 2 
: 0 
8 
. 6 
, 4 R ; < 92*91) 870/7/ .--655 ,+R4<;Q3 *):9291
: ('
' ' 
( (  ' 
 ' 
 'ruido

' 

    
 

 ( '     
 
'
 
 

 ( '     
 
'
 



 ( '     
 
'
 



 ( '     
 
'
 



 ( '     
 
'
 



 ( '     
 
'
 



 ( '     
 
'
 

 (

'
'     

' 
   ('' 

 

<;TS Q 
R ; < S 
T 9 
: Q 
R ; < S 
T 9 
: 7 
8 Q 
R ; < S 
T 9 
: 7 
8 5 
6 Q 
R ; < S 
T 9 
: 7 
8 5 
6 3 Q 4 
R ; < S 
T 1 9 2 
: 7 
8 5 
6 3 Q 4 
R ; < S 
T 1 9 2 
: 7 
8 5 
6 3 Q 4 
R ; < S 
T 1 9 2 
: / 
0 7 8 - 
. 5 6 3 Q 4 
R ; < S 
T 1 9 2 
: / 
0 7 8 - 
. 5 6 + 
, 3 Q 4 R ; < S 
T 1 9 2 
: / 7 0 
8 - 
. 5 6 + 
, 3 Q 4 R ; < S 
T 1 9 2 
: / 7 0 
8 - 
. 5 6 + 
, 3 Q 4 R ; < S 
T * 2 
: 0 8 . 6 , 4 R ; < S T * 2 : ' '

( '  (
( 

( 
'
'  
  ( 

  '
'  

(   
  '  

(   
  '  
   ' 
en
   
 ' 

     ' 

     ' 

     ' 

     ' 

      
RQ< ;RQTS> 99 <
: ;RQTS> 99 8
: 77 <;RQTS>=Q : 99 8 77 6 55 < ;RQTS> 99 8
: 77 6 55 < ;RQ43TS> 92191 8
: 77 6 55 < ;RQ43TS> 92191 8
: 77 6 55 < ;RQ43TS> 92191 0
: //877 . --655 < ;RQ43TS> 92191 0
: //877 . --655 , +<;RQ43T 92191 8
: 70/7/ . --655 , +<;RQ43T 92191 8
: 70/7/ . --655 , +<;RQ43T 92191 870/7/ .--655 ,+<;RQ43TSQ3 :92191
: ( 
   ( ( 
 (
( 
 (
( 
 (
( 


 (
( 


 (
( 


 (
( 


 (
( 


 (
( 


 (
( 


   ('( 

medida
;TS>
=R<;
QTS>= <
=R<
Q 
: = Q R 
: 
8 R 
: 
8 
6 = Q R 
: 
8 
6 = 3 Q 4 R 2 
: 
8 
6 = 3 Q 4 R 2 
: 
8 
6 = 3 Q 4 R 2 
: 
0 8 
. 6 = 3 Q 4 R 2 
: 
0 8 
. 6 S = > 3 Q 4 
R 2 
: 0 
8 
. 6 S = > 3 Q 4 
R 2 
: 0 
8 
. 6 S = > 3 Q 4 
R 2:
: 80870/ .665 R<;4TSRQ43 :2:921  '
'
 (
 
   
   
' 
    
   
' 
 
    
   
' 
 
    
   
' 
 
   
   
' 
   
   
' 
   
   
' 
   
   
' 
     
   
' 
     
   
' 
      
' 

RQ@?TS<; ; TS>
= ? Q @ R 9 
: ; 
< S T = 
> ? Q @ R 9 
: 7 
8 ; 
< S T = 
> ? Q @ R 9 
: 7 
8 5 
6 ; 
< S T = 
> ? Q @ R 9 
: 7 
8 5 
6 ; 
< S T = 
> 3 ? Q 4 @ R 1 9 2 
: 7 
8 5 
6 ; 
< S T = 
> 3 ? Q 4 @ R 1 9 2 
: 7 
8 5 
6 ; 
< S T = 
> 3 ? Q 4 @ R 1 9 2 
: / 
0 7 8 5 
6 ; 
< S T = 
> 3 ? Q 4 @ R 1 9 2 
: / 
0 7 8 5 
6 ; < S 
T = > 3 ? Q 4 @ 
R 1 9 2 
: / 7 0 
8 5 
6 ; < S 
T = > 3 ? Q 4 @ 
R 1 9 2 
: / 7 0 
8 5 
6 ; < S 
T = > 3 Q 4 
R 1 9 2 

  
   
 
   
  
 
  
 
 
 
   
 
 
 
   
 
 
 
  


 
 
 
  


  
 
 
  


  
 
 
  


 log 
  

  
   


  
  
  
   
 ω 

 

  
  
   
      

>=R
Q@?S
BA<;T>=R@ S<;>=R
T
Q ? @ ; A < B 9 
: S<;>=R

T Q ? @ ; A < B 9 
: 7 
8 S<;>=R@?QSBA<; :

T 9 7 
8 5 
6 S<;>=R

T Q ? @ ; A < B 9 
: 7 
8 5 
6 S<;>=R

T 3 Q ? 4 @ ; A < B 1 9 2 
: 7 
8 5 
6 S<;>=R

T 3 Q ? 4 @ ; A < B 1 9 2 
: 7 
8 5 
6 S<;>=R

T 3 Q ? 4 @ ; A < B 1 9 2 
: 7 
8 5 
6 S<;>=R

T 3 Q ? 4 @ ; A < B 1 9 2 
: 7 
8 5 
6 S<;>=R

T 3 Q ? 4 @ ; A < B 1 9 2 
: 7 
8 5 
6 S<;>=R

T 3 Q ? 4 @ ; < 1 9 2 
: 7 
8 5 
6 S<;>=R

T 3 Q 4 ; < 1 9 2 
: 7 8 5 6 S<;R4Q3S<; :921
T             
    
    
    
     
     
       
       
      

      


Q?BA<;TSDC>= 
S T>=R
? Q @ 9 
: 
S T>=R
? Q @ 9 
: 7 
8 T>=R@Q?BA<;TSDC : 9 7 
8 5 
6 
S T>=R
? Q @ 9 
: 7 
8 5 
6 
S T>=R
3 ? Q 4 @ 1 9 2 
: 7 
8 5 
6 
S T>=R
3 ? Q 4 @ 1 9 2 
: 7 
8 5 
6 
S T>=R
3 ? Q 4 @ 1 9 2 
: 7 
8 5 
6 
S T>=R
3 ? Q 4 @ 1 9 2 
: 7 
8 5 
6 
S T>=R
3 ? Q 4 @ 1 9 2 
: 7 
8 5 
6 
S T>=R
3 ? Q 4 @ 1 9 2 
: 7 
8 5 
6 
S T>=R
3 Q 4 1 9 2 
: 7 8 5 6 TR4Q3<;TS :291           
  
 

 





  

RQ@?
BA<;TSODC=
; A < B C S D 
T = > Q@?BA<;T
R
C S D = O 99 R
: ; A < B C S D 
T = > Q@?BA<;T
C S D = O 99 8
: 77 RQ@?BA<;TSODC=QP?> Requisitos = > 99 8
: 77 6 55 R ; A < B C S D 
T = > Q@?BA<;T
C S D = O 99 8
: 77 6 55 R ; A < B C S D 
T = > Q@?43BA<;T
C S D = O 99 8
: 77 6 55 R ; A < B C S D 
T = > Q@?43BA<;T
C S D = O 99 8
: 77 6 55 R ; A < B C S D 
T = > Q@?43BA<;T
C S D = 99 8
: 77 6 55 R ; A < B C S D 
T = > Q@?43BA<;T
C S D = 99 8
: 77 6 55 R ; A < B S 
T = > Q@?43BA<;T
S = 99 8
: 77 6 55 R ; < S 
T = > Q@?43<;T
S = 99 8
: 77 6 55 R ; < S 
T = > Q43<;T
S = 99 877 655 RQ43<;TSQ :99
:                          
    
    
    
      
      
  
    
      

QP@?>BA<;T
R > P ? Q @ 
R 
: > P ? Q @ 
R 
: 
8 @ 
R 
: 
8 
6 > P ? Q @ 
R 
: 
8 
6 > P ? Q @ 
R 
: 
8 
6 > P ? Q @ 
R 
: 
8 
6 > ? Q @ 
R 
: 
8 
6 > ? Q @ 
R 
: 
8 
6 > ? Q @ 
R 
: 
8 
6 > ? Q @ 
R 
: 
8 
6 > Q 
R : 887 6 R<;TSRQ ::9
de
SDCRF@
QPOE?>=BA<;TSDC BA<;T
SDCR
= O > P ? E Q @ F 9 
: ; A < B C S D 
T = O > P ? E Q @ F 
R 9 
: 7 
8 ; A < B C S D 
T = O > P ? E Q @ F 
R 9 
: 7 
8 ; A < B C S D 
T = O > P ? E Q @ F 
R 9 
: 7 
8 ; A < B C S D 
T = O > P ? E Q @ F 
R 9 
: 7 
8 ; A < B C S D 
T = O > P ? Q @ 
R 9 
: 7 
8 ; A < B C S D 
T = > ? Q @ 
R 9 
: 7 
8 ; A < B C S D 
T = > ? Q @ 
R 9 
: 7 
8 ; A < B S 
T = > ? Q @ 
R 9 
: 7 
8 ; < S 
T = > ? Q @ 
R 9 
: 7 
8 ; < S 
T = > Q 
R 9 
:
BA<;T BA<;T BA<;TSDCQPOE?>=RHGFBA@<; 9 BA<;T BA<;T BA<;T BA<;T BA<;T BA<;T <;T <;T <;TSQR<; 9:
funcionamiento
QPOE?>=
RHGFBA@<;TSDC SDCQ
= O > P ? E @ F R ; A G < B H 
9 : C S D = O > P ? E 
Q @ F R ; A G < B H 
9 : : C S D = O > P ? E 
Q @ F R ; A G < B H 
9 : C S D = O > P ? E 
Q @ F R ; A < B 
9 : C S D = O > P ? 
Q @ R ; A < B 
9 : C S D = > ? 
Q @ R ; A < B 
9 : C S D = > ? 
Q @ R ; A < B 
9 : S = > ? 
Q @ R ; A < B 
9 : S = > ? 
Q @ R ; < 
9 : S = > 
Q R ; < 
9 :
SDCPO>=R
T SDCPO>=R
T TSDCPO>=RHGFBA@<;QE?TSJIDC : SDCPO>=R
T SDCPO>=R
T SDCPO>=R
T SDC>=R
T SDC>=R
T S>=R
T S>=R
T S>=R
T TSR<;QTS :9
(Rango Activo)
PO>=R
QHGFEBA@?<;T
SJIDCPO>=RGFA@; ? E Q @ F ; A G < B H C I S D J 
T PO>=R 9 
: ? E Q @ F ; A G < B H C I S D J 
T PO>=R 9 
: PO>=RGFA@;QE?TSJIHDCB<PO>= PO>=R 9 ? E Q @ F ; A G < B H C S D 
T 9 
: ? E Q @ F ; A < B C S D 
T PO>=R 9 
: ? Q @ ; A < B C S D 
T PO>=R 9 
: ? Q @ ; A < B C S D 
T >=R 9 
: ? Q @ ; A < B C S D 
T >=R 9 
: ? Q @ ; A < B S 
T >=R 9 
: ? Q @ ; < S 
T >=R 9 
: Q ; < S 
T >=R 9 
:
QE?TSJIHDCB<
POLK>=NFE@? FA@;QE?T
G < B H C I S D J = K O > L P ? E Q @ F ; A G < B H C I S D J 
T = O > P ? E Q @ F ; A G < B H C S D 
T = O > P ? E Q @ F ; A < B C S D 
T = O > P ? Q @ ; A < B C S D 
T = O > P ? Q @ ; A < B C S D 
T = > ? Q @ ; A < B C S D 
T = > ? Q @ ; A < B S 
T = > ? Q @ ; < S 
T = > QT
; < S = > R;QTS<
TSJIHGDCBA<;
POLK>=MNF ? E @ 
F SJIHGDCBA<;POLK>=F
T ? E @ 
F SJIHGDCBA<;PO>=F

T ? E @ 
F SJIHGDCBA<;PO>=F@E?SIHGCBA T

T ? E @ 
F SHGDCBA<;PO>=F ? E 
@ F SDCBA<;PO>=F@

T ? 
@ SDCBA<;PO>=@

T ? 
@ SDCBA<;>=@

T ? 
@ SDCBA<;>=@

T ? 
@ SBA<;>=@

T ? @ S<;>=@?ST

T S<;>=STS<;S
E@?S
IHGCBATPOLKJD>=F@ ? E @ A G B H C I 
S ? E @ A G B H C I 
S ? E @ A G B H C 
S ? E A B C 
S ? A B C 
S ? A B C 
S ? A B C 
S ? A B 
S
ME?HGBAJIDCTPOLKJD>=F IDC TPOJD>=F
@E?HGBAJ IDC TPOJD>=F@E?HGBAJIDC TPOD>=F
@E?HGBAJ C TPOD>=F@
@E?HGBAD C TPOD>=@
E?BAD C TD>=@
?BAD C TD>=@
?BAD ?BADC T>=@ ?BA T>=@? T>= T
Figura 2.28: Zonas permitidas en la respuesta de frecuencia.

De acuerdo con estas ideas, podemos pensar en dar a la ganancia de lazo una
determinada forma, tratando de satisfacer las exigencias impuestas (figura 2.28).
Será conveniente por ello:

• Dar un valor alto a la ganancia en lazo abierto M = |Gc Gp | en el rango activo


de frecuencia, para alcanzar un adecuado funcionamiento en esa zona.

• Dar a M una gran atenuación en el intervalo de frecuencia en el que el ruido


es importante
2.6. DISEÑO EN EL ESPACIO DE ESTADO 63

• Entre estas dos zonas, dar a M una atenuación en pronunciado descenso para
conseguir que la anchura de banda sea amplia.

Pero aquı́ ocurre un problema: el aumento en la pendiente de atenuación de la


curva M hace reducir el margen fase.
Otra importante restricción de diseño es la tolerancia a imprecisiones de modela-
do. El análisis revela que para conservar la estabilidad en lazo cerrado se necesita un
modelo preciso en lazo abierto en un rango de frecuencia alrededor de la frecuencia
de cruce. Más concretamente, cuanto menor sea el valor de |1 + G( jω)|, ω ∈ (0, ∞),
mayor precisión se necesita en el modelado. En efecto, la expresión

1
SGT =
1+G

es la sensibilidad de la función T = G/(1 + G) respecto del parámetro G.


En la práctica nos encontramos con que las imprecisiones en el modelado de la
planta aumentan con la frecuencia, debido sobre todo a la existencia de dinámicas no
modeladas como retardos de tiempo, resonancias mecánicas, polos de alta frecuencia,
etc. Por ello la ganancia a alta frecuencia debe ser pequeña para mantener el sistema
estable. En particular, esto significa que la compensación puede aumentar la anchura
de banda (BW) del sistema sólo si el modelo continúa siendo relativamente preciso
en BW. Si intentáramos ensanchar BW sobre la región en que las incertidumbres de
modelado son elevadas, ello conducirı́a a un funcionamiento indeseable, o incluso a
la inestabilidad.

2.6 Diseño en el Espacio de Estado


Los métodos basados en el Lugar Geométrico de las Raı́ces y en la Respuesta de
Frecuencia, propios del modelo de función de transferencia, se basan en la realimen-
tación de la variable salida y, por lo común, en la utilización de controladores con un
reducido número de parámetros de diseño: controladores PID y de adelanto-retraso
de fase. El número de polos en lazo cerrado que podemos ubicar por diseño con
estos controladores es de dos.
Con estos métodos, el diseño de compensadores para ubicar más de dos polos
resulta complicado debido en gran parte a la dificultad de relacionar los parámetros
del controlador con las especificaciones deseadas.
Utilizando el modelo de estado, en cambio, es posible realimentar el vector de
estado en lugar de la salida, disponiendo de información suficiente, como vamos a
ver, para cambiar la posición de todos los polos del sistema a otras nuevas posiciones
prefijadas a voluntad.
64 CAPÍTULO 2. DISEÑO DE CONTROLADORES

2.6.1 Asignación de polos


Sea un sistema dinámico cuyo modelo de estado está en forma canónica controlable.
   
0 1 0
.. . 
 .. 
  
ẋ =  .
x +  u
 
 1   0 
−an −an−1 . . . −a1 1
y = Cx

en donde x ∈ Rn , u, y ∈ R, A ∈ Rn×n B ∈ Rn×1 , C ∈ R1×n El polinomio caracterı́stico


está definido por la última fila de la matriz A

det(sI − A) = sn + a1 sn−1 + . . . + an−1 s + an

Sean λ1 , λ2 , . . . , λn los valores propios de A y supongamos que deseamos obtener


un nuevo sistema, mediante feedback de estado, que tenga como polinomio carac-
terı́stico
α(s) = sn + α1 sn−1 + . . . + αn−1 s + αn
con raı́ces µ1 , µ2 , . . . , µn .
Definiendo una nueva entrada v, de forma que ahora la entrada a la planta sea
v − Kx, siendo  
K = k1 k2 . . . kn
las ecuaciones de estado se transforman en

ẋ = (A − BK)x + Bv
y = Cx

Si damos a K el valor
 
K= αn − an αn−1 − an−1 . . . α1 − a1

entonces el determinante de [sI − (A − BK)] es α(s) puesto que


 
0 0 ... 0
BK = 
 .. 
. 
k1 k2 . . . kn

Esta es la forma más sencilla de resolver el problema de asignación de polos en el


espacio de estado.

2.7 Sintonı́a de controladores PID


Los controladores PID comerciales disponen de mandos externos para el ajuste de
los parámetros Kp , Ti y Td . Para su cálculo teórico podemos aplicar cualquiera de los
2.7. SINTONÍA DE CONTROLADORES PID 65

procedimientos vistos antes, siempre y cuando conozcamos el modelo de la planta.


Si no es ası́, lo que suele hacerse es suponer para ella un modelo muy simple, ajustar
empı́ricamente los parámetros del PID en base a ese modelo y probar luego cómo
funciona el control en la realidad. Pero ¿cómo buscar un modelo simple de un planta
desconocida? La respuesta que a esta cuestión dieron Zeigler y Nichols está basada
en la siguiente observación: en la industria de control de procesos, “la mayorı́a” de
las plantas a controlar admiten como modelo externo la función no racional

A e−T s
G(s) = a ≥ 0. (2.26)
s+a
Bajo este supuesto, los métodos de ajuste constan de dos etapas:

1. Realizar un experimento para determinar los parámetros A, a y T de la planta.

2. Calcular, con fórmulas apropiadas, los parámetros Kp , Td y Ti del controlador


a partir de los parámetros hallados.

Se han desarrollado dos métodos, llamados método de lazo abierto y método de


lazo cerrado.

Método de lazo abierto


Suponiendo que el modelo
A e−T s
G(s) = ,
s+a
es válido para planta, este método consisten en aplicar un escalón unitario 1(t) a
la planta y medir su respuesta temporal y(t) para, a partir de ella, calcular los
parámetros A, a y T de su supuesto modelo.
En el experimento hemos medido la respuesta al escalón y(t) de la planta (figura
2.29).
Primero calcularemos T . Trazando la tangente a la curva y(t) en el punto de
máxima pendiente y hallando su intersección con el eje t, obtenemos el valor del
retardo T del modelo G(s) de la planta. Si la planta real siguiera exactamente el
e−T s
modelo supuesto G(s) = As+a , la máxima pendiente de y(t) se darı́a en el punto
de intersección de la curva con el eje t. Pero, como no va a ser asi, lo que hemos
hecho es una aproximación que consiste en sustituir la parte baja de la curva por la
tangente de pendiente máxima.
Veamos ahora como se hallan a y A. Sabemos que el valor de la respuesta y0 (t)
a un escalón unitario de la planta con retardo nulo

A
G0 (s) =
s+a
en el instante τ = 1/a (constante de tiempo) es

y0 (τ ) = A(1 − e−at )|t=1/a = A(1 − e−1 ) = 0.632A.


66 CAPÍTULO 2. DISEÑO DE CONTROLADORES

y (t ) y (t ) A
a

0.632 A

T t t1 t

Figura 2.29: Cálculo de T (izquierda), de a y de A (derecha)

Por tanto, la respuesta al escalón unitario de la planta con retardo T

A e−T s
G(s) = ,
s+a

en el instante τ + T , valdrá también y(τ + T ) = 0.632A. Asi que para determinar la


constante de tiempo τ trazamos una recta horizontal de ordenada igual a 0.632A,
hallamos el punto de intersección de la recta con la curva y(t) y entonces la vertical
por dicho punto marca el valor t1 = τ + T . Por tanto

τ = t1 − T = 1/a ⇒ a.

Por ser la entrada un escalón unitario, el valor final de la respuesta o valor en estado
estacionario es igual a la la ganancia estática de la planta.

A
yss = lim y(t) =
t→∞ a

Por ello,
A = a yss

El valor
Rr = A/τ = aA

se llama tasa de reacción reaction rate.


En el caso en que la constante a sea nula, aún es posible definir los valores de T
(igual que antes) y de Rr que es igual a la pendiente máxima de la respuesta.
El principal inconveniente del método de lazo abierto es que el experimento que
nos da la respuesta temporal de la planta exige controlar en lazo abierto la planta
durante un tiempo suficiente para que la respuesta llegue al estado estacionario y
esto puede ser prohibitivo en ciertos procesos industriales en funcionamiento.
2.7. SINTONÍA DE CONTROLADORES PID 67

Método de lazo cerrado


Permite calcular los parámetros del modelo G(s) de la planta haciendo un expe-
rimento con el control PID en funcioonamiento, en lazo cerrado. El método es el
siguiente. Con el proceso en funcionamiento se ponen los parámetros de PID con
los valores Td = 0 (o el valor mı́nimo posible), Ti = ∞ (o el valor máximo posible) y
se va aumentando despacio la ganancia kp hasta el valor ku para el cual la respuesta
y(t) sea oscilante, con ciclos de amplitud mantenida, es decir, de aspecto sinusoidal.
Entonces anotaremos los valores de Ku y del perı́odo de oscilación Tu .
Aunque este método es más factible que el anterior, también puede resultar a
veces problemático: hay procesos que no toleran oscilaciones mantenidas por mucho
tiempo y hay otros (muy lentos) que aunque las admitan, pueden exigir un tiempo
de experimento demasiado largo.
Hay otros métodos, también de lazo cerrado, que se basan en el funcionamiento
normal del controlador para hacer los cálculos y, además, si se ponen en modo
automático son capaces de ponerse ellos mismos los valores más adecuados a las
circustancias. Son los controladores inteligentes.

2.7.1 Ajuste de los parámetros del PID


A partir de los valores empı́ricos T, Rr , obtenidos en lazo abierto, o de los valores
Ku , Tu obtenidos en lazo cerrado, se pueden calcular los parámetros Kp , Td y Ti del
controlador de forma aproximada.
Entre los métodos que se han desarrollado para ello cabe destacar el de Ziegler–
Nichols y el de Shinskey, que suponen suponen a = 0 en el modelo G(s) de la planta,
y el de Cohen-Coon que supone a 6= 0.

Zeigler-Nichols Shinskey Zeigler-Nichols Cohen-Coon


Tipo (lazo cerrado) (lazo cerrado) (lazo abierto) (lazo abierto)
1 τ T
P Kp 0.5Ku 0.5Ku Rr T AT
(1 + 3τ )
0.9 τ T
P I Kp 0.45Ku 0.5Ku Rr T AT
(0.9 + 0.082 3τ )
3.33+0.3T /τ
Ti 0.833Ku 0.43Ku 0.33T T ( 1+2.2T /τ )
1.2 τ
P ID Kp 0.6Ku 0.5Ku Rr T AT
(1.35 + 0.27 Tτ )
Td 0.5Ku 0.34Ku 2T T ( 2.5+0.5T /τ
1+0.6T /τ
)
0.37
Ti 0.125Ku 0.08Ku 0.5T T ( 1+0.2T /τ )
68 CAPÍTULO 2. DISEÑO DE CONTROLADORES
Parte II

Control de procesos de eventos


discretos

69
Capı́tulo 3

Sistemas booleanos

3.1 Dispositivos lógicos


Ciertos dispositivos fı́sicos se construyen de forma que sólo tienen dos posibles esta-
dos de equilibrio los cuales, en cada caso, reciben nombres tı́picos que los identifican.
En la tabla se indican algunos de ellos junto con los nombres de sus dos estados.
Dispositivo Estados
Mecánico sı́ / no
Interruptor eléctrico abierto / cerrado
Válvula abierta / cerrada
Transistor saturación / corte
Estos y otros dispositivos permiten construir otros aparatos más complejos que
se llaman automatismos. Sus modelos son los sistemas digitales y pueden ser de dos
clases:

• Sistemas combinacionales

• Sistemas secuenciales

0 1

Figura 3.1: Dispositivo mecánico de dos estados estables.

71
72 CAPÍTULO 3. SISTEMAS BOOLEANOS

En un sistema de control, tanto las entradas como las salidas pueden tomar,
en general, valores reales cualesquiera. Pues bien, en los automatismos y sistemas
digitales cada una de dichas variables tiene dos valores fundamentales, llamados a
veces niveles lógicos “0” y “1”, que corresponden a estados de equilibrio del sistema.
Esto no quiere decir que las entradas y salidas no puedan tomar otros valores sino
que, en el modelo sólo vamos a considerar dichos valores, desechando el resto. La
razón para poder hacer esto es que los dispositivos biestables están construidos de
tal manara que sólo admiten dos posiciones de equilibrio estable y que el tránsito
entre ambos estados se realiza rápidamente.
Por ejemplo, una balanza con una pesa en uno de los dos platos es uno de estos
dispositivos. Aunque la balanza puede tomar todas las posiciones intermedias, sólo
consideramos dos: posición “0” (balanza vencida hacia la izquierda) y posición “1”
(balanza vencida hacia la derecha). Al cambiar la pesa de plato el sistema cambia
de estado y, si la pesa es suficientemente grande, el dicho cambio será rápido.
Otro dispositivo bi-estable bien conocido es un interruptor de alumbrado domés-
tico. La forma y la elasticidad del conductor 2 hacen que este sistema, de acciona-
miento manual, tenga dos estados estables. En la figura de la izquierda los contactos
del interruptor están unidos por la presión que el conductor elástico 2 hace sobre
el 1 y el interruptor está cerrado. En la figura de la derecha, tras girar la llave de
encendido, se separan los contactos y el interruptor está cerrado.



 
            
 

 
  
  
  
  
  
  
  
  
  
  
    

  

                       



  
                      
  


  
  

  
    
    
    
    
    
    
    
    
    
   
  1 
  1

              
 

                         

2 2

Figura 3.2: Interruptor doméstico.

Los biestables electrónicos son circuitos muy conocidos y utilizados. Son básicos
para la construcción de otros circuitos electrónicos más complejos como por ejemplo
las memorias RAM (figura 3.4).
La balanza, el interruptor doméstico y el biestable electrónico, son sistemas que
permanecen en el mismo estado por tiempo indefinido una vez que se dejan de aplicar
sus correspondientes entradas. Por eso se dice que son sistemas con memoria. Por
el contrario, hay otros sistemas, llamados sistemas sin memoria, que cuando las
entradas dejan de actuar, pasan a un estado llamado de reposo. Un ejemplo sencillo
de este tipo de sistemas es un pulsador eléctrico.

Ejercicio 3.1.1 Identificar la entrada, la salida y los estados de equilibrio de los


siguientes sistemas:
1. Sistema mecánico de la balanza de la figura 3.1.
2. Sistema del interruptor (figura 3.2).
3.2. ALGEBRA DE BOOLE 73

     



  
   

  

  
   
1


 
  

 2

Figura 3.3: Pulsador

3. Biestable electrónico de la figura 3.4. Explicar su funcionamiento.

4. Pulsador eléctrico de la figura 3.3. Explicar su funcionamiento.

Vcc

RC RC
V1 V2

RB RB

E1 E2

Figura 3.4: Circuito electrónico biestable

3.2 Algebra de Boole


Un conjunto U en el que se han definido dos operaciones ⊕ y tales que, para todo
a, b, c ∈ U satisfacen las propiedades:

1. Idempotentes: a ⊕ a = a a = a

2. Conmutativas: a ⊕ b = b ⊕ a, a b=b a

3. Asociativas: a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c, a (b c) = (a b) c

4. Absorciones: a (a ⊕ b) = a ⊕ (a b) = a

se dice que (U, ⊕, ) es un retı́culo. Si además se cumplen las propiedades

5. Distributivas: a ⊕ (b c) = (a ⊕ b) (a ⊕ c), a (b ⊕ c) = (a b) ⊕ (a c)
74 CAPÍTULO 3. SISTEMAS BOOLEANOS

se dice que es un retı́culo distributivo. Si además de estas cinco se cumplen también


las propiedades de

6. Cotas universales: ∃ 0, 1 ∈ U | 0 a = 0, 0 ⊕ a = a, 1 a = a, 1 ⊕ a = 1

7. Complemento: ∀a ∈ U ∃a ∈ U | a ⊕ a = 1, a a = 0

entonces se dice que (U, ⊕, , , 0, 1) es un álgebra de Boole.

No es difı́cil comprobar que el conjunto Z2 := {0, 1} dotado de las operaciones


“suma lógica” (OR) y “producto lógico” (AND), dadas por las tablas de verdad

OR 0 1 AND 0 1
0 0 1 0 0 0
1 1 1 1 0 1

es un álgebra de Boole.

3.2.1 Funciones booleanas


Si X e Y son dos conjuntos, sabemos que una función

f :X → Y
x 7→ f (x)

definida en X (dominio) y con valores en Y es cualquier ley que hace corresponder


a cada elemento x ∈ X, un elemento bien definido (y sólo uno) y ∈ Y . La ley que
define la función viene dada a veces por una expresión algebraica, como por ejemplo

f: R → R
x 7→ x2 + 2x + 5,

que define una función real de una variable real o

f : R2 → R
(x, y) 7→ x2 − y 2 ,

que define una función real de dos variables reales. Pero otras veces la ley puede
venir expresada de cualquier otra forma tal que describa completamente la corres-
pondencia entre todos los elementos de X con elementos de Y . Cuando el dominio
X es un conjunto finito, dicha ley se puede expresar en forma de tabla.
Una función booleana de n variables x1 , x2 , . . . , xn , se define como una aplicación
de Zn2 en Z2 , es decir
f : Zn2 → Z2
(x1 , . . . , xn ) 7→ f (x1 , . . . , xn )
Por ser Zn2 un dominio finito, una función booleana siempre se puede expresar en
forma de tabla. La tabla que define una función booleana se llama tabla de verdad
de la función.
3.2. ALGEBRA DE BOOLE 75

Se dice que dos funciones booleanas f (x1 , . . . , xn ) y g(x1 , . . . , xn ) son equivalentes


si
f (x1 , . . . , xn ) = g(x1 , . . . , xn )
para todo xi ∈ Z2 , i = 1 . . . , n. Dicho de otro modo, dos funciones booleanas son
equivalentes si sus tablas de verdad coinciden.
Por ejemplo, las funciones f (x1 , x2 , x3 ) = x1 x2 y g(x1 , x2 , x3 ) = x1 x2 (x3 + x3 )
son equivalentes porque sus tablas de verdad,

x1 x2 x3 f x1 x2 x3 g
0 0 0 0 0 0 0 0
0 0 1 0 0 0 1 0
0 1 0 0 0 1 0 0
0 1 1 0 0 1 1 0
1 0 0 0 1 0 0 0
1 0 1 0 1 0 1 0
1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1 ,

son iguales.

Formas canónicas
Evidentemente, la equivalencia de funciones booleanas es una relación de equivalen-
cia. Esta relación permite dividir el conjunto de funciones booleanas de n variables
en clases de equivalencia. El representante canónico de cada clase de equivalencia
no es único: tenemos la forma canónica suma de min-terms, como por ejemplo

f (a, b, c, d) = abcd + abcd + abc!d

y la forma canónica producto de max-terms, tal como

f (a, b, c, d) = (a + b + cd)(a + b + c + d)(a + bc + d).

Una función booleana f (x1 , . . . , xn ) se dice que está expresada en la forma


canónica suma de min-terms si viene dada en la forma
n
σ
X Y
f (x1 , . . . , xn ) = xj j f (σ1 , . . . , σn )
(σ1 ,...,σn )∈Zn
2
j=1

en donde 
σ xj si σj = 0
xj j = .
xj si σj = 1
Cada uno de los sumandos que componen la forma canónica se llama término
canónico o, a veces, término mı́nimo (min-term) o simplemente término.
76 CAPÍTULO 3. SISTEMAS BOOLEANOS

Es fácil ver que en un álgebra de Boole con n variables existen 2n términos


canónicos diferentes. A modo ilustrativo, en la siguiente tabla se indican los min-
terms de las funciones booleanas de una, dos y tres variables.

minterms
f (x) x, x
f (x, y) xy, xy, xy, xy
f (x, y, z) xyz, xyz, xyz, xyz, xyz, xyz, xyz, xyz

Los min-terms se suelen identificar también por un número binario en el que


cada dı́gito representa una variable negada si es cero, o sin negar si es uno. Aún
de forma más compacta, un min-term se puede identificar por el número decimal
correspondiente al antedicho número binario. Ası́, por ejemplo, el min-term xyz se
identifica también por el número binario 010 o simplemente por el número decimal
2.
La forma canónica de una función booleana se puede obtener inmediatamente
a partir de su tabla de verdad. Para ello, indicando cada columna de la tabla por
σ
j = 1 . . . n, asociamos a cada fila de la tabla un producto xσ1 1 , . . . , xj j , . . . , xσnn y en
σ σ
el mismo hacemos xj j = 1 si el elemento (i, j) de la tabla es 1 o bien xj j = 0 si el
elemento (i, j) de la tabla es 0. La expresión canónica de f se obtiene como suma
de todos los productos obtenidos.
Otra forma de obtener la forma canónica de una función f (x1 , . . . , xn ) es partir de
una expresión cualquiera de la función y multiplicar por (xi + xi ) todos los términos
de la misma que no contengan la variable xi , para i = 1, . . . , n.

3.2.2 Simplificación de funciones booleanas


La forma canónica de una función es fácil de obtener pero no siempre es la más
conveniente, sobre todo si pensamos en la realización fı́sica, ya que su expresión
puede resultar excesivamente larga. Simplificar una función f consiste en obtener
otra función g equivalente a f y con una expresión más simple.
La simplificación de una función conduce a una más simple y, en general, más
eficiente implementación de la misma, bien sea por medio de un programa de orde-
nador o por medio de un circuito neumático, o eléctrico o electrónico.
Los métodos más utilizados para simplificar funciones booleanas son el Karnaugh
y el de Quine-McCluskey.
Los métodos de simplificación de funciones lógicas consisten esencialmente en
aplicar la ley de complementación x+x = 1 que, evidentemente, implica f ·(x1 +x1 ) ≡
f . Se puede ver que, tras aplicar repetidamente esta ley a la función, con todas y
cada una de las variables, ésta queda reducida a una suma de implicantes primos
(términos irreducibles).

Método de Karnaugh
Es un método gráfico válido para funciones de hasta cuatro o cinco variables como
máximo. Dada una función f (x1 , . . . , xn ) en forma canónica, consiste en anotar los
3.2. ALGEBRA DE BOOLE 77

valores de la función en una tabla, denominada mapa de Karnaugh, de tal forma que
los términos canónicos geométricamente adyacentes en la tabla se diferencian sólo
en una variable. Esto se consigue fácilmente poniendo en las casillas de cabecera de
filas y de columnas los números binarios de dos cifras

00 01 11 10

que representan a un par de variables y que están ordenados de forma que para pasar
de uno cualquiera al siguiente solo cambia una cifra. Procediendo ası́, creamos una
tabla de la forma

@cd 00 01 11 10
ab @
00 00
00
00
01
00
11
00
10
01 01
00
01
01
01
11
01
10
11 11
00
11
01
11
11
11
10
10 10
00
10
01
10
11
10
10

En esta tabla, cada casilla representa el término canónico (min-term) de la función


que se ha indicado en la misma. Se ve claramente que cada min-term difiere de los
adyacentes en sólo un dı́gito binario. Obsérvese que la última casilla de cada fila es
“adyacente” con la primera casilla de la misma fila ya que solo difieren en un dı́gito.
Lo mismo ocurre por columnas.
Lógicamente, no es necesario anotar los valores de los min-terms en cada casilla
porque son justo los valores de cabecera de su fila y columna.

@ab 00 01 11 10
cd @
00 0 1 1 0
01 0 1 1 0
11 1 1 1 0
10 1 1 1 0

@ab
cd @ 00 '
01 11 10
$
00 0 1 1 0
01 0 1 1 0
'$
11 1 1 1 0
10 1 1 1 0
&&%%

b + b0 c
78 CAPÍTULO 3. SISTEMAS BOOLEANOS

Método de Quine-McCluskey
Si el número de variables es elevado, el método de Karnaugh resulta complicado
de utilizar (caso de cinco variables) o impracticable. En estos casos es aplicable
el método tabular de Quine-McCluskey. Dada una función en forma canónica de
suma de min-terms, este método consiste en ir combinando unos términos con otros,
de forma sistemática y en sucesivas iteraciones, hasta encontrar un conjunto de
implicantes primos en cada uno de los cuales se ha eliminado el mayor número posible
de variables. Con este conjunto de implicantes primos, el usuario (posiblemente
ayudado de algún algoritmo o programa) ha de seleccionar un subconjunto minimal
que cubra la función. Lo introduciremos con un ejemplo.

Ejemplo 3.2.1 Sea la función

f (x1 , x2 , x3 , x4 ) = Σ(0, 7∗ , 9, 12∗ , 13, 15)

En primer lugar escribimos la tabla


i min-terms
0 0 0 0 0
7∗ 0 1 1 1
9 1 0 0 1
12∗ 1 1 0 0
13 1 1 0 1
15 1 1 1 1

cuya primera columna es el ı́ndice de los términos para los que la función vale uno
y, marcados con un asterisco (∗ ), los términos indiferentes, es decir, aquellos para
los que, fı́sicamente, no importa que el valor de la función sea cero o uno.
Ordenamos la tabla, de menor a mayor, por el número u de unos que contiene
cada término, con lo que la tabla queda dividida en grupos de términos con cero
unos, con un uno, con dos unos, con tres unos, etc. Podemos trazar una lı́nea
separando cada grupo del siguiente. Como no hay términos con un único uno, ese
grupo queda vacı́o.
u i 1-term
0 0 0000
1
2 9 1 0 0 1
12∗ 1 1 0 0
3 7∗ 0 1 1 1
13 1 1 0 1
4 15 1 1 1 1
En esta tabla, cada grupo difiere del siguiente en un solo uno y, por tanto, se puede
combinar cada término de un grupo con uno del siguiente.
Procedamos a combinar los términos cada grupo. Como no hay términos en el
grupo u = 1, el término 0 0 0 0 no se puede combinar con ninguno. Pasando al
3.2. ALGEBRA DE BOOLE 79

grupo u = 2, el término 1 0 0 1 se puede combinar con el término 1 1 0 1 grupo


siguiente, u = 3, 
1001
→ 1 - 1 1,
1101
dando lugar al término 1 - 1 1, o sea x1 x3 x4 . El término 1 1 0 0 se puede combinar
con el mismo término 1 1 0 1 que el anterior,

1100
→ 1 1 0 -,
1101

dando lugar al término 1 1 0 -, o sea x1 x2 x3 .


Como ya hemos terminado de combinar todos los elementos del grupo u = 2,
pasamos a los del grupo n = 3. En este grupo el término 0 1 1 1 se puede combinar
con el término 1 1 1 1 del último grupo, u = 4,

0111
→ - 1 1 1,
1111

dando lugar al término - 1 1 1, o sea x2 x3 x4 . Por último, el término 1 1 0 1 se puede


combinar también con el término 1 1 1 1

0111
→ 1 1 - 1,
1111

dando lugar al término 1 1 - 1, o sea x1 x2 x4 .


Todo este proceso puede resumirse en la tabla siguiente.

u i 1-term 2-term
0 0 0000 0000
1
2 9 1 0 0 1 1 - 1 1
12∗ 1 1 0 0 1 1 0 -
3 7∗ 0 1 1 1 - 1 1 1
13 1 1 0 1 1 1 - 1
4 15 1 1 1 1

En esta tabla, ningún término de la última columna puede combinarse y el


proceso termina. Sin tomar términos indiferentes, la función lógica simplificada es

f = x1 x2 x3 x4 + x1 x3 x4 + x1 x2 x4 .

Un término indiferente puede aprovecharse si cubre más de un min-term.

Algoritmo de Quine
Como ya se ha indicado, el método de Quine-McCluskey, lo mismo que el de Kar-
naugh, se basa en utilizar repetidamente la ley a + a = 1. Dada una función f en
forma canónica de suma de m min-terms, el algoritmo es el siguiente:
80 CAPÍTULO 3. SISTEMAS BOOLEANOS

1. Poner todos los min-terms en una lista, ordenados de alguna forma de 1 a m.

2. para i desde 1 hasta m − 1 hacer

Elegir el término i-ésimo, Ti , de la lista


para j desde i + 1 hasta m hacer
Tomar el término j-ésimo, Tj , de la lista
Simplificar, si es posible, la expresión Ti + Tj , aplicando la ley a + a = 1
y poner el término simplificado en una nueva lista.

3. Volver al paso 1 con la nueva lista obtenida y repetir el algoritmo

4. El algoritmo termina cuando no es posible simplificar más.

Este algoritmo, aunque correcto, tiene el inconveniente de que exige un gran


coste computacional si el número de variables es elevado. Una adecuada ordenación
de la lista original permite mejorar la estrategia de operación.
El programa quine.c que se incluye a continuación implementa el algoritmo y se
puede utilizar para simplificar funciones lógicas. Al ejecutarlo (en la forma indicada
en el propio programa), calcula y muestra en pantalla la “matriz de implicantes
primos”, que indica los implicantes primos obtenidos, y la “matriz de cubrimiento”,
que indica los min-terms que cubre cada implicante primo.
3.3. SISTEMAS COMBINACIONALES 81

// for (i=0; i<n1-1; i++) {


// Programa quine if (H[i] != 3) {
// for (j=i+1; j<n1; j++) {
// Para simplificar una función lógica: if (H[j] != 3) { f1 = 0;
// 1) poner en archivo la función, p.ej., // busca elementos a combinar
// for (k=0; k<n2; k++) {
// 6 4 // significa n.terms=6 n.vars=4 if (M[i][k] != M[j][k]) {
// 0 1 1 1 // lista de minterms f1 = f1+1; f2 = k+1;
// 0 1 1 0 // . if (f1 > 1) goto fuera; } }
// 1 1 1 1 // . if (f1 != 0) { H[i] = 1; H[j] = 1;
// 1 0 1 1 // . // formacion matriz salida
// 0 0 0 0 // . for (k=0; k<n2; k++) {
// 1 0 0 1 // . if (k+1==f2) N[l1][k] = 2;
// else N[l1][k] = M[i][k]; }
// 2) Compilar el programa: for (k=0; k<m6; k++) {
// cc -o quine quine.c (bajo Linux) D[l1][k] = G[i][k];
// 3) Ejecutarlo: ./quine < archivo D[l1][m6+k] = G[j][k]; }
// l1 = l1+1;
#include <stdlib.h> }
#define nv 10 else H[j] = 3;
#define nt 40 }
#define h2 nt/2 fuera:
#define ng nt/3 }
#define ny nt-ng }
}
int main( int argc, char **argv ) k5 = 0;
{ for (i=0; i<n1; i++) {
int M[nt][nv] = {0}; if (H[i]==0) { m5 = m5+1;
int N[nt][nv] = {0}; for (k=0; k<n2; k++) Z[m5-1][k] = M[i][k];
int H[nt] = {0}; for (k=0; k<m6; k++) Y[m5-1][G[i][k]] = 1;}
int G[nt][ng] = {0}; else { if (H[i]=1) k5 = 1; }
int D[nt][ng] = {0}; }
int Z[h2][nv] = {0}; if (k5 == 1){
int Y[h2][ny] = {0}; m6 = 2*m6; n1 = l1;
int i,j,k,k5,l1,m5,m6,n1,n2,n9,f1,f2; for (i=0; i<l1; i++) {
int (*pm)[nv]; for (j=0; j<m6; j++) G[i][j] = D[i][j];
pm = M; for (j=0; j<n2; j++) M[i][j] = N[i][j]; }
// lectura de los datos de entrada goto lazo;
scanf("%d %d", &n1, &n2); }
n9 = n1; else{
for (i=0; i<n1; i++){ printf("Matriz de implicantes primos\n");
for (j=0; j<n2; j++){ for (i=0; i<m5; i++) {
scanf("%d", &pm[i][j]); for (j=0; j<n2; j++) printf("%d ",Z[i][j]);
} printf("\n"); }
scanf("\n"); printf("Matriz de cubrimiento\n");
G[i][0]=i; for (i=0; i<m5; i++) {
} for (j=0; j<n9; j++) printf("%d ",Y[i][j]);
m5 = 0; m6 = 1; printf("\n"); }
lazo: }
l1 = 0; return(0);
for (i=0; i<n1; i++) H[i] = 0; }

3.3 Sistemas combinacionales


Un sistema combinacional es un sistema de control que tiene p entradas u1 (t), . . . , up (t) ∈
Z2 y q salidas y1 (t), . . . , yq (t) ∈ Z2 , tales que, para todo t ∈ I cada una de ellas es
una función booleana de las entradas, es decir,

yi (t) = fi (u1 (t), . . . , up (t)), i = 1 . . . q.

En el caso de tiempo continuo (sistemas digitales ası́ncronos) el dominio I es un


intervalo de R mientras que si el tiempo es discreto (sistemas digitales sı́ncronos) el
82 CAPÍTULO 3. SISTEMAS BOOLEANOS

dominio de las funciones es

I = {t0 , t0 + T, . . . , t0 + kT, t0 + 2kT, . . .}, t0 , T ∈ R.

u1 (t)- y1 (t)-
u2 (t)- y2 (t)-
.. S.C. ..
. .

up (t)- yq (t)-

En los sistemas combinacionales se asume que los valores de las salidas en un


instante determinado t sólo dependen de los valores que en ese mismo instante tengan
las entradas. En la realidad fı́sica ésto no es ası́, sino que desde que cambia el valor
de las entradas hasta que el sistema cambia de estado transcurre un cierto tiempo si
bien, como el sistema evoluciona con gran rapidez, se da por válida tal suposición.
Los sistemas combinacionales más sencillos son las funciones lógicas elementales:
not, and, or, nend, nor y xor. Estas funciones tienen una gran aplicación práctica ya
que conectándolas adecuadamente es posible realizar cualquier función lógica. Otros
sistemas combinacionales importantes son los codificadores, los decodificadores, los
multiplexores y los demultiplexores.

Funciones lógicas elementales


Se llaman funciones lógicas elementales a las funciones lógicas más simples que
pueden construirse utilizando los operadores lógicos. Estas funciones se pueden
realizar fı́sicamente mediante diferentes tecnologı́as, como la eléctrica, la neumática
y la electrónica, dando lugar a dispositivos lógicos que, a su vez, sirven para construir
automatismos de distintas clases. Cada función lógica tiene un sı́mbolo, dado por
la norma ISO, aunque se usan a veces otros sı́mbolos en electrónica y en otras
tecnologı́as.

Función NOT
Esta función realiza la operación de negación de una variable z = x. Su tabla de
verdad y su sı́mbolos, DIN e ISO, son

x z
0 1 x d z x z
1 0

Función AND
Esta función realiza la operación de producto ordinario en Z2 , o conjunción lógica,
entre varias variables. La tabla de verdad z = (x and y) para dos variables y su
3.3. SISTEMAS COMBINACIONALES 83

sı́mbolos, DIN e ISO, son

x y z
0 0 0 x- x
z- z
0 1 0 & y
1 0 0 y-
1 1 1

Función OR
Esta función realiza la operación de suma ordinaria en Z2 , o disyunción lógica, entre
varias variables. La tabla de verdad z = (x or y) para dos variables y su sı́mbolos,
DIN e ISO, son

x y z
0 0 0 x- x
z- z
0 1 1 ≥1 y
1 0 1 y-
1 1 1

Función NAND
Esta función es el complemento en Z2 de la función and entre varias variables. La
tabla de verdad z = (x nand y) para dos variables y su sı́mbolos, DIN e ISO, son

x y z
0 0 1 x- x
z
0 1 1 & d z- y
1 0 1 y-
1 1 0

Obsérvese que el sı́mbolo de esta función se obtiene colocando un pequeño cı́rculo


(◦), que representa la negación lógica, tras el sı́mbolo de la función and.

Función NOR
Esta función es el complemento en Z2 , de la función or entre varias variables. La
tabla de verdad z = (x nand y) para dos variables y su sı́mbolos, DIN e ISO, son

x y z
0 0 1 x- x
z z
0 1 0
y- ≥1 d - y
1 0 0
1 1 0

Igual que en la nand, el sı́mbolo se obtiene colocando (◦) tras el bloque de la función
or.
84 CAPÍTULO 3. SISTEMAS BOOLEANOS

Función XOR

La función xor, o disyunción exclusiva, vale 1 si todas las variables de entrada son
iguales, es decir si son todas igual a uno o todas igual a cero, y vale 1 en caso
contrario, es decir siempre y cuando haya variables de entrada con valor diferente.
La tabla de verdad z = (x xor y) para dos variables y su sı́mbolos, DIN e ISO, son

x y z
0 0 1 x-
x z
0 1 0 =1 d z- y
1 0 0 y-
1 1 1

3.4 Sistemas secuenciales


Un sistema secuencial es un sistema de control que tiene, como un combinacional,
p entradas u1 (t), . . . , up (t) ∈ Z2 y q salidas y1 (t), . . . , yq (t) ∈ Z2 , pero que además
tiene otras n variables,
x1 (t), . . . , xn (t) ∈ Z2 ,

llamadas variables de estado, cuyos valores dependen de alguna manera del compor-
tamiento del sistema en instantes anteriores a t.

u1 (t)- y1 (t)-
u2 (t)- x1 (t) y2 (t)-
x2 (t)
.. .. ..
. . .
xn (t)
up (t)- yq (t)-

Ahora cada una de las salidas es una función booleana de las entradas y de
los estados, para todo t ∈ I ⊂ R, en donde I es un intervalo o una sucesión de
valores de R. Sin embargo la expresión general de esta función resulta complicada
ya que debe incluir los valores de los estados para instantes anteriores a t. Se puede
emplear, cuando sea posible, el modelo de estado (ecuación diferencial) estudiado
en la teorı́a de control. Sin embargo se han ido desarrollado otros modelos, primero
las Máquinas de estados, más tarde las Redes de Petri y el Grafcet y, recientemente,
las cartas de estado o Statecharts.
Los sistemas secuenciales se llaman sistemas con memoria porque tienen unos
registros internos con capacidad para almacenar las variables de estado.
3.5. MÁQUINAS DE ESTADOS 85

3.5 Máquinas de estados


Una máquina de finitos estados (o simplemente máquina de estados) es un sistema
secuencial que posee un número finito q de entradas, un número finito N ≤ en de
estados (n es el número de variables de estado) y un número finito p de salidas. Tanto
las señales de entrada como las de salida y las de estado, toman valores binarios. Si
definimos los conjuntos

U := Zq2 , X := Zn2 , Y := Zp2 , (3.1)

entonces podemos decir que la entrada (vector) es u(t) ∈ U , la salida (vector) es


y(t) ∈ Y y el estado (vector) es x(t) ∈ X, siendo t ∈ R la variable que representa el
tiempo.
A veces (teorı́a de gramáticas formales) se consideran estos conjuntos como con-
juntos de sı́mbolos cualesquiera pero aquı́ vamos a seguir las definiciones dadas en A
veces (teorı́a de gramáticas formales) se consideran éstos como conjuntos de sı́mbolos
cualesquiera pero aquı́ vamos a seguir las definiciones dadas en (3.1).
Por ser la máquina de estados un sistema de control, las señales de entrada
pueden cambiar en su evolución en el tiempo y ésto hace que cambien también las
señales de estado y las de salida. En la teorı́a de autómatas se han descrito dos
tipos de máquinas de estado: el autómata de Mealy y el autómata de Moore. Se
diferencian únicamente por la forma de definir la función de salida. Para simplificar
la escritura de las expresiones, se omite la dependencia respecto de t de las funciones.

3.5.1 Autómata de Mealy


Un autómata de Mealy se define como una quintupla

M1 = {U, Y, X, f, g}

en donde U, Y y X, definidos en (3.1), son los conjuntos de valores de entrada, de


salida y de estado, respectivamente, y las funciones f y g definen las dependencias
entre la entrada, el estado y las salidas. La función que define el estado es

f :U ×X → X
(u, x) 7→ x = f (u, x)

y la función que da la salida,

g :U ×X → Y
(u, x) 7→ y = f (u, x)

3.5.2 Autómata de Moore


Un autómata de Moore se define como una quintupla

M1 = {U, Y, X, f, g}
86 CAPÍTULO 3. SISTEMAS BOOLEANOS

en donde U, Y y X, definidos en (3.1), son los conjuntos de valores de entrada, de


salida y de estado, respectivamente, y las funciones f y g definen las dependencias
entre la entrada, el estado y las salidas. La función que define el estado es

f :U ×X → X
(u, x) 7→ x = f (u, x)

y la función que da la salida,

g:X → Y
(x) 7→ y = f (x)

Dado un autómata de Mealy siempre se puede encontrar autómata de Moore


equivalente (es decir, tal que para una misma entrada da siempre la misma salida)
y viceversa. Por ser más simple se utiliza más el de More.

3.5.3 Tablas de estado


Como los conjuntos U de entrada, Y de salida y X de estado son finitos, las funciones
f y g que definen el comportamiento de un autómata (de Mealy o de Moore) pueden
darse en forma tabular. La función f tabulada se llama tabla de transición mientras
que la g se llama tabla de salida.
Para el autómata de Mealy, las tablas son de la forma

u1 u2 ... u 2q u1 u2 ... u 2q
x1 x1,1 x1,2 ... x1,2q x1 y1,1 y1,2 ... y1,2q
x2 x2,1 x2,2 ... x2,2q x2 y2,1 y2,2 ... y2,2q
.. .. .. .. .. .. .. ..
. . . . . . . .
x2n x2n ,1 x2n ,2 . . . x2n ,2q x2n y2n ,1 y2n ,2 . . . y2n ,2q

Tabla de transición f (x, u) Tabla de salida g(x, u)

y para el de Moore,

u1 u2 ... u 2q
x1 x1,1 x1,2 ... x1,2q x1 y1
x2 x2,1 x2,2 ... x2,2q x2 y2
.. .. .. .. ..
. . . . .
x2n x2n ,1 x2n ,2 . . . x2n ,2q x 2n y 2n

Tabla de salida f (x, u) Tabla de salida g(x)

Con estas tablas queda completamente descrita una máquina de estados. Obsérvese
que, en ambos casos, el tamaño (máximo) de la tabla de transición es de (2n × 2q )
casillas.
3.5. MÁQUINAS DE ESTADOS 87

3.5.4 Diagramas de estado


El diagrama de estado de una máquina de estados con N ≤ 2n estados, q entradas
y p salidas, es un grafo orientado que contiene la misma información que las tablas
de transición y de salida pero que expresa de forma más clara, si cabe, la naturaleza
secuencial del sistema. El grafo tiene N vértices, cada uno de los cuales va etiquetado
con un número o nombre correspondiente al estado, y q aristas, cada una etiquetada
con un valor de la entrada. En el autómata de Mealy las etiquetas de las salidas se
ponen en las aristas, tras las de las entradas y separadas de ellas por /, mientras
que en el de Moore van en los estados, separadas de sus etiquetas por /.
A continuación se dan dos ejemplos de dos máquinas de estados. El primero
corresponde a un autómata de Mealy con 3 estados, etiquetados A, B y C, una
entrada u y una salida y. Sus tablas de transición y salida y su diagrama de estados
son:
0/0

@GA
FAB ECD
u u 
x@@ 0 1 x@@ 0 1
Y33
A = 00 00 01 A = 00 0 0 33
33
B = 01 01 10 B = 01 0 0 1/0
330/0
33
C = 10 00 01 C = 10 0 1 33

@GA
FBECD 3@GA
FCB
ECD
11 − − 11 − −  1/1 3
s
1/0
4 B
Tabla de transición Tabla de salida 0/0

El segundo corresponde a un autómata de Moore con 4 estados, etiquetados A, B,


C y D, una entrada u y una salida y. Sus tablas de transición y de salida y su
diagrama de estados son:
0

@GA/
FB
A E0CD
u 
x@@ 0 1 x y
X11
A = 00 00 01 A = 00 0 11
11
B = 01 10 01 B = 01 0 1 110
11
C = 10 00 11 C = 10 0 11
@GB/
FB
A ECD @G/ C/
A
FBE0CDs 3@GD/1
FB
A ECD
D = 11 10 01 D = 11 1 
0
0
1
4 0e
Tabla de transición Tabla de salida 1

Obsérvese que, en cualquiera de los dos casos, a partir de las tablas de transición
y de salida se obtiene el diagrama de estados, y viceversa.

3.5.5 Dispositivos biestables


Los biestables son los sistemas secuenciales más simples. Tienen una o dos entradas
u1 , u2 , una única variable de estado, denotada por Q, y una salida y1 = Q. Los
biestables electrónicos suelen incorporar la salida adicional y2 = Q.
88 CAPÍTULO 3. SISTEMAS BOOLEANOS

Si el valor del estado en el instante t es es Qt entonces el valor del estado en un


instante posterior se denota Qt+1 y su valor es

Qt+1 = f (Qt , u1, u2),

en donde f es la función lógica propia del biestable, dada por su tabla de transición.
Los biestables pueden ser ası́ncronos o sı́ncronos. Estos últimos tienen una entrada
adicional Clk por la que entra una señal de reloj que es una señal cuadrada de la
forma
Clk
1

0
t

El valor de la salida se actualiza en determinados instantes definidos por esta señal,


muchas veces en los flancos de bajada indicados en la figura).

Biestable R-S
Es el biestable ası́ncrono básico. Su funcionamiento se basa en el esquema de dos
puertas OR que se indica en la figura.
S
Q

_
Q
R

Cada una de las puertas OR tiene una entrada que se realimenta de la salida de la
otra puerta. Se comprueba con facilidad que la tabla de transición es:
SR
Q@
@ 00 01 11 10 S Q S Q

0 0 0 − 1 Clk

1 1 1 − 0
R Q R Q

La combinación de entradas “11” no está permitida al usuario porque si ponemos


R = S = 1 entonces el biestable darı́a Q = Q = 0 (contradicción). Junto a la tabla
de transición aparecen los sı́mbolos de los biestables RS ası́ncrono y sı́ncrono.
Capı́tulo 4

Sistemas reactivos

Los sistemas reactivos son sistemas de control que están comandados por eventos:
sistemas que están permanentemente reaccionando a estı́mulos externos e internos.
Los teléfonos, automóviles, redes de comunicación, sistemas operativos de orde-
nadores, sistemas de aviación, y las interfaces hombre-máquina de muchas clases de
software ordinario son ejemplos de sistemas reactivos.
El problema del modelado de estos sistemas radica en la dificultad de describir
el comportamiento reactivo de una manera clara, realista y al mismo tiempo lo
suficientemente formal y rigurosa como para servir de base para detallada simulación
computerizada del sistema.
Los primeros modelos (aun hoy utilizados) de los sistemas de eventos discretos
fueron las máquinas de estados y sus correspondientes diagramas estado-transición
o diagramas de estado. Estos diagramas son grafos dirigidos cuyos nodos denotan
estados y cuyas flechas denotan transiciones.
Sin embargo, los diagramas de estado no son adecuados para modelar sistemas
complejos debido a la gran cantidad, exponencialmente creciente, de estados que
precisan. Además los estados están agrupados de una forma no estratificada. Por
todo esto, el diagrama de estado de sistema de mediana complejidad resulta deses-
tructurado, de gran dimensión y de difı́cil manejo.
Posteriormente se han desarrollado modelos, entre los cabe citar por su impor-
tancia los siguientes:

• Redes de Petri

• Grafcet

• Cartas de estado (Statecharts)

Las redes de Petri, junto con algunos otros modelos algebráicos, son los modelos
matemáticos más formales.
El modelo Grafcet, sencillo de aprender y de utilizar, se utiliza mucho actual-
mente y ha sido adoptado por varios fabricantes de autómatas como modelo básico.
Las cartas de estado son probablemente el modelo más completo de los que se
conocen actualmente.

89
90 CAPÍTULO 4. SISTEMAS REACTIVOS

4.1 Modelos de sistemas productivos


Automatizar un sistema de producción consiste en reducir la intervención humana
a lo largo del proceso de fabricación, optimizar la utilización de los materiales y de
las energı́as empleando nuevas tecnologı́as y conseguir unas mejores prestaciones y
una mejor calidad del producto terminado.
Aunque el modelo de un sistema productivo es bastante complejo, para muchas
aplicaciones de automatización local podemos admitir que está compuesto por dos
subsistemas, uno reactivo (parte de comando) y otro activo (parte operativa), que
interaccionan entre sı́. La parte de comando es básicamente una máquina de es-
tados que en la práctica se implementa mediante un automatismo o mediante un
autómata programable. La parte operativa es el sistema de producción propiamen-
te dicho (cintas transportadoras, manipuladores, máquinas, etc.). Ambas partes se
comunican entre sı́ en los dos sentidos: la parte operativa envı́a eventos a la parte
de comando y ésta, en respuesta, envı́a órdenes de control a la parte operativa.

4.2 Grafcet
El Grafcet (Graphe de Comands Etape/Transition) es un sistema gráfico de mode-
lado de automatismos secuenciales. Fue introducido en Francia por P. Girauld, en
su tesis doctoral. La norma IEC-848 da una completa descripción de Grafcet y ha
sido adoptada por diversos fabricantes para crear interfaces gráficas de usuario que
facilitan la programación de sus de autómatas programables.
El Grafcet es aplicable, por principio, a un sistema automatizado de producción
compuesto de dos partes: una parte operativa (PO) y una parte de comando (PC).

órdenes

P.C. P.O.
eventos

Figura 4.1: Sistema automatizado de producción

La parte operativa está formada por los diversos dispositivos que interactúan
sobre el producto: preactuadores, actuadores y captadores. Los preaccionadores
actúan como relés de potencia entre el mando y los actuadores que se encargan
de transformar el producto. Los captadores recogen informaciones como posición
del producto, alarmas, etc., que reflejan el estado del proceso en todo momento.
Los cambios en el estado del proceso medidos por los captadores son entradas que
provocan que el sistema de mando responda de la forma adecuada para la que ha
sido diseñado.
4.2. GRAFCET 91

La Parte de Comando (PC) está integrada por los equipos de control: com-
putadores, procesadores o autómatas, junto con los programas y todos los datos
precisos.

El Grafcet se compone de los siguientes elementos básicos:


• Etapas o estados a las que van asociadas acciones
• Transiciones a las que van asociadas receptividades
• Uniones orientadas que unen etapas y transiciones.
• Segmentos paralelos.

Etapas
Un sistema dinámico de cierta complejidad evoluciona en el tiempo siguiendo una
determinada secuencia de actividades de trabajo o etapas. Una etapa representa
un estado o modo de funcionamiento estable del sistema o de una parte del mismo.
En cada etapa, la Parte de Comando del sistema (al menos la parte asociada a esa
etapa) se mantiene invariable.
En Grafcet, cada etapa se representa por un rectángulo en que se escribe un
número n que indica su número de orden. En cada momento, el sistema tiene una o
varias etapas activas (las que están actualmente en funcionamiento) que se marcan
con un pequeño cı́rculo negro.

Figura 4.2: Etapa

Las primera etapa que se activa al iniciar el Grafcet se llama etapa inicial. Un
Grafcet ha de tener al menos una etapa inicial, pero puede tener varias. Estas etapas
se encuadran en un doble rectángulo.
Cada etapa puede llevar asociada una o más acciones. Estas acciones se des-
criben, literal o simbólicamente, en de uno o en varios rectángulos unidos por una
lı́nea al rectángulo de la etapa. Según la norma IEC-848, una acción puede estar
precedida por un carácter que indica su tipo:
C: Acción condicionada
D: Acción retardada
L: Acción limitada en el tiempo
P: Impulso
S: Acción memorizada
92 CAPÍTULO 4. SISTEMAS REACTIVOS

0
Acción A

R01

1
Acción B

R12

2
Acción C

Figura 4.3: Grafcet

Transiciones
Las transiciones se representan con un pequeño segmento horizontal que corta la
lı́nea de enlace entre dos etapas. Son etapas de entrada a una transición todas las
etapas que conducen a una transición. Son etapas de salida a una transición las
etapas que salen de una transición.
La condición o condiciones que se deben cumplir para poder pasar una transición
reciben el nombre de receptividades. En una transición podemos tener:

• Una condición simple

• Una función booleana

• La señal de un temporizador o contador

• La activación de otra etapa del Grafcet

Cada transición se une con la etapa anterior y con la siguiente mediante unas
rectas horizontales y verticales llamadas lı́neas de enlace. Las lı́neas de enlace que
tienen sentido ascendente se marcan en el centro con una punta de flecha.

Segmentos paralelos
En un Grafcet se pueden representar varios procesos que evolucionan de forma con-
currente. Esto se hace disponiendo varias secuencias verticales, en paralelo, de
etapas y transiciones. La sincronización de estos procesos se hace posible mediante
unos segmentos paralelos horizontales. Por ejemplo, en la figura 4.4 los procesos que
se inician en las etapas n + 1 y n + 2 discurren en paralelo y están sincronizados
4.2. GRAFCET 93

n+1 n+2

Figura 4.4: Grafcet

con el proceso que finaliza en la etapa n. Si está activa la etapa n y se cumple la


receptividad R entonces, en ese instante y simultáneamente, pasarán a ser activas
las etapas n + 1 y n + 2.
Este tipo de conexión sincronizada entre un proceso simple y varios otros en pa-
ralelo se llama divergencia AND. Más adelante veremos algunas otras posibilidades.

4.2.1 Reglas de funcionamiento


El funcionamiento del modelo Grafcet viene definido por cinco reglas o condiciones
básicas.

1. Regla de activación inicial: en el instante inicial sólo se activan las etapas


iniciales y esta activación es incondicional.

2. Condición de validación: para que una etapa pueda activarse es necesario que
si le precede una única etapa entonces ésta esté activada y si le preceden varias
etapas en paralelo entonces todas ellas estén activadas.

3. Condición de franqueo de una transición: una transición es franqueada si,


y sólo si, la receptividad asociada es verdadera. Franquear una transición
significa: primero desactivar la etapa o etapas precedentes y a continuación
activar la etapa o etapas siguientes.

4. Regla de franqueo simultáneo: todas las transiciones franqueadas en un deter-


minado instante son franqueadas simultáneamente.

5. Regla de conflicto de activación: si una etapa ha de ser desactivada y activada


simultáneamente, debido al franqueo simultáneo de las transiciones siguiente
y anterior, entonces permanece activa.
94 CAPÍTULO 4. SISTEMAS REACTIVOS

4.2.2 Estructuras básicas


Son las configuraciones que sirven para modelar ciertas situaciones interesantes de
los sistemas de eventos discretos y que se utilizan frecuentemente en Grafcet.

Secuencia simple

La mas sencilla de todas las estructuras es n

la secuencia simple. Como su nombre indica,


Rn
consta de una serie de etapas seguidas . . ., n,
n+1
n + 1, . . . que se irán activando una tras otra
según se vayan validando las correspondien-
Rn+1
tes receptividades . . . , Rn , Rn+1 , Rn+2 , . . ..
n+2

Divergencia OR
n
Representa la posibilidad de bifurcación en-
tre secuencias simples. Estando activa la eta-
pa n, final de una secuencia simple, y según
cual sea la receptividad Ra , Rb , . . . que se va- Ra Rb
lide en primer lugar, el sistema pasará a una
n+1 n+2
de las etapas n + 1, n + 2, . . ., de inicio de
respectivas secuencias simples.

Convergencia OR
m−2 m−1
Es la estructura recı́proca de la anterior. In-
dica que un sistema con varias posibles se-
Rc Rd
cuencias simples puede pasar desde una de
las etapas finales m − 1, m − 2, . . ., en para-
lelo, a la etapa siguiente n que es el inicio de
m
otra secuencia simple. Dicho paso se dará en
el instante en que una de las receptividades
Rc , Rd , . . . que anteceden a la etapa n se haga
válida.

Divergencia AND
4.2. GRAFCET 95

n
El sı́mbolo lógico AND indica simultaneidad.
La estructura llamada divergencia AND per- R
mite modelar el paso de un proceso de se-
cuencia única a otro con varias secuencias
concurrentes. Si el sistema se encuentra en
n+1 n+2
la etapa n y la transición R se hace válida,
entonces, en ese mismo instante, se activan
simultáneamente las etapas n + 1 y n + 2.

Convergencia AND
m−2 m−1
Es la estructura recı́proca de la anterior. Re-
presenta el paso simultáneo desde varias se- Rc Rd
cuencias concurrentes, que terminan en las
etapas m − 1, m − 2, . . ., a una secuencia
única que empieza en la etapa m. Para que
m
en un instante dado se produzca el paso, es
necesario que en dicho instante sean válidas
todas las receptividades Rc , Rc , . . .

Saltos
n n n

En Grafcet son posibles los sal-


tos condicionales, con la condi- a a a

ción expresada en la receptividad n+1 n+1 n+1

de una transición, y los incondi- b b b


cionales. Los saltos pueden ser n+2 n+2 n+2
B F
hacia adelante o hacia atrás, sien-
do éstos últimos fácilmente iden- c c c

tificables por la punta de flecha n+2 n+2 n+2

indicada de la linea de enlace ha-


d d d
cia atrás. En la figura se indican
n+2 n+2 n+2
algunas posibilidades.

4.2.3 Posibilidades avanzadas


Grafcet no sólo vale para hacer modelos de sistemas de eventos discretos con es-
tructura simple sino que también ofrece la posibilidad de modelar sistemas más
complejos. Para ello cuenta con algunas caracterı́sticas avanzadas, tales como el
paralelismo, la sincronización y la jerarquı́a.
96 CAPÍTULO 4. SISTEMAS REACTIVOS

Paralelismo
Grafcet permite el paralelismo. Es posible activar varias etapas a la vez en el estado
inicial. También permite, mediante los segmentos paralelos, modelar el paso de un
proceso secuencial simple a un proceso compuesto por varias secuencias que trabajan
en paralelo.

Sincronización
Es la posibilidad de que dos o más etapas se activen a la vez. El paralelismo exige
muchas veces la sincronización entre etapas, siempre que al final de una proceso
con secuencia simple haya que empezar otro de secuencia en paralelo múltiple, o
viceversa. Los segmentos paralelos de Grafcet brindan esta posibilidad.

4.2.4 Jerarquı́a
Macro-etapas La posibilidad de que un proceso pueda albergar a otros como sub-
procesos se denomina jerarquı́a.

4.2.5 Comunicación
Es la posibilidad de que dos procesos puedan comunicarse entre sı́, es decir, puedan
enviarse mútuamente mensajes.

4.3 Cartas de estado


Para poder ser útil, un modelo ha de ser modular, jerárquico y bien estructurado.
Para resolver el problema del crecimiento exponencial se impone relajar el requisito
de que todas las combinaciones de estados tengan que representarse explı́citamente.
Además deberı́a también atender de modo natural a especificaciones más generales
y flexibles, tales como

• Capacidad de agrupar varios estados en un superestado.

• Posibilidad de ortogonalidad o independencia (paralelismo) entre ciertos esta-


dos.

• Necesidad de transiciones más generales que la flecha etiquetada con un simple


evento.

• Posibilidad de refinamiento de los estados.

Las cartas de estado statecharts cumplen todos estos requisitos. Constituyen un


formalismo visual para describir estados y transiciones de forma modular, permi-
tiendo el agrupamiento de estados, la ortogonalidad y el refinamiento, y permiten
la visualización tipo ”zoom”entre los diferentes niveles de abstracción [5].
4.4. CREACIÓN DE UN MODELO CON STATEFLOW–SIMULINK 97

Las cartas de estado fueron introducidas por David Harel [5] en 1987 y consti-
tuyen una generalización de las máquinas de finitos estados. Se han hecho varias
implementaciones sustancialmente iguales pero que difieren algo en la semántica (la
definición de Harel dejaba bastante libertad) siendo las mas conocidas Statemate y
Stateflow, ésta última integrada en Matlab. Debido a la gran difusión que tiene este
programa en la Universidad, continuaremos la descripción de las cartas de estado
con la semántica de Stateflow.

4.3.1 Stateflow
Stateflow es una herramienta incluida en el paquete Matlab que funciona bajo el
programa (toolbox ) Simulink. Es posible ejecutar sólo Stateflow (como un bloque
único de Simulink) pero siempre bajo Simulink. Utilizando Stateflow y Simulink se
pueden realizar modelos de sistemas hı́bridos.
La figura 4.5 muestra una ventana de Stateflow en la que se aprecian algunos de
sus elementos.

Figura 4.5: Carta de estados de Stateflow

4.4 Creación de un modelo con Stateflow–Simulink


Tras arrancar el programa Matlab, creamos un modelo nuevo (new-model ) de Simu-
link y colocamos en el mismo, con el ratón, el bloque Chart de Stateflow.
Con el editor gráfico se pueden crear cartas Stateflow, de modo interactivo,
simplemente haciendo clic en cada elemento y arrastrándolo a la ventana de dibujo.
Una vez colocados varios estados, podemos crear transiciones haciendo clic en un
estado y arrastrando el ratón hasta otro estado. Se etiquetan los estados y las
transiciones indicando las acciones que van a ocurrir durante la ejecución y bajo que
condiciones se harán las transiciones. Finalmente se añade el historial, uniones, y
estados en paralelo para detallar las operaciones del modelo.
Se pueden utilizar sub-cartas (una carta dentro de otra carta) para dotar de
jerarquı́a al diseño. Se permite crear transiciones entre objetos que residen en di-
ferentes sub-cartas al mismo nivel o a diferentes niveles en la carta superior. Las
98 CAPÍTULO 4. SISTEMAS REACTIVOS

sub-cartas permiten reducir una carta complicada a un conjunto de diagramas orga-


nizados jerárquicamente. Con ello se consigue que la carta sea más fácil de entender
y de mantener sin cambiar para nada su semántica.
Los pasos a seguir para una aplicación completa son:
• Crear la carta Stateflow

• Utilizar el Explorer de Stateflow

• Definir un interface de bloques de Stateflow

• Ejecutar la simulación

• Generar el código
La generación de código depende de la máquina en donde se vaya a implementar
la aplicación y no se hace hasta la última fase del diseño. El código generado por
defecto es ANSI C pero existen programas que convierten el modelo de Stateflow
en código de otros lenguajes. Entre ellos cabe citar el programa sf2vdh, que es
un traductor de Stateflow a VHLD, y el programa sf2plc que genera código para
programar algunos autómatas programables.

4.4.1 Elementos de una carta de estado


Una carta de estado (statechart) es un gráfico formado por elementos gráficos sobre
los que van escritos otros elementos de texto. Los elementos gráficos son cartas,
estados, transiciones y uniones mientras que los elementos de texto son datos y
eventos.

Cartas
La carta es como la hoja de papel en la que se representan los elementos gráficos y
de texto. Cada carta representa una máquina de estados y constituye un bloque de
Simulink que puede conectarse con otras cartas o con otros bloques de Simulink.

Estados
Un estado se dibuja como un rectángulo con las esquinas redondeadas y representa
un modo de funcionamiento del sistema. Aunque tienen el mismo nombre, no debe-
mos confundir estos estados con los estados del “modelo de estado” de un sistema
de control de tiempo continuo o discreto. Aunque en ocasiones ambos pudieran
coincidir, los estados aquı́ considerados son más generales: representan los modos o
formas de funcionamiento que adquiere el sistema al reaccionar frente a los eventos.
Junto a la esquina superior izquierda cada rectángulo lleva un texto con un
nombre que identifica al estado. Tras el nombre del estado y el separador opcional
“/”, pueden aparecer otros textos indicando las acciones que llevará a cabo el sistema
cuando esté en ese estado. La sintaxis de Stateflow permite especificar el instante
en que se iniciará la acción y la duración de esta:
4.4. CREACIÓN DE UN MODELO CON STATEFLOW–SIMULINK 99

entry: la acción se inicia al entrar en este estado.


exit: la acción se inicia al salir de este estado.
during: la acción se inicia al entrar en este estado y permanece activa durante el
tiempo que dura el estado.
on event e : La acción se inicia si, estando en este estado, se produce el evento e.
Posibles acciones son cambiar el valore de una salida o efectuar una llamada a una
función de Matlab.
Dentro de un estado caben más estados, es decir, un estado puede descomponerse
en otros. Se admiten dos descomposiciones, llamadas OR (exclusiva) y AND. Si un
estado S se descompone con tipo OR en los estados S1 y S2 , quiere decir que si el
sistema está en el modo de funcionamiento S, entonces, o bien funciona en el modo
S1 o bien funciona en el modo S2 y no puede estar funcionando en ambos modos
a la vez. En cambio si el estado S se descompone con tipo AND en los estados S1
y S2 y el sistema funciona en modo S, entonces el sistema está a la vez en los dos
estados S1 y S2 . Ambas descomposiciones se distinguen por el tipo de lı́nea usada
para los rectángulos: linea continua para los estados de una descomposición OR y
lı́nea discontinua para los estados de una descomposición AND.

Transiciones
Una transición representa un evento e del sistema y se dibuja como una flecha que
va desde el borde de un estado S1 hasta el borde de otro estado S2 . Si el sistema está
en el estado S1 y se produce el evento e, entonces el sistema pasa al estado S2 . El
disparo de una transición puede implicar la ejecución de una o más acciones. Cada

S1

S2

Figura 4.6: Transición

transición puede tener un texto, escrito junto a ella, que indica el evento que ha de
producirse para que se dispare la transición ası́ como las acciones que entonces el
sistema emprenderá. Este texto se divide en tres partes, todas ellas opcionales:
e (en donde e es el nombre de un evento): la transición se dispara al producirse el
evento e en el sistema.
100 CAPÍTULO 4. SISTEMAS REACTIVOS

[c] (en donde c es una condición): la transición se dispara si la condición c (expresión


booleana) es verdadera y se produce el evento e. Si esta parte no existe, se
asume que c es cierta. Si la parte e del texto no existe, se disparará, bajo la
misma condición, siempre y cuando se produzca un evento cualquiera en el
sistema.
{a} (en donde a es una acción): al producirse transición el sistema lleva a cabo la
acción a.
Si la transición no lleva ningún texto, entonces se disparará automáticamente, siem-
pre y cuando se produzca un evento cualquiera en el sistema.
Una transición especial es la llamada transición por defecto (default-transition),
que sirve para señalar el estado inicial del sistema, es decir, el primer estado en el
que entrará el sistema al iniciar su evolución. Se reconoce por su forma ya que en
el extremo opuesto a la flecha lleva un pequeño cı́rculo negro.

Uniones
Una unión es un punto de bifurcación que permite conectar una transición de entrada
con varias transiciones de salida. Hay dos tipos de uniones: uniones conectivas
connective junctions y uniones de historia history junctions.

e1

e2 P
H

e3 C1 C2

Figura 4.7: Uniones

Al entrar en una unión conectiva, el sistema, a través de una condición, selecciona


una de las transiciones de salida para su evolución.
La unión de tipo historia se utiliza en estados que han sido divididos por una
descomposición OR. Si en el estado padre se pone el sı́mbolo H entonces cada vez
que se active el estado padre, el primer estado que se activará será el estado hijo
que estuvo activo por última vez.

Datos
Una carta tiene asociados ciertos datos a los que puede acceder. Es necesario decla-
rarlos en Stateflow y pueden ser de los siguientes tipos:
4.4. CREACIÓN DE UN MODELO CON STATEFLOW–SIMULINK 101

• Entrada de Simulink

• Salida de Simulink

• Local

• Constante

• Temporal

• Workspace

Los datos declarados como entrada o salida de Simulink generan automáticamente


una entrada o una salida en el bloque Chart creado por Stateflow en Simulink. Los
de los tipos local, constante y temporal pueden definirse para toda la carta o dentro
de un estado individual. Los datos temporales son sólo válidos mientras el estado
padre se está ejecutando y son reinicializados cada vez que éste se activa. El tipo
workspace es una construcción especial que permite utilizar el entorno de trabajo
(workspace) de Matlab para compartir datos a través de toda la simulación. Los
datos por defecto, se almacenan en memoria en formato double de C pero se puede
cambiar a otros formatos. Cada dato tiene asociado un valor inicial y un intervalo
de posibles valores.

Eventos
Estos elementos representan los eventos del sistema. Pueden ser de los tipos:

• Entrada de Simulink

• Salida de Simulink

• Local

Para los eventos que son entradas o salidas de Simulink, Stateflow crea automática-
mente un único puerto de entrada–salida de eventos en el bloque Chart de Simulink,
de forma que todos los eventos entran o salen, formando un vector de eventos, por
el mismo puerto. Cada evento lleva asociado un ı́ndice que refiere la posición del
evento en el vector. La forma de producir un evento en Simulink para que entre en
el bloque Chart es a través de cambio brusco (flanco) de alguna señal. Al declarar
el evento en Stateflow, se puede elegir entre:

• Flanco de subida

• Flanco de bajada

• Flanco indiferente
102 CAPÍTULO 4. SISTEMAS REACTIVOS
Parte III

Automatización Local

103
Capı́tulo 5

Automatismos

105
106 CAPÍTULO 5. AUTOMATISMOS
Capı́tulo 6

Automatismos eléctricos

6.1 El relé
El relé es el dispositivo fundamental para la realización de automatismos eléctri-
cos. Consta de un conjunto de piezas colocadas dentro de una caja, de la forma
indicada en la figura 6.1, y es esencialmente un interruptor accionado mediante un
eléctroimán. Al aplicar tensión entre los terminales A1 y A2, el electroimán atrae
a la armadura férrea hacia el núcleo del electoimán, con lo que el terminal 1 se
desconecta del terminal NC y se conecta con el terminal NA. Cuando se deja de
aplicar el voltaje a la bobina, el relé, accionado por el muelle, vuelve a su estado de
reposo.

1
NC

NA

A1

A2

Figura 6.1: Relé en estado de reposo.

El esquema según la norma CEI es


Se fabrican relés de muchos tipos y tamaños según sea su aplicación. Pueden
tener varios contactos NC y NA, accionados por la misma bobina, para poder operar
sobre varios circuitos a la vez. La alimentación suele ser de 12V o de 24V en los
relés de automatismos.

107
108 CAPÍTULO 6. AUTOMATISMOS ELÉCTRICOS

A1 12 14

A2 11

Figura 6.2: Esquema de relé con contactos NC y NA.

6.2 Funciones lógicas con relés


6.2.1 Función lógica identidad

+ −
a s

Figura 6.3: Identidad

6.2.2 Función lógica negación

+ − −
a s

Figura 6.4: Negación

6.2.3 Función lógica AND


6.2.4 Función lógica NAND
6.2. FUNCIONES LÓGICAS CON RELÉS 109

+ −
a K

Figura 6.5: Negación con relé

+ −
a b s

Figura 6.6: Función lógica AND

+ −
a b K

K s

Figura 6.7: Función lógica AND con relé

+ −
a b K

K s

Figura 6.8: Función lógica NAND


110 CAPÍTULO 6. AUTOMATISMOS ELÉCTRICOS
Capı́tulo 7

Autómatas programables

111
112 CAPÍTULO 7. AUTÓMATAS PROGRAMABLES
Bibliografı́a

[1] M. Silva Las Redes de Petri: en la Automática y la Informática. Editorial AC

[2] Charles L. Phillips


Feedback Control Systems
Prencice Hall Inc., 1988

[3] K.Lockyer La producción industrial, su administración. Representaciones y


Servicios de Ingenierı́a S.A., Mexico, 1988.

[4] M.P. Groover Automation, Production systems and Computer Integrated Ma-
nufacturing. Prentice Hall.

[5] David Harel “Statecharts: A Visual formalism for Complex Systems”, Science
of Computer Programming 8, (1987), pp. 231-274.

[6] Object Modeling Group OMG Unified Modeeling Language Specification. Ob-
ject Modeling Group, Inc., Version 1.3, June 1999.

[7] Hans Vangheluwe Modeling and Simulation Concepts. McGill, CA, CS 522 Fall
Term 2001.

113

You might also like