...

Esercizi sul controllo supervisivo

by user

on
Category: Documents
247

views

Report

Comments

Transcript

Esercizi sul controllo supervisivo
Esercizio 1 Si disegni la rete di Petri con matrice di incidenza:


−1 0
1
0
 −1 0
0
1 


 1 −1 0

0


 0
1 −1 0 
0
1
0 −1
T
e marcatura iniziale M0 = 1 1 0 0 0 . Verificare se la sequenza di scatto t1t2t3t4 è ammissibile a partire dalla marcatura iniziale e, in caso affermativo, calcolare la marcatura finale.
Esercizio 2 Si disegni la rete di Petri con matrice di incidenza:


−1 −1 0
0
 −1 1
0
0 


 0
0
1 −1 
0
0 −1 1
Si illustri il procedimento di sintesi del supervisore con vincoli di mutua esclusione generalizzati e
se ne esemplifichi l’applicazione nel caso in cui la rete di Petri assegnata abbia marcatura iniziale
T
M0 = 1 0 1 0
e si desideri che M (2) + M (4) ≤ 1. Si dia una interpretazione fisica al modello
e al vincolo considerato.
Esercizio 3 Si determini lautoma C = A||B ottenuto mediante composizione concorrente degli automi
in fig. 1:
A1
A2
B1
B2
s1
r1,f2
f1
g1
r1
g1
B
A3
A
Figura 1: Automa A ed automata B
Verificare se l’automa C è rifinito.
Sol: L’automa C in fig. 2 ha sei stati (massimo numero di stati). Tuttavia, gli stati A1B2, A2B2
non sono raggiungibili, mentre lo stato A3B1 non è co-raggiungibile, pertanto C non è rifinito.
Esercizio 4 Nell’ipotesi che gli automi A e B degli esercizi precedenti descrivano il funzionamento di
due processi, si determini il supervisore monolitico.
1
A1B1
f2
A2B1
s1
f1
f2
g1
r1
s1
A3B2
A2B2
A1B2
A3B1
f1
f2
C
Figura 2: Automa C = A||B
Non sono presenti nè specifiche statiche nè specifiche dinamiche. L’automa C = A||B è controllabile
ma non rifinito; eliminando da C gli stati A1B2, A2B2 e A3B1, si ottiene un automa controllabile che,
pertanto, è il supervisore monolitico. Si noti che il supervisore ottenuto si limita a inibire l’evento
controllabile f2 in tutte le condizioni di funzionamento.
Esercizio 5 Si considerino gli automi in fig. 3 in cui A rappresenta una macchina caratterizzata dagli
stati A1 (ferma), A2 (in lavorazione) e A3 (guasta), B rappresenta una macchina caratterizzata dagli
stati B1 (ferma) e B2 (in lavorazione), e Sp rappresenta una specifica dinamica caratterizzata dagli
stati N (macchina A funzionante) e G (macchina A guasta) che fa in modo che la macchina B possa
lavorare solo quando la macchina A è guasta. Si individui il supervisore monolitico.
A1
A2
B1
B2
s1
s2
f1
f2
N
G
r1
s2
r1
s1
g1
g1
B
Sp
A3
A
Figura 3: Automi A, B, Sp
Sol: L’automa F = A||B||Sp in fig. 4 presenta sei stati (quelli raffigurati a destra) che non sono
nè raggiungibili nè co-raggiungibili. Eliminando tali stati, F si riduce all’automa a 6 stati raffigurato
a sinistra che, essendo controllabile e rifinito, coincide con il supervisore monolitico.
2
f2
A1B1N
A2B1N
s1
A1B1G
f2
A2B2N
A1B2G
f2
f1
f1
s2
f1
A2B2G
g1
r1
A2B1G
g1
s1
f1
f2
s2
A3B1G
s2
f2
A3B1N
A3B2G
r1
A3B2N
A1B2N
f2
Figura 4: Automa F = A||B||Sp
Esercizio 6 Si trovi il supervisore monolitico per l’esercizio precendente nell’ipotesi di considerare
anche una specifica statica che impone che le macchine A e B non possano mai lavorare contemporaneamente.
Sol: L’automa ottenuto nell’esercizio precedente è controllabile e rifinito ma, in base alla specifica
statica, lo stato A2B2N non è illegale; dopo l’eliminazione di tale stato, il nuovo automa F in fig. 5
risulta rifinito e controllabile e pertanto è il supervisore.
f2
A2B1N
s1
f1
g1
s2
A3B1G
f2
A3B2G
r1
A1B2G
Figura 5: Automa F rifinito
Esercizio 7 Per i due automi A e B in fig. 3, si trovi il supervisore monolitico in assenza della
specifica dinamica Sp e in presenza della specifica statica che impone che le macchine A e B non
possano mai lavorare contemporaneamente.
3
Sol: Eliminando lo stato A2B2 dall’automa P = A||B, si ottiene l’automa F in fig. 6 che, essendo
controllabile e rifinito, è il supervisore monolitico. Il supervisore ottenuto consente alla macchina B
di lavorare anche quando la macchina A non è guasta ma è semplicemente inattiva (transione dallo
stato A1B1 a A1B2).
r1
A1B1
A2B1
s1
g1
A3B1
f1
s2
f2
f2
s2
r1
A1B2
A3B2
Figura 6:
Esercizio 8 Si risolva l’esercizio precedente utilizzando le reti di Petri come modello e realizzando la
specifica statica con un vincolo di tipo GMEC.
B1
A1
f2
s2
f1
s1
r1
A2
W1
B2
g1
A3
Figura 7:
Sol: Le due macchine possono essere
di incidenza:

−1
 1

 0

 0
0
rappresentate mediante la rete di Petri in fig. 7 con matrice

1
0
1
0
0
−1 −1 0
0
0 

0
1 −1 0
0 

0
0
0 −1 1 
0
0
0
1 −1
4
T
e marcatura iniziale M0 = 1 0 0 1 0 , dove ogni nodo degli automi A e B corrisponde a un
posto della rete, l’ordine dei posti è A1,A2,A3,B1,B2 e quello delle transizioni s1, f1, g1, r1, s2, f2.
Il vincolo statico si traduce nella disuguaglianza M(A2) + M (B2) ≤ 1. Il supervisore consiste
in un posto di controllo con matrice di incidenza cc = −1 1 1 0 −1 1 e marcatura iniziale
mc = 1 come mostrato in fig. 8.
pC
B1
A1
f2
s2
f1
s1
r1
A2
W1
B2
g1
A3
Figura 8:
Esercizio 9 Si consideri il sistema in fig. 9 costituito da 3 pompe (P1,P2,P3) e da un serbatoio di
accumulo di acqua piovana. Le tre pompe devono immettere l’acqua in una condotta posta al di sopra
del livello del serbatoio. Se l’acqua nel serbatoio è al di sotto del livello l1 bisogna tenere spente le
pompe. Se l’acqua nel serbatoio raggiunge il livello l1 bisogna accendere solo una pompa. Se l’acqua
nel serbatoio raggiunge il livello l2 bisogna accendere due pompe. Se l’acqua nel serbatoio raggiunge il
livello l3 bisogna accendere tutte le pompe.
Al fine di mantenere in perfetta efficienza le tre pompe, si richiede di modellare le specifiche di
un supervisore che cerchi di utilizzarle tutte e tre in maniera pressochè uguale. Dal punto di vista del
supervisore il comportamento della pompa è supposto essere modellato dall’automa in fig. 10 ove si
rappresenta l’accenzione della pompa, stopi lo spegnimento della pompa, gi un guasto generico, ri la
riparazione del guasto.
Sol: Si riporta in fig. 11 la specifica per l’accenzione delle tre pompe in base al livello dell’acqua
nel serbatoio. Si riporta in fig. 12 la specifica per l’utilizzo alternativo delle tre pompe. Si riporta in
fig. 13 il livello di comando (i segnali g1 e r1 sono assenti in quanto non utilizzati e il segnale absi
rappresenta l’abilitazione del segnale si da parte del supervisore).
Esercizio 10 Modificare la specifica precedente per consentire, nel caso una pompa fosse guasta, di
avviare la successiva in base alla schedulazione prevista per il funzionamento ordinario.
Esercizio 11 Si consideri una cella robotizzata composta da un macchina M 1, una macchina M 2, un
nastro trasportatore per il trasporto di pezzi grezzi all’interno della cella, un nastro trasportatore per
5
l3
l2
l1
P3
P2
P1
Figura 9:
A1i
A2i
si
stopi
ri
gi
A3i
Figura 10:
s1
l1↑
↑
s2
s1
l2↑
↑
s2
s3
l1↓
↓
s1
l3↑
↑
s2
s3
s3
l2↓
↓
l3↓
↓
Figura 11:
6
s1
s2
stop1
stop2
s3
stop3
s2
s3
s1
stop2
stop3
stop1
s1
s2
s3
stop3
stop1
stop2
Figura 12:
f01
f11
absi
l1↑
↑
l1↓
↓
f02
si
N
f12
aux
f12.X tempi1
l2↑
↑
f13.X tempi2
l2↓
↓
f14.X tempi3
f13
aux
l3↑
↑
TR1
f14
f03
stopi
l3↓
↓
1
TRANSITION TR1:=(tempi1 AND l1↓
↓ ) OR (tempi2 AND l2↓
↓ ) OR (tempi3 AND l3↓
↓)
Figura 13:
7
END_TRANSITION
il trasporto dei pezzi finiti all’esterno della cella, un buffer temporaneo di capacità nove ed un robot R
per la movimentazione dei pezzi all’interno della cella.
La cella ha il seguente funzionamento:
• se la macchina M 1 è libera ed il robot è libero, allora il robot preleva il pezzo grezzo dal nastro e
lo carica sulla macchina M 1;
• la macchina esegue l’operazione 1 sul pezzo;
• ad operazione terminata la macchina M 1 resta in attesa per il deposito del pezzo semilavorato
nel buffer temporaneo;
• se il robot è libero ed il buffer non è pieno il robot preleva il pezzo e lo deposita nel buffer;
• i pezzi depositati nel buffer vengono prelevati dal robot se esso e la macchina M 2 sono liberi;
• la macchina M 2 esegue l’operazione 2 sul pezzo semilavorato;
• ad operazione terminata la macchina M 2 resta in attesa per il deposito del pezzo lavorato sul
nastro di uscita;
• una volta depositato sul nastro di uscita il pezzo viene condotto all’esterno della cella.
I singoli sottosistemi M 1, M 2 ed R sono supposti localmente controllati e al livello dell’architettura
di controllo destinato alla coordinazione delle macchine (il livello in cui vengono di solito utilizzate le
PN) sono disponibili i seguenti segnali:
segnali di abilitazione per il livello locale di controllo
c1 carica in M1 il pezzo dal nastro di ingresso
c2 carica in M2 un pezzo dal buffer
s1 deposita nel buffer un pezzo lavorato da M1
s2 deposita su nastro di uscita un pezzo lavorato da M2
segnali di ingresso (eventi) dal livello locale di controllo
fc1 fine caricaM1
fc2 fine caricaM2
fs1 fine deposito1
fs2 fine deposito2
Si suggerisce di utilizzare un modello a reti di Petri in modo da modellare con un vincolo di mutua
esclusione generalizzata l’unicità della risorsa robot. Inoltre, si suggerisce di modellare con un posto
il numero di slot liberi del buffer e con un altro posto il numero di slot occupati.
Sol: In fig. 14a) si riporta il modello a reti di Petri della cella. In fig. 14b) si riporta il modello
a reti di Petri della cella controllata. Il posto monitor R è stata ottenuto imponento la specifica
M (C1 ) + M (C2 ) + M (S1 ) + M (S2 ) ≤ 1. In fig. 14c) si riporta il modello del supervisore.
Esercizio 12 In un laboratorio di pasticceria un forno consente di cuocere torte con due diverse
modalità. Nella prima modalità si producono torte ad alta temperatura: l’inizio e il completamento
di una lavorazione di questo tipo indicato dagli eventi a1 e b1. Nella seconda modalità si producono
torte a bassa temperatura: l’inizio e il completamento di una lavorazione di questo tipo è indicato
8
slotoccupati
AC2
AC1
AC2
AC1
c1
c2
c1
c2
C1
C2
C1
C2
fc2
fc1
AS1
AS2
AS1
AS2
s1
s2
s1
s2
fc1
R
S2
S1
fs1
a)
fc2
R
S2
S1
fs2
fs2
fs1
slotliberi
9
slotoccupati
c2
c1
fc1
b)
R
fc2
s1
s2
fs1
fs2
slotliberi
9
c)
Figura 14:
9
dagli eventi a2 e b2. Inoltre, una volta iniziata una lavorazione a bassa temperatura l’operatore ha
la possibilità azionando un pulsante (evento c) di fornire al forno ulteriore energia; ciò fa aumentare
la temperatura fino a raggiungere una soglia (evento d) che porta ugualmente ad una condizione di
lavorazione ad alta temperatura.
L’automa in fig. 15 descrive tale processo.
Si determini un automa che rappresenti la seguente specifica: al massimo due lavorazioni a bassa
temperatura possono venir completate consecutivamente, mentre non è possibile completare consecutivamente due lavorazioni ad alta temperatura; inoltre la prima lavorazione deve essere a bassa
temperatura.
Si determini se la specifica determinata sia controllabile e si determini un supervisore monolitico
S massimamente permissivo in grado di garantire il soddisfacimento della specifica.
A1
A2
a1
b1
b2
a2
d
c
A3
A4
Figura 15:
Sol: In fig. 16 si è riportato l’ automa che modella la specifica nonchè l’ automa ottenuto dalla
composizione concorrente della specifica con l’ automa del processo che risulta essere un automa rifinito
e controllabile. Pertanto, esso è il supervisore per la specifica assegnata.
Esercizio 13 Una linea di produzione costituita da quattro macchime Mi per i = 1..4 come mostrato
in fig. 17. Le parti sono inviate alla linea dall’esterno inizialmente alla macchina M1 o M2. Dalla
macchina M1 le parti vengono poi inviate alternativamente al buffer di attesa B1 e B2, mentre dalla
macchina M2 vengono tutte inviate al buffer B2. Le parti in attesa in attesa nel buffer B1 vengono
lavorate dalla macchina M3 mentre quelle in attesa nel buffer B2 vengono lavorate dalla macchina
M4. Dopo aver lasciato le macchine M3 e M4, infine le parti vengono inviate al reparto successivo.
Ogni macchina pu processare una parte alla volta, il buffer B1 ha capacità 2 e, infine, il buffer B2 ha
capacità 3.
Si descriva questo sistema mediante una rete di Petri. Si suggerisce di modellare i vincoli sulla
limitatezza delle risorse come GMEC e di considerare un ciclo costituto da 2 posti per l’ utilizzo
alternativo dei buffer di attesa B1 e B2 da parte della macchina M1. Il sistema è limitato?
Sol: In fig. 18 si riporta il modello a reti di Petri della linea senza controllo. In fig. 19 si riporta
il modello a reti di Petri della linea controllata.
Esercizio 14 Si desidera controllare la rete di Petri in fig. 20 in modo da garantire che non venga
mai violato il vicolo M (p3 ) + M (p6 ) ≤ 2.
10
S
A1
b1
A2
a1
S4
b1
b1
b2
a2
a1
d
S1
b2
a2
S5
a2
b2
a1
S8
c
A3
S2
A4
S7
S3
c
P
S6
b1
S||P
b1
b1
S4A2
a1
S1A1
b2
a2
a2
S5A3
b2
a1
S8A2
S2A3
S7A1
S3A1
c
S6A4
b1
d
S6A2
Figura 16:
M1
B1
B2
M2
Figura 17:
11
M3
M4
t1
p1
t2
M1
p2
t3
B1
p3
t4
M3
t9
t5
p4
t6
p5
t7
B2
M2
p6
t8
M4
Figura 18:
2
t1
p1
t2
M1
p2
t3
B1
p3
t4
M3
t9
3
t5
p4
M2
t6
p5
B2
Figura 19:
12
t7
p6
M4
t8
Si rappresenti tale vincolo sotto forma di GMEC (w, b).
Nell’ipotesi in cui tutte le transizioni siano controllabili si determini il posto monitor che impone
la GMEC data e la corrispondente rete a ciclo chiuso.
Si assuma, per il resto dell’esercizio, che l’insieme delle transizioni non controllabili sia T uc =
{t2, t4}. Si verifichi che in tal caso il monitor precedentemente determinato non è controllabile.
Determinare almeno un monitor controllabile che imponga comunque il soddisfacimento della
GMEC originaria. Quanto vale la corrispondente GMEC? Che forma assume il sistema a ciclo chiuso?
p1
t1
p2
t2
p3
t4
p4
t3
p6
t5
p5
Figura 20:
Sol:
(w, b) = ( 0 0 1 0 0 1 , 2)
La matrice di incidenza della rete è








−1 0
0
0
1
1 −1 0
0
0
0
1
0 −1 0
0
0 −1 0
1
0
0
1
0
1
0
0
0
1 −1








Pertanto,
se tutte le transizioni
sono controllabili, il posto monitor risulta avere matrice di incidenza
cc = 0 −1 0 0 1 e marcatura iniziale pari a 2 come mostrato in fig. 21. Esso risulta essere
non controllabile.
Si consideri il vincolo (w, b) = ( 0 1 1 0 0 1 , 2) più restrittivo del precedente, il posto
monitor associato risulta avere matrice di incidenza cc = −1 0 0 0 1 e marcatura iniziale pari
a 2 come mostrato in fig. 22. Esso risulta essere controllabile.
13
p1
t1
p2
t2
p3
t4
p4
t3
p6
t5
p6
t5
p5
p4
Figura 21:
p1
t1
p2
t2
p3
t4
p4
t3
p5
p4
Figura 22:
14
Fly UP