U U U U

Anuncio
DISEÑO Y SIMULACIÓN DE UN SISTEMA INDUSTRIAL
CON REDES DE PETRI COLOREADAS JERARQUIZADAS
Mario Distefano, Santiago Perez y Antonio Pasero
Facultad Regional Mendoza, Universidad Tecnológica Nacional
RESUMEN: Para resolver problemas complejos
que dan lugar a redes muy grandes, se puede
utilizar Redes de Petri Coloreadas Jerárquicas,
que permite subdividir dicha red en redes más
pequeñas que facilitan la construcción y comprensión del sistema. Se analiza las capacidades
de las redes jerárquicas desarrollando una aplicación en una celda de fabricación flexible robotizada. Se utiliza el simulador CPNTool que
permite manejar estructuras jerárquicas y emular el sistema en forma dinámica.
1. INTRODUCCION A CPN
1.1 Definición Redes de Petri Coloreadas
Jerárquicas
Los problemas complejos que dan lugar
a redes muy grandes, se pueden subdividir en subredes o módulos mas simples
que faciliten la construcción, la comprensión, la búsqueda de errores y la
puesta a punto del sistema. La técnica
utilizada es similar a la programación en
lenguajes de alto nivel estructurados en
programa principal y subprogramas
(subrutinas). La herramienta de simulación CPNTools [1][2] soporta dos formas
de definir subredes: Sustitución de Transiciones y Fusión de Lugares. Se trata de
una traslación entre redes diferentes, la
jerárquica y la no jerárquica. La sustitución de transiciones consiste de una
transición especial en el diagrama jerárquico que permite acceder a un subdiagrama (submodelo). Las marcas de entrada de dicha transición son transferidas al subdiagrama y este entrega los
resultados o marcas de salida del sub-
modelo al jerárquico. La fusión de lugares consiste en utilizar lugares idénticos
en diferentes diagramas de tal manera
que la adición o remoción de marcas en
un lugar se realiza idénticamente en todos los otros. Ese lugar es compartido
por todos los subdiagramas.
1.2 Definición Formal
Una CPN jerárquica [Jensen] [3],[4]se
define formalmente como una tupla de
la forma
( ∑ S, PS, TS, AS, NS, CS, GS, ES, IS), donde s es el conjunto de páginas donde para cada página s ∈ S es del tipo nojerárquica
∑ = U∑ s
s∈S
T = U Ts
s∈S
P = U Ps
s∈S
A = U As
s∈S
La definición formal de las CPN jerárquicas es una tupla:
HCPN= (S, SN, SA, PN, PT, PA, FS, FT,
PP), donde
S es un número finito de páginas, tal
que: cada página s ∈ S es una CPN
no-jerárquica ( ∑ S, PS, TS, AS, NS, CS,
GS, ES, IS)
Además el número de elementos de
red son pares disjuntos.
SN ⊆ T Es el número de nodos de
sustitución
SA es una función de asignación de
página
PN ⊆ P Es el número de puertos
PT es la función de tipo de puerto.
Definido en PN (in, out, i/o)
PA es la función de asignación de
puertos, definido en SN Los nodos
sockets de vinculación están relacionados con los nodos puertos.
Los nodos relacionados son del mismo set de color y equivalentes a las
expresiones de inicialización.
FS ⊆ Ps Es un conjunto finito de
sets de fusión tal que: Miembros de
un set de fusión tienen idéntico color
y equivalentes expresiones de inicialización.
FT es una función tipo fusión. Se
define del set de fusión en (global,
pagina, instancia) tal que: Pagina y
fusión de instancia corresponde a
una misma página.
PP es un multiset de páginas principales.
Estas relaciones matemáticas y restricciones están consideradas en gran medida en el simulador de CPN Tools por lo
cual con cierta consideración se puede
proceder a realizar aplicaciones, sin necesidad de ahondar en el desarrollo matemático. En la práctica, con el simulador, resulta sencillo aplicar los conceptos abstractos de las relaciones matemáticas no expuestas en este trabajo.
2. APLICACIONES DE CPN JERARQUICAS
2.1 Celda Flexible de Maquinado
Está demostrada la eficiencia de las Redes de Petri Ordinarias para simular
procesos industriales de fabricación [5].
Para procesos complejos se puede recurrir a las CPN.
El sistema a analizar se compone de cuatro máquinas que realizan la misma
operación, cada una dispone de un palet
giratorio con dos posiciones, interna (A)
del lado de la máquina y externa (B) del
lado del robot. El ingreso de materia
prima y la salida de piezas terminadas se
realiza mediante una cinta giratoria.
El robot tiene un movimiento giratorio
para situarse frente a cada máquina y
un movimiento axial para la carga y
descarga de piezas en el respectivo palet.
Atiende a las máquinas en forma secuencial: máquina 1, máquina 2, máquina 3 y máquina 4 y se repite la secuencia
indefinidamente. En esta aplicación no
se incluyen los automatismos de la cinta
giratoria ni de la entrada y salida de
piezas.
El sistema requiere de la asistencia de
un operario para realizar tareas de
mantenimiento o reparaciones en caso
de averías. Para el proceso de mantenimiento el sistema dispone automáticamente de una parada cada cierta cantidad de piezas maquinadas, cuya duración es de un ciclo del robot. En caso de
avería la máquina se detiene automáticamente, el operario prolonga manualmente la parada hasta completar la reparación. Un esquema de la celda se indica en la Fig. 1.
sando a herramienta 2. Para las otras
máquinas corresponde el mismo razonamiento. La transición Retorno dispara
el comienzo de una nueva secuencia.
2.3 Submodelo Herramienta 1
Figura: 1 Celda Flexible de Maquinado
El problema a solucionar consiste en desarrollar el automatismo de la celda y su
correspondiente simulación dinámica. El
modelo se realiza bajo el concepto de una
estructura jerárquica.
2.2 Diagrama Jerárquico del Sistema
El diagrama jerárquico del sistema (Figura: 2) contiene lugares y transiciones,
donde estas últimas representan submodelos independientes que se vinculan
bajo el concepto de sustitución de transiciones.
En este diagrama existen cuatro máquinas representadas por maquina 1, 2, 3 y
4. Las transiciones herramienta 1, 2, 3 y
4 tienen asociados cuatro submodelos.
Los estados A, B,…J, indican la secuencia de operación de las máquinas.
El submodelo herramienta determina si
existe tarea de mantenimiento o reparación por avería de la correspondiente
máquina.
El submodelo máquina representa la
rotación del palet, el maquinado de la
pieza y la carga y descarga del robot.
El diagrama inicia la secuencia en el
estado A con una marca que indica el nº
de máquina 1. La marca habilita el
submodelo herramienta 1. En caso que
la marca entre al estado B, indica que la
máquina 1 está en línea. Caso contrario
la marca se incrementa en 1 para pasar
al estado C, con lo cual indica que la
maquina 1 está fuera de servicio, ingre-
El submodelo (Figura:3) comienza con el
estado A (In) y finaliza en los estados B
(Out) o C (Out), según sea operación
normal o en su defecto se trate de tarea
de mantenimiento o reparación. En la
transición Acceso la marca deriva a los
estados A1 y B1. B1 y C1 son contadores
que indican la cantidad de ciclos que
trabajará la máquina que se ha fijado en
seis, para suspender la máquina automáticamente para tareas de mantenimiento; cuando C1 no tenga marca se
bloquea la salida normal B. Cuando B1
alcance seis marcas pasa a cero marcas
y se habilitará la máquina siguiente a
través de la salida C a través de la transición Mantenimiento; el tiempo de duración de esta parada es el tiempo que
dura un ciclo completo de secuencia. La
transición Mantenimiento habilita al
estado Operario con una marca, que en
conjunto con la próxima marca que llegue a A1 permite inicializar el contador
C1 con 5 marcas. Ver Figura:3 y 5.
En cuanto a la suspensión por avería se
trata en el estado Oper 1 que se encuentra en el submodelo Máquina 1 que se
fusiona a través del estado Oper 1 de
Herramienta 1 (Fusión 1); una marca en
este estado con A1 y B1 marcados habilita la transición Parar1 enviando una
marca a C para pasar a Herramienta 2.
Si la reparación de maquina 1 dura más
de un ciclo se puede detener temporalmente por una operación manual a cargo del operario a través Oper Manual
enviando una marca a C. Todas los submodelos Herramienta 1,2,3 y 4 funcionan de la misma manera.
2.4 Submodelo Máquina 1
El submodelo (Figura:4) comienza con el
estado B (In) y finaliza en el estado C
(Out). El diagrama se compone de dos
partes: una corresponde al palet del lado
de la máquina (parte izquierda del diagrama), donde contempla el maquinado
de la pieza y la detección de problemas
de funcionamiento. La otra parte (parte
derecha del diagrama) corresponde a la
operación del robot de descarga y carga
de piezas. Ambas partes están vinculadas a la transición Palet 1, que indica la
rotación del palet. Ver Figura: 4 y 6.
Cuando hay marca en B y también en
A1 y B1 se realiza la rotación del palet,
produciéndose el cambio de marcas, la
marca de A1 pasa a A3 y la de B1 pasa a
B2. Del estado B2 pasa al estado A2 a
través de la operación de Maquinado 1
cambiando la marca de (1,B) a (1,A),
donde hay un tiempo de maquinación
representado por @+20. La marca retorna a A1 a través de la transición: Hay
que parar Maquina? Por otro lado con
el objeto de simular un desperfecto de la
máquina se ha incluido en el arco la función CAMBIAR () que permite en forma
aleatoria habilitar C1, que a través de
Parar Máquina pasa al estado de Fusión
1 (estado Oper 1) que tiene su réplica en
el submodelo Herramienta 1; donde en
el próximo ciclo la máquina permanecerá parada el tiempo necesario para su
reparación.
Cuando hay marca en A3 la marca del
robot debe estar en R2 para poder habilitar transición “abrir bridas descarga y
carga de piezas cerrar bridas”, donde se
han sintetizado cuatro operaciones distintas con el objeto de simplificar el diagrama. En la transición Robot no se ha
incluido un retardo. Una vez terminada
esa operación retorna la marca (1,B) a
B1 y además retorna al diagrama principal a través de C una marca “i” indicando numéricamente la próxima maquina a atender por el robot.
La ausencia de marca en A1 puede interpretarse que la máquina no está disponible y consecuentemente el robot
estaría detenido innecesariamente hasta
que la maquina se encuentre disponible;
esto puede salvarse sacando la marca de
B directamente a través de C sin rotar el
palet, cosa que en el diagrama no está
contemplado, debido a que hemos elegido la estrategia de atención secuencial.
Esto se puede resolver con una estrategia de tipo FIFO.
Se han incluido los submodelos para las
máquinas 1 y 2 de la celda, siendo similar para las máquinas 3 y 4.
Esta aplicación se basa en el trabajo realizado en el documento 31128-1.pdf [6].
DIAGRAMA JERARQUICO DEL SISTEMA
D
I
maquina 2
herramienta 2
E
herramienta 3
I
maquina 2
herramienta 2
herramienta 3
C
F
I
I
1`1
1 1`1
A
maquina 1
maquina 3
I
maquina 1
maquina 3
Retorno
Retorno
G
B
herramienta 1
I
maquina 4
J
I
herramienta
1
maquina 4
I
H
herramienta 4
I
herramienta 4
Declaraciones
colset
colset
colset
colset
colset
colset
colset
I =int with 1..4;
N = int with 1..4;
P = with A|B;
PALET =product N*P timed;
OPERARIO =with O;
robo =with R;
ROBOT=product robo*N;
var n : N;
var i : I;
var p : P;
var oper : OPERARIO;
var rob :ROBOT;
colset CAMBIO = int with 1..9;
fun CAMBIAR ()=CAMBIO. ran ();
Figura: 2 Diagrama Jerárquico del Sistema
Herramienta 1
A
1
In
I
1
I
1
B1
1`1
I
1
Acceso
A1
1
6`1
oper
Mantenimiento
Oper
Manual
oper
Oper 1
Fusion 1
OPERARIO
1
1
Normal
oper
OPERARIO
2
1
Detencion
manual
2
C
2
Out
1
5`1
5
parar 1
C1
I
I
Mantener maquina 1
en reparacion
B
5`1
Operario
5`1
1
oper
Reinicio
OPERARIO
Figura:3 Herramienta 1
Out
I
maquina 1
(1,A)
(1,B)
1 1`(1,A)@0
A1
(1,A)
B1
(1,B)
PALET
PALET
4`B
OPERARIO
Parar
Maquina
(1,A)
Piezas 4 4`B
oper 1
oper
Fusion 1
P
ROBOT
(1,A)
(1,B)
C
p p
R2
C1
1 1`(1,B)@0
Out
PALET
if CAMBIAR () > 8
1
then 1`(1,A)
else empty
Palet 1
rob
(R,1)
B
(1,A)
In
PALET
(1,A)
rob
R1
I
Pieza
final
ROBOT
A3
(1,A)
abrir bridas
descarga y carga
de piezas
cerrar bridas
Robot
Hay que parar
Maquina ?
2
rob
rob
I
1 1`(R,1)
(1,B)
PALET
(1,A)
@+20
(1,A)
Maquinado 1
(1,B)
B2
A2
PALET
PALET
Figura: 4 Máquina 1
herramienta 2
C
In
I
2
2
B2
2
Acceso
A2
I
7`2
2
oper 2
Fusion 2
Mantenimiento
Oper
Manual
OPERARIO
oper oper
Detencion
manual
3
oper
2
3
3
E
Out
OPERARIO
C2
2
6`2
6
6`2
Out
reinicio
2
D
Parar 2
I
oper
normal
I
Mantener maquina 2
en reparacion
operario
2
I
2
6`2
OPERARIO
Figura: 5 Herramienta 2
I
maquina 2
(2,A)
A1
(2,B)
1 1`(2,A)@0
B1
(2,A)
PALET
1 1`(2,B)@0
PALET
4`B
piezas4 4`B
Parar
Maquina 2
oper 2
oper
Fusion 2
(2,A)
ROBOT
(2,B)
OPERARIO
R2
(2,A)
rob
C1
2
PALET
palet 2
In
R1
(2,A)
A3
3
rob
abrir bridas
descarga y carga
de piezas
cerrar bridas
(R,2)
I
I
(2,B)
rob
D
Hay que parar
Maquina 2?
Out
p p
Robot
if CAMBIAR () > 8
then 1`(2,A)
else empty
E
P
(2,A)
rob
pieza
final
1 1`(R,2)
ROBOT
PALET
PALET
(2,B)
(2,A)
(2,A)
(2,A)
@+20
Maquinado 2
(2,B)
B2
A2
PALET
PALET
Figura: 6 Máquina 2
3 CONCLUSIONES
4 BIBLIOGRAFIA
Las Redes de Petri Coloreadas constituyen un importante soporte para el estudio, diseño y simulación dinámica de los
procesos industriales.
Esta herramienta facilita la evaluación
cuantitativa del comportamiento, rendimiento y costos de cada maquina. Ya
sea incorporando subredes de evaluación o a través de los diagramas de estado.
La evolución del sistema a través de disparos de las transiciones se puede realizar mediante archivos de parámetros
que se van modificando hasta lograr la
optimización del proceso.
Se comprueba una gran facilidad para
subdividir redes complejas utilizando los
recursos de fusión de lugares y sustitución de transiciones.
Con ligeras modificaciones a este trabajo se pueden incorporar subredes con
diferentes estrategias del robot para
atender las colas de espera de las máquinas.
En la aplicación desarrollada se puede
reducir los cuatro diagramas de máquinas y herramientas a uno solo diagrama
de cada clase modificando el diagrama
jerárquico. No se hizo a los fines de comprobar el estado de cada máquina en un
instante determinado a los fines de un
análisis detallado.
La herramienta CPNTools presenta una
gran flexibilidad para modelar sistemas
industriales y además permitir simular
los modelos en distintas situaciones.
[1] CPN/Tools: A Post-WIMP Interface for
Editing and Simulating Coloured Petri Nets
Michel Beaudouin-Lafon, Wendy E. Mackay,
Peter Andersen, Paul Janecek, Mads Jensen,
Michael Lassen, Kasper Lund, Kjeld Mortensen,
Stephanie Munck, Anne Ratzer, Katrine Ravn,
Søren Christensen and Kurt Jensen
Department of Computer Science University of Aarhus
IT-Parken, Aabogade 34
8200 Aarhus N Denmark E-mail: [email protected]
[2] CPNTools
http://www.daimi.au.dk/CPNTools/
[3] K. Jensen, Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use, Vol.
1:Basic Concepts, Ed: Springer-Verlag, 1992.
[4] K. Jensen, Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use. Vol. 2:
Analysis Methods,
Ed. Springer-Verlag,1994.
[5] Proth J. Marie Les Reseaux de Petri pour la
Conception et la Gestion de Production. Paris,
Masson, 1995.
[6] Documento Modelado y Análisis de un Sistema de Fabricación mediante Redes de Petri Coloreadas.
http:// bibliotecnica.upc.es/PFC/arxius/migrats/
31128-1.pdf
Descargar