TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per:...

47
© Siemens AG 2011. All Rights Reserved. TIA PORTAL-SCL Structured Control Language per Step7 V11 Orazio Vinci E-mail : [email protected]

Transcript of TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per:...

Page 1: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.

TIA PORTAL-SCL

Structured Control Languageper Step7 V11

Orazio VinciE-mail : [email protected]

Page 2: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Struttura della presentazione

Introduzione Caratteristiche generali Ambiente di sviluppo e finestra operativa

Dichiarazione delle interfacce e delle costanti

Programmazione dei blocchi Conversione del tipo di dati Accesso alle aree di memoria Operazioni Matemetiche Istruzioni di controllo del programma Richiamo di FB ed FC

Funzionalità di test Controllo delle variabili Utilizzo dei punti di arresto

Page 3: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Cos’è l’SCL in TIA PORTAL?

LINGUAGGI DI PROGRAMMAZIONE PLC

S7-SCL

Linguaggio strutturato

KOP

FUP S7-GRAPH

Linguaggi grafici

AWL

Hardware oriented

Vinci Orazio

Page 4: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Caratteristiche generali SCL

Simile al PASCAL… Non ha elementi grafici Elevati costrutti linguistici

…ma con elementi tipici del PLC. Ingressi, uscite, temporizzatori e contatori Concetto di blocco S7 (OB, FC, FB, DB, UDT)

Page 5: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Vantaggi di S7-SCL

Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di dati e ricette (più semplice utilizzo degli ARRAY) Ottimizzazione del processo

Semplicità di comprensione dell’algoritmo rispetto ad AWL.

Possibilità di integrazione con gli altri linguaggi.

Risparmio di tempo nella stesura del programma.

Page 6: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Svantaggi di S7-SCL

La compilazione non sempre ottimizza i tempi di processamento.

Difficoltà nel trovare errori rispetto a linguaggi di tipo grafico.

Linguaggi di programmazione ad alto livello poco conosciuti da manutentori e operatori.

Page 7: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Come si apre l’editor SCL?

Page 8: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Come si apre l’editor SCL?

Page 9: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Come si apre l’editor SCL?

Page 10: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Differenze di editor tra Step7 V5.5 e Step7 V11

Page 11: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Ambiente di sviluppo

Finestra delcodice

Finestra per dichiarazione

interfacce

Finestra per informazioni generali del

blocco

Finestra personalizzabile

Page 12: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Dichiarazione interfacce

Definisce convenzioni per variabili e parametri

XXInOutParametri di ingresso/uscita

XXOutputParametri di uscita

XXInputParametri di ingresso

XStaticVariabili statiche

XXXTempVariabili temporanee

XReturnVariabile di ritorno

OBFCFBNomeDati

Page 13: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Dichiarazione interfacce

Vengono dichiarate come in tutti gli altri linguaggi di programmazione.

INTERFACCE BLOCCHI

TIA-SCL

Page 14: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Tipi di dati utilizzabili

Tipi di dati semplici:

Campo di valoribitParola ChiaveTipo

TOD#0:0:0.0 fino a TOD#23:59:59.99932TIME_OF_DAY / TODOra del giorno (a intervalli di 1ms)

D#1990-01-01 fino a D#2168-12-3116DATE / DData (a intervalli di 1 giorno)

+/- T#24D_20H_31M_23S_647MS32TIME / TDurata (a intervalli di 1ms)

T#0H_0M_0S_10MS / T#2H_46M_30S_0MS 16S5TIME / S5TTempo S5

+/- 3,4E+38 fino a +/- 1,17E-38 32REALVirgola mobile

-2.147.483.648 fino a -2.147.483.647 32DINTDoppio intero

-32.768 a 32.76716INTIntero

Set di caratteri ASCII8CHARCarattere singolo

32DWORDDoppia parola

16WORDParola

8BYTEByte

0/1 o FALSE/TRUE1BOOLBit

Page 15: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Tipi di dati utilizzabili

Tipi di dati composti:

Campo di valori / EsempibitParola ChiaveTipo

Es. Dati : STRUCTCorrente : REAL ;Tensione : INT := 5 ;

END_STRUCT ;

STRUCTStruttura

Es. ARRAY[1..3,1..4] OF INT:= -54, 736, -83, 77,-1289, 10362, 385, 2,

60, -37, -7, 103 ;ARRAYVettore/ matrice (max 6dim.)

Es. ‘stringa_caratteri’1 byte per carattere

STRINGStringa

DT#1990-01-01-0:0:0.0 fino a DT#2089-12-31-23:59:59.999

64DATE_AND_TIME

DTData e ora

Page 16: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Tipi di dati utilizzabili

Tipi di dati per parametri:

Si possono assegnare variabili di qualsiasi tipo (tranne ANY) ma solo se dichiarate.

6POINTERPuntatore ad area di memoria

Messaggio di allarme4C_Alarm_sAllarme

2BLOCK_FCBlocco FC

2BLOCK_DBBlocco DB

10ANYTipo qualsiasi

Informazioni ulterioribyteParola ChiaveTipo

2BLOCK_FBBlocco FB

Salvati in Z e utilizzati per funzioni di conteggio (S_CU, S_CD, S_CUD)

2COUNTERContatore (solo input)

Salvati in T e utilizzati per funzioni di temporizzazione(S_PULSE, S_PEXT, S_ODT, S_ODTS, S_OFFDT)

2TIMERTemporizzatore (solo input)

Page 17: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Conversione di tipi di dati

Page 18: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Conversione di tipi di dati

TIA-SCL

Esempio:

Page 19: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Codice di programmazione

Contiene istruzioni eseguite dopo il richiamo del blocco

Tutte le istruzioni terminano con un punto e virgola

Tutti gli identificatori utilizzati devono essere stati definiti in precedenza

Ogni istruzione può essere preceduta da una etichetta di salto

Page 20: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzioni - Accesso aree di memoria

AD(3):PPAD3AW(8):PPAW8AB(0):PPAB0Periferia d’uscita

ED(7):PPED7EW(5):PPEW5EB(2):PPEB2Periferia

d’ingresso

DB9.DD(7)%DB9.DD7

DB3.DW(0)%DB3.DW0

DB2.DB(5)%DB2.DB5

DB1.DX(2.3)DB

MD(14)MD14MW(0)MW0MB(4)MB4MX(1.5)M1.5Merker

AD(0)AD0AW(2)AW2AB(6)AB6AX(3.5)A3.5Uscite

ED(16)ED16EW(10)EW10EB(1)EB1EX(8,1)E8.1Ingressi

Double WordWordByteBit

Accesso tramite Tag (operandi simbolici) Accesso con operandi assoluti

Se utilizzo il codice contenuto nelle caselle arancioni, in automatico il TIA genera un Tag associato all’area di memoria puntata.

Page 21: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzioni - Accesso aree di memoria

Accesso indicizzato alle aree di memoria:EX ( #byteindex, #bitindex ) //Ingresso

MB ( #byteindex ) //Merker

AD ( #byteindex ) //Uscita

DB10.DX ( #byteindex, #bitindex ) //Un bit del DB10

DB11.DW ( #byteindex ) //Una word del DB11

WORD_TO_BLOCK_DB(#dbindex).DW(0) //Word0 di un DB

#block_dbindex.DX(3,5) //bit 3.5 di un DB

byteindex e bitindex di tipo INT o DINT dbindex di tipo WORD e block_dbindex di tipo BLOCK_DB

0 1 2 3E

Page 22: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzioni – Operazioni aritmetiche

Grandi vantaggi rispetto ad AWL e KOP: Esempio di operazione: MD28 = (a * b) + 5 * ( c / d )

AWL

L c

L d

/R

L 5.0

*R

T MD20

L a

L b

*R

T MD24

L MD20

L MD24

+R

T MD28

KOP

SCLMD(28) := (#a * #b) + 5 * ( #c / #d )

Page 23: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzioni – Assegnazione di valori

Esempio di assegnazione con variabili di tipo di dati semplici

Assegnazione variabile-variabile solo tra dati dello stesso tipo

Page 24: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzioni – Assegnazione di valori

Esempio di assegnazione con variabili di tipo ARRAY:

Anche qui posso usare l’accesso indicizzato.

Max 6 dimensioni

Page 25: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzioni di controllo

Istruzioni di selezione- Istruzione IF- Istruzione CASE

Istruzioni di elaborazione di loop- Istruzione FOR- Istruzione WHILE- Istruzione REPEAT

Istruzioni di salto di programma- Istruzione CONTINUE- Istruzione EXIT- Istruzione GOTO- Istruzione RETURN

Page 26: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione IF

La struttura dell’istruzione e’:

IF espressione THEN

operazione;

ELSIF espressione THEN

operazione;

ELSE

operazione;

END_IF;

Viene eseguita la prima sequenza di istruzioni con l’espressione logica uguale a TRUE

Se nessuna espressione e’ uguale a TRUE, vengono eseguite le operazioni dell’ELSE

Vi può essere un numero qualsiasi di istruzioni ELSIF.

Page 27: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione IF

ESEMPIO

Vengono passati in ingresso a una FC, 2 valori interi;

Se il primo è maggiore del secondo la funzione restituisce il valore di:primo valore - secondo valore

Se il secondo è maggiore del primo la funzione restituisce il valore di:secondo valore - primo valore

Altrimenti restituisce 0;

I valori vengono passati alla funzione tramite l’MW0 e l’MW2.Il risultato è salvato nell’MW4

Page 28: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione IF

Esempio di applicazione dell’istruzione IF:

Page 29: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione CASE

La struttura dell’istruzione e’:

CASE espressione OFvalore1 : operazioni;valore2 : operazioni;valore3 : operazioni;

ELSEoperazioni;

END_CASE ;

L’espressione deve fornire un valore di tipo INT;

Eseguita la lista di operazioni con valore uguale a quello fornito dall’espressione;

Se nessun valore e’ uguale a quello fornito dall’espressione vengono eseguite le operazioni dell’ELSE (opzionale).

Page 30: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione FOR

La struttura dell’istruzione e’:

FOR AssegnazioneIniziale TO ValoreFinale BY Passo DO

operazioni;

END_FOR ;

La variabile di esecuzione deve essere INT o DINT e i valori iniziali e finali devono essere dello stesso tipo di dati.

All’inizio del FOR la variabile di esecuzione viene inizializzata.

Operazioni ripetute finché la variabile di esecuzione si trova nel range di valori definito da ValoreIniziale e ValoreFinale

Ad ogni passo del loop la variabile di esecuzione viene incrementata o ridotta del valore del passo

Se l’ampiezza del passo viene omessa, la variabile di esecuzione viene incrementata di 1 ogni passo del loop.

Page 31: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione FOR

ESEMPIO

Realizzare un’FB che scrive un valore nei primi n elementi di un’array;

In ingresso vengono passati: - il valore da scrivere come variabile INT (MW0);- il numero di elementi da scrivere (MW2);

L’array è lungo 100 elementi ed è salvato nel DB di istanza dell’FB;

Page 32: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione FOR

Esempio di applicazione dell’istruzione FOR

Ogni esecuzione del FOR, il parametro index viene impostato sul valore iniziale

Page 33: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione WHILE

La struttura dell’istruzione e’:

WHILE Espressione DO

operazioni;

END_WHILE ;

Le operazioni vengono ripetute finche’ il valore dell’espressione e’ pari a TRUE.

Se l’espressione ha valore FALSE, il ciclo WHILE viene saltato.

L’espressione viene valutata all’inizio di ogni ciclo.

La variabile di esecuzione non viene inizializzata (diverso da FOR).

ATTENZIONE a non restare ‘intrappolati’ nel loop!!! -> CPU IN STOP!!!!

Page 34: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione REPEAT

La struttura dell’istruzione e’:

REPEAT

operazioni;

UNTIL espressione

END_REPEAT ;

Le operazioni vengono ripetute finche’ il valore dell’espressione e’ pari a TRUE.

L’espressione viene valutata alla fine di ogni ciclo

Page 35: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione CONTINUEEsempio di applicazione dell’istruzione CONTINUE

Page 36: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione EXIT

Esempio di applicazione dell’istruzione EXIT:

Page 37: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione GOTO

Con questa istruzione si esegue un salto di programma all’interno dello stesso blocco

Esempio di applicazione dell’istruzione GOTO:

Non e’ consentito eseguire un salto in un blocco di loop (WHILE, FOR e REPEAT)

Page 38: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzione RETURN

Se usato causa l’interruzione dell’esecuzione del blocco e il ritorno all’esecuzione del blocco chiamante.

OB1

----------

----------

----------

FC1()

----------

----------

----------

FC1

-------

-------

-------

RETURN

-------

-------

Richiamo FC1

Uscita da FC1

Page 39: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Vantaggi di gestione degli array

Esempio: Registrazione di temperature di un impianto di riscaldamento- array di 5 righe e 3 colonne;- nella prima colonna vengono memorizzate le temperature attuali nei diversi punti dell’impianto;- nella seconda colonna sono memorizzate le temperature minime fino a quel momento;- nell’ultima colonna sono memorizzate le temperature massime fino a quel momento.

25,5 °C18,2 °C21,3 °CTemp ambiente

80,0 °C58,6 °C64,7 °CTemp caldaia

40,0 °C26,1 °C32,3 °CTemp di ritorno

55,0 °C41,4 °C47,5 °CTemp di mandata

16,2 °C2,0 °C10,0 °CTemp esternaMassimaMinimaValore di misuraTemperatura

Page 40: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Vantaggi di gestione degli array

In SCL basta passare le nuove temperature a un FB ed eseguire l’aggiornamento dei valori della matrice:

25,5 °C18,2 °C21,3 °CTempambiente

80,0 °C58,6 °C64,7 °CTempcaldaia

40,0 °C26,1 °C32,3 °CTemp di ritorno

55,0 °C41,4 °C47,5 °CTemp di mandata

16,2 °C2,0 °C10,0 °CTempesterna

MassimaMinimaValore di misuraTemperatura

X = 1

X = 2

X = 3

X = 4

X = 0

Page 41: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Istruzioni - Richiamo di un FB

Nel richiamo di un FB e’ possibile assegnare dei valori agli ingressi e ingressi/uscite del bloccostesso

Gli FB possono essere richiamati come istanza globale o come istanza locale (multistanza)

La struttura del richiamo di un FB come istanza globale e’:

“DBx”.”FBx”(ing1 := value, //assegno ingressi

ing2 := value,

out => variable, //assegno uscite

in_out := variable //assegno ingressi-uscite

);

Non ha importanza l’ordine di assegnamento degli ingressi ma soltanto il tipo di dati utilizzato.

Page 42: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Parte istruzioni – Richiamo di un FC

Gli FC che hanno RET_VAL di tipo VOID vengono richiamati utilizzando la seguente struttura:

FCx (ing1 := value, //assegno ingressi

ing2 := value,

in_out := variabile2, //assegno ingressi-uscite

out => variabile3 //assegno uscita

);

Non e’ necessario uguagliare il richiamo ad una variabile

Page 43: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Funzionalità di test

Esistono diversi tipi di funzionalità di test per controllare l’esecuzione di un programma nella CPU e per localizzare probabili errori.

- Funzione ‘Controlla’.

- Test con i punti di arresto e modalità a passo singolo.

Page 44: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Funzionalità di test - Controlla

Con questa funzione è possibile visualizzare nell’editor S7-SCL i nomi e i valori attuali delle variabili. Durante l'esecuzione del test, i valori delle variabili e dei parametri di quest’area vengono visualizzati in sequenza cronologica e aggiornati ciclicamente.

Area di controllo

Se le variabili vengono eseguite ad ogni ciclo non e’ semplice distinguerne i valori.

Pulsante di controllo

Page 45: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Funzionalità di test – Punti di arresto

Per leggere e forzare i valori di stato bisogna utilizzare la VAT.

Navigazione tra i punti di

arresto

Page 46: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.Industry SectorVinci Orazio

Vantaggi di S7-SCL

Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di dati e ricette (piu’ semplice utilizzo degli ARRAY) Ottimizzazione del processo

Semplicità di comprensione dell’algoritmo.

Possibilità di integrazione con gli altri linguaggi.

Risparmio di tempo e, quindi, diminuzione di costi.

Page 47: TIA PORTAL-SCL PresentazioneSimaticLive ·  · 2011-12-20Vantaggi di S7-SCL Indicato per: Programmazione di algoritmi complessi Programmazione di funzioni matematiche Gestione di

© Siemens AG 2011. All Rights Reserved.

Grazie della Vostra attenzione!

Orazio VinciE-mail : [email protected]