S5-100U

PC-Sim per S5 100U

E’ uno dei simulatori di PLC compresi nel pacchetto AW-SYS. Esso simula il PLC modello S5 100U della Siemens.

PLC

Finestra PLC

Questa finestra mostra l’immagine del PLC e, ovviamente, il suo contenuto varia in funzione del modello che state utilizzando. Essa è stata studiata e realizzata per rappresentare una apparecchiatura quanto più possibile simile nelle forme esteriori al PLC reale. Questo, anche se inutile dal punto di vista funzionale, vi fornirà un passaggio più facile verso il PLC reale, quando decidiate di farlo. In tutte le finestre sono state riproposte le segnalazioni luminose a led dello stato degli ingressi e delle uscite digitali. Come nel PLC reale l’accensione di un LED d’ingresso indica la chiusura del contatto ad esso collegato; l’accensione di un LED d’uscita indica l’attivazione dell’uscita corrispondente.

Nella finestra sono presenti 16 pulsanti/interruttori. Essi vengono utilizzati per il comando degli ingressi digitali quando usate il PLC senza impianto o quando non tutti gli ingressi del PLC sono collegati all’impianto.
Questi pulsanti/interruttori possono essere impostati sia come pulsanti che come interruttori. L’aspetto ne indicherà la funzione:

interruttore
pulsante

dove la doppia freccia indica la funzione bistabile, quella singola la funzione monostabile.

Editor di programma ladder

Finestra Editor ladder per S5 100U Casella strumenti ladder per S5 100U

Il Ladder diagram o Schema a contatti è sicuramente il più diffuso linguaggio di programmazione di PLC. E’ una metodologia di programmazione grafica. Tra due linee verticali, che rappresentano l’alimentazione, viene disegnato un schema elettrico composto da diversi circuiti disposti in successione. Il PLC esegue nell’ordine ognuno di essi durante l’elaborazione del programma utente.
L’editor ladder di PC-Sim vi offre la possibilità di scrivere comodamente e rapidamente il programma, unendo alla velocità delle azioni con il mouse, la potenza dei comandi tipici di editor avanzati: per esempio comandi taglia, copia e incolla.
Il disegno dello schema avviene utilizzando gli strumenti della Casella strumenti ed i Menu di scelta rapida attivabili con il pulsante destro del mouse. La verifica della correttezza sintattica degli operandi, che potranno essere introdotti anche sotto forma di simbolo, viene effettuata alla fine di ogni digitazione. Lo stesso editor permetterà, durante l’esecuzione del programma realizzato, la visualizzazione del debug. Verranno mostrati, con variazioni di colore, contatti chiusi, bobine attive e circolazione della corrente. La colorazione sarà aggiornata in tempo reale ed in conseguenza dei risultati dell’elaborazione e delle variazioni dei segnali a campo.

Editor di programma AWL

Finestra Editor AWL per S5 100U

Il linguaggio AWL o STL o Lista istruzioni è una delle modalità più diffuse di programmazione dei PLC. Scrivere un programma AWL vuol dire digitare una serie di istruzioni, ognuna delle quali rappresenta un compito elementare, che la CPU del PLC eseguirà in sequenza. Ogni istruzione occupa un solo rigo di programma ed ogni rigo contiene una sola istruzione.
Ognuna di esse è composta da un’operazione e, generalmente, da un operando. L’operazione specifica l’azione che la CPU deve compiere e l’operando specifica l’oggetto su cui tale azione deve essere compiuta.
L’editor AWL di PC-Sim per S5 100U consente una comoda e rapida introduzione delle istruzioni, anche grazie alla possibilità di utilizzare comandi di taglia, copia ed incolla. La sintassi di ognuna di esse viene controllata immediatamente ed il programmatore viene avvisato in caso di errore. Il programma, inoltre, pùo essere semplicemente corredato di testi di commento.
Lo stesso editor permetterà, durante l’esecuzione del programma realizzato, la visualizzazione del debug. In corrispondenza di ogni rigo, verranno visualizzate informazioni sui registri principali del PLC e sullo stato degli operandi. Queste saranno aggiornate in tempo reale ed in conseguenza dei risultati dell’elaborazione e delle variazioni dei segnali a campo.

Lista blocchi

Riporta la lista dei blocchi presente nel progetto corrente specificandone sigla, il tipo editor e lo stato. Consente l’accesso agli editor di programma ed alle funzioni di debug, nonché la crezione, l’eliminazione e la rinominazione di blocchi.

Le altre finestre che compongono il programma sono comuni a tutti i PLC e vengono descritte nella pagina PC-Sim: il simulatore di PLC.

Elenco operazioni fondamentali supportate

Operazione AWL

Operandi ammessi

Descrizione
Operazioni logiche
U E, A, M, T, Z Combinazione AND o test sullo stato “1”
UN E, A, M, T, Z Combinazione AND o test sullo stato “0”
O E, A, M, T, Z Combinazione OR o test sullo stato “1”
ON E, A, M, T, Z Combinazione OR o test sullo stato “0”
O   Combinazione OR di funzioni AND
U(   Combinazione AND di espressione tra parentesi
O(   Combinazione OR di espressione tra parentesi
)   Fine di un’espressione tra parentesi
Operazioni di memorizzazione
S E, A, M Attivazione dell’operando su RLC=1
R E, A, M Disattivazione dell’operando su RLC=1
= E, A, M Assegnazione dell’operando al valore di RLC
Operazioni di caricamento
L EB Caricamento di un byte dell’IPI in ACCU1
L AB Caricamento di un byte dell’IPU in ACCU1
L EW Caricamento di una word dell’IPI in ACCU1
L AW Caricamento di una word dell’IPU in ACCU1
L MB Caricamento di un merker byte in ACCU1
L MW Caricamento di un merker byte in ACCU1
L DL Caricamento di una parola dati (byte di sinistra) del blocco attuale in ACCU1
L DR Caricamento di una parola dati (byte di destra) del blocco attuale in ACCU1
L DW Caricamento di una parola dati del blocco attuale in ACCU1
L KB Caricamento di una costante di byte in ACCU1
L KF Caricamento di una costante in virgola fissa in ACCU1
L KH Caricamento di una costante esadecimale in ACCU1
L KM Caricamento di una costante binaria in ACCU1
L KY Caricamento di una costante a doppio byte in ACCU1
L KT Caricamento di una costante di tempo in ACCU1
L KZ Caricamento di una costante di conteggio in ACCU1
L T,Z Caricamento di un valore di tempo o di conteggio in ACCU1
LC T,Z Caricamento di un valore di tempo o di conteggio, codificato BCD, in ACCU1
Operazioni di trasferimento
T EB Trasferimento del contenuto di ACCU1 in un byte dell’IPI
T AB Trasferimento del contenuto di ACCU1 in un byte dell’IPU
T EW Trasferimento del contenuto di ACCU1 in una word dell’IPI
T AW Trasferimento del contenuto di ACCU1 in una word dell’IPU
T MB Trasferimento del contenuto di ACCU1 in un merker byte
T MW Trasferimento del contenuto di ACCU1 in una merker word
T DL Trasferimento del contenuto di ACCU1 in una parola dati (byte di sinistra)
T DR Trasferimento del contenuto di ACCU1 in una parola dati (byte di destra)
T DW Trasferimento del contenuto di ACCU1 in una parola dati
Operazioni di temporizzazione
SI T Attivazione di un temporizzatore ad impulso
SV T Attivazione di un temporizzatore ad impulso prolungato
SE T Attivazione di un temporizzatore con ritardo all’inserzione
SS T Attivazione di un temporizzatore con ritardo all’inserzione con memoria
SA T Attivazione di un temporizzatore con ritardo alla disinserzione
R T Reset di un temporizzatore
Operazioni di conteggio
ZV Z Incremento di conteggio
ZR Z Decremento di conteggio
S Z Impostazione di un contatore
R Z Reset di un contatore
Operazioni aritmetiche
+F   Addizione di due numeri in virgola fissa (ACCU2 + ACCU1)
-F   Sottrazione di due numeri in virgola fissa (ACCU2 – ACCU1)
Operazioni di confronto
!=F   Confronto di uguaglianza di due numeri in virgola fissa (ACCU2 = ACCU1)
><F   Confronto di disuguaglianza di due numeri in virgola fissa (ACCU2 ¹ ACCU1)
>F   Confronto di maggioranza di due numeri in virgola fissa (ACCU2 > ACCU1)
>=F   Confronto di maggioranza o uguaglianza di due numeri in virgola fissa (ACCU2 ³ ACCU1)
<F   Confronto di minoranza di due numeri in virgola fissa (ACCU2 < ACCU1)
<=F   Confronto di minoranza o uguaglianza di due numeri in virgola fissa (ACCU2 £ ACCU1)
Operazioni di richiamo di blocchi
SPA PB Salto assoluto ad un blocco di programma
SPA FB Salto assoluto ad un blocco funzionale
SPB PB Salto condizionato ad un blocco di programma
SPB FB Salto condizionato ad un blocco funzionale
A DB Apertura di un blocco dati
Operazioni di salto di ritorno
BE   Fine blocco
BEB   Fine blocco condizionata
BEA   Fine blocco assoluta
Operazioni nulle
NOP0   Nessuna operazione
NOP1   Nessuna operazione
Operazioni di stop
STP   Stop dell’elaborazione. La CPU viene portata in stop alla fine del ciclo

 

  Elenco operazioni integrative supportate

Operazione AWL

Operandi ammessi

Descrizione
Operazioni logiche su operando formale
U= Operando formale E, A, M, T, Z Combinazione AND o test sullo stato “1”
UN= Operando formale E, A, M, T, Z Combinazione AND o test sullo stato “0”
O= Operando formale E, A, M, T, Z Combinazione OR o test sullo stato “1”
ON= Operando formale E, A, M, T, Z Combinazione OR test sullo stato “0”
Operazioni logiche su word
UW   Combinazione AND (bit a bit) tra ACCU1 e ACCU2 con risultato in ACCU1
OW   Combinazione OR (bit a bit) tra ACCU1 e ACCU2 con risultato in ACCU1
XOW   Combinazione XOR (bit a bit) tra ACCU1 e ACCU2 con risultato in ACCU1
Operazioni di memorizzazione su operando formale
S = Operando formale E, A, M Attivazione dell’operando formale su RLC=1
RB = Operando formale E, A, M Disattivazione dell’operando formale su RLC=1
RD = Operando formale T, Z Disattivazione dell’operando formale su RLC=1
= = Operando formale E, A, M Assegnazione dell’operando formando al valore di RLC
Operazioni di caricamento e trasferimento di operando formale
L = Operando formale E, A, M, T, Z Caricamento in ACCU1 del valore dell’operando formale
LC = Operando formale T, Z Caricamento in ACCU1 del valore codificato BCD dell’operando formale
LW = Operando formale Caricamento in ACCU1 del valore dell’operando formale costante
T = Operando formale E, A, M Trasferimento del valore in ACCU1 all’operando formale
Operazioni di temporizzazione e conteggio con operando formale
SI = Operando formale T Attivazione di un temporizzatore ad impulso
SE = Operando formale T Attivazione di un temporizzatore con ritardo all’inserzione
SVZ = Operando formale T, Z Attivazione di un temporizzatore ad impulso prolungato oppure impostazione di un contatore
SSV = Operando formale T, Z Attivazione di un temporizzatore con ritardo all’inserzione con memoria oppure conteggio in avanti di un contatore
SAR = Operando formale T, Z Attivazione di un temporizzatore con ritardo alla disinserzione oppure conteggio all’indietro di un contatore
Operazioni aritmetiche
ADD BF Somma ad ACCU1 la costante a byte con segno (-128…+127), risultato in ACCU1
ADD KF Somma ad ACCU1 la costante a word con segno (-32768…+32767), risultato in ACCU1
Operazioni di conversione
KEW   Complemento a 1 di ACCU1
KZW   Complemento a 2 di ACCU1
Operazioni di scorrimento
SLW n = 0…15 Scorrimento verso sinistra del contenuto di ACCU1 per il numero di bit indicato nel parametro. I posti liberi vengono riempiti con 0.
SRW n = 0…15 Scorrimento verso destra del contenuto di ACCU1 per il numero di bit indicato nel parametro. I posti liberi vengono riempiti con 0.
Operazioni di salto
SPA = Etichetta Salto assoluto all’etichetta
SPB = Etichetta Salto condizionato all’etichetta (se RLC=0)
SPZ = Etichetta Salto se risultato nullo
SPN = Etichetta Salto de risultato non nullo
SPP = Etichetta Salto se positivo
SPM = Etichetta Salto se negativo
SPO = Etichetta Salto per overflow
Operazioni di stop
STS   Stop dell’elaborazione. La CPU viene portata in stop immediatamente
Operazioni speciali
D n = 0…255 Decremento del byte inferiore di ACCU1 di n
I n = 0…255 Incremento del byte inferiore di ACCU1 di n
TAK   Scambio del contenuto di ACCU1 ed ACCU2
Operazioni di elaborazione
B DW Elaborazione di parola dati: l’istruzione successiva viene combinata con il parametro ed eseguita
B MW Elaborazione di parola merker: l’istruzione successiva viene combinata con il parametro ed eseguita
B= Operando formale B Elaborazione del blocco per OB, PB e FB; apertura del blocco per DB

 

^