Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Indice
1 Introducci
on
1.1 Perspectiva historica . . . . . . . . . . . . . . . . . . .
1.2 La empresa productiva . . . . . . . . . . . . . . . . . .
1.2.1 El proceso productivo . . . . . . . . . . . . . .
1.2.2 Operaciones basicas de fabricacion . . . . . . .
1.2.3 Tipos de procesos . . . . . . . . . . . . . . . . .
1.2.4 Ubicacion de los procesos . . . . . . . . . . . . .
1.3 El proceso en feedback . . . . . . . . . . . . . . . . . .
1.3.1 El regulador de Watt . . . . . . . . . . . . . . .
1.3.2 Esquema de regulacion en feedback . . . . . . .
1.3.3 El significado del control . . . . . . . . . . . . .
1.3.4 El control en la empresa . . . . . . . . . . . . .
1.4 La automatizacion industrial . . . . . . . . . . . . . . .
1.4.1 Tecnicas de control . . . . . . . . . . . . . . . .
1.4.2 Estructuras de automatizacion . . . . . . . . . .
1.4.3 Ventajas e inconvenientes de la automatizacion
1.4.4 Elementos de la automatizacion . . . . . . . . .
1.5 Modelos matematicos de sistemas . . . . . . . . . . . .
1.6 Modelado y simulacion de sistemas complejos . . . . .
1.6.1 Importancia del modelado . . . . . . . . . . . .
1.7 Estructura del curso . . . . . . . . . . . . . . . . . . .
1.7.1 Control de procesos continuos . . . . . . . . . .
1.7.2 Control de procesos de eventos discretos . . . .
1.7.3 Automatizacion local . . . . . . . . . . . . . . .
1.7.4 Automatizacion global . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 Dise
no de Controladores
2.1 Introduccion . . . . . . . . . . . . . . .
2.2 Tipos de controladores . . . . . . . . .
2.2.1 Controlador tipo proporcional P
2.2.2 Controlador tipo integrador . .
2.2.3 Controlador tipo derivativo D .
3
7
8
10
11
12
13
15
16
16
17
18
19
19
19
20
22
23
24
25
25
30
30
30
30
31
33
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
35
35
36
36
37
37
INDICE
2.3
2.4
2.5
2.6
2.7
II
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 Sistemas booleanos
3.1 Dispositivos logicos . . . . . . . .
3.2 Algebra de Boole . . . . . . . . .
3.2.1 Funciones booleanas . . .
3.2.2 Simplificacion de funciones
3.3 Sistemas combinacionales . . . . .
3.4 Sistemas secuenciales . . . . . . .
3.5 Maquinas de estados . . . . . . .
3.5.1 Automata de Mealy . . . .
3.5.2 Automata de Moore . . .
3.5.3 Tablas de estado . . . . .
3.5.4 Diagramas de estado . . .
3.5.5 Dispositivos biestables . .
4 Sistemas reactivos
4.1 Modelos de sistemas productivos .
4.2 Grafcet . . . . . . . . . . . . . . .
4.2.1 Reglas de funcionamiento
4.2.2 Estructuras basicas . . . .
4.2.3 Posibilidades avanzadas .
4.2.4 Jerarqua . . . . . . . . .
4.2.5 Comunicacion . . . . . . .
4.3 Cartas de estado . . . . . . . . .
. . . . . .
. . . . . .
. . . . . .
booleanas
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
38
39
41
43
45
46
47
52
54
54
56
56
60
61
63
64
64
67
69
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
71
71
73
74
76
81
84
85
85
85
86
87
87
.
.
.
.
.
.
.
.
89
90
90
93
94
95
96
96
96
INDICE
4.4
III
5
4.3.1 Stateflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Creacion de un modelo con StateflowSimulink . . . . . . . . . . . . . 97
4.4.1 Elementos de una carta de estado . . . . . . . . . . . . . . . . 98
Automatizaci
on Local
103
5 Automatismos
6 Automatismos el
ectricos
6.1 El rele . . . . . . . . . . . . . .
6.2 Funciones logicas con reles . . .
6.2.1 Funcion logica identidad
6.2.2 Funcion logica negacion
6.2.3 Funcion logica AND . .
6.2.4 Funcion logica NAND .
7 Aut
omatas programables
105
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
107
. 107
. 108
. 108
. 108
. 108
. 108
111
INDICE
Captulo 1
Introducci
on
La Automatizacion se compone de todas las teoras y tecnologas encaminadas de
alguna forma a sustituir el trabajo del hombre por el de la maquina. En este
captulo daremos unas ideas muy generales sobre esta area, tan amplia y compleja,
y posteriormente las desarrollaremos a lo largo del curso.
Conceptualmente, la automatizacion se basa en una reiterada aplicacion del mecanismo de feedback y, por ello, esta en ese sentido relacionada con las Teoras de
Control y de Sistemas. En cuanto a su aspecto tecnologico, puede decirse que siempre ha estado a la u
ltima, adoptando en cada momento historico los mas recientes
avances.
Siendo nuestro objetivo automatizar ciertos procesos, parece claro que primero
hemos saber como funcionan esos procesos. Como veremos, el tipo de automatizacion 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 solo
los mas importantes desde el punto de de la automatizacion, y obtendremos modelos
con sus caractersticas esenciales. Los procesos y modelos que iremos estudiando en
captulos posteriores son:
Procesos continuos (tiempo continuo y/o discreto)
Procesos comandados por eventos
Procesos de fabricacion
Aparte de las explicaciones dadas en clase sobre los procesos industriales y de su
estudio, puede ser un complemento interesante su observacion real, in situ, realizando
visitas a algunas empresas.
Pero no es suficiente con aprender a automatizar cada proceso. En una moderna
factora todos los procesos estan conectados entre s y desde la gestion de la empresa
se pueden controlar y supervisar algunos o todos los procesos, a traves de redes
locales y buses de comunicacion. Tambien pueden estar en conexion los diferentes
departamentos de la empresa, e incluso empresas diferentes a traves de redes propias
o de Internet. Es por ello interesante describir cada proceso como inscrito en el marco
7
CAPITULO 1. INTRODUCCION
1.1
Perspectiva hist
orica
Se cree que cuando el homo sapiens domino el fuego, comenzo a usarlo como elemento calefactor y para condimentar alimentos. Tuvo que pasar mucho tiempo, hasta la
Edad del Bronce, para que lo empleara en la obtencion de metales y en la ceramica
dando as lugar a los que podramos llamar primeros procesos de fabricacion de la
historia.
Pero el fuego no ha sido la u
nica fuente de energa de la antig
uedad. Hacia el a
no
2000 a. de J.C. se utiliza por primera vez la energa eolica para mover embarcaciones
dotadas de velas y, hacia el 1000 a. de J.C., los fenicios atravesaban el Mediterraneo
con sus navos. Mas tarde, sobre el 50 a. de J.C., los Romanos empiezan a utilizar
la energa hidraulica para la extraccion de agua por medio de la noria. Durante la
edad media se utilizo mucho, en practicamente toda Europa, la energa generada
por los molinos de viento.
La invencion de la maquina de vapor por James Watt hacia 1750 es el acontecimiento que marca el inicio de la Revolucion Industrial, que dura hasta finales de
siglo. Las tecnologas productivas nacen en ese momento: la maquina de vapor se
emplea rapidamente para mover las bombas de extraccion de agua en las minas de
carbon de Gales y en la automatizacion de los telares en Manchester.
Durante este perodo, con las de maquinas de vapor y luego con las de combustion interna y los motores electricos, se van produciendo cambios progresivos
en los procesos de produccion. Las maquinas herramienta ganan potencia y precision, lo que a su vez permite fabricar productos de mayor calidad. Surgen as los
primeros talleres mecanicos que producen maquinas algunas de las cuales llevan ya
rudimentarios sistemas de control.
En el siglo XX, aunque ya no se denomine asi, contin
ua la revolucion industrial
con un desenfrenado avance tecnologico y cientfico. La evolucion de la tecnica es
permanente, con una sucesion interminable de inventos y aplicaciones, muchos de
los cuales (pensemos sin ir mas lejos en el automovil y en los electrodomesticos) se
han convertido en herramientas basicas para hombre actual.
Todo este desarrollo ha sido consecuencia de una premisa fundamental: la existencia de fuentes de energa inagotables y baratas. Pero su veracidad se ha puesto
en entredicho con la crisis del petroleo iniciada en las u
ltimas decadas 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
ublico, se ve obligada
casi siempre a incorporar las u
ltimas tecnologas en sus procesos o de lo contrario
corre el peligro que quedar rapidamente obsoleta.
Algunas teoras, tecnologas y areas tecnologicas cuyo avance ha favorecido la
evolucion de los procesos productivos son las siguientes:
Teoras
1.1. PERSPECTIVA HISTORICA
CAPITULO 1. INTRODUCCION
10
1.2
La empresa productiva
Produccin
11
Almacn de
productos terminados
Gestin
Compras
Finanzas
Ventas
MERCADO
1.2.1
El proceso productivo
Un proceso productivo es una serie de operaciones que se realizan sobre unas materias primas (o productos mas elementales) para obtener un producto terminado,
listo para su utilizacion.
Una definicion descriptiva de proceso productivo puede resultar muy complicada,
puesto que hay muchas clases de procesos, siendo en cambio mas sencillo dar una
definicion de tipo entrada-salida:
Un proceso productivo es un sistema din
amico de control cuya entrada es un flujo
de producto (materias primas) y cuya salida es otro flujo de productos (productos
terminados).
Materias primas-
Proceso
productivo
Productos terminados-
CAPITULO 1. INTRODUCCION
12
Con una definicion as perdemos toda nocion 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 como se relacionan entre s
(bloque). Sin embargo el bloque o funcion 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 mas
simples conectados entre s, cada uno de los cuales se puede considerar tembien
como un sistema dinamico de control o proceso. Por tanto, hemos de tener una
idea de cuales son y como funcionan (o sea cuales son sus modelos matematicos) los
sistemas de control o procesos mas simples porque de ese modo podremos entender
despues como funcionan los procesos de fabricacion.
Los procesos productivos estan catalogados como sistemas complejos en la Teora
de Sistemas. La complejidad surge de la interconexion de unos procesos con otros
y de la naturaleza estocastica de muchos de los eventos que dirigen la evolucion del
sistema. Cada proceso esta conectado con otros procesos internos y externos a la
empresa, que pueden ser de muy distinta naturaleza y, en general, se compone de
subprocesos mas simples interrelacionados entre si.
Materia prima -
Proceso
Producto terminado-
1.2.2
Operaciones b
asicas de fabricaci
on
Pieza -
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.
1.2.3
Pieza 2-
Tipos de procesos
Si en nuestro hogar echamos una mirada a nuestro alrededor y observamos los objetos
que nos rodean, veremos que la gran mayora de ellos son el resultado o producto
de alg
un proceso de fabricacion y nos daremos cuenta que deben existen multitud
de ellos. Incluso, con un poco de imaginacion y ciertos conocimientos tecnicos,
podemos adivinar cual ha sido el proceso para fabricar un determinado producto o,
mejor dicho, los posibles procesos, ya que tambien nos daremos cuenta enseguida
de que hay muchas formas de fabricar el mismo producto. Ahora bien, tras muchos
a
nos de experiencia, se han afianzado cuatro tipos estandar de procesos:
Job Shops
Produccion por lotes
Lneas de produccion
Produccion continua
Job Shops
Es un tipo de produccion que permite fabricar una amplia gama de productos en
series de tama
no peque
no o mediano. Los productos suelen ser conjuntos de componentes, posiblemente complicados o de alta tecnologa, montados. Se utiliza para la
fabricacion de ciertas maquinas herramientas, robots, aviones, aeronaves y algunos
prototipos. Suelen exigir mano de obra muy especializada y mucho tiempo para el
dise
no de los procesos y para la preparacion de la maquinaria y los equipos humanos de montaje. Por todo ello, los tiempos de produccion son elevados y los costes
tambien.
14
CAPITULO 1. INTRODUCCION
Producci
on por lotes
Esta orientada a la fabricacion de lotes de tama
no medio de un determinado producto. La produccion de cada lote se hace de una tirada y, una vez terminado un lote,
el departamento de fabricacion enva una orden de control indicando si se puede
pasar a fabricar otro lote del mismo o de otro producto, en funcion de la demanda.
La maquinaria y el personal han de estar preparados para realizar con celeridad
las operaciones de cambio de lote.
Es quizas el tipo de produccion que se emplea para fabricar mayor n
umero de productos. Las industrias de calzado, muebles, electrodomestcos, maquina-herramienta
y otras muchas, lo utilizan.
Lneas de producci
on
Estos procesos son el resultado de la evolucion de la produccion 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 produccion, los productos pueden
pasar de una lnea a otra, existiendo muchas configuraciones posibiles, asi como diferentes metodos y mecanismos de transferencia. Se suenen utilizar zonas o recipientes
a modo de peque
nos almacenes, para el almacenamiento intermedio de productos
semielaborados, y alimentadores de piezas para los procesos.
Basicamente hay dos tipos de lneas: lneas de proceso y lneas 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 lneas de montaje se utilizan para fabricar productos
formados por conjuntos de piezas montados.
Quizas sea la fabricacion de automoviles el ejemplo mas tpico de este tipo de
produccion. Se fabrican grandes series de unos pocos modelos. Otros ejemplos son
la fabricacion de ciertos productos de gran consumo como neumaticos, bombillas,
bicicletas, envases de plastico, etc.
En este tipo de fabricacion se dise
na toda la factora en funcion del producto
a fabricar, por lo que un cambio de producto suele exigir el cierre de aquella o, al
menos, una completa remodelacion de la misma.
Producci
on 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).
Proceso 1
15
Proceso 2
Proceso 3
Producto final
Este tipo de produccion se aplica sobre todo en las industrias qumicas, petroqumicas, textiles, de plastico y de laminacion de acero.
1.2.4
Ubicaci
on de los procesos
La disposicion de los procesos dentro de la planta de produccion es importante porque de ella dependen muchos factores del proceso de produccion asi como la comodidad del personal, los cableados de alimentacion y buses de comunicaciones, etc. Los
programas simulacion (estocastica) de procesos pueden ayudar mucho en el dise
no
de la distribucion en planta. Tradicionalmente se consideran cuatro posibilidades de
ubicacion
Producto en posicion fija
Por clases de procesos
En flujo de producto
Por tecnologa de grupo
Producto en posici
on fija
Cuando el producto es muy grande, muy pesado o, por alguna otra razon, no debe
moverse, hay que ubicar las herramientas y los otros equipos de fabricacion en la
zona mas idonea para, en su momento, incidir en el producto. A veces se precisa
realizar obras e instalaciones especiales para poner todo en una buena disposicion.
Es la disposicion mas indicada en las industrias naval y aeronautica.
Por clases de procesos
Las maquinas de produccion se ubican en zonas o locales de la factora por clases
de procesos. En cada zona o local solo se realiza un proceso. Es una distribucion
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 fabricacion muy flexible puesto que se puede cambiar el
proceso simplemente a
nadiendo o quitando ciertas maquinas.
En flujo de producto
Los elementos que intervienen en la produccion se disponen a lo largo del flujo de
producto. Por ejemplo, a lo largo de una lnea de montaje en una fabricacion de
CAPITULO 1. INTRODUCCION
16
1.3
El proceso en feedback
1.3.1
El regulador de Watt
17
x-
Valvula
p-
Maquina
r (s)-
Captador
La tarea que realiza este controlador es simple y efectiva: el controlador abre
o cierra la la valvula en funcion 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
ua); en caso contrario el controlador
movera la valvula en sentido de apertura o de cierre, dependiendo de que el valor e
sea positivo o negativo. Es facil acoplar mecanicamente el punto A a la valvula de
modo que esta se abra si e > 0.
De este modo se consigue que la velocidad de rotacion (t) del eje de la maquina
se mantenga mas o menos constante, incluso aunque se produzcan variaciones en la
potencia entregada o en la presion p de la caldera.
1.3.2
Esquema de regulaci
on en feedback
r Y (s)-
M
Figura 1.3: Esquema de regulacion en feedback
ref
d(t)
Entrada perturbadora
y(t)
Salida
CAPITULO 1. INTRODUCCION
18
1.3.3
Controlar un sistema dinamico significa conducirlo, llevarlo, gobernarlo o comardarlo, de tal manera que su trayectoria o evolucion en el tiempo se aproxime a una
fijada de antemano, mediante la actuacion sobre unos elementos del sistema llamados controles. As, un chofer controla la trayectoria de un vehculo girando el
volante, pisando el acelerador y los frenos y moviendo el cambio de marchas. De
forma mas imprecisa, el gobierno de una nacion dispone de ciertos controles, como
los salarios, los impuestos, el valor de la moneda, etc., para controlar la evolucion
de la tasa de inflacion.
La Teora de Control estudia los sistemas que son de alg
un 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 estmulos, y otros de salida, por de
que emite su respuesta. Esta definicion permite representar graficamente 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 ingeniera.
INDUSTRIAL
1.4. LA AUTOMATIZACION
Entrada-
Bloque
19
Salida -
1.3.4
El control en la empresa
1.4
La automatizaci
on industrial
1.4.1
T
ecnicas de control
CAPITULO 1. INTRODUCCION
20
La aplicacion principal de las tecnicas analogicas es la realizacion de controladores de Procesos Continuos industriales: mecanismos y maquinas movidos por
motores electricos, 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 u
ltimo, las letras significan
proporcional, integral, derivativo e indican el proceso, o funcion matematica C(),
que realiza el controlador:
Z
dx(t)
1 t
x(t) = C((t)) = Kp 1 + Td
+
x( )d ,
(1.1)
dt
Ti 0
en donde los parametros Kp , Td y Ti son constantes. La realizacion de esta funcion
se hace casi siempre utilizando componentes electronicos analogicos, generalmente
amplificadores operacionales, pero son posibles las realizaciones con componentes de
fl
uidos.
T
ecnicas digitales
La aparicion primero del ordenador y posteriormente de los microprocesadores y
microcontroladores y del ordenador personal, asi como el desarrollo de las comunicaciones, del software y de otros campos afines, han hecho que las tecnicas de control
se hayan sofisticado y extendido.
Las aplicaciones son muchas. En principio, las tecnicas digitales se utilizaron
para realizar controladores para los procesos continuos. Los controladores anta
no
analogicos, y en particular el PID, hoy da se realizan y comercializan en su version digital. Ahora la funcion (1.1) la realiza un microprocesador a traves de un
algoritmo. El campo de aplicacion es el mismo pero las prestaciones de los digitales
son muy superiores a las de sus hermanos analogicos. Resulta mas facil sintonizarlos, es decir, ponerles los parametros adecuados, y estan preparados para poder ser
operados a distancia a traves de buses de comunicacion.
Despues, se utilizaron para el desarrollo de otros dispositivos de control, entre
los que cabe destacar el automata programable de gran aplicacion en el Control de
procesos de eventos discretos.
Y, finalmente, han hecho posible una creciente Automatizaci
on Global, es decir,
la expansion del control y las comunicaciones por toda la empresa en base a las
estructuras de control que se han ido creando: control centralizado, control distribudo, control jerarquico, etc.
1.4.2
Estructuras de automatizaci
on
INDUSTRIAL
1.4. LA AUTOMATIZACION
Proceso 1
Proceso 2
Proceso 3
21
Proceso 4
Automatizacion fija
Automatizacion programable
Automatizacion flexible
Automatizacion total
La automatizacion fija se utiliza cuando el volumen de produccion es muy alto
y, por tanto, se puede justificar economicamente el alto costo del dise
no de equipo
especializado para procesar el producto, con un rendimiento alto y tasas de produccion elevadas. Un ejemplo tpico puede ser la fabricacion de automoviles. Un
inconveniente de la automatizacion fija es que su ciclo de vida depende de la vigencia
del producto en el mercado.
La automatizacion programable se emplea cuando el volumen de produccion es
relativamente bajo y hay una diversidad de productos a obtener. En este caso el
equipo de produccion es dise
nado para adaptarse a la variaciones de configuracion
del producto y esta adaptacion se realiza por medio de Software. Un ejemplo podra
ser la fabricacion de diferentes tipos de tornillos bajo pedido.
Por su parte, la automatizacion flexible es mas adecuada para un rango de produccion medio. Los sistemas flexibles poseen caractersticas de la automatizacion
fija y de la automatizacion programada. Suelen estar constituidos por una serie
de estaciones de trabajo interconectadas entre si por sistemas de almacenamiento y
manipulacion de materiales, controlados en su conjunto por una computadora.
El escalon final es la automatizacion total de la produccion, en la que, idealmente,
la fabricacion se realizara sin intervencion humana.
En la figura 1.5 se muestra una estructura de control sencilla compuesta por un
computador que se comunica, a traves de un bus, con cuatro automatas programables cada uno de los cuales controla un determinado proceso.
CAPITULO 1. INTRODUCCION
22
1.4.3
INDUSTRIAL
1.4. LA AUTOMATIZACION
1.4.4
23
Elementos de la automatizaci
on
CAPITULO 1. INTRODUCCION
24
Control por computador
1.5
Modelos matem
aticos de sistemas
DE SISTEMAS COMPLEJOS
1.6. MODELADO Y SIMULACION
25
que van configurando las diferentes partes que configuran la Teora de Control y sus
aplicaciones.
Los sistemas de eventos discretos reciben tambien el nombre de sistemas reactivos o sistemas comandados por eventos (event-driven systems). Sus modelos
matematicos son complejos, se basan en procesos estocastcos y procesos de colas,
por lo que es habitual trabajar con modelos no matematicos basados en computador.
En este sentido ha supuesto un gran avance la especificacion del Lenguaje Unificado de Modelado (UML).
1.6
Modelado y simulaci
on de sistemas complejos
1.6.1
El conocimiento sobre las cosas que tenemos a nuestro alrededor, adquirido a traves
de los sentidos y almacenado en el cerebro, no es la realidad sino una abstraccion,
un modelo de la misma. Es un modelo en el que se reflejan algunas caractersticas
estaticas (forma, dimensiones, color, sonido, olor, temperatura, acabado superficial,
etc.) y quizas tambien algunas otras dinamicas (velocidad, etc). Si utilizamos instrumentos de medida, la informacion que adquirimos puede enriquecerse con n
umeros,
graficos y quizas con otros tipos de informacion propia de cada instrumento.
De alguna manera, la informacion que hemos adquirido sobre un objeto es el
resultado de experiencias (experimentos) que hemos realizado sobre el mismo. Por
tanto, la informacion adquirida es siempre parcial, se refiere a los resultados de
experiencias o experimentos y el modelo de cualquier sistema es tambien parcial,
es decir, solo 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
un no se conocen, sencillamente porque no se han medido o, si se
quiere, porque quedan fuera de contexto.
CAPITULO 1. INTRODUCCION
26
REALIDAD
MODELO
Entidad
del
Mundo Real
Modelo
bsico
OBJETIVOS
anlisis slo
en contexto
experimental
experimento
dentro de contexto
Datos
observados de
Experimento
Conocimiento
a priori del
modelo bsico
Modelo M
Validacin
Simulacin =
Experimento virtual
Resultados
de
Simulacin
Proceso de
Modelado y Simulacin
DE SISTEMAS COMPLEJOS
1.6. MODELADO Y SIMULACION
27
Sera estupendo que el lenguaje de modelizacion fuera universal pues ello facilitara la comunicacion entre los equipos de desarrollo dentro de la empresa y tambien,
fuera de ella, entre los miembros de la comunidad cientfica.
Un buen lenguaje de modelizacion ha de tener
Elementos del modelo conceptos fundamentales y semantica
Notacion representacion visual de los elementos del modelo
Directivas lenguajes a utilizar para el modelado
Lenguaje Unificado de Modelizaci
on (UML)
La carencia de un lenguaje estandar de modelizacion ha sido durante mucho tiempo
el principal quebradero de cabeza de muchos dise
nadores de software. La situacion
era caotica hasta hace poco porque, al ser las herramientas de desarrollo de software
de diferentes fabricantes e incompatibles entre s, cuando alguien pretenda 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 situacion ha
cambiado recientemente con la aparicion del denominado Unified Modeling Language
(UML). El desarrollo de este lenguaje comenzo en Octubre de 1994 cuando Grady
Booch y Jim Rumbaugh, de la empresa Rational Software Corporation, unificaron
el anterior metodo de Booch y el llamado tecnica de Modelado de Objetos (OMT) y
crearon un proyecto com
un, al que llamaron Unified Method, cuyo primer borrador
vio la luz en Octubre de 1995. A finales del mismo a
no Ivan Jacobson y su empresa
Objectory se unieron a Rational Software y como resultado de la union surgio el
metodo OOSE (Object-Oriented Software Engineering).
Al comenzar a trabajar juntos, Booch, Rumbaugh y Jacobson fijaron como objtivos los siguientes:
1. Otorgar al modelado de sistemas (y no solo al software) la capacidad de utilizar
conceptos orientados a objetos.
2. Establecer un acoplamiento explcito con los artefactos tanto conceptual como
ejecutable.
3. Tratar los temas inherentes a la escala en los sistemas complejos y de mision
crtica.
4. Crear un lenguaje de modelado entendible tanto por las maquinas como por
los seres humanos.
Los esfuerzos de los tres ingenieros dieron su fruto con la publicacion de las
versiones 0.9 y 0.91 de UML, en Junio y en Octubre de 1996. UML comenzo a
extenderse con rapidez y muchas importantes empresas vieron en UML un asunto
de importancia estrategica para sus negocios. Tras una primera fusion con OMG
(Object Management Group), Rational Software establecio las bases para crear un
CAPITULO 1. INTRODUCCION
28
DE SISTEMAS COMPLEJOS
1.6. MODELADO Y SIMULACION
29
CAPITULO 1. INTRODUCCION
30
1.7
El curso se estructura en 4 partes. Las dos primeras son mas bien teoricas y en ellas
se estudian los fundamentos que permiten el modelado de sistemas. Las otras dos
partes son de un contenido mas bien practico, de aplicacion de lo estudiado antes,
si bien en la u
ltima parte se requieren algunos nuevos conocimientos teoricos.
Control de procesos continuos
Control de procesos de eventos discretos
Automatizacion local
Automatizacion global
1.7.1
1.7.2
1.7.3
Automatizaci
on local
En esta parte estudiaremos algunos de los elementos existentes en el mercado dedicados a la automatizacion local. Es un tema mas bien descriptivo y muy extenso
en el que, aparte de lo mostrado en clase, el alumno debe intentar conseguir informacion (catalogos, documentos de Internet, etc.) sobre los productos comerciales.
Algunos de los elementos son
Captadores
Pre-actuadores y actuadores.
31
Automatismos electricos
Automatismos neumaticos e hidraulicos
Automatas programables
Controladores industriales
1.7.4
Automatizaci
on global
Esta u
ltima parte esta dedicada al estudio de la automatizacion global y en la misma
daremos una vision general algunos aspectos importantes de la misma, tales como
Simulacion de procesos productivos
Redes locales
Buses industriales
GEMMA
SCADA
Control jerarquico
32
CAPITULO 1. INTRODUCCION
Parte I
Control de procesos continuos
33
Captulo 2
Dise
no de Controladores
2.1
Introducci
on
DE CONTROLADORES
CAPITULO 2. DISENO
36
2.2
Tipos de controladores
D(s)
R(s)
Gc
Y(s)
Gp
H
Figura 2.1: Sistema de control
2.2.1
(2.1)
R
Vo
R2
R1
37
2.2.2
R1 + R2
V0
=
Vi
R1
Su funcion de transferencia es
1
(2.2)
sTi
Siendo Ti una constante. Se ha implementado mediante el circuito integrador inversor representado en la figura 2.3, en la que
Gc =
1/sC1
1
V0
=
=
Vi
R1
sR1 C1
Gc =
(2.3)
C1
Vi
R1
Vo
Ti = R1 C1
2.2.3
(2.4)
Su funcion de transferencia es
Gc = sTd
(2.5)
V0
R1
=
= sR1 C1
Vi
1/sC1
(2.6)
(2.7)
DE CONTROLADORES
CAPITULO 2. DISENO
38
R1
Vi
C1
Vo
2.2.4
Controladores PID
V0
1
= Kp (1 +
+ sTd )
Vi
sTi
(2.8)
Vi
1
sT i
Kp
Vo
sT d
39
R1
R1
R4
C2
R5
Vi
R1
R4
Vo
R3
C3
R4
2.2.5
R5
,
R4
Ti = R2 C2 ,
Td = R3 C3
(2.9)
V0
s zc
1 + T s
= Kc
=
Vi
s pc
(1 + T s)
(2.11)
DE CONTROLADORES
CAPITULO 2. DISENO
40
C
R1
R1
C
R2
Vi
Vi
Vo
Vo
R2
a)
b)
V0
s zc
1 + Ts
= Kc
=
Vi
s pc
1 + T s
(2.12)
R1
R2
Vi
Vo
C2
V0
(1 + T1 s)(1 + T2 s)
=
Vi
(1 + T1 s)(1 + T2 s)
(2.13)
V0
s zc
C1 (s + 1/R1 C1 )
= Kc
=
Vi
s pc
C2 (s + 1/R2 C2 )
(2.14)
BASADOS EN EL LUGAR DE LAS RAICES
2.3. METODOS
DE DISENO
41
C2
C1
R2
Vi
R1
Vo
2.3
M
etodos de dise
no basados en el lugar de las
races
El metodo de dise
no basado en el lugar de las races suele tambien denominarse de
asignacion 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 (cancelacion de polos).
Antes de proceder al estudio de algunos ejemplos de dise
no de controladores
veamos que efecto produce la adicion de un polo o de un cero sobre el lugar de las
races. Sea un sistema cuya funcion de transferencia en lazo abierto es:
G(s) =
1
s2
(2.15)
1
+ 2)
s2 (s
(2.17)
42
DE CONTROLADORES
CAPITULO 2. DISENO
BASADOS EN EL LUGAR DE LAS RAICES
2.3. METODOS
DE DISENO
43
2.3.1
Dise
no de una red de adelanto de fase
s zc
,
s pc
(2.18)
El dise
no consiste en asignar unos valores a los parametros del controlador, tales que
el lugar geometrico pase por un punto dado, definido a partir de las especificaciones
de funcionamiento. Vamos a considerar el mismo ejemplo anterior en el que la
funcion 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 establecimiento Ts de 4s y una sobreoscilacion maxima 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
DE CONTROLADORES
CAPITULO 2. DISENO
44
Por otra parte la sobreoscilacion maxima esta relacionada con el coeficiente de amortiguamiento. Puede probarse que una sobreoscilacion del 20% corresponde a un
coeficiente de amortiguamiento = 0.45. Por lo tanto, sustituyendo este valor en la
expresion anterior queda
4=
4
,
0.45n
n = 2.22
(2.21)
(2.22)
im
3
Raz deseada
2
1
p
-5
-4
-3
90
-2
116.56
re
-1
Para que el lugar de las races 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 raz (1 2j), antes hallada, por la que
ha de pasar el lugar. Aplicando el criterio del argumento, hallamos la ubicacion del
polo del controlador (figura 2.13):
90o 2(116.56o ) p = 180o
p = 38o
BASADOS EN EL LUGAR DE LAS RAICES
2.3. METODOS
DE DISENO
Gc
R(s)
45
Gp
s+1
8.1
s
s+3.6
Y(s)
H
1
Figura 2.14: Ubicacion del cero y del polo del controlador PID
2.3.2
Dise
no de un controlador PID
Vamos a suponer que deseamos controlar la misma planta anterior, con funcion de
transferencia Gp (s) = 1/s2 , mediante un controlador PID. Este tipo de control no
es el mas idoneo en este caso, ya que la propia planta realiza una doble integracion;
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
races ha de pasar por el punto (12j). La funcion de transferencia del controlador
es ahora
s2 Td Ti + sTi + 1
1
Gc = Kp (1 +
+ sTd ) = Kp
sTi
sTi
Un sencillo metodo de dise
no consiste en suponer que los ceros z1 y z2 del controlador
PID son reales. Ubicamos el cero z1 bajo la raz deseada y, aplicando la condicion
de angulo, determinamos el otro cero (figura 2.16).
Condicion de angulo:
90o + z2 3(116.56o ) = 180o ,
s2 Td Ti + sTi + 1
s2 + 2.36s + 1.36
=
sti
s
de donde resulta
Ti = 2.36/1.36 = 1.73s
Td = 1/2.36 = 0.42s
46
DE CONTROLADORES
CAPITULO 2. DISENO
2.4
Dise
no en el Lugar de las Races
El dise
no en el Lugar de las races esta 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 sobreoscilacion
maxima Mp y el tiempo de pico tp , podemos hallar el par de polos asociado a las
mismas, ya que de
Mp = e
1 2
p
n 1 2
podemos hallar n .
Si el sistema controlado ha de tener polos dominantes reales, es decir, una respuesta temporal monotona, no es aplicable este metodo. 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 solo dos polos del sistema en lazo cerrado.
La posicion del resto de los polos queda fuera de control, y bien puede suceder, en
plantas de orden elevado, que los polos ubicados por dise
no no sean efectivamente
los dominantes.
La desventaja del metodo del lugar de las races es que la informacion disponible
para el dise
nador disminuye conforme aumenta el n
umero de ramas. En estos casos
47
im
3
Raz deseada
2
1
z2
-5
-4
-3
-2
90
-1
116.56
re
la alternativa puede ser trabajar con modelos de orden reducido o bien utilizar
metodos de dise
no en el dominio de la frecuencia.
2.4.1
DE CONTROLADORES
CAPITULO 2. DISENO
48
k = 0, 1, 2, . . .
(2.23)
para alg
un K = 0, 1, 2, ...
La fase c del controlador en pd puede relacionarse graficamente en el plano s
con los parametros 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
umero
infinito de posibles = pc y = zc que verifican c = . En la practica, lo
habitual es fijar uno de los dos parametros, pc o zc , y calcular el otro a partir de la
condicion de angulo.
49
Im
c
p2
p1
Re
Im
pd
c
pc
Re
zc
pd
DE CONTROLADORES
CAPITULO 2. DISENO
50
Ejemplo de dise
no. Compensador en serie
D(s)
s + zc
U (s)- mE(s)Kc
+
s + pc
?
- +m
500
s(s + 1)
Y (s)
r
-
500
s(s + 1)
51
Im
-1
-0.5
Re
Im
pd
38
pc
-32.5
-1
Re
DE CONTROLADORES
CAPITULO 2. DISENO
52
Una buena solucion, 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 funcion de transferencia Y (s)/U (s).
Procediendo de este modo, para obtener el parametro pc del controlador, hallamos el valor del angulo .
= c = 130o 80o = 50o
con lo que pc vale
pc = 32.5 + 38/ tan 50o = 64
Por u
ltimo, el valor de Kc lo podemos hallar aplicando la condicion de magnitud en
el punto pd :
s + zc
=1
Kc
G
(p
)
p
d
s + pc
de donde resulta Kc = 4.93.
El dise
no ha concluido: el sistema definido por la funcion de transferencia
consigna-salida G1 (s) = Y (s)/U (s), que con los valores hallados queda
G1 (s) = 500
s2
Kc
+ pc s + 500 Kc
(s +
s + pc
+ pc s + 500 Kc )
1 ) ( s2
2.4.2
Consideraciones de dise
no
En vista del resultado del ejercicio anterior podemos pensar que el dise
no dependera
de la configuracion de las entradas y salidas del sistema de control. Ello nos llevara
a un tipo de dise
no caso por caso.
No obstante, algunas configuraciones son frecuentes en la practica por lo que conviene analizar con detalle los problemas asociados con ellas. El esquema de control
de la figura 2.23, denominado compensaci
on en serie, es frecuente, por ejemplo, en el
control de motores y de otros procesos. La entrada d1 representa una perturbacion
en la carga, d2 representa una perturbacion en la salida y d3 , una perturbacion o
ruido en la medida. No se ha considerado (H(s) = 1) la dinamica del transductor.
Nc , Dc , Np y Dp son los polinomios, numerador y denominador, del controlador y
de la planta, respectivamente.
53
d1
u- m +
Kc
- Nc
Dc
d2
?
Np
m- m
+
Dp
?
- +m
y -
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
=
,
U
D
E
Dc Dp
=
,
U
D
M
Kc Nc Dp
=
U
D
E
Y
=
,
D1
D1
M
Y
=
D1
U
DE CONTROLADORES
CAPITULO 2. DISENO
54
2.4.3
Re-dise
no. Compensador en serie
s + 25
s + 130
2.4.4
Compensador en realimentaci
on
M
Kc Df Dp
=
U
D
55
d1
u- m
+
- K
c
?
- +m
d2
Np
Dp
?
- +m
y -
Nf
Df
+m
6
d3
Figura 2.24: Esquema de control en feedback.
relacionan la salida y y esfuerzo de control m con la entrada u;
Np Df
Y
=
,
D1
D
M
Np Nf
= Kc
D1
D
M
N f Dp
= Kc
D3
D
en donde D = Df Dp + KNf Np .
El error para entrada rampa vale
1
er (s) = 2
s
Y (s)
1
U (s)
=
1 Kc Np Nf + Df Dp Kc Df Np
s2
Df Dp + Kp Nf Np
DE CONTROLADORES
CAPITULO 2. DISENO
56
2.4.5
Su funcion de transferencia es
Gc (s) =
s + zc
,
s + pc
igual que la del de adelanto de fase, pero con zz > pc > 0. Por ser su ganancia
estatica mayor que uno, las constantes de error del sistema quedaran multiplicadas
por el factor zz /pc , por estar en serie con la planta. El dise
no de este controlador
consiste en encontrar zc y pc que satisfagan una relacion dada.
Sea, como antes, pd el polo dominante deseado. Puesto que para una relacion
dada de |zc |/|pc |, la contribucion de angulo c del controlador en pd disminuye con
|zc |, debemos seleccionar zc lo mas peque
no posible para que este compensador tenga
poco efecto sobre la respuesta transitoria. Por tanto colocaremos zc proximo a los
polos dominantes.
El efecto del compensador de retraso en el lugar de las races 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
axima fase de un controlador de adelanto
s+z
s+p
Iw+z
Iw+p
> z:=1:p:=3:
> plot([Re(G),Im(G),w=0..200],0..1.1);
Nos interesa hallar el valor maximo de c y la frecuencia m en la que se produce.
Ponemos y en funcion de , z y a, con a = z/p.
a
c := arctan
arctan
z
z
La derivada de esta funcion con respecto a se obtiene con
> p1:=diff(phi_c,omega);
57
Im
pd
c
pc
Re
zc
pd
Im
m
max
=0
= o
1+
2
Re
DE CONTROLADORES
CAPITULO 2. DISENO
58
p1 :=
z
z2
1+
z
a
2 a2
1+ 2
z
( 1 + a ) z a
( 1 + a ) z a
wm1 :=
,
a2 + a
a2 + a
Simplificando esta expresion obtenemos la pulsacion correspondiente a max :
> wm:=normal(wm1[2]);
z
wm :=
a
Sustituyendo wm en la expresion de c queda
> fimax := subs(omega=wm,phi);
max := arctan
arctan
a
sf m1 :=
r
a
1+
1
1+a
a
a
1
1+
1+a
a
sfm :=
1 + a
1+a
es decir que
sin(max ) =
1a
1+a
59
Ejemplo.
Se desea controlar un sistema dinamico cuya planta tiene por funcion de transferencia
500
Gp (s) =
s(s + 1)
mediante un controlador de adelanto de fase, de forma que el sistema resultante tenga
n
una frecuencia de cruce c = 35 rad/s y un margen de fase de 65o . Resolucio
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
no, 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 ecuacion
sin(max ) =
1a
1+a
13
36
36 13
36 13
zc := 7.759313191
y tambien pc :
DE CONTROLADORES
CAPITULO 2. DISENO
60
> pc:=zc/a;
pc := 157.8747977
Una vez hallados pc y zc , lo u
nico que queda es hallar Kc . Para ello aplicamos
la condicion 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 funcion de Kc
> Gdb35:=evalf(20*log10(Kc*abs(subs(w=35,p=pc,z=zc,G))));
2.5
Dise
no en la respuesta de frecuencia
EN LA RESPUESTA DE FRECUENCIA
2.5. DISENO
2.5.1
61
- Nc
Dc
?
Np
m- m
+
Dp
?
- +m
y -
6
+m
6
d3
Figura 2.27: Esquema de control en serie.
Supongamos el sistema de control con realimentacion representado en la figura
2.27. La expresion de la salida Y (s) es
Y =
Gc Gp
1
Gp
(U D3 ) +
D2 +
D1
1 + Gc Gp
1 + Gc Gp
1 + Gc Gp
(2.24)
1
Gc Gp
Gp
(U D2 ) +
D3
D1
1 + Gc Gp
1 + Gc Gp
1 + Gc Gp
(2.25)
Las ecuaciones (2.24) y (2.25) nos dan a entender que la tarea del dise
no, condicionado siempre a ciertas restricciones y con el objetivo de cumplir determinados
requisitos de funcionamiento, no parece sencilla. Por ejemplo, uno de estos requisitos demanda la reduccion de los errores debidos a la entrada de referencia u y a
la perturbacion d2 , mientras que otro pide la reduccion del error producido por el
ruido en la medida d3 .
El conflicto entre estos dos objetivos de dise
no es evidente: si en la ecuacion
(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 restriccion es que esfuerzo de control, o variable manipulada m,
no pueda tomar valores superiores a ciertos lmites (para los que alcanzara la saturacion). En efecto, la expresion de la variable manipulada es
m=
Gc
Gc Gp
(U D2 D3 )
D1
1 + Gc Gp
1 + Gc Gp
DE CONTROLADORES
CAPITULO 2. DISENO
62
1
(U D2 D3 )
Gp
Que el controlador emita esta fuerte respuesta, ante las entradas U (de referencia) y
D2 (perturbacion en salida), puede parecer logico. No as, sin embargo, que tambien
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
QQ R
QQ :
9 R
QQ :
9 8
9 8
QQ :
9 8
Q43Q3 :
9211 8
Q43Q3 :
9211 8
Q43Q3 :
9211 0
Q43Q3 :
9211 0
++RQ43Q3 :
9211 8
++RQ43Q3 :
9211 8
++RQ43Q3 :
921*)1) 870/ .-65 ,++RQ43Q3 *)):9211
77 RQQ :
77 6
55 R
77 6
55 R
77 6
55 R
77 6
55 R
//877 .
--655 R
//877 .
--655 ,
70/7/ .
--655 ,
70/7/ .
--655 ,
R
9
9
9
9
9
9
9
9
9
9
92*91) 870/7/ .--655 ,+R4<;Q3 *):9291
R
R
:
R
:
8
R
:
8
6
R
:
8
6
4
R
2
:
8
6
4
R
2
:
8
6
4
R
2
:
0
8
.
6
4
R
2
:
0
8
.
6
,
4
R
2
:
0
8
.
6
,
4
R
2
:
0
8
.
6
,
4
R
:
;
;
;
;
;
;
;
;
;
;
;
<;RQ
<
<
<
<
<
<
<
<
<
<
<
Q
9
Q
9
7
Q
9
7
5
Q
9
7
5
3
Q
1
9
7
5
3
Q
1
9
7
5
3
Q
1
9
/
7
5
3
Q
1
9
/
7
5
+
3
Q
1
9
/
7
5
+
3
Q
1
9
/
7
5
+
3
Q
R
:
R
:
8
R
:
8
6
R
:
8
6
4
R
2
:
8
6
4
R
2
:
8
6
4
R
2
:
0
8
.
6
4
R
2
:
0
8
.
6
,
4
R
2
:
0
8
.
6
,
4
R
2
:
0
8
.
6
,
4
R
*
2
:
0
8
.
6
,
4
R
*
2
:
;
;
;
;
;
;
;
;
;
;
;
;
<;TS
<
<
<
<
<
<
<
<
<
<
<
<
S
S
S
S
S
S
S
S
S
S
S
S
T
T
T
T
T
T
T
T
T
T
T
T
77 <;RQTS>=Q :
77 6
55 <
77 6
55 <
77 6
55 <
77 6
55 <
//877 .
--655 <
//877 .
--655 ,
+<;RQ43T
70/7/ .
--655 ,
+<;RQ43T
70/7/ .
--655 ,
+<;RQ43T
99 <
99 8
99 8
99 8
92191 8
92191 8
92191 0
92191 0
92191 8
92191 8
92191 870/7/ .--655 ,+<;RQ43TSQ3 :92191
RQ<
:
:
:
:
:
:
:
:
:
:
;TS>
;RQTS>
;RQTS>
;RQTS>
;RQ43TS>
;RQ43TS>
;RQ43TS>
;RQ43TS>
<
S
S
S
=R<;
=R<
=
=
=
=
=
=
=
=
=
>
>
>
QTS>=
Q
Q
Q
3
Q
3
Q
3
Q
3
Q
3
Q
3
Q
3
Q
:
R
:
8
R
:
8
6
R
:
8
6
4
R
2
:
8
6
4
R
2
:
8
6
4
R
2
:
0
8
.
6
4
R
2
:
0
8
.
6
4
R
2
:
0
8
.
6
4
R
2
:
0
8
.
6
4
R
2:
:
80870/ .665 R<;4TSRQ43 :2:921
;
;
;
;
;
;
;
;
;
;
;
<
<
<
<
<
<
<
<
<
<
S
S
S
S
S
S
S
S
S
S
TS>
T
T
T
T
T
T
T
T
T
T
=
=
=
=
=
=
=
=
=
=
=
>
>
>
>
>
>
>
>
>
>
?
Q
9
?
Q
9
7
?
Q
9
7
5
?
Q
9
7
5
3
?
Q
1
9
7
5
3
?
Q
1
9
7
5
3
?
Q
1
9
/
7
5
3
?
Q
1
9
/
7
5
3
?
Q
1
9
/
7
5
3
?
Q
1
9
/
7
5
3
Q
1
9
RQ@?TS<;
@
R
:
@
R
:
8
@
R
:
8
6
@
R
:
8
6
4
@
R
2
:
8
6
4
@
R
2
:
8
6
4
@
R
2
:
0
8
6
4
@
R
2
:
0
8
6
4
@
R
2
:
0
8
6
4
@
R
2
:
0
8
6
4
R
2
S<;>=R
S<;>=R
S<;>=R@?QSBA<; :
S<;>=R
S<;>=R
S<;>=R
S<;>=R
S<;>=R
S<;>=R
S<;>=R
S<;>=R
S<;R4Q3S<; :921
T
T
T
T
T
T
T
T
T
T
T
T
>=R
Q@?S
Q
Q
Q
3
Q
1
3
Q
1
3
Q
1
3
Q
1
3
Q
1
3
Q
1
3
Q
1
?
9
?
9
7
9
7
5
?
9
7
5
?
9
7
5
?
9
7
5
?
9
7
5
?
9
7
5
?
9
7
5
?
9
7
5
9
7
5
@
:
@
:
8
8
6
@
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
2
:
8
6
;
A
;
A
;
A
;
A
;
A
;
A
;
A
;
A
;
;
BA<;T>=R@
<
B
<
B
<
B
<
B
<
B
<
B
<
B
<
B
<
<
S
S
S
S
S
S
S
S
S
S
T>=R
T>=R
T>=R@Q?BA<;TSDC :
T>=R
T>=R
T>=R
T>=R
T>=R
T>=R
T>=R
T>=R
TR4Q3<;TS :291
Q?BA<;TSDC>=
?
Q
9
?
Q
9
7
9
7
5
?
Q
9
7
5
3
?
Q
1
9
7
5
3
?
Q
1
9
7
5
3
?
Q
1
9
7
5
3
?
Q
1
9
7
5
3
?
Q
1
9
7
5
3
?
Q
1
9
7
5
3
Q
1
9
7
5
@
:
@
:
8
8
6
@
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
@
2
:
8
6
4
2
:
8
6
;
A
;
A
;
A
;
A
;
A
;
A
;
A
;
A
;
;
<
B
<
B
<
B
<
B
<
B
<
B
<
B
<
B
<
<
C
S
C
S
C
S
C
S
C
S
C
S
C
S
S
S
S
D
T
D
T
D
T
D
T
D
T
D
T
D
T
T
T
T
=
=
=
=
=
=
=
=
=
=
=
>
>
>
>
>
>
>
>
>
>
>
de
Q@?BA<;T
99 R
Q@?BA<;T
99 8
77 RQ@?BA<;TSODC=QP?> Requisitos
99 8
77 6
55 R
Q@?BA<;T
99 8
77 6
55 R
Q@?43BA<;T
99 8
77 6
55 R
Q@?43BA<;T
99 8
77 6
55 R
Q@?43BA<;T
99 8
77 6
55 R
Q@?43BA<;T
99 8
77 6
55 R
Q@?43BA<;T
99 8
77 6
55 R
Q@?43<;T
99 8
77 6
55 R
Q43<;T
99 877 655 RQ43<;TSQ :99
RQ@?
R
:
:
:
:
:
:
:
:
:
:
:
BA<;TSODC=
C
S
C
S
C
S
C
S
C
S
C
S
C
S
S
S
S
D
D
D
D
D
D
D
=
O
=
O
=
O
=
O
=
O
=
=
=
=
=
>
P
>
P
>
P
>
P
>
P
>
>
>
>
>
QP@?>BA<;T
?
Q
?
Q
?
Q
?
Q
?
Q
?
Q
?
Q
?
Q
?
Q
Q
R
@
R
:
@
R
:
8
@
R
:
8
6
@
R
:
8
6
@
R
:
8
6
@
R
:
8
6
@
R
:
8
6
@
R
:
8
6
@
R
:
8
6
@
R
:
8
6
R
:
887 6 R<;TSRQ ::9
funcionamiento
;
A
;
A
;
A
;
A
;
A
;
A
;
A
;
A
;
;
BA<;T
<
B
<
B
<
B
<
B
<
B
<
B
<
B
<
B
<
<
SDCRF@
SDCR
C
S
C
S
C
S
C
S
C
S
C
S
C
S
S
S
S
D
T
D
T
D
T
D
T
D
T
D
T
D
T
T
T
T
=
O
=
O
=
O
=
O
=
O
=
O
=
=
=
=
=
>
P
>
P
>
P
>
P
>
P
>
P
>
>
>
>
>
QPOE?>=BA<;TSDC
?
E
Q
9
?
E
Q
9
7
?
E
Q
9
7
?
E
Q
9
7
?
E
Q
9
7
?
Q
9
7
?
Q
9
7
?
Q
9
7
?
Q
9
7
?
Q
9
7
Q
9
@
F
:
@
F
R
:
8
@
F
R
:
8
@
F
R
:
8
@
F
R
:
8
@
R
:
8
@
R
:
8
@
R
:
8
@
R
:
8
@
R
:
8
R
:
BA<;T
BA<;T
BA<;TSDCQPOE?>=RHGFBA@<; 9
BA<;T
BA<;T
BA<;T
BA<;T
BA<;T
BA<;T
<;T
<;T
<;TSQR<; 9:
(Rango
Activo)
SDCQ
C
S
C
S
C
S
C
S
C
S
C
S
S
S
S
D
D
D
D
D
D
=
O
=
O
=
O
=
O
=
O
=
=
=
=
=
>
P
>
P
>
P
>
P
>
P
>
>
>
>
>
QPOE?>=
?
E
9
?
E
Q
9
?
E
Q
9
?
E
Q
9
?
Q
9
?
Q
9
?
Q
9
?
Q
9
?
Q
9
Q
9
RHGFBA@<;TSDC
@
F
R
:
@
F
R
:
:
@
F
R
:
@
F
R
:
@
R
:
@
R
:
@
R
:
@
R
:
@
R
:
R
:
;
A
G
;
A
G
;
A
G
;
A
;
A
;
A
;
A
;
A
;
;
<
B
H
<
B
H
<
B
H
<
B
<
B
<
B
<
B
<
B
<
<
SDCPO>=R
SDCPO>=R
SDCPO>=R
SDCPO>=R
SDCPO>=R
SDC>=R
SDC>=R
S>=R
S>=R
S>=R
T
T
TSDCPO>=RHGFBA@<;QE?TSJIDC :
T
T
T
T
T
T
T
T
TSR<;QTS :9
PO>=R
QHGFEBA@?<;T
?
E
Q
9
?
E
Q
9
9
?
E
Q
9
?
E
Q
9
?
Q
9
?
Q
9
?
Q
9
?
Q
9
?
Q
9
Q
9
@
F
:
@
F
:
@
F
:
@
F
:
@
:
@
:
@
:
@
:
@
:
:
;
A
G
;
A
G
;
A
G
;
A
;
A
;
A
;
A
;
A
;
;
<
B
H
<
B
H
<
B
H
<
B
<
B
<
B
<
B
<
B
<
<
SJIDCPO>=RGFA@;
C
I
S
C
I
S
C
S
C
S
C
S
C
S
C
S
S
S
S
D
J
T
D
J
T
D
T
D
T
D
T
D
T
D
T
T
T
T
PO>=R
PO>=R
PO>=RGFA@;QE?TSJIHDCB<PO>= PO>=R
PO>=R
PO>=R
>=R
>=R
>=R
>=R
>=R
QE?TSJIHDCB<
?
E
Q
?
E
Q
?
E
Q
?
Q
?
Q
?
Q
?
Q
?
Q
QT
FA@;QE?T
@
F
@
F
@
F
@
@
@
@
@
R;QTS<
G
;
A
G
;
A
G
;
A
;
A
;
A
;
A
;
A
;
;
<
B
H
<
B
H
<
B
H
<
B
<
B
<
B
<
B
<
B
<
<
C
I
S
C
I
S
C
S
C
S
C
S
C
S
C
S
S
S
S
D
J
D
J
T
D
T
D
T
D
T
D
T
D
T
T
T
=
K
O
=
O
=
O
=
O
=
O
=
=
=
=
=
POLK>=NFE@?
>
L
P
>
P
>
P
>
P
>
P
>
>
>
>
>
?
E
?
E
?
E
?
E
?
E
?
?
?
?
?
@
F
@
F
@
F
@
F
@
F
@
@
@
@
@
SJIHGDCBA<;POLK>=F
SJIHGDCBA<;PO>=F
SJIHGDCBA<;PO>=F@E?SIHGCBA T
SHGDCBA<;PO>=F
SDCBA<;PO>=F@
SDCBA<;PO>=@
SDCBA<;>=@
SDCBA<;>=@
SBA<;>=@
S<;>=@?ST
S<;>=STS<;S
TSJIHGDCBA<;
T
T
T
T
T
T
T
T
T
POLK>=MNF
E@?S
?
E
?
E
?
E
?
E
?
?
?
?
@
@
@
A
G
A
G
A
G
A
A
A
A
A
B
H
B
H
B
H
B
B
B
B
B
IHGCBATPOLKJD>=F@
C
I
S
C
I
S
C
S
C
S
C
S
C
S
C
S
S
ME?HGBAJIDCTPOLKJD>=F
E?BAD
?BAD
?BAD
?BADC T>=@
?BA T>=@? T>= T
@E?HGBAJ
@E?HGBAJ
@E?HGBAD
IDC TPOJD>=F
IDC TPOJD>=F@E?HGBAJIDC TPOD>=F
C TPOD>=F@
C TPOD>=@
C TD>=@
C TD>=@
! "!
%$#"!%#! &%$
#"!#! $
#"!#! $#"
&
!
#
!
$"('$#"!&%$
&
"(
"
$
"
$
"
'' $#"!' (
'$#"!' (
'$#"!' (
'"!' (
'' (
'' (
'' (
'' (
'' (
'' (
''
'' (''
(
($#"!
(
(
(
(
(
(
(
(
(
(
(
(
('
!
$#"!
$"! #"!
$#"!
"
(
(
'' "!
'"!
'
'
'
'
'
'
'
'
'
'
'
(
(
(
(
(
(
(
(
(
(
(
(('
!
!
"
"
(
'
'
'
'
'
'
'
'
'
'
'
'
(
(
(
(
(
(
(
(
(
(
(
(
('
'
'
'
'
' Limites
'
'
'
'
'
'
'
' de
'
'
'
'
'
'
'
' (''
'
('
(
(
(
(
(
(
(
(
(
(
(
(' ('
('
(
(
(
(
(
(
(
(
(
(
(
incertidumbres
(
(
(
('
'
'
'
'
'
'
'
'
'
'
'
'
('
(
(
(
(
(
(
(
(
(
('
modelado
de
'
'
'
'
'
'
'
'
'
'
'
'
'
((''
(
('
(
('
(
( '
(
( '
(
('
(
( '
(
( '
(
( '
(
( '
(
( '
(
(
(
'
(
(('
(
(
(
(
(
(
(
(
(
(
(
(
y
'
'
'
'ruido
'
'
'
'
'
'
'
'
('
(
'
(
(
(
(
(
(
(
(
(
medida
' (
'
'
'
'
'
'
'
'
'
en
'
'
'
'
'
'
'
'
'
'
'
'
'
(''
(
(
(
' '
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
('(
(
(
'
(
'
'
'
'
'
'
'
'
'
'
'
'
log
EN EL ESPACIO DE ESTADO
2.6. DISENO
63
Entre estas dos zonas, dar a M una atenuacion en pronunciado descenso para
conseguir que la anchura de banda sea amplia.
1
1+G
2.6
Dise
no en el Espacio de Estado
DE CONTROLADORES
CAPITULO 2. DISENO
64
2.6.1
Asignaci
on de polos
Sea un sistema dinamico cuyo modelo de estado esta en forma canonica controlable.
0
1
0
.
..
..
.
x =
x + u
0
1
an an1 . . . a1
1
y = Cx
en donde x Rn , u, y R, A Rnn B Rn1 , C R1n El polinomio caracterstico
esta definido por la u
ltima fila de la matriz A
det(sI A) = sn + a1 sn1 + . . . + an1 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 caracterstico
(s) = sn + 1 sn1 + . . . + n1 s + n
con races 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
x = (A BK)x + Bv
y = Cx
Si damos a K el valor
K=
n an n1 an1 . . . 1 a1
0 0 ... 0
..
BK =
.
k1 k2 . . . kn
Esta es la forma mas sencilla de resolver el problema de asignacion de polos en el
espacio de estado.
2.7
65
a 0.
(2.26)
A eT s
,
s+a
es valido para planta, este metodo consisten en aplicar un escalon unitario 1(t) a
la planta y medir su respuesta temporal y(t) para, a partir de ella, calcular los
parametros A, a y T de su supuesto modelo.
En el experimento hemos medido la respuesta al escalon y(t) de la planta (figura
2.29).
Primero calcularemos T . Trazando la tangente a la curva y(t) en el punto de
maxima pendiente y hallando su interseccion con el eje t, obtenemos el valor del
retardo T del modelo G(s) de la planta. Si la planta real siguiera exactamente el
eT s
, la maxima pendiente de y(t) se dara en el punto
modelo supuesto G(s) = As+a
de interseccion de la curva con el eje t. Pero, como no va a ser asi, lo que hemos
hecho es una aproximacion que consiste en sustituir la parte baja de la curva por la
tangente de pendiente maxima.
Veamos ahora como se hallan a y A. Sabemos que el valor de la respuesta y0 (t)
a un escalon unitario de la planta con retardo nulo
G0 (s) =
A
s+a
DE CONTROLADORES
CAPITULO 2. DISENO
66
y (t )
y (t )
A
a
0.632 A
t1
A eT s
,
s+a
a.
Por ser la entrada un escalon unitario, el valor final de la respuesta o valor en estado
estacionario es igual a la la ganancia estatica de la planta.
yss = lim y(t) =
t
A
a
Por ello,
A = a yss
El valor
Rr = A/ = aA
se llama tasa de reaccion reaction rate.
En el caso en que la constante a sea nula, a
un es posible definir los valores de T
(igual que antes) y de Rr que es igual a la pendiente maxima de la respuesta.
El principal inconveniente del metodo 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.
67
M
etodo de lazo cerrado
Permite calcular los parametros del modelo G(s) de la planta haciendo un experimento con el control PID en funcioonamiento, en lazo cerrado. El metodo es el
siguiente. Con el proceso en funcionamiento se ponen los parametros de PID con
los valores Td = 0 (o el valor mnimo posible), Ti = (o el valor maximo 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 perodo de oscilacion Tu .
Aunque este metodo es mas factible que el anterior, tambien puede resultar a
veces problematico: 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 metodos, tambien de lazo cerrado, que se basan en el funcionamiento
normal del controlador para hacer los calculos y, ademas, si se ponen en modo
automatico son capaces de ponerse ellos mismos los valores mas adecuados a las
circustancias. Son los controladores inteligentes.
2.7.1
Zeigler-Nichols
Shinskey
Zeigler-Nichols
(lazo cerrado) (lazo cerrado) (lazo abierto)
1
0.5Ku
0.5Ku
Rr T
0.9
0.45Ku
0.5Ku
Rr T
0.833Ku
0.43Ku
0.33T
1.2
0.6Ku
0.5Ku
Rr T
0.5Ku
0.34Ku
2T
0.125Ku
0.08Ku
0.5T
Cohen-Coon
(lazo abierto)
T
(1 + 3
)
AT
T
(0.9 + 0.082 3
)
AT
3.33+0.3T /
T ( 1+2.2T / )
(1.35 + 0.27 T )
AT
/
T ( 2.5+0.5T
)
1+0.6T /
0.37
T ( 1+0.2T / )
68
DE CONTROLADORES
CAPITULO 2. DISENO
Parte II
Control de procesos de eventos
discretos
69
Captulo 3
Sistemas booleanos
3.1
Dispositivos l
ogicos
Ciertos dispositivos fsicos se construyen de forma que solo tienen dos posibles estados de equilibrio los cuales, en cada caso, reciben nombres tpicos que los identifican.
En la tabla se indican algunos de ellos junto con los nombres de sus dos estados.
Dispositivo
Estados
Mecanico
s / no
Interruptor electrico abierto / cerrado
Valvula
abierta / cerrada
saturacion / corte
Transistor
Estos y otros dispositivos permiten construir otros aparatos mas complejos que
se llaman automatismos. Sus modelos son los sistemas digitales y pueden ser de dos
clases:
Sistemas combinacionales
Sistemas secuenciales
71
72
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 logicos 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 solo vamos a considerar dichos valores, desechando el resto. La
razon para poder hacer esto es que los dispositivos biestables estan construidos de
tal manara que solo admiten dos posiciones de equilibrio estable y que el transito
entre ambos estados se realiza rapidamente.
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, solo
consideramos dos: posicion 0 (balanza vencida hacia la izquierda) y posicion 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 sera rapido.
Otro dispositivo bi-estable bien conocido es un interruptor de alumbrado domestico. La forma y la elasticidad del conductor 2 hacen que este sistema, de accionamiento manual, tenga dos estados estables. En la figura de la izquierda los contactos
del interruptor estan unidos por la presion que el conductor elastico 2 hace sobre
el 1 y el interruptor esta cerrado. En la figura de la derecha, tras girar la llave de
encendido, se separan los contactos y el interruptor esta cerrado.
73
1
Vcc
RC
RC
V1
V2
RB
E1
RB
E2
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,
ab=ba
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 retculo. Si ademas se cumplen las propiedades
5. Distributivas: a (b c) = (a b) (a c),
a (b c) = (a b) (a c)
74
AND 0 1
0 0 1
1 1 1
0 0 0
1 0 1
es un algebra de Boole.
3.2.1
Funciones booleanas
75
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
x1
0
0
0
0
1
1
1
1
f
0
0
0
0
0
0
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
g
0
0
0
0
0
0
1
1 ,
son iguales.
Formas can
onicas
Evidentemente, la equivalencia de funciones booleanas es una relacion de equivalencia. Esta relacion permite dividir el conjunto de funciones booleanas de n variables
en clases de equivalencia. El representante canonico de cada clase de equivalencia
no es u
nico: tenemos la forma canonica suma de min-terms, como por ejemplo
f (a, b, c, d) = abcd + abcd + abc!d
y la forma canonica producto de max-terms, tal como
f (a, b, c, d) = (a + b + cd)(a + b + c + d)(a + bc + d).
Una funcion booleana f (x1 , . . . , xn ) se dice que esta expresada en la forma
canonica suma de min-terms si viene dada en la forma
X
n
Y
(1 ,...,n )Zn
2
j=1
f (x1 , . . . , xn ) =
xj j f (1 , . . . , n )
en donde
xj j
=
xj si j = 0
.
xj si j = 1
Cada uno de los sumandos que componen la forma canonica se llama termino
canonico o, a veces, termino mnimo (min-term) o simplemente termino.
76
3.2.2
Simplificaci
on de funciones booleanas
77
valores de la funcion en una tabla, denominada mapa de Karnaugh, de tal forma que
los terminos canonicos geometricamente adyacentes en la tabla se diferencian solo
en una variable. Esto se consigue facilmente poniendo en las casillas de cabecera de
filas y de columnas los n
umeros binarios de dos cifras
00 01 11 10
que representan a un par de variables y que estan 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
ab @
00 00
00
01 01
00
11 11
00
10 10
00
01 11 10
00
01
01
01
11
01
10
01
00
11
01
11
11
11
10
11
00
10
01
10
11
10
10
10
00 0
01 0
11 1
10 1
@ab
01 11 10
cd @ 00 '
$
00 0 1 1 0
01 0
11 1
10 1
'$
&
&
%
%
b + b0 c
78
M
etodo de Quine-McCluskey
Si el n
umero de variables es elevado, el metodo de Karnaugh resulta complicado
de utilizar (caso de cinco variables) o impracticable. En estos casos es aplicable
el metodo tabular de Quine-McCluskey. Dada una funcion en forma canonica de
suma de min-terms, este metodo consiste en ir combinando unos terminos con otros,
de forma sistematica y en sucesivas iteraciones, hasta encontrar un conjunto de
implicantes primos en cada uno de los cuales se ha eliminado el mayor n
umero posible
de variables. Con este conjunto de implicantes primos, el usuario (posiblemente
ayudado de alg
un algoritmo o programa) ha de seleccionar un subconjunto minimal
que cubra la funcion. Lo introduciremos con un ejemplo.
Ejemplo 3.2.1 Sea la funcion
f (x1 , x2 , x3 , x4 ) = (0, 7 , 9, 12 , 13, 15)
En primer lugar escribimos la tabla
i
min-terms
0
7
9
12
13
15
0
0
1
1
1
1
0
1
0
1
1
1
0
1
0
0
0
1
0
1
1
0
1
1
cuya primera columna es el ndice de los terminos para los que la funcion vale uno
y, marcados con un asterisco ( ), los terminos indiferentes, es decir, aquellos para
los que, fsicamente, no importa que el valor de la funcion sea cero o uno.
Ordenamos la tabla, de menor a mayor, por el n
umero u de unos que contiene
cada termino, con lo que la tabla queda dividida en grupos de terminos con cero
unos, con un uno, con dos unos, con tres unos, etc. Podemos trazar una lnea
separando cada grupo del siguiente. Como no hay terminos con un u
nico uno, ese
grupo queda vaco.
u
i 1-term
0
1
2
3
4
0
9
12
7
13
15
0000
1
1
0
1
1
0
1
1
1
1
0
0
1
0
1
1
0
1
1
1
En esta tabla, cada grupo difiere del siguiente en un solo uno y, por tanto, se puede
combinar cada termino de un grupo con uno del siguiente.
Procedamos a combinar los terminos cada grupo. Como no hay terminos en el
grupo u = 1, el termino 0 0 0 0 no se puede combinar con ninguno. Pasando al
79
1-term 2-term
0
1
2
0000 0000
3
4
9
12
7
13
15
1
1
0
1
1
0
1
1
1
1
0
0
1
0
1
1
0
1
1
1
1
1
1
1
1
1
1
0
1
-
1
1
1
80
81
for (i=0; i<n1-1; i++) {
if (H[i] != 3) {
for (j=i+1; j<n1; j++) {
if (H[j] != 3) { f1 = 0;
// busca elementos a combinar
for (k=0; k<n2; k++) {
if (M[i][k] != M[j][k]) {
f1 = f1+1; f2 = k+1;
if (f1 > 1) goto fuera; } }
if (f1 != 0) { H[i] = 1; H[j] = 1;
// formacion matriz salida
for (k=0; k<n2; k++) {
if (k+1==f2) N[l1][k] = 2;
else N[l1][k] = M[i][k];
}
for (k=0; k<m6; k++) {
D[l1][k] = G[i][k];
D[l1][m6+k] = G[j][k]; }
l1 = l1+1;
}
else H[j] = 3;
}
fuera:
}
}
}
k5 = 0;
for (i=0; i<n1; i++) {
if (H[i]==0) { m5 = m5+1;
for (k=0; k<n2; k++) Z[m5-1][k] = M[i][k];
for (k=0; k<m6; k++) Y[m5-1][G[i][k]] = 1;}
else { if (H[i]=1) k5 = 1; }
}
if (k5 == 1){
m6 = 2*m6; n1 = l1;
for (i=0; i<l1; i++) {
for (j=0; j<m6; j++) G[i][j] = D[i][j];
for (j=0; j<n2; j++) M[i][j] = N[i][j]; }
goto lazo;
}
else{
printf("Matriz de implicantes primos\n");
for (i=0; i<m5; i++) {
for (j=0; j<n2; j++) printf("%d ",Z[i][j]);
printf("\n"); }
printf("Matriz de cubrimiento\n");
for (i=0; i<m5; i++) {
for (j=0; j<n9; j++) printf("%d ",Y[i][j]);
printf("\n"); }
}
return(0);
//
// Programa quine
//
// Para simplificar una funci
on l
ogica:
// 1) poner en archivo la funci
on, p.ej.,
//
// 6 4 // significa n.terms=6 n.vars=4
// 0 1 1 1
// lista de minterms
// 0 1 1 0
//
.
// 1 1 1 1
//
.
// 1 0 1 1
//
.
// 0 0 0 0
//
.
// 1 0 0 1
//
.
//
// 2) Compilar el programa:
//
cc -o quine quine.c (bajo Linux)
// 3) Ejecutarlo: ./quine < archivo
//
#include <stdlib.h>
#define nv 10
#define nt 40
#define h2 nt/2
#define ng nt/3
#define ny nt-ng
int main( int argc, char **argv )
{
int M[nt][nv] = {0};
int N[nt][nv] = {0};
int H[nt] = {0};
int G[nt][ng] = {0};
int D[nt][ng] = {0};
int Z[h2][nv] = {0};
int Y[h2][ny] = {0};
int i,j,k,k5,l1,m5,m6,n1,n2,n9,f1,f2;
int (*pm)[nv];
pm = M;
// lectura de los datos de entrada
scanf("%d %d", &n1, &n2);
n9 = n1;
for (i=0; i<n1; i++){
for (j=0; j<n2; j++){
scanf("%d", &pm[i][j]);
}
scanf("\n");
G[i][0]=i;
}
m5 = 0; m6 = 1;
lazo:
l1 = 0;
for (i=0; i<n1; i++) H[i] = 0;
3.3
Sistemas combinacionales
i = 1 . . . q.
82
dominio de las funciones es
y1 (t)-
u2 (t)-
y2 (t)-
..
.
S.C.
up (t)-
t0 , T R.
..
.
yq (t)-
Funci
on AND
Esta funcion realiza la operacion de producto ordinario en Z2 , o conjuncion logica,
entre varias variables. La tabla de verdad z = (x and y) para dos variables y su
83
y
0
1
0
1
z
0
0
0
1
xy-
&
z-
x
y
Funci
on OR
Esta funcion realiza la operacion de suma ordinaria en Z2 , o disyuncion logica, entre
varias variables. La tabla de verdad z = (x or y) para dos variables y su smbolos,
DIN e ISO, son
x
0
0
1
1
y
0
1
0
1
z
0
1
1
1
xy-
z-
x
y
Funci
on NAND
Esta funcion es el complemento en Z2 de la funcion and entre varias variables. La
tabla de verdad z = (x nand y) para dos variables y su smbolos, DIN e ISO, son
x
0
0
1
1
y
0
1
0
1
z
1
1
1
0
xy-
&
d z-
x
y
y
0
1
0
1
z
1
0
0
0
xy-
z
1 d -
x
y
84
Funci
on XOR
La funcion xor, o disyuncion 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 smbolos, DIN e ISO, son
x
0
0
1
1
3.4
y
0
1
0
1
z
1
0
0
1
xy-
=1
x
y
d z-
Sistemas secuenciales
u1 (t)u2 (t)..
.
up (t)-
y1 (t)x1 (t)
x2 (t)
..
.
xn (t)
y2 (t)..
.
yq (t)-
Ahora cada una de las salidas es una funcion booleana de las entradas y de
los estados, para todo t I R, en donde I es un intervalo o una sucesion de
valores de R. Sin embargo la expresion general de esta funcion 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 (ecuacion diferencial) estudiado
en la teora de control. Sin embargo se han ido desarrollado otros modelos, primero
las M
aquinas de estados, mas 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. MAQUINAS
DE ESTADOS
3.5
85
M
aquinas de estados
X := Zn2 ,
Y := Zp2 ,
(3.1)
3.5.1
Aut
omata de Mealy
3.5.2
Aut
omata de Moore
86
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 automata (de Mealy o de Moore) pueden
darse en forma tabular. La funcion f tabulada se llama tabla de transici
on mientras
que la g se llama tabla de salida.
Para el automata de Mealy, las tablas son de la forma
x1
x2
..
.
u1
x1,1
x2,1
..
.
u2
x1,2
x2,2
..
.
...
...
...
u 2q
x1,2q
x2,2q
..
.
x1
x2
..
.
u1
y1,1
y2,1
..
.
u2
y1,2
y2,2
..
.
...
...
...
u 2q
y1,2q
y2,2q
..
.
y para el de Moore,
u 2q
x1,2q
x2,2q
..
.
x1
x2
..
.
y1
y2
x 2n
y 2n
x1
x2
..
.
u1
x1,1
x2,1
..
.
u2
x1,2
x2,2
..
.
...
...
...
Con estas tablas queda completamente descrita una maquina de estados. Observese
que, en ambos casos, el tama
no (maximo) de la tabla de transicion es de (2n 2q )
casillas.
3.5. MAQUINAS
DE ESTADOS
3.5.4
87
Diagramas de estado
u
x@@
A = 00
B = 01
C = 10
11
00
01
00
01
10
01
u
x@@
A = 00
B = 01
C = 10
11
0 0
0 0
0 1
1/0
Tabla de transicion
Tabla de salida
@GA
FAB
ECD
Y33
33
33
1/0
330/0
33
33
3
1/1
s
@GA
FB
ECD
FCB
ECD
3@GA
4 B
0/0
u
x@@
A = 00
B = 01
C = 10
D = 11
00
10
00
10
01
01
11
01
x y
A = 00
B = 01
C = 10
D = 11
0
0
0
1
1
Tabla de transicion
Tabla de salida
@GA/
FB
A
E0CD
X11
11
11
1
110
11
11
0
@GB/
FB
A
ECD
@G/ C/
A
FB
E0CDs
4 0e
FB
A
ECD
3@GD/1
Observese que, en cualquiera de los dos casos, a partir de las tablas de transicion
y de salida se obtiene el diagrama de estados, y viceversa.
3.5.5
Dispositivos biestables
Los biestables son los sistemas secuenciales mas simples. Tienen una o dos entradas
u1 , u2 , una u
nica variable de estado, denotada por Q, y una salida y1 = Q. Los
biestables electronicos suelen incorporar la salida adicional y2 = Q.
88
_
Q
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 transicion es:
SR
Q@
@ 00 01 11 10
0
1
0
1
0
1
1
0
Clk
Captulo 4
Sistemas reactivos
Los sistemas reactivos son sistemas de control que estan comandados por eventos:
sistemas que estan permanentemente reaccionando a estmulos externos e internos.
Los telefonos, automoviles, redes de comunicacion, sistemas operativos de ordenadores, sistemas de aviacion, y las interfaces hombre-maquina 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 simulacion
computerizada del sistema.
Los primeros modelos (aun hoy utilizados) de los sistemas de eventos discretos
fueron las maquinas de estados y sus correspondientes diagramas estado-transicion
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. Ademas los estados estan agrupados de una forma no estratificada. Por
todo esto, el diagrama de estado de sistema de mediana complejidad resulta desestructurado, de gran dimension y de difcil manejo.
Posteriormente se han desarrollado modelos, entre los cabe citar por su importancia los siguientes:
Redes de Petri
Grafcet
Cartas de estado (Statecharts)
Las redes de Petri, junto con algunos otros modelos algebraicos, son los modelos
matematicos mas formales.
El modelo Grafcet, sencillo de aprender y de utilizar, se utiliza mucho actualmente y ha sido adoptado por varios fabricantes de automatas como modelo basico.
Las cartas de estado son probablemente el modelo mas completo de los que se
conocen actualmente.
89
90
4.1
4.2
Grafcet
El Grafcet (Graphe de Comands Etape/Transition) es un sistema grafico de modelado de automatismos secuenciales. Fue introducido en Francia por P. Girauld, en
su tesis doctoral. La norma IEC-848 da una completa descripcion de Grafcet y ha
sido adoptada por diversos fabricantes para crear interfaces graficas de usuario que
facilitan la programacion de sus de automatas programables.
El Grafcet es aplicable, por principio, a un sistema automatizado de produccion
compuesto de dos partes: una parte operativa (PO) y una parte de comando (PC).
rdenes
P.C.
P.O.
eventos
La parte operativa esta formada por los diversos dispositivos que interact
uan
sobre el producto: preactuadores, actuadores y captadores. Los preaccionadores
act
uan como reles de potencia entre el mando y los actuadores que se encargan
de transformar el producto. Los captadores recogen informaciones como posicion
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
nado.
4.2. GRAFCET
91
La Parte de Comando (PC) esta integrada por los equipos de control: computadores, procesadores o automatas, junto con los programas y todos los datos
precisos.
El Grafcet se compone de los siguientes elementos basicos:
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 dinamico 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 rectangulo en que se escribe un
n
umero n que indica su n
umero de orden. En cada momento, el sistema tiene una o
varias etapas activas (las que estan actualmente en funcionamiento) que se marcan
con un peque
no crculo negro.
n
92
0
Accin A
R01
Accin B
R12
Accin C
Transiciones
Las transiciones se representan con un peque
no segmento horizontal que corta la
lnea de enlace entre dos etapas. Son etapas de entrada a una transicion todas las
etapas que conducen a una transicion. Son etapas de salida a una transicion las
etapas que salen de una transicion.
La condicion o condiciones que se deben cumplir para poder pasar una transicion
reciben el nombre de receptividades. En una transicion podemos tener:
Una condicion simple
Una funcion booleana
La se
nal de un temporizador o contador
La activacion de otra etapa del Grafcet
Cada transicion se une con la etapa anterior y con la siguiente mediante unas
rectas horizontales y verticales llamadas lneas de enlace. Las lneas 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 concurrente. Esto se hace disponiendo varias secuencias verticales, en paralelo, de
etapas y transiciones. La sincronizacion 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 estan sincronizados
4.2. GRAFCET
93
n+1
n+2
4.2.1
Reglas de funcionamiento
El funcionamiento del modelo Grafcet viene definido por cinco reglas o condiciones
basicas.
1. Regla de activacion inicial: en el instante inicial solo se activan las etapas
iniciales y esta activacion es incondicional.
2. Condicion de validacion: para que una etapa pueda activarse es necesario que
si le precede una u
nica etapa entonces esta este activada y si le preceden varias
etapas en paralelo entonces todas ellas esten activadas.
3. Condicion de franqueo de una transicion: una transicion es franqueada si,
y solo si, la receptividad asociada es verdadera. Franquear una transicion
significa: primero desactivar la etapa o etapas precedentes y a continuacion
activar la etapa o etapas siguientes.
4. Regla de franqueo simultaneo: todas las transiciones franqueadas en un determinado instante son franqueadas simultaneamente.
5. Regla de conflicto de activacion: si una etapa ha de ser desactivada y activada
simultaneamente, debido al franqueo simultaneo de las transiciones siguiente
y anterior, entonces permanece activa.
94
4.2.2
Estructuras b
asicas
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
Rn
n+1
Rn+1
n+2
Divergencia OR
Representa la posibilidad de bifurcacion entre secuencias simples. Estando activa la etapa n, final de una secuencia simple, y seg
un
cual sea la receptividad Ra , Rb , . . . que se valide en primer lugar, el sistema pasara a una
de las etapas n + 1, n + 2, . . ., de inicio de
respectivas secuencias simples.
Ra
Rb
n+1
n+2
m2
m1
Convergencia OR
Es la estructura recproca de la anterior. Indica que un sistema con varias posibles secuencias simples puede pasar desde una de
las etapas finales m 1, m 2, . . ., en paralelo, a la etapa siguiente n que es el inicio de
otra secuencia simple. Dicho paso se dara en
el instante en que una de las receptividades
Rc , Rd , . . . que anteceden a la etapa n se haga
valida.
Divergencia AND
Rc
Rd
4.2. GRAFCET
95
n+1
n+2
m2
m1
Convergencia AND
Es la estructura recproca de la anterior. Representa el paso simultaneo desde varias secuencias concurrentes, que terminan en las
etapas m 1, m 2, . . ., a una secuencia
u
nica que empieza en la etapa m. Para que
en un instante dado se produzca el paso, es
necesario que en dicho instante sean validas
todas las receptividades Rc , Rc , . . .
Rc
Rd
Saltos
n
En Grafcet son posibles los saltos condicionales, con la condicion expresada en la receptividad
de una transicion, y los incondicionales. Los saltos pueden ser
hacia adelante o hacia atras, siendo estos u
ltimos facilmente identificables por la punta de flecha
indicada de la linea de enlace hacia atras. En la figura se indican
algunas posibilidades.
4.2.3
n+1
n+1
b
n+2
b
B
n+2
a
n+1
n+2
b
n+2
c
n+2
d
n+2
c
n+2
d
n+2
d
n+2
Posibilidades avanzadas
Grafcet no solo vale para hacer modelos de sistemas de eventos discretos con estructura simple sino que tambien ofrece la posibilidad de modelar sistemas mas
complejos. Para ello cuenta con algunas caractersticas avanzadas, tales como el
paralelismo, la sincronizacion y la jerarqua.
96
Paralelismo
4.2.4
Jerarqua
Macro-etapas La posibilidad de que un proceso pueda albergar a otros como subprocesos se denomina jerarqua.
4.2.5
Comunicaci
on
4.3
Cartas de estado
97
Las cartas de estado fueron introducidas por David Harel [5] en 1987 y constituyen una generalizacion de las maquinas de finitos estados. Se han hecho varias
implementaciones sustancialmente iguales pero que difieren algo en la semantica (la
definicion de Harel dejaba bastante libertad) siendo las mas conocidas Statemate y
Stateflow, esta u
ltima integrada en Matlab. Debido a la gran difusion que tiene este
programa en la Universidad, continuaremos la descripcion de las cartas de estado
con la semantica de Stateflow.
4.3.1
Stateflow
4.4
Creaci
on de un modelo con StateflowSimulink
Tras arrancar el programa Matlab, creamos un modelo nuevo (new-model ) de Simulink y colocamos en el mismo, con el raton, el bloque Chart de Stateflow.
Con el editor grafico se pueden crear cartas Stateflow, de modo interactivo,
simplemente haciendo clic en cada elemento y arrastrandolo a la ventana de dibujo.
Una vez colocados varios estados, podemos crear transiciones haciendo clic en un
estado y arrastrando el raton hasta otro estado. Se etiquetan los estados y las
transiciones indicando las acciones que van a ocurrir durante la ejecucion y bajo que
condiciones se haran las transiciones. Finalmente se a
nade 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
jerarqua al dise
no. Se permite crear transiciones entre objetos que residen en diferentes sub-cartas al mismo nivel o a diferentes niveles en la carta superior. Las
98
sub-cartas permiten reducir una carta complicada a un conjunto de diagramas organizados jerarquicamente. Con ello se consigue que la carta sea mas facil de entender
y de mantener sin cambiar para nada su semantica.
Los pasos a seguir para una aplicacion completa son:
Crear la carta Stateflow
Utilizar el Explorer de Stateflow
Definir un interface de bloques de Stateflow
Ejecutar la simulacion
Generar el codigo
La generacion de codigo depende de la maquina en donde se vaya a implementar
la aplicacion y no se hace hasta la u
ltima fase del dise
no. El codigo generado por
defecto es ANSI C pero existen programas que convierten el modelo de Stateflow
en codigo de otros lenguajes. Entre ellos cabe citar el programa sf2vdh, que es
un traductor de Stateflow a VHLD, y el programa sf2plc que genera codigo para
programar algunos automatas programables.
4.4.1
Una carta de estado (statechart) es un grafico formado por elementos graficos sobre
los que van escritos otros elementos de texto. Los elementos graficos 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 graficos y
de texto. Cada carta representa una maquina 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 rectangulo con las esquinas redondeadas y representa
un modo de funcionamiento del sistema. Aunque tienen el mismo nombre, no debemos 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 mas 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 rectangulo 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 llevara a cabo el sistema
cuando este en ese estado. La sintaxis de Stateflow permite especificar el instante
en que se iniciara la accion y la duracion de esta:
99
e
S2
100
e1
e2
e3
H
C1
C2
101
Entrada de Simulink
Salida de Simulink
Local
Constante
Temporal
Workspace
Los datos declarados como entrada o salida de Simulink generan automaticamente
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 solo validos mientras el estado
padre se esta ejecutando y son reinicializados cada vez que este se activa. El tipo
workspace es una construccion especial que permite utilizar el entorno de trabajo
(workspace) de Matlab para compartir datos a traves de toda la simulacion. 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 automaticamente un u
nico puerto de entradasalida 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 posicion del
evento en el vector. La forma de producir un evento en Simulink para que entre en
el bloque Chart es a traves de cambio brusco (flanco) de alguna se
nal. Al declarar
el evento en Stateflow, se puede elegir entre:
Flanco de subida
Flanco de bajada
Flanco indiferente
102
Parte III
Automatizaci
on Local
103
Captulo 5
Automatismos
105
106
CAPITULO 5. AUTOMATISMOS
Captulo 6
Automatismos el
ectricos
6.1
El rel
e
El rele es el dispositivo fundamental para la realizacion de automatismos electricos. 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
electroiman. Al aplicar tension entre los terminales A1 y A2, el electroiman atrae
a la armadura ferrea hacia el n
ucleo del electoiman, 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 rele, accionado por el muelle, vuelve a su estado de
reposo.
1
NC
NA
A1
A2
El esquema seg
un la norma CEI es
Se fabrican reles de muchos tipos y tama
nos seg
un sea su aplicacion. Pueden
tener varios contactos NC y NA, accionados por la misma bobina, para poder operar
sobre varios circuitos a la vez. La alimentacion suele ser de 12V o de 24V en los
reles de automatismos.
107
CAPITULO 6. AUTOMATISMOS ELECTRICOS
108
A1
12
14
A2
11
6.2
6.2.1
Funciones l
ogicas con rel
es
Funci
on l
ogica identidad
+
6.2.2
Funci
on l
ogica negaci
on
+
6.2.3
Funci
on l
ogica AND
6.2.4
Funci
on l
ogica NAND
109
110
Captulo 7
Aut
omatas programables
111
112
CAPITULO 7. AUTOMATAS
PROGRAMABLES
Bibliografa
[1] M. Silva Las Redes de Petri: en la Autom
atica y la Inform
atica. Editorial AC
[2] Charles L. Phillips
Feedback Control Systems
Prencice Hall Inc., 1988
[3] K.Lockyer La produccion industrial, su administraci
on. Representaciones y
Servicios de Ingeniera S.A., Mexico, 1988.
[4] M.P. Groover Automation, Production systems and Computer Integrated Manufacturing. 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. Object Modeling Group, Inc., Version 1.3, June 1999.
[7] Hans Vangheluwe Modeling and Simulation Concepts. McGill, CA, CS 522 Fall
Term 2001.
113