vida por [Ramadge e Wonham 1987]. De acordo com [Ramadge e Wonham 1987], uma planta possui todo comportamento poss´ıvel do sistema a ser controlado, incluindo algu- mas situa¸c˜oes indesejadas, tais como deadlocks. Uma planta tamb´em ´e vista como um sistema que gera eventos e que possui entradas de controle, por meio das quais alguns eventos podem ser desabilitados em determinados estados. O supervisor ´e um agente externo com habilidade de observar os eventos gerados pela planta e influenciar no seu comportamento por meio da entrada de controle.
Para este trabalho ser´a utilizada a s´ıntese do lugar de controle supervis´orio por meio do m´etodo dos invariantes de lugar [Moody et al. 1994] [Iordache e Antsaklis 2006]. Os invariantes de lugar correspondem aos conjuntos de lugares aos quais a soma de fichas permanece constante para todas as marca¸c˜oes alcan¸c´aveis pela rede. Um invariante de lugar ´e definido como qualquer vetor inteiro x ∈ Nn que satisfa¸ca:
xTM = xTM0. (2.8)
A equa¸c˜ao 2.8 indica que a soma das fichas nos lugares do invariante permanece cons- tante para qualquer marca¸c˜ao alcan¸c´avel pela rede. Os invariantes de lugar podem ser obtidos mediante a obten¸c˜ao de solu¸c˜oes inteiras para [Murata 1989]:
2.5. Controle Supervis´orio de situa¸c˜oes de deadlock 55
Figura 2.10: Rela¸c˜ao de lugar-sif˜ao m´ınimo com rela¸c˜ao: (a)p2, (b)p3, (c)p4 e (d)p5
em que I ´e a matriz de incidˆencia da rede. Dada uma rede de Petri com n lugares e m transi¸c˜oes, o objetivo do controle ´e for¸car os processos a obedecerem a restri¸c˜oes da seguinte forma:
l1M(pi) + l2M(pj) ≤ b1 (2.10)
l1, l2 e b1 s˜ao constantes que pertencem ao conjunto de inteiros. A inequa¸c˜ao 2.10 pode
ser transformada numa igualdade por meio da adi¸c˜ao de uma vari´avel de folga:
l1M(pi) + l2M(pj) + Ms= b1. (2.11)
A adi¸c˜ao do lugar de controle ps, cuja marca¸c˜ao ir´a satisfazer a condi¸c˜ao de igualdade,
de controle impostos pelo m´etodo dos invariantes de lugar s˜ao lugares idˆenticos aos lugares da rede de Petri cl´assica, e n˜ao lugares de controle como os das redes de Petri controladas.
Com a adi¸c˜ao do lugar de controle, a matriz de incidˆencia original, de ordem n x m, ser´a acrescida de uma linha, devido `a adi¸c˜ao da vari´avel de folga. Esta matriz modificada, que corresponde `a matriz do controlador, ´e denominada IC. Esta matriz cont´em os
arcos que conectam o lugar de controle `as transi¸c˜oes dos processos controlados da rede. Usualmente, na representa¸c˜ao de IC, omitem-se as linhas da matriz de incidˆencia
original.
Em [Moody e Antsaklis 1998] ´e demonstrado que a s´ıntese de controladores pode ser realizada por meio das seguintes equa¸c˜oes:
IC = −L.I (2.12)
MC0 = α − 1 (2.13)
onde L ´e uma matriz inteira nc x n e α ´e a quantidade de fichas na marca¸c˜ao inicial do
sif˜ao. O elemento (i,j) da matriz L ´e igual a 1, se o lugar for submetido a uma restri¸c˜ao de controle, e igual a 0 caso contr´ario. A quantidade de fichas do controlador ´e dada em fun¸c˜ao da quantidade de fichas da marca¸c˜ao inicial do sif˜ao menos um.
Para ilustrar o m´etodo apresentado, considere a Figura 2.11 :
Figura 2.11: Exemplo de aplica¸c˜ao do m´etodo dos invariantes de lugar.
Executando a rede apresentada na Figura 2.11 temos uma situa¸c˜ao de deadlock carac- terizada pelo disparo sequencial das transi¸c˜oes: t1 e t6. Esta situa¸c˜ao pode ser vista
2.5. Controle Supervis´orio de situa¸c˜oes de deadlock 57 na Figura 2.12. Observa-se no momento ap´os a execu¸c˜ao desta sequˆencia de disparo, que n˜ao h´a nenhuma outra transi¸c˜ao habilitada.
Figura 2.12: Rede da Figura 2.11 ap´os o disparo de t1 e t6.
Aplicando o m´etodo apresentado na Subse¸c˜ao 2.4.1, os seguintes sif˜oes foram encontra- dos: S1 = {P3, R2, P3’}, S2 = {P1, R1, P1’}, S3 = {P1’, P3’, C’} e S4 = {P3, R1, R2, P1’}. O sif˜ao S4 = {P3, R1, R2, P1’}, destacado na Figura 2.13, pode ser esvaziado caso sejam disparadas as transi¸c˜oes t1 e t6 em sequˆencia.
Figura 2.13: Sif˜ao S4.
Sabe-se que a situa¸c˜ao de deadlock acontece devido ao disparo sequencial das transi¸c˜oes t1 e t6 e, portanto, ´e necess´ario impor ao sistema que os lugares P1 e P3’ n˜ao podem
conter fichas simultaneamente. Neste caso, para utilizar o m´etodo de invariante de lugar para estabelecer as restri¸c˜oes de controle ´e necess´ario fazer uma transforma¸c˜ao das transi¸c˜oes que devem ser controladas. Esta transforma¸c˜ao de uma transi¸c˜ao foi proposta em [Moody et al. 1994] e consiste em transformar uma transi¸c˜ao tj em dois
elementos: um lugar p′
j e uma transi¸c˜ao t′j. A Figura 2.14 ilustra esta transforma¸c˜ao.
Figura 2.14: Transforma¸c˜ao de uma transi¸c˜ao.
A Figura 2.13 transformada ´e apresentada na Figura 2.15.
Figura 2.15: Sif˜ao modificado.
Da Figura 2.15 pode-se estabelecer a seguinte especifica¸c˜ao de controle: M (M 1) + M(M 2) ≤ 1.
Dada a especifica¸c˜ao acima, para formamos a matriz L, temos que os lugares M1 e M2 ser˜ao submetidos `as restri¸c˜oes de controle, adquirindo valor igual a 1 e os demais lugares ter˜ao valor igual a 0. Tendo como sequˆencia de lugares: P3, R1, R2, P1’, M1 e M2, podemos especificar a matriz
2.5. Controle Supervis´orio de situa¸c˜oes de deadlock 59 A matriz de incidˆencia da Figura 2.15 ´e dada por:
I = 0 0 1 −1 0 0 0 0 −1 0 1 0 1 −1 0 0 0 0 −1 1 0 1 −1 0 0 0 0 0 0 0 1 −1 1 −1 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 Aplicando as equa¸c˜oes 2.12 e 2.13: IC = h 0 0 0 0 −1 −1 i. 0 0 1 −1 0 0 0 0 −1 0 1 0 1 −1 0 0 0 0 −1 1 0 1 −1 0 0 0 0 0 0 0 1 −1 1 −1 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 IC = h −1 1 0 0 0 0 −1 1 i e MC0 = 2 − 1 = 1
Sabe-se que na matriz IC os lugares com valor igual a 1 s˜ao transi¸c˜oes de onde ir˜ao
sair os arcos de entrada do lugar de controle e os lugares com valores iguais -1 s˜ao as transi¸c˜oes que ter˜ao os arcos que sair˜ao do lugar de controle. Isto significa que, com a matriz IC =
h
−1 1 0 0 0 0 −1 1 i, um lugar de controle CP ser´a acrescentado ao Sif˜ao S4 n˜ao controlado e o mesmo ser´a lugar de entrada das transi¸c˜oes t1 e t6, e lugar de sa´ıda das transi¸c˜oes t1’ e t6’. A marca¸c˜ao inicial desse lugar conter´a uma ficha. O lugar de controle CP ´e ilustrado na Figura 2.16.
Com a inclus˜ao do lugar de controle CP percebe-se que n˜ao ´e poss´ıvel disparar se- quencialmente as transi¸c˜oes t1 e t6. Segundo [Moody et al. 1994], ap´os a imposi¸c˜ao de controle, pode-se retornar ao modelo inicial. Desta forma, o lugar de controle inserido ao modelo inicial ´e apresentado na Figura 2.17. Como as transi¸c˜oes t1’ e t6’ n˜ao fazem parte do modelo inicial, elas ser˜ao substitu´ıdas por transi¸c˜oes semelhantes no modelo completo. Assim, a transi¸c˜ao t1’ se equivale `a transi¸c˜ao t2 e a transi¸c˜ao t6’ se equivale `a transi¸c˜ao t5.
Figura 2.16: Sif˜ao S4 com a inclus˜ao do lugar de controle CP.
Figura 2.17: Rede de Petri da Figura 2.11 com lugar de controle CP.
Ap´os a inser¸c˜ao do lugar de controle na rede, percebe-se que o lugar de controle imp˜oe a restri¸c˜ao de disparo sequencial das transi¸c˜oes: t1 e t6. Por exemplo, inicialmente temos as transi¸c˜oes t1 e t6 habilitadas para disparo, se for efetuado o disparo da transi¸c˜ao t1,
2.6. Arquitetura de Software 61