Programmazione S7 PDF
Programmazione S7 PDF
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
SIMATIC
Avvio e utilizzo Preparazione e elaborazione del progetto Elaborazione di progetti con diverse versioni di STEP 7
Definizione di simboli
Creazione di sorgenti AWL Visualizzazione di dati di riferimento Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco Continuazione alla seguente pagina
Il presente manuale fa parte del pacchetto di documentazione con il numero di ordinazione: 6ES7810-4CA10-8EW0
05/2010
A5E02789669-01
A5E02789669-01 05/2010
Continuazione
Progettazione di messaggi
16 17 18 19 20 21 22 23 24 25 26 27
Servizio e supervisione
SIMATIC
Caricamento
Test con lo stato di programma Test con il programma di simulazione S7-PLCSIM (pacchetto opzionale)
Diagnostica
Appendice
Il presente manuale fa parte del pacchetto di documentazione con il numero di ordinazione: 6ES7810-4CA10-8EW0
05/2010
A5E02789669-01
Personale qualificato
Il prodotto/sistema oggetto di questa documentazione pu essere adoperato solo da personale qualificato per il rispettivo compito assegnato nel rispetto della documentazione relativa al compito, specialmente delle avvertenze di sicurezza e delle precauzioni in essa contenute. Il personale qualificato, in virt della sua formazione ed esperienza, in grado di riconoscere i rischi legati all'impiego di questi prodotti/sistemi e di evitare possibili pericoli.
Marchio di prodotto
Tutti i nomi di prodotto contrassegnati con sono marchi registrati della Siemens AG. Gli altri nomi di prodotto citati in questo manuale possono essere dei marchi il cui utilizzo da parte di terzi per i propri scopi pu violare i diritti dei proprietari.
Esclusione di responsabilit
Abbiamo controllato che il contenuto di questa documentazione corrisponda all'hardware e al software descritti. Non potendo comunque escludere eventuali differenze, non possiamo garantire una concordanza perfetta. Il contenuto di questa documentazione viene tuttavia verificato periodicamente e le eventuali correzioni o modifiche vengono inserite nelle successive edizioni.
Siemens AG Industry Sector Postfach 48 48 90026 NRNBERG GERMANIA A5E02789669-01 05/2010 Copyright Siemens AG 2010. Con riserva di eventuali modifiche tecniche
Prefazione
Obiettivi del manuale
Il presente manuale contiene una panoramica completa sulla programmazione con STEP 7. L'utente trova in esso un valido aiuto per l'installazione e la messa in servizio del software. Vengono altres chiarite le procedure per la creazione dei programmi, e spiegati gli elementi dei programmi utente. Il manuale destinato agli operatori che partecipano alla realizzazione di compiti di controllo con STEP 7 sulla base dei sistemi di automazione SIMATIC S7. consigliato leggere ed esercitarsi con gli esempi del manuale Getting Started "Primi passi ed esercitazioni con STEP 7, che offrono una facile introduzione alla tematica della "Programmazione con STEP 7.
Requisiti di base
Per la comprensione del manuale richiesta la conoscenza delle nozioni generali nel campo della tecnica di automazione. inoltre necessario disporre delle conoscenze operative sui computer o strumenti di lavoro simili ai PC (p. es. dispositivi di programmazione) in ambiente MS Windows XP, MS Windows Server 2003 o MS Windows 7.
La rubrica "Innovazioni" della Guida in linea offre un facile accesso e un quadro generale delle novit di STEP 7.
Prefazione
Scopo Conoscenze di base per la programmazione e la configurazione hardware con STEP 7 Guida di riferimento sensibile al contesto
Numero di ordinazione Parte del pacchetto software STEP 7 Parte del pacchetto software STEP 7
Guide di riferimento a AWL/KOP/FUP Guida di riferimento a SFB/SFC Guida di riferimento ai blocchi organizzativi
Prefazione
Guida in linea
Come completamento del manuale possibile avvalersi in fase operativa della dettagliata Guida in linea integrata nel software. Il sistema della Guida integrato nel software mediante differenti interfacce. Nel menu ? sono disponibili diversi comandi: Argomenti della Guida apre l'indice della Guida di STEP 7. Uso della Guida offre istruzioni dettagliate sulla possibilit di reperire informazioni nella Guida in linea. La Guida al contesto offre informazioni sul contesto attuale, p. es. su una finestra di dialogo aperta o su una finestra attiva. richiamabile con il pulsante "?" o con il tasto F1. Una forma ulteriore di Guida al contesto data dalla barra di stato: appena il cursore del mouse si trova su un comando viene visualizzata nella barra di stato una breve spiegazione. Una tale spiegazione viene riportata anche nella barra degli strumenti se il mouse si sofferma brevemente su una icona. Se si preferisce leggere le informazioni della Guida in linea su carta, sar possibile stampare dei singoli argomenti o libri della Guida, o perfino l'intera Guida. Il presente manuale nonch il manuale "Configurazione dell'hardware e progettazione di collegamenti STEP 7" costituisce un estratto della Guida di STEP 7 in formato HTML. Per istruzioni pi dettagliate, consultare la Guida di STEP 7. Manuali e Guida in linea presentano un'articolazione pressoch identica facilitando quindi il passaggio dall'uno all'altra. Per accedere ai manuali elettronici, dopo l'installazione di STEP 7, selezionare la barra di avvio Start > SIMATIC > Documentazione.
Prefazione
Ulteriore supporto
Per tutte le domande sull'uso dei prodotti descritti nel manuale, che non trovano risposta nella documentazione, rivolgersi al rappresentante Siemens locale. Sito Internet delle rappresentanze Siemens: http://www.siemens.com/automation/partner Per la guida alla documentazione tecnica dei singoli prodotti e sistemi SIMATIC, consultare il sito: http://www.siemens.com/simatic-tech-doku-portal Il catalogo in linea e il sistema di ordinazione in linea si trova al sito: http://mall.automation.siemens.com/
Centro di addestramento
Per facilitare l'approccio al sistema di automazione SIMATIC S7, la Siemens organizza corsi specifici. Rivolgersi a questo proposito al centro di addestramento locale pi vicino o al centro di addestramento centrale di Norimberga. Internet: http://www.sitrain.com
Prefazione
Technical Support
Per tutti i prodotti Industry Automation and Drive Technology possibile rivolgersi al Technical Support mediante il modulo Web per la Support Request http://www.siemens.com/automation/support-request
Per ulteriori informazioni sul Technical Support, consultare in Internet il sito http://www.siemens.com/automation/service
Prefazione
10
Indice
1 Presentazione del prodotto e installazione 1.1 1.2 1.3 1.4 1.4.1 1.4.2 1.4.3 2 23 Vademecum per STEP 7 .............................................................................................................23 Software di base STEP 7.............................................................................................................28 Novit della versione 5.5 di STEP 7 ............................................................................................33 Possibilit di ampliamento del software di base STEP 7.............................................................35 Engineering Tools ........................................................................................................................36 Runtime Software ........................................................................................................................38 Human Machine Interface............................................................................................................40 41
Installazione 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.2.2 2.2.3 2.3 2.4 2.4.1 2.4.2
Automation License Manager ......................................................................................................41 Concessione della licenza d'utilizzo mediante Automation License Manager.............................41 Installazione dell'Automation License Manager...........................................................................44 Regole per l'utilizzo delle chiavi di licenza ...................................................................................45 Installazione di STEP 7................................................................................................................46 Installazione di STEP 7................................................................................................................46 Come procedere nell'installazione ...............................................................................................48 Impostazione dell'interfaccia PG/PC............................................................................................51 Disinstallazione di STEP 7...........................................................................................................53 Diritti utente ..................................................................................................................................54 Diritti utente nel sistema operativo MS Windows XP/Server 2003 ..............................................54 Diritti utente nel sistema operativo MS Windows 7......................................................................55 57
Sviluppo di una soluzione di automazione 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9
Procedure di base per lo sviluppo di una soluzione di automazione...........................................57 Scomposizione del processo in compiti e settori .........................................................................58 Descrizione dei singoli settori funzionali ......................................................................................61 Elenco di ingressi, uscite e ingressi/uscite ..................................................................................63 Creazione di diagrammi di ingresso/uscita per i motori...............................................................64 Creazione di diagrammi di ingresso/uscita per le valvole............................................................65 Definizione dei requisiti di sicurezza............................................................................................66 Descrizione degli elementi di servizio e segnalazione ................................................................67 Creazione dello schema di configurazione ..................................................................................68 71
Nozioni per lo sviluppo di strutture di programma 4.1 4.2 4.2.1 4.2.2 4.2.3 4.2.3.1 4.2.3.2 4.2.3.3 4.2.3.4 4.2.3.5 4.2.3.6
Programmi in una CPU ................................................................................................................71 Blocchi nel programma utente .....................................................................................................72 Blocchi organizzativi e struttura di programma............................................................................73 Gerarchia di richiamo nel programma utente ..............................................................................79 Tipi di blocchi ...............................................................................................................................81 Blocco organizzativo per l'elaborazione ciclica del programma (OB 1).......................................81 Funzioni (FC) ...............................................................................................................................87 Blocchi funzionali (FB) .................................................................................................................89 Blocchi dati di istanza ..................................................................................................................92 Blocchi dati globali (DB)...............................................................................................................95 Blocchi funzionali di sistema (SFB) e funzioni di sistema (SFC) .................................................96
11
Avvio e utilizzo 5.1 5.2 5.3 5.4 5.4.1 5.4.2 5.4.3 5.4.4 5.4.5 5.4.6 5.4.7 5.4.8 5.4.9 5.5 5.5.1 5.5.2 5.5.3 5.5.4 5.5.5 5.5.6 5.5.7 5.5.8 5.6 5.6.1 5.6.2 5.6.3 5.6.4 5.6.5
Avvio di STEP 7 .........................................................................................................................111 Avvio di STEP 7 con parametri di avvio predefiniti ....................................................................112 Richiamo delle funzioni della Guida...........................................................................................114 Oggetti e loro gerarchia .............................................................................................................115 Oggetti e loro gerarchia .............................................................................................................115 Oggetto Progetto........................................................................................................................117 Oggetto Biblioteca......................................................................................................................119 Oggetto Stazione .......................................................................................................................120 Oggetto Unit programmabile....................................................................................................122 Oggetto Programma S7/M7 .......................................................................................................124 Oggetto Cartella per blocchi ......................................................................................................126 Oggetto Cartella per sorgenti.....................................................................................................130 Programmi S7/M7 senza stazione e CPU .................................................................................131 Superficie utente e suo utilizzo ..................................................................................................132 Principio di funzionamento.........................................................................................................132 Composizione della finestra.......................................................................................................133 Elementi delle finestre di dialogo ...............................................................................................134 Creazione e gestione degli oggetti ............................................................................................135 Selezione degli oggetti nelle finestre di dialogo.........................................................................141 Memoria della sessione di lavoro...............................................................................................142 Modifica dell'ordinamento delle finestre.....................................................................................142 Memorizzazione e ripristino dell'ordinamento delle finestre ......................................................143 Introduzioni con la tastiera .........................................................................................................144 Combinazione di tasti per i comandi di menu ............................................................................144 Combinazioni di tasti per lo spostamento del cursore ...............................................................146 Combinazione di tasti per selezionare testo ..............................................................................148 Combinazione di tasti per l'accesso alla Guida online...............................................................148 Combinazione di tasti per la commutazione tra diversi tipi di finestre .......................................149 151
Preparazione e elaborazione del progetto 6.1 6.2 6.3 6.4 6.5 6.6 6.6.1 6.6.2
Struttura del progetto .................................................................................................................151 Nozioni utili sulla protezione di accesso ....................................................................................153 Nozioni utili sul protocollo modifiche..........................................................................................156 Utilizzo dei set di caratteri stranieri ............................................................................................157 Impostazione della lingua in Windows.......................................................................................160 Creazione di progetti..................................................................................................................161 Inserimento di stazioni ...............................................................................................................163 Inserimento di un programma S7 / M7 ......................................................................................164
12
Indice
6.7 6.7.1 6.7.2 6.7.2.1 6.7.2.2 6.7.2.3 6.7.2.4 6.7.2.5 6.7.2.6 6.7.2.7 6.7.3 6.7.3.1 6.7.3.2 6.7.3.3 6.7.3.4 7
Modifica di progetti.....................................................................................................................166 Verifica dei pacchetti software utilizzati nel progetto .................................................................167 Gestione di testi in pi lingue .....................................................................................................167 Tipi di testo gestiti in pi lingue ..................................................................................................170 Configurazione del file di esportazione......................................................................................171 Gestione di testi utente in lingue che richiedono font non installati ...........................................173 Informazioni sul file di protocollo................................................................................................174 Ottimizzazione del modello per la traduzione ............................................................................175 Ottimizzazione del procedimento di traduzione .........................................................................176 Disattivazione di testi nelle lingue selezionate...........................................................................177 Micro Memory Card (MMC) come supporto dati........................................................................178 Nozioni utili sulle micro memory card (MMC) ............................................................................178 Utilizzo di Micro Memory Card come supporto dati ...................................................................180 File memory card .......................................................................................................................180 Memorizzazione di dati del progetto su Micro Memory Card (MMC) ........................................181 183
Elaborazione di progetti con diverse versioni di STEP 7 7.1.1 7.2 7.3 7.4 7.5
Modifica di progetti e biblioteche creati con la versione 2 .........................................................183 Ampliamento di slave DP creati con versioni precedenti di STEP 7 .........................................183 Modifica delle configurazioni attuali con versioni precedenti di STEP 7 ...................................185 Come utilizzare configurazioni PC SIMATIC create con versioni precedenti ............................186 Rappresentazione delle unit progettate con le nuove versioni di STEP 7 o con un pacchetto opzionale....................................................................................................................................188 191
Definizione di simboli 8.1 8.2 8.3 8.4 8.5 8.5.1 8.5.2 8.5.3 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.6.5 8.6.6 8.6.7
Indirizzamento assoluto e simbolico ..........................................................................................191 Simboli globali e locali................................................................................................................193 Rappresentazione di simboli globali o locali ..............................................................................194 Impostazione della preferenza operando (simbolico/assoluto) .................................................195 Tabella dei simboli per simboli globali .......................................................................................198 Struttura e componenti della tabella dei simboli ........................................................................198 Indirizzi e tipi di dati ammessi nella tabella dei simboli..............................................................201 Simboli incompleti e non univoci nella tabella dei simboli .........................................................202 Possibilit di immissione di simboli globali ................................................................................203 Cenni generici sull'introduzione di simboli .................................................................................203 Introduzione di simboli globali singoli nella finestra di dialogo ..................................................204 Introduzione di diversi simboli globali nella tabella dei simboli..................................................205 Maiuscolo/minuscolo nei simboli................................................................................................206 Esportazione ed importazione delle tabelle dei simboli .............................................................208 Formati di file per importazione/esportazione di tabelle dei simboli ..........................................209 Modifica di aree delle tabelle dei simboli ...................................................................................212 213
Creazione di blocchi e biblioteche 9.1 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.2.5 9.2.6 9.2.7
Metodi di creazione del programma ..........................................................................................213 Scelta del linguaggio di programmazione..................................................................................214 Linguaggio di programmazione KOP (schema a contatti) .........................................................216 Linguaggio di programmazione FUP (schema logico)...............................................................217 Linguaggio di programmazione AWL (lista istruzioni) ...............................................................218 Linguaggio di programmazione S7-SCL....................................................................................219 Linguaggio di programmazione S7-GRAPH (comando sequenziale) .......................................220 Linguaggio di programmazione S7-HiGraph (diagramma di stato) ...........................................221 Linguaggio di programmazione S7-CFC ...................................................................................223
13
Creazione di blocchi di codice 10.1 10.1.1 10.1.2 10.1.3 10.1.4 10.1.5 10.2 10.2.1 10.2.2 10.2.3 10.3 10.3.1 10.3.2 10.3.3 10.4 10.4.1 10.4.2 10.4.3 10.4.4 10.4.5 10.4.6 10.4.7 10.5 10.5.1 10.5.2 10.5.3 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.8 10.8.1 10.9
Regole di base per creare blocchi di codice ..............................................................................237 Struttura della finestra dell'editor di programma ........................................................................237 Procedura fondamentale per la creazione di blocchi di codice .................................................239 Preimpostazioni per l'editor di programma KOP/FUP/AWL.......................................................240 Diritti di accesso a blocchi e sorgenti.........................................................................................240 Istruzioni nella scheda degli elementi di programma.................................................................241 Editazione della dichiarazione delle variabili .............................................................................242 Uso della dichiarazione delle variabili nei blocchi di codice ......................................................242 Rapporti tra dichiarazione delle variabili e parte istruzioni ........................................................243 Struttura della finestra di dichiarazione delle variabili................................................................244 Multiistanze nella dichiarazione delle variabili ...........................................................................245 Uso di multiistanze.....................................................................................................................245 Regole per la creazione di multiistanze .....................................................................................246 Introduzione delle multiistanze nella finestra di dichiarazione delle variabili.............................246 Avvertenze generali sull'introduzione di istruzioni e commenti..................................................247 Configurazione della parte istruzioni..........................................................................................247 Modo di procedere per introdurre le istruzioni ...........................................................................248 Introduzione di simboli globali in un programma .......................................................................248 Titoli e commenti di blocchi e segmenti .....................................................................................249 Introduzione dei commenti al blocco/segmento.........................................................................251 Come lavorare con i modelli di segmenti...................................................................................251 Funzione di ricerca errori nella parte istruzioni ..........................................................................252 Editazione di istruzioni KOP nella parte istruzioni .....................................................................253 Impostazioni per il linguaggio di programmazione KOP............................................................253 Regole per l'introduzione di istruzioni in KOP............................................................................254 Connessioni non ammesse in KOP ...........................................................................................256 Editazione di istruzioni FUP nella parte istruzioni......................................................................257 Impostazioni per il linguaggio di programmazione FUP ............................................................257 Regole per l'introduzione di istruzioni FUP ................................................................................258 Editazione di istruzioni AWL nella parte istruzioni .....................................................................260 Impostazioni per il linguaggio di programmazione AWL............................................................260 Regole per l'introduzione di istruzioni AWL ...............................................................................260 Aggiornamento di richiami di blocchi .........................................................................................261 Modifica di interfacce .................................................................................................................262 Salvataggio di blocchi di codice .................................................................................................263
14
Indice
11
Creazione di blocchi dati 11.1 11.2 11.3 11.4 11.4.1 11.4.2 11.4.3 11.4.4 11.4.5 11.4.6 11.4.7
265
Nozioni fondamentali per la creazione di blocchi dati................................................................265 Vista di dichiarazione dei blocchi dati ........................................................................................266 Vista di dati dei blocchi dati........................................................................................................267 Come editare i blocchi dati e salvarli .........................................................................................268 Introduzione della struttura dati di blocchi dati globali ...............................................................268 Introduzione / visualizzazione della struttura dati dei blocchi dati con FB assegnato (DB di istanza)............................................................................................................................269 Introduzione della struttura di tipi di dati definiti dall'utente (UDT) ............................................271 Introduzione / Visualizzazione della struttura di blocchi dati con UDT assegnato ....................272 Modifica dei valori di dati nella vista di dati................................................................................273 Reset di valori di dati ai valori iniziali .........................................................................................273 Salvataggio di blocchi dati .........................................................................................................274 275
12
13
Creazione di sorgenti AWL 13.1 13.2 13.2.1 13.2.2 13.2.3 13.2.4 13.2.5 13.2.6 13.3 13.3.1 13.3.2 13.3.3 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.5 13.5.1 13.5.2 13.5.3 13.5.4 13.5.5 13.5.6 13.5.7 13.5.8 13.5.9 13.5.10 13.6 13.6.1 13.6.2 13.6.3 13.6.4
Fondamenti della programmazione in sorgenti AWL.................................................................277 Regole per la programmazione in sorgenti AWL .......................................................................278 Regole per l'introduzione di istruzioni in sorgenti AWL..............................................................278 Regole per la dichiarazione di variabili nelle sorgenti AWL.......................................................279 Regole per la sequenza dei blocchi nelle sorgenti AWL ...........................................................280 Regole per la definizione di attributi di sistema in sorgenti AWL...............................................280 Regole per la definizione delle propriet del blocco in sorgenti AWL........................................281 Propriet ammesse dei blocchi per tipo di blocco .....................................................................283 Struttura dei blocchi in sorgenti AWL.........................................................................................284 Struttura dei blocchi di codice in sorgenti AWL .........................................................................284 Struttura dei blocchi dati in sorgenti AWL..................................................................................285 Struttura dei tipi di dati definiti dall'utente nelle sorgenti AWL ...................................................285 Sintassi e formati di blocchi in sorgenti AWL.............................................................................286 Tabella dei formati degli OB.......................................................................................................286 Tabella dei formati degli FB .......................................................................................................287 Tabella dei formati delle FC .......................................................................................................288 Tabella dei formati dei DB..........................................................................................................289 Creazione di sorgenti AWL ........................................................................................................290 Creazione di sorgenti AWL ........................................................................................................290 Modifica dei file sorgente S7......................................................................................................290 Definizione del layout per il testo sorgente ................................................................................291 Inserimento di modelli di blocco in sorgenti AWL ......................................................................291 Inserimento del contenuto di altre sorgenti AWL .......................................................................291 Inserimento del codice sorgente di blocchi presenti in sorgenti AWL .......................................292 Inserimento di file sorgente esterni............................................................................................292 Generazione di sorgenti AWL dai blocchi..................................................................................293 Importazione di sorgenti.............................................................................................................293 Esportazione di sorgenti ............................................................................................................294 Salvataggio, compilazione e verifica coerenza delle sorgenti AWL ..........................................295 Salvataggio delle sorgenti AWL .................................................................................................295 Verifica della coerenza delle sorgenti AWL ...............................................................................295 Ricerca degli errori nelle sorgenti AWL .....................................................................................295 Compilazione delle sorgenti AWL ..............................................................................................296
15
Visualizzazione di dati di riferimento 14.1 14.1.1 14.1.2 14.1.3 14.1.4 14.1.5 14.1.6 14.2 14.2.1 14.2.2 14.2.3 14.2.4 14.2.5
Sommario dei dati di riferimento possibili ..................................................................................307 Elenco dei riferimenti incrociati ..................................................................................................309 Struttura del programma ............................................................................................................310 Tabella di occupazione ..............................................................................................................312 Simboli non utilizzati ..................................................................................................................314 Operandi senza simbolo ............................................................................................................315 Visualizzazione di informazioni sul blocco in KOP, FUP, AWL .................................................315 Operare con i dati di riferimento.................................................................................................316 Possibilit di visualizzazione di dati di riferimento .....................................................................316 Visualizzazione di elenchi in finestre di lavoro addizionali ........................................................316 Creazione e visualizzazione di dati di riferimento......................................................................317 Posizionamento veloce sui punti di applicazione del programma .............................................318 Esempio di impiego dei punti di applicazione ............................................................................319 323
15
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco 15.1 15.2 15.3 15.4 15.5 15.6 15.7 15.8
Verifica della coerenza dei blocchi ............................................................................................323 Registrazione di data e ora nelle propriet del blocco e conflitti ...............................................325 Registrazione di data e ora in blocchi di codice.........................................................................326 Registrazione di data e ora in blocchi dati globali......................................................................327 Registrazione di data e ora in blocchi dati di istanza.................................................................327 Registrazione di data e ora negli UDT e nei DB derivati dagli UTD ..........................................328 Correzione delle interfacce in FC, FB e UDT ............................................................................328 Esclusione degli errori tramite il richiamo di blocchi ..................................................................329 331
16
Progettazione di messaggi 16.1 16.1.1 16.1.2 16.1.3 16.1.4 16.1.5 16.1.6 16.1.7 16.1.8 16.1.9 16.1.10 16.1.11 16.2 16.2.1 16.2.2 16.2.2.1 16.2.2.2 16.2.3 16.2.3.1 16.2.4
Principi del sistema di messaggi................................................................................................331 Procedure per la preparazione di messaggi ..............................................................................331 Scelta della modalit di creazione dei messaggi .......................................................................333 Componenti SIMATIC ................................................................................................................335 Componenti di un messaggio ....................................................................................................336 Tipi di blocchi segnalazioni ........................................................................................................337 Parametri formali, attributi di sistema e blocchi segnalazioni ....................................................339 Modello di messaggio e messaggi.............................................................................................340 Creazione di sorgenti AWL da blocchi di segnalazione.............................................................342 Assegnazione di numeri di messaggio ......................................................................................342 Differenze tra assegnazione dei numeri di messaggio per tutto il progetto e per tutta la CPU.343 Possibilit di modificare l'assegnazione di numeri ai messaggi di un progetto .........................344 Progettazione di messaggi per tutto il progetto .........................................................................345 Assegnazione di numeri di messaggio per tutto il progetto .......................................................345 Assegnazione e modifica di messaggi riferiti ai blocchi.............................................................345 Creazione di messaggi riferiti ai blocchi (per tutto il progetto)...................................................346 Modifica di messaggi riferiti ai blocchi (per tutto il progetto)......................................................349 Assegnazione e modifica di messaggi riferiti ai simboli.............................................................351 Assegnazione e modifica dei messaggi riferiti ai simboli (per tutto il progetto) .........................351 Creazione e modifica di messaggi di diagnostica personalizzati...............................................352
16
Indice
16.3 16.3.1 16.3.2 16.3.3 16.3.3.1 16.3.3.2 16.3.3 16.3.3.1 16.3.4 16.4 16.4.1 16.4.2 16.4.3 16.5 16.5.1 16.6 16.6.1 16.6.2 16.6.3 16.6.4 16.6.5 16.7 16.7.1 16.8 16.8.1 16.8.2 16.9 16.9.1 16.9.2 16.9.3 16.9.4 16.9.5 16.9.6 16.9.7 16.9.8 16.9.9 17
Progettazione di messaggi per tutta la CPU..............................................................................353 Assegnazione di numeri di messaggio per tutta la CPU ...........................................................353 Assegnazione e modifica di messaggi riferiti ai blocchi.............................................................353 Assegnazione e modifica di messaggi riferiti ai blocchi.............................................................354 Creazione di messaggi riferiti ai blocchi (per tutta la CPU) .......................................................354 Progettazione di messaggi PCS7 (per tutta la CPU) .................................................................357 Assegnazione e modifica di messaggi riferiti ai simboli.............................................................358 Assegnazione e modifica dei messaggi riferiti ai simboli (per tutta la CPU) .............................358 Creazione e modifica di messaggi di diagnostica personalizzati...............................................359 Suggerimenti per la modifica dei messaggi ...............................................................................360 Inserimento di variabili nei messaggi.........................................................................................360 Integrazione di testi delle biblioteche nei messaggi...................................................................363 Cancellazione di variabili ...........................................................................................................363 Traduzione e modifica di testi rilevanti per l'utente....................................................................364 Traduzione e modifica di testi utente .........................................................................................364 Traduzione e modifica di biblioteche di testi ..............................................................................366 Biblioteche di testi utente ...........................................................................................................366 Creazione di biblioteche di testi utente ......................................................................................366 Come modificare le biblioteche di testi utente ...........................................................................367 Biblioteche di testi di sistema.....................................................................................................367 Traduzione di biblioteche di testi................................................................................................368 Trasferimento dei dati di progettazione nel sistema di destinazione .........................................370 Trasferimento dei dati di progettazione nel sistema di destinazione .........................................370 Visualizzazione di messaggi CPU e di messaggi di diagnostica personalizzati........................371 Configurazione di messaggi CPU ..............................................................................................374 Visualizzazione di messaggi della CPU registrati......................................................................374 Progettazione di 'Segnalazione di errori di sistema' ..................................................................375 Panoramica dell'applicazione 'Segnalazione errori di sistema' .................................................375 Progettazione dell'applicazione 'Segnalazione errori di sistema' ..............................................375 Componenti supportati e insieme delle funzioni ........................................................................377 Impostazioni per la segnalazione di errori di sistema ................................................................382 Creazione di blocchi per la segnalazione di errori di sistema....................................................383 OB di errore creati......................................................................................................................384 Blocchi creati..............................................................................................................................386 Assegnazione di errori di sistema alla classe di errore .............................................................388 Creazione di testi dei messaggi in lingua straniera in 'Segnala errori di sistema' .....................391 393
Progettazione di variabili con servizio e supervisione ...............................................................393 Progettazione di attributi SeS con AWL, KOP e FUP................................................................395 Progettazione degli attributi SeS con la tabella dei simboli .......................................................396 Modifica di attributi SeS con CFC ..............................................................................................397 Trasferimento dei dati di progettazione nel sistema di destinazione SeS .................................398
17
18
Attivazione del collegamento online e impostazione della CPU 18.1 18.1.1 18.1.2 18.1.3 18.1.4 18.1.5 18.2 18.2.1 18.3 18.3.1 18.4 18.4.1
399
Attivazione di collegamenti online..............................................................................................399 Attivazione del collegamento online con la finestra "Nodi accessibili" ......................................399 Attivazione del collegamento online mediante finestra online del progetto...............................400 Accesso online a sistemi di destinazione nei multiprogetti........................................................401 Protezione password per l'accesso ai sistemi di destinazione ..................................................403 Nota sull'aggiornamento del contenuto della finestra ................................................................405 Visualizzazione e modifica dello stato di funzionamento...........................................................406 Visualizzazione e modifica dello stato di funzionamento...........................................................406 Visualizzazione e impostazione di data e ora............................................................................407 Orologio della CPU ed impostazione del fuso orario e dell'ora legale/solare............................407 Aggiornamento del firmware ......................................................................................................409 Aggiornamento online del firmware di unit e moduli ................................................................409 413
19
Caricamento 19.1 19.1.1 19.1.2 19.1.3 19.1.4 19.1.5 19.1.6 19.1.6.1 19.1.6.2 19.1.6.3 19.1.6.4 19.1.6.5 19.2 19.2.1 19.2.2 19.3 19.3.1 19.3.2 19.3.3 19.3.3.1 19.3.3.2 19.4 19.4.1 19.4.2 19.5 19.5.1 19.5.2
Caricamento dal PG nel sistema di destinazione ......................................................................413 Presupposti per il caricamento...................................................................................................413 Differenza tra salvataggio e caricamento dei blocchi ................................................................415 Memoria di caricamento e di lavoro della CPU..........................................................................416 Possibilit di caricamento dipendenti dalla memoria di caricamento ........................................418 Aggiornamento online del firmware di unit e moduli ................................................................419 Caricamento del programma nella CPU S7...............................................................................422 Caricamento con la gestione del progetto .................................................................................422 Caricamento senza gestione del progetto .................................................................................422 Ricaricamento di blocchi nel sistema di destinazione ...............................................................422 Salvataggio di blocchi caricati in EPROM integrata...................................................................423 Caricamento mediante memory card EPROM ..........................................................................424 Compilazione e caricamento di pi oggetti dal PG ....................................................................425 Presupposti e istruzioni per il caricamento ................................................................................425 Compilazione e caricamento di oggetti......................................................................................427 Caricamento dal sistema di destinazione nel PG ......................................................................429 Caricamento della stazione nel PG ...........................................................................................431 Ricaricamento di blocchi dalla CPU S7 .....................................................................................432 Modifica di blocchi caricati nel PG/PC .......................................................................................432 Modifica di blocchi caricati se il programma utente esiste nel PG/PC.......................................433 Modifica di blocchi caricati se il programma utente non esiste nel PG/PC ...............................433 Cancellazione nel sistema di destinazione ................................................................................434 Cancellazione della memoria di caricamento/di lavoro e cancellazione totale della CPU ........434 Cancellazione nel sistema di destinazione ................................................................................435 Compressione della memoria utente (RAM)..............................................................................436 Creazione di spazi vuoti nella memoria utente (RAM)...............................................................436 Compressione dei contenuti della memoria di CPU S7.............................................................437
18
Indice
20
Test con la tabella delle variabili 20.1 20.2 20.3 20.3.1 20.3.1.1 20.3.2 20.3.3 20.4 20.4.1 20.4.2 20.4.3 20.4.4 20.4.5 20.4.6 20.4.7 20.4.8 20.4.9 20.4.10 20.5 20.6 20.6.1 20.6.2 20.7 20.7.1 20.7.2 20.8 20.8.1 20.8.2 20.8.3
439
Introduzione al test con la tabella delle variabili ........................................................................439 Fondamenti per controllo e comando con la tabella delle variabili ............................................440 Editazione e salvataggio di tabelle delle variabili.......................................................................441 Creazione e apertura di tabelle delle variabili............................................................................441 Istruzioni per la creazione e apertura di tabelle delle variabili ...................................................442 Copia/Spostamento delle tabelle delle variabili .........................................................................443 Salvataggio di una tabella delle variabili....................................................................................443 Introduzione di variabili nelle tabelle delle variabili ....................................................................444 Inserimento di operandi e simboli in una tabella delle variabili..................................................444 Inserimento di un'area di operandi contigui in una tabella delle variabili...................................446 Inserimento di valori di comando ...............................................................................................446 Limiti superiori per l'introduzione di temporizzatori....................................................................447 Limiti superiori per l'introduzione di contatori.............................................................................448 Inserimento di righe di commento..............................................................................................449 Esempi .......................................................................................................................................449 Esempio di introduzione di operandi nella tabella delle variabili ...............................................449 Esempio di introduzione di un'area di operandi contigui ...........................................................450 Esempi di introduzione di valori di comando/di forzamento ......................................................451 Creazione di un collegamento con una CPU.............................................................................453 Controllo di variabili....................................................................................................................454 Introduzione al controllo di variabili............................................................................................454 Definizione del trigger per il controllo di variabili........................................................................454 Comando di variabili ..................................................................................................................456 Introduzione al comando di variabili ..........................................................................................456 Definizione del trigger per il comando di variabili ......................................................................457 Forzamento di variabili...............................................................................................................459 Misure di sicurezza per il forzamento di variabili .......................................................................459 Introduzione al forzamento di variabili .......................................................................................460 Differenze tra il forzamento e il comando di variabili .................................................................462 463
21
Test con lo stato di programma 21.1 21.2 21.3 21.4 21.4.1 21.5
Visualizzazione nello stato del programma ...............................................................................464 Informazioni sull'esecuzione del test nel modo passo singolo / punti d'arresto ........................466 Informazioni sullo stato di funzionamento Alt ............................................................................468 Stato di programma dei blocchi dati ..........................................................................................469 Definizione della visualizzazione per lo stato di programma .....................................................470 Definizione del modo operativo per il test..................................................................................471 473
22
19
23
Diagnostica 23.1 23.2 23.3 23.3.1 23.3.2 23.4 23.4.1 23.4.2 23.5 23.5.1 23.5.2 23.5.3 23.5.4
475
Diagnostica hardware e ricerca di errori ....................................................................................475 Simboli di diagnostica nella visualizzazione online....................................................................477 Diagnostica dell'hardware: informazioni rapide .........................................................................479 Richiamo delle informazioni rapide ............................................................................................479 Funzioni delle informazioni rapide .............................................................................................479 Diagnostica dell'hardware: finestra di diagnostica.....................................................................480 Richiamo della finestra di diagnostica della configurazione HW ...............................................480 Funzioni della finestra di diagnostica.........................................................................................482 Stato dell'unit............................................................................................................................483 Possibilit di richiamo dello stato dell'unit................................................................................483 Funzioni di informazione dello stato dell'unit ...........................................................................484 Volume delle funzioni di informazione a seconda del tipo di unit ............................................487 Visualizzazione dello stato delle unit per le apparecchiature da campo PA e gli slave DP dopo un Y Link ....................................................................................................489 23.6 Diagnostica nello stato di funzionamento STOP .......................................................................491 23.6.1 Procedura fondamentale per il rilevamento di una causa di STOP...........................................491 23.6.2 Contenuti dello stack nello stato di funzionamento STOP.........................................................492 23.7 Controllo dei tempi di ciclo per evitare errori temporali .............................................................493 23.8 Invio di informazioni di diagnostica ............................................................................................494 23.8.1 Lista di stato del sistema............................................................................................................495 23.8.2 Invio di messaggi di diagnostica definiti dall'utente ...................................................................498 23.8.3 Funzioni di diagnostica ..............................................................................................................499 23.9 Misure nel programma per la gestione di errori .........................................................................500 23.9.1 Analisi del parametro di uscita RET_VAL..................................................................................501 23.9.2 OB di errore come reazione al rilevamento di errori ..................................................................502 23.9.3 Inserimento di valori sostitutivi per il riconoscimento errori .......................................................507 23.9.4 Errore di periferia ridondata (OB 70) .........................................................................................509 23.9.5 Errore di CPU ridondata (OB 72) ...............................................................................................510 23.9.6 Errore di tempo (OB 80).............................................................................................................511 23.9.7 Errore alimentatore (OB 81).......................................................................................................512 23.9.8 Allarme di diagnostica (OB 82) ..................................................................................................513 23.9.9 Allarme di estrazione/inserimento (OB 83) ................................................................................514 23.9.10 Errore hardware CPU (OB 84)...................................................................................................515 23.9.11 Errore di esecuzione programma (OB 85).................................................................................516 23.9.12 Guasto al telaio (OB 86) ............................................................................................................517 23.9.13 Errore di comunicazione (OB 87)...............................................................................................518 23.9.14 Errore di programmazione (OB 121) .........................................................................................519 23.9.15 Errore di accesso alla periferia (OB 122)...................................................................................520 23.10 Diagnostica di sistema con 'Segnalazione errori di sistema' .....................................................521 23.10.1 Visualizzazione grafica degli eventi di diagnostica ....................................................................521 23.10.2 Stato della diagnostica...............................................................................................................521 23.10.2.1 Panoramica dello stato della diagnostica ..................................................................................521 23.10.2.2 Stato della diagnostica PROFIBUS ...........................................................................................521 23.10.2.3 Esempio di un DB 125 con uno slave DP..................................................................................524 23.10.2.4 Esempio di richiesta DB PROFIBUS DP ...................................................................................524 23.10.2.5 Stato della diagnostica PROFINET ...........................................................................................526 23.10.2.6 Esempio di un DB 126 con un sistema IO 100 e con i Device con dispositivi 2, 3 e 4..............529 23.10.2.7 Esempio di richiesta DB PROFINET IO.....................................................................................530 23.10.2.8 DB di stato della diagnostica......................................................................................................531 23.10.2.9 Esempio di richiesta di DB di stato della diagnostica ................................................................535 23.10.2.10 Importazione di testi informativi e testi di errore ...............................................................538
20
Indice
24
Stampa e archiviazione 24.1 24.1.1 24.1.2 24.1.3 24.2 24.2.1 24.2.2 24.2.3
539
Stampa della documentazione di progetto ................................................................................539 Procedura fondamentale per la stampa.....................................................................................540 Funzioni di stampa.....................................................................................................................540 Particolarit della stampa di alberi di oggetti .............................................................................541 Archiviazione di progetti e biblioteche .......................................................................................542 Casi applicativi di salvataggio / archiviazione............................................................................543 Presupposti per l'archiviazione ..................................................................................................544 Procedimento di archiviazione/disarchiviazione ........................................................................544 545
25
Presentazione dei sistemi M7 ....................................................................................................545 Software opzionale per la programmazione M7 ........................................................................547 Sistemi operativi per M7-300/400 ..............................................................................................549 551
26
Suggerimenti e consigli pratici 26.1 26.2 26.3 26.4 26.5 26.6 26.7
Sostituzione delle unit nella tabella di configurazione .............................................................551 Progetti con un numero elevato di stazioni collegate in rete .....................................................551 Riorganizzazione .......................................................................................................................552 Modifica di simboli in pi segmenti ............................................................................................552 Test con la tabella delle variabili ................................................................................................553 Comando di variabili dall'editor di programma...........................................................................554 Memoria di lavoro virtuale..........................................................................................................555 557
27
Appendice
27.1 Stati di funzionamento ...............................................................................................................557 27.1.1 Stati di funzionamento e loro transizioni ....................................................................................557 27.1.2 Stato di funzionamento STOP ...................................................................................................560 27.1.3 Stato di funzionamento AVVIAMENTO .....................................................................................561 27.1.4 Stato di funzionamento RUN .....................................................................................................569 27.1.5 Stato di funzionamento ALT.......................................................................................................570 27.2 Aree di memoria delle CPU S7 ..................................................................................................571 27.2.1 Ripartizione delle aree di memoria ............................................................................................571 27.2.2 Memoria di caricamento e di lavoro...........................................................................................572 27.2.3 Memoria di sistema....................................................................................................................574 27.2.3.1 Uso delle aree di memoria di sistema........................................................................................574 27.2.3.2 Immagine di processo di ingressi/uscite ....................................................................................577 27.2.3.3 Stack di dati locali ......................................................................................................................581 27.2.3.4 Stack di interruzione ..................................................................................................................582 27.2.3.5 Stack di blocchi ..........................................................................................................................583 27.2.3.6 Buffer di diagnostica ..................................................................................................................584 27.2.3.7 Analisi del buffer di diagnostica .................................................................................................584 27.2.3.8 Aree di memoria a ritenzione nelle CPU S7-300 .......................................................................586 27.2.3.9 Aree di memoria a ritenzione nelle CPU S7-400 .......................................................................587 27.2.3.10 Oggetti di salvataggio configurabili nella memoria di lavoro......................................................588 27.3 Tipi di dati e parametri ...............................................................................................................589 27.3.1 Introduzione a tipi di dati e parametri.........................................................................................589 27.3.2 Tipi di dati semplici.....................................................................................................................590 27.3.2.1 Formato del tipo di dati INT (numeri interi a 16 bit) ...................................................................592 27.3.2.2 Formato del tipo di dati DINT (numeri interi a 32 bit).................................................................592 27.3.2.3 Formato del tipo di dati REAL (numeri in virgola mobile) ..........................................................593 27.3.2.4 Formato dei tipi di dati WORD e DWORD in codice binario......................................................597 27.3.2.5 Formato del tipo di dati S5TIME (durata)...................................................................................598
21
22
1
1.1
Cos' STEP 7?
STEP 7 il pacchetto di base utilizzato per configurare e programmare i sistemi di automazione SIMATIC. Esso rappresenta parte integrante del software industriale SIMATIC. Del pacchetto base STEP 7 esistono le seguenti versioni. STEP 7-Micro/DOS e STEP 7-Micro/Win per applicazioni semplici stand-alone in ambiente SIMATIC S7-200 STEP 7 per applicazioni in SIMATIC S7-300/400, SIMATIC M7-300/400 e SIMATIC C7 con un volume di funzioni supplementari: opzionalmente estensibile con il software industriale SIMATIC (vedere anche Possibilit di ampliamento del software di base STEP 7) possibilit di parametrizzare le unit funzionali e le unit di comunicazione forzamento e funzionamento multicomputing comunicazione di dati globali trasferimento dati comandato da eventi con blocchi di comunicazione e funzionali progettazione di collegamenti.
STEP 7 l'argomento di questa documentazione, STEP 7-Micro e STEP 7 Lite vengono descritti nella documentazione specifica.
Compiti di base
Nel realizzare una soluzione di automazione nell'ambito di STEP 7 occorre prima di tutto eseguire dei compiti di base. La figura seguente riporta i compiti da eseguire nella maggior parte dei progetti, ordinandoli in una procedura di massima in forma di vademecum. Vengono indicati i rispettivi capitoli, dando all'utente la possibilit di spostarsi nel manuale a seconda delle specifiche esigenze.
23
24
25
Creazione del programma Con uno dei linguaggi di programmazione disponibili, l'utente crea un programma assegnato a unit o indipendente dalle unit, e lo salva sotto forma di blocchi, sorgenti o schemi (vedere anche Procedura fondamentale per la creazione di blocchi di codice e Fondamenti della programmazione in sorgenti AWL). Solo per S7: creazione e analisi di dati di riferimento Servendosi dei dati di riferimento si possono facilitare le operazioni di test e di modifica del programma utente (vedere anche Sommario dei dati di riferimento possibili). Progettazione dei messaggi Si possono p. es. creare messaggi riferiti ai blocchi con i relativi testi e attributi. I dati di progettazione dei messaggi cos creati vengono quindi trasferiti con il programma di trasferimento nella base di dati del sistema di servizio e supervisione (p. es. SIMATIC WinCC, SIMATIC ProTool), vedere anche Progettazione di messaggi. Progettazione di variabili S+S Le variabili S+S vengono create un volta in STEP 7 e corredate degli attributi desiderati. Con il programma di trasferimento le variabili S+S create vengono poi trasferite nella base di dati del sistema di servizio e supervisione WinCC (vedere anche Progettazione di variabili con servizio e supervisione). Caricamento dei programmi nel sistema di destinazione Solo S7: dopo aver terminato la configurazione, la parametrizzazione e la creazione del programma, possibile trasferire il programma utente completo o i suoi singoli blocchi nel sistema di destinazione (unit programmabile della soluzione hardware decisa dall'utente; vedere anche Presupposti per il caricamento). La CPU contiene gi il sistema operativo. Solo M7: si sceglie tra diversi sistemi operativi quello adeguato alla propria soluzione di automazione, trasferendolo quindi singolarmente o insieme con il programma utente nel supporto dati desiderato del sistema di destinazione M7. Test dei programmi Solo S7: a fini di test si ha la possibilit di visualizzare i valori delle variabili dal programma utente o da una CPU, assegnare valori alle variabili, e creare una tabella delle variabili per le variabili che si intende visualizzare o comandare (vedere anche Introduzione al test con la tabella delle variabili). Solo M7: test del programma utente con un debugger di linguaggi avanzati. Controllo operativo, diagnostica dell'hardware Per rilevare la causa di avarie nelle unit occorre visualizzare le informazioni online su un'unit. La causa dell'errore nell'esecuzione del programma utente rilevabile con l'ausilio del buffer di diagnostica e dei contenuti dello stack. possibile inoltre verificare se il programma utente eseguibile su una determinata CPU (vedere anche Diagnostica hardware e ricerca di errori). Documentazione dell'impianto Dopo aver creato un progetto/un impianto consigliabile documentare in modo chiaro i dati di progetto, per agevolare la modifica ulteriore del progetto nonch i lavori di manutenzione (vedere anche Stampa della documentazione di progetto). DOCPRO, il pacchetto opzionale per la creazione e la gestione della documentazione dell'impianto, permette la strutturazione dei dati di progetto, la preparazione in forma di schemi circuitali e la stampa in modo da offrire una resa grafica complessiva.
26
27
1.2
Standard utilizzati
I linguaggi di programmazione SIMATIC integrati in STEP 7 soddisfano la norma DIN EN 6.1131-3. Il software di base gira sui sistemi operativi MS Windows 2000 Professional (qui di seguito Windows 2000) nonch MS Windows XP Professional (qui di seguito Windows XP) nonch MS Windows Server 2003 nonch MS Windows 7 Business, Ultimate ed Enterprise ed compatibile con la loro operativit grafica e orientata agli oggetti.
L'interfaccia utente del software STEP 7 stata ideata secondo moderni principi ergonomici, e consente un facile approccio al software. La documentazione relativa al prodotto software STEP 7 mette a disposizione tutte le informazioni online nella relativa Guida online nonch in manuali elettronici in formato .pdf.
28
Applicazioni di supporto
Il pacchetto di base STEP 7 dispone di una serie di applicazioni.
Non vi bisogno di richiamare le applicazioni singolarmente in quanto vengono avviate automaticamente selezionando la funzione corrispondente o aprendo un oggetto.
29
SIMATIC Manager
Il SIMATIC Manager gestisce i dati appartenenti a un progetto di automazione, indipendentemente dal sistema di destinazione per cui sono realizzati (S7/M7/C7). Le applicazioni necessarie per la modifica dei dati prescelti vengono avviate automaticamente dal SIMATIC Manager.
Editor di simboli
Con l'editor di simboli vengono gestite tutte le variabili globali. Sono disponibili le seguenti funzioni: definizione di nomi simbolici e commenti sui segnali di processo (ingressi/uscite), merker e blocchi; funzioni di ordinamento; importazione/esportazione con altri programmi Windows.
La tabella dei simboli che viene cos creata a disposizione di tutte le applicazioni. La modifica di un parametro simbolico viene pertanto riconosciuta da tutte le applicazioni.
30
Diagnostica hardware
La diagnostica hardware offre una panoramica sullo stato del sistema di automazione. In una visione d'insieme possibile visualizzare per ogni unit, mediante un simbolo, se l'unit avariata o meno. Con un doppio clic sull'unit avariata vengono visualizzate informazioni dettagliate sull'avaria stessa. Il volume delle informazioni dipende dalla singola unit. Visualizzazione di informazioni generali sull'unit (p. es. numero di ordinazione, versione, nome) e dello stato dell'unit (p. es. guasta); Visualizzazione dell'errore dell'unit (p. es. errore canale) della periferia centrale e slave DP; visualizzazione dei messaggi dal buffer di diagnostica.
Per le CPU vengono visualizzate informazioni supplementari: causa del guasto nell'esecuzione del programma utente; visualizzazione della durata del ciclo (ciclo massimo, minimo e ultimo); possibilit e carico della comunicazione MPI; visualizzazione dei dati utili (numero di ingressi/uscite possibili, merker, contatori, temporizzatori e blocchi).
Linguaggi di programmazione
I linguaggi di programmazione KOP, AWL e FUP per S7-300/400 sono parte integrante del software di base. KOP (schema a contatti) un linguaggio di programmazione grafico. La sintassi delle istruzioni assomiglia ad uno schema di circuito. KOP consente all'utente di seguire in modo semplice il flusso dei segnali tra sbarre collettrici, contatti, elementi complessi e bobine. AWL (lista istruzioni) un linguaggio di programmazione testuale vicino al linguaggio macchina. Quando si crea un programma in AWL, le singole istruzioni corrispondono in larga misura alle operazioni con le quali la CPU elabora il programma. Per facilitare la procedura di programmazione, AWL stato ampliato con alcune espressioni di linguaggi avanzati (come per es. accessi ai dati strutturati e parametri di blocco). FUP (schema funzionale) un linguaggio grafico di programmazione che rappresenta la logica mediante i box dell'algebra booleana. Esso consente inoltre di rappresentare funzioni complesse (ad es. le funzioni matematiche) direttamente in connessione con i box logici.
31
Configurazione hardware
Questa applicazione viene utilizzata per la configurazione e la parametrizzazione dell'hardware di un progetto di automazione. Sono disponibili le seguenti funzioni. Per configurare il sistema di automazione selezionare telai di montaggio (rack) da un catalogo elettronico, e assegnare le unit selezionate ai posti connettore desiderati. La configurazione della periferia decentrale avviene in maniera identica a quella della periferia centrale. Nella parametrizzazione della CPU possono essere impostate in modo interattivo propriet come comportamento all'avviamento e controllo del tempo di ciclo. Viene supportato il multicomputing. I dati immessi vengono salvati nei blocchi dati di sistema. Nella parametrizzazione delle unit possibile definire tutti i parametri impostabili mediante finestre di dialogo. Non avvengono impostazioni tramite selettore DIP. La parametrizzazione delle unit avviene automaticamente nell'avviamento della CPU. pertanto possibile, p. es., sostituire unit senza dover riparametrizzarle. La parametrizzazione dei moduli funzionali (FM) e dei processori di comunicazione (CP) avviene anche all'interno della configurazione hardware in modo identico alla parametrizzazione delle restanti unit. A questo scopo, per ogni FM e CP sono disponibili finestre di dialogo e regole specifiche (nella fornitura del pacchetto funzionale FM/CP). Il sistema impedisce digitazioni erronee, offrendo nelle finestre di dialogo soltanto possibilit di introduzione ammesse.
NetPro
Con NetPro si rende possibile il trasferimento di dati ciclico comandato a tempo per mezzo di MPI con: selezione dei nodi della comunicazione; introduzione di sorgente dati e destinazione dati in una tabella; avvengono automaticamente la generazione di tutti i blocchi da caricare (SDB) e il loro completo trasferimento.
inoltre possibile una trasmissione dati controllata dagli eventi con: definizione dei collegamenti di comunicazione; selezione dei blocchi di comunicazione/blocchi funzionali dall'integrata biblioteca dei blocchi; parametrizzazione dei blocchi funzionali e di comunicazione prescelti nel consueto linguaggio di programmazione.
32
Presentazione del prodotto e installazione 1.3 Novit della versione 5.5 di STEP 7
1.3
Sistemi operativi
A partire da STEP 7 V5.5 vengono supportati i sistemi operativi MS Windows 7 Professional, Ultimate ed Enterprise (installazione standard).
33
Presentazione del prodotto e installazione 1.3 Novit della versione 5.5 di STEP 7
Biblioteche standard
A partire da STEP 7 V5.5 le funzioni di sistema vengono ampliate con l'SFB 104 "IP_CONF" per la configurazione comandata da programma dell'interfaccia PROFINET integrata della CPU. A partire da STEP 7 V5.5 le funzioni di sistema dispongono dell'SFC 99 "WWW" per l'attivazione e la sincronizzazione delle pagine Web personalizzate. A partire da STEP 7 V5.5 le funzioni di sistema vengono ampliate con l'SFB 73 "RCVREC" per la ricezione di set di dati e l'SFB 74 "PRVREC" per l'approntamento di un set di dati su un I Device. Questi SFB sono validi solo per le CPU S7-300. A partire da STEP 7 V5.5 la lista di stato di sistema e la lista parziale vengono ampliate con l'ID SZL W#16#xy9C, che fornisce informazioni sui commutatori progettati e i relativi utensili. A partire da STEP 7 V5.5 sono compresi i seguenti FB di comunicazione S7: FB 28 "USEND_E", FB 29 "URCV_E", FB 34 "GET_E", FB 35 "PUT_E". Essi valgono solo per le CPU S7-300 e solo con collegamenti tramite l'interfaccia integrata PN. A partire da STEP 7 V5.5 i seguenti due FB della comunicazione aperta ricevono nuovi nomi tramite Industrial Ethernet: lFB 210 (nome attuale: "S5FW_TCP") riceve il nome "FW_TCP", lFB 220 (nome attuale: "S5FW_IOT") riceve il nome "FW_IOT".
Diagnostica di sistema
A partire da STEP 7 V5.5 sono state implementate due finestre di dialogo "Diagnostica in formato esadecimale": una per gli slave PROFIBUS e l'altra per i PROFINET Device.
34
Presentazione del prodotto e installazione 1.4 Possibilit di ampliamento del software di base STEP 7
1.4
La seguente tabella riporta il software opzionale utilizzabile in base al sistema di automazione impiegato.
STEP 7 S7-300 S7-400 Engineering Tools Borland C/C++ CFC DOCPRO HARDPRO M7-ProC/C++ S7-GRAPH S7-HiGraph S7-PDIAG S7-PLCSIM S7-SCL TeleService + + + + + + + + o + + + + + + + + + + +
1)
M7-300 M7-400 o +
1)
C7-620
+ +
3)
+2) +
+ +
o +2) +
Runtime Software Fuzzy Control M7-DDE-Server M7-SYS RT Modular PID Control PC-DDE-Server PRODAVE MPI Standard PID Control ProAgent SIMATIC ProTool SIMATIC ProTool/Lite
SIMATIC WinCC o = assolutamente necessario + = opzionale 1) = raccomandato a partire da S7-400 2) = non consigliato per C7-620 3) = non per programmi C
35
Presentazione del prodotto e installazione 1.4 Possibilit di ampliamento del software di base STEP 7
1.4.1
Engineering Tools
Gli engineering tools sono strumenti orientati ai compiti da svolgere, applicabili per estendere il pacchetto di base. Essi comprendono: linguaggi avanzati per programmatori linguaggio grafico per tecnici software complementare per diagnostica, simulazione, manutenzione a distanza, documentazione degli impianti, ecc.
Linguaggi avanzati
Per la programmazione dei sistemi di automazione SIMATIC S7-300/400 sono disponibili, sotto forma di software opzionale, i seguenti linguaggi. GRAPH per S7 un linguaggio di programmazione che descrive i comandi sequenziali (programmazione con catene di passi). Il processo viene suddiviso in passi, che contengono in particolare azioni per comandare le uscite. La transizione da un passo all'altro viene controllata mediante condizioni di avanzamento. HiGraph per S7 un linguaggio di programmazione per la descrizione di processi asincroni, non sequenziali sotto forma di diagrammi di stato. A tal fine l'impianto viene suddiviso in unit funzionali che possono assumere diversi stati. Le unit funzionali possono sincronizzarsi mediante lo scambio di informazioni. S7-SCL un linguaggio avanzato testuale a norma DIN EN 61131-3, contenente espressioni linguistiche simili a quelle dei linguaggi di programmazione Pascal e C. S7-SCL perci particolarmente adatto per gli utenti gi abituati ad usare linguaggi di programmazione avanzati. S7- SCL pu essere ad esempio usato per programmare le funzioni molto ricorrenti o quelle pi complesse.
36
Presentazione del prodotto e installazione 1.4 Possibilit di ampliamento del software di base STEP 7
Linguaggio grafico
CFC per S7 e M7 un linguaggio di programmazione per l'interconnessione grafica di funzioni esistenti. Le funzioni comprendono un vasto campo, dalle semplici combinazioni logiche fino a regolazioni e controlli complessi. Molte di queste funzioni sono disponibili in una biblioteca sotto forma di blocchi. Per programmare, i blocchi devono venire copiati su uno schema e connessi tra loro mediante linee.
Software complementare
Borland C++ (solo M7) contiene l'ambiente di sviluppo Borland. DOCPRO consente di organizzare in schemi circuitali i dati di progettazione creati con STEP 7. Gli schemi circuitali consentono una gestione estremamente semplice dei dati e una stampa a norma. HARDPRO il sistema di progettazione hardware per S7-300 di supporto all'utente in progettazioni estese per compiti di automazione complessi. M7 ProC/C++ (solo M7) consente di integrare l'ambiente di sviluppo borland dei linguaggi di programmazione C e C++ nell'ambiente di programmazione di STEP 7. S7-PLCSIM (solo S7) consente di simulare i controllori programmabili S7 collegati al sistema di origine (ovvero il PG o il PC) a scopo di test. S7-PDIAG (solo S7) permette la progettazione omogenea della diagnostica di processo per SIMATIC S7-300/400, per mezzo della quale possibile rilevare stati di errore al di fuori del sistema di automazione (p. es. interruttore finecorsa non raggiunto). TeleService offre la possibilit di programmare e riparare i sistemi di automazione S7 e M7 con il PG/PC mediante la rete telefonica.
37
Presentazione del prodotto e installazione 1.4 Possibilit di ampliamento del software di base STEP 7
1.4.2
Runtime Software
Il Runtime Software comprende soluzioni gi programmate richiamabili dal programma utente. Il Runtime Software viene inserito direttamente nella soluzione di automazione. Esso comprende: regolazioni con SIMATIC S7, p. es. regolazione fuzzy, regolazione modulare e regolazione standard strumenti per l'accoppiamento dei sistemi di automazione alle applicazioni Windows un sistema operativo in tempo reale per SIMATIC M7.
38
Presentazione del prodotto e installazione 1.4 Possibilit di ampliamento del software di base STEP 7
39
Presentazione del prodotto e installazione 1.4 Possibilit di ampliamento del software di base STEP 7
1.4.3
40
2
2.1
2.1.1
Installazione
Automation License Manager
Concessione della licenza d'utilizzo mediante Automation License Manager
Nell'Automation License Manager integrata una Guida online che, dopo l'installazione, pu essere richiamata mediante il tasto F1 (per la parte sensibile al contesto), oppure mediante il comando di menu ? > Guida a License Manager. Tale Guida contiene informazioni dettagliate sull'Automation License Manager.
Licenze
Per l'utilizzo dei pacchetti software di STEP 7 necessario disporre della relativa licenza. La licenza concede il diritto d'uso di tali pacchetti ed rappresentata dai seguenti elementi: CoL (Certificate of License) e Chiave di licenza.
41
Chiave di licenza
La chiave di licenza il rappresentante tecnico della licenza (timbro di licenza elettronico). Per ogni software protetto da licenza la Siemens assegna una chiave di licenza. Quando il software viene avviato nel computer, viene verificata la presenza di una chiave di licenza valida e il software pu essere utilizzato nel rispetto delle condizioni di licenza e di utilizzo.
Avvertenze
possibile testare brevemente la superficie operativa e le funzioni del software di base STEP 7 anche senza chiave di licenza. L'utilizzo senza limitazioni, nel rispetto delle condizioni di licenza, possibile ed ammesso solo in presenza di una chiave di licenza installata. Se la chiave di licenza non installata, l'utente viene invitato ad intervalli regolari a provvedere all'installazione.
Le chiavi di licenza possono essere memorizzate e trasferite mediante i seguenti supporti: dischetti contenenti le chiavi di licenza o la chiave USB memory dischi rigidi locali drive di rete.
Se vengono installati prodotti software per i quali non sono disponibili chiavi di licenza, possibile individuare le chiavi di licenza necessarie e ordinare le licenze corrispondenti. Per ulteriori informazioni sulla gestione delle chiavi di licenza consultare la Guida online relativa all'Automation License Manager.
42
Tipi di licenze
Per i prodotti software della Siemens si distinguono i seguenti tipi di licenze orientate all'applicazione. Il comportamento del software determinato dalle chiavi di licenza relative ai diversi tipi di licenze. Il tipo di utilizzo deriva dallo specifico Certificate of License.
Tipo di licenza Single License Floating License Trial License Descrizione Il diritto di utilizzo del software vale per un periodo illimitato su un qualsiasi computer. Diritto di utilizzo in rete (utilizzo "remoto") illimitato nel tempo. Il diritto di utilizzo del software limitato: Rental License Upgrade License ad un massimo di 14 giorni, al numero di giorni dopo il primo utilizzo indicato nel contratto, a test e per provarne la validit (esclusione di responsabilit). un massimo di 50 ore. una licenza di aggiornamento permette l'aggiornamento dalla "vecchia" versione x alla nuova versione >x+... l'aggiornamento della licenza pu essere p. es. necessario in caso di ampliamento della funzionalit.
L'utilizzo del software limitato a: Per un aggiornamento possono essere richiesti determinati requisiti di sistema:
43
2.1.2
Avvertenze
possibile testare brevemente la superficie operativa e le funzioni del software di base STEP 7 anche senza chiave di licenza. L'utilizzo senza limitazioni, nel rispetto delle condizioni di licenza, possibile ed ammesso solo in presenza di una chiave di licenza installata. Se la chiave di licenza non installata, l'utente viene invitato ad intervalli regolari a provvedere all'installazione.
possibile installare chiavi di licenza a posteriori nei seguenti modi: da dischetti oppure dalla chiave USB Memory scaricandole dal Web (previa ordinazione) utilizzando chiavi di licenza Floating presenti in rete.
Per informazioni complete sul modo di procedere, consultare la Guida online dell'Automation License Manager che, dopo l'installazione, pu essere richiamata mediante il tasto F1 (per la parte sensibile al contesto), oppure mediante il comando di menu ? > Guida a License Manager.
Avvertenze In Windows XP/Server 2003 le chiavi di licenza funzionano solo se salvate su un disco rigido accessibile in scrittura. Le Floating License possono essere utilizzate anche in rete (ossia in modalit remota).
44
2.1.3
La Guida online dell'Automation License Manager pu essere richiamata mediante il tasto F1 (per la parte sensibile al contesto), oppure mediante il comando di menu ? > Guida a License Manager. Tale Guida contiene informazioni dettagliate sull'Automation License Manager.
45
2.2
2.2.1
Installazione di STEP 7
Installazione di STEP 7
STEP 7 contiene un programma di installazione che esegue automaticamente l'installazione del software. I prompt che compaiono sullo schermo guidano l'utente passo per passo attraverso la procedura di installazione. Per richiamare il programma di installazione, utilizzare la procedura di installazione standard Windows XP/7/Server 2003. Le fasi principali dell'installazione sono: copia dei dati nel sistema di origine, preparazione dei driver per EPROM e per la comunicazione, installazione delle chiavi di licenza (se richiesta).
Avvertenza I dispositivi di programmazione Siemens vengono forniti con il software STEP 7 sul disco rigido pronto per l'installazione.
I dispositivi di programmazione (PG) sono speciali personal computer compatti e adeguati all'impiego industriale. Essi sono dotati delle funzioni necessarie per la programmazione dei sistemi di automazione SIMATIC. Capacit di memoria Spazio di memoria necessario sul disco fisso, vedere il file Leggimi. Interfaccia MPI (opzionale) L'interfaccia MPI tra sistema di origine (dispositivo di programmazione o PC) e sistema di destinazione necessaria soltanto se si desidera comunicare in STEP 7 con il sistema di destinazione mediante MPI. Il collegamento pu essere effettuato: con un adattatore USB per PC collegato all'interfaccia di comunicazione del dispositivo, oppure mediante un'unit MPI (p. es. CP 5611) installata nel dispositivo.
46
I dispositivi di programmazione vengono forniti gi provvisti di interfaccia MPI. Prommer esterno (opzionale) Se si utilizza un PC, il prommer esterno si rende necessario soltanto se si vogliono programmare delle EPROM.
Avvertenze Si tengano presenti anche le istruzioni per l'installazione di STEP 7 nel file Leggimi e nell'"Elenco di compatibilit dei pacchetti software SIMATIC con le versioni del pacchetto del software di base STEP 7". Il file Leggimi si trova nella barra di avvio sotto Avvio > Simatic > Informazioni sul prodotto. L'elenco di compatibilit si trova nella barra di avvio sotto Avvio > Simatic > Documentazione.
47
2.2.2
Operazioni preliminari
Prima di poter iniziare l'installazione, occorre avviare il sistema operativo (Windows XP, Server 2003 o Windows 7). Se il software STEP 7 si trova gi sul disco rigido pronto per l'installazione, non sono necessari supporti dati esterni. Per eseguire l'installazione da CD ROM, inserire il CD ROM nell'apposito lettore del PC.
Per una corretta gestione del software, si consiglia di rimuovere la versione vecchia prima di eseguire l'installazione. La sovrascrittura di una vecchia versione presenta inoltre lo svantaggio che, in caso di rimozione, le eventuali parti residue della vecchia versione non vengono rimosse.
Volume di installazione
Si pu scegliere uno dei seguenti tipi di installazione: Configurazione massima: vengono installate tutte le lingue della superficie operativa, tutte le applicazioni e tutti gli esempi. Per lo spazio di memoria necessario, consultare le informazioni sul prodotto attuali. Configurazione minima: viene installata solo una lingua e nessun esempio. Per lo spazio di memoria necessario, consultare le informazioni sul prodotto attuali. Configurazione personalizzata: consente di definire il tipo di installazione, selezionando programmi, banca dati, esempi e comunicazioni.
48
Numero ID
In fase di installazione viene richiesto all'utente un numero identificativo. Introdurre questo numero rilevabile dal certificato del prodotto software oppure dal supporto di memoria contenente le chiavi di licenza.
I parametri impostati possono essere modificati anche dopo l'installazione, richiamando il programma "Parametrizzazione della memory card" nel gruppo di programmi STEP 7 oppure nel "Pannello di controllo".
49
Conclusione dell'installazione
Se l'installazione si conclusa senza errori, sullo schermo viene visualizzato il messaggio corrispondente. Se durante l'installazione sono stati aggiornati i file di sistema, l'utente viene invitato a riavviare il sistema. Dopo il riavviamento (avviamento a caldo) possibile aprire il SIMATIC Manager. Al termine dell'installazione, appare sullo schermo il gruppo di programmi di STEP 7.
50
2.2.3
Procedura di base
Per poter utilizzare un'interfaccia necessario: impostare il sistema operativo eseguire una adeguata parametrizzazione dell'interfaccia
Se si utilizza un PC con una scheda MPI o con processori di comunicazione (CP), si deve verificare nel pannello di controllo di Windows che non vi siano conflitti nell'assegnazione degli interrupt o degli indirizzi. Per facilitare la parametrizzazione dell'interfaccia PG/PC, vengono visualizzate delle finestre di dialogo con gruppi di parametri gi definiti (parametri delle interfacce).
51
necessario apportare modifiche anche quando si verificano conflitti con altre impostazioni (ad es. nell'assegnazione degli interrupt e degli indirizzi). In questo caso, utilizzare l'identificativo dell'hardware e il Pannello di controllo di Windows (vedere sotto).
Attenzione La parametrizzazione di interfaccia "TCP/IP" eventualmente visualizzata non deve essere cancellata! La cancellazione potrebbe ostacolare l'esecuzione di altre applicazioni.
52
2.3
Disinstallazione di STEP 7
Utilizzare la procedura standard per Windows: 1. Aprire in Windows la finestra di dialogo per l'installazione del software facendo doppio clic su "Installazione applicazioni" nel "Pannello di controllo". 2. Selezionare la voce STEP 7 nell'elenco dei software installati. Premere quindi il pulsante "Rimuovi" per disinstallare il software. 3. Se appaiono finestre di dialogo "Eliminare il file condiviso?", in caso di dubbio fare clic sul pulsante "No".
53
2.4
2.4.1
Diritti utente
Diritti utente nel sistema operativo MS Windows XP/Server 2003
Per quanto concerne i diritti utente, osservare quanto segue: Per operare con STEP 7 necessario registrarsi come utente (non consentito il login come utente ospite). L'installazione del software di STEP 7 e di HSP, la configurazione di unit nonch la modifica di impostazioni dall'applicazione "Imposta interfaccia PG/PC." presuppongono il possesso di diritti di amministratore. Per l'impiego di pacchetti opzionali, accertarsi di essere in possesso dei diritti di volta in volta previsti da ogni singolo pacchetto. Gli utenti devono avere pieno accesso ai progetti salvati su drive NTFS. Lo stesso vale per la cartella contenente gli aggiornamenti HSP (percorso di default: C:\HWUPDATES). L'accesso alla directory standard del progetto S7PROJ abilitato automaticamente per tutti gli utenti.
Nota Il possesso di diritti utente garantisce l'eseguibilit di STEP 7 ma non necessariamente il funzionamento di pacchetti opzionali. Quest'ultimo pu inoltre richiedere diritti di amministratore o di utente principale. In seguito all'installazione/disinstallazione di nuovi componenti hardware necessario almeno un nuovo avvio eseguito da operatori con diritti di amministratore.
54
2.4.2
Acquisizione di utenti nei gruppi "Siemens TIA Engineer" e "Operatori della configurazione di rete"
Acquisire nel gruppo "Siemens TIA Engineer" gli utenti locali il cui login viene impiegato per l'accesso a STEP 7. Procedere come indicato nel seguito: 1. Aprire il Pannello di controllo di Windows e selezionare la voce "Account utente". 2. Nella finestra di navigazione selezionare la voce "Gestisci account utente". 3. Nella sezione "Gestione avanzata utenti" della scheda "Avanzate", selezionare la voce "Avanzate". 4. Nella finestra di navigazione selezionare la voce "Utenti e gruppi locali > Utenti". Nella finestra di dialogo dei dati vengono visualizzati tutti gli utenti. 5. Dal menu di scelta rapida aprire la finestra di dialogo "Nuovo utente" e creare per ciascun utente che dovr accedere a STEP 7 un account utente con il medesimo login. 6. Per ogni singolo utente creato selezionare il menu contestuale "Propriet". 7. Nella finestra di dialogo successivamente visualizzata, selezionare la scheda "Membro di" e fare clic sul pulsante "Aggiungi..". 8. Nella casella "Imettere i nomi degli oggetti da selezionare" della finestra di dialogo "Seleziona Gruppi", inserire il gruppo utenti "Siemens TIA Engineer" e confermare con "OK". 9. Eseguire le medesime sequenze operative anche per gli utenti da inserire automaticamente nel gruppo "Operatori della configurazione di rete".
55
Creazione del gruppo utenti "Siemens TIA Engineer" globale per il dominio
Se si opera in un dominio possibile procedere, in via alternativa, alla configurazione di un gruppo utenti globale per il dominio. Questo gruppo verr poi trasferito nei gruppi utenti locali "Siemens TIA Engineer" e "Operatori della configurazione di rete". Dovranno essere soddisfatti i seguenti presupposti: L'amministratore dei domini deve aver provveduto alla creazione di un gruppo utenti globale per il dominio. L'amministratore dei domini deve avere inserito nel gruppo utenti globale per il dominio gli utenti in possesso del login che consenta l'accesso a STEP 7.
56
3
3.1
57
Sviluppo di una soluzione di automazione 3.2 Scomposizione del processo in compiti e settori
3.2
58
Sviluppo di una soluzione di automazione 3.2 Scomposizione del processo in compiti e settori
59
Sviluppo di una soluzione di automazione 3.2 Scomposizione del processo in compiti e settori
Dato che ogni settore viene a sua volta suddiviso in compiti pi piccoli, i compiti per il controllo di questa parte del processo non risultano particolarmente complessi. Nell'esempio del processo di miscelazione industriale si possono definire quattro settori (vedere la seguente tabella). In questo esempio il settore per la sostanza A contiene gli stessi elementi del settore per la sostanza B.
Settore funzionale Sostanza A Apparecchiature correlate Pompa di alimentazione per la sostanza A Valvola di aspirazione per la sostanza A Valvola di alimentazione per la sostanza A Trasduttore di portata per la sostanza A Sostanza B Pompa di alimentazione per la sostanza B Valvola di aspirazione per la sostanza B Valvola di alimentazione per la sostanza B Trasduttore di portata per la sostanza B Serbatoio di miscelazione Scarico Motore del miscelatore Interruttore di misurazione del livello Valvola di scarico
60
Sviluppo di una soluzione di automazione 3.3 Descrizione dei singoli settori funzionali
3.3
Nell'esempio del processo di miscelazione industriale vengono impiegati motori, pompe e valvole. Questi elementi devono essere descritti dettagliatamente per definire le caratteristiche operative e il tipo di interblocco necessari nel corso del funzionamento. Nelle tabelle seguenti si possono consultare esempi di descrizione dei dispositivi utilizzati nel processo di miscelazione industriale. Questa descrizione pu essere usata anche per la fornitura delle apparecchiature necessarie.
Sostanze A/B: motori delle pompe di alimentazione Le pompe di alimentazione immettono le sostanze A e B nel serbatoio di miscelazione. Portata: 400 litri al minuto Potenza: 100 KW a 1200 giri/min Le pompe vengono comandate (avviate/fermate) da un quadro di comando posto nelle vicinanze del serbatoio di miscelazione. Il numero degli avvii viene contato per la manutenzione. Il contatore e l'indicatore possono essere resettati tramite un interruttore comune. Condizioni per l'abilitazione: il serbatoio di miscelazione non pieno la valvola di scarico del serbatoio di miscelazione chiusa EMERGENZA non attivato. dopo 7 secondi dall'avvio del motore della pompa, il trasduttore di portata non registra alcuna portata durante il funzionamento, il trasduttore di portata non registra pi alcuna portata.
Sostanze A/B: valvole di aspirazione e di alimentazione Le valvole di aspirazione e di alimentazione per le sostanze A e B consentono/impediscono l'afflusso della sostanza nel serbatoio di miscelazione. Le valvole sono provviste di un interruttore elettromagnetico dotato di una molla di richiamo. Quando l'interruttore elettromagnetico viene attivato, la valvola aperta. Quando l'interruttore elettromagnetico viene disattivato, la valvola chiusa. Le valvole di aspirazione e di alimentazione vengono controllate dal programma utente. il motore della pompa di alimentazione funziona per almeno 1 secondo. Condizione per la disattivazione: il trasduttore di portata non registra alcuna portata.
61
Sviluppo di una soluzione di automazione 3.3 Descrizione dei singoli settori funzionali
Motore del miscelatore Il motore dell'agitatore consente di miscelare le sostanze A e B nel serbatoio di miscelazione. Potenza: 100 KW a 1200 giri/min Il motore dell'agitatore viene controllato (avviato/fermato) da un quadro di comando posto nelle vicinanze del serbatoio di miscelazione. Il numero degli avvii viene conteggiato per la manutenzione. Il contatore e l'indicatore possono essere resettati tramite un interruttore comune. Condizioni per l'abilitazione: il misuratore del livello del contenuto indica "Serbatoio di miscelazione sotto il minimo". la valvola di scarico del serbatoio di miscelazione chiusa EMERGENZA non attivato. Condizione per la disattivazione: il trasduttore di velocit non registra, al pi tardi dopo 10 s dall'avvio del motore, che il numero di giri nominale stato raggiunto.
Valvola di scarico Mediante alimentazione a caduta, la miscela passa attraverso la valvola di scarico allo stadio successivo del processo. Nella valvola incorporato un interruttore elettromagnetico dotato di molla di richiamo. Quando l'interruttore elettromagnetico viene attivato, la valvola aperta. Quando l'interruttore elettromagnetico viene disattivato, la valvola chiusa. La valvola di scarico viene controllata (aperta/chiusa) da un quadro di comando. Condizioni per l'apertura della valvola di scarico: il motore dell'agitatore disinserito. il misuratore di livello non indica "Serbatoio di miscelazione vuoto". EMERGENZA non attivato. Condizione per la disattivazione: il misuratore del livello indica "Serbatoio di miscelazione vuoto".
Interruttore per la misurazione del livello Gli interruttori nel serbatoio di miscelazione forniscono informazioni sul livello di riempimento nel serbatoio, e vengono usati per bloccare la pompa di alimentazione e il motore del miscelatore.
62
3.4
63
Sviluppo di una soluzione di automazione 3.5 Creazione di diagrammi di ingresso/uscita per i motori
3.5
64
Sviluppo di una soluzione di automazione 3.6 Creazione di diagrammi di ingresso/uscita per le valvole
3.6
65
3.7
l'interruttore di EMERGENZA collocato sul quadro di comando. un ingresso del controllore registra lo stato dell'interruttore di EMERGENZA.
66
Sviluppo di una soluzione di automazione 3.8 Descrizione degli elementi di servizio e segnalazione
3.8
Sul quadro di comando si trovano anche i LED di segnalazione delle apparecchiature, che vanno controllati periodicamente, e l'interruttore di EMERGENZA, mediante il quale possibile interrompere immediatamente il processo. Sul quadro di comando, inoltre, si trova un interruttore per il reset dell'indicatore di manutenzione dei tre motori. Esso serve a spegnere i LED dei motori che richiedono una manutenzione, e a impostare sullo 0 i relativi contatori della frequenza di manutenzione.
67
3.9
68
69
4
4.1
Sistema operativo
Il sistema operativo contenuto in ogni CPU e organizza tutte le funzioni e le procedure della CPU che non sono legate a un compito di controllo specifico. I compiti del sistema operativo comprendono: gestione del nuovo avviamento (avviamento a caldo) e del riavviamento aggiornamento dell'immagine di processo degli ingressi ed emissione dell'immagine di processo delle uscite richiamo del programma utente rilevamento di allarmi e richiamo degli OB di allarme riconoscimento e gestione degli errori gestione delle aree di memoria comunicazione con dispositivi di programmazione e altri nodi di comunicazione.
Modificando i parametri del sistema operativo (preimpostazione del sistema operativo) possibile influenzare il comportamento della CPU in determinate aree.
Programma utente
Il programma utente deve essere creato e caricato nella CPU. Il programma contiene tutte le funzioni necessarie per l'elaborazione dei vari compiti di automazione. I compiti del programma utente comprendono: la definizione delle condizioni per il nuovo avviamento (avviamento a caldo) e il riavviamento della CPU (p. es. la predefinizione dei segnali con un determinato valore) elaborazione dei dati di processo (p. es., combinazione di segnali binari, lettura e analisi di valori analogici; determinazione di segnali binari di uscita, emissione di valori analogici) reazione agli allarmi gestione di anomalie intervenute durante la normale esecuzione del programma.
71
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2
Nell'esempio del processo di miscelazione industriale si potuto vedere che un processo di automazione pu essere suddiviso razionalmente in compiti distinti. Le sezioni di un programma utente strutturato corrispondenti ai singoli compiti vengono definite blocchi di programma.
Tipi di blocchi
Vi sono diversi tipi di blocchi che possono essere utilizzati all'interno di programmi utenti S7:
Blocco Blocchi organizzativi (OB) Blocchi funzionali di sistema (SFB) e funzioni di sistema (SFC) Blocchi funzionali (FB) Funzioni (FC) Blocchi dati di istanza (DB di istanza) Descrizione della funzione Gli OB determinano la struttura del programma utente: Gli SFB e le SFCs sono integrati nella CPU S7, e rendono accessibili alcune importanti funzioni di sistema. Gli FB sono blocchi con "memoria", programmabili dall'utente. Le FC contengono routine di programma per le funzioni pi utilizzate. I blocchi dati di istanza vengono assegnati al blocco quando viene richiamato un FB/SFB. Essi vengono generati automaticamente nella compilazione. Vedere anche "Blocchi organizzativi e struttura del programma" "Blocchi funzionali di sistema (SFB) e funzioni di sistema (SFC)" "Blocchi funzionali (FB)" "Funzioni (FC)" "Blocchi dati di istanza"
I DB sono aree di dati per la memorizzazione dei "Blocchi dati globali (DB)" dati utente. Oltre ai dati rispettivamente assegnati a un blocco funzionale, possono essere definiti dati globali utilizzabili da blocchi qualsiasi.
OB, FB, SFB, FC e SFC contengono parti del programma, e vengono pertanto definiti come blocchi di codice. Dipendono dalla CPU il numero ammesso di blocchi per ogni tipo di blocco e la loro lunghezza.
72
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.1
da OB 10 a OB 17 OB 20 OB 21 OB 22 OB 23
2 3 4 5 6 7 8 9 10 11 12 13 14 15
Schedulazione orologio
OB 30 OB 31 OB 32 OB 33 OB 34 OB 35 OB 36 OB 37 OB 38
73
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Blocchi organizzativi OB 40 OB 41 OB 42 OB 43 OB 44 OB 45 OB 46 OB 47
Allarmi DPV1
OB 55 OB 56 OB 57
OB 60 Multicomputing OB 61 OB 62 OB 63 OB 64
Funzionamento sincrono in multicomputing di diverse CPU Progettazione di tempi di reazione del processo brevi e della stessa durata nel PROFIBUS DP
Errori di ridondanza
OB 70 Errore di periferia ridondata (solo nei sistemi H) OB 72 Errore di ridondanza CPU (solo nei sistemi H)
25 28
Errori di asincronismo OB 80 Errore di tempo OB 81 Errore di alimentazione OB 82 Allarme di diagnostica OB 83 Allarme di inserimento/estrazione OB 84 Errore di guasto hardware della CPU OB 85 Errore di esecuzione programma OB 86 Guasto del telaio di montaggio OB 87 Errore di comunicazione Ciclo con priorit bassa Avviamento OB 90 OB 100 Nuovo avviamento (avviamento a caldo) OB 101 Riavviamento OB 102 Avviamento a freddo
29 1) 27 27 27
"Blocco organizzativo di priorit bassa (OB 90)" "Blocchi organizzativi per l'avviamento (OB 100/OB 101/OB 102)"
74
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Vedere anche "Blocchi organizzativi per l'elaborazione degli errori (da OB 70 a OB 87 / da OB 121 a OB 122)"
1) Alla classe di priorit 29 corrisponde la priorit 0.29. LOB 90 ha quindi priorit inferiore a quella del ciclo libero.
Sono ammesse: da OB 10 a OB 47 le classi di priorit da 2 a 23, da OB 70 a OB 72 le classi di priorit da 2 a 28, da OB 81 a OB 87 le classi di priorit da 24 a 26; le CPU costruite a partire da met 2001 (versione di firmware 3.0) offrono possibilit pi ampie: per gli OB da 81 a 84 nonch per gli OB 86 e 87, si possono impostare le classi di priorit da 2 a 26.
A OB differenti pu essere assegnata la stessa priorit. In questo caso, gli OB vengono elaborati nella sequenza in cui si presentano i relativi eventi di avvio. Gli OB di errore, avviati in caso di errori di sincronismo, vengono elaborati con la medesima classe di priorit del blocco la cui elaborazione era in corso quando stato riconosciuto l'errore.
Dati locali
Con la creazione dei blocchi di codice (OB, FC, FB) possibile determinare una serie di dati locali temporanei. L'area dei dati locali a disposizione nella CPU suddivisa tra le classi di priorit. Nelle CPU S7-400 possibile modificare con STEP 7 nel blocco parametri "Classi di priorit" il numero dei dati locali per ogni classe di priorit.
75
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Informazione di avvio di un OB
Ogni blocco organizzativo dispone di uninformazione di avvio di 20 byte di dati locali, che il sistema operativo trasferisce all'avvio dell'OB. L'informazione di avvio contiene informazioni su evento di avvio dell'OB, data e ora di avvio, errori verificatisi ed eventi di diagnostica. Un OB 40 (interrupt di processo) contiene, p. es. nell'informazione di avvio, l'indirizzo dell'unit che genera l'interrupt.
OB di allarme annullati
Se si imposta la classe di priorit 0 o si assegnano a una classe di priorit meno di 20 byte di dati locali, il relativo OB di allarme viene annullato. Gli OB di allarme annullati: non possono essere copiati nello stato di funzionamento RUN, o inseriti nel programma utente possono essere copiati nello stato di funzionamento STOP o inseriti nel programma utente, ma causano, al nuovo avviamento (avviamento a caldo) della CPU, un'interruzione del processo di avviamento e danno luogo ad una registrazione nel buffer di diagnostica.
Annullando OB di allarme non necessari, si aumenta l'area dei dati locali disponibile, che pu quindi essere utilizzata per memorizzare dati temporanei in altre classi di priorit.
76
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
STEP 7 offre la possibilit di elaborare solo in caso di necessit quelle parti del programma utente che non devono essere elaborate ciclicamente. Il programma utente pu essere scomposto in segmenti, e suddiviso in diversi blocchi organizzativi. Se il programma utente deve reagire a un segnale importante che capita relativamente di rado, (p. es. se un trasduttore di valore limite per la misurazione del grado di riempimento di un serbatoio segnala che il serbatoio pieno), il segmento di programma da eseguire all'emissione del segnale potr trovarsi in un OB che viene eseguito in modo comandato dall'evento.
77
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
78
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.2
Regole per la sequenza di creazione dei blocchi I blocchi vengono creati dall'alto in basso; si comincia quindi con la serie di blocchi superiore. Ogni blocco che viene richiamato deve essere essere gi esistente; all'interno di una serie di blocchi la direzione in cui vengono creati va quindi da destra a sinistra. Viene creato da ultimo l'OB 1.
Una volta eseguite tali regole, esse comportano questa sequenza di creazione per l'esempio della figura: FC 1 > FB 1 + DB di istanza 1 > DB 1 > SFC 1 > FB 2 + DB di istanza 2 > OB 1
Avvertenza Superata una determinata profondit di annidamento, lo stack di dati locali pu essere eccedente (vedere anche Stack di dati locali).
79
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Prima di programmare un blocco, necessario stabilire con quali dati deve avvenire l'elaborazione del programma; ci significa che occorre dichiarare le variabili del blocco.
Avvertenza I parametri OUT devono essere descritti per ogni richiamo di blocco.
Avvertenza Il sistema operativo resetta le istanze dell'SFB 3 "TP" in caso di avviamento a freddo. Se le istanze di tale SFB devono essere inizializzate dopo il nuovo avviamento (avviamento a caldo) occorre che l'utente richiami le istanze da inizializzare dell'SFB con PT = 0 ms. Ci realizzabile p. es. mediante una routine di inizializzazione nei blocchi che contengono le istanze di tale SFB.
80
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.3
4.2.3.1
Tipi di blocchi
Blocco organizzativo per l'elaborazione ciclica del programma (OB 1)
L'elaborazione ciclica del programma l'elaborazione "normale" nei controllori programmabili. Il sistema operativo richiama ciclicamente l'OB 1 e con esso avvia l'elaborazione ciclica del programma utente.
3e
4e 5
Immagini di processo
Affinch per l'intera durata dell'elaborazione ciclica del programma la CPU abbia a disposizione un'immagine coerente dei segnali di processo, la CPU, per interpellare le aree degli operandi ingresso (E) e uscita (A), non accede direttamente alle unit di ingresso/uscita, bens ad un'area di memoria interna in cui si trova un'immagine degli ingressi e delle uscite.
81
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Possibilit di interruzione
L'elaborazione ciclica del programma pu essere interrotta mediante: un interrupt o allarme un comando di STOP (selettore dei modi operativi, comando di menu dal PG, SFC46 STP, SFB 20 STOP) la mancanza di tensione di rete un errore di un dispositivo o del programma.
Tempo di ciclo
Il tempo di ciclo il tempo che richiede il sistema operativo per l'elaborazione del programma ciclico nonch di tutti le parti di programma che interrompono tale ciclo (p. es. elaborazione di altri blocchi organizzativi) e per le attivit di sistema (p. es. aggiornamento dell'immagine di processo). Questo tempo viene controllato. Il tempo di ciclo (TZ) non uguale per ogni ciclo. Le figure seguenti riportano tempi di ciclo differenti (TZ1 TZ2) per le CPU fino al 10/98 e per quelle a partire dal 10/98.
82
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Le figure seguenti riportano la funzione del tempo di controllo del ciclo nell'esecuzione del programma per le CPU fino al 10/98 e per quelle a partire dal 10/98.
83
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Carico di comunicazione
Con il parametro CPU "Carico del ciclo a causa della comunicazione" possibile comandare entro certi limiti la durata dei processi di comunicazione che allungano sempre anche il tempo di ciclo. I processi di comunicazione possono essere p.es.: trasferimento di dati a un'altra CPU mediante MPI oppure caricamento di blocchi che stato attivato mediante PG. Le funzioni di test con il PG vengono appena influenzate da questo parametro, possono tuttavia allungare notevolmente il tempo di ciclo. Nel funzionamento di processo possibile limitare il tempo messo a disposizione per le funzioni di test (solo S7-300).
84
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Esempio 1 (nessun evento di asincronismo addizionale): Impostando un carico del ciclo a causa della comunicazione del 50%, si pu verificare un raddoppiamento del tempo di ciclo di OB1. Allo stesso tempo il tempo di ciclo di OB 1 viene influenzato ancora da eventi di asincronismo (p.es. interrupt di processo oppure schedulazioni orologio) . Con l'allungamento del tempo di ciclo a causa della componente di comunicazione si verificano da un punto di vista statistico un numero ancora maggiore di eventi di asincronismo all'interno di un ciclo OB 1. Ci allunga ulteriormente il ciclo di OB 1. Questo allungamento dipende da quanti eventi per ciclo di OB 1 compaiono e dalla durata dell'elaborazione dell'evento. Esempio 2 (vengono considerati eventi di asincronismo addizionali): Con un vero tempo di esecuzione di OB 1 di 500 ms si pu verificare un tempo di ciclo effettivo di fino a 1000 ms a causa di un carico di comunicazione di 50 % (purch la CPU abbia sempre sufficienti job di comunicazione da elaborare). Se parallelamente viene eseguito ogni 100 ms una schedulazione orologio con tempo di elaborazione di 20 ms, allora questo avrebbe come effetto un allungamento complessivo del ciclo pari a 5*20 ms = 100 ms senza carico di comunicazione, ovvero il tempo di ciclo effettivo sarebbe pari a 600 ms. Poich una schedulazione orologio interrompe anche la comunicazione, con un carico di comunicazione di 50% la schedulazione orologio influisce sul tempo ciclo per un valore pari a 10 * 20 ms, vale a dire in questo caso il tempo di ciclo effettivo non ammonta a 1000 ms ma a 1200 ms. Avvertenze Verificare gli effetti di una modifica del valore del parametro "Carico del ciclo a causa della comunicazione" nel funzionamento dell'impianto. Occorre tener conto del carico di comunicazione quando si imposta il tempo di ciclo minimo; possono altrimenti verificarsi degli errori di tempo.
85
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Suggerimenti
Acquisire se possibile il valore preimpostato Aumentare il valore solo se la CPU viene impiegata principalmente per finalit di comunicazione e il programma utente presenta acriticit temporale ! In tutti gli altri casi ridurre solo il valore ! Impostare il funzionamento di processo (solo con S7-300) e limitare il tempo l necessario per le funzioni di test!
86
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.3.2
Funzioni (FC)
Le funzioni fanno parte dei blocchi programmati dall'utente. La funzione un blocco di codice "privo di memoria". Le variabili temporanee dell'FC vengono memorizzate nello stack dei dati locali. Dopo l'elaborazione dell'FC, questi dati vanno perduti. Per la memorizzazione dei dati, le funzioni possono utilizzare blocchi dati globali. Poich a una FC non abbinata alcuna memoria, necessario indicarne sempre i parametri attuali. Ai dati locali di una FC non pu essere assegnato alcun valore iniziale.
Campo di applicazione
Una FC contiene un programma che viene eseguito ogni qualvolta che lFC viene richiamata da un altro blocco di codice. Le funzioni possono essere utilizzate per restituire un valore di funzione al blocco richiamante (per esempio funzioni matematiche). eseguire una funzione tecnologica (per esempio controllo singolo con combinazione binaria).
Attenzione Se in un caso simile non viene scritto un parametro OUTPUT in una FC, i valori emessi potrebbero essere casuali. L'area resa disponibile per la copia nei dati locali del blocco richiamante non viene scritta per mancanza di assegnazione del parametro OUTPUT e resta quindi invariata. Di conseguenza, il valore presente in questa area viene emesso casualmente poich i dati locali non sono preimpostati, p. es. con 0.
87
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Osservare quanto segue: Inizializzare se possibile i parametri OUTPUT. I comandi di impostazione e resettaggio dipendono dal risultato logico combinatorio. Se con questi comandi si determina il valore di un parametro OUTPUT, con RLC = 0 non viene calcolato alcun valore. Assicurarsi che, al di l di tutti i possibili percorsi di programma all'interno del blocco, i parametri OUTPUT vengano scritti in ogni caso. Osservare in particolar modo i comandi di salto cos come l'uscita ENO in KOP e FUP, nonch il SeS e gli effetti dei comandi MCR.
Avvertenza Per quanto riguarda i parametri OUTPUT di un FB o i parametri INOUT di una FC e di un FB, i valori emessi non possono essere casuali poich in questo caso il valore di uscita o quello di ingresso precedenti vengono mantenuti senza sovrascrivere i parametro. Tuttavia, anche in questo caso, necessario osservare le indicazioni di cui sopra per non elaborare involontariamente valori "vecchi".
88
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.3.3
Avvertenza Per evitare errori durante l'uso degli FB leggere nellappendice il paragrafo Tipi di dati ammessi nel trasferimento dei parametri.
Campo di applicazione
Un FB contiene un programma che viene eseguito ogni qualvolta che l'FB viene richiamato da un altro blocco di codice. I blocchi funzionali facilitano la programmazione delle funzioni frequentemente ricorrenti e complesse.
FB e DB di istanza
A ogni richiamo di un blocco funzionale che trasferisce parametri viene assegnato un blocco dati di istanza. Con il richiamo di diverse istanze di un FB si possono comandare pi apparecchiature con un solo FB. Per esempio, usando dati di istanza differenti per i vari motori, l'FB per un solo tipo di motore pu comandare pi motori. I dati per ogni singolo motore (per esempio numero di giri, tempo di rampa, ore di funzionamento accumulate, ecc.) possono essere memorizzati in uno o pi blocchi dati di istanza. La figura seguente mostra i parametri formali di un FB che sostituiscono i parametri attuali, memorizzati nel blocco dati di istanza.
89
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
STEP 7 assegna i parametri attuali ai parametri formali di un FB: quando nell'istruzione di richiamo vengono definiti dei parametri attuali: le operazioni dell'FB usano i parametri attuali a disposizione. quando nell'istruzione di richiamo non viene definito alcun parametro attuale: le operazioni dell'FB usano i valori memorizzati nel DB di istanza.
La tabella seguente mostra a quali variabili dell'FB devono essere assegnati i parametri attuali.
Variabili Tipo di dati semplice Ingresso Uscita Ingr./uscite Parametro non necessario Parametro non necessario Parametro non necessario Tipo di dati Tipo di dati composti Parametro non necessario Parametro non necessario Parametro attuale necessario Tipo di parametro Parametro attuale necessario Parametro attuale necessario
90
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
91
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.3.4
Creazione di un DB di istanza
Per poter creare un blocco dati di istanza, deve gi esistere l'FB a cui il blocco deve essere assegnato. Il numero dell'FB viene stabilito al momento della creazione del blocco dati di istanza.
92
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Nell'esempio, l'FB 22 non richiede alcun blocco dati di istanza, poich i suoi dati di istanza sono memorizzati nel blocco dati di istanza dell'FB richiamante.
93
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
94
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.3.5
95
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.3.6
Blocchi predefiniti
Non necessario programmare ogni funzione. Le CPU S7 forniscono blocchi predefiniti che possono essere richiamati dal programma utente. Per maggiori informazioni consultare la guida di riferimento sui blocchi di sistema e funzioni di sistema (Rimandi alla descrizione dei linguaggi e Guida a blocchi e attributi di sistema).
Funzioni di sistema
La funzione di sistema una funzione preprogrammata, ed integrata nella CPU S7. Le SFC possono essere richiamate dal programma. Siccome fanno parte del sistema operativo, le SFC non vengono caricate come parti del programma. Sia le FC che le SFC sono blocchi "privi di memoria". Le CPU S7 forniscono SFC per funzioni di copia e di blocco controllo del programma gestione dell'orologio e del contatore ore d'esercizio trasferimento di set di dati trasferimento degli eventi da una CPU a tutte le CPU collegate in modo di funzionamento multicomputing gestione degli allarmi dall'orologio e degli allarmi di ritardo gestione di eventi di errore di sincronismo, eventi di allarme ed eventi di errore di asincronismo informazioni sui dati di sistema statici e dinamici, p.es. diagnostica aggiornamento dell'immagine di processo ed elaborazione del campo di bit indirizzamento delle unit periferia decentrata comunicazione di dati globali comunicazione attraverso collegamenti non progettati creazione di messaggi riguardanti il blocco dati
96
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Ulteriori informazioni
Per maggiori informazioni su SFB e SFC leggere il manuale di riferimento "Software di sistema per S7-300/400, Funzioni standard e di sistema". Per informazioni sulla disponibilit di SFB e SFC consultare il manuale "Sistema di automazione S7-300, Configurazione e dati della CPU" o il manuale di riferimento "Sistema di automazione S7-400, M7-400, Caratteristiche delle unit modulari.
97
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.4
Il programma utente ciclico non deve chiedere continuamente se si sono verificati eventi di allarme. Al contrario, in caso di allarme, il sistema operativo fa s che venga elaborata la parte del programma utente che si trova nell'OB di allarme, e stabilisce in che modo il controllore programmabile debba reagire a tale allarme.
.
Tipo di allarme Allarme dall'orologio Allarme di ritardo Allarme di schedulazione orologio Interrupt di processo OB di allarme da OB 10 a OB 17 da OB 20 a OB 23 da OB 30 a OB 38 Esempi applicativi Calcolo della portata di un processo di miscelazione a fine turno Comando del ventilatore che deve continuare a funzionare ancora per 20 secondi prima del disinserimento di un motore. Rilevamento del livello di segnale per un impianto di regolazione
da OB 40 a OB 47
98
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.4.1
99
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
mediante lo spostamento all'indietro dell'ora gli allarmi l'elaborazione di questi allarmi dall'orologio viene ripetuta con le CPU S7-300 dall'orologio gi elaborati risultano nuovamente in non viene ripetuta con le CPU S7-400 e CPU 318. sospeso,
100
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.4.2
101
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.4.3
102
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
.
OB di schedulazione orologioOB 30 OB 31 OB 32 OB 33 OB 34 OB 35 OB 36 OB 37 OB 38 Clock in ms 5000 2000 1000 500 200 100 50 20 10 Classe di priorit 7 8 9 10 11 12 13 14 15
103
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.4.4
Con STEP 7 si attiva la generazione degli interrupt di processo delle unit funzionali. Assegnare parametri aggiuntivi nelle maschere di parametrizzazione di tali unit funzionali.
104
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.4.5
Tipi di avviamento
Si possono distinguere i seguenti tipi di avviamento Riavviamento (escluso S7-300 e S7-400H) Nuovo avviamento (avviamento a caldo) Avviamento a freddo
Nella seguente tabella si pu consultare quale OB richiama il sistema operativo per ogni tipo di avviamento.
Tipo di avviamento Riavviamento Nuovo avviamento (Avviamento a caldo) Avviamento a freddo OB rispettivo OB 101 OB 100 OB 102
A seconda dell'evento di avvio, della CPU con cui su opera, e dei parametri impostati ion essa, viene richiamato il rispettivo OB di avviamento (OB 100, OB 101, OB 102).
Programma di avviamento
Per definire le condizioni marginali per il comportamento all'avviamento della CPU (valori di inizializzazione per RUN, valori di avviamento per le unit di periferia), occorre memorizzare il programma di avviamento nel blocco organizzativo OB 100 per il nuovo avviamento (avviamento a caldo), OB 101 per il riavviamento, OB 102 per l'avviamento a freddo. Il programma di avviamento pu avere una lunghezza qualsiasi; per la sua esecuzione non esiste alcun limite di tempo e il controllo del tempo di ciclo non attivo. Nel programma di avviamento non possibile l'elaborazione su interrupt. All'avvio lo stato di segnale di tutte le uscite digitali 0.
105
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Tempi di controllo
Per garantire un avviamento senza errori del controllore programmabile si possono parametrizzare i seguenti tempi di controllo: tempo massimo consentito per il trasferimento dei parametri alle unit tempo massimo consentito per la segnalazione di pronto delle unit dopo RETE ON nelle CPU S7-400, il tempo massimo di interruzione nel quale ancora consentito un riavviamento.
Scaduti i tempi di controllo, la CPU passa allo stato STOP, oppure si pu effettuare solo un nuovo avviamento (avviamento a caldo).
106
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.4.6
107
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Programmazione dell'OB 90
Il tempo di esecuzione dell'OB 90 non viene controllato dal sistema operativo della CPU; l'utente potr pertanto programmare nell'OB 90 dei loop di qualsiasi lunghezza. Osservare la coerenza dei dati utilizzati nel programma di priorit bassa tenendo conto in sede di programmazione di quanto segue: gli eventi di reset dell'OB 90 (vedere manuale di riferimento "Software di sistema per S7-300/400, Funzioni standard e di sistema"), l'aggiornamento asincrono dell'immagine di processo relativo all'OB 90.
108
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
4.2.4.7
Tipi di errori
Gli errori che le CPU S7 riconoscono, e ai quali possibile reagire tramite i blocchi organizzativi, sono suddivisi in due categorie: errori di sincronismo: questi errori possono essere assegnati a una determinata parte del programma utente. L'errore viene prodotto durante l'elaborazione di una determinata operazione. Se non stato caricato l'OB di errore di sincronismo corrispondente, la CPU va in STOP quando si manifesta l'errore. errori di asincronismo: questi errori non possono essere correlati direttamente al programma utente elaborato. Si tratta di errori nella classe di priorit o di errori del controllore programmabile (per esempio, difetti delle unit). Se non stato caricato l'OB di errore di asincronismo corrispondente, la CPU va in STOP quando si manifesta l'errore (ad eccezione dell'OB 70, OB 72, OB 81, OB 87).
La tabella seguente riporta i tipi di errore che possono manifestarsi, suddivisi secondo la categoria degli OB di errore.
Errori di asincronismo e di ridondanza OB 70 Errore di ridondanza della periferia (solo CPU H) OB 72 Errore di ridondanza CPU (solo nelle CPU H, p.es. guasto a una CPU) OB 80 Errore temporale (p.es. superamento del tempo di ciclo) OB 81 Errore alimentatore (p. es. errore batteria) OB 82 Allarme di diagnostica (p.es. cortocircuito nell'unit di ingresso) OB 83 Allarme di estrazione/inserimento (p.es. estrazione di un'unit di ingresso) OB 84 Errore hardware CPU (errore dell'interfaccia della rete MPI) OB 85 Errore di esecuzione programma (p.es. OB non caricato) OB 86 Guasto al telaio di montaggio OB 87 Errore di comunicazione (p. es. ID telegramma errato nella comunicazione GD) Errori di sincronismo OB 121 Errore di programmazione (p.es. DB non caricato) OB 122 Errore di accesso alla periferia (p.es. accesso a un'unit di ingresso/uscita inesistente)
109
Nozioni per lo sviluppo di strutture di programma 4.2 Blocchi nel programma utente
Avvertenza Per ignorare gli allarmi pi efficiente bloccarli nell'avviamento tramite SFC, invece di caricare un OB vuoto (con contenuto BE).
110
5
5.1
Avvio e utilizzo
Avvio di STEP 7
Dopo aver avviato Windows sulla superficie operativa compare l'icona del SIMATIC Manager che serve per entrare nel software STEP 7. Per avviare rapidamente STEP 7, posizionare il puntatore del mouse sull'icona "SIMATIC Manager" e fare doppio clic. Si aprir la finestra del SIMATIC Manager da cui possibile intervenire sulle funzioni installate dall'utente per il software di base e per il pacchetto opzionale. In alternativa anche possibile avviare il SIMATIC Manager mediante il pulsante "Avvio" della barra delle applicazioni del sistema operativo (sotto "Simatic"). Avvertenza Per ulteriori informazioni sui comandi e le opzioni standard di Windows, consultare il manuale utente o la Guida online del sistema operativo Windows installato.
SIMATIC Manager
Il SIMATIC Manager costituisce la superficie iniziale per la configurazione e la programmazione. Esistono le seguenti possibilit: creare i progetti configurare e parametrizzare l'hardware progettare i collegamenti di rete dell'hardware programmare i blocchi testare e mettere in funzione i programmi.
L'uso delle funzioni orientato agli oggetti, intuitivo e di facile apprendimento. Con il SIMATIC Manager possibile lavorare offline, ovvero senza il controllore collegato online, ovvero con il controllore collegato
Fasi successive
Le soluzioni di automazione vengono generate sotto forma di "progetti". Per facilitare la progettazione, si consiglia di approfondire alcuni argomenti fondamentali quali: la superficie operativa alcuni comandi di base la Guida online
111
5.2
112
Nei drive di rete l'indicazione del percorso deve avvenite in conformit alla nota UNC (= Universal Naming Convention, d. h. \\<Servername>\<Share>\...). Esempio: \\<Servername>\<Share>\SIEMENS\STEP7\S7proj\MyConfig\MyConfig.s7p /keep
113
5.3
Guida online
La Guida online consente di ottenere in modo rapido ed efficiente informazioni sul punto in cui si desidera intervenire. Essa consente di consultare le informazioni, in modo veloce e mirato, senza dover ricorrere all'uso del manuale. Nella Guida online l'utente trover le seguenti voci: Argomenti della Guida...: offre diverse possibilit per visualizzare le informazioni. Guida al contesto (tasto F1): consente di ottenere informazioni sull'oggetto selezionato con il mouse o sulla finestra di dialogo attiva o il campo attivo. Introduzione: offre una panoramica completa sull'utilizzo, le caratteristiche principali e le funzioni di un'applicazione. Primi passi: riassume le prime operazioni da eseguire per raggiungere i primi obiettivi. Uso della Guida: offre una descrizione delle possibilit disponibili per reperire determinate informazioni nella Guida stessa. Informazioni su...: fornisce informazioni sulla versione attuale dell'applicazione.
Selezionando il menu ? possibile accedere da qualsiasi finestra agli argomenti che si riferiscono alla situazione in cui si sta operando.
Le ultime tre modalit di consultazione della Guida online vengono definite contestuali.
114
5.4
5.4.1
Oggetto Progetto Oggetto Stazione Oggetto Unit programmabile Oggetto Programma S7/M7 Oggetto Cartella per sorgenti Oggetto Cartella per blocchi
Gli oggetti fungono da supporto di propriet, da cartelle, da supporto di funzioni (ad es. per l'avviamento di una determinata applicazione).
115
116
5.4.2
Oggetto Progetto
Il progetto rappresenta l'insieme di tutti i dati e programmi di una soluzione di automazione; esso sta al vertice di una gerarchia di oggetti.
Oggetto Progetto Oggetto Stazione Oggetto Unit programmabile Oggetto Programma S7/M7 Oggetto Cartella per sorgenti Oggetto Cartella per blocchi
Simbolo
Selezione di funzioni importanti Creazione di progetti Archiviazione di progetti e biblioteche Stampa della documentazione di progetto Gestione di testi in pi lingue Verifica dei pacchetti opzionali utilizzati nel progetto Riorganizzazione Traduzione e modifica di testi utente Inserimento di oggetti OS Modifica di progetti da parte di diversi operatori Conversione dei progetti della versione 2 Impostazione dell'interfaccia PG/PC
117
Simbolo
Oggetti al livello dei progetti Stazione: Stazione SIMATIC 300 Stazione SIMATIC 400 Programma S7
Selezione di funzioni importanti Inserimento delle stazioni Le stazioni sono contemporaneamente oggetti (livello dei progetti) e cartelle per oggetti (livello delle stazioni). Per ulteriori funzioni consultare l'argomento Oggetto Stazione Programmi S7/M7 senza stazione e CPU I programmi S7-/M7 sono contemporaneamente oggetti (livello dei progetti) e cartelle per oggetti (livello dei programmi). Per ulteriori funzioni consultare l'argomento Oggetto Programma S7/M7 Propriet di sotto-reti e nodi di comunicazione Sommario: comunicazione dei dati globali Procedura per configurare la comunicazione GD
Programma M7 Rete per avviare l'applicazione per la progettazione della rete e l'impostazione delle sue propriet
118
5.4.3
Oggetto Biblioteca
Una biblioteca pu contenere programmi S7/M7, e svolge la funzione di deposito dei blocchi. Si trova al vertice di una gerarchia.
Oggetto Biblioteca Oggetto Programma S7/M7 Oggetto Cartella per sorgenti Oggetto Cartella per blocchi
Simbolo
Selezione di funzioni importanti Prospetto delle biblioteche standard Come operare con le biblioteche Archiviazione di progetti e biblioteche
Simbolo
Selezione di funzioni importanti Inserimento di un programma S7/M7 I programmi S7/M7 sono contemporaneamente oggetti (livello dei progetti) e cartelle per oggetti (livello dei programmi). Per ulteriori funzioni consultare l'argomento Oggetto Programma S7/M7
Programma M7
119
5.4.4
Oggetto Stazione
Una stazione SIMATIC 300/400 rappresenta una configurazione hardware S7 con una o pi unit programmabili.
Simbolo
Selezione di funzioni importanti Inserimento delle stazioni Caricamento di stazione nel PG Caricamento della configurazione nel sistema di destinazione Caricamento nel PG della configurazione di una stazione Visualizzazione di messaggi CPU e di messaggi di diagnostica personalizzati Progettazione di segnalazioni di errori di sistema Diagnostica hardware e ricerca di errori Visualizzazione e modifica dello stato di funzionamento Visualizzazione e impostazione di data e ora Cancellazione della memoria di caricamento/di lavoro e cancellazione totale della CPU Creazione e parametrizzazione di stazioni PC SIMATIC Progettazione di collegamenti per stazioni PC SIMATIC Caricamento di una stazione PC SIMATIC Evidenziazione nella schermata di rete della stazione PC SIMATIC progettante
120
Simbolo
Selezione di funzioni importanti Operazioni fondamentali nella configurazione hardware Operazioni fondamentali nella configurazione di stazioni In breve: procedura per configurare e parametrizzare le strutture centrali Procedura fondamentale per configurare sistemi master DP Configurazione del funzionamento multicomputing Le unit programmabili sono contemporaneamente oggetti (livello delle stazioni) e cartelle per gli oggetti (livello "Unit programmabili"). Per ulteriori funzioni consultare l'argomento Oggetto Unit programmabile
Unit programmabili
121
5.4.5
Oggetto Progetto Oggetto Stazione Oggetto Unit programmabile Oggetto Programma S7/M7 Oggetto Cartella per sorgenti Oggetto Cartella per blocchi
Simbolo
Selezione di funzioni importanti In breve: procedura per configurare e parametrizzare le strutture centrali Visualizzazione di messaggi CPU e di messaggi di diagnostica personalizzati Progettazione di segnalazioni di errori di sistema Diagnostica hardware e ricerca di errori Caricamento mediante memory card EPROM Protezione password per l'accesso ai sistemi di destinazione Visualizzazione della finestra di forzamento Visualizzazione e modifica dello stato di funzionamento della CPU Visualizzazione e impostazione della data e dell'ora della CPU Impostazione del comportamento operativo Cancellazione della memoria di caricamento/di lavoro e cancellazione totale della CPU Simboli di diagnostica nella visualizzazione online Ripartizione delle aree di memoria Salvataggio di blocchi caricati in EPROM integrata Aggiornamento del sistema operativo sul sistema di destinazione Rappresentazione delle unit progettate con le nuove versioni di STEP 7
122
Simbolo
Selezione di funzioni importanti Inserimento di un programma S7 / M7 I programmi S7/M7 sono contemporaneamente oggetti (livello dei progetti) e cartelle per oggetti (livello dei programmi). Per ulteriori funzioni consultare l'argomento Oggetto Programma S7/M7
Collegamento in rete di stazioni all'interno di un progetto Tipi di collegamento con partner nello stesso progetto Nozioni utili sui diversi tipi di collegamento Introduzione di nuovi collegamenti Progettazione di collegamenti per unit di stazioni SIMATIC
123
5.4.6
Simbolo
Selezione funzioni importanti Inserimento di un programma S7 / M7 Impostazione della preferenza operando (simbolico/assoluto) Procedura fondamentale per la creazione di blocchi di codice Assegnazione di numeri di messaggio Creazione e modifica dei messaggi di diagnostica personalizzati (per tutto il progetto) Creazione dei messaggi di diagnostica personalizzati (per tutta la CPU) Traduzione e modifica di testi utente Gestione di testi in pi lingue Visualizzazione di messaggi CPU e di messaggi di diagnostica personalizzati Misure nel programma per la gestione di errori Presentazione dei sistemi M7 Creazione (di massima) del software di progetto
Programma M7 Programma
124
Simbolo
Oggetti al livello del programma Cartella per sorgenti Cartella per blocchi Cartella per biblioteche di testi Tabella dei simboli per assegnazione di simboli a segnali e altre variabili
Selezione di funzioni importanti Per ulteriori funzioni vedere Oggetto Cartella per sorgenti Per ulteriori funzioni vedere l'argomento Oggetto Cartella per blocchi Biblioteche di testi utente Indirizzamento assoluto e simbolico Struttura e componenti della tabella dei simboli Possibilit di immissione di simboli globali Cenni generici sull'introduzione di simboli Assegnazione e modifica dei messaggi riferiti ai simboli (per tutto il progetto) Assegnazione e modifica dei messaggi riferiti ai simboli (per tutta la CPU) Traduzione e modifica di testi utente Progettazione degli attributi SeS con la tabella dei simboli Modifica dell'attributo di comunicazione Esportazione ed importazione delle tabelle dei simboli
125
5.4.7
Simbolo
Selezione di funzioni importanti Caricamento con la gestione del progetto Caricamento senza gestione del progetto Sommario dei dati di riferimento possibili Ricablaggio Confronto di blocchi Traduzione e modifica di testi utente Rimandi alla descrizione dei linguaggi e Guida a blocchi e attributi di sistema
126
Simbolo
Selezione di funzioni importanti Procedura fondamentale per la creazione di blocchi di codice Creazione di blocchi Fondamenti della programmazione in sorgenti AWL Confronto di blocchi Introduzione a tipi di dati e parametri Caricamento Test con lo stato di programma Informazioni sull'esecuzione del test nel modo passo singolo / punti d'arresto Ricablaggio Guida ai blocchi Introduzione a tipi di dati e parametri Caricamento Test con lo stato di programma Informazioni sull'esecuzione del test nel modo passo singolo / punti d'arresto Ricablaggio Attributi per blocchi e parametri Introduzione a tipi di dati e parametri Uso di multiistanze Caricamento Test con lo stato di programma Informazioni sull'esecuzione del test nel modo passo singolo / punti d'arresto Ricablaggio Attributi per blocchi e parametri Assegnazione e modifica di messaggi riferiti ai blocchi (per tutto il progetto) Assegnazione e modifica di messaggi riferiti ai blocchi (per tutta la CPU) Progettazione di messaggi PCS7 (per tutto il progetto) Progettazione di messaggi PCS7 (per tutta la CPU) Traduzione e modifica di testi utente Assegnazione di attributi SeS ai parametri FB Creazione di blocchi Fondamenti della programmazione in sorgenti AWL Introduzione a tipi di dati e parametri Impiego di tipi di dati definiti dall'utente per l'accesso ai dati Attributi per blocchi e parametri
OB (blocchi organizzativi)
Funzioni supplementari:
FC (funzioni)
Funzioni supplementari:
FB (blocchi funzionali)
Funzioni supplementari:
127
Simbolo
Selezione di funzioni importanti Vista dati dei blocchi dati Vista di dichiarazione dei blocchi dati Caricamento Stato di programma dei blocchi dati Introduzione a tipi di dati e parametri Uso di multiistanze Attributi per blocchi e parametri Assegnazione e modifica di messaggi riferiti ai blocchi (per tutto il progetto - solo DB di istanza) Modifica di messaggi riferiti ai blocchi (per tutta la CPU - solo DB di istanza) Progettazione di messaggi PCS7 (per tutto il progetto - solo DB di istanza) Progettazione di messaggi PCS7 (per tutta la CPU - solo DB di istanza) Traduzione e modifica di testi utente (solo DB di istanza) Caricamento Attributi per blocchi e parametri Guida ai blocchi Caricamento Attributi per blocchi e parametri Assegnazione e modifica di messaggi riferiti ai blocchi (per tutto il progetto) Creazione di messaggi riferiti ai blocchi (per tutta la CPU) Progettazione di messaggi PCS7 (per tutto il progetto) Progettazione di messaggi PCS7 (per tutta la CPU) Traduzione e modifica di testi utente Guida ai blocchi Regole per la definizione delle propriet dei blocchi nelle sorgenti AWL Propriet dei blocchi Per maggiori informazioni consultare la documentazione del pacchetto opzionale S7-PDIAG. Per maggiori informazioni consultare la documentazione del pacchetto opzionale S7 Distributed Saftey. Fondamenti per controllo e comando con la tabella delle variabili Introduzione al test con la tabella delle variabili Introduzione al controllo di variabili Introduzione al comando di variabili Introduzione al forzamento di variabili
Blocco con protezione KNOW HOW Blocco con funzioni di diagnostica Blocco creato con i linguaggi F-FUP/-KOP/-AWL/-DB VAT (tabella delle variabili)
128
Simbolo
Selezione di funzioni importanti Gli SDB vengono modificati solo indirettamente mediante funzioni:
Introduzione alla configurazione dell'hardware Propriet di sotto-reti e nodi di comunicazione Sommario: comunicazione dei dati globali Assegnazione e modifica dei messaggi riferiti ai simboli Caricamento
129
5.4.8
Simbolo
Selezione di funzioni importanti Fondamenti della programmazione in sorgenti AWL Esportazione di sorgenti Importazione di sorgenti
Simbolo
Oggetti nella cartella per Selezione di funzioni importanti sorgenti Sorgente (p. es. sorgente AWL)
Fondamenti della programmazione in sorgenti AWL Creazione di sorgenti AWL Inserimento di modelli di blocco in sorgenti AWL Inserimento del codice sorgente di blocchi presenti in sorgenti AWL Verifica della coerenza delle sorgenti AWL Compilazione delle sorgenti AWL Generazione di sorgenti AWL dai blocchi Esportazione di sorgenti
Importazione di sorgenti
Come lavorare con i modelli di segmenti
Modello di segmento
130
5.4.9
Immissione in biblioteche
Il programma pu essere inserito anche in una biblioteca se esso definito per il sistema di destinazione SIMATIC S7 e se va utilizzato pi volte come in un "software pool". Per eseguire i test occorre tuttavia che i programmi si trovino direttamente sotto un progetto, dato che solo in tal caso pu essere stabilito un collegamento al sistema di destinazione.
Avvertenza
Nel cancellare le stazioni o le unit programmabili, all'utente viene chiesto se deve essere cancellato anche il programma contenuto. Rispondendo di no, il programma viene inserito come programma senza stazione direttamente sotto il progetto.
131
5.5
5.5.1
Leggere il seguito...
Vengono qui di seguito descritte le operazioni fondamentali per la modifica degli oggetti. Si consiglia di prestare particolare attenzione a quanto verr esposto, poich si tratta di concetti fondamentali che verranno ripresi nel resto del manuale.
132
5.5.2
Barra di stato
La barra di stato visualizza informazioni relative al contesto.
133
5.5.3
Schede
Il contenuto di alcune finestre di dialogo organizzato, per una maggiore chiarezza, sotto forma di scheda (vedi figura seguente).
I nomi delle singole schede si trovano sul margine superiore della finestra. Per mettere in primo piano una scheda, basta fare clic sulla suo nome.
134
5.5.4
135
Apertura di oggetti
Vi sono diverse possibilit di aprire un oggetto nella finestra dei dettagli: facendo doppio clic sul simbolo dell'oggetto selezionando l'oggetto e il comando del menu Modifica > Apri oggetto. Ci pu funzionare solo per oggetti che non costituiscono cartelle.
Dopo aver aperto un oggetto possibile crearne o modificarne il contenuto. Se si apre un oggetto dell'ultimo tipo, il suo contenuto viene visualizzato mediante il componente software adeguato in una nuova finestra dove pu essere modificato. Non possono essere modificati gli oggetti il cui contenuto viene utilizzato altrove .
Avvertenza Eccezione: le stazioni appaiono come cartella per unit programmabili (con doppio clic) e per la configurazione della stazione. Facendo clic sull'oggetto "Hardware" viene avviata l'applicazione per la configurazione dell'hardware. Lo stesso risultato si pu ottenere selezionando la stazione e quindi il comando Modifica > Apri oggetto. .
136
Avvertenza Le propriet della cartella "Dati di sistema" e dell'oggetto "Hardware" non possono essere visualizzate o modificate. Nelle finestre di dialogo sulle propriet degli oggetti di un progetto a sola lettura non possibile scrivere. In tal caso i campi di immissione sono rappresentati a basso contrasto. Se si visualizzano le propriet delle unit programmabili, per ragioni di coerenza non si potranno modificare i parametri visualizzati. Per modificare i parametri occorre richiamare l'applicazione "Configurazione hardware". Se si modificano le impostazioni degli oggetti nel sistema di creazione (p. es. dati di parametrizzazione di un'unit) ci non vuol dire che esse siano automaticamente attive nel sistema di destinazione. A tal fine devono infatti trovarsi nel sistema di destinazione i blocchi dati di sistema in cui le impostazioni sono salvate. Caricando un programma utente completo vengono automaticamente caricati anche i blocchi dati di sistema. Se dopo il caricamento di un programma vengono modificate le impostazioni, possibile ricaricare l'oggetto "Dati di sistema" per portare le impostazioni sul sistema di destinazione. Si consiglia decisamente di modificare le cartelle soltanto con STEP 7 in quanto possono essere strutturate fisicamente in modo diverso da come appaiono nel SIMATIC Manager.
Avvertenza La tabella dei collegamenti nella cartella "Collegamenti" non pu essere copiata. Ricordare che copiando elenchi di testi rilevanti per il servizio, vengono acquisite soltanto le lingue installate nell'oggetto di destinazione.
Per delle istruzioni passo passo per l'operazione di copia consultare l'argomento Copia di oggetti.
137
Modifica delle propriet dell'oggetto scegliere nella finestra del progetto l'oggetto desiderato e richiamare il comando di menu Modifica > Rinomina. Appare una cornice intorno al nome, che pu ora essere modificato mediante tastiera.
Se il nome di un oggetto non modificabile, la casella di introduzione della finestra di dialogo visualizza il nome attuale su sfondo grigio, e non consente di immettere un testo diverso.
Avvertenza Se durante la modifica l'indicatore del mouse viene spostato dalla casella dei nomi, e quindi eseguita un'altra azione (p. es. selezionato un comando di menu), l'operazione di modifica viene terminata. Se consentita, la modifica del nome viene immessa.
Per delle istruzioni passo passo sull'attribuzione di un nuovo nome ad un oggetto consultare l'argomento Attribuzione di un nuovo nome agli oggetti.
138
Avvertenza I seguenti oggetti non possono essere spostati Collegamenti Blocchi dati di sistema (SDB) nella visualizzazione online Funzioni di sistema (SFC) e blocchi funzionali di sistema (SFB) nella visualizzazione online
Per delle istruzioni passo passo sull'operazione di spostamento di oggetti consultare l'argomento Spostamento di oggetti.
Ordinamento di oggetti
Nella finestra dei dettagli (comando di menu Visualizza > Dettagli) possibile ordinare gli oggetti secondo i loro attributi. Cliccare a tal fine sul titolo corrispondente dell'attributo desiderato. Ricliccando si inverte la sequenza di ordinamento. I blocchi vengono ordinati secondo il loro numero, p. es. FB 1, FB 2, FB 11, FB 12, FB 21, FC 1.
Il criterio di ordinamento dei dettagli preimpostato non quindi quello di disporre gli oggetti in ordine alfanumericamente crescente o descrescente.
139
Cancellazione di oggetti
Possono essere cancellati sia cartelle sia oggetti. Cancellando una cartella si eliminano anche tutti gli oggetti che vi sono contenuti. L'operazione di cancellazione non pu essere annullata. Se non si certi di non voler pi utilizzare un oggetto, consigliabile archiviare intanto l'intero progetto.
Avvertenza Non si possono cancellare i seguenti oggetti. Collegamenti Blocchi dati di sistema (SDB) nella visualizzazione online Funzioni di sistema (SFC) e blocchi funzioinali di sistema (SFB) nella visualizzazione online
Per delle istruzioni passo passo sulla cancellazione di oggetti consultare l'argomento Cancellazione di oggetti.
140
5.5.5
141
5.5.6
Avvertenza Non vengono memorizzati i contenuti della finestra di progetti online, della finestra "Nodi accessibili", e della finestra "Memory card S7". Le password eventualmente introdotte per l'accesso ai sistemi di destinazione (S7-300/S7-400) non vengono salvate oltre la fine della sessione di lavoro.
5.5.7
Per ordinare in modo orizzontale tutte le finestre visualizzate della tabella dei simboli aperta, selezionare il comando di menu Finestra > Ordinamento > Orizzontale. Per ordinare in modo verticale tutte le finestre visualizzate della tabella dei simboli aperta, selezionare il comando di menu Finestra > Ordinamento > Verticale.
142
5.5.8
Informazioni memorizzate
Quando si memorizza la disposizione delle finestre, vengono registrate le seguenti informazioni: posizione della finestra principale progetti e biblioteche aperte con la posizione delle rispettive finestre ordine in cui sono disposte le eventuali finestre sovrapposte.
Avvertenza Non vengono memorizzati i contenuti della finestra di progetti online, della finestra "Nodi accessibili", e della finestra "Memory card S7".
Memorizzazione della disposizione delle finestre Per memorizzare la disposizione attuale delle finestre, selezionare il comando di menu Finestra > Salva ordinamento.
Avvertenza
Quando si ripristina una finestra, viene rappresentata dettagliatamente solo una parte della gerarchia in cui si trova l'oggetto che era selezionato quando stata memorizzata la disposizione della finestra.
143
5.6
5.6.1
Con l'immissione dell'ultima lettera della combinazione di tasti viene attivato il comando di menu.
Esempi Combinazioni di tasti per i comandi di menu File > Archivia ALT, F, H File > Apri ALT, F, A
144
Aggiorna la visualizzazione di stato delle CPU visibili nella visualizzazione CTRL+F5 ondine Impostazioni Dati di riferimento > Visualizza Ordinamento > Sovrapposto Ordinamento > Orizzontale Ordinamento > Verticale Guida al contesto (menu Strumenti) (menu Strumenti) (menu Finestra) (menu Finestra) (menu Finestra) (menu ?) CTRL+ALT+I CTRL+ALT+D MAIUSC+F5 MAIUSC+F2 MAIUSC+F3 F1 Se esiste un contesto attuale, p. es. un comando di menu selezionato, viene richiamato il relativo argomento della Guida; altrimenti compare il sommario della Guida online.
145
5.6.2
Spostamento del cursore nella barra dei menu / nel menu contestuale
Funzione Spostarsi alla barra dei menu Spostarsi al menu contestuale Spostarsi al menu contenente la lettera X sottolineata Comando di menu assegnato Spostarsi a sinistra di un comando Spostarsi a destra di un comando Spostarsi in alto di un comando Spostarsi in basso di un comando Attivare il comando di menu selezionato Abbandonare il menu o ritornare al testo Tasti F10 MAIUSC+F10 ALT+X Lettera sottolineata nel comando freccia SINISTRA freccia DESTRA freccia SU freccia GI INVIO ESC
146
147
5.6.3
5.6.4
148
5.6.5
149
150
6
6.1
Nella creazione di un progetto l'operazione principale costituita dalla preparazione di tali dati e dalla programmazione. I dati vengono collocati nei progetti sotto forma di oggetti. Essi vengono disposti in una struttura ad albero (gerarchia del progetto). La rappresentazione della gerarchia nella finestra di progetto simile a quella della Gestione risorse di Windows. Le icone degli oggetti hanno per un aspetto dissimile da Windows95. Il vertice della gerarchia del progetto ha la seguente struttura. 1. livello : 2. livello : 3. livello : progetto sotto-reti, stazioni o programmi S7/M7 dipende dall'oggetto del 2 livello.
Finestra di progetto
La finestra di progetto suddivisa in due parti. A sinistra viene rappresentata la struttura del progetto. A destra viene visualizzato il contenuto dell'oggetto selezionato nella parte sinistra, con il tipo di visualizzazione prescelto (icone grandi, icone piccole, elenco, dettagli) . Nel lato sinistro della finestra cliccare sulla casella con il segno pi per visualizzare la struttura completa del progetto. Si otter una rappresentazione simile a quella riportata dalla figura seguente.
151
Al vertice della gerarchia degli oggetti si trova l'oggetto "S7_Pro1" che rappresenta l'intero progetto. Lo si pu utilizzare per visualizzare le propriet del progetto, e serve da cartella delle reti (per la progettazione delle reti), delle stazioni (per la configurazione dell'hardware) e dei programmi S7 o M7 (per la creazione del software). Selezionando il simbolo del progetto, gli oggetti in esso contenuti vengono visualizzati nella parte destra della finestra. Gli oggetti che si trovano al vertice della gerarchia (oltre ai progetti, le biblioteche) sono il punto da cui inizia la selezione degli oggetti all'interno delle finestre di dialogo.
Avvertenza La configurazione dell'hardware e la progettazione dei collegamenti in rete possono essere eseguite solo nella visualizzazione offline.
152
Preparazione e elaborazione del progetto 6.2 Nozioni utili sulla protezione di accesso
6.2
L'attivazione della protezione di accesso in SIMATIC Manager avviene mediante il comando di menu Strumenti > Protezione di accesso, Attiva. Attivando per la prima volta la protezione di accesso da questo comando di menu, si apre una finestra di dialogo che richiede la registrazione in SIMATIC Logon nonch l'assegnazione di una password al progetto. L'editazione del progetto o della biblioteca interessati avviene d'ora in poi esclusivamente previa immissione della password o autenticazione come utente autorizzato. Il comando di menu Rimuovi protezione di accesso e protocollo modifiche rimuove sia la protezione di accesso sia il protocollo modifiche di un progetto o di una biblioteca protetti da password. Dopo aver rimosso la protezione di accesso possibile rielaborare i progetti anche con una versione di STEP 7 inferiori a V5.4.
153
Preparazione e elaborazione del progetto 6.2 Nozioni utili sulla protezione di accesso
2.
3.
4.
La chiusura del progetto non La chiusura del progetto non comporta la disconnessione in comporta la disconnessione SIMATIC Logon. in SIMATIC Logon. La disconnessione dell'utente deve avvenire da Strumenti > SIMATIC Logon Service > pulsante "Sconnetti".
5.
154
Preparazione e elaborazione del progetto 6.2 Nozioni utili sulla protezione di accesso
Avvertenze La disattivazione della protezione di accesso presuppone l'autenticazione come amministratore del progetto in SIMATIC Logon. Al momento della prima attivazione della protezione di accesso il formato del progetto viene modificato. Un'apposita avvertenza segnala l'impossibilit di elaborare ora il progetto modificato con versioni meno recenti di STEP 7. La funzione Strumenti > Protezione di accesso > Rimuovi protezione di accesso e protocollo modifiche consente di elaborare nuovamente il progetto o la biblioteca con versioni di STEP 7 inferiori a V5.4. Vanno tuttavia perduti tutti i protocolli di modifica e le informazioni sugli utenti che accedono al progetto o alla biblioteca. L'utente attualmente registrato viene visualizzato sulla barra di stato di SIMATIC Manager. L'utente attualmente registrato che attiva la protezione di accesso, viene inserito come amministratore di progetto e, alla prima attivazione, deve assegnare la password del progetto. L'apertura di un progetto protetto da password presuppone l'autenticazione come amministratore o elaboratore dello stesso in SIMATIC Logon oppure la conoscenza della password. Tenere presente che, all'apertura di un progetto tramite password, l'utente che ha eseguito il logon viene registrato come amministratore nel progetto stesso Se nel progetto/nella biblioteca attivata la protezione di accesso, verr visualizzata l'icona di una chiave rossa. Se il multiprogetto contiene esclusivamente progetti o biblioteche con protezione di accesso attivata, l'icona visualizzata sar anche in questo caso una chiave rossa. Se nel progetto/nella biblioteca non attivata la protezione di accesso, verr visualizzata l'icona di una chiave bianca. Se il multiprogetto contiene alcuni progetti o biblioteche con protezione di accesso disattivata ed altri con protezione di accesso attiva, oppure esclusivamente progetti/biblioteche con protezione disattivata, l'icona visualizzata sar anche in questo caso una chiave bianca.
155
Preparazione e elaborazione del progetto 6.3 Nozioni utili sul protocollo modifiche
6.3
possibile visualizzare il protocollo modifiche, corredarlo di note giustificative delle modifiche e di commenti. L'esecuzione di questa funzione presuppone tuttavia l'installazione di SIMATIC Logon. L'attivazione del protocollo modifiche avviene in SIMATIC Manager mediante il comando di menu Strumenti > Attiva protocollo modifiche, Dopodich sar possibile, avvalendosi del rispettivo comando di menu, visualizzare o disattivare nuovamente questo protocollo. In funzione dell'oggetto selezionato nella struttura del progetto (p. es. cartella di progetto o stazioni subordinate), viene visualizzato il rispettivo protocollo modifiche.
Avvertenze La funzione Strumenti > Protezione di accesso > Rimuovi protezione di accesso e protocollo modifiche consente di elaborare nuovamente il progetto o la biblioteca con versioni di STEP 7 inferiori a V5.4. Vanno tuttavia perduti tutti i protocolli di modifica e le informazioni sugli utenti che accedono al progetto o alla biblioteca. L'esecuzione di questa funzione presuppone l'autenticazione come amministratore del progetto in SIMATIC Logon e l'attivazione della protezione di accesso per il progetto interessato.
156
Preparazione e elaborazione del progetto 6.4 Utilizzo dei set di caratteri stranieri
6.4
Lingua di STEP 7
La lingua di STEP 7 si imposta in SIMATIC Manager con il comando di menu Strumenti > Impostazioni. Questa la lingua in cui vengono visualizzati gli elementi della superficie operativa, i comandi di menu, le finestre di dialogo e i messaggi di errore di STEP 7. Qualora venisse impiegata una lingua di Windows diversa da tedesco, inglese, francese, italiano o spagnolo, selezionare l'inglese come lingua di STEP 7 per garantire la rappresentazione ineccepibile della superficie operativa.
157
Preparazione e elaborazione del progetto 6.4 Utilizzo dei set di caratteri stranieri
Regole
Se si ha intenzione di elaborare i propri progetti o le biblioteche con computer su cui impostata un'altra lingua, necessario rispettare le seguenti regole per evitare incompatibilit o un'alterazione dei dati in seguito all'utilizzo dei set di caratteri di lingue straniere. Installare STEP 7 solo in directory che contengono i caratteri inclusi nel set inglese (caratteri ASCII 0x2a 0x7f). Utilizzare per il progetto solo nomi e percorsi che contengono caratteri inclusi nel set inglese (caratteri ASCII 0x2a 0x7f). Se ad es. si utilizzano le dieresi tedesche, o i caratteri cirillici o cinesi, il progetto potr essere aperto solo con quei computer in cui siano state impostate le lingue necessarie in Windows. Nei multiprogetti utilizzare solo progetti e biblioteche nella stessa lingua, oppure per i quali la lingua sia irrilevante. Per i multiprogetti la lingua sempre irrilevante. Creare sempre biblioteche in cui la lingua impostata sia irrilevante, affinch possano essere utilizzate su computer in cui impostata una lingua diversa in Windows. Nei nomi da assegnare alle biblioteche, nei commenti, nei simboli dei nomi ecc. utilizzare solo i caratteri ASCII (0x2a 0x7f) affinch le biblioteche possano essere utilizzate senza problemi. Nell'importazione ed esportazione di configurazioni hardware o tabelle dei simboli assicurarsi che le lingue dei file utilizzati siano compatibili. Utilizzare, per i nomi degli attributi definiti dall'utente, esclusivamente caratteri del set di caratteri inglese (caratteri ASCII 0x2a - 0x7f). Qualora in una sorgente AWL venissero impiegati per le propriet dei blocchi TITLE, AUTHOR, FAMILY o NAME caratteri non compresi nel set di caratteri inglese (caratteri ASCII 0x2a - 0x7f), contrassegnare questi caratteri con le virgolette.
Avvertenze Nel caso in cui si modifichino o copino biblioteche o progetti creati su computer nei quali l'impostazione della lingua in Windows irrilevante, ma che non siano compatibili con il computer attuale, si potrebbe verificare un'alterazione dei dati qualora nel progetto o nella biblioteca fossero utilizzati dei caratteri non contenuti nel set di caratteri inglesi (caratteri ASCII 0x2a 0x7f). Pertanto, prima di elaborare progetti o biblioteche "non Siemens", verificare se le impostazioni della lingua in Windows del proprio computer coincidono o meno con la lingua del progetto. Nel caso in cui si esportino configurazioni hardware o tabelle dei simboli che devono essere poi importate con un'impostazione diversa della lingua in Windows, accertarsi che vengano utilizzati esclusivamente caratteri ASCII (0x2a 0x7f) e non caratteri specifici per una lingua quali p. es. dieresi tedesche, caratteri cirillici o giapponesi. L'importazione di configurazioni hardware o tabelle dei simboli contenenti caratteri specifici per una lingua quali p. es. dieresi tedesche, caratteri cirillici o giapponesi, pu avvenire esclusivamente utilizzando la medesima impostazione della lingua in Windows con la quale esse sono state in precedenza esportate. Qualora venissero importate p. es. vecchie tabelle dei simboli che potrebbero contenere caratteri specifici per una lingua, controllare attentamente i risultati: i simboli devono essere univoci, privi di punti interrogativi o caratteri illeggibili ed inoltre plausibili. Nelle tabelle dei simboli contenenti caratteri speciali non definiti nelle rispettive impostazioni della lingua in Windows, possono verificarsi, a causa della presenza di punti interrogativi e caratteri illeggibili, modifiche dei nomi con conseguenti errori nell'ordinamento di nomi e commenti. Ricordare, all'assegnazione dell'indirizzo simbolico, di inserire i nomi simbolici tra virgolette ("<Nome simbolico>").
158
Preparazione e elaborazione del progetto 6.4 Utilizzo dei set di caratteri stranieri
Procedura generale
Per inserire in progetti e biblioteche dei testi scritti con set di caratteri stranieri, procedere come descritto di seguito: 1. Nel Pannello di controllo di Windows impostare la lingua desiderata. 2. Creare un progetto. 3. Inserire il testo nella lingua straniera. Nel caso di progetti o biblioteche create con STEP 7 V5.3 SP2, la lingua del progetto risulta "non ancora definita". Con il comando di menu Modifica > Propriet dell'oggetto possibile in questi casi impostare come lingua del progetto la lingua attualmente impostata in Windows. Accertarsi a priori che non vengano utilizzati caratteri non definiti nelle impostazione attuali della lingua di Windows.
159
6.5
160
6.6
Creazione di progetti
Per risolvere un compito di automazione nell'ambito della gestione di un progetto, si deve innanzitutto creare un progetto nuovo. Il progetto creato viene memorizzato in una directory appositamente impostata selezionando nella scheda "Generale" per i progetti il comando di menu Strumenti > Impostazioni.
Avvertenza Il SIMATIC Manager consente di utilizzare nomi pi lunghi di 8 caratteri. Tuttavia il nome della directory del progetto viene troncata a 8 caratteri. I nomi dei progetti devono perci distinguersi tra loro nei primi 8 caratteri. La distinzione tra maiuscole e minuscole non viene fatta.
Per una spiegazione esaustiva della creazione di progetti vedere l'argomento Creazione manuale di progetti oppure Creazione di progetti tramite Assistente .
161
162
6.6.1
Inserimento di stazioni
La stazione di un progetto costituisce la struttura hardware del sistema di automazione, e contiene i dati di configurazione e parametrizzazione delle singole unit. I nuovi progetti creati con l'Assistente "Nuovo progetto" contengono gi una stazione. Altrimenti si potr creare una stazione con il comando Inserisci > Stazione erzeugen. Sono selezionabili le seguenti stazioni. Stazione SIMATIC 300 Stazione SIMATIC 400 Stazione SIMATIC H Stazione SIMATIC PC un PC/PG una SIMATIC S5 altre stazioni, cio non SIMATIC S7/M7, SIMATIC S5.
La stazione viene inserita con un nome predefinito (p. es. Stazione SIMATIC 300 (1), Stazione SIMATIC 300 (2), ecc.). Questi ultimi potranno essere ovviamente sostituiti con nomi con significati specifici. Per una spiegazione passo passo a questo proposito vedere l'argomento Inserimento di una stazione.
Passi successivi
Dopo aver creato la configurazione hardware, l'utente potr creare il software per le unit programmabili (vedere anche Inserimento di un programma S7 / M7).
163
6.6.2
Inserimento di un programma S7 / M7
Il software per le unit programmabili viene memorizzato nelle cartelle per gli oggetti. Per le unit SIMATIC S7 si tratta dell'oggetto "Programma S7", per le unit SIMATIC M7 dell'oggetto "Programma M7". La figura seguente mostra un programma S7 in un'unit programmabile di una stazione SIMATIC 300.
Componenti gi creati
Per ogni unit programmabile viene creato automaticamente un programma S7/M7 sotto forma di cartella. Il programma S7 contiene gi: la tabella dei simboli (oggetto "Simboli"), la cartella "Blocchi" con il primo blocco, la cartella "Sorgenti" per i programmi sorgente.
Il programma M7 contiene gi: la tabella dei simboli (oggetto "Simboli"), una cartella "Blocchi" .
Creazione di blocchi S7
Viene qui descritto il modo di creare programmi AWL, KOP o FUP. Selezionare l'oggetto "Blocchi" gi creato, e fare clic sul comando Inserisci > Blocco S7. Nel menu successivo possibile selezionare il tipo di blocco (per es. blocco dati, tipo di dati (UDT), funzione, blocco funzionale, blocco organizzativo e tabella delle variabili (VAT)). Dopo aver aperto il blocco (vuoto), possibile introdurre il programma AWL, KOP o FUP. Per maggiori informazioni consultare Procedura fondamentale per la creazione di blocchi di codice e i manuali relativi a AWL, KOP e FUP.
Avvertenza L'oggetto Dati di sistema (SDB), che si trova nel programma utente, viene generato dal sistema. Lo si pu aprire, ma, per motivi di coerenza, non si pu modificarne il contenuto. Esso serve, dopo aver caricato un programma, ad apportare modifiche alla configurazione e a trasferirle nel sistema di destinazione.
164
165
6.7
Modifica di progetti
Apertura di un progetto
Per aprire un progetto esistente, utilizzare il comando del menu File > Apri. Selezionare quindi un progetto nella finestra di dialogo visualizzata. Si aprir la finestra di visualizzazione del progetto.
Avvertenza Se il progetto non compare nell'elenco di progetti, attivare il pulsante "Sfoglia". Nell'omonima finestra di dialogo possono essere ricercati altri progetti, e inseriti nellelenco i progetti trovati. Le voci contenute nell'elenco di progetti sono modificabili eseguendo il comando di menu File > Gestisci.
Copia di progetti
Per copiare un progetto occorre salvarlo sotto un altro nome con il comando File > Salva con nome . Per copiare componenti di progetto, quali stazioni, programmi, blocchi, ecc., utilizzare il comando Modifica > Copia. Per una spiegazione dettagliata sulla copia di progetti consultare Copia di progetti e Copia di componenti di progetto.
Cancellazione di progetti
Per cancellare un progetto utilizzare il comando File > Cancella. Per cancellare componenti di progetto, quali stazioni, programmi, blocchi, ecc., utilizzare il comando Modifica > Cancella. Per una spiegazione dettagliata sulla cancellazione di progetti consultare l'argomento Cancellazione di progetti e Cancellazione di componenti di progetto.
166
6.7.1
6.7.2
Testi di visualizzazione testi di messaggi generati da STEP 7, S7-GRAPH, S7-HiGraph, S7-PDIAG o ProTool. biblioteche di testi di sistema biblioteche di testi utente testi utente.
167
Esportazione
L'esportazione viene eseguita per tutti i blocchi e le tabelle dei simboli che si trovano sotto l'oggetto selezionato. Per ogni tipo di testo viene creato un file di esportazione, che contiene una colonna per la lingua di partenza e una per quella di arrivo. I testi nella lingua di partenza non devono essere modificati.
Importazione
Durante l'importazione il contenuto delle colonne per la lingua di destinazione (colonna destra) viene viene acquisito dal progetto nel quale si trova l'oggetto selezionato. Vengono applicate solamente le traduzioni i cui testi sorgente (testi esportati) corrispondono a una registrazione esistente nella colonna "Lingua di origine".
Avvertenza Durante l'importazione dei testi tradotti, questi testi vengono sostituiti in tutto il progetto. Se p. es. sono stati tradotti testi appartenenti ad una determinata CPU ma ricorrenti anche in altri punti del progetto, la sostituzione avviene per tutti i testi del progetto interessato.
Riorganizzazione
La riorganizzazione provoca il passaggio alla lingua attualmente impostata, cio alla lingua scelta come "Lingua per blocchi futuri". La riorganizzazione riguarda soltanto titoli e commenti.
168
Procedimento fondamentale
169
6.7.2.1
S7UserTextLibrary
S7-HiGraph HiGraphStateName HiGraphStateComment HiGraphTansitionName HiGraphTransitionComment S7GraphStateName S7GraphStateComment Nome dello stato Commento allo stato Nome della transizione Commento alla transizione S7-GRAPH Ampliamento del nome del passo Commento al passo
Gli editor di altri pacchetti opzionali (p. es. Protool, WinCC etc.) possono creare altri tipi di testo specifici dell'applicazione e qui non descritti.
170
6.7.2.2
Si tenga presente quanto segue: 1. I seguenti elementi devono restare invariati, e non vanno mai sovrascritti o cancellati: Campi preceduti dal carattere "$_" (si tratta di parole chiave) Numeri per la lingua (nell'esempio in alto: 7(1) per la lingua di partenza "Italiano (Italia)" e 9(1) per la lingua di arrivo "inglese")
2. Nel file sono sempre memorizzati soltanto testi di un solo tipo. Nell'esempio, il tipo di testo titolo di segmento ($_Typ(NetworkTitle). Le regole per il traduttore che edita il file sono memorizzate nel testo introduttivo del file di esportazione stesso. 3. Le informazioni supplementari relative ai testi oppure i commenti devono sempre trovarsi prima della definizione del tipo ($_Typ...) oppure dietro l'ultima colonna.
Avvertenze
Se la colonna per la lingua di arrivo sovrascritta con "512(32) $_Undefined", significa che con l'esportazione non stata indicata una lingua di arrivo. Per facilitare la comprensione possibile sostituire questo testo con la lingua di arrivo, p. es. "9(1) inglese (USA)". Quando si effettua l'importazione, quindi, necessario controllare la lingua di arrivo ed eventualmente selezionarla di nuovo. I testi che non devono essere visualizzati nella lingua di arrvio si possono mascherare con la parola chiave $_hide. Questa possibilit non vale per i commenti alle variabili (InterfaceComment) e ai simboli (SymbolComment).
171
Avvertenza
I file di esportazione non devono mai ssere rinominati!
172
6.7.2.3
173
6.7.2.4
Spiegazione
Un testo viene utilizzato come chiave per la traduzione indipendentemente dalla sua lingua. Se un testo identico viene utilizzato in pi di una lingua o nella stessa lingua ma per diversi concetti, non pu pi essere utilizzato in modo univoco e quindi non viene tradotto. Esempio:
Ci riguarda solamente i titoli e i commenti. Rimedio Rinominare i testi in oggetto nel file di testo esportato (nell'esempio occorre utilizzare un solo termine per il tedesco anzich tre) e importare nuovamente i testi.
174
6.7.2.5
Esempio
Prima della correzione (file di esportazione):
Riunione in un'espressione:
175
6.7.2.6
Requisiti
Esiste una destinazione per l'esportazione gi tradotta.
Procedimento
1. Copiare i file di esportazione nella directory del progetto per il nuovo progetto da tradurre. 2. Aprire il nuovo progetto ed esportare i testi (comando di menu Strumenti > Gestisci testi in pi lingue > Esporta). Poich la destinazione di esportazione esiste gi, viene chiesto all'utente se essa deve essere ampliata oppure sovrascritta. 3. Fare clic sul pulsante "Amplia". 4. Far tradurre i file di esportazione (devono essere tradotti soltanto i nuovi testi). 5. Importare quindi i file tradotti.
176
Esempio:
177
6.7.3
6.7.3.1
Caricamento e cancellazione
I blocchi contenuti nella MMC possono essere sovrascritti. I blocchi contenuti nella MMC possono essere cancellati. I blocchi sovrascritti o cancellati non possono pi essere ripristinati.
178
179
6.7.3.2
6.7.3.3
In un file memory card possibile memorizzare i blocchi e i dati di sistema di un WinLC o una CPU 41x-2 PCI come in una memory card S7. Il contenuto di questi file corrisponde pertanto a quello di una memory card per una CPU S7. Questo file pu quindi essere caricato nella memoria di caricamento tramite un comando di menu del pannello di comando di WinLC oppure una CPU 41x-2 PCI, il che corrisponde al caricamento del programma utente con STEP 7. Con le CPU 41x-2 PCI possibile caricare automaticamente questo file con l'avviamento del sistema operativo del PC se la CPU 41x-2 PCI viene gestita senza buffer e solo con una scheda RAM (funzione "Autoload"). I file memory card sono comuni file gestibili in Windows, che possono essere spostati o cancellati utilizzando la Gestione Risorse o trasferiti con un supporto dati. Ulteriori informazioni sono riportate nella documentazione dei prodotti WinAC.
180
6.7.3.4
Presupposti
possibile salvare i dati di un progetto su una MMC solamente quando quest'ultima inserita nell'apposito vano di una CPU adatta o del PG/PC ed attivo un collegamento online. Le dimensioni della MMC devono essere sufficienti per poter contenere i dati memorizzati.
181
182
7.1.1
7.2
Rimedio
Se si desidera utilizzare lo slave DP con nuove unit descritte nel file GSD: cancellare lo slave DP e progettarlo nuovamente: lo slave DP verr descritto non dal file di tipo slave, ma dal file GSD.
Se non si desidera utilizzare nuove unit descritte solo nel file GSD: nella finestra "Catalogo hardware", sotto PROFIBUS DP, selezionare la cartella "Ulteriori apparecchiature da campo / Slave Profibus-DP compatibili". In questa cartella STEP 7 trasferisce i "vecchi" file di tipo slave quando vengono sostituiti da nuovi file GSD; in essa si trovano le unit con cui ampliare lo slave DP gi configurato.
183
Elaborazione di progetti con diverse versioni di STEP 7 7.2 Ampliamento di slave DP creati con versioni precedenti di STEP 7
Situazioni che si possono verificare in seguito alla sostituzione dei file di tipo slave con file GSD in STEP 7 V5.1 Servicepack 4
A partire da STEP 7 V5.1 Servicepack 4 i file di tipo slave sono stati in gran parte sostituiti o aggiornati mediante file GSD. La sostituzione riguarda i profili di catalogo forniti da STEP 7 e non quelli creati dall'utente. Gli slave DP le cui caratteristiche erano determinate in precedenza da file di tipo slave ed ora da file GSD hanno mantenuto la stessa posizione all'interno del catalogo hardware. I "vecchi" file di tipo slave non sono stati cancellati, bens spostati in un altro punto del catalogo hardware. Essi si trovano ora in "Ulteriori apparecchiature da campo \ Slave Profibus-DP compatibili \...".
Modifica di una configurazione DP mediante una versione di STEP 7 inferiore a V5.1, SP4
Se si configura con STEP 7 a partire da V5.1, Servicepack 4, uno slave DP "aggiornato" e successivamente si tenta di modificarlo con una versione precedente (versione di STEP 7 inferiore a V5.1, SP4), lo slave DP non risulter modificabile, poich la versione di STEP 7 utilizzata non riconosce il file GSD. Rimedio: installare nella versione meno recente di STEP 7 il file GSD. Il file GSD viene memorizzato nel progetto. Quando si modifica il progetto con la versione attuale di STEP 7, questo utilizza per la progettazione il file GSD installato.
184
Elaborazione di progetti con diverse versioni di STEP 7 7.3 Modifica delle configurazioni attuali con versioni precedenti di STEP 7
7.3
Se si desidera memorizzare un master DP senza proprio sistema master DP con assegnazioni per la comunicazione diretta progettati e elaborare ulteriormente questo progetto con versioni di STEP 7 precedenti a V5 (STEP 7 V5.0, Service pack 2 (o precedenti)), si possono avere gli effetti seguenti: Un sistema master DP viene visualizzato con slave DP che vengono utilizzati per una memorizzazione dati interna a STEP7 delle assegnazioni per la comunicazione diretta. Questi slave DP non fanno parte del sistema master DP visualizzato. Non possibile collegare un nuovo sistema master DP n un sistema orfano master DP a questo master DP.
185
Elaborazione di progetti con diverse versioni di STEP 7 7.4 Come utilizzare configurazioni PC SIMATIC create con versioni precedenti
7.4
186
Elaborazione di progetti con diverse versioni di STEP 7 7.4 Come utilizzare configurazioni PC SIMATIC create con versioni precedenti
187
Elaborazione di progetti con diverse versioni di STEP 7 7.5 Rappresentazione delle unit progettate con le nuove versioni di STEP 7 o con un pacchetto opzionale
7.5
Rappresentazione delle unit progettate con le nuove versioni di STEP 7 o con un pacchetto opzionale
A partire da STEP 7 V5.1, Servicepack 3, vengono rappresentate tutte le unit, anche quelle progettate con le versioni di STEP 7 pi recenti e quindi sconosciute al "vecchio" STEP 7. Vengono inoltre rappresentate le unit progettate con un pacchetto opzionale, anche se il pacchetto non stato installato nel PG da cui viene aperto il progetto. Nelle precedenti versioni di STEP 7 le unit e gli oggetti sottostanti non venivano rappresentati. Nella versione attuale tali oggetti sono visibili e parzialmente modificabili. Questa funzione consente, ad esempio, di modificare i programmi utente anche se il progetto stato creato in un altro calcolatore con una versione pi recente di STEP 7 e se l'unit (ad es. una CPU) non pu essere progettata con la versione di STEP 7 di cui si dispone, ad es. perch ha nuove propriet e parametri. L'unit "sconosciuta" a STEP 7 compare come unit di sostituzione nel seguente modo:
Se si apre il progetto con la versione adatta di STEP 7 o con il pacchetto opzionale appropriato, tutte le unit vengono visualizzate normalmente e possono essere modificate senza alcuna limitazione.
PG con l'ultima versione di STEP 7 / pacchetto opzionale PG con una vecchia versione di STEP 7 / senza pacchetto opzionale
>>>---Dati di progetto--->>> Rappresentazione con unit "nota" con versione pi recente Rappresentazione dell'unit pi recente come unit "sconosciuta"
188
Elaborazione di progetti con diverse versioni di STEP 7 7.5 Rappresentazione delle unit progettate con le nuove versioni di STEP 7 o con un pacchetto opzionale
In questo caso possibile visualizzare e stampare la configurazione di rete. Anche lo stato dei collegamenti utilizzabile e vengono visualizzate almeno le informazioni supportate dalla versione attuale di STEP 7. In generale non tuttavia possibile apportare modifiche, n salvarle, compilarle e caricarle.
189
Elaborazione di progetti con diverse versioni di STEP 7 7.5 Rappresentazione delle unit progettate con le nuove versioni di STEP 7 o con un pacchetto opzionale
190
8
8.1
Definizione di simboli
Indirizzamento assoluto e simbolico
In un programma STEP 7 si utilizzano operandi quali segnali E/A, merker, contatori, temporizzatori, blocchi dati e blocchi funzionali. Questi operandi possono essere indirizzati in modo assoluto nel programma utente; tuttavia, la leggibilit dei programmi aumenta considerevolmente se si utilizzano simboli (p.. es. Motore_A_On oppure un sistema di identificativi corrispondente a quello usato nel ramo specifico in cui si opera). Nel programma utente sar quindi possibile indirizzare l'operando mediante il simbolo prescelto.
Indirizzo assoluto
Un indirizzo assoluto composto da un ID di operando e un indirizzo (p. es. A 4.0, E 1.1, M 2.0, FB 21).
Indirizzamento simbolico
Assegnando nomi simbolici a indirizzi assoluti possibile dare una maggiore leggibilit al programma e facilitare la correzione degli errori. STEP 7 pu tradurre automaticamente i nomi simbolici negli indirizzi assoluti necessari. Se si preferiscono i nomi simbolici per accedere a ARRAY, STRUCT, blocchi dati, dati locali, blocchi di codice e tipi di dati definiti dall'utente, occorre tuttavia assegnare dei nomi simbolici agli indirizzi assoluti;altrimenti non di potranno indirizzare i dati in modo simbolico. Si pu per esempio assegnare all'operando A 4.0 il nome simbolico MOTORE_ON, e quindi utilizzare MOTORE_ON come indirizzo in una istruzione di programma. Mediante indirizzi simbolici pi facile riconoscere fino a che punto gli elementi del programma corrispondono ai componenti del progetto di controllo del processo.
Avvertenza In un nome simbolico (designazione di variabile) non sono ammessi due trattini successivi (p. es. MOTORE__ON).
191
Nella stampa del blocco la schermata corrente viene presentata con commenti alle istruzioni o ai simboli.
192
8.2
Impiego
I simboli locali possono essere definiti per: parametri di blocchi (parametri di ingressi, uscite e ingressi/uscite), dati statici del blocco dati temporanei del blocco.
193
8.3
Non necessario introdurre gli apici o il carattere "#". Nell'immissione del programma in KOP, FUP o AWL il nome viene completato dei caratteri necessari dopo la verifica sintattica. Se tuttavia si temono confusioni derivanti p. es. dal fatto di utilizzare gli stessi simboli nella tabella dei simboli e nella dichiarazione di variabili, occorrer connotare esplicitamente il simbolo globale se lo si vuole utilzzare. I simboli privi di identificazione verranno interpretati come variabili riferite al blocco locale. La connotazione dei simboli globali inoltre necessaria se essi contengono il carattere di spaziatura. Nella programmazione in una sorgente AWL valgono gli stessi caratteri speciali e loro regole di impiego precedentemente descritte. In questo caso, non vengono inserite automaticamente le connotazioni relative all'introduzione orientata a sorgente; esse sono comunque necessarie soltanto se vi pericolo di confusione.
Avvertenza Il comando di menu Visualizza > Rappresentazione simbolica consente di commutare tra la la visualizzazione dei simboli globali stabiliti e quella dei corrispettivi indirizzi assoluti.
194
8.4
Avvertenza
Si tenga presente che nei richiami di blocchi ("Call FC" o "Call FB, DB") per il blocco di codice determinante sempre e soltanto il numero di blocco assoluto, anche quando impostata la preferenza operando simbolico.
195
Procedimento:
Selezionare nel SIMATIC Manager la cartella di blocchi e richiamare il comando Modifica > Verifica coerenza blocchi. La funzione "Verifica coerenza blocchi" esegue nei blocchi le modifiche necessarie.
196
Procedimento:
Selezionare nel SIMATIC Manager la cartella dei blocchi e richiamare il comando di menu Modifica > Verifica coerenza blocchi. La funzione "Verifica coerenza blocchi" esegue nei singoli blocchi le modifiche necessarie.
Procedimento:
Selezionare nel SIMATIC Manager la cartella di blocchi e richiamare il comando Modifica > Verifica coerenza blocchi. La funzione "Verifica coerenza blocchi" esegue nei singoli blocchi le modifiche necessarie.
197
8.5
Campo di validit
La tabella dei simboli vale solamente per l'unit a cui viene attribuito il programma. Se si desidera utilizzare gli stessi simboli in diverse CPU, occorre assicurarsi che le voci nelle rispettive tabelle siano uguali (per es. copiandole).
8.5.1
Colonna iniziale
Se le colonne delle "Propriet speciali dell'oggetto" sono state nascoste (disattivandole con il comando di menu Visualizza > Colonne N, S, M, C, CC), nella colonna iniziale compare questo simbolo purch sia stata impostata almeno una "Propriet speciale dell'oggetto" nella riga corrispondente.
Colonna "Stato"
Il nome simbolico o l'operando sono identici a un'altra registrazione della tabella dei simboli. Il simbolo ancora incompleto (mancano il nome o l'indirizzo).
198
Colonne "N/S/M/C/CC"
Nelle colonne N/S/M/C/CC vengono visualizzate propriet speciali dell'oggetto (attributi) eventualmente assegnate a un simbolo. N significa che per il simbolo sono state create definizioni di errore relative alla diagnostica di processo con il pacchetto opzionale S7-PDIAG (V5). S significa che il simbolo pu essere sottoposto al servizio e alla supervisione con WinCC. M significa che stato assegnato un messaggio riferito al simbolo (messaggio SCAN). C significa che al simbolo sono state assegnate propriet di comunicazione. CC significa che il simbolo pu essere controllato e comandato rapidamente, direttamente nell'editor di programma (comando diretto del contatto).
Fare clic sulla casella di controllo per attivare o disattivare le "Propriet speciali dell'oggetto". Le propriet speciali dell'oggetto si possono modificare anche con il comando di menu Modifica > Propriet speciali dell'oggetto.
Colonna "Simbolo"
Il nome del simbolo pu contenere al massimo 24 caratteri. Nella tabella dei simboli non possibile assegnare nomi agli operandi di blocchi dati (DBD, DBW, DBB, DBX). Questi nomi vengono infatti stabiliti dalla dichiarazione nei blocchi dati. Per i blocchi organizzativi (OB), per alcuni dei blocchi funzionali di sistema (SFB) e per le funzioni di sistema (SFC) esistono delle registrazioni della tabella dei simboli predefinite, che l'utente pu importare nella stessa durante l'elaborazione della tabella dei simboli del programma S7. Il file di importazione si trova nella directory STEP 7 ...\S7data\Symbol\Symbol.sdf.
Colonna "Indirizzo"
L'indirizzo identifica un determinato operando. Esempio: Ingresso E 12.1 La sintassi dell'indirizzo viene controllata alla sua immissione.
Colonna "Commento"
A tutti i simboli possono essere assegnati dei commenti. Con una combinazione di simboli brevi e commenti dettagliati possibile far fronte sia ai requisiti di una buona documentazione del programma che a una creazione efficiente di programmi. Il commento pu contenere al massimo 80 caratteri.
199
Conversione in variabili C
Dalla tabella dei simboli di un programma M7 possibile selezionare alcuni simboli e convertirli nelle corrispondenti variabili C con l'aiuto del pacchetto software opzionale ProC/C++.
200
8.5.2
Doppia parola di uscita periferia DWORD, DINT, REAL, TOD, TIME TIMER COUNTER FB OB DB, FB, SFB, UDT FC SFB SFC
201
8.5.3
Simboli incompleti
possibile salvare anche simboli incompleti. Ci consente, per esempio, di stabilire prima il nome del simbolo e successivamente di specificarne l'indirizzo. possibile interrompere la compilazione della tabella dei simboli in qualsiasi momento, e memorizzarne una versione intermedia. I simboli incompleti vengono contrassegnati nella colonna "Stato" con . Per poter utilizzare il simbolo in fase di generazione del software (senza messaggi di errore), devono comunque essere specificati il nome del simbolo, l'indirizzo e il tipo di dati.
202
8.6
8.6.1
Commento
203
8.6.2
204
8.6.3
La tabella dei simboli per il programma attuale viene visualizzata in un'apposita finestra. Si potranno ora creare o modificare i simboli. Alla prima apertura, dopo aver creato la tabella dei simboli, la tabella ancora vuota.
Introduzione di simboli
Per immettere nuovi simboli nella tabella dei simboli, spostarsi sulla prima riga vuota della tabella e riempire i campi. Per inserire nuove righe vuote nella tabella dei simboli, utilizzare il comando Inserisci > Simbolo prima della riga corrente. Le voci gi presenti possono essere copiate con il comando Modifica, e poi modificate. Al termine salvare e chiudere la tabella dei simboli. possibile salvare anche i simboli che non sono ancora stati completamente definiti.
Ordinamento di simboli
I set di dati contenuti nella tabella dei simboli possono essere disposti in ordine alfabetico secondo il simbolo, l'indirizzo, il tipo di dati o il commento. La disposizione pu p. es. essere modificata nella finestra di dialogo richiamabile con il comando Visualizza > Ordina....
I singoli criteri sono combinati con AND. I set di dati filtrati iniziano con le sequenze dei caratteri specificate. Per maggiori informazioni sulle possibilit della finestra "Filtra", aprire la Guida in linea attivando il tasto funzione F1.
205
8.6.4
Tutti questi tre casi possono comunque essere analizzati e corretti come di seguito.
206
Parametri che si distinguono solo in base al carattere Maiuscolo/minuscolo Conflitto I file sorgente contenenti tali interfacce non sono pi compilabili senza errori. ancora possibile aprire i blocchi con tali interfacce; tuttavia non pi possibile l'accesso al secondo di tali parametri. Gli accessi al secondo parametro vengono interpretati nel salvataggio automaticamente come accessi al primo parametro. Rimedio Per verificare quali blocchi contengano tali conflitti, si consiglia di generare un file sorgente per tutti i blocchi di un programma con la funzione "Genera sorgente". L'emergere di errori nel tentativo di ricompilare il file sorgente creato significa che esistono dei conflitti. Correggere i file sorgente rendendo univoci i parametri, p. es. mediante la funzione Trova/Sostituisci, e ricompilarli. Simboli che si distinguono dai parametri solo in base alla distinzione Maiuscolo/minuscolo Conflitto Se i simboli globali e locali di un file sorgente si distinguono solo in base al criterio Maiuscolo/minuscolo, e se inoltre non si inserito un carattere iniziale nella connotazione di simboli globali ("Nome_simbolico") o locali (#Nome_simbolico), verr utilizzato nella compilazione sempre il simbolo locale. Ci comporta un diverso codice macchina. Rimedio In questo caso si consiglia di generare un nuovo file sorgente da tutti i blocchi. Gli accessi locali e globali vengono cos corredati automaticamente con il rispettivo carattere iniziale, e trattati correttamente nelle successive operazioni di compilazione.
207
8.6.5
208
8.6.6
Elenco di assegnazione (SEQ) Attenzione: se la tabella dei simboli viene esportata in un file del tipo .SEQ, i commenti che contengono pi di 40 caratteri vengono tagliati dopo il quarantesimo carattere.
209
Intestazione
TABLE 0,1 "<Titolo>" VECTORS 0,<Numero set di dati> "" TUPLES 0,<Numero colonne> "" DATA 0,0 ""
Inizio del file DIF Stringa di caratteri di commento Numero dei set di dati nel file
Identificazione del tipo di dati, valore numerico Componente alfanumerica, oppure se la componente alfanumerica inutilizzata
Intestazione: L'intestazione del file deve contenere i tipi di set di dati TABLE, VECTORS, TUPLES e DATA nell'ordine indicato. Prima di DATA, nei file DIF possono trovarsi anche altri tipi di set di dati opzionali. Nell'editor di simboli questi vengono tuttavia ignorati. Dati: Nella parte dati, ogni registrazione composta di 3 parti: l'identificazione del tipo, un valore numerico e una componente alfanumerica. I file DIF possono essere aperti, elaborati e di nuovo salvati in Microsoft Excel. In questo caso, si dovrebbe tuttavia rinunciare a usare caratteri speciali tipici di una lingua, quali ad es. la dieresi in tedesco.
Per aprire un file SDF in Microsoft Access selezionare il formato di file "Testo (con carattere di separazione)". Come carattere di separazione di testo indicare i doppi apici ("), e come separatore di campo la virgola (,).
210
TAB indica il carattere di tabulazione (09H), CR indica un A capo automatico con il tasto INVIO (0DH).
211
8.6.7
Aree selezionabili:
possibile selezionare intere righe facendo clic sulla prima colonna. L'evidenziazione di tutti i campi dalla colonna "Stato" alla colonna "Commento" vale anche come selezione delle righe. possibile selezionare come aree singoli campi o diversi campi contigui. Per poter modificare l'area cos selezionata necessario che tutti i campi facciano parte delle colonne "Simbolo", "Indirizzo", "Tipo di dati" e "Commento". Se la selezione non valida i comandi di menu di modifica non sono attivi. Le colonne N, S, M, C, CC contengono le propriet speciali dell'oggetto dei diversi simboli e vengono comprese nella copia solo se nella finestra di dialogo "Impostazioni" (richiamabile con il comando di menu Strumenti > Impostazioni) stata attivata la casella di controllo "Copia propriet speciali dell'oggetto" e se sono state selezionate come area righe intere. La copia delle colonne N, S, M, C, CC indipendente dal fatto che al momento esse vengano visualizzate o meno. La visualizzazione commutabile con il comando di menu Visualizza > Colonne N, S, M, C, CC.
2. L'area selezionata viene visualizzata con il colore di selezione. La cella della tabella dei simboli selezionata per prima viene evidenziata da un bordo. 3. Modificare l'area selezionata secondo le proprie esigenze.
212
9
9.1
Editor (di testo) orientati a sorgente per i linguaggi di programmazionen AWL, S7-SCL e S7-HiGraph
Con gli editor orientati a sorgente si creano file sorgente (Sorgenti) che vengono in seguito compilati in blocchi. Conviene selezionare il metodo di editazione orientato a sorgente per ottenere una maggiore velocit di introduzione e comprensione dei programmi. Nell'introduzione orientata alla sorgente, il programma o il blocco vengono editati in un file di testo, che viene quindi compilato. I file di testo (sorgenti) vengono depositati nella cartella per le sorgenti del programma S7, come p. es. sorgente AWL oppure sorgente SCL. Un file sorgente pu contenere il codice di uno o di pi blocchi. Con gli editor di testo per AWL o SCL possibile creare del codice per OB, FB, FC, DB e UDT (tipi di dati definiti dall'utente), quindi per un programma utente completo. L'intero programma di una CPU (ovvero tutti i blocchi) pu rientrare in un unico file di testo. I blocchi vengono creati e memorizzati nel programma utente quando si compilano i relativi file sorgente. I simboli utilizzati devono essere definiti prima della compilazione. Gli errori eventuali vengono riportati solo al momento della compilazione con il rispettivo compiler. Per quanto riguarda la compilazione, importante attenersi il pi possibile alle regole sintattiche del linguaggio di programmazione. La sintassi viene infatti controllata solo quando si esegue il comando di verifica della coerenza o si compilano le sorgenti in blocchi.
213
9.2
Utenti che desiderano programmare con linguaggio orientato alla macchina Utenti che sono abituati a lavorare con gli schemi elettrici. Utenti che conoscono la logica a due valori dell'algebra booleana. Utenti che conoscono i linguaggi di programmazione KOP e FUP.
Programmi con aree di memoria e tempi di esecuzione ottimizzati Programmazione di controlli di combinazioni booleane. Programmazione di controlli di combinazioni booleane. Scrittura di programmi di sicurezza per i sistemi F.
214
Linguaggio di programmazione SCL (Structured Control Language, ovvero linguaggio di controllo strutturato) Pacchetto opzionale GRAPH
Utenti
Applicazione
Editazione incrementale
Utenti che hanno eseguito programmazioni in linguaggi evoluti come PASCAL o C. Utenti che seguono un approccio tecnologico, ma non hanno una conoscenza approfondita della programmazione o dei PLC Utenti che seguono un approccio tecnologico, ma non hanno una conoscenza approfondita della programmazione o dei PLC
Pacchetto opzionale
HiGraph
Pacchetto opzionale
CFC
Pacchetto opzionale
Utenti che Descrizione di seguono un processi continui approccio tecnologico, ma non hanno una conoscenza approfondita della programmazione o dei PLC
Se i blocchi sono corretti possibile passare indistintamente tra i diversi tipi di rappresentazione del blocco KOP, FUP e AWL. Le parti del programma non rappresentabili nel linguaggio di destinazione scelto vengono rappresentate in AWL. In AWL i blocchi possono essere creati sulla base di file sorgente e se necessario nuovamente compilati in file sorgente.
215
9.2.1
Il linguaggio di programmazione KOP fa parte del software di base STEP 7. In KOP il programma viene creato con un editor incrementale.
216
9.2.2
217
9.2.3
Il linguaggio di programmazione AWL fa parte del software di base STEP 7. Esso consente di elaborare i blocchi S7 mediante editor incrementali, o di creare il programma in un file sorgente AWL con un editor orientato a sorgente, e compilarlo poi in blocchi.
218
9.2.4
Esempio
FUNCTION_BLOCK FB 20
VAR_INPUT VALORE_FINALE END_VAR VAR_IN_OUT IQ1: END_VAR VAR INDEX: END_VAR INT; REAL; INT;
FOR INDEX := VALORE FINALE 1 TO DO IQ1 := IQ1 * 2; IF IQ1 > 10000 THEN CONTROL = TRUE END_IF; END_FOR; END_FUNCTION_BLOCK
219
9.2.5
Blocchi creati
L'editor di S7-GRAPH consente di programmare il blocco funzionale contenente la catena di passi. I dati di tale catena, ad esempio i parametri di FB, e le condizioni di passo e di transizione si trovano nel relativo DB di istanza. Quest'ultimo pu essere creato in modo automatico nell'editor per S7GRAPH.
Sorgente
Da un FB creato con S7-GRAPH possibile ricavare un file di testo (sorgente GRAPH) che pu essere letto dai pannelli operatore o dai display di testo per visualizzare il comando sequenziale.
220
9.2.6
221
Un gruppo di diagrammi viene salvato in una sorgente HiGraph nella cartella "Sorgenti" del programma S7. Questa sorgente viene poi compilata in blocchi S7 per il programma utente. La sintassi e i parametri formali vengono controllati quando si esegue l'ultima introduzione in un diagramma (alla chiusura della finestra di lavoro). Gli indirizzi e i simboli vengono controllati solo quando si compila il file sorgente.
222
9.2.7
223
9.3
9.3.1
Creazione di blocchi
Cartella dei blocchi
Il programma di una CPU S7 pu essere creato sotto forma di: Blocchi Sorgenti
Per depositare dei blocchi disponibile la cartella "Blocchi" sotto il programma S7. Nella cartella "Blocchi" si trovano i blocchi caricati nella CPU S7 per realizzare il compito di automazione prefissato. A tali blocchi caricabili appartengono i blocchi di codice (OB, FB, FC) e i blocchi dati (DB). Un blocco di codice OB1 vuoto viene assegnato automaticamente alla cartella "Blocchi" perch l'utente dovr servirsene in ogni caso per elaborare il programma nella CPU S7. Nella cartella "Blocchi" si trovano inoltre i seguenti oggetti. Gli UDT creati dall'utente. Essi semplificano la programmazione, ma non vengono caricati nella CPU. Le tabelle delle variabili (VAT) create per controllare e comandare le variabili per il test di programma. Le tabelle delle variabili non vengono caricate nella CPU. L'oggetto "Dati di sistema" (blocchi funzionali di sistema) che contiene informazioni sul sistema (configurazione, parametri). Questi blocchi di sistema vengono creati nella configurazione dell'hardware, e compilati con i dati. Le funzioni di sistema (SFC)e i blocchi funzionali di sistema (SFB) che si intendono richiamare nel programma utente. Gli SFC e gli SFB non possono essere modificati direttamente.
Ad eccezione dei blocchi dati di sistema (che vengono creati ed elaborati solo mediante la configurazione del sistema d'automazione), i blocchi del programma utente possono essere elaborati con l'editor assegnato che viene avviato automaticamente facendo doppio clic sul blocco.
Avvertenza Nella cartella "Blocchi" vengono memorizzati anche i blocchi programmati sotto forma di file sorgente, e in seguito compilati.
224
9.3.2
I tipi di dati definiti dall'utente, come tutti gli altri blocchi, vengono creati nel SIMATIC Manager o nell'editor incrementale.
Avvertenza Il richiamo nelleditor di programma di un blocco creato con il linguaggio di programmazione S7-SCL contenente un parametro UDT pu causare un conflitto di tipo. Evitare, quindi, nellutilizzo di UDT, di richiamare blocchi creati con SCL.
Configurazione di un UDT
Dopo l'apertura dell'UDT in una nuova finestra di lavoro comparir la tabella per la rappresentazione di tale tipo di dati nella vista dichiarazione. La prima e l'ultima riga contengono gi le dichiarazioni STRUCT e END_STRUCT che indicano l'inizio e la fine del'UDT. Tali righe non possono essere modificate. Per elaborare il tipo di dati definito dall'utente specificare i dati desiderati nelle opportune colonne, a partire dalla seconda riga della tabella di dichiarazione. I tipi di dati definiti dall'utente possono essere strutturati sulla base di: tipi di dati semplici tipi di dati composti tipi di dati definiti dall'utente gi disponibili
I tipi di dati definiti dall'utente del programma utente S7 non vengono caricati nella CPU S7. Essi vengono creati ed elaborati direttamente mediante un editor incrementale oppure compilando i file sorgente.
225
9.3.3
Avvertenza Il set mnemonico con cui si vogliono programmare i blocchi S7 viene impostato nel SIMATIC Manager con il comando di menu Strumenti > Impostazioni nella scheda "Lingua e mnemonico".
[AUTHOR:]
[FAMILY:]
Numero di versione del blocco VERSIONE: 3.10 (entrambi i numeri tra 0..15, ovvero 0.0 15.15). Indica se si tratta di un FB con multiistanze o meno. Se si intendono dichiarare le multiistanze, l'FB non deve avere tale propriet. CODE_VERSION1
[CODE_VERSION1]
226
Significato I blocchi dati con la propriet UNLINKED vengono collocati solo nella memoria di caricamento, non occupano spazio nella memoria di lavoro e non vengono integrati nel programma. A tali blocchi non possibile accedere con comandi MC7. Il contenuto di questi DB pu essere trasferito nella memoria di lavoro soltanto con la SFC 20 BLKMOV o la SFC 83 READ_DBL a seconda della CPU utilizzata. I blocchi dati con questo attributo vengono resettati al valore di caricamento dopo ogni comando di alimentazione OFF / ON e dopo ogni passaggio della CPU da STOP a RUN.
Esempio
Non-Retain
Protezione in scrittura per i blocchi dati; i READ_ONLY dati possono essere letti, ma non modificati. Copia di un blocco che stato memorizzato come riferimento con protezione in scrittura. Questa propriet pu essere assegnata solo nell'editor di programma con il comando di menu File > Salva copia protetta in scrittura.
La protezione del blocco KNOW_HOW_PROTECT ha le seguenti conseguenze. Se in seguito si desidera vedere un blocco compilato nell'editor incrementale AWL, FUP o KOP, la parte istruzioni del blocco non sar visibile. Nella lista di dichiarazione di variabili del blocco vengono visualizzate solamente le variabili dei tipi di dichiarazione var_in, var_out e var_in_out. Le variabili dei tipi di dichiarazione var_stat e var_temp restano nascoste.
227
La propriet KNOW_HOW_PROTECT pu essere impostata in una sorgente in sede di programmazione del blocco. Tale propriet viene visualizzata nella finestra di dialogo sulle propriet del blocco, pur non essendo modificabile.
228
9.3.4
Le lunghezze dei blocchi sul sistema di origine (PG/PC) non vengono visualizzate in Propriet della cartella blocchi.
Le voci visualizzate variano a seconda che il blocco si trovi in una finestra con visualizzazione online o offline.
229
9.3.5
Introduzione
Se si desidera mettere a confronto blocchi collocati in posizioni diverse, esistono le seguenti possibilit di richiamare un'apposita funzione: Richiamo del confronto di blocchi nel SIMATIC Manager con il comando di menu Strumenti > Confronta blocchi. Facendo clic sul pulsante "Vai a" nella successiva finestra di dialogo "Risultato del confronto di blocchi" viene completata la scheda "Confronto" nell'editor di programma (KOP/FUP/AWL). Richiamo del confronto di blocchi nell'editor di programma con il comando di menu Strumenti > Confronta partner online/offline.
Il funzionamento viene spiegato qui di seguito, tenendo in considerazione la differenza tra blocchi di codice (OB, FB, FC) e blocchi dati (DB). L'effetto dell'opzione "SDB compresi" in caso di confronto online/offline dei blocchi in SIMATIC Manager descritto nel capitolo Confronto dei blocchi dati di sistema (SDB)
Le istruzioni sono uguali nel momento in cui operatore e operando sono uguali. Se i blocchi da confrontare sono stati creati con linguaggi di programmazione diversi, STEP 7 procede al confronto sulla base di AWL.
230
Particolarit del confronto offline-offline: A differenza del confronto offline-online, con il confronto offline-offline STEP 7 confronta anche nomi di variabili diversi, che non si possono confrontare offline-online poich in modalit online sono disponibili soltanto simboli sostitutivi. Dal confronto restano esclusi i commenti a blocchi, a segmenti e a righe cos come altri attributi dei blocchi (p. es. informazioni e messaggi di S7-PDIAG).
231
Avvertenza Confrontando una cartella blocchi offline con una cartella blocchi online vengono messi a confronto soltanto tipi di blocco caricabili (OB, FB...). Con il confronto "Offline/Online" o "Percorso 1/Percorso 2" di una selezione multipla vengono confrontati tutti i blocchi selezionati, anche se non si tratta di blocchi caricabili (p. es. tabelle delle variabili o UDT).
232
9.3.6
Ricablaggio
Possono essere ricablati i seguenti blocchi e operandi: ingressi, uscite merker, temporizzatori, contatori funzioni, blocchi funzionali
Procedere nella maniera seguente. 1. Selezionare nel SIMATIC Manager la cartella "Blocchi" in cui si trovano i blocchi che si desidera ricablare. 2. Selezionare il comando di menu Strumenti > Ricablaggio. 3. Introdurre nella visualizzata finestra di dialogo "Ricablaggio" le sostituzioni desiderate (Vecchio operando / Nuovo operando) per la tabella. 4. Selezionare l'opzione "Considera tutti gli accessi all'interno dell'operando" se si desidera ricablare le aree di operandi (BYTE, WORD, DWORD). Esempio: l'utente indica come aree di operandi EW0 e EW4. Gli operandi E0.0 E1.7 vengono ricablati negli operandi E4.0 E5.7. Gli operandi dall'area ricablata (p. es. E0.1) non potranno pi essere immessi singolarmente nella tabella. 5. Premere il pulsante "OK". Viene cos avviato il ricablaggio. Dopo il ricablaggio possibile decidere in una finestra di dialogo se si vuole vedere il file informativo per il ricablaggio. Il file informativo contiene lelenco di operandi "Vecchio operando" e "Nuovo operando", in cui i singoli blocchi vengono riportati con il numero di ricablaggi che sono stati eseguiti nel rispettivo blocco. Durante il ricablaggio osservare quanto segue : Nel ricablare (ossia rinominare) un blocco, non deve gi esistere il nuovo blocco. Se il blocco esiste gi, l'operazione viene interrotta. Nel ricablare un blocco funzionale (FB), il suo DB di istanza viene assegnato automaticamente all'FB ricablato. Il DB di istanza rimane invariato (vale a dire, non viene modificato il numero di DB)
9.3.7
233
9.4
Creazione di biblioteche
Le biblioteche possono essere create come i progetti con il comando di menu File > Nuovo. La nuova biblioteca viene creata in una directory appositamente impostata selezionando nella scheda "Generale" il comando di menu Strumenti > Impostazioni.
Avvertenza Il SIMATIC Manager consente di utilizzare nomi pi lunghi di 8 caratteri. Tuttavia il nome della directory della biblioteca viene troncata a 8 caratteri. I nomi delle biblioteche devono perci distinguersi tra loro nei primi 8 caratteri. La distinzione tra maiuscole e minuscole non viene fatta. All'apertura nel browser viene visualizzato il nome completo; durante le ricerche invece solo il nome di 8 caratteri. Tenere presente che nei progetti di una versione precedente di STEP 7 non possono essere utilizzati i blocchi provenienti da biblioteche di una nuova versione di STEP 7.
Apertura di biblioteche
Per aprire una biblioteca esistente, utilizzare il comando del menu File > Apri. Selezionare quindi una biblioteca nella finestra di dialogo visualizzata. Verr aperta quindi la finestra di visualizzazione della biblioteca.
Avvertenza Se non viene visualizzata nell'elenco la biblioteca desiderata, azionare il pulsante "Sfoglia" nella finestra di dialogo "Apri". Viene quindi visualizzata nella finestra di dialogo standard di Windows la struttura delle directory in cui poter individuare la biblioteca. Nel far ci occorre osservare che il nome del file corrisponde sempre al nome originario della biblioteca creata; non vengono quindi riportate al livello dei file le modifiche di nomi nel SIMATIC Manager. Appena selezionata, la biblioteca viene inserita nella lista delle biblioteche. Le voci contenute nell'elenco dei progetti possono essere modificate eseguendo il comando di menu File > Gestisci.
234
Copia di biblioteche
Per copiare una biblioteca salvarla sotto un altro nome mediante il comando di menu File > Salva con nome. I componenti di una biblioteca quali programmi, blocchi, sorgenti, ecc., possono essere copiati con il comando di menu Modifica > Copia.
Cancellazione di biblioteche
Per cancellare una biblioteca ricorrere al comando di menu File > Cancella. I componenti di una biblioteca quali programmi, blocchi, sorgenti, ecc., possono essere cancellati con il comando di menu Modifica > Cancella. Prospetto delle biblioteche standard
235
9.4.1
Quando si inserisce un nuovo programma S7/M7 vengono create automaticamente una cartella "Blocchi" e "Sorgenti" (solo per S7) nonch un oggetto "Simboli".
9.4.2
236
10
10.1
10.1.1
Vista generale
La scheda "Elementi di programma" contiene l'elenco completo degli elementi che possono essere inseriti nei programmi KOP, FUP o AWL. La scheda "Struttura di richiamo" mostra la gerarchia di richiamo dei blocchi nel programma S7 attuale.
Istruzioni
Nella parte istruzioni viene visualizzato il codice del blocco elaborato dal sistema di automazione. Esso comprende uno o pi segmenti.
237
Creazione di blocchi di codice 10.1 Regole di base per creare blocchi di codice
Vista dettagli
Le schede della vita dettagli permettono p. es. la visualizzazione di messaggi di errore e di informazioni sugli operandi, la modifica dei simboli, il comando degli operandi, il confronto tra i blocchi e la modifica delle definizioni di errore per la diagnostica di processo.
238
Creazione di blocchi di codice 10.1 Regole di base per creare blocchi di codice
10.1.2
sostanzialmente uguale in quale sequenza vengono modificate le parti di un blocco di codice. Ovviamente sar possibile anche apportare correzioni e modifiche aggiuntive.
Avvertenza Se si vogliono utilizzare i simboli della tabella dei simboli, necessario verificare se sono completi, ed eventualmente completarli.
239
Creazione di blocchi di codice 10.1 Regole di base per creare blocchi di codice
10.1.3
Le impostazioni per linguaggio, commento e simboli possono essere modificate correntemente durante l'editazione per mezzo dei comandi del menu Visualizza > .... Il colore in cui vengono rappresentate p. es. le selezioni di segmenti o righe di istruzioni modificabile nella scheda "KOP/FUP".
10.1.4
240
Creazione di blocchi di codice 10.1 Regole di base per creare blocchi di codice
10.1.5
241
10.2
10.2.1
242
Nella visualizzazione analitica delle variabili l'utente introduce le variabili locali, compresi i parametri formali del blocco e degli attributi di sistema per i parametri. Ci ha tra l'altro le seguenti conseguenze. Con la dichiarazione viene riservato un rispettivo spazio di memoria, per variabili temporanee nello stack di dati locali, nel caso di blocchi funzionali, per variabili statiche nel DB di istanza assegnato in seguito. Definendo i parametri di ingresso, uscita e ingresso/uscita si definisce anche "l'interfaccia" per il richiamo dei blocchi nel programma. Dichiarando le variabili in un blocco funzionale, tali variabili (ad eccezione di quelle temporanee) determinano anche la struttura dei dati di ogni DB di istanza assegnato all'FB. Con la definizione degli attributi di sistema l'utente assegna ai parametri delle propriet speciali, p. es. per la progettazione di messaggi e collegamenti, funzioni di servizio e supervisione e progettazione del controllo di processo.
10.2.2
Non hanno effetto sulla parte istruzione le modifiche ai commenti, l'immissione erronea di una nuova variabile, una modifica del valore iniziale o la cancellazione di una variabile non utilizzata.
243
10.2.3
Quando si apre un blocco di codice di nuova creazione viene visualizzata una visualizzazione delle variabili sintetica preimpostata che contiene solo i tipi di dichiarazione consentiti per il tipo di blocco scelto (in, out, in_out, stat, temp) nella sequenza prescritta. Per gli OB di nuova creazione viene visualizzata una dichiarazione delle variabili standard i cui valori possono essere modificati. Per maggiori informazioni sui tipi di dati consentiti per i dati locali dei diversi tipi di blocchi consultare l'argomento Assegnazione di tipi di dati ai dati locali dei blocchi di codice.
244
10.3
10.3.1
Il seguente esempio illustra la soluzione descritta: FB 2 e FB 3 utilizzano il DB di istanza del blocco funzionale FB 1 da cui vengono richiamati.
Unica condizione: occorre "comunicare" al blocco funzionale da richiamare quali istanze si vogliono richiamare, e di quale tipo di FB esse siano. Le registrazioni vanno effettuate nella finestra di dichiarazione dell'FB da richiamare. L'FB da utilizzare deve avere almeno una variabile o un parametro dell'area dati (e quindi non VAR_TEMP). Si eviti di utilizzare blocchi dati di multiistanza fin quando siano prevedibili modifiche online con la CPU in esercizio. Solo adoperando blocchi dati di istanza garantito un caricamento che non alteri il processo.
245
10.3.2
Avvertenza
Si possono creare multiistanze anche per blocchi funzionali di sistema. Se si creato l'FB senza multiistanze, ed ora ve ne bisogno, possibile generare da un FB una sorgente, cancellarvi la propriet del blocco CODICE_VERSIONE1, e quindi ricompilare l'FB.
10.3.3
246
10.4
10.4.1
247
10.4.2
Oltre che nel modo di inserzione, le modifiche possono essere fatte anche nel modo di sovrascrittura. Per scegliere tra i modi usare il tasto INSERT.
10.4.3
248
10.4.4
Titolo del blocco, titolo del segmento, commenti al blocco e commento al segmento possono essere introdotti nella parte istruzioni di un blocco di codice.
Per assegnare il titolo ai segmenti in modo automatico scegliere il comando di menu Strumenti > Impostazioni. Nella scheda "Generale" fare clic sull'opzione "Scrivi automaticamente titolo del segmento". Viene acquisito come titolo del segmento il commento al simbolo relativo al primo operando introdotto.
249
250
10.4.5
10.4.6
251
Avvertenza Il modello pu essere anche trascinato mediante drag&drop dalla scheda alla finestra dell'editor.
10.4.7
252
Creazione di blocchi di codice 10.5 Editazione di istruzioni KOP nella parte istruzioni
10.5
10.5.1
Impostazioni di stampa
Se si desidera stampare la parte istruzioni KOP, si deve impostare il formato di pagina adeguato prima di creare la parte di istruzioni.
253
Creazione di blocchi di codice 10.5 Editazione di istruzioni KOP nella parte istruzioni
10.5.2
254
Creazione di blocchi di codice 10.5 Editazione di istruzioni KOP nella parte istruzioni
Bobine che non consentono un'operazione logica booleana: Attiva MCR _/(MCRA) Disattiva MCR _/(MCRD) Apri un blocco dati _/(OPN) Fine MCR _/(MCR>)
Le seguenti bobine non devono essere utilizzate come uscita parallela: Salta se 0 _/(JMPN) Salta se 1 _/(JMP) Richiamo di blocco _/(CALL) Salta indietro _/(RET)
Ingresso/uscita di abilitazione
E possibile, ma non indispensabile, attivare l'ingresso di abilitazione "EN" o l'uscita di abilitazione "ENO" dei box.
Diramazioni parallele
Le combinazioni logiche OR vanno collocate procedendo da sinistra verso destra. Le diramazioni in parallelo vengono aperte verso il basso e chiuse verso l'alto. Le diramazioni in parallelo vengono aperte sempre dopo l'elemento KOP selezionato. Le diramazioni in parallelo vengono chiuse sempre dopo l'elemento KOP selezionato. Per cancellare una diramazione in parallelo, si devono cancellare tutti gli elementi KOP della diramazione. Quando si elimina l'ultimo elemento KOP della diramazione, viene eliminata l'intera diramazione.
255
Creazione di blocchi di codice 10.5 Editazione di istruzioni KOP nella parte istruzioni
10.5.3
Cortocircuito
Non si possono creare rami che sono causa di cortocircuito. Un esempio riportato nella figura seguente.
256
Creazione di blocchi di codice 10.6 Editazione di istruzioni FUP nella parte istruzioni
10.6
10.6.1
Stampa
Se si intende stampare la parte istruzioni FUP occorrer impostare gi prima della creazione della parte istruzioni il formato di pagina adatto.
257
Creazione di blocchi di codice 10.6 Editazione di istruzioni FUP nella parte istruzioni
10.6.2
Se si muove il puntatore del mouse sul carattere sostitutivo, viene visualizzato il tipo di dati richiesto.
Collocamento di box
I box con combinazioni binarie (&, >=1, XOR) possono essere seguiti da box standard (flipflop, contatori, temporizzatori, operazioni di calcolo ecc.). Fanno eccezione a questa regola i box di confronto. In un segmento non si possono programmare combinazioni separate tra loro con uscite separate. Si potr tuttavia assegnare a una stringa logica diverse assegnazioni con l'ausilio della diramazione. La figura seguente riporta un segmento con due assegnazioni.
258
Creazione di blocchi di codice 10.6 Editazione di istruzioni FUP nella parte istruzioni
I seguenti box possono essere posti soltanto al margine destro della stringa logica, dove formano la chiusura della stringa: Imposta valore iniziale di conteggio Conta in avanti, Conta allindietro Avvia temporizzatore come impulso, Avvia temporizzatore come impulso prolungato Avvia temporizzatore come ritardo allinserzione/Avvia temporizzatore come ritardo alla disinserzione.
Tra i box ve ne sono alcuni che richiedono una operazione logica booleana ed altre a cui non consentito di averne.
Tutti gli altri box possono avere a scelta operazioni logicche booleane
Rimozione e modifica
Con la rimozione di un box vengono rimossi anche tutti i rami collegati con gli ingressi booleani del box, ad eccezione del ramp principale. Per facilitare la sostituzione di elementi dello stesso tipo consigliabile la modalit di sovrascrittura.
259
Creazione di blocchi di codice 10.7 Editazione di istruzioni AWL nella parte istruzioni
10.7
10.7.1
Il set mnemonico viene impostato dall'utente prima di aprire un blocco, nel SIMATIC Manager con il comando Strumenti > Impostazioni nella scheda "Lingua e mnemonico". Durante l'elaborazione del blocco il set mnemonico non pu essere modificato. Le propriet del blocco vengono modificate con una finestra di dialogo apposita. Nell'editor possono essere aperti in un dato momento diversi blocchi che possono essere modificati alternatamente.
10.7.2
260
10.8
Nell'assegnazione di parametri formali e attuali si deve procedere secondo le seguenti regole nellordine indicato. 1. Nomi di parametri uguali I parametri attuali vengono asseganti automaticamente se rimasto uguale il nome del parametro formale. Eccezione: in KOP e FUP la combinazione iniziale di parametri binari di ingresso pu essere assegnata automaticamente solo se i dati sono dello stesso tipo (BOOL). Se il tipo di dati stato modificato, la combinazione iniziale viene realizzata come ramo aperto. 2. Tipi di dati dei parametri uguali Dopo aver assegnato i parametri con gli stessi nomi, i parametri attuali assegnati non vengono ancora assegnati a parametri formali con lo stesso tipo di dati del "vecchio" parametro formale. 3. Posizione di parametri uguale I parametri attuali non ancora assegnati secondo le regole 1 e 2 vengono ora assegnati ai parametri formali secondo la loro posizione nella "vecchia" interfaccia. 4. Se i parametri attuali non possono essere assegnati secondo le tre regole suddette, essi vengono cancellati o realizzati, nel caso di combinazioni binarie iniziali in KOP o FUP, come rami aperti. Verificare dopo l'esecuzione di questa funzione le modifiche eseguite nella tabella di dichiarazione delle variabili e nella parte istruzioni del programma.
261
10.8.1
Modifica di interfacce
In caso di blocchi offline che sono stati modificati con STEP 7 V 5, possibile apportare modifiche alle interfacce anche nell'editor incrementale: 1. Assicurarsi che tutti i blocchi siano stati compilati con STEP 7 V5. Generare a tal fine una sorgente di tutti i blocchi e compilarli. 2. Modificare l'interfaccia del blocco interessato. 3. Aprire a questo punto in successione tutti i blocchi richiamanti - i richiami corrispondenti sono rappresentati in rosso. 4. Utilizzare la funzione Modifica > Richiamo > Aggiorna. 5. Rigenerare i blocchi dati di istanza interessati.
Avvertenza
Modifiche dell'interfaccia di un blocco aperto online possono provocare l'arresto della CPU. Ricablaggio dei richiami di blocco Modificare prima i numeri dei blocchi richiamati e poi eseguire la funzione Ricablaggio per adattare i richiami.
262
10.9
In entrambi i casi il blocco viene memorizzato solo se la sintassi corretta. Gli errori di sintassi vengono individuati gi durante la creazione ed evidenziati in rosso. Prima di memorizzare il blocco necessario correggerli.
Avvertenza Il salvataggio dei blocchi o delle sorgenti all'interno di altri progetti o biblioteche pu essere eseguito anche nel SIMATIC Manager (ad es. con la funzione drag&drop). Il salvataggio dei blocchi o di interi programmi utente in una memory card pu essere eseguito solo nel SIMATIC Manager. Se insorgono problemi nel corso del salvataggio o della compilazione di blocchi di notevoli dimensioni, si consiglia di riorganizzare il progetto. Richiamare il comando di menu File > Riorganizza nel SIMATIC Manager. Ripetere il tentativo di salvataggio o di compilazione.
263
264
11
11.1
Vista di dichiarazione
Selezionare la vista di dichiarazione per leggere o determinare la struttura dati dei DB globali, leggere la struttura dati dei DB con tipo di dati definito dall'utente assegnato (UDT), leggere la struttura dati dei DB con blocco funzionale assegnato.
La struttura dei blocchi dati assegnati a un FB o a un tipo di dati definito dall'utente non pu essere modificata. Per modificarla necessario modificare il corrispondente FB o UDT, e quindi creare nuovamente il DB.
Vista di dati
Selezionare la vista di dati per modificare i dati. Solo la vista di dati consente di visualizzare, immettere o modificare il valore attuale degli elementi. Nella vista di dati gli elementi vengono rappresentati uno per uno ed elencati con il nome completo se le variabili contengono tipi di dati composti.
265
11.2
Introdurre il nome che si vuole assegnare ad ogni variabile. Specificare il tipo di dati della variabile (BOOL, INT, WORD, ARRAY, ecc.). Le variabili possono avere tipi di dati semplici, tipi di dati composti e tipi di dati definiti dall'utente. Immettere qui il valore iniziale se il software non deve utilizzare il valore di default per il tipo di dati indicato. I dati immessi devono essere compatibili con i tipi di dati. Alla prima memorizzazione del blocco dati il valore iniziale viene interpretato come valore attuale della variabile, a meno che l'utente non imposti espressamente un valore attuale diverso. Attenzione: il valore iniziale non pu essere caricato nella CPU!
Commento
In questo campo si pu inserire un commento per documentare la variabile. Il commento non deve superare una lunghezza max. di 79 caratteri.
266
11.3
Si tratta del nome attribuito alla variabile. Nella vista di dati questo campo non modificabile. Si tratta del tipo di dati impostato per la variabile. Poich nella vista dati per le variabili con tipo di dati composto o definiti dall'utente gli elementi vengono elencati singolarmente, in corrispondenza di un blocco dati globale si trovano solo i tipi di dati semplici. Nei blocchi dati di istanza vengono anche visualizzati i tipi di dati parametri; nel caso di parametri di ingresso/uscita (INOUT) con tipo di dati composto o definito dall'utente, nella colonna "Valore attuale" il puntatore viene posizionato sul tipo di dati.
Valore iniziale
Si tratta del valore iniziale che stato attribuito dall'utente alla variabile se il software non deve utilizzare il valore di default per il tipo di dati indicato. Alla prima memorizzazione del blocco dati il valore iniziale viene interpretato come valore attuale della variabile, a meno che l'utente non imposti espressamente un valore attuale diverso. Attenzione: contrariamente al valore attuale, il valore iniziale non pu essere caricato nella CPU!
Valore attuale
Offline: si tratta di un valore che la variabile aveva all'apertura del blocco dati, oppure dopo l'ultima modifica salvata (anche se il DB stato aperto in modo online, questa visualizzazione non viene aggiornata!). Online: viene visualizzato il valore attuale all'apertura del blocco dati, ma non aggiornato automaticamente. Per aggiornare la visualizzazione, premere F5. Questo campo pu essere elaborato dall'utente se non fa parte di un parametro di ingresso/uscita (INOUT) con un tipo di dati composto o definito dall'utente. I dati immessi devono essere compatibili con i tipi di dati. Attenzione: soltanto il valore attuale pu essere caricato nella CPU!
Commento
Si tratta del commento attribuito alla variabile per documentarla. Nella vista di dati questo campo non modificabile.
267
11.4
11.4.1
Valore iniziale Immettere qui il valore iniziale, se non si desidera che software utilizzi il valore di default per il tipo di dati indicato. I dati immessi devono essere compatibili con i tipi di dati. Alla prima memorizzazione del blocco dati il valore iniziale viene acquisito come valore attuale della variabile, a meno che l'utente non imposti espressamente un valore attuale diverso. Commento In questo campo si pu inserire un commento per documentare la variabile. Tale commento non deve superare gli 79 caratteri.
268
11.4.2
Introduzione / visualizzazione della struttura dati dei blocchi dati con FB assegnato (DB di istanza)
Introduzione
Se si assegna un blocco dati ad un FB (DB di istanza), la dichiarazione delle variabili dell'FB definisce la struttura del DB. Le modifiche possono essere apportate solo nell'FB assegnato. 1. Aprire il blocco funzionale (FB) assegnato. 2. Modificare la dichiarazione delle variabili del blocco funzionale. 3. Generare nuovamente il blocco dati di istanza.
Visualizzazione
Nella vista di dichiarazione del DB di istanza possibile visualizzare solo il modo in cui le variabili sono state dichiarate nell'FB. 1. Aprire il blocco dati. 2. Visualizzare la vista di dichiarazione del blocco dati (se non attualmente visualizzata). 3. Le spiegazioni relative alla tabella visualizzata sono riportate di seguito. Per i blocchi dati non globali non possibile modificare la vista di dichiarazione.
Colonna Indirizzo Dichiarazione Spiegazione Visualizza l'indirizzo che STEP 7 assegna automaticamente alla variabile. Questa colonna fornisce informazioni sull'impostazione delle variabili nella dichiarazione di variabili dell'FB: Nome: Tipo parametro di ingresso (IN) parametro di uscita (OUT) parametro di ingresso/uscita (IN_OUT) dati statici (STAT)
I dati temporanei dichiarati dell'FB non si trovano nel blocco dati di istanza. Visualizza il nome stabilito per la variabile mediante la dichiarazione di variabili dell'FB. Visualizza il tipo di dati attribuito alla variabile mediante la dichiarazione di variabili dell'FB. Le variabili possono avere tipi di dati semplici, composti o definiti dall'utente. Se nell'FB vengono richiamati altri blocchi funzionali per il cui richiamo sono state definite variabili statiche, anche in questo campo si pu inserire come tipo di dati un FB o un blocco funzionale di sistema (SFB). Si tratta del valore attribuito alla variabile nella dichiarazione di variabili dell'FB, nel caso in cui non si desideri utilizzare il valore di default del tipo di dati. Alla prima memorizzazione del blocco dati il valore iniziale viene acquisito come valore attuale della variabile, a meno che l'utente non imposti esplicitamente un valore attuale diverso. Commento Si tratta del commento attribuito nella dichiarazione di variabili dell'FB per documentare l'elemento dati. Il campo non modificabile.
Valore iniziale
269
Avvertenza Nei blocchi dati assegnati ad un FB si possono elaborare solo i valori attuali delle variabili. L'introduzione dei valori attuali delle variabili viene eseguita nella vista di dati dei blocchi dati.
270
11.4.3
271
11.4.4
Introduzione
Se si assegna un blocco dati ad un UDT, la struttura dei dati dell'UDT definisce quella del DB. Le modifiche possono essere apportate solo nell'UDT assegnato. 1. Aprire l'UDT. 2. Modificare la struttura del tipo di dati definito dall'utente. 3. Generare il blocco dati nuovamente!
Visualizzazione
Nella vista di dichiarazione del DB possibile visualizzare solo il modo in cui le variabili sono state dichiarate nell'UDT. 1. Aprire il blocco dati. 2. Visualizzare la vista di dichiarazione del blocco dati se non gi visualizzata. 3. Le spiegazioni sulla tabella visualizzata si trovano nel seguito. La vista di dichiarazione non pu essere modificata. Le modifiche possono essere apportate solo nell'UDT assegnato.
Colonna Indirizzo Nome Tipo Valore iniziale Spiegazione Visualizza l'indirizzo che STEP 7 assegna automaticamente alla variabile. Visualizza il nome attribuito alla variabile mediante l'UDT. Visualizza i tipi di dati impostati nell'UDT. Le variabili possono avere tipi di dati semplici, composti o definiti dall'utente. Visualizza il valore che l'utente ha attribuito alla variabile nell'UDT per evitare che il software acquisisca il valore di default del il tipo di dati indicato. Alla prima memorizzazione del blocco dati il valore iniziale viene acquisito come valore attuale della variabile, a meno che l'utente non imposti espressamente un valore attuale diverso. Commento Si tratta del commento stabilito mediante l'UDT per documentare l'elemento dati.
Avvertenza Nei blocchi dati assegnati ad un UDT possibile elaborare solo i valori attuali delle variabili. L'introduzione dei valori attuali delle variabili viene eseguita nella vista dati dei blocchi dati.
272
11.4.5
Avvertenza Le modifiche dei valori di dati devono essere salvate soltanto quando si salvano i blocchi dati.
11.4.6
Avvertenza Le modifiche ai valori di dati vengono memorizzate soltanto quando si salvano i blocchi dati.
273
11.4.7
In entrambi i casi il blocco viene memorizzato solo se la sintassi corretta. Gli errori di sintassi vengono individuati gi durante la creazione ed evidenziati in rosso. Prima di memorizzare il blocco necessario correggerli.
Avvertenza Il salvataggio dei blocchi o delle sorgenti all'interno di altri progetti o biblioteche pu essere eseguito anche nel SIMATIC Manager (ad es. con la funzione drag&drop). Il salvataggio dei blocchi o di interi programmi utente in una memory card pu essere eseguito solo nel SIMATIC Manager. Se insorgono problemi nel corso del salvataggio o della compilazione di blocchi di notevoli dimensioni, si consiglia di riorganizzare il progetto. Richiamare il comando di menu File > Riorganizza nel SIMATIC Manager. Ripetere il tentativo di salvataggio o di compilazione.
274
12
Procedimento
1. Nel SIMATIC Manager aprire il blocco dati di istanza mediante doppio clic. 2. Alla domanda se si desideri richiamare la funzione "Parametrizzazione di blocchi dati" rispondere "S". Risultato: il DB di istanza viene aperto nell'applicazione "Parametrizzazione di blocchi dati". 3. Richiamando il comando Visualizza > Vista di dati o Visualizza > Vista di dichiarazione, scegliere la visualizzazione desiderata.Per i blocchi dati di istanza e le multiistanze con l'attributo di sistema S7_techparam viene aperta automaticamente la vista di parametrizzazione tecnologica. 4. Modificare il blocco dati di istanza secondo le necessit. Eventuali informazioni, avvisi ed errori vengono visualizzati nella finestra dei risultati. Facendo doppio clic su un avviso o un errore si passa direttamente al punto in cui questo si verificato. 5. Mediante il comando Sistema di destinazione > Carica dati di parametrizzazione caricare i valori attuali modificati trasferendoli dal PG alla CPU a cui assegnato l'attuale programma S7. 6. Con il comando Test > Controlla attivare la visualizzazione dello stato del programma per il blocco aperto e osservare online l'elaborazione dei valori attuali caricati.
Avvertenza I blocchi dati di istanza con l'attributo di sistema S7_techparam si riconoscono selezionando il blocco nel SIMATIC Manager, richiamando il comando Modifica > Propriet dell'oggetto e aprendo la scheda "Attributi".
275
12.1
3. Copiare il blocco funzionale desiderato (FB 58 o FB 59) dalla biblioteca standard nel progetto. 4. Creare un DB di istanza per l'FB con il comando di menu Inserisci > Blocco S7 > Blocco dati. 5. Aprire nel SIMATIC Manager il DB di istanza mediante doppio clic per avviare la funzione "Parametrizzazione di blocchi dati". Risultato: il DB di istanza viene aperto nella vista tecnologica e pu essere parametrizzato e controllato online con estrema praticit. 6. Specificare i valori regolanti nella vista tecnologica. Eventuali informazioni, avvisi e messaggi di errore vengono visualizzati nella finestra dei risultati. Facendo doppio clic sull'avviso o sull'errore si accede direttamente alla posizione dell'errore corrispondente.
Avvertenza Per riconoscere i blocchi dati con l'attributo "S7_techparam", selezionare il blocco nel SIMATIC Manager e richiamare mediante il comando Modifica > Propriet dell'oggetto la scheda "Attributi".
276
13
13.1
La sorgente viene creata con la sintassi del linguaggio di programmazione lista istruzioni (AWL). La strutturazione della sorgente in blocchi, dichiarazione di variabili o segmenti viene effettuata mediante parole chiave.
Nella creazione di blocchi in sorgenti AWL va osservato quanto segue. Regole per la programmazione di sorgenti AWL Sintassi e formati ammessi in sorgenti AWL Struttura dei blocchi ammessa di sorgenti AWL
277
13.2
13.2.1
278
La parola chiave END_VAR contrassegna la fine dell'elenco dichiarazioni. L'elenco dichiarazioni la lista delle variabili di un tipo di dichiarazione. Nella lista possibile preimpostare i valori delle variabili (eccezione: VAR_TEMP). La figura seguente riporta la composizione di un elemento dell'elenco dichiarazioni. Durata_Motore1 Variabile : S5TIME := S5T#1H_30M ;
Tipo dati
Valore preimpostato
Avvertenza 1. Il nome della variabile deve iniziare con una lettera o un carattere di sottolineatura. Non utilizzare nomi di variabili che corrispondono a una delle parole chiave riservate. 2. Se sono presenti nomi di variabili identici nelle dichiarazioni locali e nella tabella dei simboli, si deve inserire prima del nome delle variabili locali un # e mettere tra virgolette le variabili della tabella dei simboli. In caso contrario, il blocco interpreterebbe la variabile come variabile locale.
279
13.2.3
13.2.4
Nelle operazioni di introduzione nella sorgente si tenga presente quanto segue. Le parole chiave per gli attributi di sistema iniziano sempre con S7_. Gli attributi di sistema sono racchiusi tra parentesi graffe. Sintassi: {S7_idenifier := 'string'} Pi identificatori sono separati da ";". Gli attributi di sistema per i blocchi sono posizionati prima delle propriet del blocco e dopo le parole chiave ORGANIZATION_ o TITLE. Gli attributi di sistema per i parametri si trovano nella dichiarazione dei parametri, ovvero prima dei due punti della dichiarazione di dati. Si fa distinzione tra maiuscole e minuscole; ci rilevante nell'introduzione degli attributi di sistema.
Gli attributi di sistema per i blocchi possono controllati e modificati nell'introduzione incrementale con il comando File > Propriet nella scheda "Attributi". Gli attributi di sistema per i parametri possono essere controllati o modificati nell'introduzione incrementale con il comando di menu Modifica > Propriet dell'oggetto. Il cursore deve trovarsi nel campo del nome della dichiarazione dei parametri.
280
13.2.5
Avvertenza Le propriet assegnate ad un blocco possono essere visualizzate nel SIMATIC Manager con la funzione relativa alle propriet dell'oggetto. Quest'ultima consente di modificare anche le propriet AUTHOR, FAMILY, NAME e VERSION.
281
2.
3.
4. 5
[KNOW_HOW_PROTECT] Protezione del blocco; un blocco che stato compilato con questa opzione non consente di visualizzare la parte istruzioni. L'interfaccia del blocco pu essere visualizzata, ma non modificata. [AUTHOR:] Nome dell'autore, della ditta, del reparto o altri nomi (massimo 8 caratteri senza spazi vuoti). [FAMILY:] Nome della famiglia di blocchi: per es. regolatore (max. 8 caratteri senza spazi vuoti). [NAME:] Nome del blocco (massimo 8 caratteri). [VERSION: int1 . int2] Numero di versione del blocco (entrambi i numeri tra 0..15, ovvero 0.0 - 15.15). Indica se si tratta di un FB con multiistanze o meno. Se si intende dichiarare le multiistanze, l'FB non deve avere tale propriet. I blocchi dati con la propriet UNLINKED vengono depositati solo nella memoria di caricamento, non occupano spazio nella memoria di lavoro e non vengono integrati nel programma. A tali blocchi non possibile accedere con comandi MC7. Il contenuto di questi DB pu essere trasferito nella memoria di lavoro soltanto con SFC 20 BLKMOV (S7-300, S7-400) o SFC 83 READ_DBL (S7-300C). Affinch quest'opzione possa operare effettivamente, la CPU deve supportare la propriet Retain dei DB. Un blocco dati con la propriet "Non Retain" non viene salvato nella memoria a ritenzione di una CPU di questo tipo (p. es.. CPU 317 V2.1) e viene pertanto, dopo ogni Rete Off e Rete On e dopo ogni commutazione STOP/RUN della CPU, resettato sui valori di caricamento. Protezione in scrittura per i blocchi dati; i dati possono essere solo letti ma non modificati.
AUTHOR : Siemens, ma senza parola chiave FAMILY : Regolatore, ma senza parola chiave NAME : PID, ma senza parola chiave VERSION : 3.10
[CODE_VERSION1]
CODE_VERSION1
8.
[NON_RETAIN]
282
13.2.6
283
13.3
13.3.1
Titolo di blocco opzionale preceduto dalla parola chiave "TITLE (lunghezza max. del titolo: 64 caratteri). Ulteriore commento preceduto da due barrette oblique // all'inizio della riga. Immissione delle propriet del blocco (opzionale). Parte di dichiarazione delle variabili. Parte istruzioni che inizia con BEGIN. La parte istruzioni composta a sua volta da uno o pi segmenti caratterizzati da NETWORK. Non ammessa l'indicazione del numero di segmento. Titolo di segmento opzionale di ciascun segmento implementato, preceduto dalla parola chiave "TITLE =" (lunghezza max. del titolo: 64 caratteri). Ulteriori commenti per segmento preceduti da due barrette oblique "//" all'inizio della riga. Fine del blocco contrassegnata da END_ORGANIZATION_BLOCK, END_FUNCTION_BLOCK o END_FUNCTION. Il tipo e il numero di blocco sono separati da un carattere di spaziatura. Il nome simbolico del blocco pu essere contrassegnato da virgolette per garantire coerenza fra i nomi delle variabili locali e quelli della tabella dei simboli.
284
13.3.2
Ci sono tre tipi di blocchi dati: blocchi dati definiti dall'utente blocchi dati con tipo di dati definito dall'utente (UDT) blocchi dati assegnati a un FB (blocco dati di istanza)
13.3.3
Quando si immettono i tipi di dati definiti dall'utente si deve far attenzione ad inserirli prima dei blocchi in cui verranno utilizzati.
285
13.4
13.4.1
286
13.4.2
287
13.4.3
288
13.4.4
"END_DATA_BLOCK"
289
13.5
13.5.1
13.5.2
290
13.5.3
13.5.4
13.5.5
291
13.5.6
13.5.7
Avvertenza Il comando di menu Inserisci > Sorgente esterna consente di inserire anche file sorgente creati con STEP 7, versione 1.
292
13.5.8
13.5.9
Importazione di sorgenti
Procedere come segue per importare in un progetto una sorgente da una qualsiasi directory. 1. Selezionare nel SIMATIC Manager la cartella delle sorgenti in cui inserire la sorgente. 2. Selezionare il comando di menu Inserisci > Sorgente esterna. 3. Selezionare nella finestra di dialogo visualizzata la directory e la sorgente da importare. 4. Premere il pulsante "Apri".
293
13.5.10
Esportazione di sorgenti
Procedere come segue per esportare un file sorgente di un progetto in una directory di destinazione qualsiasi. 1. Selezionare il file sorgente nella cartella "Sorgenti". 2. Selezionare nel SIMATIC Manager il comando di menu Modifica > Esporta sorgente 3. Specificare nella finestra di dialogo visualizzata la directory di destinazione e il nome del file. 4. Premere il pulsante "Salva".
Avvertenza Se il nome di file dell'oggetto che si intende esportare privo di estensione, al nome del file viene allora aggiunta un'estensione derivata dal tipo di file. Per esempio un file sorgente "prog" viene esportato nel file "prog.awl". Se il nome dell'oggetto possiede gi un'estensione di file valida, questa viene mantenuta e non ne vengono aggiunte altre. Per esempio un file sorgente prog.awl viene esportato nel file prog.awl. Se il nome dell'oggetto possiede un'estensione di file non valida (ovvero il nome contiene un punto), allora non viene aggiunta l'estensione. Le estensioni valide sono visibili nella finestra di dialogo "Esporta sorgente" sotto "Tipo di file".
294
Creazione di sorgenti AWL 13.6 Salvataggio, compilazione e verifica coerenza delle sorgenti AWL
13.6
13.6.1
13.6.2
13.6.3
Per individuare il punto in cui si trova l'errore nella sorgente, posizionare il cursore sul relativo messaggio nella scheda "Errore" della finestra di emissione. Automaticamente verr evidenziata la riga di testo corrispondente nella parte istruzioni. Il messaggio d'errore si trova inoltre anche nella barra di stato.
295
Creazione di sorgenti AWL 13.6 Salvataggio, compilazione e verifica coerenza delle sorgenti AWL
13.6.4
Presupposti
Per poter compilare in blocchi il programma compilato in una sorgente occorre tener conto di quanto segue. Possono essere compilati solo i file sorgente memorizzati nella cartella "Sorgenti" sotto un programma S7. Parallelamente alla cartella "Sorgenti" sotto il programma S7 deve esserci una cartella "Blocchi" in cui memorizzare i blocchi risultanti dalla compilazione. I blocchi programmati nel file sorgente vengono creati solo se la sorgente stata compilata senza errori. Se un file sorgente contiene pi blocchi, verranno creati solo quelli corretti. Questi blocchi potranno quindi essere aperti, modificati, caricati nella CPU e testati singolarmente.
296
13.7
13.7.1
// Conclusione della dichiarazione delle variabili dello stesso tipo di dichiarazione // Parola chiave Variabile di uscita out1 : WORD; // Parola chiave Variabile temporanea
297
13.7.2
//Memoria intermedia
NETWORK TITLE = Richiamo di un blocco funzionale con // trasmissione di parametri // Indicazione dei parametri su pi righe CALL comando semaforo , DB 6 ( dur_g_p:= S5T# 10S, del_r_p := S5T#30S, starter := TRUE, t_dur_y_car := T 2, t_dur_g_ped := T 3, t_delay_y_car := T 4, t_dur_r_car := T 5, t_next_red_car := T 6, |r_car := "re_main", y_car := "ye_main", g_car := "gr_main", r_ped := "re_int", g_ped := "gr_int");
NETWORK TITLE = Richiamo di un blocco funzionale con // trasmissione di parametri // indicazione dei parametri su pi righe CALL FB10, DB100 (para1 :=E0.0,para2 :=E0.1); END_ORGANIZATION_BLOCK
298
13.7.3
299
FUNCTION FC 1: VOID // Solo a causa di Call!! VAR_INPUT param1 : bool; param2 : bool; END_VAR begin end_function
FUNCTION FC2 : INT TITLE = Aumento del numero di pezzi // Finch il valore trasmesso < 1000, //la funzione lo fa aumentare. Quando il numero di pezzi //supera 1000, viene riportato // mediante il valore di ritorno della funzione (RET_VAL) "-1". AUTHOR: FAMILY: Nome: VERSION: VAR_IN_OUT N. PEZZI : INT; END_VAR BEGIN NETWORK TITLE = Aumento del numero di pezzi di 1 // Finch il numero attuale di pezzi inferiore a 1000, // esso pu essere aumentato di 1 L N. PEZZI; L 1000; // esempio di pi > I; SPB ERR; // istruzioni in una riga. L 0; T RET_VAL; L N. PEZZI; INC 1; T N. PEZZI; BEA; ERR: L -1; T RET_VAL; END_FUNCTION Siemens Trans PEZZO 1.0
FUNCTION FC3 {S7_pdiag := 'true'} : INT TITLE = Aumento del numero di pezzi // Finch il valore trasmesso < 1000, //la funzione lo fa aumentare. Quando il numero di pezzi //supera 1000, viene riportato // mediante il valore di ritorno della funzione (RET_VAL) "-1". // //RET_VAL possiede qui un attributo di sistema per i parametri
300
AUTHOR: Siemens FAMILY: Trans Nome: PEZZO VERSION: 1.0 VAR_IN_OUT N. PEZZI {S7_visible := 'true'}: INT; // Numero di pezzi attualmente prodotti //Attributi di sistema per parametri END_VAR BEGIN NETWORK TITLE = Aumento del numero di pezzi di 1 // Finch il numero attuale di pezzi inferiore a 1000, // esso pu essere aumentato di 1 L N. PEZZI; L 1000; // esempio di pi > I; SPB ERR; // istruzioni in una riga. L 0; T RET_VAL; L N: PEZZI; INC 1; T N. PEZZI; BEA; ERR: L -1; T RET_VAL; END_FUNCTION
301
13.7.4
BOOL
:=FALSE;
BEGIN NETWORK TITLE = Presegnalazione rosso per il traffico // Una volta trascorso un tempo minimo, //in seguito al segnale di richiesta di passaggio pedonale //viene creata la presegnalazione rosso per il traffico. U(; U #starter; // Segnale di richiesta di passaggio pedonale U #t_next_r_car; // e tempo trascorso tra un rosso e l'altro scaduto O #condition; // o presegnalazione rosso ("mantenimento") ); UN #t_dur_y_car; // e attualmente semaforo non rosso = #condition; // presegnalazione rosso NETWORK TITLE = semaforo verde per il traffico di veicoli UN #condition; // Nessuna presegnalazione di rosso per il traffico di veicoli = #g_car; // VERDE per il traffico di veicoli
302
NETWORK TITLE = Durata del giallo per i veicoli // altro programma per effettuare // l'accensione del semaforo END_FUNCTION_BLOCK FUNCTION_BLOCK FB 10 VAR_INPUT para1 : bool; para2: bool; end_var begin end_function_block data_block db 10 fb10 begin end_data_block data_block db 6 fb6 begin end_data_block
303
13.7.5
Blocco dati:
DATA_BLOCK DB 10 TITLE = DB esempio 10 STRUCT aa : BOOL; cc : WORD; END_STRUCT; BEGIN // Assegnazione di valori attuali aa := TRUE; bb := 1500; END_DATA_BLOCK // variabile aa di tipo BOOL bb : INT; // variabile bb di tipo INT
Avvertenza L'UDT utilizzato deve trovarsi nella sorgente prima del blocco dati.
304
Avvertenza L'FB assegnato deve trovarsi nella sorgente prima del blocco dati.
13.7.6
305
306
14
14.1
I dati di riferimento del programma utente selezionato comprendono le liste indicate nella tabella. possibile creare e visualizzare pi liste dello stesso programma utente o di programmi diversi.
307
308
14.1.1
Struttura
Una voce dell'elenco di riferimenti incrociati costituita dalle seguenti colonne
Colonna Operando (simbolo) Blocco (simbolo) Accesso Linguaggio Punto di applicazione Contenuto/significato Indirizzo dell'operando. Indicazione del blocco in cui viene impiegato l'operando. Specifica se l'accesso all'operando avviene in lettura (R) e/o in scrittura (W). Informazioni sul blocco, dipendono dal linguaggio utilizzato per creare il blocco. Fare doppio clic nel campo del punto di applicazione per passare al punto di applicazione dell'operando selezionato.
Le colonne Blocco, Tipo, Linguaggio e Punto di applicazione vengono visualizzate solo se sono state selezionate le propriet corrispondenti dell'elenco di riferimenti incrociati. Queste informazioni sul blocco variano a seconda del linguaggio di origine del blocco. La larghezza delle colonne all'interno dell'elenco di riferimenti incrociati visualizzato pu essere modificata con il mouse.
Ordinamento
Gli elenchi dei riferimenti incrociati sono ordinati per default secondo le aree di memoria. Facendo clic sul titolo di una colonna, la disposizione delle voci cambia.
309
14.1.2
Si pu decidere di rappresentare tutti i blocchi oppure solo una parte della struttura a partire da un determinato blocco di avvio.
Le ricorsioni del richiamo vengono rilevate e connotate graficamente nella struttura di richiamo. Le ricorsioni all'interno della gerarchia di richiamo vengono rappresentate da diversi simboli. I blocchi a richiamo regolare (CALL), i blocchi a richiamo condizionato (CC) e i blocchi a richiamo assoluto (UC) vengono connotati da diversi simboli. I blocchi non richiamati vengono visualizzati all'estremit inferiore della struttura ad albero e contrassegnati da una crocetta nera. La struttura di richiamo di un blocco non richiamato non viene suddivisa ulteriormente.
310
Se deve essere generata la struttura del programma per tutti i blocchi organizzativi (OB), ed il blocco OB1 non presente nel programma utente S7, oppure stato specificato un blocco di avvio non contenuto nel programma, l'utente viene invitato ad impostare un altro blocco come radice della struttura del programma. La visualizzazione dei richiami multipli di blocchi pu essere disattivata definendo le opzioni sia per la struttura di richiamo che per la struttura di dipendenze.
Tale indicazione pu essere attivata e disattivata nella scheda "Struttura del programma". Se vi sono OB di errore di sincronismo (OB 121, OB 122), nel fabbisogno massimo di dati locali viene indicato il segno "+" dopo il valore numerico, e quindi il fabbisogno supplementare per gli OB di errore di sincronismo.
Struttura di dipendenze
La struttura di dipendenze mostra per ciascun blocco del progetto le dipendenze rispetto ad altri blocchi. All'estrema sinistra si trova il blocco e, sotto di esso in posizione rientrata, i blocchi che lo richiamano o lo utilizzano.
311
14.1.3
Tabella di occupazione
La tabella di occupazione indica quali operandi sono gi occupati all'interno del programma utente. Queste informazioni costituiscono un utile riferimento per la ricerca degli errori e la modifica del programma utente. La tabella di occupazione offre una panoramica dei bit e dei rispettivi byte utilizzati nelle aree di memoria Ingresso (E), Uscita (A), Merker (M), temporizzatori (T) e contatori (Z). La tabella di occupazione viene visualizzata in una finestra di lavoro. La riga del titolo della finestra di lavoro riporta il nome del programma utente S7 a cui si riferisce la tabella di occupazione.
Panoramica E/A/M
Ogni riga contiene un byte dell'area di memoria nel quale gli otto bit vengono identificati a seconda del tipo di accesso. Viene inoltre indicato se si tratta di accesso a byte, a parola o a doppia parola.
312
Esempio
L'esempio seguente illustra la struttura tipica di una tabella di occupazione per ingressi, uscite e merker (E/A/M).
La prima riga contiene l'occupazione del byte EB 0. Gli ingressi dell'operando EB 0 vengono utilizzati direttamente (accesso a bit). Le colonne "1", "2", "3", "4", "5" e "6" sono contrassegnate da una "X" per indicare l'accesso a bit. Si verifica contemporaneamente un accesso a parola ai byte di merker 1 e 2, 2 e 3 o 4 e 5. Nella colonna "W" viene perci visualizzata una "barra"" e le celle hanno sfondo azzurro. L'estremit nera della barra indica l'inizio dell'accesso a parola.
Panoramica T/Z
In ogni riga vengono rappresentati 10 temporizzatori o contatori.
Esempio
0 T 00-09 T 10-19 T 20-29 Z 00-09 Z 10-19 Z 20-29 Z 30-39 . . . . . . . 1 T1 . . . . . . 2 . T12 . Z2 . . . 3 . . . . . . . . T24 . . . Z34 4 . . . . . . . 5 . . . . . . 6 T6 . T17 . Z7 . . . 7 . . . . . . . 8 . T19 . . Z19 . . 9
In questo esempio sono occupati i temporizzatori T1, T6, T12, T17, T19, T24 e i contatori Z2, Z7, Z19, Z34. La tabella di occupazione segue l'ordine alfabetico. Per disporla in base a un tipo di voci fare clic sul titolo della relativa colonna.
313
14.1.4
La visualizzazione avviene in una finestra di lavoro. Nella riga del titolo della finestra di lavoro indicato il nome del programma utente a cui appartiene l'elenco. Ogni riga visualizzata nella finestra corrisponde ad una registrazione nell'elenco. Una riga consiste di operando, simbolo, tipo di dati e commento.
Colonna Operando Tipo di dati Commento all'operando Contenuto/significato Indirizzo assoluto dell'operando Tipo di dati dell'operando Commento all'operando dalla tabella dei simboli
Per disporre la tabella in base a un tipo di voci fare clic sul titolo della relativa colonna. anche possibile selezionare i simboli dell'elenco che non servono pi e eliminarli dalla tabella con la funzione "Cancella simboli".
314
14.1.5
Esempio:
Operando A 2.5 E 23.6 M 34.1 Numero 4 3 20
possibile scegliere gli operandi senza simbolo visualizzati nell'elenco e assegnarli a nomi di simboli con la funzione "Modifica simboli".
14.1.6
Le informazioni sul blocco variano a seconda del linguaggio di programmazione del blocco, e vengono rappresentate con sigle.
Linguaggio AWL KOP FUP Segmento Seg Seg Seg Istruzione Istr Operazione /
Seg e Istr specificano rispettivamente in quale segmento, in quale istruzione viene utilizzato l'operando (elenco dei riferimenti incrociati) oppure richiamato il blocco (struttura del programma).
315
14.2
14.2.1
14.2.2
316
14.2.3
Quando si aggiornano i dati di riferimento, i blocchi vengono ricompilati. Per ogni blocco viene richiamato il compiler adatto. Il comando del menu Visualizza > Aggiorna consente di aggiornare i dati di riferimento gi visualizzati.
317
14.2.4
Procedura fondamentale
1. Selezionare nel SIMATIC Manager il comando Strumenti > Dati di riferimento > Genera per generare i dati di riferimento attuali. Ci necessario se non vi sono dati di riferimento o se ve ne sono di non pi attuali. 2. Selezionare l'operando in un blocco aperto. 3. Selezionare il comando Modifica > Vai a > Punto di applicazione. Viene visualizzata una finestra di dialogo contenente un elenco dei punti di applicazione dell'operando nel programma. 4. Selezionare l'opzione "Accesso alle aree di memoria senza specificazione del tipo di dati" se devono essere inoltre visualizzati i punti di applicazione degli operandi, i cui indirizzi o aree di indirizzamento si sovrappongono all'indirizzo o all'area di indirizzamento dell'operando richiamato. Alla tabella viene aggiunta la colonna "Operando". 5. Selezionare un punto di applicazione nella lista, e cliccare sul pulsante "Vai a". Un messaggio viene emesso nel caso in cui nel richiamo della finestra di dialogo i dati di riferimento non siano pi attuali. L'utente potr quindi eseguire l'aggiornamento dei dati di riferimento.
possibile filtrare la visualizzazione dei punti di applicazione, p. es. per scegliere di vedere solo gli accessi in scrittura a un operando. Per maggiori informazioni sulle possibilit di introduzione e di visualizzazione si pu consultare la guida online relativa a questa finestra.
Avvertenza
I dati di riferimento sono presenti solo offline. Questa funzione opera perci sempre con i riferimenti incrociati dei blocchi offline, anche se la si richiama in un blocco online.
318
14.2.5
319
Procedere quindi nel seguente modo. 1. Nell'editor KOP/AWL/FUP in OB 1, posizionarsi su A1.0 (NW 1, Anw 1). 2. Con il comando Modifica > Vai a > Punto di applicazione oppure con il tasto destro del mouse, richiamare "Vai al punto di applicazione". Nella finestra di dialogo vengono tra l'altro visualizzate tutte le assegnazioni a A1.0: OB1 Cycle Execution Seg 2 Istr 3 /= W AWL OB1 Cycle Execution Seg 1 Istr 1 /U R AWL 3. Saltare nell'editor mediante "Vai a" dalla finestra di dialogo a "Seg. 2 Istr. 3": Segmento 2: U M1.0 U M2.0 = A 1.0 4. Sia le assegnazioni a M1.0 sia quelle a M2.0 devono essere ora controllate. Posizionarsi anche nell'editor KOP/AWL/FUP su M1. 5. Con il comando Modifica > Vai a > Punto di applicazione, oppure con il tasto destro del mouse richiamare "Vai al punto di applicazione". Nella finestra di dialogo vengono tra l'altro visualizzate tutte le assegnazioni a M1.0: OB1 Cycle Execution Seg 3 Istr 2 /= W AWL OB1 Cycle Execution Seg 2 Istr 1 /U R AWL 6. Saltare nell'editor KOP/AWL/FUP mediante "Vai a" a "NW 3 Anw 2". 7. Nell'editor KOP/AWL/FUP al segmento 3 viene stabilito che l'occupazione di M1.0 non interessante (in quanto sempre TRUE), e deve essere invece esaminata l'occupazione di M2.0. Nelle versioni di STEP 7 precedenti V5 occorreva a questo punto ri-eseguire dall'inizio l'intera catena di assegnazioni; nella versione attuale i pulsanti ">>" e "<<" facilitano le operazioni che seguono. 8. Si pu portare in avanti la finestra di dialogo ancora aperta "Vai al punto di applicazione" oppure richiamare " Vai al punto di applicazione" dall'attuale posizione nell'editor KOP/AWL/FUP. 9. Premere una o due volte il pulsante "<<" finch non vengano visualizzati tutti i punti di applicazione di A 1.0, laddove selezionato l'ultimo punto da cui saltare "Seg 2 Istr 3". 10. Saltare nell'editor mediante "Vai a" (come al punto 3) dalla finestra di dialogo sui punti di applicazione a "Seg 2 Istr 3": Segmento 2: U M1.0 U M2.0 = A 1.0 11. Al punto 4 e seguenti stata controllata l'assegnazione a M1.0. Occorre adesso controllare tutte le assegnazioni (dirette/indirette) a M2.0. Posizionarsi quindi nell'editor su M2.0, e richiamare "Vai al punto di applicazione": vengono visualizzate tra l'altro tutte le assegnazioni a M2.0: OB1 Cycle Execution Seg 4 Istr 3 /= W AWL OB1 Cycle Execution Seg 2 Istr 2 /U R AWL
320
12. Saltare nell'editor KOP/AWL/FUP a "Seg 4 Istr 3" mediante "Vai a": Segmento 4: U E 1.0 U E 2.0 = M2.0 13. Devono adesso essere controllate le assegnazioni a E1.0 e E2.0. Ci non viene qui spiegato in quanto il modo di procedere ulteriore non si distingue da quello finora descritto (punti 4 e seguenti). Saltando alternatamente tra l'editor KOP/AWL/FUP e la finestra di dialogo sui punti di applicazione possibile rilevare e esaminare i punti rilevanti del programma.
321
322
15
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco
Verifica della coerenza dei blocchi
15.1
Introduzione
Adattando o completando le interfacce o il codice di singoli oggetti durante o dopo la creazione di un programma, potrebbero verificarsi conflitti nelle registrazioni di data e ora, i quali a loro volta possono causare incoerenze tra oggetti richiamanti e oggetti richiamati o blocchi di riferimento, comportando quindi un numero maggiore di correzioni. La funzione "Verifica coerenza blocchi" esegue una quantit notevole di correzioni, eliminando automaticamente un gran numero di conflitti nella registrazione della data e dell'ora e nei blocchi. In caso di oggetti per i quali non stato possibile correggere automaticamente le incoerenze, questa funzione passa alle posizioni da modificare nell'editor opportuno. Qui l'utente ha la possibilit di apportare le modifiche necessarie. Le incoerenze vengono corrette passo dopo passo mentre gli oggetti vengono compilati. Eseguendo la compilazione, vengono mostrate tutte le incoerenze risultanti in un elenco di errori; l'elaborazione dell'elenco pu tuttavia richiedere molto tempo in caso di progetti di media o grande portata.
Presupposti
La verifica della coerenza dei blocchi possibile solo con progetti creati dalla versione STEP 7 V5.0, Servicepack 3. Nel caso di progetti meno recenti occorre pertanto, con l'avvio della verifica della coerenza, compilare tutto (comando di menu Programma > Compila tutto). Nel caso di oggetti creati con un pacchetto opzionale, quest'ultimo deve essere installato per poter eseguire la verifica della coerenza.
323
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco 15.1 Verifica della coerenza dei blocchi
324
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco 15.2 Registrazione di data e ora nelle propriet del blocco e conflitti
15.2
Avvertenza Anche se la relazione tra interfaccia e registrazione di data e ora corretta, si possono verificare alcune incoerenze:
La definizione dell'interfaccia del blocco indirizzato non corrisponde all'interfaccia utilizzata nel suo punto di applicazione.
Tali incoerenze vengono definite conflitti di interfaccia. Essi possono essere causati p. es. dalla copia di blocchi di programmi diversi oppure dall'avvio della compilazione di una sorgente ASCII in cui viene generata solo una quantit parziale di blocchi di un intero programma .
325
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco 15.3 Registrazione di data e ora in blocchi di codice
15.3
La registrazione di data e ora non viene aggiornata in caso di modifica dei simboli modifica di commenti nella dichiarazione di variabili modifiche nell'area TEMP.
326
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco 15.4 Registrazione di data e ora in blocchi dati globali
15.4
15.5
327
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco 15.6 Registrazione di data e ora negli UDT e nei DB derivati dagli UTD
15.6
15.7
328
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco 15.8 Esclusione degli errori tramite il richiamo di blocchi
15.8
Pericolo Vi pericolo di danni a persone o cose nell'utilizzo di: 1. CALL FC, CALL FB, CALL di multiistanza 2. acessi a DB con indirizzo completo (p. es. DB20.DBW10) 3. accesso a variabili di un tipo di dati composto
Pu accadere che il contenuto dei registri DB (DB e DI), dei registri di indirizzi (AR1, AR2) e degli accumulatori (ACCU1, ACCU2) venga modificato. Neanche il risultato logico combinatorio RLC pu essere utilizzato in FB-CALL/FC-CALL come parametro aggiuntivo (implicito). Se si usano le suddette possibilit di programmazione, necessario provvedere al ripristino del contenuto, altrimenti potrebbe verificarsi un comportamento errato del sistema.
Con questi due metodi di indirizzamento, STEP 7 apre automaticamente il DB corretto. Quando si usa il registro AR1 per l'indirizzamento indiretto, si deve sempre caricare in AR1 l'indirizzo corretto.
329
Verifica di coerenza dei blocchi e registrazione di data e ora nelle propriet del blocco 15.8 Esclusione degli errori tramite il richiamo di blocchi
Avvertenza
Richiamando un FB da un blocco della versione 1, il parametro attuale per il primo IN booleano e per il parametro IN_OUT non viene trasferito correttamente qualora il comando prima del Call non limiti il risultato logico combinatorio. In questo caso il parametro viene combinato con il risultato logico combinatorio presente. Al richiamo di un FB (singolo o multiinstanza) vengono registrati dati nel registro degli indirizzi AR2. Se nell'ambito di un FB viene modificato il registro degli indirizzi AR2, p. es. con le operazioni UC, CC o CALL (richiamo di FC/SFC senza parametro), non pi garantito che l'elaborazione di tale FB avvenga correttamente. Se al parametro ANY non viene trasferito il completo indirizzo assoluto di DB, il puntatore ANY non contiene il numero di DB del DB aperto, ma sempre il numero 0.
330
16
16.1
Progettazione di messaggi
Principi del sistema di messaggi
I messaggi permettono all'utente di rilevare rapidamente gli errori nell'esecuzione di processo nei sistemi di automazione, e di localizzarli e correggerli puntualmente. Vengono cos notevolmente ridotti i tempi di inattivit dell'impianto. Prima di poter essere emessi, i messaggi devono essere progettati. STEP 7 permette di creare, modificare e tradurre messaggi correlati ad eventi e di emetterli su display.
16.1.1
Il sistema di servizio e supervisione chiede ciclicamente al sistema di automazione se il bit segnalazioni si modificato o meno. Se il sistema di automazione segnala una modifica, viene emesso il messaggio corrispondente. Il messaggio riceve la registrazione di data e ora del sistema di servizio e supervisione.
331
Non avviene una interrogazione ciclica del sistema di automazione. Appena il sistema di automazione segnala una modifica, viene trasmesso il rispettivo numero di messaggio al sistema di servizio e supervisione, ed emesso il testo. Il messaggio ha la registrazione di data e ora del sistema di automazione, ed perci pi facile da classificare rispetto alla procedura che utilizza i bit segnalazioni.
332
16.1.2
Panoramica
La seguente tabella riporta le propriet e le altre condizioni relative alle diverse modalit di creazione dei messaggi.
Creazione di numeri di messaggio I messaggi vengono gestiti in un database comune a PG e sistema operativo. Il carico sul bus ridotto (PLC segnala attivo). I messaggi ricevono la registrazione di data e ora del sistema di automazione. Creazione di bit segnalazioni Non esiste un database comune per PG e sistema operativo. Il carico sul bus elevato (il sistema SeS in polling). I messaggi ricevono la registrazione di data e ora del sistema SeS.
La procedura di creazione di messaggi basata sui numeri di messaggio prevede i seguenti tre tipi di messaggi.
Messaggi riferiti ai blocchi Messaggi riferiti ai simboli Messaggi di diagnostica personalizzati sincroni al programma visualizzati nel buffer di diagnostica sul PG consentiti nellS7-300/400 programmazione mediante blocchi di segnalazioni (funzione disistema) WR_USMSG senza trasferimento nel sistema SeS
sincroni al programma visualizzati tramite ProTool (solo ALARM_S) e WinCC consentiti nellS7-300/400 programmazione mediante blocchi di segnalazioni: ALARM (soltanto per S7-400) ALARM_8 (soltanto perS7-400) ALARM_8P (soltanto per S7-400) NOTIFY (soltanto per S7-400) NOTIFY_8P (soltanto perS7-400) ALARM_S(Q) AR_SEND (soltanto per S7-400) ALARM_D(Q) con trasferimento nel sistema SeS per WinCC mediante AS OS Engineering per ProTool mediante funzioni ProTool
sincroni al programma visualizzati tramite WinCC possibile solo per S7-400 progettazione tramite tabella dei simboli con trasferimento al PLC mediante blocchi dati di sistema (SDB) con trasferimento nel sistema SeS mediante AS OS Engineering
STEP 7 supporta solo la procedura di creazione di numeri di messaggio pi agevole, descritta dettagliatamente nei paragrafi successivi. La creazione di bit segnalazioni viene progettata nelle apparecchiature HMI ed ivi descritta.
333
334
16.1.3
Componenti SIMATIC
Panoramica
La figura seguente riporta una panoramica dei componenti SIMATIC che partecipano alla progettazione e visualizzazione dei messaggi.
335
16.1.4
Componenti di un messaggio
Il modo in cui i messaggi sono visualizzati varia a seconda della procedura di creazione dei messaggi, del blocco segnalazioni utilizzato e del display. I possibili componenti sono riportati nella seguente tabella.
Componente Registrazione di data e ora Stato del messaggio Valore Immagine Numero di messaggio Testi dei messaggi Descrizione Viene creata al verificarsi dell'evento di messaggio nel sistema di automazione. Sono possibili gli stati seguenti: in entrata, in uscita, in uscita senza conferma, in uscita con conferma. Ad alcuni messaggi pu essere aggiunto un valore di processo, che pu essere analizzato dal blocco segnalazioni utilizzato In caso di crash del sistema, i messaggi emessi potranno essere visualizzati nell'OS. Numero univoco per tutto il progetto o per tutta la CPU, assegnato dal sistema e che ha la funzione di identificare un messaggio. Vengono progettati dall'utente.
Esempio
Il seguente esempio riporta un messaggio di avaria in un pannello operatore
336
16.1.5
Per maggiori informazioni, consultare la Guida di riferimento alla voce Rimandi alla descrizione dei linguaggi e Guida a blocchi e attributi di sistema .
Blocco segnalazioni
ALARM SFB 33
possibile
fino a s 10 variabili no s
S7400
Invia un messaggio per ogni fronte entrante o uscnete Invia un messaggio per fronte entrante o uscente di uno o pi segnali come ALARM_8
ALARM_8 SFB 34
possibile
no
no
S7400
ALARM_8P SFB 35
possibile
fino a s 10
no
no
S7400
337
Blocco segnalazioni
Canali
Conferma
Variabili
Visualizzazione WinCC
Visualizzazione PROTOOL no no no
PLC
Particolarit
1 8 1
no no -
fino a s 10 fino a s 10 s
come ALARM come NOTIFY Permette di trasferire archivi; non consente la progettazione di testi dei messaggi e attributi dei messaggi
ALARM_SQ SFC 17
Possibile
ja
ja*
ja
S7Ad ogni richiamo 300/4 dell'SFC con 00 modifica del segnale riconducibile ad un precedente richiamo dell'SFC stessa, viene generato un messagggio S7300/ 400 S7300/ 400 S7300/ 400 come ALARM_SQ come ALARM_SQ come ALARM_SQ
no
s*
possibile
s*
no
s*
338
16.1.6
Per maggiori informazioni, consultare la Guida di riferimento alla voce Attributi di sistema Gli attributi di sistema vengono assegnati automaticamente se i blocchi segnalazioni utilizzati nel programma sono SFB o FB con i corrispondenti attributi di sistema, e se vengono richiamati come multiistanze.
339
16.1.7
La differenza evidente che ai messaggi sono assegnati dei numeri, al modello di messaggio no.
340
Attenzione
Se le istanze vengono copiate in un altro programma senza copiare il modello di messaggio, esse potrebbero risultare incomplete. In questo caso occorre copiare nel nuovo programma anche il modello di messaggio. Se i testi e gli attributi di un'istanza vengono visualizzati in verde, significa che sono ancora come quando sono stati progettati nel modello. Non sono perci ancora stati modificati nell'istanza.
341
16.1.8
Attenzione Se il blocco viene referenziato in modo simbolico, prima della compilazione della sorgente la tabella dei simboli non deve essere modificata.
Se la sorgente contiene pi blocchi, i diversi pseudo-commenti vengono raggruppati in un unico commento. Non consentito cancellare dalla sorgente AWL singoli blocchi con gli attributi dei messaggi.
16.1.9
342
16.1.10
Differenze tra assegnazione dei numeri di messaggio per tutto il progetto e per tutta la CPU
La tabella elenca le differenze tra l'assegnazione dei numeri ai messaggi per tutto il progetto e per tutta la CPU.
Per tutto il progetto Per tutta la CPU
Alcuni attributi e testi dei messaggi dipendono Gli attributi e i testi assegnati sono indipendenti dall'apparecchiatura HMI e devono essere progettati in dall'apparecchiatura HMI; non necessario modo specifico per il display. aggiungere alcun display, n progettare per l'apparecchiatura messaggi specifici per il display. I programmi copiati devono essere ricompilati. I programmi possono essere copiati sia all'interno di un progetto che da un progetto all'altro. Se vengono copiati singoli blocchi per necessaria una nuova compilazione. Se vengono modificati dati (testi ed attributi) relativi al tipo di messaggio, le modifiche vengono riportate automaticamente anche nelle istanze (a meno che queste ultime non siano gi state modificate dall'utente). Sono consentiti anche testi che occupano pi righe. possibile la creazione di fino a 8191 messaggi alarm_s per ciascun programma. Per tutti gli altri tipi di messaggi (escluso WWR_USMSG) possibile la creazione di fino a 32767 messaggi per ciascun programma. Durante il salvataggio di progetti o la copia di programmi con la funzione "Salva e riorganizza," passando dal concetto di numerazione messaggi in tutto il progetto a quello di numerazione messaggi in tutta la CPU, accertarsi di non superare in quest'ultima il numero max. di messaggi consentiti per ogni singolo programma
Se vengono modificati dati (testi ed attributi) relativi al tipo di messaggio, necessario modificare anche le istanze.
Sono consentiti soltanto testi che occupano una riga. Per tutti i tipi di messaggi (escluso WR_USMSG), possibile la creazione di fino a 2097151 messaggi per ciascun programma.
343
16.1.11
344
16.2
16.2.1
16.2.2
345
16.2.2.1
Procedimento fondamentale
346
3. Nella parte istruzioni dell'FB inserire il richiamo per il blocco segnalazioni scelto, in questo caso "CALL alarm", e concludere l'operazione premendo il tasto INVIO. Risultato: nella parte istruzioni dell'FB vengono visualizzate le variabili di ingresso del blocco segnalazioni richiamato, in questo caso SFB 33. 4. Assegnare alla variabile "EV_ID" il nome simbolico stabilito al punto 2 per l'ingresso del blocco segnalazioni, in questo caso quindi "Mess01". Risultato: nella colonna "Nome" del parametro "IN", se non selezionata, appare una "bandierina". In questo modo il blocco selezionato in grado di richiamare segnalazioni e messaggi. Gli attributi di sistema necessari (p. es. S7_server e S7_a_type) e i valori corrispondenti vengono assegnati automaticamente (per alcune SFC essi devono essere assegnati dall'utente con il comando di menu Modifica > Propriet dell'oggetto, scheda "Attributi"). Attenzione: se invece di un SFB viene richiamato un FB con multiistanze nel quale sono stati progettati anche messaggi, necessario progettare i messaggi dell'FB con multiistanze anche nel blocco richiamante. 5. Ripetere le operazioni da 2 a 4 per tutti i richiami di blocchi segnalazioni in questo FB. 6. Salvare il blocco con il comando del menu File > Salva. 7. Chiudere la finestra "KOP/AWL/FUP".
347
Creazione di DB di istanza
1. Dopo aver creato un modello di messaggio, gli si possono assegnare i blocchi dati di istanza (DB) ed elaborare i messaggi specifici dell'istanza. In SIMATIC Manager aprire il blocco che deve richiamare gli FB precedentemente progettati, ad es. "OB1", facendo doppio clic su esso. Nella parte istruzioni aperta dell'OB, specificare il richiamo ("CALL"), nonch il nome e il numero dell'FB e del DB che si vuole assegnare all'FB come istanza. Concludere l'operazione premendo il tasto INVIO. Esempio: specificare "CALL FB1, DB1". Se il DB1 non esiste ancora, confermare con "S" la richiesta di generare o meno il blocco. Risultato: viene creato il DB di istanza. Nella parte istruzioni dell'OB sono visualizzate le variabili di ingresso dell'FB rispettivo, qui p. es. "Mess01" e i numeri di messaggio assegnati dal sistema, in questo caso "1". 2. Salvare l'OB con il comando File > Salva, e chiudere la finestra "KOP/AWL/FUP".
348
Modifica di messaggi
1. Selezionare nel SIMATIC Manager il DB di istanza, p. es. "DB1", e richiamare la progettazione di messaggi con il comando Modifica > Propriet speciali dell'oggetto > Messaggio. Risultato: viene aperta la finestra di dialogo "Progettazione di messaggi" e visualizzato il DB di istanza selezionato con il numero di messaggio assegnato dal sistema. 2. Apportare le modifiche desiderate per il rispettivo DB di istanza nelle diverse schede, ed eventualmente inserire ulteriori display. Uscire dalla funzione con "OK". Risultato: viene conclusa la progettazione dei messaggi per il DB di istanza selezionato
16.2.2.2
349
16.2.2.3
Modifica di messaggi
1. Selezionare nel SIMATIC Manager il DB di istanza di cui si vogliono modificare i testi dei messaggi, e richiamare la progettazione di messaggi PCS 7. 2. Modificare i componenti di messaggio specifici delle istanze, e non inibiti.
350
16.2.3
16.2.3.1
Procedimento fondamentale
Durante l'esecuzione i segnali per i quali sono stati progettati i messaggi vengono controllati asincronicamente al programma utente.I controlli hanno luogo nei reticoli temporali progettati. I messaggi vengono visualizzati sui display loro assegnati.
Attenzione Se si desidera assegnare o modificare i messaggi riferiti ai simboli e nella stessa fase operativa sono gi stati copiati simboli tra due tabelle dei simboli, necessario chiudere innanzitutto la tabella dei simboli nella quale non si intende pi lavorare, altrimenti non possibile salvare la progettazione eseguita per i messaggi. possibile che le ultime registrazioni nella finestra di progettazione dei messaggi vadano perse.
351
16.2.4
Presupposti
Per poter creare un messaggio di diagnostica personalizzato necessario: aver creato un progetto nel SIMATIC Manager aver creato nel progetto un programma S7/M7 al quale assegnare uno o pi messaggi.
Procedimento fondamentale
Per creare e visualizzare un messaggio di diagnostica personalizzato procedere nel seguente modo.
352
16.3
16.3.1
Presupposti
WinCC V6.0 ProTool V6.0
16.3.2
353
16.3.3
16.3.3.1
Procedimento fondamentale
354
3. Nella parte istruzioni dell'FB inserire il richiamo per il blocco segnalazioni scelto, in questo caso "CALL alarm", e concludere l'operazione premendo il tasto INVIO. Risultato: nella parte istruzioni dell'FB vengono visualizzate le variabili di ingresso del blocco segnalazioni richiamato, in questo caso SFB 33. 4. Assegnare alla variabile "EV_ID" il nome simbolico assegnato al punto 2 per l'ingresso del blocco segnalazioni, in questo caso quindi "Mess01". Risultato: nella colonna "Nome" del parametro "IN", se non selezionata, appare una "bandierina". In questo modo il blocco selezionato in grado di richiamare segnalazioni e messaggi. Gli attributi di sistema necessari (p. es. S7_server e S7_a_type) e i valori corrispondenti vengono assegnati automaticamente (per alcune SFC gli attributi di sistema del parametro "IN" devono essere assegnati dall'utente con il comando di menu Modifica > Propriet dell'oggetto, scheda "Attributi"). Attenzione: se invece di un SFB viene richiamato un FB con multiistanze nel quale sono stati progettati anche messaggi, necessario progettare i messaggi dell'FB con multiistanze anche nel blocco richiamante. 5. Ripetere le operazioni da 2 a 4 per tutti i richiami di blocchi segnalazioni in questo FB. 6. Salvare il blocco con il comando del menu File > Salva. 7. Chiudere la finestra "KOP/AWL/FUP".
355
Creazione di DB di istanza
1. Dopo aver creato un modello di messaggio, gli si possono assegnare i blocchi dati di istanza (DB) ed elaborare i messaggi specifici dell'istanza. In SIMATIC Manager aprire il blocco che deve richiamare gli FB precedentemente progettati, ad es. "OB1", facendo doppio clic su esso. Nella parte istruzioni aperta dell'OB, specificare il richiamo ("CALL"), nonch il nome e il numero dell'FB e del DB che si vuole assegnare all'FB come istanza. Concludere l'operazione premendo il tasto INVIO. Esempio: specificare "CALL FB1, DB1". Se il DB1 non esiste ancora, confermare con "S" la richiesta di generare o meno il blocco. Risultato: viene creato il DB di istanza. Nella parte istruzioni dell'OB sono visualizzate le variabili di ingresso dell'FB rispettivo, qui p. es. "Mess01" e i numeri di messaggio assegnati dal sistema, in questo caso "1". 2. Salvare l'OB con il comando File > Salva, e chiudere la finestra "KOP/AWL/FUP".
Modifica di messaggi
1. Selezionare nel SIMATIC Manager il DB di istanza, p. es. "DB1", e richiamare la progettazione di messaggi con il comando Modifica > Propriet speciali dell'oggetto > Messaggio. Risultato: viene aperta la finestra di dialogo "Progettazione di messaggi" e visualizzato il DB di istanza selezionato con il numero di messaggio assegnato dal sistema. 2. Apportare le modifiche desiderate per il rispettivo DB di istanza. Uscire dalla funzione con "OK". Risultato: viene conclusa la progettazione dei messaggi per il DB di istanza selezionato. Avvertenza Se i testi e gli attributi di un'istanza vengono visualizzati in verde, significa che sono ancora come quando sono stati progettati nel modello. Non sono perci ancora stati modificati nell'istanza.
356
16.3.3.2
Modifica di messaggi
1. Selezionare nel SIMATIC Manager il DB di istanza di cui si vogliono modificare i testi dei messaggi, e richiamare la progettazione di messaggi PCS7. 2. Modificare i componenti di messaggio specifici delle istanze, e non inibiti.
357
16.3.4
16.3.4.1
Procedimento fondamentale
Durante l'esecuzione i segnali per i quali sono stati progettati i messaggi vengono controllati asincronicamente al programma utente.I controlli hanno luogo nei reticoli temporali progettati. I messaggi vengono visualizzati sui display loro assegnati.
Attenzione Se si desidera assegnare o modificare i messaggi riferiti ai simboli e nella stessa fase operativa sono gi stati copiati simboli tra due tabelle dei simboli, necessario chiudere innanzitutto la tabella dei simboli nella quale non si intende pi lavorare, altrimenti non possibile salvare la progettazione eseguita per i messaggi. possibile che le ultime registrazioni nella finestra di progettazione dei messaggi vadano perse.
358
16.3.5
Presupposti
Per poter creare un messaggio di diagnostica personalizzato necessario: aver creato un progetto nel SIMATIC Manager aver creato nel progetto un programma S7/M7 al quale assegnare uno o pi messaggi.
Procedimento fondamentale
Per creare e visualizzare un messaggio di diagnostica personalizzato procedere nel seguente modo.
359
16.4
16.4.1
Procedimento
1. Costituire un blocco con la seguente struttura: @<N. della variabile><tipo di elemento><indicazione del formato>@. 2. Inserire il blocco nelle posizioni del testo del messaggio in cui visualizzare la variabile.
Tipo di elemento
Viene qui progettato in modo univoco il tipo di dati della variabile:
Tipo di elemento Y W X I D B C R Tipo di dati BYTE WORD DWORD Integer DINT BOOL CHAR REAL
Il tipo di elemento si riferisce esclusivamente al tipo di dati trasferito al PLC, e non viene utilizzato come Casting Operator.
360
posizioni complessive
%[i]s %t#<nome della biblioteca di testi> Stringa di caratteri (stringa ANSI) con i posizioni. I caratteri vengono stampati fino al primo byte 0 (00Hex). Accesso alla biblioteca di testi
Se il formato indicato troppo piccolo, il valore verr comunque emesso nella sua lunghezza intera. Se il formato indicato troppo lungo, il valore emesso sar preceduto da un numero adeguato di caratteri di spaziatura.
Avvertenza Si tenga presente che il valore "[i]" opzionale e va editato senza parentesi quadre.
361
Esempi di variabili
@1I%6d@: il valore dalla variabile 1 viene rappresentato come numero decimale di 6 posizioni al massimo. @2R%6f@: il valore "5.4" dalla variabile 2 viene rappresentato come numero in virgola fissa "5.4" (tre spazi a sinistra). @2R%2f@: il valore "5.4" dalla variabile2 viene rappresentato come numero in virgola fissa "5.4" (non viene tagliato in caso di numero di posizioni troppo basso). @1W%t#Textbib1@: variabile 1- del tipo di dati WORD si trova nell'indice con il quale nella biblioteca di testi Textbib1 viene indirizzato il testo da impiegare.
Avvertenza In S7-PDIAG indicare sempre "C" come tipo di elemento per CHAR e "R" come tipo di elemento per REAL. Per gli altri tipi di elementi validi di S7-PDIAG, quali BOOL, BYTE, WORD, INT, DWORD e DINT indicare sempre "X". Se si intende trasferire pi di una variabile ai blocchi ALARM_S, possibile trasferire un array con max. 12 byte di lunghezza. Essi possono avere p. es. un massimo di 12 byte oppure Char, un massimo di 6 Word oppure Int o un massimo di 3 DWord, Real o DInt.
362
Esempio
Testo del messaggio progettato: pressione diventata @2W%t#Textbib1@. Biblioteca di testi con il nome "Textbib1":
Indice 1734 tedesco zu hoch italiano troppo alta
Alla seconda variabile trasmessa assegnato il valore 1734. Viene visualizzato il seguente testo del messaggio: la pressione diventata troppo alta.
16.4.3
Cancellazione di variabili
possibile cancellare una variabile eliminando nel testo del messaggio la stringa che la rappresenta.
363
16.5
Introduzione
I testi visualizzati sui display nel corso dell'elaborazione dei processi vengono editati nella lingua in cui stata programmata la soluzione di automazione. Spesso, tuttavia, avviene che l'operatore che deve reagire a un messaggio non capisca questa lingua. necessario insomma che egli possa leggere i testi nella sua lingua madre. Solo cos garantita un'elaborazione perfetta e una reazione immediata ai messaggi emessi. STEP7 offre la possibilit di tradurre tutti i testi utente nella lingua desiderata a condizione che quest'ultima sia gi stata installata nel progetto. Il numero dei linguaggi disponibili viene stabilito nell'installazione di Windows (propriet di sistema). In questo modo possibile garantire che chiunque si trovi di fronte a un messaggio possa visualizzarlo in un secondo momento nella lingua desiderata, contribuendo a un essenziale miglioramento della sicurezza nel processo. I testi rilevanti per l'utente sono i testi utente e le biblioteche di testi.
16.5.1
364
Principio di funzionamento
Assicurarsi che nel SIMATIC Manager siano state impostate le lingue in cui tradurre i testi utente usando il comando Strumenti > Lingua per display.
Avvertenza I testi utente possono essere stampati soltanto nell'applicazione in cui vengono tradotti.
365
16.6
16.6.1
Attenzione Se un blocco di segnalazione che referenzia una biblioteca di testi viene copiato in un altro programma, necessario copiare anche le relative biblioteche di testi, creare un'altra biblioteca di testi con lo stesso nome oppure modificare il riferimento nel testo del messaggio.
Ogni testo deve essere provvisto di un indice. Quando si crea una nuova riga, l'applicazione propone per default il primo indice libero. Gli indici non univoci all'interno di una biblioteca di testi non sono consentiti e vengono rifiutati dall'applicazione.
16.6.2
Avvertenza Ad ogni testo presente nella biblioteca obbligatorio assegnare un indice. Quando viene creato un nuovo testo, l'applicazione propone per default il primo indice libero. La doppia assegnazione di un indice non consentita e viene rifiutata dall'applicazione.
366
16.6.3
Attenzione Se un blocco di segnalazione che referenzia una biblioteca di testi viene copiato in un altro programma, necessario copiare anche le relative biblioteche di testi, creare un'altra biblioteca di testi con lo stesso nome oppure modificare il riferimento nel testo del messaggio. Se si modifica il nome di una biblioteca di testi, le variabili che fanno riferimento a questa biblioteca contenute in messaggi gi progettati perdono la loro validit.
16.6.4
367
16.6.5
Attenzione Un file di esportazione in formato CSV non deve essere aperto mediante un doppio clic. Aprire sempre tale file con il comando di menu di Microsoft EXCEL File > Apri.
Avvertenza I testi utente possono essere stampati soltanto nell'applicazione in cui vengono tradotti.
368
Principio di funzionamento
Assicurarsi che nel SIMATIC Manager siano state impostate le lingue in cui tradurre una biblioteca di testi usando il comando Strumenti > Lingua per display .
369
Progettazione di messaggi 16.7 Trasferimento dei dati di progettazione nel sistema di destinazione
16.7
16.7.1
Introduzione
Il programma di trasferimento dati "AS-OS Engineering" consente di trasferire nel database di WinCC i dati di progettazione per i messaggi.
Presupposti
Prima di iniziare il trasferimento necessario: installare il programma AS-OS Engineering generare i dati di progettazione per la creazione dei messaggi.
Procedimento fondamentale
370
16.8
Possibilit di visualizzazione
Con la funzione "Messaggi CPU" l'utente pu decidere se e come vengono visualizzati i messaggi per le CPU selezionate. "In primo piano": la finestra con i messaggi CPU appare in primo piano. La finestra viene visualizzata in questa posizione alla ricezione di ogni nuovo messaggio. "Evidenzia sulla barra delle applicazioni": se alla ricezione di un messaggio la finestra di dialogo non si trova in primo piano, la funzione "Messaggi CPU" viene evidenziata sulla barra delle applicazioni di Windows. "Ignora messaggio": i nuovi messaggi CPU non vengono visualizzati; a differenza dei due casi precedenti, essi non vengono nemmeno archiviati.
La finestra "Messaggi CPU" contiene le schede "Archivio" e "Allarme". In entrambe le schede possibile scegliere se visualizzare i messaggi con o senza testo informativo (comando di menu Visualizza > Testo informativo).
Scheda "Archivio"
In questa scheda i messaggi entranti vengono visualizzati e archiviati secondo l'ordine cronologico di arrivo. Le dimensioni dell'archivio (comprese tra 40 e 3000 messaggi) possono essere definite mediante il comando Strumenti > Impostazioni nella finestra di dialogo "Impostazioni - Messaggi CPU". Se le dimensioni dell'archivio impostate vengono superate, i messaggi vengono cancellati partendo dal meno recente. I messaggi confermabili (ALARM_SQ e ALARM_DQ) sono contrassegnati in grassetto e possono essere confermati con il comando Modifica > Conferma messaggi CPU.
371
372
Scheda "Allarme"
I messaggi di blocchi ALARM_S non ancora partiti o non ancora confermati vengono visualizzati con il relativo stato anche nella scheda "Allarme". Con il comando di menu Visualizza > Messaggi in pi righe l'utente sceglie se visualizzare i messaggi su una o pi righe. Le colonne possono essere ordinate in qualsiasi sequenza.
Procedura fondamentale
Per configurare i messaggi CPU per le unit selezionate,
373
16.8.1
Avvertenza Nell'elenco delle unit indicate nella finestra di dialogo "Impostazioni" dell'applicazione "Visualizzazione messaggi CPU" sono registrate le CPU per le quali stato richiamato il comando di menu Sistema di destinazione > Messaggi CPU. Le voci della lista rimangono immutate finch non vengono cancellate nella finestra di dialogo sopra descritta.
16.8.2
374
16.9
16.9.1
16.9.2
Introduzione
Quando si verificano errori di sistema, i componenti hardware e gli slave DP standard (slave le cui propriet sono determinate dal file GSD) possono attivare il richiamo di blocchi organizzativi. Esempio: in caso di rottura conduttore un'unit con propriet di diagnostica pu attivare un allarme di diagnostica (OB 82). I componenti hardware mettono a disposizione informazioni sull'errore di sistema verificatosi. Le informazioni dell'evento di avviamento, vale a dire i dati locali dell'OB assegnato (contengono fra l'altro il set di dati 0) forniscono informazioni generali sulla posizione (p. es. indirizzo logico dell'unit) e il tipo di errore (p. es. guasto legato al canale o alla bufferizzazione). inoltre possibile specificare l'errore in maniera pi esatta tramite informazioni supplementari di diagnostica (lettura del set di dati 1 con la SFC 51 o lettura del telegramma di diagnostica di slave standard DP con la SFC 13): p. es. canale 0 o 1, rottura di un conduttore oppure superamento campo di misura. Con la funzione "Segnala errori di sistema", STEP 7 offre una comoda possibilit di visualizzare in forma di messaggio le informazioni di diagnostica fornite dal componente. STEP 7 genera i blocchi e i testi necessari. I blocchi devono essere caricati nella CPU dall'utente e i testi devono essere trasferiti nei dispositivi HMI collegati. Per consentire l'emissione, in un dispositivo HMI, di eventi di diagnostica in forma grafica, creare un DB ROFIBUS DP (per default DB 125) oppure un DB PROFINET IO (per default DB 126). Sull'interfaccia di ogni singolo blocco dati vengono dichiarati gli elementi "Map_ErrorNo" e "Map_HelpNo". Durante il funzionamento, a questi elementi vengono assegnati un ID dell'argomento della Guida o un ID di errore. In fase di generazione. i possibili valori ed il relativo significato vengono esportati dall'applicazione "Segnala errori di sistema" in file csv. nella cartella preimpostata. Per visualizzare il significato di un ID dell'Argomento della Guida o di errore, il dispositivo HMI deve importare questi testi. Per visualizzare lo stato dell'unit nel Web server della CPU, possibile creare un blocco dati che supporti il Web server della CPU (per default viene creato il DB 127). Per una panoramica completa delle informazioni di diagnostica supportate dai vari slave, consultare il paragrafo Componenti supportati e insieme delle funzioni.
375
Fasi fondamentali
I messaggi vengono inviati secondo lo standard da ALARM_S/SQ a "Messaggi CPU" sul PG o agli apparecchi HMI collegati. possibile deselezionare la funzione di invio dei messaggi ad un dispositivo HMI.
Nota I blocchi creati con la funzione 'Segnala errori di sistema' possono essere caricati nella CPU soltanto quando quest'ultima si trova nello stato di funzionamento STOP.
376
16.9.3
In caso venga effettuato un riavviamento, si tenga presente che si potrebbero verificare segnalazioni di allarme. Questo comportamento dovuto al fatto che la memoria di conferma dei messaggi della CPU non viene cancellata ma "Segnala errori di sistema" resetta i dati interni. Non tutti gli errori del modulo o di canale che si verificano prima o durante l'avvio vengono segnalati. Per ciascun modulo vengono segnalati max. 8 errori di canale.
Nota Utilizzando un CP 443-5 che si trova nello stato di funzionamento STOP, all'avvio non viene segnalato alcun guasto del sistema master.
PROFIBUS DP
Nelle due tabelle che seguono sono riportati tutti i blocchi di diagnostica dei diversi slave PROFIBUS DP supportati da "Segnalazione errori di sistema".
Blocco di diagnostica Definizione di riferimento (errore posto connettore) 0x01 Definizione canale (errore canale) 1) 0x10 Stato del modulo (errore di modulo, errore/modulo mancante) 0x00 tipo 0x82 Messaggio con testo esaustivo Messaggio con testo esaustivo Messaggio con testo esaustivo Denominazione dispositivo
Messaggio: Messaggio con "Allarme di testo esaustivo diagnostica attivato" Messaggio: Messaggio con "Allarme di testo esaustivo diagnostica attivato" non viene analizzato Messaggio con testo esaustivo
ET 200pro
ET 200M ET 200X
Messaggio: "Allarme di diagnostica attivato" Messaggio: Messaggio con "Allarme di testo esaustivo diagnostica attivato" non viene analizzato -
ET 200X DESINA
ET 200L
377
Blocco di diagnostica
Denominazione dispositivo
ET 200B Digitale
Messaggio: "Allarme di diagnostica attivato" Messaggio: "Allarme di diagnostica attivato" Messaggio: Messaggio con "Allarme di testo esaustivo diagnostica attivato" -
ET 200iS
ET 200eco
Blocco di diagnostica Identificativo intestazione 2) ET 200S ET 200pro ET 200M ET 200X ET 200 XDESINA ET 200L ET 200B digitale ET 200B analogico ET 200C digitale ET 200C analogico ET 200iS ET 200eco
DS0/DS1 1) 0x00 Tipo 0x01 Messaggio con testo esaustivo Messaggio con testo esaustivo Messaggio con testo esaustivo Messaggio con testo esaustivo Messaggio con testo esaustivo Messaggio con testo esaustivo Messaggio con testo esaustivo Messaggio con testo esaustivo -
1) DS0: diagnostica standard, p. es. guasto dell'unit, mancanza di tensione ausiliaria esterna oppure del connettore frontale. Spazio di memoria: 4 byte, contenuti nei dati locali dell'OB 82 DS1: errore di canale, definito in modo diverso per ogni tipo di canale, leggibile nel programma utente mediante SFC 51. I testi provengono dalla diagnostica hardware S7. 2) Identificativo intestazione: identificazione nel telegramma di diagnostica che individua le diverse parti della diagnostica.
378
Avvertenza
Per tutti gli slave PROFIBUS DP gli errori della stazione (guasto/ripristino) vengono visualizzati da messaggi con testo esaustivo. Per tutti gli slave PROFIBUS DP la diagnostica specifica del costruttore viene supportata con le seguenti limitazioni: Vengono supportati soltanto slave V1. Si tratta di slave nel cui file GSD impostato il parametro "DPV1_Slave=1". La modalit di allarme DP dello slave deve essere impostata su "DPV0"
Errori che non si verificano durante il funzionamento (CPU in STOP, guasto allo slave DP): Viene supportata la diagnostica degli errori della stazione La diagnostica degli errori del modulo viene supportata La diagnostica degli errori di canale viene supportata e vengono analizzate ulteriori informazioni di errore.
In STEP 7, il telegramma di diagnostica viene visualizzato richiamando lo stato dell'unit nella finestra online "Configurazione HW" (diagnostica dell'hardware), scheda "Diagnostica slave DP" sotto "Rappresentazione esadecimale". Repeater di diagnostica: i messaggi del repeater di diagnostica vengono emessi in modalit DPV0 con testo esaustivo. I testi provengono dal file GSD.
Nota
La progettazione del DP/PA-Link non pu essere eseguita con un file GSD. La diagnostica di un DP/PA-Link nelle CPU 300 non viene supportata
379
PROFINET IO
Nel seguito vengono elencati i messaggi di diagnostica dei diversi dispositivi PROFINET IO supportati dalla funzione 'Segnala errori di sistema: Errori che si verificano durante il funzionamento (CPU in RUN): Viene supportata la diagnostica errori del Device (guasto, ripristino) Viene supportata la diagnostica errori del modulo e sottomodulo (modulo/sottomodulo estratti, modulo/sottomodulo errati, modulo/sottomodulo compatibile) La diagnostica degli errori di canale viene supportata e vengono analizzate ulteriori informazioni di errore.
Errori che non si verificano durante il funzionamento (CPU in STOP, guasto all'IO Device): Nelle CPU dalla versione firmware 5.0 oppure impiegando un'interfaccia PROFINET IO integrata, si ha la segnalazione di tutti gli errori (vedere CPU in RUN).. In tutti gli altri casi vengono segnalati gli errori nel dispositivo.
Tutti i messaggi di errore vengono visualizzati con testo esaustivo. La lettura dei set di dati di diagnostica (secondo la norma PROFINET) pu essere eseguita nel programma utente tramite l'SFB 54 e l'SFB 52.
Avvertenza ET 200S: supporta gli slave con indirizzi compressi. I PROFINET IO supportano la diagnostica specifica del costruttore.
AS-Interface
Negli slave AS-Interface viene emessa una segnalazione se la configurazione attuale differisce da quella prefissata. Vengono supportati i seguenti master AS-i CP 342-2 CP 343-2 CP 343-2 P DP/AS-i Link 20E DP/AS-i LINK Advanced D (soltanto se non progettato tramite il file GSD) DP/AS-i F-Link IE/AS-i Link
380
Shared Devices
SFM analizza se un (sotto)modulo stato progettato come Shared Device. Poich lSFM funziona solo con una CPU, solo i (sotto)moduli che hanno pieno accesso a questa CPU vengono presi in considerazione per la diagnostica. I (sotto)moduli che sono stati progettati come "non assegnati" non vengono considerati.
381
16.9.4
L'opzione per il richiamo automatico durante il salvataggio e la compilazione si seleziona nel modo seguente : 1. Selezionare la relativa stazione nel SIMATIC Manager. 2. Selezionare il comando di menu Modifica > Propriet dell'oggetto. 3. Selezionare la scheda "Impostazioni". Avvertenza La scheda "Impostazioni" della finestra di dialogo delle propriet pu essere richiamata anche in Configurazione HW con il comando di menu Stazione > Propriet.
Stabilire nella finestra di dialogo: quale FB e quale DB di istanza assegnato devono essere creati se debbano essere creati dati di riferimento se debbano sempre essere visualizzati avvisi nel corso della generazione di blocchi in Segnalazione errori di sistema se debba essere visualizzata la finestra di dialogo quando viene richiamato l'errore di sistema dopo il salvataggio e la compilazione della configurazione (vedere impostazione precedente) la creazione di OB di errore: stabilire se nel programma S7 debbano essere creati o meno OB di errore non ancora esistenti e in quali OB dev'essere richiamata l'applicazione "Segnalazione errori di sistema" il comportamento della CPU in caso di errore: possibile stabilire quale classe di errore fa commutare la CPU in STOP l'aspetto dei messaggi (configurazione e sequenza delle possibili parti testuali) se i messaggi debbano essere confermabili quali parametri deve contenere l'interfaccia del blocco utente quali DB di stato vengono creati per PROFIBUS-DP, PROFINET-IO o per lo stato dellunit nel Web server della CPU.
Informazioni dettagliate sono riportate nella Guida alla finestra di dialogo richiamata.
382
16.9.5
Gli FB e i DB di istanza vengono richiamati dagli OB, gli FC e i DB globali vengono impiegati dall'FB dell'SFM.
Nota Se si intende riorganizzare il progetto con il comando di menu File > Salva con nome... e l'opzione "Riorganizza", tenere presente che i blocchi di diagnostica dell'applicazione 'Segnalazione errori di sistema' devono essere nuovamente generati. Poich la riorganizzazione di un progetto con i blocchi di diagnostica un'operazione molto lenta, si raccomanda di cancellare dapprima questi blocchi per ricrearli successivamente.
383
16.9.6
OB di errore creati
Con Segnalazione errori di sistema possono essere generati i seguenti blocchi a seconda della CPU:
OB 70 (errore di ridondanza della periferia) con richiamo dell'FB di diagnostica creato. Questo OB disponibile soltanto nelle CPU H. OB 72 (errore di ridondanza di comunicazione) con richiamo dell'FB di diagnostica creato. Questo OB disponibile soltanto in alcuni CPU H. OB 73 (errore di ridondanza della CPU) con richiamo dell'FB di diagnostica creato. Questo OB disponibile soltanto nelle CPU H. OB 80 (errore temporale) Questo OB viene creato senza contenuto affinch la CPU non passi allo stato STOP in presenza di errori di comunicazione. Gli errori non vengono analizzati e non vengono creati messaggi. OB 81 (errore alimentatore) con richiamo dell'FB di diagnostica creato OB 82 (OB di allarme di diagnostica) con richiamo dell'FB di diagnostica creato OB 83 (allarme di estrazione/inserimento) con richiamo dell' FB di diagnostica creato. OB 84 (errore hardware CPU) Questo OB viene creato senza contenuto affinch la CPU non passi allo stato STOP in presenza di errori di comunicazione (p. es. in caso di problemi con la resistenza terminale MPI all'estrazione e inserimento del cavo MPI). Gli errori non vengono analizzati, non vengono creati messaggi. OB 85 (errore di esecuzione programma) Se l'applicazione 'Segnalazione errori di sistema' crea quest'OB durante la generazione del blocco di diagnostica, si ha l'inserimento supplementare di reti che realizzano quest'esecuzione del programma: In presenza di errori di aggiornamento dell'immagine di processo (p. es. estrazione dell'unit) viene impedito lo STOP della CPU in modo che l'elaborazione dell'FB di diagnostica nell'OB 83 non venga interrotta. Una eventuale impostazione dello STOP della CPU in seguito al messaggio inviato da "Segnalazione errori di sistema" ha effetto nell' OB 83. Con tutti gli altri eventi di errore dell'OB 85, la CPU passa allo stato STOP.
Se l'OB 85 esiste gi esso non viene modificato dall'applicazione 'Segnalazione errori di sistema' OB 86 (guasto a un telaio di ampliamento, a un sistema master DP o un'apparecchiatura della periferia decentrata) con richiamo dell'FB di diagnostica creato.
384
ATTENZIONE:
Si tenga presente quanto segue. Tramite l'OB 85 creato con "Segnalazione errori di sistema", al verificarsi dell'evento di errore "Errore durante l'aggiornamento dell'immagine di processo" la CPU NON passa pi in STOP. L'OB 85 viene richiamato dalla CPU anche nei seguenti casi di errore: "Evento di errore per un OB non caricato" "Errore di richiamo o di accesso a un blocco non caricato"
In questi casi, con l'OB 85 creato con "Segnalazione errori di sistema" la CPU commuta ancora in STOP come accadeva prima dell'utilizzo di questa funzione. L'impostazione "CPU entra in stato di STOP dopo l'esecuzione dell'FB di diagnostica", NON ha effetto per gli OB 84 e OB 85, poich in questi OB l' FB non viene richiamato da "Segnalazione errori di sistema". Nel caso dell'OB 85 questa impostazione viene indirettamente tenuta in considerazione dal richiamo dell'FB nell'OB 83.
385
16.9.7
Blocchi creati
Il blocco di diagnostica (FB con il DB di istanza assegnato, uno o pi DB globali e un FC) creato dalla funzione 'Segnale errori di sistema analizza i dati locali dell'OB di errore ed esegue la lettura di eventuali informazioni di diagnostica supplementari relative ai componenti hardware che hanno provocato l'errore. L'FB ha le caratteristiche seguenti: linguaggio di programmazione SFM (Segnalazione di errori di sistema) (vale anche per i blocchi menzionati) know-how-protected (vale anche per i blocchi sopraccitati) ritarda gli allarmi entranti durante il tempo di esecuzione richiama con doppio clic la finestra di dialogo per l'impostazione della funzione "Segnalazione di errori di sistema".
Blocco utente
Poich l'FB di diagnostica "know-how-protected", non possibile editarlo. L'FB mette tuttavia a disposizione un'interfaccia per il programma utente in modo da consentire l'accesso p. es. allo stato di errore o al numero di messaggio. Il blocco per l'analisi nel programma utente (impostabile nella scheda "Blocco utente" della finestra di dialogo) viene richiamato nell'FB creato con i parametri selezionati. Sono disponibili i seguenti parametri:
Nome EV_C EV_ID IO_Flag logAdr TextlistId ErrorNo Channel_Error ChannelNo ErrClass HErrClass SFC_RET_VAL ExtendedErrorNo ExtendedTextlistId ExtendedAddValue Tipo di dati BOOL DWORD BYTE WORD WORD WORD BOOL WORD WORD WORD INT WORD WORD DWORD Commento //messaggio entrante (TRUE) o uscente (FALSE) //numero di messaggio generato //unit di ingresso: B#16#54 unit di uscita: B#16#55 // indirizzo logico //ID della biblioteca di testi (biblioteca standard = 1) //numero di errore generato //errore di canale (TRUE) //numero di canale //classe di errore // classe di errore nei sistemi H //Valore di ritorno per SFC 17/18 oppure. SFC 107/108 //numero generato per un errore di canale esteso //ID della libreria di testi di un errore di canale esteso //Valore aggiuntivo nella diagnostica di canale estesa (4 byte)
Se l'FB utente non esiste ancora, esso viene creato da SFM con i parametri scelti.
386
I testi di errore generati per gli errori standard hanno la seguente assegnazione:
Numero errore (decimale) da 1 162 193 224 289 513 849 1537 1729 1738 1743 307 540 900 1540 1736 1742 1744 a 86 163 194 OB 72 OB 70 OB 72 OB 73 OB 81 OB 82 OB 83 OB 86 OB 86 OB 86 OB 86 B#16#C1 B#16#CA B#16#C8 B#16#CE B#16#51 B#16#84 OB di errore Codice errore nell'OB Da B#16#1 B#16#A2 B#16#C1 B#16#E0 B#16#21 B#16#33 a B#16#56 B#16#A3 B#16#C2
I numeri di errore maggiori di 12288 corrispondono ad errori sul canale. Mediante la rappresentazione esadecimale dei numeri possibile determinare il tipo di canale ed individuare il bit di errore. Per una descrizione dettagliata consultare la documentazione relativa all'unit o al canale. Esempio: 12288 = W#16#3000 -> high byte 0x30 - 0x10 = tipo di canale 0x20 (interfaccia CP); low byte 0x00, bit di errore 0 32774 = W#16#8006 -> high byte 0x80 - 0x10 = tipo di canale 0x70 (ingresso digitale); low byte 0x06, bit di errore 6
387
16.9.8
Centrale N telaio di montaggio Unit di alimentazione/CPU H-CPU Guasto Errore alimentatore Perdita di ridondanza Ripristino della ridondanza Unit Errori nel telaio di montaggio -* -* -*
Estrazione/Inserimento dell'unit Errore unit o tipo di unit errato Set di dati 0 Errore di canale Errore unit Errore canale Errori telaio di montaggio Errori telaio di montaggio Errori telaio di montaggio
Intestazione Modulo
Estrazione/Inserimento dell'unit Errore unit o tipo di unit errato Set di dati 0 Errore canale Errore unit Errore canale -* Errore unit Errore telaio di montaggio -*
Intestazione del repeater di diagnostica Intestazione ET 200 B, C, U, Eco Stazione H Intestazione Stazione H
388
Hardware
Errore
Classe di errore
PROFINET IO IO Device Modulo di intestazione dell'IODevice Guasto Errore specifico del costruttore Errore canale Manutenzione Set di dati 0 Errore telaio di montaggio -* Errore canale -* Errore unit
Errore canale in tutta Errore unit l'intestazione del sottomodulo (posto connettore subordinato = 0) Sottomodulo dell'intestazione dell'IO Device (PDEV) Errore canale Manutenzione Set di dati 0 Errore canale -* Errore unit
Errore canale nell'intera Errore nel sottomodulo intestazione/sottomodulo (posto connettore subordinato = 0) Unit Estrazione/Inserimento dell'unit Errore unit o tipo di unit errato Set di dati 0 Errore canale (canale 0...7FFF) Errore unit Errore canale
Errore canale in tutta l'unit Errore unit (posto connettore subordinato = 0) Manutenzione (canale 0...7FFF) Manutenzione (unit completa) Sottomodulo -* -*
Estrazione/Inserimento dell'unit Errore sottomodulo o tipo di unit errato Set di dati 0 Errore canale (canale 0...7FFF) Errore di canale in tutto il sottomodulo (posto connettore subordinato >= 1) Manutenzione (canale 0...7FFF) Manutenzione (il sottomodulo completo) Errore unit Errore canale Errore sottomodulo
-* -*
389
Hardware
Errore
Classe di errore
IE/PB-Link Stazione PROFIBUS dietro ad un Link Slave AS-i Slave AS-i PROFIBUS/errore nel canale centrale Slave AS-i Modulo PROFINET
Guasto Guasto
Guasto
-*
Guasto
-*
390
16.9.9
Esempio
STEP 7 stato installato in tedesco, inglese e italiano e queste lingue sono state definite nel progetto. Generare ora i testi dei messaggi secondo la descrizione precedente. Per visualizzare i messaggi nelle diverse lingue, definire la lingua scelta come lingua predefinita nella finestra di dialogo "Aggiungi/rimuovi lingua e imposta lingua predefinita".
Avvertenze
Impiegando i messaggi e i testi di errore in pi lingue, controllare e se necessario modificare la lingua per i display nella finestra di dialogo "Aggiungi/rimuovi lingua e imposta lingua predefinita". Modificando le impostazioni della lingua durante l'elaborazione della funzione "Segnala errori di sistema", necessario generare nuovamente il blocco affinch i messaggi vengano visualizzati nella lingua desiderata.
391
Nota Se in seguito si modifica la progettazione in Configurazione HW o si rigenera "Segnalazione errori di sistema", i messaggi e i testi degli errori vengono nuovamente visualizzati in una lingua in dotazione a STEP 7. Questi testi devono essere tradotti come descritto precedentemente. Tenere presente che durante l'esportazione necessario selezionare l'opzione "Ampliare la destinazione di esportazione" nel messagio visualizzato. I nuovi testi vengono inseriti al fondo del rispettivo file di testo (sotto "//$_Delta-Export").
392
17
17.1
Servizio e supervisione
Progettazione di variabili con servizio e supervisione
Introduzione
STEP 7 mette a disposizione un metodo semplice e pratico per effettuare il servizio e la supervisione delle grandezze variabili del processo o del sistema di automazione con WinCC. Grazie a questo nuovo metodo, particolarmente vantaggioso rispetto a quelli precedenti, non pi necessario progettare i dati per ogni singola stazione operatore (OS), ma sufficiente farlo una sola volta in STEP 7. I dati creati durante la progettazione con STEP 7 possono essere trasferiti nel database di WinCC con il programma PLC-OS Engineering appartenente al pacchetto software "Process Control System PCS7"), operazione durante la quale ne viene verificata la coerenza e la compatibilit con il sistema di visualizzazione. WinCC utilizzer i dati trasferiti in blocchi di immagine e oggetti grafici. STEP 7 consente di progettare o modificare gli attributi SeS (Servizio e Supervisione) delle seguenti variabili: parametri di ingresso, uscita e ingresso/uscita dei blocchi funzionali merker e segnali E/A parametri dei blocchi CFC negli schemi CFC.
Procedimento generale
Il tipo di procedimento utilizzato per la progettazione delle variabili di cui effettuare il servizio e la supervisione dipende dal linguaggio di progettazione e programmazione scelto e dal tipo di variabili. Si dovranno comunque effettuare le seguenti operazioni: 1. Assegnare ai parametri di un blocco funzionale o ai simboli di una tabella dei simboli gli attributi di sistema per il servizio e la supervisione. In CFC non necessario eseguire questa operazione perch si prelevano blocchi gi creati da una biblioteca. 2. In una finestra di editazione, attribuire alle variabili di cui si vuole effettuare il servizio e la supervisione gli attributi SeS necessari (S7_m_c). Nella finestra di dialogo "Servizio e supervisione " (comando di menu Modifica > Propriet speciali dell'oggetto > Servizio e supervisione) possibile modificare gli attributi Win-CC quali valori limite, valori sostitutivi, propriet di protocollo ecc. 3. Utilizzando PLC-OS Engineering, trasferire i dati di progettazione creati con STEP 7 nel sistema di visualizzazione (WinCC).
393
394
Servizio e supervisione 17.2 Progettazione di attributi SeS con AWL, KOP e FUP
17.2
Introduzione
Applicando la procedura qui descritta sar possibile effettuare il servizio e la supervisione dei parametri degli FB, e assegnare i necessari attributi SeS al relativo DB di istanza o ai blocchi dati globali del programma utente.
Presupposto
Per poter procedere necessario che sia stato creato un progetto STEP 7, un programma S7 e un FB.
Procedura fondamentale
395
Servizio e supervisione 17.3 Progettazione degli attributi SeS con la tabella dei simboli
17.3
Introduzione
Indipendentemente dal linguaggio di programmazione utilizzato, la procedura qui descritta consente di progettare le seguenti variabili. Merker Segnali E/A
Presupposto
Prima di procedere accertarsi: di aver creato un progetto in SIMATIC Manager di avervi inserito un programma S7 con la tabella dei simboli di aver aperto la tabella dei simboli.
Procedura fondamentale
396
17.4
Introduzione
In CFC il programma utente viene creato prelevando da un'apposita biblioteca i blocchi gi predisposti per il servizio e la supervisione, e collocandoli e interconnettendoli in uno schema.
Presupposto
Per poter procedere si deve aver inserito in un progetto STEP 7 un programma S7, creato uno schema CFC e avervi collocato i blocchi.
Procedura fondamentale
Avvertenza Se si utilizzano blocchi creati dall'utente a cui stato assegnato l'attributo di sistema S7_m_c nel linguaggio di creazione, possibile effettuare il servizio e la supervisione di tali blocchi attivando nella finestra di dialogo "Servizio e supervisione" (comando Modifica > Propriet speciali dell'oggetto > Servizio e supervisione) la casella di scelta "Servizio e supervisione".
397
Servizio e supervisione 17.5 Trasferimento dei dati di progettazione nel sistema di destinazione SeS
17.5
Introduzione
Con il programma di trasferimento "AS-OS Engineering" i dati di progettazione per il servizio e la supervisione vengono trasferiti nella base di dati di WinCC.
Presupposti
Prima di iniziare il trasferimento necessario: aver installato il programma AS-OS-Engineering creare i dati di progettazione per il servizio e la supervisione.
Procedura fondamentale
Procedere come segue per trasferire nella base di dati di WinCC i dati di progettazione per il servizio e la supervisione.
398
18
18.1
Per poter stabilire un collegamento online il sistema di origine e quello di destinazione devono essere collegati mediante un'interfaccia adatta (p. es. interfaccia multipoint (MPI)). Si potr quindi accedere al sistema di destinazione per mezzo della finestra online del progetto o della finestra "Nodi accessibili".
18.1.1
399
Attivazione del collegamento online e impostazione della CPU 18.1 Attivazione di collegamenti online
18.1.2
Questo tipo di accesso mediante la finestra online associa i dati del sistema di destinazione ai dati corrispondenti del sistema di origine. P. es., se in un progetto si apre in modo online un blocco S7 verranno visualizzati contemporaneamente: la parte del codice del blocco dalla CPU del sistema di destinazione S7 i commenti e i simboli della base di dati del sistema di origine (se disponibili offline). Se i blocchi vengono aperti direttamente nella CPU collegata senza struttura del progetto, essi vengono visualizzati cos come si presentano nella CPU, ovvero senza simboli e commenti.
400
Attivazione del collegamento online e impostazione della CPU 18.1 Attivazione di collegamenti online
18.1.3
Presupposti
Per i PG/PC e le stazioni PC da cui si vuole accedere online a sistemi di destinazione l'assegnazione deve essere effettuata in un qualsiasi progetto del multiprogetto. Avvertenza: la stazione PC o il PG/PC assegnati sono evidenziati in giallo quando aperto il progetto corrispondente. L'assegnazione di un PG/PC visibile soltanto quando l'assegnazione per il PG che apre il progetto corretta. Le sotto-reti estese a pi progetti devono essere raggruppate. Tutti i progetti del multiprogetto devono essere compilati e le informazioni di progettazione devono essere caricate nelle stazioni in modo che p. es. le informazioni di routing siano a disposizione di tutte le unit interessate per la creazione del collegamento tra il PG/PC e l'unit di destinazione. L'unit di destinazione deve essere accessibile in rete.
401
Attivazione del collegamento online e impostazione della CPU 18.1 Attivazione di collegamenti online
402
Attivazione del collegamento online e impostazione della CPU 18.1 Attivazione di collegamenti online
18.1.4
La protezione con password pu essere applicata a un'unit o a contenuti di MMC (p. es. per una CPU 31xC) solo se l'unit supporta tale funzione. Se si desidera proteggere con password un'unit oppure contenuti di MMC, occorre definire il livello di protezione e la password nel quadro della parametrizzazione delle unit, e quindi caricare nell'unit la parametrizzazione modificata. Attivando in una CPU la protezione di accesso disponibile da STEP 7 V4.02 , osservare quanto segue: se dopo l'attivazione viene effettuato il tentativo di elaborare la CPU con una versione inferiore alla V4.0 di STEP 7, verranno visualizzati messaggi indicanti la presenza di una protezione password della CPU interessata (p. es. "Livello di protezione non raggiunto", "...caricamento impossibile", "...apertura impossibile").
Nota Se nella CPU impostato il livello di protezione 1 ed essa fornisce l'SFC 109 "PROTECT", possibile, grazie a quest'SFC, commutare tra i livelli 1 e 2.
Se necessaria l'introduzione di una password per l'esecuzione di una funzione online o per accedere ai contenuti di una MMC viene visualizzata la finestra di dialogo "Digita password". Immettendo la password corretta viene assegnata l'autorizzazione di accesso a unit per le quali, nel corso della parametrizzazione, era stato fissato un particolare livello di protezione. L'utente avr cos la possibilit di creare collegamenti online con l'unit protetta e di eseguire le funzioni online relative al livello di protezione.
403
Attivazione del collegamento online e impostazione della CPU 18.1 Attivazione di collegamenti online
Con il comando Sistema di destinazione > Autorizzazione di accesso > Imposta possibile richiamare direttamente la finestra di dialogo per introdurre password. Nella finestra di dialogo pu essere introdotta una password (ad esempio, all'inizio di una sessione di lavoro). La password viene introdotta una volta e, negli accessi online successivi, il sistema non la richiede pi. La password rimane valida fino alla chiusura del SIMATIC Manager oppure fino a che non viene modificata con il comando di menu Sistema di destinazione > Autorizzazione di accesso > Rimuovi.
Parametri CPU Funzionamento test / processo (non per S7-400 opp. CPU 318-2) Note Impostabile nella scheda "Protezione". Nel funzionamento di processo vengono limitate le funzioni di test, come lo stato di programma o il controllo e il comando di variabili, in modo tale che non sia superato l'incremento ammesso del tempo di ciclo. In questo modo, p. es., nello stato di programma non sono ammesse condizioni di richiamo, e la visualizzazione dello stato di un loop programmato viene interrotta nella posizione di ritorno. Il test con punti di arresto e l'esecuzione graduale del programma non possono essere eseguiti nel funzionamento di processo. Nel funzionamento di test sono utilizzabili senza restrizioni tutte le funzioni di test su PG/PC che possono indurre un prolungamento del tempo di ciclo. Livello di protezione Impostabile nel registro "Protezione" (nota: se nella CPU impostato il livello di protezione 1 ed essa fornisce l'SFC 109 "PROTECT", possibile, grazie a quest'SFC, commutare tra i livelli 1 e 2). Gli accessi alla CPU in lettura oppure in lettura e scrittura possono essere vincolati alla conoscenza di una password. La password viene parametrizzata in questa scheda.
404
Attivazione del collegamento online e impostazione della CPU 18.1 Attivazione di collegamenti online
18.1.5
Per ottenere una visualizzazione attuale in una finestra aperta in parallelo, anche questa finestra deve essere aggiornata (mediante comando di menu o tasto funzione F5).
405
Attivazione del collegamento online e impostazione della CPU 18.2 Visualizzazione e modifica dello stato di funzionamento
18.2
18.2.1
406
Attivazione del collegamento online e impostazione della CPU 18.3 Visualizzazione e impostazione di data e ora
18.3
18.3.1
Nel programma utente SFC 100 "SET_CLKS" (lettura e impostazione) SFC 51 "RDSYSST" con SZL 132, Indice 8 (solo lettura)
407
Attivazione del collegamento online e impostazione della CPU 18.3 Visualizzazione e impostazione di data e ora
Registrazione di data e ora nel buffer di diagnostica, nei messaggi e nelle informazioni di avvio degli OB
La registrazione di data e ora viene creata con l'ora dell'unit.
Allarmi dall'orologio
Se a causa del passaggio dall'ora solare a quella legale gli allarmi dall'orologio non sono stati attivati, viene richiamato l'OB 80. Il passaggio dall'ora legale a quella solare non influisce sull'attivazione degli allarmi con ciclicit oraria e di minuti.
Sincronizzazione dell'orologio
Una CPU parametrizzata come orologio master (p. es. nella scheda relativa alla CPU "Diagnostica/Orologio") sincronizza gli altri orologi sull'ora dell'unit e sullo stato del proprio orologio.
408
Attivazione del collegamento online e impostazione della CPU 18.4 Aggiornamento del firmware
18.4
18.4.1
Informazioni generali
Per l'aggiornamento del firmware di un'unit (CPU, IM, etc.) o di un modulo (DI, DO, etc.) utilizzare gli appositi file (*.UPD) del firmware aggiornato disponibili in Internet ("http://www.siemens.com/automation/support"). Selezionare e caricare nell'unit uno di questi file (menu Sistema di destinazione).
Presupposti
L'unit presente nella stazione oppure il modulo di cui si intende aggiornare il firmware devono essere accessibili online. Il PG deve essere collegato allo stesso MPI, PROFIBUS o Ethernet dell'unit o del modulo di cui si intende aggiornare il firmware. L'aggiornamento del firmware possibile anche se il PG collegato all'interfaccia MPI della CPU master DP e l'unit con il firmware da aggiornare collegata al PROFIBUS dell'interfaccia DP o alla rete Ethernet dell'interfaccia PN. La CPU deve supportare il routing S7 tra interfaccia MPI e DP o tra interfaccia MPI e PN. L'unit stessa o il modulo devono supportare l'aggiornamento del firmware.
409
Attivazione del collegamento online e impostazione della CPU 18.4 Aggiornamento del firmware
I file con le versioni aggiornate del firmware devono essere contenuti nel sistema di gestione file del PG/PC. In una cartella devono essere memorizzati i file relativi a una sola versione di firmware.
(1) Sottorete PROFIBUS o Ethernet (2) Sottorete MPI (3) CPU con interfaccia MPI e DP o PN (con routine S7)
410
Attivazione del collegamento online e impostazione della CPU 18.4 Aggiornamento del firmware
Procedimento in Configurazione HW
1. Aprire la stazione contenente l'unit da aggiornare. 2. Selezionare l'unit. Per le interfacce PROFIBUS DP quali l'IM 151 selezionare il simbolo dello slave DP, in questo caso l'ET 200S. 3. Procedere analogamente per i PROFINET IO Device. Per l'aggiornamento del firmware dei moduli di uno slave DP o di un IO Device, fare clic sul pulsante "Modifica posto connettore" e selezionare qui il posto connettore del modulo che si intende aggiornare. 4. Selezionare il comando di menu Sistema di destinazione > Aggiorna firmware. Il comando pu essere attivato solo se l'unit supporta / lo slave DP / l'IO Device o il modulo selezionati supportano la funzione "Aggiorna firmware". 5. Nella finestra "Aggiornamento del firmware" selezionare il percorso dei file di aggiornamento (*.UPD) con il pulsante "Sfoglia". 6. Dopo aver selezionato un file, nei campi in basso della finestra "Aggiorna firmware" vengono indicate le unit per cui adatto il file e a partire da quale versione del firmware. 7. Fare clic sul pulsante "Esegui". STEP 7 verifica se il file scelto pu essere interpretato dall'unit e, in caso affermativo, lo carica nell'unit. Se per procedere necessario modificare lo stato di funzionamento della CPU compaiono delle finestre con la relativa richiesta. Quindi l'unit esegue autonomamente l'aggiornamento del firmware. Avvertenza: per l'aggiornamento del firmware (p. es. per una CPU 317-2 PN/DP) normalmente viene creato un collegamento a parte con la CPU. In questo caso l'operazione pu essere interrotta. Se non sono disponibili risorse per un nuovo collegamento, viene automaticamente utilizzato un collegamento esistente. In questo caso l'operazione non pu essere interrotta; il pulsante "Annulla" nella finestra di dialogo del trasferimento grigio e non pu essere utilizzato. 8. Verificare con STEP 7 (lettura del buffer di diagnostica) se l'unit con il nuovo firmware funziona correttamente.
411
Attivazione del collegamento online e impostazione della CPU 18.4 Aggiornamento del firmware
Principio
412
19
19.1
19.1.1
Caricamento
Caricamento dal PG nel sistema di destinazione
Presupposti per il caricamento
413
414
19.1.2
La tabella vale indipendentemente dalla circostanza se il blocco sia stato aperto in modo online o offline.
415
19.1.3
416
Procedimento di caricamento
Con la funzione di caricamento il programma utente o gli oggetti caricabili (p. es. i blocchi ) vengono caricati nel sistema di destinazione. Se un blocco gi presente nella RAM della CPU, durante l'operazione di caricamento viene chiesto se si desidera o meno sovrascriverlo. Gli oggetti caricabili possono essere selezionati nella finestra di progetto e caricati da SIMATIC Manager (comando: Sistema di destinazione> Carica). Quando si configurano l'hardware e le reti o si programmano i blocchi, possibile caricare l'oggetto in corso di elaborazione con il menu della finestra principale in cui si sta lavorando (comando di menu: Sistema di destinazione> Carica). Una ulteriore possibilit quella di aprire una finestra online con la visualizzazione sul sistema di destinazione (p. es. mediante Visualizza > Online oppure Sistema di destinazione > Nodi accessibili), e di copiare nella finestra online l'oggetto da caricare.
Mediante la funzione di caricamento si potranno d'altra parte caricare nel PG i contenuti attuali dei blocchi dalla memoria di caricamento RAM della CPU .
417
19.1.4
418
19.1.5
Informazioni generali
Per l'aggiornamento del firmware di un'unit (CPU, IM, etc.) o di un modulo (DI, DO, etc.) utilizzare gli appositi file (*.UPD) del firmware aggiornato disponibili in Internet ("http://www.siemens.com/automation/support"). Selezionare e caricare nell'unit uno di questi file (menu Sistema di destinazione).
Presupposti
L'unit presente nella stazione oppure il modulo di cui si intende aggiornare il firmware devono essere accessibili online. Il PG deve essere collegato allo stesso MPI, PROFIBUS o Ethernet dell'unit o del modulo di cui si intende aggiornare il firmware. L'aggiornamento del firmware possibile anche se il PG collegato all'interfaccia MPI della CPU master DP e l'unit con il firmware da aggiornare collegata al PROFIBUS dell'interfaccia DP o alla rete Ethernet dell'interfaccia PN. La CPU deve supportare il routing S7 tra interfaccia MPI e DP o tra interfaccia MPI e PN. L'unit stessa o il modulo devono supportare l'aggiornamento del firmware. I file con le versioni aggiornate del firmware devono essere contenuti nel sistema di gestione file del PG/PC. In una cartella devono essere memorizzati i file relativi a una sola versione di firmware.
(1) Sottorete PROFIBUS o Ethernet (2) Sottorete MPI (3) CPU con interfaccia MPI e DP o PN (con routine S7)
419
Procedimento in Configurazione HW
1. Aprire la stazione contenente l'unit da aggiornare. 2. Selezionare l'unit. Per le interfacce PROFIBUS DP quali l'IM 151 selezionare il simbolo dello slave DP, in questo caso l'ET 200S. Procedere analogamente per i PROFINET IO Device. Per l'aggiornamento del firmware dei moduli di uno slave DP o di un IO Device, fare clic sul pulsante "Modifica posto connettore" e selezionare qui il posto connettore del modulo che si intende aggiornare. 3. Selezionare il comando di menu Sistema di destinazione > Aggiorna firmware. Il comando pu essere attivato solo se l'unit supporta / lo slave DP / l'IO Device o il modulo selezionati supportano la funzione "Aggiorna firmware". 4. Nella finestra "Aggiornamento del firmware" selezionare il percorso dei file di aggiornamento (*.UPD) con il pulsante "Sfoglia". 5. Dopo aver selezionato un file, nei campi in basso della finestra "Aggiorna firmware" vengono indicate le unit per cui adatto il file e a partire da quale versione del firmware. 6. Fare clic sul pulsante "Esegui". STEP 7 verifica se il file scelto pu essere interpretato dall'unit e, in caso affermativo, lo carica nell'unit. Se per procedere necessario modificare lo stato di funzionamento della CPU compaiono delle finestre con la relativa richiesta. Quindi l'unit esegue autonomamente l'aggiornamento del firmware. Avvertenza: per l'aggiornamento del firmware (p. es. per una CPU 317-2 PN/DP) normalmente viene creato un collegamento a parte con la CPU. In questo caso l'operazione pu essere interrotta. Se non sono disponibili risorse per un nuovo collegamento, viene automaticamente utilizzato un collegamento esistente. In questo caso l'operazione non pu essere interrotta; il pulsante "Annulla" nella finestra di dialogo del trasferimento grigio e non pu essere utilizzato. 7. Verificare con STEP 7 (lettura del buffer di diagnostica) se l'unit con il nuovo firmware funziona correttamente.
420
Principio
421
19.1.6
19.1.6.1
19.1.6.2
19.1.6.3
Avvertenza Se la RAM non bufferizzata, e l'alimentazione di rete viene interrotta e poi ripristinata, o se si cancella totalmente la CPU, verranno considerati validi e caricati i "vecchi" blocchi della EPROM!
422
19.1.6.4
423
19.1.6.5
Presupposti
Per accedere alle memory card EPROM del sistema di origine, riservate ad un sistema di destinazione S7, si deve disporre dei relativi driver EPROM. Per accedere alle memory card EPROM riservate ad un sistema di destinazione M7 deve essere stato installato il flash file system (solo nei PG 720/740/760, Field PG e Power PG). I driver EPROM e il flash file system sono disponibili come opzione del software di base STEP 7. Se si utilizza un PC, per la memorizzazione su memory card EPROM necessario disporre anche di un prommer esterno. I driver possono essere installati anche in un secondo momento. Richiamare a questo scopo la finestra di dialogo corrispondente partendo dalla barra di Avvio (Avvio > Simatic > STEP 7 > Parametrizzazione della memory card) oppure adoperando il pannello di controllo (doppio clic sul simbolo "Parametrizzazione di memory card").
3. Aprire ovvero attivare una finestra in cui visualizzare i blocchi da memorizzare. Sono disponibili le seguenti finestre: finestra di progetto, visualizzazione "ONLINE" finestra di progetto, visualizzazione "offline" finestra della biblioteca finestra "Nodi accessibili"
4. Selezionare la cartella "Blocchi" o i blocchi, e copiarli nella finestra "Memory card S7". 5. Se nella memory card gi presente un blocco, viene visualizzato un messaggio d'errore. Per poter procedere si dovr cancellare il contenuto della memory card e ripetere dall'operazione 2.
424
19.2
19.2.1
Avvertenza
Per quanto riguarda i progetti PCS 7 impossibile caricare blocchi sia dalla finestra di dialogo "Compila e carica oggetti" che dal SIMATIC Manager. Con i progetti PCS 7 i sistemi di destinazione si possono caricare solamente tramite CFC per garantire un ordine di caricamento corretto ed evitare cos lo STOP della CPU. Per verificare se il progetto un progetto PCS 7, consultare le propriet dell'oggetto del progetto stesso.
Caricamento di hardware
Il caricamento dell'hardware (vale a dire il caricamento degli SDB offline) tramite la funzione "Compila e carica oggetti" viene portato a termine senza interruzioni per tutti gli oggetti selezionati solamente se non vengono emessi messaggi di errore o interrogazioni. Il paragrafo seguente contiene informazioni utili per evitare messaggi di errore e interrogazioni.
425
Per quanto riguarda le CPU H, prima di avviare la funzione "Compila e carica oggetti" possibile selezionare la CPU da caricare (CPU H 0 oppure CPU H 1; evidenziare l'oggetto "CPU" e fare clic sul pulsante "Modifica"). I seguenti parametri della CPU non devono essere modificati: Le dimensioni massime per i dati locali e le risorse di comunicazione della CPU (scheda "Memoria"). Protezione con password per le CPU F (scheda "Protezione")
Per ogni unit configurata sono necessarie le condizioni seguenti: Il numero di ordinazione dell'unit configurata deve essere identico a quello dell'unit effettivamente innestata. La versione firmware dell'unit configurata non deve essere superiore a quella dell'unit effettivamente innestata. Il nome della stazione, il nome dell'unit e la sigla dell'impianto non devono essere stati modificati dall'ultimo caricamento. consentito assegnare una nuova sigla all'impianto.
Suggerimento
Se al termine del caricamento viene emesso un messaggio che segnala il caricamento dell'oggetto eseguito con un avviso, assolutamente necessario consultare il protocollo. Probabilmente l'oggetto non stato caricato o non stato caricato completamente.
426
19.2.2
2. Nel SIMATIC Manager attivare il comando di menu Sistema di destinazione > Compila e carica oggetti. 3. Selezionare "Compila solo" per controllare i blocchi senza caricarli nel sistema di destinazione. Utilizzare questa opzione quando non si desidera caricare nessun oggetto nel 4. sistema di destinazione Avvertenza: le stazioni sprovviste di HSP non vengono compilate e caricate (le caselle di controllo non sono visibili). 5. Per evitare che le stazioni vengano caricate in modo incompleto a causa di errori di compilazione, attivare la casella di controllo "Non caricare se la compilazione contiene errori", in modo da non caricare nessun oggetto. Se la casella di controllo non attivata vengono caricati tutti gli oggetti compilati senza errori. Gli oggetti che hanno causato un errore durante la compilazione non vengono caricati. Se si desidera compilare e caricare collegamenti, attivare la relativa casella di controllo in corrispondenza dell'oggetto "Collegamenti".. Il multiprogetto particolarmente adatto come oggetto d'entrata, poich da questo possono essere caricati automaticamente tutti i partner di collegamento dei collegamenti estesi a pi progetti. 6. Nelle colonne "Compila" e "Carica" selezionare gli oggetti da compilare o caricare. Gli oggetti selezionati sono contrassegnati da un segno di spunta. Se al punto 3 stato scelta l'opzione "Compila solo", la colonna "Carica" non viene visualizzata. 7. Avviare la compilazione con il pulsante "Avvia". 8. Seguire le istruzioni visualizzate sul display.
427
Dopo la procedura di compilazione o caricamento viene visualizzato automaticamente il protocollo complessivo. In qualsiasi momento possibile visualizzare il protocollo complessivo o quello relativo a singoli oggetti: Fare clic sul pulsante "Tutto" per ottenere un protocollo dell'intero procedimento. Fare clic sul pulsante "Singolo oggetto" per visualizzare il protocollo relativo agli oggetti selezionati nell'elenco.
428
19.3
Configurazione rapida
possibile semplificare l'introduzione della configurazione della stazione caricando i dati di configurazione dal sistema di configurazione al PG dopo aver configurato l'hardware e aver riavviato la stazione (effettuato un avviamento a caldo). Si ottiene cos la configurazione della stazione con l'indicazione dei tipi delle singole unit. Dopo di che occorre specificare pi esattamente le singole unit (N. di ordinazione) e parametrizzarle. Le informazioni seguenti vengono caricate nel PG: S7-300: configurazione per il telaio di montaggio centrale e telai di montaggio di ampliamento eventualmente presenti. S7-400: configurazione del telaio di montaggio centrale con una CPU e unit di ingresso/uscita senza telaio di montaggio di ampliamento. I dati di configurazione relativi alla periferia decentrata non possono essere caricati nel PG.
Questo volume di informazioni viene caricato se non vi sono ancora informazioni di progettazione nel sistema di destinazione, p.es. nel caso di sistemi che hanno subito una cancellazione totale. Diversamente il "Caricamento nel PG" offre risultati decisamente migliori. Con i sistemi S7-300 senza periferia decentrata occorre inoltre specificare esattamente le unit (N. di ordinazione) e parametrizzarle.
Avvertenza Durante il caricamento nel PG (senza che sia presente una configurazione offline) STEP 7 non in grado di determinare completamente tutti i numeri di ordinazione dei componenti. I numeri di ordinazione che compaiono "incompleti" possono essere introdotti durante la configurazione dell'hardware con il comando di menu Strumenti > Specifica unit. In questo modo possono essere parametrizzate unit che non sono note a STEP 7 (ovvero che non compaiono nella finestra "Catalogo hardware" ), senza che, tuttavia, vengano controllate le regole dei parametri.
429
430
19.3.1
Con i sistemi S7-300 senza periferia decentrata occorre inoltre specificare esattamente le unit (n. MLFB) e parametrizzarle.
431
19.3.2
19.3.3
Avvertenza
432
Casi
Quando si caricano i blocchi dalla CPU nel dispositivo di programmazione, si possono verificare i due seguenti casi. 1. Il programma utente al quale appartengono i blocchi si trova nel dispositivo di programmazione 2. Il programma utente al quale appartengono i blocchi non si trova nel dispositivo di programmazione Ci comporta la non disponibilit di parti di programma che non possono essere caricate nella CPU. Tali parti sono: la tabella dei simboli con i nomi simbolici degli operandi e i commenti i commenti ai segmenti dei programmi KOP o FUP i commenti alle righe dei programmi AWL i tipi di dati definiti dall'utente.
19.3.3.1
19.3.3.2
433
19.4
19.4.1
Questa funzione consente di resettare le CPU/FM M7 dopo che si sono presentati gravi errori, cancellando dalla memoria di lavoro i blocchi dati di sistema (SDB) attuali, e ricaricando gli SDB che si trovano nella memoria di sola lettura. In alcuni casi necessario anche il nuovo avviamento (avviamento a caldo) del sistema operativo. A tal fine occorre eseguire la cancellazione totale dell'M7 con il selettore dei modi operativi (posizione MRES). Il reset con il selettore di modi di funzionamento di SIMATIC CPU / FM M7 possibile soltanto se viene utilizzato il sistema operativo RMOS32.
434
19.4.2
435
19.5
19.5.1
436
19.5.2
Possibilit di compressione
Per comprimere la memoria della CPU procedere in uno dei modi descritti qui di seguito. Se durante il caricamento nel sistema di destinazione lo spazio di memoria insufficiente, viene visualizzata una finestra di dialogo con messaggio d'errore. Premendo l'apposito pulsante della finestra possibile avviare la compressione della memoria. Per precauzione si pu visualizzare lo spazio libero di memoria (comando di menu Sistema di destinazione > Diagnostica/Impostazioni > Stato dell'unit..../scheda "Memoria") e avviare eventualmente la compressione.
Procedimento
1. Selezionare il programma S7 nella visualizzazione online oppure nella finestra "Nodi accessibili" 2. Selezionare il comando di menu Sistema di destinazione > Diagnostica/Impostazioni > Stato dell'unit. 3. Nella finestra di dialogo visualizzata selezionare la scheda "Memoria". In questa scheda presente un pulsante per la compressione della memoria, a condizione che la CPU supporti questa funzione.
437
438
20
20.1
possibile visualizzare o indicare i valori delle seguenti variabili: ingressi, uscite, merker, temporizzatori, contatori Contenuti di blocchi dati Periferia
Le variabili che si desiderano visualizzare e comandare devono essere inserite in una tabella delle variabili. Il momento e la frequenza con cui controllare o sovrascrivere con valori le variabili vengono definite impostando il punto di trigger e la condizione di trigger.
439
Test con la tabella delle variabili 20.2 Fondamenti per controllo e comando con la tabella delle variabili
20.2
440
Test con la tabella delle variabili 20.3 Editazione e salvataggio di tabelle delle variabili
20.3
20.3.1
Una tabella delle variabili creata una volta pu essere memorizzata, stampata e utilizzata tutte le volte che si devono controllare o comandare le variabili.
441
Test con la tabella delle variabili 20.3 Editazione e salvataggio di tabelle delle variabili
20.3.1.1
442
Test con la tabella delle variabili 20.3 Editazione e salvataggio di tabelle delle variabili
20.3.2
Avvertenza Nella copia e spostamento delle tabelle delle variabili osservare che, mentre il nome simbolico rimane invariato, il numero viene assegnato automaticamente. Esempio 1: Si vuole copiare o spostare in un altro progetto la tabella delle variabili con il nome simbolico "OTTO" e il nome (non modificabile) "VAT1" che a sua volta contiene una tabella delle varibaili dal nome simbolico "OTTO". Allutente viene chiesto se desidera sovrascrivere la tabella delle variabili preesistente o se preferisce assegnarle un nuovo nome. Se opta per l'assegnazione di un nuovo nome (simbolico), il nome non modificabile della nuova tabella delle varibaili viene adattato. Esempio 2: Si vuole copiare o spostare in un altro progetto la tabella delle variabili con il nome simbolico "OTTO" e il nome (non modificabile) "VAT1" che non contiene una tabella delle variabili dal nome simbolico "OTTO". Nellincollare la nuova tabella delle variabili il nome non modificabile della nuova tabella delle variabili viene adattato.
20.3.3
443
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
20.4
20.4.1
444
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
Test sintattico
Quando si specificano le variabili nella tabella delle variabili prima di uscire dalla riga viene eseguito un test sintattico. Le voci erronee vengono connotate in rosso. Posizionando il cursore in una riga marcata in rosso, viene visualizzata una casella informativa contenente la causa dell'errore. Con il tasto F1 si ottengono informazioni sulla correzione dell'errore.
Nota Se si preferisce lavorare nella tabella delle variabili utilizzando la tastiera piuttosto che il mouse, attivare la funzione "Descrizione comando con tastiera". Modificare l'impostazione nella tabella delle variabili con il comando Strumenti > Impostazioni, scheda "Generale".
Dimensioni massime
La tabella delle variabili pu contenere un massimo di 255 caratteri per riga. Non possibile un a capo automatico. La lunghezza di max. 1024 righe. Tali limitazioni determinano la grandezza massima della tabella.
445
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
20.4.2
20.4.3
446
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
20.4.4
Esempi
Operando Formato di visualizzazione Introduzione Valore di comando visualizzato S5TIME#130MS S5TIME#890MS W#16#009D W#16#009D Spiegazione
T 1 MW MW MW
TEMPO SIMATIC 137 TEMPO SIMATIC 137 HEX HEX 137 157
Conversione in millesimi di secondo Rappresentazione in formato BCD ammessa Rappresentazione in formato BCD ammessa Rappresentazione in formato BCD non ammessa; perci il formato di stato TEMPO SIMATIC non selezionabile
Avvertenza
possibile immettere i tempi in millesimi di secondo, tuttavia il valore specificato viene adattato al reticolo temporale. Gli intervalli del reticolo temporale dipendono dalla grandezza del valore temporale indicato (137 da 130 ms, i 7 ms sono stati arrotondati). I valori di comando di operandi del tipo di dati WORD, p. es. EW 1, vengono convertiti in formato BCD. Tuttavia non tutti i modelli di bit sono numeri BCD validi. Se in un operando del tipo di dati WORD l'introduzione non pu essere rappresentata come TEMPO SIMATIC, si passa automaticamente al formato preimpostato (qui: HEX, vedi Seleziona formato di visualizzazione, preimpostazione Menu Visualizza), in modo da poter visualizzare il valore introdotto.
447
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
20.4.5
Esempi
Operando Formato di visualizzazione CONTATORE CONTATORE HEX HEX Introduzione Valore di comando visualizzato C#137 C#89 W#16#009D W#16#009D Spiegazione
Z MW MW MW
Conversione Rappresentazione in formato BCD possibile Rappresentazione in formato BCD possibile Rappresentazione in formato BCD non possibile; perci il formato di stato CONTATORE non selezionabile
Avvertenza
Se viene immesso un numero decimale nel contatore, e il valore non viene contrassegnato da C#, questo valore viene convertito automaticamente nel formato BCD (137 da come risultato C#137). I valori di comando degli operandi del tipo di dati WORD, p. es. EW 1, vengono convertiti in formato BCD. Tuttavia non tutti i modelli di bit sono numeri BCD validi. Se in un operando del tipo di dati WORD l'introduzione non pu essere rappresentata come CONTATORE, si passa automaticamente al formato preimpostato (qui: HEX, vedi Seleziona formato di visualizzazione, preimpostazione nel Menu Visualizza, in modo da poter visualizzare il valore introdotto.
448
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
20.4.6
20.4.7 20.4.8
Avvertenza L'immissione di "DB0. ..", per motivi di riferimenti interni, non ammessa.
449
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
20.4.9
Operando M 3.0 M 3.1 M 3.2 M 3.3 M 3.4 M 3.5 M 3.6 M 3.7 M 4.0 M 4.1
Notare in questo esempio come si modifica la denominazione nella colonna "Operando" dopo l'ottava registrazione.
450
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
20.4.10
Operandi a bit
Possibili operandi a bit E1.0 M1.7 A10.7 DB1.DBX1.1 E1.1 M1.6 Valori di comando/forzamento ammessi true false 0 1 2#0 2#1
Operandi a byte
Possibili operandi a byte EB 1 MB 12 MB 14 AB 10 DB1.DBB 1 PAB 2 Valori di comando/forzamento ammessi 2#00110011 b#16#1F 1F 'a' 10 12
Operandi a parola
Possibili operandi a parola EW 1 MW 12 MW 14 AW 10 DB1.DBW 1 PAW 2 MW 3 MW 5 MW 7 MW 9 MW 11 Valori di comando/forzamento ammessi 2#0011001100110011 w#16#ABCD ABCD b#(12,34) 'ab' 12345 12345 S5t#12s340ms 0.3s oppure 0,3s C#123 d#1990-12-31
451
Test con la tabella delle variabili 20.4 Introduzione di variabili nelle tabelle delle variabili
Temporizzatore
Possibili operandi del tipo temporizzatore T1 T 12 T 14 T 16 T 18 T 20 Valori di comando/ forzamento ammessi 0 20 12345 s5t#12s340ms 1.3 1.3s Spiegazione Valore in millisecondi (ms) Valore in ms (ms) Valore in ms (ms) Valore in ms (ms) Valore in 1s 300 ms Valore in 1s 300 ms
Il comando di un temporizzatore influenza solo il valore (e non lo stato), ovvero: il temporizzatore T1 pu essere comandato al valore 0, il risultato logico combinatorio in U T1 non viene comunque modificato. Le stringhe di caratteri "s5t", "s5time" possono essere immesse sia con caratteri maiuscoli che minuscoli.
Contatore
Possibili operandi del tipo contatore Z1 Z 14 Z 16 Valori di comando/forzamento ammessi 0 20 c#123
Il comando di un contatore influenza solo il valore (e non lo stato), ovvero: il temporizzatore Z1 pu essere comandato al valore 0, ma il risultato logico combinatorio in U Z1 non viene modificato.
452
Test con la tabella delle variabili 20.5 Creazione di un collegamento con una CPU
20.5
Avvertenza Se stata creata una tabella senza nome con il comando di menu Tabella > Nuova, possibile creare un collegamento con l'eventuale ultima CPU progettata.
453
20.6
20.6.1
Controllo di variabili
Introduzione al controllo di variabili
Le variabili possono essere controllate in uno dei seguenti modi. Attivare la funzione "Controlla" con il comando del menu Variabile > Controlla. I valori delle variabili scelte vengono visualizzati nella tabella delle variabili in base al punto e alla condizione di trigger impostati. Se stata impostata la condizione di trigger "Continuo", disattivare la funzione "Controlla" con il comando del menu Variabile > Controlla. Aggiornare i valori delle variabili scelte un'unica volta e immediatamente eseguendo il comando del menu Variabile > Aggiorna valori di stato. Nella tabella delle variabili vengono visualizzati i valori attuali delle variabili scelte.
20.6.2
454
Punto di trigger
La posizione del punto di trigger viene spiegata dalla figura seguente.
Affinch il valore comandato venga visualizzato nella colonna "Valore di stato", si deve impostare il punto di trigger per il controllo su "Inizio ciclo" e il punto di trigger per il comando su "Fine ciclo".
Trigger immediato
Per visualizzare i valori di variabili selezionate attivare il comando Variabile > Aggiorna valori di stato. Questa operazione viene eseguita un'unica volta, e il pi rapidamente possibile, senza alcun riferimento ad un punto preciso del programma utente. Queste funzioni vengono utilizzate principalmente per eseguire il comando e il controllo nello stato STOP.
Condizione di trigger
La seguente tabella mostra l'effetto che ha per il controllo di variabili la condizione di trigger impostata.
Condizione di trigger Una volta Controlla variabili Aggiornamento una volta dipende dal punto di trigger Condizione di trigger Continuo Controllo con trigger definito Nel test di blocchi possibile seguire con esattezza l'elaborazione successiva.
455
20.7
20.7.1
Comando di variabili
Introduzione al comando di variabili
Le variabili possono essere controllate in uno dei seguenti modi. Attivare la funzione "Comanda" con il comando Variabile > Comanda. I valori di comando delle variabili scelte vengono visualizzati nella tabella delle variabili in base al punto e alla condizione di trigger impostati. Se stata impostata la condizione di trigger "Continuo", disattivare la funzione "Comanda" con il comando Variabile > Comanda. Aggiornare i valori delle variabili scelte un'unica volta e immediatamentecon il comando Variabile > Attiva valori di comando.
Ulteriori possibilit sono offerte dalle funzioni Forzamento e Abilita uscite di periferia (PA).
Pericolo Se si modificano i valori delle variabili quando l'impianto in funzione, in caso di guasti di funzionamento o errori del programma si potranno causare gravi danni a cose e persone! Prima di eseguire l'operazione di "comando", importante accertarsi che non si possano determinare condizioni di pericolo.
456
20.7.2
Punto di trigger
La posizione del punto di trigger viene spiegata nella figura seguente.
Per quanto riguarda la posizione del punto di trigger, si tenga presente che: il comando degli ingressi richiede il punto di trigger "Inizio ciclo" (corrispondente all'inizio del programma utente OB 1); in caso contrario, l'immagine di processo degli ingressi verr aggiornata dopo il comando, e dunque sovrascritta; Il comando delle uscite richiede il punto di trigger "Fine ciclo" (corrispondente alla fine del programma utente OB 1); in caso contrario, l'immagine di processo delle uscite viene sovrascritta dal programma utente. Affinch il valore comandato venga visualizzato nella colonna "Valore di stato", si deve impostare il punto di trigger per il controllo su "Inizio ciclo" e il punto di trigger per il comando su "Fine ciclo".
457
Quando si comandano le variabili, si deve tener conto delle seguenti osservazioni sui punti di trigger. Viene visualizzato un messaggio se si impostata la condizione di trigger "Una volta", e se le variabili selezionate non devono essere comandate, . Nella condizione di trigger "Continuo" tale messaggio non viene visualizzato.
Trigger immediato
I valori di variabili selezionati possono essere comandati con il comando Variabile > Attiva valori di comando. Questa operazione viene eseguita un'unica volta il pi rapidamente possibile, senza alcun riferimento ad un punto preciso del programma utente. Questa funzione viene utilizzata principalmente per il controllo nello stato STOP.
Condizione di trigger
La seguente tabella spiega l'effetto che ha la condizione di trigger impostata sul comando di variabili.
Condizione di trigger Una volta Comanda variabili Attivazione una volta (comando di variabili) possibile assegnare una volta delle variabili a seconda del punto di trigger. Condizione di trigger Continuo Comando con trigger definito Assegnando i valori fissi possibile simulare determinate situazioni per il proprio programma utente, e quindi testare le funzioni programmate.
458
20.8
20.8.1
Forzamento di variabili
Misure di sicurezza per il forzamento di variabili
Prevenire i danni alle persone e alle cose! Tenere presente che durante l'esecuzione della funzione "Forzamento", un'azione errata pu mettere in pericolo la vita o la salute delle persone provocare danni alla macchina o all'intero impianto.
Attenzione
Prima di avviare la funzione Forzamento, assicurarsi che nessun altro operatore stia eseguendo la stessa funzione sulla stessa CPU. Il compito di forzamento pu essere cancellato o interrotto soltanto con il comando Variabile > Cancella forzamento. La chiusura della finestra Valori di forzamento o dell'applicazione "Comanda e controlla variabili" non determina la cancellazione dei valori di forzamento. L'azione di forzamento non pu essere annullata con Modifica > Annulla. Leggere le informazioni relative alle differenze tra forzamento e comando di variabili. Se una CPU non supporta la funzione di forzamento, tutti i relativi comandi di menu contenuti nel menu Variabili non sono eseguibili.
Se stato annullato il blocco delle uscite con il comando di menu Variabile > Abilita uscite di periferia, tutte le unit di uscita forzate emettono i loro valori di forzamento
459
Nella riga del titolo della finestra compare il nome del collegamento online attuale. Nella barra di stato figura il momento (data e ora) in cui stato letto il job di forzamento letto dalla CPU. Se nessun job di forzamento attivo, la finestra vuota. I diversi modi di visualizzazione di variabili nella finestra Valori di forzamento hanno il significato seguente.
Visualizzazione Grassetto: Normale: Grigio: Significato Variabili a cui sono gi stati assegnati valori fissi nella CPU. Variabili che vengono correntemente editate. Variabili di un'unit che non presente/connessa. Oppure Variabili con errori di indirizzamento; viene visualizzato un messaggio di errore.
460
Il controllo e comando di variabili possibile nella tabella delle variabili, non nella finestra "Valori di forzamento".
461
20.8.3
Merker (M) Temporizzatori e contatori (T, Z) Blocchi dati (DB) Ingressi di periferia (PEB, PEW, PED) Uscite di periferia (PAB, PAW, PAD) Ingressi e uscite (E, A) Il programma utente pu sovrascrivere i valori di comando / forzamento Sostituzione del valore di forzamento attivo senza interruzioni Ad applicazione conclusa le variabili mantengono i loro valori Dopo l'interruzione del collegamento con la CPU, le variabili mantengono i loro valori Errori di indirizzamento ammessi: ad es: EW1 valore di comando / forzamento: 1 EW1 valore di comando / forzamento: 0 Impostazione di trigger La funzione ha effetto solo sulla variabile nell'area visibile della finestra attiva
s
-
s s s
-
s s s
-
s s s s s
-
s s s
l'ultimo ha effetto
s s s
-
Avvertenza
Con "Abilita uscite di periferia" i valori di forzamento per uscite di periferia forzate diventano attivi nelle corrispondenti unit di uscita, a differenza dei valori di comando per uscite di periferia comandate in modo continuo. Nel forzamento la variabile ha sempre il valore forzato. Questo valore viene letto nel programma utente ad ogni accesso in lettura. Non sono attivi gli accessi in scrittura. Nel comando continuo diventano attivi gli accessi in scrittura del programma, e rimangono cos fino al successivo punto di trigger.
462
21
Pericolo L'esecuzione del test quando l'impianto in funzione pu comportare, in caso di malfunzionamento o di errori nel programma, gravi danni a cose e persone! Prima di eseguire questa funzione quindi indispensabile assicurarsi che non si possano creare situazioni di pericolo!
Presupposti
Per poter visualizzare lo stato di programma devono essere realizzate le seguenti condizioni. Occorre aver salvato senza errori il blocco, e averlo quindi caricato nella CPU. La CPU in funzionamento, il programma utente in esecuzione.
Per testare nello stato di programma, impostare i punti di arresto ed eseguire il programma in singoli passi necessario che sia impostato il modo di funzionamento test (vedere comando di menu Test > Funzionamento). Nel funzionamento di processo queste funzioni di test non sono possibili.
463
Test con lo stato di programma 21.1 Visualizzazione nello stato del programma
21.1
Per modificare le linee ed i colori impostati per default, selezionare il comando di menu Strumenti > Impostazioni nella scheda KOP/FUP.
Lo stato degli elementi con luscita di abilitazione (ENO) corrisponde allo stato di un contatto con il valore di uscita ENO come operando. Lo stato degli elementi con luscita Q corrisponde allo stato di un contatto con il valore delloperando. Lo stato di CALL soddisfatto se, dopo il richiamo, il bit BIE viene impostato. Lo stato di unoperazione di salto soddisfatto quando viene eseguito il salto; in altre parole quando soddisfatta la condizione di salto. Gli elementi con luscita di abilitazione (ENO) vengono contrassegnati con il colore nero quando luscita di abilitazione non attivata.
464
Test con lo stato di programma 21.1 Visualizzazione nello stato del programma
465
Test con lo stato di programma 21.2 Informazioni sull'esecuzione del test nel modo passo singolo / punti d'arresto
21.2
Informazioni sull'esecuzione del test nel modo passo singolo / punti d'arresto
Durante l'esecuzione del test nel modo passo singolo possibile elaborare programmi istruzione per istruzione (= passo singolo) impostare punti d'arresto
La funzione "Esecuzione del test nel modo passo singolo" non viene realizzata in tutti i sistemi di automazione (cf. la documentazione del relativo sistema di automazione)
Presupposti
Il modo di funzionamento test deve essere impostato. Nel caso del funzionamento di processo il test nel modo passo singolo non eseguibile (vedere comando di menu Test > Funzionamento). L'esecuzione del test in modo passo singolo possibile solo in AWL. Per i blocchi in KOP o FUP deve essere modificata la visuaizzazione mediante il comando di menu Visualizza > AWL. Il blocco non deve essere protetto Il blocco deve essere aperto in modo online. Il blocco aperto non deve essere stato modificato nell'editor
Dalla documentazione del proprio sistema di automazione si pu desumere se esso supporta l'esecuzione del test nel modo passo singolo. I comandi con cui possono essere impostati, attivati o cancellati i punti di arresto, si trovano nel menu "Test". Si tratta di comandi di menu selezionabili anche per mezzo dei simboli nella barra dei punti d'arresto. Per visualizzare tale barra, selezionare il comando Visualizza > Barra dei punti d'arresto.
466
Test con lo stato di programma 21.2 Informazioni sull'esecuzione del test nel modo passo singolo / punti d'arresto
467
Test con lo stato di programma 21.3 Informazioni sullo stato di funzionamento Alt
21.3
Scorre l'orologio hardware Per motivi di sicurezza nello stato di funzionamento Alt vengono sempre disattivate le uscite (cf. le unit di uscita "output disable")
468
Test con lo stato di programma 21.4 Stato di programma dei blocchi dati
21.4
469
Test con lo stato di programma 21.4 Stato di programma dei blocchi dati
21.4.1
470
Test con lo stato di programma 21.5 Definizione del modo operativo per il test
21.5
Procedura
1. Richiamare l'ambiente di test impostato con il comando di menu Test > Funzionamento. 2. Selezionare il modo operativo desiderato. Sono disponibili il modo di test e il modo di processo.
Modo operativo Test Spiegazione Tutte le funzioni di test possono essere usate senza alcuna limitazione. In questo modo si possono verificare notevoli prolungamenti del tempo di ciclo della CPU in quanto, p. es., lo stato delle istruzioni in loop programmati viene determinato ad ogni esecuzione. Processo Nel modo operativo "Processo" la funzione di test Stato del programma viene limitata per garantire il minimo carico possibile del tempo di ciclo. Non sono p. es. ammesse condizioni di richiamo. La visualizzazione di stato di un loop programmato viene interrotta al punto di ritormo. Le funzioni di test ALT e di esecuzione passo-passo del programma non possono essere eseguite.
Avvertenza Se il funzionamento stato impostato nell'ambito della parametrizzazione della CPU, esso potr essere modificato soltanto con una riparametrizzazione. Altrimenti potr essere reimpostato nella finestra di dialogo visualizzata.
471
Test con lo stato di programma 21.5 Definizione del modo operativo per il test
472
22
22.1
473
Test con il programma di simulazione S7-PLCSIM (pacchetto opzionale) 22.1 Test con il programma di simulazione (pacchetto opzionale)
474
23
23.1
Diagnostica
Diagnostica hardware e ricerca di errori
L'esistenza di informazioni di diagnostica per una determinata unit pu essere rilevata sulla base dei simboli di diagnostica che riportano lo stato della rispettiva unit, e nelle CPU anche lo stato di funzionamento. I simboli di diagnostica vengono visualizzati nella finestra di progetto nella visualizzazione "Online" nonch dopo il richiamo della funzione "Diagnostica hardware" nelle informazioni rapide (come da preimpostazione) o nella finestra di diagnostica. Le informazioni di diagnostica dettagliate vengono visualizzate nello "Stato dell'unit", richiamabile con doppio clic su un simbolo di diagnostica nelle informazioni rapide o nella finestra di diagnostica.
475
Un esempio di manutenzione necessaria costituito dalla sostituzione di un cavo in fibra ottica in seguito all'incremento del valore di smorzamento su una porta dell'interfaccia PROFINET di una CPU.
476
23.2
477
478
23.3
23.3.1
Nelle tabelle di configurazione visualizzate sono quindi selezionabili le unit di cui visualizzare lo stato dell'unit.
23.3.2
479
23.4
23.4.1
Avvertenza
Anche se la tabella di configurazione gi aperta offline, comunque possibile ottenere la visualizzazione online delle tabelle di configurazione tramite il comando del menu Apri > Stazione online. Nella finestra di dialogo "Stato dell'unit" compare un numero diverso di schede a seconda delle capacit diagnostiche dell'unit. Nella finestra "Nodi accessibili" vengono sempre visualizzate solo le unit con un proprio indirizzo di nodo (indirizzo Ethernet, MPI o PROFIBUS).
480
Avvertenza Nella finestra "Nodi accessibili" vengono visualizzate solo le unit con un proprio indirizzo di nodo (indirizzo Ethernet, MPI o PROFIBUS).
481
23.4.2
482
23.5
23.5.1
Stato dell'unit
Possibilit di richiamo dello stato dell'unit
La scheda "Stato dell'unit" pu essere visualizzata in differenti situazioni. I procedimenti descritti sono esempi che riproducono casi applicativi frequenti. Richiamo nel SIMATIC Manager dalla finestra con la visualizzazione di progetto "Online" o "Offline" Richiamo nel SIMATIC Manager dalla finestra "Nodi accessibili" Richiamo dalla finestra di diagnostica della configurazione HW
Per poter richiamare lo stato di una unit con il proprio indirizzo di nodo, necessario un collegamento online con il sistema di destinazione, attuabile tramite la visualizzazione online di un progetto o tramite la finestra "Nodi accessibili".
483
23.5.2
Buffer di diagnostica
Tempo di ciclo
Caratteristiche orologio
Visualizzazione di tutti tipi di blocchi disponibili nel volume di funzioni dell'unit selezionata. Elenco degli OB, SFB e SFC utilizzabili in questa unit. Comunicazione Velocit di trasmissione, schema dei collegamenti, carico di comunicazione nonch dimensioni massime dei telegrammi sul bus K dell'unit selezionata
484
Informazione
Impiego
Scheda Stack: pu essere aperta Consente di determinare la causa del soltanto nello stato di funzionamento passaggio in STOP e di correggere il STOP o ALT. blocco. Viene visualizzato il B-stack dell'unit selezionata. Inoltre possibile leggere lU-stack, lL-stack e lo stack di annidamento, e passare al punto di errore del blocco che ha causato l'interruzione. Dati di diagnostica del PROFINET IO Device selezionato Dati di identificazione dell'unit selezionata, p. es. numero di serie, identificativo produttore Dati di diagnostica (errori di comunicazione) dell'unit PROFINET selezionata Per la rilevazione della causa di errore in un IO Device possibile eseguire un confronto tra le informazioni Online dell'unit inserita con i dati dell'unit progettata. Per la rilevazione della causa di un errore di comunicazione con una porta oppure con l'interfaccia di un IO Device.
Informazioni sull'interfaccia dell'unit Per la rilevazione complessiva delle PROFINET selezionata, p. es. indirizzi IP. propriet dell'interfaccia di un'unit PROFINET Propriet fisiche dell'interfaccia PROFINE Per la rilevazione complessiva delle di un'unit PROFINET propriet fisiche dell'interfaccia PROFINET di un'unit PROFINET Dati di statistica dei pacchetti di un'unit PROFINET inviati e ricevuti Per l'analisi della qualit del trasferimento dati da o verso un''unit PROFINET
Collegamento di rete
Statistica
Se lo stato di funzionamento di un'unit che non sia una CPU stato avviato nella finestra "Nodi accessibili", non possibile visualizzare lo stato di funzionamento della CPU stessa e quello dell'unit scelta.
485
486
23.5.3
A seconda del volume di informazioni, le unit vengono suddivise in unit che supportano le funzioni di diagnostica di sistema, unit che supportano le funzioni di diagnostica, e unit che non le supportano. Ci viene specificato nel grafico seguente.
Unit che supportano la diagnostica di sistema sono p. es. le unit FM351 e FM354. Supportano le funzioni di diagnostica la maggior parte delle unit analogiche SM. Non supportano le funzioni di diagnostica la maggior parte delle unit digitali SM.
487
Schede visualizzate
La tabella illustra le schede visualizzate nella finestra di dialogo "Stato dell'unit" in relazione al tipo di unit.
Scheda CPU oppure M7-FM Unit che supportano la diagnostica di sistema Unit che supportano la diagnostica Unit che non supportano la diagnostica Slave DP IO Device
Generale Buffer di diagnostica Allarme di diagnostica Memoria Tempo di ciclo Sistema di destinazione Dati utili Stack Comunicazione Identificazione Diagnostica slave DP Diagnostica IO Device Stato H 1) Diagnostica dicomunicazione Interfaccia Collegamento di rete Statistica
s s
s s s
s
s
s
s s s s s s s s
s
s
s s s s s s
s
s s
Oltre alle informazioni riportate nelle schede, lo stato viene visualizzato nelle unit che hanno uno stato di funzionamento. Nel richiamo dalle tabelle di configurazione online viene indicato lo stato dell'unit rilevato dalla CPU (ad es. OK, errore, unit non disponibile).
488
23.5.4
Visualizzazione dello stato delle unit per le apparecchiature da campo PA e gli slave DP dopo un Y Link
A partire da STEP 7 V5.1, Servicepack 3, possibile valutare lo stato delle unit degli slave DP e delle apparecchiature da campo PA "dopo" un link DP/PA (IM 157). Ci riguarda in particolare le seguenti configurazioni: IM 157 con accoppiatori DP/PA per il collegamento del PROFIBUS-PA IM 157 come unit di interfaccia configurabile in modo ridondato per il collegamento di un PROFIBUS DP non ridondato ("Y Link")
Con queste configurazioni il PG viene connesso alla stessa sotto-rete PROFIBUS del DP/PA Link. C' inoltre un'altra possibilit di configurazione nella quale il PG connesso all'Industrial Ethernet e una stazione S7-400 si accoppia alla sotto-rete PROFIBUS. Le premesse perch ci avvenga sono indicate nella figura sotto riportata.
489
PG in Industrial Ethernet
490
23.6
23.6.1
In caso di errori di programmazione 1. Ad esempio, la voce "STOP causato da OB di errore di programmazione non caricato" significa che la CPU ha rilevato un errore di programmazione, e quindi cercato di avviare l'OB (non eistente) per la gestione dell'errore di programmazione. All'errore di porgrammazione vero e proprio fa riferimento la voce precedente. 2. Selezionare il messaggio relativo all'errore di programmazione. 3. Attivare il pulsante "Apri blocco". 4. Selezionare la scheda "Stack".
491
23.6.2
Contenuto dell'U-Stack
Facendo clic sul pulsante "U-Stack" vengono visualizzati i dati relativi al punto di interruzione. Lo stack di interruzione (U-Stack) riporta i dati e gli stati della CPU attivi al momento dell'interruzione, quali ad esempio: contenuto degli accumulatori e dei registri DB aperti e loro dimensione contenuto della parola di stato classe di priorit blocco interrotto blocco in cui stata proseguita l'esecuzione del programma dopo l'interruzione.
492
Diagnostica 23.7 Controllo dei tempi di ciclo per evitare errori temporali
23.7
493
23.8
494
23.8.1
495
Assegnazione di interrupt/errori Stato dell'allarme Stato delle classi di priorit Stato di funzionamento e transizione dello stato di funzionamento
496
497
23.8.2
498
23.8.3
Funzioni di diagnostica
La diagnostica di sistema comprende il riconoscimento, la valutazione e la segnalazione di errori che emergono all'interno del sistema di automazione. A tal fine vi in ogni CPU e ogni unit che supporti la diagnostica di sistema (p. es. FM354) un buffer di diagnostica, in cui sono riportate informazioni pi dettagliate su tutti gli eventi di diagnostica nella sequenza del loro verificarsi.
Eventi di diagnostica
Esempi di eventi di diagnostica sono: errori interni ed esterni di unit errori di sistema della CPU cambiamenti di stato di funzionamento (p. es. da RUN a STOP) errori nel programma utente collegamento/scollegamento di unit messaggi utente registrati con la funzione di sistema SFC 52.
Quando si effettua la cancellazione totale della CPU, il contenuto del buffer viene mantenuto. Grazie al buffer di diagnostica, gli errori che si verificano nel sistema possono essere analizzati anche dopo molto tempo per determinare il fattore che ha causato uno STOP o per risalire alla causa di singoli eventi di diagnostica.
Visualizzazione di errori
Gli errori interni ed esterni delle unit vengono segnalati tramite indicatori LED sui frontalini delle varie unit. Il significato dei LED viene spiegato nei manuali sull'hardware S7. NellS7-300 gli errori interni e esterni vengono raccolti in un errore cumulativo. La CPU riconosce gli errori di sistema e gli errori nel programma utente, e riporta le segnalazioni diagnostiche nella lista di stato del sistema e nel buffer di diagnostica. Tali segnalazioni possono essere lette sul PG. Le unit funzionali e le unit d'ingresso/uscita che supportano la diagnostica riconoscono gli errori interni ed esterni delle unit, e generano un allarme di diagnostica al quale possibile reagire con l'ausilio di un OB di allarme.
499
23.9
Se il corrispondente OB non presente, la CPU passa allo stato di funzionamento "STOP" (eccezioni: OB 70, OB 72, OB 81, OB 87). Esiste altrimenti la possibilit di memorizzare nell'OB le istruzioni su come reagire a questa situazione di errore. Potranno cos essere diminuite o eliminate le conseguenze dell'errore.
500
23.9.1
501
23.9.2
Errori rilevabili
Il programma di sistema in grado di rilevare i seguenti errori: funzionamento difettoso della CPU errore nell'elaborazione del programma del sistema errori nel programma utente errore nella periferia
A seconda della tipologia di errore, la CPU va in STOP oppure viene richiamato un OB di errore.
502
OB di errore
Esistono errori di sincronismo e asincronismo Gli errori di sincronismo possono essere assegnati a un comando MC7 (p. es. comando di caricamento a unit d'ingresso/uscita). Gli errori di asincronismo possono essere assegnati a una classe di priorit oppure al sistema di automazione (per esempio, overflow di tempo di ciclo).
La tabella seguente indica quali tipi di errori possono verificarsi in linea di principio. Per sapere se la propria CPU offre gli OB indicati, consultare il manuale "Sistemi di automazione S7-300, Configurazione e dati della CPU" oppure il manuale di riferimento "Sistemi di automazione S7-400, M7-400, Configurazione".
Tipo di errore Ridondanza Categoria di errore Errore di periferia ridondata (solo nelle CPU H) Errore di CPU ridondata (solo nelle CPU H) Asincrono Errore di tempo Errore alimentatore Allarme di diagnostica Allarme di estrazione/inserimento Errore hardware della CPU Errore di esecuzione programma Guasto al telaio Errore di comunicazione Sincrono Errore di programmazione Errore di accesso OB OB 70 OB 72 OB 80 OB 81 OB 82 OB 83 OB 84 OB 85 OB 86 OB 87 OB 121 OB 122 Priorit dell'OB che provoca l'errore Priorit 25 28 26 (oppure 28, quando l'OB di errore si presenta nel programma di avviamento)
503
possibile scrivere un programma che analizzi il codice di evento che ha generato il richiamo dell'OB 81. Si pu anche scrivere un programma che provochi una reazione, come per esempio l'attivazione di un'uscita, collegata ad un LED della stazione operatore.
504
505
AWL L
Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
506
23.9.3
Per tutti i comandi di caricamento che provocano errori sincroni, possibile indicare nell'OB di errore un valore sostitutivo per il contenuto dell'accumulatore.
Nell'esempio il valore sostitutivo della figura seguente viene inserito nel programma, in modo che quest'ultimo possa continuare ad utilizzare valori sensati.
Se una unit d'ingresso/uscita ha un guasto, l'elaborazione dell'istruzione L PEB0 crea un errore sincrono e avvia l'OB 122. Come standard il comando di caricamento legge il valore 0. possibile tuttavia definire con SFC 44 qualsiasi valore sostitutivo adatto al processo. La SFC sostituisce il contenuto dell'accumulatore con il valore sostitutivo impostato. Il seguente programma esemplificativo potrebbe essere memorizzato nell'OB 122. La tabella mostra le variabili temporanee che in questo caso devono essere dichiarate nella tabella di dichiarazione delle variabili dell'OB 122.
507
Dichiarazione TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP
Nome OB122_EV_CLASS OB122_SW_FLT OB122_PRIORITY OB122_OB_NUMBR OB122_BLK_TYPE OB122_MEM_AREA OB122_MEM_ADDR OB122_BLK_NUM OB122_PRG_ADDR OB122_DATE_TIME Errore
Tipo BYTE BYTE BYTE BYTE BYTE BYTE WORD WORD WORD DATE_AND_TIME INT
Descrizione Classe di errore/identificazione dell'errore 29xx Codice di errore: 16#42, 16#43, 16#44 1, 16#45 1 Classe di priorit = priorit dell'OB in cui si verificato l'errore 122 = OB 122 Tipo di blocco in cui si verificato l'errore Area di memoria e tipo di accesso Indirizzo di memoria in cui si verificato l'errore Numero del blocco in cui si verificato l'errore Indirizzo relativo del comando che ha provocato l'errore Data e ora di avviamento dell'OB Memorizza il codice di errore della SFC44
1)
AWL
Qerr:
Stop:
CALL "STP"
508
23.9.4
Descrizione
Il sistema operativo della CPU H richiama OB 70 se si verifica una perdita di ridondanza nel PROFIBUS DP (p. es. nel caso di guasto di bus al master attivo DP o di errore nell'interfaccia del DPSlave), oppure se il master DP attivo passa da slave DP a periferia collegata.
Programmazione dell'OB 70
L'OB 70 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere il programma da elaborare nell'OB 70 nel blocco generato, e caricarlo nella CPU come parte del programma utente. L'OB 70 pu essere utilizzato per: analizzare l'informazione di avviamento dell'OB 70, e rilevare quale evento ha causato la perdita di ridondanza di periferia. con l'ausilio di SFC 51 RDSYSST rilevare lo stato del sistema (SZL_ID=B#16#71).
La CPU non passa allo stato "STOP" se interviene un errore di periferia ridondata e l'OB 70 non programmato. Se l'OB 70 caricato e il sistema H si trova nel funzionamento ridondato, l'OB 70 viene elaborato in entrambe le CPU. Il sistema H rimane nel funzionamento ridondato. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
509
23.9.5
Descrizione
Il sistema operativo della CPU H richiama l'OB 72 se si verifica uno dei seguenti eventi. Perdita di ridondanza della CPU Errore di confronto (p. es. RAM, PAA) Commutazione riserva-master Errore di sincronizzazione Errore in un modulo SYNC Interruzione dell'operazione di accoppiamento
L'OB 72 viene eseguito da tutte le CPU che si trovano dopo un relativo evento di avviamento nello stato RUN o AVVIAMENTO.
Programmazione dell'OB 72
L'OB 72 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere il programma da elaborare nell'OB 72 nel blocco generato, e caricarlo nella CPU come parte del programma utente. L'OB 72 pu essere utilizzato per: analizzare l'informazione di avviamento dell'OB 72 e rilevare quale evento ha causato la perdita di ridondanza della CPU con l'ausilio di SFC 51 RDSYSST rilevare lo stato del sistema (SZL_ID=B#16#71) reagire alla perdita di ridondanza della CPU in modo adeguato all'impianto.
La CPU non passa allo stato "STOP" se si verifica un errore di CPU ridondata e l'OB 72 non programmato. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
510
23.9.6
Descrizione
Quando si verifica un errore di tempo, il sistema operativo della CPU richiama l'OB80. Errori di tempo possono essere, per esempio: superamento del tempo di ciclo massimo scavalcamento di allarmi dall'orologio mediante l'avanzamento dell'orologio ritardo eccessivo nell'elaborazione di una classe di priorit
Programmazione dell'OB 80
L'OB 80 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere il programma da elaborare nell'OB 80 nel blocco generato, e caricarlo nella CPU come parte del programma utente. L'OB 80 pu essere utilizzato per: analizzare l'informazione di avviamento dell'OB 80 e stabilire quali tipi di allarmi dall'orologio sono stati scavalcati disattivare, con l'aiuto della SFC 29 CAN_TINT, l'allarme dall'orologio scavalcato, in modo che non venga pi eseguito, allo scopo di riavviare, con la nuova ora impostata, un punto di partenza sicuro per l'elaborazione degli allarmi dall'orologio.
Se non si disattivano gli allarmi dall'orologio scavalcati nell'OB 80, il primo di essi viene elaborato, tutti gli altri vengono invece ignorati. Se l'OB 80 non stato programmato, quando viene rilevato un errore di tempo la CPU va in STOP. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
511
23.9.7
Descrizione
Il sistema operativo della CPU richiama l'OB 81 quando nell'unit centrale o in una unit di ampliamento l'alimentazione di corrente a 24 V una batteria l'intera batteria tampone
si guastano, oppure quando il guasto stato eliminato (richiamo in caso di evento entrante o uscente).
Programmazione dell'OB 81
L'OB 81 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere nel blocco generato il programma da elaborare nell'OB 81, e caricarlo nella CPU come parte del programma utente. L'OB 81 pu essere p. es. utilizzato per: analizzare l'informazione di avviamento dell'OB 81, e stabilire il tipo di guasto verificatosi nell'alimentatore determinare il numero del telaio di montaggio contenente l'alimentatore difettoso attivare un LED sulla stazione operatore per avvisare il personale addetto alla manutenzione della necessit di sostituire una batteria.
Se l'OB 81 non stato programmato, nel caso di guasto all'alimentatore la CPU non va in STOP. L'errore viene comunque registrato nel buffer di diagnostica e segnalato sul corrispondente LED del frontalino. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
512
23.9.8
Descrizione
Il sistema operativo della CPU richiama l'OB 82 se un'unit supportante la diagnostica, e per la quale stato abilitato un allarme di diagnostica, rileva un errore, e se inoltre l'errore stato eliminato (richiamo in caso di evento entrante o uscente).
Programmazione dell'OB 82
L'OB 82 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere il programma da elaborare nell'OB 82 nel blocco generato, e caricarlo nella CPU come parte del programma utente. L'OB 82 pu essere utilizzato per: analizzare l'informazione di avviamento dell'OB 82 effettuare una diagnostica corretta dell'errore riscontrato
Quando viene generato un allarme di diagnostica, l'unit difettosa registra automaticamente 4 byte di dati di diagnostica, e introduce l'indirizzo iniziale nell'informazione di avviamento dell'OB di allarme di diagnostica e nel buffer di diagnostica. cos possibile sapere su quale unit si verificato l'errore e di che tipo di errore si tratta. Ulteriori dati di diagnostica dell'unit difettosa (canale in cui si verificato l'errore, tipo di errore), possono essere analizzati con un apposito programma nell'OB 82. Con la funzione SFC 51 RDSYSST si possono leggere i dati di diagnostica delle unit; con SFC 52 WR_USRMSG possibile registrare tali informazioni nel buffer di diagnostica. Inoltre, possibile trasmettere il messaggio di diagnostica definito dall'utente ad un determinato sistema di servizio e supervisione. Se l'OB 82 non stato programmato, quando si verifica un allarme di diagnostica la CPU va in STOP. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
513
23.9.9
Descrizione
Le CPU S7-400 controllano ciclicamente ad intervalli di circa 1 secondo l'estrazione e l'inserimento di unit nell'unit centrale e nelle apparecchiature di ampliamento. Dopo l'inserzione della tensione di rete, la CPU verifica che tutte le unit elencate nella tabella di configurazione creata mediante STEP 7 siano effettivamente inserite. In caso affermativo, tale configurazione reale viene memorizzata e utilizzata come valore di riferimento per il controllo ciclico delle unit. Ad ogni ciclo di ricerca, la configurazione reale pi recente viene confrontata con quella precedente. In caso di discordanza, viene generato un allarme di estrazione/inserimento, e vengono effettuate le registrazioni nel buffer di diagnostica e nella lista di stato del sistema. Nello stato di funzionamento RUN viene avviato l'OB di estrazione/inserimento.
Avvertenza
Nello stato di funzionamento RUN, le unit di alimentazione, le CPU e le FM non devono essere estratte! Tra estrazione e inserimento devono trascorrere almeno 2 secondi, in modo che tali operazioni vengano correttamente riconosciute dalla CPU.
Programmazione dell'OB 83
L'OB 83 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere il programma da elaborare nell'OB 83 nel blocco generato, e caricarlo nella CPU come parte del programma utente. L'OB 83 pu essere utilizzato per: analizzare l'informazione di avviamento dell'OB 83 parametrizzare la nuova unit collegata con l'ausilio delle SFC da 55 a 59.
Se l'OB 83 non stato programmato, in caso di allarme di estrazione/inserimento la CPU passa dallo stato di funzionamento RUN a STOP. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
514
23.9.10
Descrizione
Il sistema operativo della CPU richiama l'OB 84 sia quando viene rilevato un errore di interfaccia della rete MPI, del bus K, o di collegamento della periferia decentrata, ad es. un livello di segnale erroneo sulla linea, sia quando viene corretto l'errore (richiamo per evento entrante o uscente).
Programmazione dell'OB 84
L'OB 84 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere il programma da elaborare nell'OB 84 nel blocco generato, e caricarlo nella CPU come parte del programma utente. L'OB 84 pu essere ad esempio utilizzato per: analizzare l'informazione di avviamento dell'OB 84 trasmettere una segnalazione al buffer di diagnostica con l'ausilio della funzione di sistema SFC 52 WR_USMSG
Se l'OB 84 non viene programmato, al rilevamento di un guasto hardware la CPU va in STOP. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
515
23.9.11
Descrizione
Il sistema operativo della CPU richiama l'OB 85 quando si in presenza di un evento di avvio di un OB di allarme, ma l'OB non pu essere eseguito perch non stato caricato nella CPU si verificato un errore durante l'accesso al blocco dati di istanza di un blocco funzionale di sistema si verificato un errore di aggiornamento dell'immagine di processo (unit progettata e non disponibile oppure unit progettata e guasta).
Programmazione dell'OB 85
L'OB 85 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere nel blocco generato il programma da elaborare nell'OB 85, e caricarlo nella CPU come parte del programma utente. L'OB 85 pu essere p. es. utilizzato per: analizzare l'informazione di avviamento dell'OB 85, e stabilire quale unit difettosa o mancante (indicazione dell'indirizzo iniziale delle unit) individuare il posto connettore dell'unit in questione tramite SFC 49 LGC_GADR
Se l'OB 85 non stato programmato, la CPU va in STOP in caso di errore di classe di priorit. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
516
23.9.12
Descrizione
Il sistema operativo della CPU richiama l'OB 86 quando viene rilevato uno degli eventi seguenti. Guasto di un'apparecchiatura di ampliamento centrale (non per S7-300), p. es. linea di collegamento interrotta, mancanza di tensione di un telaio di montaggio della periferia decentrata Guasto di un sistema master o di uno slave (PROFIBUS DP) o guasto di un sistema IO o di un IO Device (PROFINET IO).
L'OB 86 viene richiamato anche quando il guasto stato eliminato (richiamo in caso di evento entrante o uscente).
Programmazione dell'OB 86
L'OB 86 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere nel blocco generato il programma da elaborare nell'OB 86, e caricarlo nella CPU come parte del programma utente. L'OB 86 pu essere ad esempio utilizzato per: analizzare l'informazione di avviamento dell'OB 86, e stabilire quale telaio di montaggio difettoso o mancante immettere una segnalazione nel buffer di diagnostica, e inviarla a un sistema di servizio e supervisione tramite la funzione di sistema SFC 52 WR_USMSG.
Se l'OB 86 non stato programmato, la CPU va in STOP in caso di guasto al telaio di montaggio. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
517
23.9.13
Descrizione
Il sistema operativo della CPU richiama l'OB 87 quando si verifica un errore di comunicazione nello scambio dati tramite blocchi funzionali di comunicazione oppure comunicazione di dati globali, se ad esempio al ricevimento dei dati globali stata rilevata un'identificazione di telegramma errata il blocco dati per l'informazione di stato dei dati globali mancante o troppo breve.
Programmazione dell'OB 87
L'OB 87 deve essere creato come oggetto nel programma S7 mediante STEP 7. Scrivere il programma da elaborare nell'OB 87 nel blocco generato, e caricarlo nella CPU come parte del programma utente. L'OB 87 pu essere ad esempio utilizzato per: analizzare l'informazione di avviamento dell'OB 87 e generare un blocco se manca il blocco dati per l'informazione di stato della comunicazione di dati globali.
La CPU non va in STOP in caso di errore di comunicazione, se l'OB 87 non stato programmato. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
518
23.9.14
Descrizione
Il sistema operativo della CPU richiama l'OB 121 quando si verifica un errore di programmazione, per esempio temporizzatori indirizzati mancanti blocco richiamato non caricato.
Se l'OB 121 non stato programmato, la CPU va in STOP in caso di errore di programmazione. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
519
23.9.15
Descrizione
Il sistema operativo della CPU richiama l'OB 122 quando, tramite un'operazione di STEP 7, si accede a un ingresso o a un'uscita di un'unit d'ingresso/uscita, a cui al momento dell'ultimo nuovo avviamento non era stata assegnata alcuna unit, per esempio in caso di errore di accesso diretto alla periferia (unit difettosa o mancante) accesso ad un indirizzo di periferia sconosciuto alla CPU.
Se l'OB 122 non viene programmato, in caso di errore di accesso alla periferia la CPU va in STOP. Informazioni dettagliate sugli OB, gli SFB e le SFC si trovano nella Guida di riferimento nell'argomento guide ai blocchi
520
23.10.2
Nota Il sistema master di un IE/PB-Link non dispone di funzioni di diagnostica. Quest'ultima avviene tramite il DB PROFINET IO.
521
2.5 3 4.0 5 6 7
8 10 11
12
MODULE_NO
BYTE
522
Indirizzo 13 14 15 16 20 24 25.0 25.1 932 - 1176 1176 - 1191 1192 - 1207 1208 - 1223 1224 - 1239 1240 - 1255 1256 - 1271 1272 - 1397 1404 1408 1412 1416 1418 1420
Nome CHANNEL_NO CHANNEL_TYPE CHANNEL_ERROR_CODE CHANNEL_ERROR_INFO_1 CHANNEL_ERROR_INFO_2 DIAG_COUNTER DIAG_OVERFLOW BUSY DIAG_DAT_NORM CONFIG_SLAVES EXIST_SLAVES FAILED_SLAVES FAULTY_SLAVES AFFECT_SLAVES AFFECT_SLAVES_MEM DIAG_CNT ERROR_CAT HELP_CAT ERROR_NO MAP_ERRORNO MAP_HELPNO MASTERSTATUS_FAILED
Tipo di dati BYTE BYTE BYTE DWORD DWORD BYTE BOOL BOOL BYTE [1..244] DWORD [1..4] DWORD [1..4] DWORD [1..4] DWORD [1..4] DWORD [1..4] DWORD [1..4] BYTE [1..126] DWORD DWORD DWORD WORD WORD BOOL [1..32]
Descrizione Numero di canale Tipo di canale Codice di errore Code 1 errore di canale Code 2 errore di canale Somma di tutte le funzioni di diagnostica della stazione visualizzata Overflow di diagnostica Analisi in corso Dati della diagnostica slave Slave progettati Slave disponibili (interpellabili) Slave guasti Slave disturbati Slave interessati (disturbati o guasti) Gli slave interessati sono stati salvati (internamente) Numero dei messaggi di diagnostica per ciascun slave ID della libreria di testi del codice di errore ID della libreria di testi dell'Argomento della Guida ID di testo nella libreria di test ID di errore nel file di esportazione ID dell'Argomento della Guida nel file di esportazione True, quando almeno una stazione del sistema master PROFIBUS (1 - 32) fuori servizio True, quando almeno una stazione del sistema master PROFIBUS (1 - 32) disturbata
1424
MASTERSTATUS_FAULTY
BOOL [1..32]
523
Richiesta:
DP_MASTERSYSTEM EXTERNAL_DP_INTERFACE RESET 27 FALSE Dopo TRUE (fronte di salita)
Risultato:
ALL_DP_SLAVE_OK SUM_SLAVES_DIAG SLAVE_ADR SLAVE_STATE SLAVE_IDENT_NO ERROR_NO ERROR_TYPE MODULE_NO MODULE_STATE CHANNEL_NO CHANNEL_TYPE CHANNEL_ERROR_CODE FALSE: si sono verificati guasti 1: una stazione disturbata 15: indirizzo PROFIBUS 2: disturbato W#16#80E0: ET 200S HF 1: primo errore 3: diagnostica di canale secondo la norma DP 2 0: il modulo corretto 2: canale2 2: uscita 1: cortocircuito
524
Indirizzo del bit 1176 + 15 - 1 = 1192 1192 + 15 1 = 1216 1208 + 15 1 = 1222 1224 + 15 1 = 1238 1240 + 15 1 = 1254 1256 + 15 1 = 1270 1272 + (15-1) * 8 = 1384
Spiegazione La stazione 15 stata progettata La stazione 15 disponibile Non si sono verificati guasti alla stazione 15 La stazione 15 disturbata interessata la stazione 15 stata interessata la stazione 15 3 allarmi di diagnostica
Risultato:
ALL_DP_SLAVE_OK TRUE: non si sono verificati guasti SUM_SLAVES_DIAG 0: non si sono verificati disturbi alle stazioni
Variabile CONFIG_SLAVES EXIST_SLAVES FAILED_SLAVES FAULTY_SLAVES AFFECT_SLAVES AFFECT_SLAVES_MEM DIAG_CNT Indirizzo del bit 1176 + 15 - 1 = 1192 1192 + 15 1 = 1216 1208 + 15 1 = 1222 1224 + 15 1 = 1240 + 15 1 = 1256 + 15 1 = 1272 + (15-12) * 8 Valore TRUE TRUE FALSE FALSE FALSE TRUE B#16#4 Spiegazione La stazione 15 stata progettata La stazione 15 disponibile Non si sono verificati guasti alla stazione 15 La stazione 15 disturbata interessata la stazione 15 stata interessata la stazione 15 4 allarmi di diagnostica
525
526
Indirizzo 32 36 38 40 42
Descrizione Numero dell'errore (indice nel glossario Numero del testo di errore nella tabella di esportazione Numero del testo informativo nella tabella di esportazione Numero dei sistemi IO progettati Panoramica di tutti i sistemi IO
IO_Sys_<n>
ARRAY OF WORD[n]
527
528
23.10.2.6 Esempio di un DB 126 con un sistema IO 100 e con i Device con dispositivi 2, 3 e 4
Number_IO_Sys Detail_IO_Sys [0] .System_No Detail_IO_Sys [0] .Max_Num_Dev Detail_IO_Sys [0] .Offset W#16#1 W#16#64 W#16#4 W#16#2E Numero dei sistemi IO progettati Numero del sistema ID max. dei dispositivi progettati Offset in byte all'inizio del campo IO_Sys_Status riferito al parametro Detail_IO_Sys Numero del dispositivo interessato Riga di stato del sistema IO 100
Stato:
Device 1 Device 2 Device 3 Device 4 Non progettato Disturbato OK Inaccessibile
La riga di stato raggruppata come campo di bit, 2 bit costituiscono lo stato di un dispositivo. Il byte 50 si presenta cos: [11] [01] [00] [10]
529
Richiesta:
HMI_ID System_No Device_No Enable Next_Error 1 100 50 TRUE *
Poich il blocco opera in modo asincrono, sar necessario attendere che la variabile Busy assuma il valore "false". Risultato per il dispositivo numero 50 sul sistema IO 100: il dispositivo numero 50 presenta due errori di canale.
Risultato 1
Busy Offset_Sys_Header Offset_Sys_Array Vendor Id Device Id Device_Status More_Errors Error_Level Map_HelpNr 16884 FALSE 42 50 0 0 1 TRUE 4
530
Nota Dopo un nuovo avviamento di una CPU del Web Server lo stato dell'unit viene visualizzato con ritardo. Per ridurre il tempo di attesa possibile eseguire il blocco di diagnostica SFM in un OB di schedulazione orologio con un intervallo di tempo minore.
531
Indirizzo 8.2 8.3 8.4 8.5 8.6 8.7 9.0 10 11 +32 0 1 2 +36 0 2.0
Nome Q_Reserved2 Q_Reserved3 Q_Reserved4 Q_Reserved5 Q_Reserved6 Q_Reserved7 Q_Start Q_Error Q_Reserved8 Component C_AddressMode C_Reserved1 C_ComponentID Error E_ErrorNo E_LastError
Tipo di dati BOOL BOOL BOOL BOOL BOOL BOOL BOOL BYTE BYTE BYTE BYTE WORD WORD BOOL
Descrizione Riservato Riservato Riservato Riservato Riservato Riservato Avvia richiesta Errore interno durante la richiesta Riservato Modulo di indirizzamento dell'unit Riservato ID dell'hardware del componente (interno) Indice dell'errore simulato/effettivo Viene impostato se E_ErrorNo diverso da 0. Valore TRUE, se E_ErrorNo l'indice dell'ultimo errore, in caso contrario FALSE Riservato
2.1
E_Reserved
+40 0 1 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 3.0 3.1 3.2 3.3 3.4 3.5 3.6
State S_Hierarchy S_Periphery S_SupFault S_NotAvailable S_Faulty S_MoreErrors S_Maintenance1 S_Maintenance2 S_Deactivated S_Reserved2 S_SubFault S_SubMaintenance1 S_SubMaintenance2 S_SubDeactivated S_Reserved4 S_Reserved5 S_Reserved6 BYTE BYTE BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL Riservato Riservato Componente inaccessibile Componente non disponibile Componente disturbato, il componente "Alarm" non vuoto Presenza di pi errori di quanti possa memorizzarne l'SFM Manutenzione necessaria Richiesta di manutenzione Il componente stato attivato *) Riservato Disturbo in un componente subordinato Manutenzione necessaria in un componente subordinato Richiesta di manutenzione in un componente subordinato Un componente subordinato disattivato Riservato Riservato Riservato
532
Tipo di dati BOOL DWORD DWORD DWORD WORD ARRAY [0..255] BOOL
Descrizione Riservato Maintenance State del componente Maintenance State: canali progettati Maintenance State: canali disturbati Numero di canali; valido soltanto se stato impostato Q_WithSubComponent Elenco dei canali; valido soltanto se stato impostato Q_WithSubComponent
+90 0 2 4 6 8 10 12 14 16 18 20 22 26 28
Alarm A_ComponentID A_TextID1 A_TextLexikonID1 A_HelpTextLexikonID1 A_MapTextID A_MapHelpTextID A_TextID2 A_TextLexikonID2 A_HelpTextLexikonID2 A_MapTextID2 A_MapHelpTextID2 A_AlarmID A_ValueCount A_AssociatedValue WORD WORD WORD WORD WORD WORD WORD WORD WORD WORD WORD DWORD WORD ARRAY [1..n] WORD ID dell'hardware del componente (interno) ID del primo testo di errore ID della prima libreria di testo di errore ID della prima libreria di testi dell'Argomento della Guida ID del primo testo di errore nel file di esportazione (HMI) ID del primo Argomento della Guida nel file di esportazione (HMI) ID del secondo testo di errore ID della seconda libreria di testo di errore ID della seconda libreria di testi dell'Argomento della Guida ID del primo secondo di errore nel file di esportazione (HMI)) ID del secondo Argomento della Guida nel file di esportazione (HMI) Nuovo messaggio Numero di ulteriori byte assegnati (12) Variabili del messaggio n = A_ValueCount / 2 (= 6)
+130 0 2
SubComponent U_SubComponentCount U_SubComponentFault WORD ARRAY [1..n] BYTE Numero dei componenti subordinati L'elenco dei componenti subordinati "n" in funzione della Configurazione **)
533
*) Se il componente stato disattivato, lindice dellerrore richiesto/reale non viene modificato e "E_LastError" viene impostato su "true". Inoltre non viene compilato il campo delle variabili. **) L'elenco dei componenti subordinati valido soltanto se impostato Q_WithSubComponent. Per ciascun componente progettato, viene assegnato un byte di stato all'ARRAY. Per un master, all'ARRAY viene assegnato lo stato delle stazioni progettate, disposto in ordine crescente secondo gli ID delle stazioni. Per una stazione, all'ARRAY viene assegnato lo stato dei posti connettore progettati, disposto in ordine crescente secondo il numero di slot. Questa casella pu contenere max. 4096 voci (per un sistema IO); viene visualizzata soltanto la grandezza max. effettiva. Il byte di stato per ogni componente subordinato viene definito nel seguente modo: Bit 0 = SubFault: il componente non accessibile Bit 1 = Fault: il componente non disponibile o difettoso Bit 2 = Maintenance1: il componente ha segnalato una richiesta di manutenzione Bit 3 = Maintenance2: il componente ha segnalato una richiesta di manutenzione Bit 4 = Deactivated: il componente stato disattivato Bit 5 = SubFault: un componente subordinato guasto Bit 6 = SubMaintenance1: un componente subordinato ha segnalato una richiesta di manutenzione Bit 7 = SubMaintenance2: un componente subordinato ha segnalato una richiesta di manutenzione
534
Richiesta
1. Fontantoch Q_ClientID_Intern diverso da DW#16#00000005, Q_ClientID_User := DW#16#00000005 2. Se Q_ClientID_Intern uguale a DW#16#00000005 Q_WithSubComponent := FALSE C_AddressMode := B#16#1 C_ComponentID := W#16#8032 E_ErrorNo := 1 Q_Start := TRUE 3. Attendere che Q_Busy sia uguale a FALSE 4. Se Q_ClientID_Intern diverso da DW#16#00000005, tornare al passo 1 5. Eseguire la lettura dei dati:
FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE DW#16#00000007 DW#16#00000003 DW#16#FFFFFFFD W#16#2 W#16#8002 W#16#8C06 W#16#1 DW#32#60200032 W#16#C W#16#8C06
S_SupFault S_NotAvailable S_Faulty S_MoreErrors S_Maintenance1 S_Maintenance2 S_SubFault S_SubMainenance1 S_SubMaintenance2 S_TIAMS S_TIAMSChannelExist S_TIAMSChannelOK S_ChannelCount A_ComponentID A_TextID1 A_TextLexikonID1 A_AlarmID A_ValueCount A_AssociatedValue[1]
535
6. Effettuare la verifica coerenza: Se Q_ClientID_Intern diverso da DW#16#00000005, tornare al passo 1 7. possibile analizzare i dati. La nuova inizializzazione del DB avviene automaticamente.
Esempio 2:
L'operatore intende richiamare sull'OP recante l'indirizzo IP 192.168.10.54 gli errori del sistema master DP situato nel CP recante l'indirizzo di diagnostica E 16383. Sono state progettate le stazioni DP con gli indirizzi Profibus 1, 48, 50. La stazione 1 disturbata, la stazione 48 funziona correttamente mentre la stazione 50 guasta.
Richiesta
1. Fintantoch Q_ClientID_Intern diverso da DW#16#00000005. Q_ClientID_User := DW#16#00000005. 2. Se Q_ClientID_Intern uguale a DW#16#00000005. , Q_WithSubComponent := TRUE C_AddressMode := B#16#1 C_ComponentID := W#16#3FFF E_ErrorNo := 0 Q_Start := TRUE 3. Attendere che Q_Busy sia uguale a FALSE 4. Se Q_ClientID_Intern diverso da DW#16#00000005. tornare al passo 1 5. Eseguire la lettura dei dati:
S_SupFault S_NotAvailable S_Faulty S_MoreErrors S_Maintenance1 S_Maintenance2 S_SubFault S_SubMainenance1 FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE
536
6. Effettuare la verifica coerenza: Se Q_ClientID_Intern diverso da DW#16#00000005, tornare al passo 1 7. possibile analizzare i dati. La nuova inizializzazione del DB avviene automaticamente.
537
Il nome del file sopra riportato viene poi corredato delle indicazioni del progetto, della stazione e della CPU. Ci consente di esportare nella stessa directory i file di esportazione di CPU diverse.
Il file di esportazione con la lunghezza testo desiderata deve essere rinominato in 'other.csv' ed importato nel pannello operatore. Nei casi sottoelencati necessario importare un nuovo file di esportazione nel dispositivo HMI: modifica alla progettazione hardware modifica alle impostazioni della funzione 'Segnala errori di sistema
Impostazione sull'OP del tedesco del Principato di Liechtenstein come lingua dei messaggi
Sul dispositivo HMI non deve essere impostato il tedesco del Principato di Liechtenstein come lingua dei messaggi, in caso contrario i testi di errore e i testi informativi non possono essere visualizzati correttamente.
538
24
24.1
Stampa e archiviazione
Stampa della documentazione di progetto
Una volta creato il programma per il proprio compito di automazione, grazie alla funzione di stampa integrata in STEP 7, possibile stampare i dati pi importanti creando cos una documentazione per il progetto.
Aprendo i corrispondenti oggetti possibile p. es. stampare i seguenti componenti di progetto: blocchi nella rappresentazione KOP, FUP, AWL o in altri linguaggi (software opzionale) tabella dei simboli con il nome simbolico degli indirizzi assoluti tabella di configurazione con la disposizione delle unit nel PLC e i relativi parametri contenuto del buffer di diagnostica tabella delle variabili con i formati di stato e i valori di stato e di comando dati di riferimento, ovvero elenchi di riferimenti incrociati, tabelle di occupazione, strutture del programma, operandi non utilizzati e operandi senza simbolo tabella dei dati globali informazioni su unit e loro stato testi rilevanti per l'utente (testi utente e biblioteche di testi) Documenti di pacchetti opzionali p. es. di linguaggi di programmazione
539
24.1.1
24.1.2
Funzioni di stampa
Per la stampa di oggetti di stampa sono disponibili le seguenti funzioni.
Oggetti di stampa Comando di menu Funzione Anteprima di stampa Blocchi, sorgenti AWL Stato dell'unit Tabella dei dati globali Tabella GD > * Tabella di configurazione Oggetto, cartella per oggetti Dati di riferimento Tabella dei simboli Tabella delle variabili Tabella dei collegamenti Testi rilevanti per l'utente (testi utente, biblioteche di testi) Stazione > * File > * Dati di riferimento > * Tabella > * Tabella > * Rete > * Testi > * File > * Funzione Imposta pagina, scheda "Formato carta" Funzione Imposta pagina, scheda "Campi di scrittura"
* : Il carattere * il carattere jolly nel comando di menu della rispettiva funzione (p. es. Anteprima di stampa oppure Imposta pagina)
Le istruzioni passo per passo sul modo di stampare i singoli oggetti di stampa possono essere lette alle voci: Istruzioni per la stampa .
540
Anteprima di stampa
Con la funzione "Anteprima di stampa" possibile visualizzare la pagina cos come viene stampata. Avvertenza L'immagine della stampa ottimizzata non viene visualizzata nell'anteprima di stampa.
24.1.3
541
24.2
Programmi di archiviazione
Nell'ambito di STEP 7 possibile richiamare un determinato programma per l'archiviazione dei progetti. I programmi di archiviazione ARJ e PKZip sono compresi nella fornitura di STEP 7 e vengono installati automaticamente. Le relative descrizioni si trovano nella directory di installazione di singoli programmi di archiviazione. L'impiego di un determinato programma di archiviazione richiede una delle seguenti (o una versione pi recenti) versioni: PKZip V12.4I (in dotazione) WinZip (testato con la versione 14)
ARJ V2.50a (soltanto per l'archiviazione, in dotazione (non con il sistema operativo Windows 7)
Particolarit
Se in precedenti versioni di STEP 7, l'archiviazione avvenuta con ARJ32 V3.x, la corrispondente disarchiviazione di questi dati deve essere eseguita esclusivamente con questo programma. Nei drive di rete l'archiviazione con PKZip richiede tempi notevolmente superiori rispetto a quelli richiesti dall'archiviazione su drive locali.
542
24.2.1
Per creare una copia il pi rapidamente possibile, selezionare nella finestra successiva loperazione di salvataggio senza riorganizzazione. Lintera struttura ad albero dei file viene copiata senza verifica, a partire dalla directory dei progetti, e quindi salvata con un nuovo nome. Sul supporto dati deve essere disponibile abbastanza spazio per memorizzare la copia di backup. Non tentare di salvare i progetti su un dischetto, in quanto lo spazio di memoria del dischetto normalmente non sufficiente. Per trasferire i dati di progetto su dischetto, azionare la funzione "Archivia". Il salvataggio con riorganizzazione richiede pi tempo, e se la copia o il salvataggio non riescono l'utente viene avvisato da un messaggio. I motivi possono essere p. es. il fatto che manca un pacchetto opzionale o che i dati di un oggetto sono difettosi.
Archivia
I singoli progetti e biblioteche possono essere memorizzati in un file di archivio in forma compressa. La memorizzazione in un file compresso viene eseguita nel disco fisso o in supporti dati trasportabili (ad es. dischetti). Trasferire i progetti su dischetto soltanto in forma di file di archivio. Se il progetto troppo vasto, selezionare un programma di archiviazione che permetta la creazione di archivi che occupano pi dischetti. I progetti e le biblioteche compressi in un file di archivio non possono essere elaborati; se vi si vogliono apportare delle nuove modifiche, occorre decomprimere i dati, ovvero disarchiviare il progetto o la biblioteca.
543
24.2.2
24.2.3
Procedimento di archiviazione/disarchiviazione
Per archiviare/disarchiviare il progetto/la biblioteca usare i comandi File > Archivia o File > Disarchivia.
Avvertenza I progetti e le biblioteche compressi in un file di archivio non possono essere elaborati. Se vi si vogliono apportare delle nuove modifiche, occorre decomprimere i dati, ovvero archiviare il progetto o la biblioteca.
Con la disarchiviazione i progetti e le biblioteche disarchiviati vengono inseriti automaticamente nell'elenco dei progetti o delle biblioteche.
544
25
25.1
Procedimento fondamentale
Nel creare soluzioni di automazione con SIMATIC M7 si incontrano compiti basilari da svolgere. La seguente tabella riporta i compiti da eseguire nella maggior parte dei progetti, e li ordina secondo un sistema di istruzioni fondamentali da seguire, in forma di vademecum. Viene inoltre fatto riferimento ai rispettivi capitoli del presente o di altri manuali.
Azioni Sviluppo di soluzioni di automazione Avvio di STEP 7 Creazione della struttura di progetto Predisposizione di stazioni Configurazione dell'hardware Progettazione dei collegamenti di comunicazione Definizione della tabella dei simboli Creazione del programma utente C o CFC Configurazione di sistema operativo Installazione del sistema operativo in M7-300/400 Caricamento in M7 della configurazione hardware e programma utente Test del programma utente e correzione errori Controllo del funzionamento e diagnostica M7 Stampa e archiviazione come per STEP 7 come per STEP 7 specifico di M7; vedere: ProC/C++ specifico di M7; vedere: BHB M7-SYS Rt ProC/C++ come per STEP 7, tuttavia senza diagnostica personalizzata come per STEP 7 Descrizione specifico di M7; vedere: PHB M7-SYS RT come per STEP 7 come per STEP 7
545
Per giungere nella gestione di sistema M7, richiamare dal contesto di un progetto contenente stazioni con CPU M7 o FM M7, con cartella di programmi M7 selezionata il seguente comando Sistema di destinazione > Gestisci sistema di destinazione M7 Per spiegazioni pi dettagliate si pu consultare la Guida in linea e il manuale utente M7-SYS RT.
546
Come lavorare con i sistemi di automazione M7 25.2 Software opzionale per la programmazione M7
25.2
Software opzionale M7
STEP 7 mette a disposizione le funzionalit di base per eseguire le seguenti operazioni: creazione e gestione di progetti configurazione e parametrizzazione dell'hardware progettazione di reti e collegamenti gestione dei dati simbolici
Queste funzionalit sono le stesse per i sistemi di destinazione SIMATIC S7 o SIMATIC M7. Per creare programmi utenti M7 necessario, oltre a STEP 7, il software opzionale M7.
Software M7-SYS RT Contenuto CFC per S7 e M7 M7 ProC/C++ Borland C++ Sistema operativo M7 RMOS32 Biblioteca di sistema API M7 Supporto MPI Integrazione dell'ambiente di sviluppo Borland in STEP 7 Editor e generatore per l'importazione di simboli Debugger di linguaggi avanzati Organon xdb386
In connessione con il software opzionale M7, STEP 7 consente anche di: trasmettere dati allM7 tramite MPI rilevare informazioni mediante il sistema di automazione M7 eseguire determinate impostazioni nel sistema di automazione M7, e cancellare totalmente lM7
La figura seguente dimostra come viene utilizzato il software opzionale M7 per la programmazione M7.
547
Come lavorare con i sistemi di automazione M7 25.2 Software opzionale per la programmazione M7
Sintesi
Per la creazione di ... programmi in C o C++ necessario il software opzionale M7 programmi CFC M7-SYS RT M7 ProC/C++ Borland C++ M7-SYS RT CFC per S7 e M7 Borland C++
Strumenti di supporto
Gli strumenti specifici per la creazione di applicazioni M7 sono contenuti in parte in STEP 7 e in parte nel software opzionale M7. La tabella seguente illustra le funzioni di supporto contenute nei vari pacchetti software:
Software ... STEP 7 ha funzioni di supporto per... M7-SYS RT M7 ProC/C++ Borland C++ CFC per S7 e M7 l'installazione del sistema operativo M7 la gestione del sistema di automazione M7, il trasferimento, l'avvio e la cancellazione dei programmi utente M7 il richiamo dei dati di stato e di diagnostica la cancellazione totale della CPU gestione di esecuzione del programma, gestione della memoria e delle risorse accesso all'hardware SIMATIC e dell'elaboratore gestione degli allarmi diagnostica controllo di stato comunicazione grazie alla creazione integrata del codice (integrazione dell'ambiente di sviluppo Borland in STEP 7) grazie all'integrazione dei simboli del progetto nel codice sorgente grazie alla funzionalit di debug integrata nella creazione di programmi C e C++ nella creazione, nel test e nel debug dei programmi CFC nell'avviamento e nell'esecuzione dei programmi CFC
tramite i servizi del sistema operativo M7 e del software di sistema M7, per:
548
Come lavorare con i sistemi di automazione M7 25.3 Sistemi operativi per M7-300/400
25.3
Per la soluzione di compiti di automazione la Siemens ha inserito nel computer di automazione SIMATIC M7 il sistema operativo in tempo reale M7 RMOS32 (RMOS = Realtime-MultitaskingOperating-System). Per l'integrazione nel sistema SIMATIC, M7 RMOS32 ampliato con l'interfaccia di richiamo M7-API (API = Application Programming Interface). Il sistema operativo in tempo reale M7 RMOS32 viene impiegato per applicazioni a 32 bit nella soluzione di compiti in tempo reale e multi-tasking; esso disponibile per le unit M7 nelle seguenti configurazioni: M7 RMOS32 RMOS32 M7 con MS DOS
La configurazione del sistema operativo per il sistema di automazione M7 dipende dalle unit M7 utilizzate.
Configurazione del sistema operativo M7 RMOS32 Unit e memoria principale FM 356-4 / 4MB FM 356-4 / 8MB CPU 388-4 / 8MB FM 456-4 / 16MB CPU 488-3 / 16MB CPU 486-3 / 16MB M7 RMOS32 con MS-DOS FM 356-4 / 8MB CPU 388-4 / 8MB FM 456-4 / 16MB CPU 488-3 / 16MB CPU 486-3 / 16MB PROFIBUS-DP e TCP/IP S/No no s s s s s no no s s s Memory Card 4 MB o disco fisso Installazione su memoria di massa Memory card 4 MB o disco fisso
549
Come lavorare con i sistemi di automazione M7 25.3 Sistemi operativi per M7-300/400
550
26
26.1
26.2
551
26.3
Riorganizzazione
Quando si opera con STEP 7 possono verificarsi dei problemi difficile da chiarire; in questi casi, pu essere di aiuto riorganizzare la base di dati del progetto o della biblioteca. Selezionare il comando di menu File > Riorganizza. Questa operazione consente di eliminare gli spazi vuoti dovuti alla cancellazione: viene cio diminuito il fabbisogno di memoria dei dati di progetto/di biblioteca. La funzione ottimizza i dati del progetto o della biblioteca memorizzati, analogamente a come p. es. un programma ottimizza i dati del disco fisso per la frammentazione del disco fisso. La durata della riorganizzazione dipende dagli spostamenti dati necessari, e pu comportare tempi notevoli. Pertanto la funzione non viene eseguita automaticamente (p. es. alla chiusura di un progetto), ma deve essere avviata dall'utente nel momento in cui si ritiene opportuno riorganizzare il progetto o la biblioteca. Per controllare il sovraccarico della Gestione dati, selezionare la cartella di blocchi, quindi il comando di menu Propriet > Propriet dell'oggetto e, nella scheda "Livello di riempimento", fare clic sul pulsante "Rilevva il livello di riempimento". Al termine della rilevazione, nella sezione inferiore della scheda, vengono visualizzati i valori unitamente ad una raccomandazione sulla riorganizzazione del progetto.
Presupposto
I progetti e le biblioteche possono essere riorganizzati solo se nessun oggetto viene modificato da altre applicazioni, e quindi non vi sono oggetti bloccati.
26.4
552
26.5
Terminare senza richiesta di conferma: premendo il tasto ESC mentre sono in corso le operazioni "Controlla", "Comanda" - "Abilita uscite di periferia", vengono terminati "Controlla" e "Comanda" senza richiesta di conferma. Introduzione di un'area operandi contigua: Utilizzare il comando di menu Inserisci > Area. Visualizzare e nascondere le colonne: Utilizzare i comandi di menu seguenti per mostrare o nascondere singole colonne: Simbolo: comando di menu Visualizza > Simbolo Commento al simbolo: comando di menu Visualizza > Commento al simbolo Formato di rappresentazione del valore di stato: comando di menu Visualizza > Formato di visualizzazione Valore di stato delle variabili: comando di menu Visualizza > Valore di stato Valore di comando delle variabili: comando di menu Visualizza > Valore di comando. Modificare il formato di visualizzazione di pi righe di tabelle contemporaneamente: Selezionare l'area della tabella in cui si desidera modificare il formato di visualizzazione tenendo premuto il tasto sinistro del mouse sopra l'area della tabella desiderata . Selezionare la rappresentazione con il comando di menu Visualizza > Seleziona formato di visualizzazione. Viene cambiato il formato solo per le righe delle tabelle selezionate per le quali ammesso il cambio di formato.
Esempi di introduzione mediante il tasto F1: Posizionando il cursore nella colonna degli operandi e premendo F1 si ottengono esempi di introduzione di operandi. Posizionando il cursore nella colonna del valore di comando e premendo F1 si ottengono esempi per l'introduzione di valore di comando/forzamento.
553
26.6
Presupposti
Nella tabella dei simboli stata assegnata all'operando da comandare, mediante il comando di menu Propriet speciali dell'oggetto > Comando diretto del contatto, la propriet corrispondente. Nell'editor di programma KOP/AWL/FUP alla scheda "Generale" (comando di menu Strumenti > Impostazioni) stata selezionata l'opzione "Comando diretto del contatto". stato attivato il comando Test > Controlla.
La condizione di trigger deve essere "Continuo/Inizio ciclo". Gli ingressi effettivamente presenti nell'impianto vengono comandati per tutto il tempo in cui si tiene premuto il pulsante. Mediante la selezione multipla (tasto CTRL) possibile comandare pi ingressi contemporaneamente. In caso di merker o di ingressi inesistenti, attivando il pulsante lo stato viene impostato a 1. Lo stato viene resettato a 0 solo se l'utente lo richiede esplicitamente tramite il menu di scelta rapida o la tabella delle variabili, oppure se l'operando viene resettato dal programma S7. Attivando il pulsante, gli ingressi e i merker non negati vengono comandati con il valore di comando "1", gli ingressi e i merker negati con il valore di comando "0".
554
26.7
Avvertenza Poich la memoria virtuale si trova sul disco fisso (per default C: ed dinamica) occorre fare attenzione che per le directory TMP o TEMP sia disponibile spazio di memoria sufficiente (circa 20 30 MB):
Se il progetto S7 si trova sulla stessa partizione su cui stata impostata la memoria virtuale, dovrebbe essere predisposto circa il doppio di fabbisogno di memoria del progetto S7. Se il progetto viene tuttavia gestito su un'altra partizione, questa condizione non si applica pi.
555
556
27
27.1
27.1.1
Appendice
Stati di funzionamento
Stati di funzionamento e loro transizioni
Stati di funzionamento
Gli stati di funzionamento descrivono il comportamento della CPU in un determinato momento. Esserne a conoscenza utile per la programmazione dell'avviamento, per le operazioni di test del controllo, nonch per la diagnostica degli errori. Le CPU S7-300 e S7-400-CPU possono assumere i seguenti stati di funzionamento. STOP AVVIAMENTO RUN ALT
Nello stato di funzionamento STOP, la CPU verifica la presenza di tutte le unit configurate o utilizzate con l'indirizzamento di default, e pone la periferia in uno stato di base predefinito. Nello stato di funzionamento STOP il programma utente non viene elaborato. Nello stato di funzionamento AVVIAMENTO occorre distinguere tra "nuovo avviamento" (avviamento a caldo), "avviamento a freddo" e "riavviamento". Con il nuovo avviamento (avviamento a caldo), il programma viene elaborato da capo. In questo caso i dati di sistema e delle aree di operandi utente (i temporizzatori, contatori e merker non ritentivi) vengono resettati ed elaborati con i valori di base. Nell'avviamento a freddo viene letta l'immagine di processo degli ingressi, ed elaborato il programma utente STEP 7, a cominciare dal primo comando in OB1 (ci vale anche per il nuovo avviamento = avviamento a caldo). I blocchi dati generati mediante SFC vengono cancellati nella memoria di lavoro; gli altri blocchi dati hanno il valore predefinito nella memoria di caricamento. Vengono resettati l'immagine di processo, tutti i temporizzatori, contatori e merker, indifferentemente dalla loro parametrizzazione (a ritenzione o meno).
Con il riavviamento l'elaborazione del programma viene ripresa dal punto in cui era stata interrotta (temporizzatori, contatori e merker non vengono resettati). Il riavviamento possibile solo nelle CPU S7-400.
Nello stato di funzionamento RUN, la CPU elabora il programma utente, aggiorna gli ingressi e le uscite, elabora interrupt e messaggi di errore. Nello stato di funzionamento ALT l'elaborazione del programma utente viene fermata, ed possibile effettuare il test del programma utente passo per passo. Lo stato di funzionamento ALT accessibile solo durante il test con il PG.
557
In tutti questi stati di funzionamento la CPU in grado di comunicare tramite l'interfaccia MPI.
Le condizioni in cui gli stati di funzionamento possono cambiare sono spiegate nella tabella seguente.
Transizione 1. 2. Descrizione Dopo l'inserimento della tensione di alimentazione, la CPU si trova nello stato di funzionamento STOP. La CPU passa allo stato di funzionamento AVVIAMENTO 3. dopo essere stata posta su RUN o RUN-P tramite l'interruttore a chiave o dal PG, oppure dopo l'avviamento automatico di un modo di avviamento tramite RETE ON. quando viene eseguita la funzione di comunicazione "RESUME" o "START".
In entrambi i casi, il selettore dei modi operativi deve trovarsi su RUN o RUN-P. La CPU ritorna in STOP se 4. 5. durante l'avviamento viene segnalato un errore la CPU viene posizionata su STOP tramite il selettore dei modi operativi o dal PG viene elaborato un comando di STOP nell'OB di avviamento, oppure se viene eseguita la funzione di comunicazione "STOP".
La CPU passa allo stato di funzionamento ALT se nel programma di avviamento viene raggiunto un punto di arresto. La CPU passa allo stato di funzionamento AVVIAMENTO se stato fissato un punto di arresto nel programma di avviamento e viene eseguito il comando "ABBANDONA STATO DI ALT" (funzione di test).
558
Transizione 6.
Descrizione La CPU ritorna in STOP se viene posizionata su STOP tramite il selettore dei modi operativi o dal PG, oppure se viene eseguito il comando di comunicazione "STOP".
7. 8.
Se l'avviamento riuscito, la CPU passa allo stato RUN. La CPU ritorna in STOP se nello stato RUN viene riconosciuto un errore, e il relativo OB non caricato la CPU viene posizionata su STOP tramite il selettore dei modi operativi o dal PG nel programma utente viene elaborato un comando di STOP, oppure se viene eseguita la funzione di comunicazione "STOP".
9. 10.
La CPU passa allo stato di funzionamento RUN se stato impostato un punto di arresto e viene eseguito il comando "ABBANDONA STATO DI ALT". La CPU passa allo stato di funzionamento ALT quando nel programma utente viene raggiunto un punto di arresto.
559
27.1.2
Nello stato STOP possono essere ricevuti anche i dati globali, ed possibile eseguire una comunicazione unilaterale passiva mediante SFB di comunicazione per collegamento progettati e mediante SFC di comunicazione per collegamenti non progettati.
Cancellazione totale
Nello stato di funzionamento STOP la CPU pu essere cancellata totalmente. La cancellazione totale pu avvenire manualmente tramite l'interruttore a chiave (MRES) oppure dal PG (p. es prima del caricamento del programma utente). Con la cancellazione totale la CPU riportata al suo "stato originale", ossia viene cancellato l'intero programma utente nella memoria di lavoro e nella memoria di caricamento RAM, nonch tutte le aree di operandi i parametri di sistema e i parametri della CPU e delle unit vengono resettati sui valori di default; i parametri MPI impostati prima della cancellazione totale vengono mantenuti quando inserita una memory card (Flash-EPROM), la CPU copia da questa il programma utente nella memoria di lavoro (compresi i parametri delle CPU e delle unit, qualora i dati di configurazione si trovino anch'essi sulla memory card).
Non vengono resettati il buffer di diagnostica, i parametri MPI, l'ora e il contatore del tempo di esercizio.
560
27.1.3
561
Nel nuovo avviamento automatico (avviamento a caldo) il selettore CRST/WRST non attivo.
Riavviamento
Dopo una mancanza di tensione in RUN e il successivo ritorno della medesima, le CPU S7-400 eseguono una routine di inizializzazione, e quindi automaticamente un riavviamento. Nel riavviamento il programma utente riprende dal punto in cui l'elaborazione era stata interrotta. Viene definito ciclo residuo la parte del programma utente che non era stata elaborata prima della mancanza di alimentazione. Il ciclo residuo pu contenere anche parti di programma su interrupt periodico e su interrupt di processo. Il riavviamento ammesso in linea di principio solo quando in STOP il programma utente non stato modificato (p. es. tramite caricamento di un blocco modificato) ), oppure quando non sia necessario per altri motivi un nuovo avviamento (avviamento a caldo). Occorre distinguere tra riavviamento manuale e automatico.
Riavviamento manuale
Un riavviamento manuale possibile solo se stata effettuata la relativa parametrizzazione nel set di parametri della CPU, e a seguito delle seguenti cause di STOP: il selettore dei modi operativi stato spostato da RUN a STOP STOP programmati dall'utente, STOP dopo il richiamo di OB non caricati lo stato STOP stato causato dal PG o dalla funzione di comunicazione.
Il riavviamento manuale pu essere attivato: con il selettore dei modi operativi Il selettore CRST/WRST deve trovarsi su WRST. con il menu dal PG oppure con funzioni di comunicazione (se il selettore dei modi operativi posizionato su RUN o RUN-P) se nel set di parametri della CPU il riavviamento manuale stato parametrizzato.
562
Riavviamento automatico
Il riavviamento automatico pu essere attivato con RETE ON, se: durante RETE OFF la CPU non era in posizione STOP o ALT il selettore dei modi operativi posizionato su RUN o RUN-P nel set dei parametri della CPU il riavviamento automatico stato parametrizzato dopo RETE ON.
563
Comportamento ritentivo nella memoria di lavoro (con memoria di caricamento EPROM e RAM)
EPROM CPU con Dati Blocchi nella memoria di caricamento DB nella memoria di lavoro batteria tampone Merker, temporizzatori, contatori Merker, temporizzatori, contatori Blocchi nella memoria di caricamento (Memory card oppure CPU DB nella memoria di lavoro Integrata) senza batteria tampone Merker, temporizzatori, contatori
(parametrizzazione ritentiva)
(parametrizzazione ritentiva)
(parametrizzazione ritentiva)
Nuovo avviamento in S7-300 Nuovo avviamento in S7-400 Avviamento a freddo in S7-300 Avviamento a freddo in S7-400 Riavviamento in S7-400
VC
VX
VC
---
VC
VC
---
Solo
nuovo avviamento
ammesso
564
Operazioni di avviamento
Le operazioni eseguite dalla CPU all'avviamento sono descritte nella seguente tabella.
Operazioni in ordine di elaborazione in nuovo avviamento (avviamento a caldo) X X 0 X X X X X X in avviamento a in riavviamento freddo
Cancellazione di U-Stack/B-Stack Cancellazione di merker, temporizzatori, contatori non ritentivi Cancellazione di tutti i merker, temporizzatori, contatori Cancellazione dell'immagine di processo delle uscite Resettaggio delle uscite delle unit d'ingresso/uscita Rifiuto di interrupt di processo Rifiuto di allarme di ritardo Rifiuto di allarme di diagnostica Aggiornamento lista di stato del sistema (SZL)
X 0 X X X X X X X X
0 0 0 parametrizzabile parametrizzabile 0 0 X X X
Analisi dei parametri delle unit, e trasferimento X alle unit dei parametri, o trasferimento dei valori di default Elaborazione dell'OB di avviamento corrispondente Elaborazione del ciclo residuo (parte del programma utente, la cui elaborazione non stata possibile a causa di RETE OFF) Aggiornamento dell'immagine di processo degli ingressi Abilitazione delle uscite digitali (annullamento del segnale OD) dopo passaggio allo stato RUN
X 0 significa significa viene eseguito non viene eseguito
X 0
X 0
X X
X X
X X
X X
565
Interruzione di un avviamento
Se durante l'avviamento subentrano degli errori, l'avviamento viene interrotto e la CPU passa o rimane in STOP. Se l'avviamento (avviamento a caldo) stato interrotto, esso deve essere ripetuto. Dopo linterruzione di un riavviamento possibile eseguire sia un nuovo avviamento (avviamento a caldo) che un riavviamento. Un avviamento (nuovo avviamento = avviamento a caldo, oppure riavviamento) non viene effettuato, oppure viene interrotto, quando il selettore dei modi operativi della CPU si trova posizionato su STOP stata richiesta una cancellazione totale stata inserita una memory card il cui programma applicativo non consentito per STEP 7 (per esempio, STEP5) nel funzionamento con processore singolo stata inserita pi di una CPU il programma utente contiene un OB sconosciuto alla CPU o bloccato dopo l'inserimento della tensione di alimentazione la CPU rileva che non tutte le unit riportate nella tabella di configurazione elaborata con STEP 7 sono effettivamente inserite (parametrizzazione non ammessa della differenza tra configurazione prefissata e quella attuale) si verificano degli errori durante l'analisi dei parametri dell'unit.
Inoltre, il riavviamento non viene effettuato, o viene interrotto, quando la CPU stata precedentemente cancellata totalmente (dopodich ammesso solo un nuovo avviamento (avviamento a caldo)) il limite del tempo di interruzione stato superato; il tempo di interruzione il tempo che trascorre dall'uscita da RUN fino all'elaborazione dell'OB di avviamento, incluso ciclo residuo la configurazione delle unit stata modificata (per esempio sostituzione di unit) in base alla parametrizzazione ammesso solo il nuovo avviamento (avviamento a caldo) in STOP sono stati caricati, cancellati oppure modificati dei blocchi.
566
Sequenza
La figura seguente riporta le attivit della CPU negli stati di funzionamento AVVIAMENTO e RUN.
567
Legenda della figura "Attivit della CPU negli stati di funzionamento AVVIAMENTO e RUN": 1. Tutte le uscite di periferia sono commutate in stato di sicurezza via hardware mediante le unit di periferia (valore di default ="0"). Ci a prescindere dal fatto che vengano utilizzate nel programma utente all'interno o fuori dell'area dell'immagine di processo. Impiegando unit di ingresso/uscita con propriet di valore sostitutivo possibile parametrizzare il comportamento delle uscite, p.es. mantenere l'ultimo valore. 2. indispensabile per l'elaborazione del ciclo residuo. 3. Un'immagine di processo attuale degli ingressi resa disponibile al primo richiamo anche per gli OB di allarme. 4. possibile definire lo stato delle uscite di periferia centrali e decentrate nel primo ciclo del programma utente con le misure seguenti : Utilizzando le unit di uscita parametrizzabili per poter emettere valori sostitutivi o per mantenere l'ultimo valore. In caso di riavviamento: Attivando il parametro di avviamento della CPU "Resetta uscite all' avviamento" per emettere uno "0" (corrisponde al valore preimpostato). Preassegnando le uscite nell'OB di avviamento (OB 100, OB 101, OB 102).
5. Nei sistemi S7-300 senza batteria tampone vengono conservate solo le aree DB progettate come ritentive.
568
27.1.4
Solo nello stato RUN possibile lo scambio attivo di dati tra le CPU tramite la comunicazione dei dati globali (tabella dei dati globali), tramite SFB di comunicazione per collegamenti progettati, e tramite SFC di comunicazione per collegamenti non progettati. La seguente tabella mostra esemplarmente quando possibile lo scambio dati nei diversi stati di funzionamento.
Tipo di comunicazione Stato di funzionamento della CPU 1 RUN RUN STOP STOP ALT Comunicazione unilaterale tramite SFB di comunicazione Comunicazione bilaterale tramite SFB di comunicazione Comunicazione unilaterale tramite SFC di comunicazione Comunicazione bilaterale tramite SFC di comunicazione
significa significa X significa
Stato di funzionamento della CPU 2 RUN STOP/ALT RUN STOP STOP/ALT RUN STOP/ALT RUN RUN STOP/ALT RUN
lo scambio dati possibile in entrambe le direzioni lo scambio dati possibile in una sola direzione lo scambio dati non possibile
569
27.1.5
570
27.2
27.2.1
571
27.2.2
Avvertenza I blocchi dati creati nel programma utente con l'ausilio di funzioni di sistema (p. es. SFC 22 CREAT_DB) vengono completamente memorizzati dalla CPU nella memoria di lavoro. Alcune CPU dispongono di aree gestite separatamente per codice e dati nella memoria di lavoro. In tali CPU, la grandezza e l'occupazione delle aree sono visualizzate alla scheda "Memoria" dello stato delle unit.
572
I programmi memorizzati nella RAM vanno perduti quando si esegue la cancellazione totale della CPU (MRES), o quando si estrae la CPU o la scheda di memoria RAM. I programmi memorizzati nelle schede di memoria EPROM non vanno perduti quando si esegue la cancellazione totale, e rimangono in memoria anche senza batteria tampone (trasporto, backup).
573
27.2.3
27.2.3.1
Memoria di sistema
Uso delle aree di memoria di sistema
La memoria di sistema delle CPU S7 suddivisa in aree di operandi (vedere la tabella seguente). Utilizzando le operazioni corrispondenti, indirizzare nel programma i dati direttamente nella rispettiva area di operandi.
Area di operandi Accesso tramite entit delle dimensioni seguenti: Notazione S7 Descrizione
All'inizio di ogni ciclo, la CPU legge gli ingressi dalle unit d'ingresso, e memorizza i valori nell'immagine di processo degli ingressi.
Byte di ingresso Parola di ingresso Doppia parola di ingresso Immagine di processo Uscita (bit) delle uscite
EB EW ED A Durante il ciclo, il programma calcola i valori per le uscite, e li memorizza nell'immagine di processo delle uscite. Alla fine del ciclo, la CPU scrive i valori calcolati nelle unit di uscita.
Byte di uscita Parola di uscita Doppia parola di uscita Merker Merker (bit)
AB AW AD M Quest'area mette a disposizione uno spazio di memoria per i risultati intermedi calcolati nel programma.
Byte di merker Parola di merker Doppia parola di merker Temporizzatori Contatori Temporizzatore (T) Contatore (Z)
MB MW MD T Z In quest'area sono disponibili alcuni temporizzatori. In quest'area sono disponibili alcuni contatori.
574
Area di operandi
Accesso tramite entit delle dimensioni seguenti: Blocco dati, aperto con "AUF DB":
Notazione S7
Descrizione
Blocco dati
DB
I blocchi dati memorizzano informazioni per il programma. Essi sono definibili in modo tale che tutti i blocchi di codice possano accedervi (DB globali), oppure possono essere assegnati a un determinato FB o SFB (DB di istanza).
Bit di dati Byte di dati Parola di dati Doppia parola di dati Blocco dati, aperto con "AUF DI": Bit di dati Byte di dati Parola di dati Doppia parola di dati Dati locali Bit di dati locali
DBX DBB DBW DBD DI DIX DIB DIW DID L Quest'area di memoria registra i dati temporanei di un blocco per tutta la durata dell'elaborazione di tale blocco. Anche l'L-Stack mette a disposizione una certa quantit di memoria per il trasferimento di parametri di blocco e la memorizzazione di eventi intermedi da segmenti KOP.
Byte di dati locali Parola di dati locali Doppia parola di dati locali Area della periferia: ingressi Byte di ingresso della periferia
LB LW LD PEB Le aree della periferia degli ingressi e delle uscite consentono un accesso diretto a unit di ingresso/uscita centrali e decentrate.
Parola di ingresso della periferia Doppia parola di ingresso della periferia Area della periferia: uscite Parola di uscita della periferia Doppia parola di uscita della periferia
PEW PED
575
Le aree di indirizzamento possibili per la CPU sono elencate nella seguente documentazione sulle CPU e nelle liste operazioni. Manuale "Sistema di automazione S7-300, Configurazione e dati della CPU". Manuale di riferimento "Sistema di automazione S7-400, M7-400, Caratteristiche delle unit modulari". Lista operazioni "Sistemi di automazione S7-300". Lista operazioni "Sistemi di automazione S7-400".
576
27.2.3.2
Dopo l'esecuzione dei task interni del sistema operativo, viene letto lo stato degli ingressi nell'immagine di processo degli ingressi (IPI). Quindi viene elaborato il programma utente, compresi i blocchi in esso richiamati. Il ciclo si conclude con la scrittura dell'immagine di processo delle uscite (IPU) nelle uscite delle unit. La lettura dell'immagine di processo degli ingressi e la scrittura dell'immagine di processo delle uscite nelle uscite delle unit vengono gestite autonomamente dal sistema operativo.
577
Dopo l'esecuzione dei task interni del sistema operativo, l'immagine di processo delle uscite (IPU) viene scritta nelle uscite delle unit e lo stato degli ingressi viene letto nell'immagine di processo degli ingressi (IPI). Segue l'elaborazione del programma utente con tutti i blocchi in esso richiamati. La scrittura dell'immagine di processo delle uscite nelle uscite delle unit e la lettura dell'immagine di processo degli ingressi vengono gestite autonomamente dal sistema operativo.
Avvertenza Nelle CPU S7-300 gli ingressi e le uscite non occupati dell'immagine di processo possono essere usati come aree di merker aggiuntive. I programmi che sfruttano questa possibilit sono eseguibili sulle CPU S7-400 di versioni precedenti (antecedenti a 4/99) solo alle condizioni seguenti:
le immagini di processo utilizzate come merker devono trovarsi oltre la "Dimensione immagine di processo" parametrizzata oppure devono trovarsi in un'immagine parziale di processo che non viene aggiornata n da parte del sistema, n tramite SFC 26/SFC 27 !
578
Quale immagine parziale di processo sia assegnata ad un determinato OB viene impostato per la CPU assieme alla priorit dell'OB..
579
Con le nuove CPU (a partire da 4/99) possibile riparametrizzare la reazione in caso di errori di accesso alla periferia, in modo che la CPU generi una registrazione nel buffer di diagnostica solo con EAP entrante o uscente e avvii l' OB 85 (prima del richiamo dell'OB 85 i bit d'ingresso errati vengono impostati a 0 e non vengono sovrascritti dal sistema operativo fino a quando l'EAP non uscente) oppure mostri il comportamento preimpostato dell'S7-300 (nessun richiamo dell'OB 85, i corrispondenti bit d'ingresso vengono impostati a 0 e non vengono sovrascritti dal sistema operativo fino all'eliminazione dell'errore) oppure mostri il comportamento preimpostato dell'S7-400 (richiamo dell'OB 85 ad ogni singolo accesso, i bit d'ingresso errati vengono impostati a 0 ad ogni accesso all'immagine di processo).
580
27.2.3.3
Con la creazione di blocchi organizzativi, si possono dichiarare variabili temporanee (TEMP), disponibili solo per la durata dell'elaborazione del blocco, e che vengono poi nuovamente sovrascritte. I dati locali devono essere inizializzati prima del primo accesso. Ogni blocco organizzativo richiede inoltre 20 byte di dati locali per le informazioni di avviamento. La CPU dispone di una memoria limitata per le variabili temporanee (dati locali) dei blocchi appena elaborati. Le dimensioni di quest'area di memoria, ovvero dello stack di dati locali, dipendono dalla CPU. Lo stack di dati locali viene suddiviso in parti uguali nelle classi di priorit (preimpostazione). Ci significa che ogni classe di priorit dispone della propria area di dati locali. Viene cos garantito che anche le classi di priorit pi alta e i relativi OB abbiano spazio per i loro dati locali. La figura seguente mostra l'assegnazione dei dati locali alle classi di priorit con un esempio nel quale l'OB 1 viene interrotto nell'L-Stack dall'OB 10, che viene a sua volta interrotto dall'OB 81.
581
Attenzione Nell'utilizzare le variabili temporanee, osservare che esse sono valide solo all'interno del rispettivo blocco e che sono disponibili come dati locali precedenti per ulteriori blocchi richiamati in tale blocco. In particolare non garantito che, dopo essere usciti dal blocco e averlo nuovamente richiamato, le variabili temporanee abbiano ancora i valori con i quali si concluso il precedente richiamo del blocco. Al richiamo di un blocco, in un primo tempo le variabili temporanee sono indeterminate per definizione e vanno inizializzate ogni volta che vengono utilizzate per la prima volta nel blocco. Tutte le variabili temporanee (TEMP) di un OB e dei blocchi subordinati vengono memorizzate nell'LStack. Se per l'elaborazione dei blocchi si utilizzano numerosi livelli di annidamento, pu verificarsi un overflow dell'L-Stack. Le CPU S7 passano alla stato di funzionamento "STOP" quando si superano le dimensioni ammesse per lo stack dei dati locali di un programma. Testare l'L-Stack (le variabili temporanee) nel programma. Tenere presente il fabbisogno di dati locali degli OB di errori di sincronismo.
27.2.3.4
Stack di interruzione
Se l'elaborazione del programma viene interrotta da un OB con priorit pi alta, il sistema operativo memorizza nello stack di interruzione (U-Stack) il contenuto corrente degli accumulatori e dei registri di indirizzi, nonch il numero e le dimensioni dei blocchi di dati aperti in U-Stack. Terminata l'elaborazione del nuovo OB, il sistema operativo carica le informazioni dall'U-Stack, e riprende l'elaborazione del blocco dal punto in cui stata interrotta. Nello stato di funzionamento STOP, con STEP 7 possibile leggere l'U-Stack. In questo modo, si pu riconoscere pi facilmente il motivo per cui la CPU entrata nello stato di funzionamento STOP.
582
27.2.3.5
Stack di blocchi
Se l'elaborazione di un blocco viene interrotta dal richiamo di un altro blocco o da una classe di priorit superiore (elaborazione di allarmi o interrupt e di errori), il B-Stack salva i dati seguenti: numero, tipo (OB, FB, FC, SFB, SFC) e indirizzo di ritorno del blocco interrotto numero di blocchi dati (dai registri DB e DI) aperti al momento dell'interruzione.
Grazie ai dati memorizzati, il programma utente pu ripartire dopo l'interruzione. Se la CPU si trova nello stato di funzionamento STOP, con STEP 7 si pu visualizzare il B-Stack nel PG. Il B-Stack riporta tutti i blocchi la cui elaborazione non era ancora terminata quando la CPU entrata in STOP. I blocchi vengono elencati nella sequenza in cui era stata avviata l'elaborazione (vedere la figura seguente).
583
27.2.3.6
Buffer di diagnostica
Il buffer di diagnostica visualizza i messaggi di diagnostica in ordine di apparizione: la prima voce contiene l'evento pi recente. Il numero di eventi visualizzati nel buffer di diagnostica dipende dall'unit e dal suo stato di funzionamento attuale. Gli eventi di diagnostica possono essere: errori in un'unit errore nel cablaggio di processo errori di sistema della CPU transizioni di stati di funzionamento CPU errori nel programma utente eventi di diagnostica personalizzati (mediante la funzione di sistema SFC 52).
27.2.3.7
584
Nella casella di testo sottostante vengono riportate informazioni pi dettagliate sull'evento selezionato nella finestra soprastante, quali ad esempio: il numero dell'evento la definizione dell'evento la commutazione dello stato di funzionamento determinato dall'evento di diagnostica l'indicazione del punto del blocco in cui si verificato l'errore (tipo e numero del blocco, indirizzo) evento entrante o uscente informazioni specifiche sull'evento.
Il pulsante "Guida all'evento" consente di visualizzare ulteriori informazioni sull'evento selezionato nella casella di riepilogo. Per chiarimenti relativi agli ID di evento, consultare la Guida di riferimento ai blocchi e alle funzioni di sistema (Rimandi alla descrizione dei linguaggi e Guida a blocchi e attributi di sistema).
585
27.2.3.8
Pertanto necessario impostare la CPU in modo tale che i dati seguenti vengano memorizzati nella RAM non volatile. dati memorizzati in un DB (necessario solo se anche il programma stato memorizzato in una EPROM della memoria di caricamento) valori di temporizzatori e contatori dati che sono stati memorizzati nei merker.
Per ogni CPU possibile bufferizzare un determinato numero di temporizzatori, contatori e merker. Inoltre, viene messo a disposizione un certo numero di byte in cui possono essere memorizzati i dati che si trovano nei DB. L'indirizzo MPI della CPU memorizzato nella NVRAM. In questo modo la CPU n grado di comunicare anche dopo una mancanza di corrente o una cancellazione totale.
586
27.2.3.9
587
588
27.3
27.3.1
Informazioni generali
Le operazioni AWL, FUP e KOP operano con oggetti di dati di dimensioni specifiche. Ad esempio, le operazioni logiche combinatorie di bit sono cos denominate perch lavorano con bit. Invece, le operazioni di trasferimento (FUP e KOP) utilizzano byte, parole e doppie parole. Il bit rappresenta una cifra binaria "0" o "1". Un byte consiste di 8 bit, una parola di 16 bit e una doppia parola di 32 bit. Anche le operazioni matematiche operano con byte, parole e doppie parole. In tali operandi di byte, parole e doppie parole, si possono codificare diversi formati numerici, come p. es. i numeri interi e i numeri in virgola mobile. Se si utilizza l'indirizzamento simbolico, si devono definire i simboli, e indicare un tipo di dati per ognuno di tali simboli (vedere la seguente tabella). Per ogni tipo di dati si pu scegliere tra formati e notazioni di numeri diversi. Il presente capitolo descrive solo alcune delle possibili notazioni di numeri e costanti. La tabella seguente riporta formati di numeri e costanti che non vengono spiegate nei dettagli.
Formato Esadecimale Binario Data IEC Tempo IEC Ora Carattere Dimensione in bit 8, 16 e 32 8, 16 e 32 16 32 32 8 Notazione numerica B#16#, W#16# e DW#16# 2# D# T# TOD# 'a'
589
27.3.2
16
2#1000_0001_0001_1000_ 1011_1011_0111_1111
L1
L L#1
L 1.234567e+13
590
Grandezza in bit 32
Opzioni di formato Tempo IEC a intervalli di 1 ms, numero intero con segno Data IEC in intevalli di 1 giorno tempo ad intervalli di 1 ms Simbolo ASCII
Esempio
L T#0D_1H_1M_0S_0MS
T#-24D_20H_31M_23S_648MS L TIME#0D_1H_1M_0S_0MS a T#24D_20H_31M_23S_647MS da D#1990-1-1 a D#2168-12-31 da TOD#0:0:0.0 a TOD#23:59:59.999 'A','B', ecc. L D#1994-3-15 L DATE#1994-3-15 L TOD#1:10:3.3 L TIME_OF_DAY#1:10:3.3 L 'E'
16
591
27.3.2.1
27.3.2.2
La figura seguente riporta il numero intero -500 000 in formato binario. In questo formato la forma negativa di un numero intero viene rappresentata come complemento a due della forma positiva del medesimo numero intero. Si pu ottenere il complemento a due di un numero intero invertendo gli stati di segnale di tutti i bit, e poi aggiungendo +1 al risultato.
592
27.3.2.3
La tabella seguente mostra la valenza dei singoli bit nel formato in virgola mobile .
Componente del numero Numero bit in virgola mobile Segno V Esponente e ... Esponente e Esponente e Mantissa m ... Mantissa m Mantissa m 31 30 ... 24 23 22 ... 1 0 2 elevato a 7 ... 2 elevato a 1 2 elevato a 0 2 elevato -1 ... 2 elevato a -22 2 elevato a -23 Valenza
593
Con i tre componenti V, e e m il valore di un numero rappresentato in questo formato definito dalla formula: Numero = 1,m 2 elevato a (e-bias) Dove: e: 1 e 254 Bias: bias = 127. Viene cos a mancare un segno extra per l'esponente . V: V = 0 per un numero positivo e V = 1 per un numero negativo.
La tabella seguente mostra lo stato di segnale dei bit nella parola di stato per i risultati delle operazioni con numeri in virgola mobile che non sono compresi nel campo valido .
Campo non valido per un risultato -1,175494E-38 < risultato < -1,401298E-45 (numero negativo) valore inferiore +1,401298E-45 < risultato < +1,175494E-38 (numero positivo) valore inferiore Risultato < -3,402823E+38 (numero negativo) overflow Risultato > 3,402823E+38 (numero positivo) overflow Nessun numero in virgola mobile valido oppure operazione non ammessa (valore di ingresso fuori del campo numerico valido) A1 0 0 0 1 1 A0 0 0 1 0 1 OV 1 1 1 1 1 OS 1 1 1 1 1
Attenzione nelle operazioni matematiche : Il risultato "Nessun numero in virgola mobile valido" si ottiene per esempio tentando di estrarre la radice quadrata di -2 . Nelle operazioni matematiche pertanto valutare sempre i bit di stato prima di continuare a calcolare con il risultato. Attenzione nel "Comando delle variabili": Se vengono memorizzati i valori per le operazioni in virgola mobile, p.es. nelle doppie parole di merker, questi valori possono essere modificati con configurazioni di bit a piacere. Tuttavia non ogni configurazione di bit un numero valido !
594
I numeri in virgola mobile in STEP 7 sono esatti fino al 6 decimale. Nell'introdurre costanti a virgola mobile pertanto possibile digitare solo max. 6 posizioni decimali.
Avvertenza La precisione di calcolo di 6 decimali significa p.es. che l'addizione di numero1 + numero2 = d come somma numero1, quando numero1 maggiore di numero2 10 elevato a y, con y>6: 100 000 000 + 1 = 100 000 000.
Il numero 10,0 nel primo esempio il risultato del formato in virgola mobile seguente (rappresentazione esadecimale: 4120 0000) : e = 2 elevato a 7 + 2 elevato a 1 = 130 m = 2 elevato a (-2) = 0,25 Cos risulta: (1 + m) 2 elevato a (e - bias) = 1.25 2 elevato a 3 = 10.0. [1,25 2 elevato a (130-127) = 1,25 2 elevato a 3 = 10,0]
595
596
27.3.2.4
Le figure seguenti riportano esempi di numeri decimali in codice binario nei formati seguenti. Formato parola
597
27.3.2.5
Se si opera con S5TIME, occorre immettere un valore di tempo nel campo da 0 a 999, ed indicare una base di tempo (vedere la seguente tabella). La base di tempo indica l'intervallo in cui un temporizzatore decrementa il valore di tempo di un'unit fino a raggiungere il valore "0". Base di tempo per S5TIME
Base di tempo 10 ms 100 ms 1s 10 s Codice binario per la base di tempo 00 01 10 11
laddove: w = base di tempo (ovvero, intervallo di tempo o risoluzione) xyz = valore di tempo nel formato BCD
L S5T#aH_bbM_ccS_dddMS laddove: a = ore, bb = minuti, cc = secondi, e ddd = millisecondi. La base di tempo viene selezionata automaticamente, e il valore arrotondato al numero inferiore successivo con questa base di tempo.
598
27.3.3
La seguente tabella descrive i tipi di dati composti. Si definiscono le strutture e gli array nella dichiarazione delle variabili del blocco di codice oppure in un blocco dati.
Tipo di dati DATE_AND_TIME DT STRING Descrizione Definisce un'area con 64 bit (8 byte). Questo tipo di dati salva in formato decimale in codice binario. Definisce un gruppo di max. 254 caratteri (tipo di dati CHAR). L'area standard riservata per una stringa di caratteri composta da 256 byte. Questo lo spazio necessario per la memorizzazione di 254 caratteri e di un'intestazione di 2 byte. Lo spazio di una stringa di caratteri pu essere ridotto definendo anche il numero di caratteri da memorizzare nella stringa stessa (per es: string[9] 'Siemens'). Definisce un raggruppamento multidimensionale di un tipo di dati (semplice o composto). Per esempio: "ARRAY [1..2,1..3] OF INT" definisce un array in formato 2 x 3 con numeri interi. L'accesso ai dati memorizzati in un array avviene tramite indice ("[2,2]"). In un array possono essere definite al massimo 6 dimensioni. L'indice pu essere un numero intero qualsiasi (da -32768 a 32767). Definisce un raggruppamento di tipi di dati in qualsiasi combinazione. Per esempio, possibile definire un array dalle strutture, oppure una struttura da altre strutture o array. Permette di strutturare grandi volumi di dati, e di semplificare l'immissione dei tipi di dati, quando devono essere creati dei blocchi dati o dichiarate variabili nella dichiarazione di variabili. In STEP 7 si possono associare tipi di dati semplici e composti per creare tipi di dati personalizzati, "definiti dall'utente" (UDT). I dati UDT hanno nomi propri, e possono quindi essere utilizzati pi volte. Determinano la struttura del DB di istanza associato, e rendono possibile la trasmissione di dati di istanza per richiami multipli di FB in un DB di istanza.
ARRAY
STRUCT
UDT
FB, SFB
599
27.3.3.1
Le seguenti funzioni standard IEC (International Electrotechnical Commission) sono disponibili per lavorare con il tipo di dati DATE_AND_TIME. Conversione della data e dell'ora nel formato DATE_AND_TIME FC3: D_TOD_DT Estrazione della data dal formato DATE_AND_TIME FC6: DT_DATE Estrazione del giorno settimanale dal formato DATE_AND_TIME FC7: DT_DAY Estrazione dell'ora dal formato DATE_AND_TIME FC8: DT_TOD La seguente tabella mostra il contenuto dei byte con l'informazione su data e ora. L'esempio riporta data e ora di gioved, 25 dicembre1993, ore 8:01 e 1,23 secondi.
Byte 0 1 2 3 4 5 6 7 (4MSB) 7 (4LSB) Contenuto Anno Mese Giorno Ora Minuto Secondo Due cifre pi significative di MSEC Cifre meno significative di MSEC Giorno settimanale 1 = Domenica 2 = Luned ... 7 = Sabato Esempio B#16#93 B#16#12 B#16#25 B#16#08 B#16#12 B#16#34 B#16#56 B#16#7_ B#16#_5
600
Il campo ammesso per il tipo di dati "DATE_AND_TIME" : min.: DT#1990-1-1-0:0:0.0 max.: DT#2089-12-31-23:59:59.999
Campo di valori ammesso Anno Mese Giorno Ora Minuto Secondi Millisecondi Giorno settimanale 1990 - 1999 2000 - 2089 1 - 12 1 - 31 00 - 23 00 - 59 00 - 59 0 - 999 Domenica - Sabato Codice BCD 90 - 99 00 - 89 01 - 12 01 - 31 00 - 23 00 - 59 00 - 59 000 - 999 1-7
601
27.3.3.2
La figura seguente mostra come gli array e le strutture definiscono i tipi di dati in un'area in modo da memorizzare le informazioni. Essi definiscono un campo oppure una struttura in un DB, oppure in una dichiarazione di variabili di un FB, OB, o FC.
602
27.3.3.3
Array
Un array combina un gruppo di dati (semplici o composti) in un'unit. Non possibile generare un array da altri array. Nella definizione di un array necessario: assegnare un nome allarray dichiarare larray con la parola chiave ARRAY indicare la grandezza dellarray tramite un indice. Specificare il primo e l'ultimo numero delle singole dimensioni (max. 6) nellarray. Specificare l'indice tra parentesi quadre: le dimensioni vanno separate con la virgola, il primo e l'ultimo numero della dimensione con i due punti. Il seguente indice, per esempio, definisce un campo tridimensionale: [1..5,--2..3,30..32] specificare il tipo dei dati da memorizzare nellarray.
Esempio 1
La figura seguente mostra un array composto da tre numeri interi. Tramite l'indice si accede ai dati memorizzati nellarray. L'indice il numero tra parentesi quadre. Per esempio, l'indice del secondo numero intero Temp_oper[2]. Un indice pu essere un numero intero qualsiasi (da -32768 a 32767), compresi i valori negativi. Larray nella figura seguente potrebbe anche essere definito come ARRAY [-1..1]. L'indice del primo numero intero sarebbe poi Temp_oper[-1], l'indice del secondo Temp_oper[0] e quello del terzo Temp_oper[1].
603
Esempio 2
Un array pu descrivere anche un gruppo di dati multidimensionale. La figura seguente mostra un array a due dimensioni.
L'accesso ai dati in un array multidimensionale avviene mediante indice. Nel presente esempio, il primo numero intero Temp_oper[1,1], il terzo Temp_oper[1,3], il quarto Temp_oper[2,1] e il sesto Temp_oper[2,3]. Per un array si possono definire al massimo sei dimensioni (sei indici). Per esempio, si pu definire la variabile Temp_oper come array a sei dimensioni nel seguente modo: ARRAY [1..3,1..2,1..3,1..4,1..3,1..4] L'indice del primo elemento in questo array Temp_oper[1,1,1,1,1,1]. L'indice dell'ultimo elemento Temp_oper[3,2,3,4,3,4].
Creazione di array
Gli array si definiscono dichiarando dei dati in un DB oppure nella dichiarazione delle variabili. Quando si definisce un array, si specifica la parola chiave (ARRAY), quindi la grandezza tra parentesi quadre: [valore limite inferiore..valore limite superiore] In un campo multidimensionale vengono specificati i valori aggiuntivi superiori e inferiori: le singole dimensioni vengono separate da una virgola. La figura seguente riporta la dichiarazione per la creazione di un array in formato 2 x 3.
604
Utilizzando larray dichiarato nella figura precedente, possibile specificare il valore iniziale per tutti e sei gli elementi nel seguente modo: 17, 23, -45, 556, 3342, 0. altres possibile impostare su 10 il valore iniziale dei sei elementi, indicando 6(10). Si potrebbero anche specificare determinati valori per i primi due elementi, e impostare i restanti quattro elementi su 0, specificando 17, 23, 4(0).
605
27.3.3.4
Strutture
Una struttura combina tipi di dati diversi (semplici e composti, compresi array e strutture) in un'unit. In tal modo possibile raggruppare i dati in base al controllo per il proprio processo, nonch trasmettere parametri come unit dati, e non solo come singoli elementi. La figura seguente indica una struttura composta da un numero intero, un byte, un carattere, un numero in virgola mobile e un valore booleano.
Una struttura pu essere annidata al massimo in 8 livelli (p. es. una struttura composta da strutture contenenti degli array).
606
607
27.3.3.5
Anzich inserire tutti i tipi di dati singolarmente o come struttura, occorre indicare come tipo di dati solo "UDT20". STEP 7 assegna automaticamente la relativa locazione di memoria.
Dopo averlo creato, possibile utilizzare un UDT come tipo di dati, p. es. quando per una variabile si dichiara il tipo di dati UDT200 in un DB (o nella dichiarazione di variabili di un FB). La figura seguente mostra un DB con le variabili Dati_di_processo_1 con il tipo di dati UDT200. Si specifica solo UDT200 e Dati_di_processo_1. I campi in corsivo vengono creati quando si converte il blocco DB.
608
Se si definisce una variabile come dato UDT, i valori da indicare nella creazione del dato UDT sono i valori iniziali delle variabili.
Avvertenza Se viene richiamato nelleditor di programma un blocco creato con il linguaggio di programmazione S7-SCL, contenente un parametro UDT, possono verificarsi conflitti di tipo. Evitare di richiamare blocchi creati in SCL se si utilizzano UDT.
609
610
27.3.4
Tipi di parametri
Oltre ai tipi di dati semplici e composti, si possono definire tipi di parametri per i parametri formali, che vengono trasferiti tra i blocchi. STEP 7 riconosce i seguenti tipi di parametri. TIMER o COUNTER: definisce un determinato temporizzatore o contatore da utilizzare durante l'elaborazione. Se si usa un parametro formale di tipo TIMER o COUNTER, il parametro attuale relativo deve essere un temporizzatore o un contatore, ovvero necessario specificare "T" o "Z", seguiti da un numero intero positivo. BLOCK: definisce un determinato blocco che deve essere utilizzato come ingresso o uscita. La dichiarazione del parametro stabilisce il tipo di blocco (FB, FC, DB, ecc.) da utilizzare. Se si usa un parametro formale di tipo BLOCK, come parametro attuale si specifica un indirizzo di blocco. Esempio: "FC101" (in caso di indirizzamento assoluto) oppure "valvola" (in caso di indirizzamento simbolico). POINTER: definisce l'indirizzo di una variabile. Un puntatore contiene un indirizzo anzich un valore. Se si usa un parametro formale di tipo POINTER, come parametro attuale si specifica l'indirizzo. In STEP 7 possibile specificare un puntatore nel formato puntatore o semplicemente come indirizzo (per esempio M50.0). Esempio per un formato puntatore per l'indirizzamento dei dati che iniziano in M 50.0: P#M50.0 ANY: viene utilizzato quando il tipo di dati del parametro attuale non noto, o quando possibile utilizzare un tipo di dati qualsiasi. Per maggiori informazioni sui parametri ANY consultare i paragrafi "Formato del tipo di parametri ANY oppure Impiego del tipo di parametri ANY".
Un tipo di parametro pu anche essere di un tipo di dato definito dall'utente (UDT). Per maggiori informazioni sugli UDT consultare il paragrafo "Impiego di tipi di dati definiti dall'utente per l'accesso ai dati".
Parametro TIMER Dimensione 2 byte Descrizione Definisce il temporizzatore che il programma utilizza nel blocco di codice richiamato. Formato: COUNTER 2 byte T1 Definisce il contatore che il programma utilizza nel blocco di codice richiamato. Formato: BLOCK_FB BLOCK_FC BLOCK_DB BLOCK_SDB POINTER ANY 2 byte Z10 Definisce il blocco che il programma utilizza nel blocco di codice richiamato. Formato: 6 byte 10 byte FC101 DB42
Definisce l'indirizzo. Formato: P#M50.0 Viene utilizzato quando il tipo di dati del parametro attuale sconosciuto. Formato: P#M50.0 BYTE 10 formato ANY con tipi di dati P#M100.0 WORD 5 L#1COUNTER 10 formato ANY
con tipi di parametri
611
27.3.4.1
Il numero consentito di blocchi, temporizzatori e contatori dipende dalla versione di CPU S7 impiegata. Per maggiori informazioni sul numero ammesso di temporizzatori e contatori, nonch sul numero massimo di blocchi disponibili, consultare i dati tecnici della rispettiva CPU nel manuale "Sistema di automazione S7-300, Configurazione e dati della CPU" e nel manuale di installazione "Sistemi di automazione S7-400, M7-400, Configurazione".
27.3.4.2
Il tipo di parametri POINTER salva le seguenti informazioni: numero DB (oppure 0 se i dati non vengono memorizzati in un DB ) Area di memoria nella CPU (la figura seguente riporta i codici esadecimali delle aree di memoria per il tipo di parametri POINTER)
Codice esadecimale b#16#81 b#16#82 b#16#83 b#16#84 b#16#85 b#16#86 b#16#87 Area di memoria E A M DB DI L V Descrizione Area di memoria degli ingressi Area di memoria delle uscite Area di memoria di merker Blocco dati Blocco dati di istanza Stack dei dati locali (L-Stack) Dati locali precedenti
612
STEP 7 offre il formato pointer: p#area_di_memoria Byte.Bit_Indirizzo. (Se il parametro formale stato dichiarato come tipo di parametri POINTER, occorre indicare solo l'area di memoria e l'indirizzo. STEP 7 converte quindi automaticamente il formato di queste digitazioni nel formato Pointer). I seguenti esempi mostrano come introdurre il tipo di parametri POINTER per i dati che iniziano con M50.0. P#M50.0 M50.0 (se il parametro formale stato dichiarato come POINTER)
27.3.4.3
613
L'offset 0.0 non ha alcuna influenza. L'uscita 10.0 viene calcolata da 8.7 (AR1) pi l'offset 1.1. Il risultato 10.0, e non gi 9.8; vedere formato del puntatore.
L'offset 0.0 non ha influenza. L'uscita 10.0 viene calcolata da 8.7 (AR2) pi 1.1 (offset). Il risultato 10.0, e non gi 9.8, vedere formato del puntatore.
614
27.3.4.4
L'informazione di area del puntatore non viene influenzata dalla funzione. L' FC rileva un overflow /underflow del puntatore. In questo caso il puntatore non viene modificato, e la variabile di uscita "RET_VAL" (gestione dell'errore possibile) viene impostata su "1" (fino alla successiva corretta elaborazione di FC 3). Ci avviene quando: 1. indirizzo bit selezionato e Inc_valore >7, oppure <-7 2. indirizzo bit e byte selezionato, e la modifica avrebbe per conseguenza un indirizzo byte "negativo" 3. indirizzo bit e byte selezionato, e la modifica avrebbe per conseguenza un indirizzo byte troppo grande per essere ammesso.
615
VAR_INPUT Bit_Byte : BOOL ; //0: indirizzo bit, 1: indirizzo byte Inc_valore : INT ; //incremento (se val. neg.=> decremento/se val. pos. incremento) END_VAR =>
VAR_IN_OUT Puntatore : DWORD ; //dei puntatori da modificare END_VAR VAR_TEMP Inc_valore1 : INT ; //valore intermedio incremento Puntatore1 : DWORD ; //valore intermedio puntatore Val_int : DWORD ; //variabile dausilio END_VAR BEGIN NETWORK TITLE = //Il blocco subisce variazioni che modificano le informazioni dellarea del puntatore //o conducono automaticamente a puntatori "negativi". SET R L T L T U ; //Imposta RLC a 1 e #RET_VAL; //resetta leccedenza #Puntatore; //trasferisce il valore intermedio #Puntatore1; //temporaneo puntatore #Inc_valore; //trasferisce il valore intermedio #Inc_valore1; //temporaneo incremento #Bit_Byte; //Se =1, allora operazione indirizzo byte
616
SPB L L <I S SPB L <I S SPB U SPB L L +D SPA neg: L L NEGI -D SPA Byte: L L <I SPB L L NEGI SLD -D SPA pos: SLD L +D test: T
Byte; //salta al calcolo dellindirizzo byte 7; //se il valore dellincremento > 7, #Inc_valore1; ; #RET_VAL; //allora imposta RET_VAL e Fine; //salta alla fine -7; //se il valore dellincremento < -7, ; #RET_VAL; //allora imposta RET_VAL e Fine; //salta alla fine L 1.3; //se bit 4 del valore = 1 (Inc_valore neg)
neg; //allora salta alla sottrazione dellindirizzo bit #Puntatore1; //carica linformazione di indirizzo del puntatore #Inc_valore1; //e somma lincremento ; test; //salta al test sul risultato negativo #Puntatore1; //carica linformazione di indirizzo del puntatore #Inc_valore1; //carica lincremento ; //nega il valore negativo, ; //sottrae il valore test; //e salta al test 0; //inizio della modifica dellindirizzo byte #Inc_valore1; //Se incremento >=0, allora ; pos; //salta alladdizione, altrimenti #Puntatore1; //carica linformazione di indirizzo del puntatore, #Inc_valore1; //carica lincremento, ; //nega il valore negativo, 3; //sposta lincremento di 3 posti a sinistra, ; //sottrae il valore test; //e salta al test 3; //sposta lincremento di 3 posti a sinistra #Puntatore1; //carica linformazione di indirizzo del puntatore ; //somma lincremento #Val_int; //trasferisce il risultato del calcolo in Val_int,
617
#RET_VAL; //negativo), allora imposta RET_VAL Fine; //e salta alla fine, #Val_int; //altrimenti trasferisce il risultato #Puntatore; //nel puntatore 0;
END_FUNCTION
618
27.3.4.5
Il fattore di ripetizione designa una quantit del tipo di dati contrassegnato che deve essere trasmessa mediante il tipo di parametri ANY. Si pu cos indicare un'area dati, e utilizzare anche array e strutture in collegamento con il tipo di parametri ANY. STEP 7 marca campi e strutture come numero di tipi di dati (tramite il fattore ripetizione). Se devono p. es. essere trasmesse 10 parole, occorre immettere nel fattore di ripetizione il valore 10 e nel tipo di dati il valore 04. L'indirizzo viene salvato nel formato Byte.Bit, laddove l'indirizzo byte viene salvato nei bit da 0 a 2 del byte 7, nei bit da 0 a 7 del byte 8, e nei bit da 3 a 7 del byte 9. L'indirizzo bit viene salvato nei bit da 0 a 2 del byte 9. Nel puntatore nullo del tipo dati NIL tutti i byte a partire dal byte 1 sono occupati da 0.
619
Le tabelle seguenti riportano la codifica dei tipi di dati o le aree di memoria per il tipo di parametri ANY.
Codifica dei tipi di dati Codice esadecimale b#16#00 b#16#01 b#16#02 b#16#03 b#16#04 b#16#05 b#16#06 b#16#07 b#16#08 b#16#09 b#16#0A b#16#0B b#16#0C b#16#0E b#16#13 Tipo di dati NIL BOOL BYTE CHAR WORD INT DWORD DINT REAL DATE TIME_OF_DAY (TOD) TIME S5TIME STRING Descrizione Puntatore nullo Bit Byte (8 bit) Caratteri (8 bit) Parole (16 bit) Numeri interi (16 bit) Parole (32 bit) Numeri interi (32 bit) Numeri in virgola mobile (32 bit) Data Ora Temporizzatore Tipo di dati S5TIME Stringa di caratteri
Codifica delle aree di memoria Codice esadecimale b#16#80 b#16#81 b#16#82 b#16#83 b#16#84 b#16#85 b#16#86 b#16#87 Area P E A M DB DI L V Descrizione Area di memoria della periferia Area di memoria degli ingressi Area di memoria delle uscite Area di memoria dei merker Blocco dati Blocco dati di istanza Stack dei dati locali (L-Stack) Dati locali precedenti
620
La seguente tabella riporta la codifica dei tipi di dati per il tipo di parametri ANY nei tipi di parametri.
Codice esadecimale b#16#17 b#16#18 b#16#19 b#16#1F b#16#1C b#16#1F Tipo di dati BLOCK_FB BLOCK_FC BLOCK_DB BLOCK_SDB COUNTER TIMER Descrizione Numero FB Numero FC Numero DB Numero SDB Numero dei contatori Numero dei temporizzatori
621
27.3.4.6
622
La figura seguente indica come possono essere trasmessi i dati ad una funzione con parametri di tipo ANY.
In questo esempio, FC 100 ha 3 parametri (in_par1, in_par2 e in_par3) che vengono definiti come tipo di dati ANY. quando richiama FC100, FB10 trasferisce in DB 10 (DB10.DBD40) un numero intero (la variabile statica Numero_di_giri), una parola (MW 100) e una parola doppia quando richiama FC100, FB11 trasferisce un campo di numeri reali (la variabile temporanea Termo), un valore booleano (M 1.3) e un temporizzatore (T2).
623
Per l'elemento Tipo di dati nel formato delle costanti, si possono indicare tutti i tipi di dati semplici e il tipo DATE_AND_TIME. Se i dati non sono di tipo BOOL, occorre indicare l'indirizzo di bit 0 (x.0). La tabella seguente mostra degli esempi di formato per l'indicazione delle aree di memoria che devono essere trasferite a un parametro ANY.
Parametri attuali p# M 50.0 BYTE 10 Descrizione Indica 10 byte nell'area di memoria merker: da MB50 a MB59. p# DB10.DBX5.0 S5TIME 3 Indica 3 unit di dati di tipo S5TIME memorizzati in DB10: da DB Byte 5 a DB Byte 10. p# A 10.0 BOOL 4 Indica 4 bit nell'area di memoria delle uscite: da A 10.0 a A 10.3.
: : Carica l'indirizzo iniziale del puntatore ANY in AR1-. Carica l'ID-sintassi e e la trasferisce nel puntatore ANY. Carica tipo di dati byte e lo trasferisce nel puntatore ANY. Carica 10 Byte e li trasferisce nel puntatore ANY. Sorgente DB22, DBB11
Carica in AR1 l'indirizzo iniziale del puntatore ANY. Carica l'ID-sintassi e la trasferisce nel puntatore ANY. -
LAR1 L
624
T L T L T L T L T
Carica tipo di dati byte e lo trasferisce nel puntatore ANY. Carica 10 byte e li trasferisce nel puntatore ANY. Destinazione DB33, DBB202
625
27.3.4.7
(1)
(1)
Tipo di Tipo di Tipo di Tipo di Tipo di parametro parametro parametro parametro parametro TIMER COUNTER BLOCK POINTER ANY (2)