Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
3.2. ASSEGNAZIONE DEI BIT DELLE WORD DEL PLC
Bit della Bilancia Bit Della Word di Input
I1:1B0_0 I1:2B0_1 I1:3B0_2 I1:4B0_3 I1:5B1_0 I1:6B1_1 I1:7B2_2 I1:8B3_3
Bit del Preselettore Bit Della Word di Input
I2:1S1_0 I2:2S1_1 I2:3S1_2 I2:4S1_3 I2:5S2_0 I2:6S2_1 I2:7S2_2 I2:8S2_3
Comandi e Sensori Bit Della Word di Input
I3:1S3 I3:2S4 I3:3S5 I3:4S6 I3:5S7 I3:6S8 I3:7S9 I3:8S10 I3:9S11 I3:10S12 I3:11RIPRISTINO I3:12RESET I3:13F1 I3:14B2
Marker sfc2 Bit della Word di Relay
W1:1X1 W1:2X2 W1:3X3 W1:4X4 W1:5X5 W1:6X6
Marker sfc1 Bit della Word di Relay
W1:8X10 W1:9X11 W1:10X12 W1:11X13
Marker sfc3 Bit della Word di Relay
W1:13X20 W1:14X21 W1:15X22
Marker sfc4 Bit della Word di Relay
W2:1X30 W2:2X31 W2:3X32
Marker sfc5 Bit della Word di Relay
W2:5X40 W2:6X41 W2:7X42
Transizioni del sfc2 Bit della Word di Realay
W2:9T1 W2:10T2 W2:11T3 W2:12T4 W2:13T5 W2:14T6
Transizioni del sfc1 Bit della Word di Relay
W2:16T10 W3:1T11 W3:2T12 W3:4T13 W3:3T14
Table 3.3: Relay
parte I 213.2. ASSEGNAZIONE DEI BIT DELLE WORD DEL PLC
Transizioni del sfc3 Bit della Word di RelayW3:5T21 W3:6T22 W3:7T23
Transizioni del sfc4 Bit della Word di RelayW3:8T31 W3:9T32 W3:10T33
Transizioni del sfc5 Bit della Word di RelayW3:11T40 W3:12T41 W4:13T42
Bit Flag-Pesata Bit della Word di RelayW4:1
Lampade Bit della Word di OutputU1:1H1 U1:2H2 U1:3H3 U1:4H4 U1:5H5 U1:6H6 U1:7H7 U1:8H30
Comandi Bit della Word di OutputU1:9Y1A U1:10Y2A U1:11M1
Bit di Uscita Word d'UscitaU2:1H8_0 U2:2H8_1 U2:3H8_2 U2:4H8_3 U2:5H8_0 U2:6H8_1 U2:7H8_2 U2:8H8_3
Table 3.4: Relay parte II - Uscite
22 LADDER
CHAPTER 3. TRADUZIONE IN
Oltre ai relay già riportati nelle tabelle precendenti, ce ne sono altri introdotti nella fase di traduzione per la realizzazione di riconoscitori di fronte di salita che realizzino attivazione impulsiva dei pulsanti presenti nel sistema.
Di seguito riportiamo la tabella dei relay che utilizziamo per ottenere il fronte di salita.
Bit di Uscita Word d'UscitaW4:3W1 W4:4W2
W4:5W3 W4:6W4 W4:7W5 W4:8W6 W4:9W7 W4:10W8 Table 3.5: Relay - Fronti di Salita Per una maggiore precisione descrittiva della scelta, riportiamo il codice ladder che realizza l'azione su fronte di salita alla pressione del pulsante. Figure 3.2: Riconoscitore del Fronte di Salita 3.3 Sezione di Inizializzazione Nella sezione di inizializzazione sono state tradotte tutte le fasi sempre attive dei nostri First Scancinque SFC ulizzando il bit speciale di messoci a disposizione dal simulatore di PLC. First Scan Il bit di viene visto come un contatto chiuso soltanto alla prima scansione del programma ladder; successivamente tale bit verrà visto come normalmente aperto. First Scan Il bit di è utile quando si ha la necessità di settare delle condizioni all'inizio. First Scan Quando il programma ladder è trasferito al PLC, il bit di è alto quando il PLC è acceso per la prima volta o dopo che è stato resettato. Latch Per tradurre le fasi sempre attiveabbiamo utilizzato le bobine<bobine>
, che attivate all'inizio, saranno poi disattivate nell'esecuzione del programma quando le opportune <Markertransizioni>
saranno superate. I <di fase>
associati appunto alle fasi, sono assegnati ai relay del PLC; relay che sono variabili interne del PLC che per essere attive devono essere opportunamente alimentate come le generiche bobine.
Si nota dal codice ladder riportato, inerente alla sezione di inizializzazione delle fasi 233.4. ESECUZIONE DELLE AZIONI First Scan or sempre attive, che oltre al bit di <First Scanlogico>
allo speciale bit altri contatti; i contatti in <First Scanlogico>
al bit di <Marker>
sono associati o a <di fase>
o a <di transizioni>
o in taluni casi a entrambi.
Questi contatti sono associati ad azioni e/o a transizioni che nel programma compiono <Latchanch'essi>
un <sulla bobina>
associata alla fase sempre attiva.
Di seguito è riportato il codice ladder che realizza la sezione diinizializzazione delle fasi sempre attive.
Figure 3.3: Inizializzazione Fasi Sempre Attive
3.4 Esecuzione delle Azioni
Il codice ottenuto traducendo gli SFC, realizzante questa sezione, sostanzialmente associa ad ogni variabile segnalatrice della fase, la rispettiva azione. L' -logico framarker di fase ed azione corrispondente fa si che all'attivazione del marker automaticamente vi sia l'attivazione della bobina dell'azione, quindi l'esecuzione dell'azione; il marker di fase condiziona l'azione ad esso associata.
Di seguito riportiamo il codice che realizza la sezione di esecuzione delle azioni.
Figure 3.4: Clear delle Azioni 25
LADDERCHAPTER 3. TRADUZIONE IN
Figure 3.5: Latch delle Azioni 26
LADDERCHAPTER 3. TRADUZIONE IN
Custom Function
3.4.1 Le
Ci sono due tipi di custom function denibili dall'utente che permettono la definizione di azioni non disponibili nel linguaggio a contatti tradizionale, ma assimilabili ad un generico relay.
Il nostro simulatore permette la creazione in maniera molto semplificata delle funzioni suddette, in un editor che mette esso stesso a disposizione. Il linguaggio utilizzato per la creazione delle custom function è il TBasic. Una custom function lavora alla stessa maniera di ogni altra speciale funzione messa a disposizione dal linguaggio del nostro simulatore TRiLOGI. Sostanzialmente ci è permesso di scegliere fra due tipologie di custom function: [dCusF n] [CusF n]. La differenza sostanziale è che alla creazione della [dCusF n] c'è un'esecuzione ad ogni scansione ed in ogni caso, invece la [CusF n], che sta per DifferentiatedUp custom function, è eseguita solo quando la condizione associatagli passa da OFF a ON, diciamo su fronte di salita, in tutti gli altri casi non viene eseguita. Nel corso della progettazione sono state create cinque custom function di tipo [reset_p] [set_p] [visualizza] [equ_b2] [equ_0]. Di seguito riportiamo una tabella cheNome | Codice | Descrizione |
---|---|---|
reset_p | CLRBIT RELAY[4],0 | Pulisce il bit 0 della quarta word dei relay del PLC, mettendolo a zero. |
set_p | SETBIT RELAY[4],0 | Setta il bit 0 della quarta word dei relay del PLC, mettendolo ad uno. |
visualizza | X = INPUT[1]&H00FF OUTPUT[2]=X |
Mette nella variabile X del PLC i primi 8 bit della prima word di input e successivamente li visualizza nella seconda word di output. |
Valutazione delle transizioni
Nome | Codice | Descrizione |
---|---|---|
equ_b2 | X = INPUT[1]&H00FF A = INPUT[2]&H00FF IF X=A SETBIT output[1],4 ELSE SETBIT output[1],6 |
Mette i primi 8 bit della prima word di input del PLC in X e i primi 8 bit della seconda word di input in A. Se X è uguale ad A, accende il bit 4 dell'output[1], altrimenti accende il bit 6. |
<CLRBIT output[1],4>
pada <H3>
.ENDIF il codice TBasic procede comeA = INPUT[2]& &H00FF
equ_0 per la funzione precendente, sos-tanzialmente la dierenza nas-IF A=0 ce dal funzionamento; infattiSETBIT output[1],7
questa funzione controllaELSE il settaggio dei bit del preselettore,CLRBIT output[1],7
se settati spegne H30
, altri-ENDIF menti accende la H30
.Table 3.7: Custom FunctionTabelle descrittiva delle parte IIPer maggiori informazioni sulle entitá si consiglia di rivedere CAP I pp.4 e 5; perinformazioni sull'assegnazione dei bit di input, relay e output del PLC alle entitá, siriveda CAP II paragrafo 2, in particolare le tabelle riportate.Il linguaggio di programmazione, come detto anche in precedenza, é il TBasic, sostanzial-mente simile ai comunin linguaggi di programmazione ad alto livello. Le funzionalitá& &HOOF SETBIT CLRBITutilizzate quali o e , ci sono messe a disposizione dal liguaggio& &HOOFTBasic, inparticolare ci consente di considerare solo i primi otto bit della CLRBIT SETBIT word a cui è associato, rendendo invisibili i successivi otto. Invece estanno rispettivamente per clear bit e set bit, per le quali c'è poco da commentare, sono molto intuitive.
3.5 Valutazione delle Transizioni
Valutazione della transizione sta per valutazione dell'attivazione della fase precedente alla transizione in questione, e valutazione delle condizioni associate alla transizione stessa. La sezione è quindi dedicata all'aggiornamento dello stato di ogni singola transizione attraverso l'attivazione dei marker segnalatori; sarà disposto nel codice un rung per ognuna delle transizioni presenti negli SFC.
I marker di transizione come quelli delle azioni sono delle variabili segnalatrici interne del PLC, quindi sono assegnate ai bit dei relay del PLC. Analogamente al caso delle azioni vi sono due elementi che sostanzialmente possono essere associati al bit specifico.
della transizione, un contatto o una bobina. La bobina è assegnata al bit della transizione quando si è nella valutazione di una transizione che può comportare una attivazione, quindi una alimentazione dell'elemento a cui è associato il bit; un contatto è assegnato al bit della transizione quando si sta aggiornando la condizione del SFC, ossia all'attivazione del contatto che rappresenta la transizione c'è la disattivazione della fase precedente e l'attivazione della fase successiva. Tra le condizioni che si possono ritrovare nei rung delle transizioni ci sono sicuramente i contatti associati ai pulsanti presenti nel sistema. Per questi si è associato un relay reset ripristino che è attivato impulsivamente nel codice. Infatti i pulsanti S3, S6, , ,sono tradotti con attivazione impulsiva all'atto della attivazione da parte d