Programmazione Avanzata Con Plc S7-1200_1500

  • Uploaded by: Sergio Martinez Jover
  • 0
  • 0
  • March 2021
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Programmazione Avanzata Con Plc S7-1200_1500 as PDF for free.

More details

  • Words: 51,492
  • Pages: 543
Loading documents preview...
GIOVANNI PIRRAGLIA

PROGRAMMAZIONE AVANZATA CON PLC S7-1200/1500, HMI, I/O ANALOGICI E OROLOGIO HW

EDITORE ULRICO HOEPLI MILANO

Copyright © Ulrico Hoepli Editore S.p.A. 2018 via Hoepli 5, 20121 Milano (Italy) tel. +39 02 864871 – fax +39 02 8052886 e-mail [email protected]

www.hoepli.it Tutti i diritti sono riservati a norma di legge e a norma delle convenzioni internazionali

L’Autore ringrazia la Società Siemens S.p.A. e in particolare l’ing. Raffaella Menconi, che ha collaborato in qualità di responsabile delle attività rivolte al mondo della scuola, la società TELMOTOR nella persona di Fiorenzo Morotti, per i materiali hardware e software forniti e per la documentazione impiegata nella realizzazione di questa pubblicazione. Le immagini presenti nel testo sono tratte da visualizzazioni dei programmi Siemens TIA Portal STEP 7 Basic e Professional e WinCC Comfort/Advanced ©.

A mia madre

INDICE

INTRODUZIONE

MODULO A – PROGRAMMAZIONE AVANZATA U.D. N.0 A.0.1 A.0.2 A.0.3 A.0.4 A.0.5

BASI DELLA PROGRAMMAZIONE Blocchi organizzativi Funzioni Blocchi funzionali e blocchi dati di istanza Blocchi dati globali Tecnica batch: sequenze di passi e transizioni

U.D. N.1 A.1.1 A.1.2 A.1.3

TECNICA BATCH CON ISTRUZIONE MOVE L’istruzione MOVE in sostituzione di SET/RESET Nastri trasportatori Garage pubblico (grafcet con automazioni separate e indipendenti) Impianto semaforico con attraversamento pedonale su una via di grande comunicazione (Diagrammi separati e transizioni verificate dall’attivazione delle fasi)

A.1.4

U.D. N.2 A.2.1 A.2.2

SELEZIONE MULTIPLA DI PROGETTI CON TIA PORTAL Caricamento di due progetti nella CPU con selettore di avvio Esempio: avvio di tre motori ed etichettatrice

Domande di riepilogo

MODULO B – APPROFONDIMENTI SOFTWARE E HARDWARE U.D. N.0 LE CPU S7-1500 B.0.1 Panoramica delle CPU (da manuale Siemens) B.0.2 CPU compatte: Simatic S7-1511C-1 PN B.0.3 Backup della progettazione con CPU S7-1200/1500 B.0.4 Ripristino della progettazione con CPU S7-1200/1500 B.0.5 Ripristino della progettazione con CPU S7-1200/1500 da memory card (SD Siemens) U.D. N.1 APPROFONDIMENTI SU TIA PORTAL B.1.1 Apertura di progetti di versioni precedenti del TIA Portal (solo CPU S7-1200) B.1.2 Procedura per l’apertura (solo CPU S7-1200) B.1.3 Apertura di progetti di versioni più recenti del TIA Portal B.1.4 Migrare un progetto (migrazione da Step 5 S7-300 a S7-1500) B.1.4.1 Migrare un progetto da Simatic Step 7 V5.4 o V5.5 a TIA Portal B.1.4.2 Migrazione da S7-300 a S7-1500 in TIA Portal B.1.4.3 Simatic STEP 7 classico e TIA Portal sullo stesso PC B.1.4.4 Simatic STEP 7 classico e TIA Portal su PC diversi B.1.4.5 Migrare un progetto da TIA Portal V10.5 (solo CPU S7-1200) B.1.4.6 Migrare un progetto dell’S7-200 (solo CPU S7-1200) B.1.5 Archiviare un progetto B.1.5.1 Disarchiviare un progetto esistente B.1.6 Biblioteca di progetto e biblioteca globale B.1.7 Progetti di riferimento (solo TIA Portal V13/14) B.1.7.1 Aprire un progetto editabile B.1.7.2 Aprire un progetto non editabile (solo TIA Portal V12/13/14) B.1.8 Utilizzo di progetti di riferimento (nozioni di base sui progetti di

B.1.8.1 B.1.8.2 B.1.8.3 B.1.9 B.1.9.1 B.1.10 B.1.11 B.1.12

riferimento) Apertura del progetto di riferimento Chiusura del progetto di riferimento Confronto di progetti di riferimento Caricamento di modifiche ai blocchi senza reinizializzazione Caricamento di blocchi in un dispositivo nello stato di funzionamento “RUN” Commutazione del linguaggio di programmazione Procedimento per la commutazione del linguaggio di programmazione Hardware: aggiornamento del firmware

U.D. N.2 APPROFONDIMENTI SU AREE DI MEMORIA, VARIABILI E COSTANTI B.2.1 Aree di memoria per S7-1500 B.2.2 Memoria necessaria negli stati di funzionamento B.2.3 Approfondimenti sulle variabili B.2.4 Approfondimenti sulle costanti B.2.5 Tabelle di controllo e forzamento B.2.5.1 Test del programma (controllo e modifica dei dati con tabella di controllo e forzamento) B.2.6 Stato per i programmi KOP B.2.7 Tipi di dati nelle diverse CPU S7-1200/1500 B.2.7.1 Disponibilità dei tipi di dati predefiniti per CPU S7-1200/1500 B.2.7.2 Confronto tra S7-1200 e S7-1500 B.2.8 Controllo di flusso del programma: meccanismo EN/ENO U.D. N.3 COMBINAZIONI LOGICHE, FUNZIONI MATEMATICHE E DI CONTROLLO DEL PROGRAMMA B.3.1 Parola di stato B.3.2 Combinazioni logiche di bit

B.3.3 B.3.4

Funzioni matematiche Istruzioni controllo del programma

Domande di riepilogo

MODULO C – OROLOGIO HARDWARE U.D. N.1 OROLOGIO HARDWARE C.1.1 Istruzioni di data e ora C.1.2 Le istruzioni di orologio e calendario C.1.3 Lettura della data dall’orologio hardware U.D. N.2 RILEVAZIONE E IMPOSTAZIONE DELL’ORA C.2.1 Configurazione dell’area per la lettura e l’impostazione dell’ora C.2.2 Esercizi con data e ora (con soluzione) C.2.3 Realizzare i programmi con accesso alle variabili data e ora Domande ed esercizi di riepilogo

MODULO D – SEGNALI I/O ANALOGICI U.D. N.1 SENSORI ANALOGICI D.1.1 Sensori di temperatura (cenni) D.1.1.1 Termistori D.1.1.2 Sensori a variazione di resistenza D.1.1.3 PT100 e PT1000 D.1.1.4 RTD e termistori a confronto D.1.1.5 Termocoppie D.1.1.6 Sensore integrato U.D. N.2 SEGNALI ANALOGICI D.2.1 Introduzione

D.2.2 D.2.3 D.2.4 D.2.5 D.2.6

Rappresentazione dei valori analogici Segnali analogici standardizzati Campi di misura Rappresentazione in memoria Segnali analogici nel PLC

U.D. N.3 I MODULI I/O ANALOGICI PER S7-1200 D.3.1 Caratteristiche tecniche degli ingressi analogici integrati nel PLC S7-1200 D.3.2 Caratteristiche tecniche dei moduli analogici SB e SM per PLC S7-1200 D.3.3 I moduli I/O analogici per S7-1511-C U.D. N.4 IMMISSIONE/EMISSIONE DEI VALORI ANALOGICI D.4.1 Hardware per gli ingressi e uscite analogiche del PLC S7-1200 D.4.2 Hardware per gli ingressi e uscite analogiche del PLC S7-1511C D.4.3 Normalizzazione di valori analogici D.4.4 La biblioteca globale ‘Scale_current’ D.4.5 Scaling dell’ingresso analogico D.4.6 Scaling dell’uscita analogica D.4.7 Esempio con modulo SM1234 ai 4 x 13 bit / AQ 2 x 14 bit Domande di riepilogo

MODULO E – ELETTROPNEUMATICA U.D. N.1 NOZIONI DI PNEUMATICA GENERALE E.1.1 Concetti generali E.1.2 Ciclo di lavoro U.D. N.2 ESERCIZI DI ELETTROPNEUMATICA CON PLC E.2.1 Impianto di trasporto su nastro per materiali in polvere con

E.2.2 E.2.3 E.2.4

sistema di dosaggio Nastri trasportatori con selettore di direzione Impianto per posizionamento e lavorazione su nastro Impianto di miscelazione liquidi con trasporto su nastro

Domande ed esercizi di riepilogo

MODULO F – PANNELLO OPERATORE (HMI) U.D. N.1 F.1.1 F.1.2 F.1.3 F.1.4 F.1.5

SERVIZIO E SUPERVISIONE CON WINCC Descrizione del sistema Struttura di una pagina L’hardware del pannello operatore (HMI) Inserimento del pannello KTP600 nel progetto Progettazione degli elementi delle pagine HMI

U.D. N.2 F.2.1 F.2.2 F.2.3 F.2.4 F.2.5

PROGETTI CON TIA PORTAL E WINCC Impianto di miscelazione di 4 liquidi (con sel. e istruz. MOV) Ingresso con combinazione Distributore per bevande calde Impasto prodotti da forno Etichettatrice con trasporto su nastro

Domande ed esercizi di riepilogo L’autore Informazioni sul Libro

INTRODUZIONE

Gli argomenti trattati nel testo fanno riferimento ai PLC Siemens della serie S7-1200 e S7-1500 e al software di programmazione TIA Portal V13/14. Con l’introduzione dei nuovi firmware V4.2 per S7-1200 e V2.1 per S7-1500 si è reso necessario un aggiornamento del software, per cui gli esercizi presenti nel testo sono stati realizzati con la versione V14. Questo volume è pensato come una naturale prosecuzione del testo Programmare con i nuovi PLC S7-1200 e S7-1500, al fine di fornire al lettore un quadro più completo delle funzionalità dei dispositivi Siemens; in questo nuovo testo, inoltre, sono trattati argomenti che non erano presenti nel libro precedente, come gli I/O analogici, l’orologio hardware e i pannelli operatori (HMI). La tecnica grafcet-ladder, oggetto di trattazione e sviluppo per la risoluzione degli esercizi/progetti di Programmare con i nuovi PLC S7-1200 e S7-1500 (di cui si consiglia comunque la lettura), farà da linea guida anche per i nuovi argomenti; inoltre, nei primi moduli saranno proposte variazioni alla sua struttura fondamentale. Con l’introduzione dei blocchi funzionali (programmazione strutturata) sarà apportata un’ulteriore modifica alla tecnica batch, che permetterà di creare progetti più complessi e allo stesso tempo maggiormente leggibili al programmatore. Le modifiche ai progetti saranno più veloci e nello stesso PLC sarà possibile caricare più di un progetto. Si è ritenuto opportuno introdurre anche un modulo completo con una parte teorica riguardante il comando di valvole e cilindri pneumatici e una parte di esercizi di elettropneumatica, in relazione alla nuova disciplina, la meccatronica, che studia il modo di fare interagire la meccanica, l’elettronica e l’informatica. Infine, è stato approfondito l’argomento riguardante le caratteristiche delle CPU S7-1200 e 1500 e il software TIA Portal, soprattutto in merito alle procedure di aggiornamento firmware, recupero progetti da CPU, progetti di

riferimento, tabelle di controllo e forzamento e gestione delle biblioteche. L’Autore

MODULO A

PROGRAMMAZIONE AVANZATA PREREQUISITI: Saper progettare in Ladder Saper risolvere semplici espressioni matematiche Saper utilizzare un personal computer OBIETTIVI: Saper utilizzare l’istruzione MOVE nei blocchi funzionali Saper realizzare progetti con blocchi DB, FC e FB

U.D. N.0 BASI DELLA PROGRAMMAZIONE A.0.1

BLOCCHI ORGANIZZATIVI

Gli elementi di base di un programma sono i blocchi organizzativi (OB), le funzioni (FC), i blocchi funzionali (FB) e i blocchi dati (DB). I blocchi organizzativi (OB) costituiscono l’interfaccia tra il sistema operativo del controllore (CPU) e il programma utente. Vengono richiamati dal sistema operativo e comandano le seguenti operazioni: Elaborazione ciclica del programma (ad es. OB1) Comportamento del controllore all’avvio Elaborazione del programma comandata da un allarme Trattamento degli errori Un progetto deve contenere almeno un blocco organizzativo per l’elaborazione ciclica del programma. Un OB viene richiamato da un evento di avvio (Figura 1 e 2). I singoli OB hanno priorità fisse, così, ad esempio, un OB82 per il trattamento di errori può interrompere l’OB1 ciclico.

Figura 1. Eventi di avvio nel sistema operativo e richiamo degli OB per PLC S7-1200

Figura 2. Eventi di avvio nel sistema operativo e richiami degli OB per PLC S7-1500

Dopo che si è verificato un evento di avvio sono possibili le seguenti reazioni: Se all’evento è assegnato un OB, l’evento avvia l’esecuzione dell’OB che gli è assegnato. Se la priorità dell’OB assegnato è maggiore di quella dell’OB già in esecuzione esso viene eseguito immediatamente (Interrupt). In caso contrario si attende prima l’esecuzione dell’OB con la priorità maggiore. Se all’evento non è assegnato un OB, si ha la reazione del sistema preimpostata. Le tabelle seguenti mostrano i diversi eventi di avvio per un PLC S7-1200 o S7-1500. Sono riportati anche i possibili numeri di OB e le reazioni del

sistema preimpostate che si producono in assenza del rispettivo blocco organizzativo (OB) nel controllore. Numeri di OB per diversi eventi di avvio per PLC S7-1200 Evento di avvio

Possibili numeri di OB

Reazione di sistema preimpostata

Avviamento

100, ≥ 123

Ignora

Programma ciclico

1, ≥ 123

Ignora

Allarme dall’orologio

10 ... 11

-

Allarme di aggiornamento

56

Ignora

Tempo di controllo del ciclo superato una volta

80

Ignora

Tempo di controllo del ciclo superato due volte

80

STOP

Allarme di diagnostica

82

Ignora

Numeri di OB per diversi eventi di avvio per PLC S7-1500 Evento di avvio

Possibili numeri di OB

Reazione di sistema preimpostata

Avviamento

100, ≥ 123

Ignora

Programma ciclico

1, ≥ 123

Ignora

Allarme dall’orologio

10 ... 17, ≥ 123

-

Allarme di aggiornamento

56

Ignora

Tempo di controllo del ciclo superato una volta

80

STOP

Allarme di diagnostica

82

Ignora

Errore di programmazione

121

STOP

Errore di accesso alla periferia

122

Ignora

Per questioni di visibilità di insieme e di riusabilità si consiglia di non

programmare tutte le funzioni nell’OB1. Il codice di programma perciò viene dislocato per la maggior parte in funzioni (FC) e blocchi funzionali (FB). Con una adeguata pianificazione si decide quali funzioni dislocare in FC e quali invece eseguire nell’OB1. La creazione di un programma utente è definita lineare quando si scrive l’intero programma nell’OB di ciclo (è indicato solo per programmi utente molto semplici) o strutturata quando si suddivide il compito di automazione complessivo in piccoli compiti parziali da risolvere con funzioni e blocchi funzionali. Per i programmi più complessi è sempre raccomandata una programmazione strutturata. Analizziamo ora cosa sono le funzioni e i blocchi funzionali.

A.0.2

FUNZIONI

Le funzioni (FC) sono blocchi di codice senza memoria. Le funzioni non sono provviste di memoria dati in cui salvare i valori dei parametri dei blocchi. Per questo motivo quando una funzione viene richiamata tutti i parametri di interfaccia devono essere collegati. Per il salvataggio permanente dei dati è necessario creare prima dei blocchi dati globali. Una funzione contiene un programma che viene sempre eseguito quando la funzione viene richiamata da un altro blocco di codice. Le funzioni possono essere, ad esempio, dei seguenti tipi: funzioni matematiche, che restituiscono un risultato in funzione di valori di ingresso; funzioni tecnologiche, come i controlli singoli con operazioni binarie. Una funzione può essere richiamata anche più volte in diversi punti all’interno di un programma.

A.0.3

BLOCCHI FUNZIONALI E BLOCCHI DATI DI ISTANZA

I blocchi funzionali sono blocchi di codice che memorizzano in modo permanente le proprie variabili di ingresso, di uscita, di transito e anche le variabili statiche in blocchi dati di istanza così da poterne disporre anche dopo l’elaborazione del blocco. Per questo motivo vengono definiti anche blocchi con “memoria”. I blocchi funzionali possono utilizzare anche variabili temporanee. Le

variabili temporanee, tuttavia, non vengono salvate nel DB di istanza ma restano a disposizione solo per un ciclo. I blocchi funzionali vengono utilizzati per quei compiti che non si possono realizzare con le funzioni: ogni volta che nei blocchi sono necessari temporizzatori e contatori; quando un’informazione deve essere salvata nel programma. Un esempio è la preselezione del modo di funzionamento con un tasto. I blocchi funzionali vengono eseguiti ogni volta che un blocco funzionale viene richiamato da un altro blocco di codice. Un blocco funzionale può anche essere richiamato più volte in punti diversi all’interno di un programma. Il richiamo di un blocco funzionale viene definito istanza. A ogni istanza di un blocco funzionale viene assegnata un’area di memoria che contiene i dati utilizzati dal blocco funzionale. Questa memoria viene messa a disposizione da blocchi dati creati automaticamente dal software. È anche possibile rendere disponibile la memoria per diverse istanze in un blocco dati come multiistanza. Le dimensioni massime dei blocchi dati di istanza variano in funzione della CPU. Le variabili dichiarate nel blocco funzionale determinano la struttura del blocco dati di istanza. I parametri di ingresso e di uscita di una funzione o di un blocco funzionale vengono definiti solo al momento di utilizzare il blocco attraverso variabili globali (ingressi/uscite). I blocchi fungono per così dire da “scatola nera” ed è possibile programmarli utilizzando delle variabili.

UTILIZZO DI UN UNICO FB CON PIÙ DB La figura seguente mostra un OB che richiama per tre volte un FB utilizzando ogni volta un diverso blocco dati. Questa struttura fa sì che un FB generico possa comandare diversi dispositivi simili, ad esempio dei motori, assegnando un diverso blocco dati di istanza a ciascun loro richiamo. Ogni DB di istanza memorizza i dati (velocità, tempo della rampa di salita e tempo di funzionamento complessivo) di un particolare dispositivo.

Figura 3. OB1 che richiama per tre volte un FB

A.0.4

BLOCCHI DATI GLOBALI

Diversamente dai blocchi di codice, i blocchi dati non contengono istruzioni ma fungono da memoria per i dati utente. I blocchi dati contengono quindi dati variabili che vengono utilizzati dal programma utente. La struttura dei blocchi dati globali si può definire liberamente. I blocchi dati globali contengono dati che possono essere utilizzati da tutti gli altri blocchi (figura 4). Ai blocchi dati di istanza deve accedere solo il rispettivo blocco funzionale. Le dimensioni massime dei blocchi dati variano in funzione della CPU.

Figura 4. Differenza tra DB globale e DB di istanza

A.0.5

TECNICA BATCH: SEQUENZE DI PASSI E TRANSIZIONI

La tecnica batch si basa sull’impiego di schemi funzionali sequenziali (grafcet) in cui il processo viene organizzato in una sequenza di passi e di transizioni. Gli schemi funzionali forniscono una vista generale del processo, facilitano la realizzazione del programma finale e rendono agevoli eventuali modifiche dovute a successive variazioni. La tecnica batch assegna a ciascuna fase un merker detto “merker di passo” e associa alle transizioni le condizioni logiche che si generano dall’evoluzione del processo che coincidono, con la chiusura o l’apertura dei contatti (corrispondenti ai pulsanti, alle fotocellule, ai temporizzatori, ai contatori, ecc.), inseriti nel ladder. Le azioni invece corrispondono all’abilitazione delle uscite (Qx.y) del PLC. Il merker di passo è il bit che rappresenta lo stato attivo o inattivo della fase del processo, ovvero è “1” se lo stato è attivo ed è “0” se lo stato è inattivo. L’esecuzione delle azioni, corrispondenti a ciascun passo del processo, dipende dallo stato del bit che rappresenta la fase attiva. L’evoluzione della macchina è così scandita dall’abilitazione in successione dello stato successivo: il superamento della transizione (“Condizione di transizione”), unito all’abilitazione del contatto relativo alla fase attiva (“Stato attuale”), determina il passaggio allo “Stato successivo”. Il blocco comandi invece gestisce le uscite sulla base degli stati attivi del

ciclo automatico. Nel modulo delle predisposizioni trovano posto tutte le operazioni di predisposizione dei timer, dei contatori, dei merker di stato (bit) rappresentanti gli stati iniziali del processo e di tutti quei parametri necessari per consentire l’avvio di un impianto.

Figura 5. Esempio di progetto in grafcet con merker di fase

U.D. N.1 TECNICA BATCH CON ISTRUZIONE MOVE A.1.1

L’ISTRUZIONE MOVE IN SOSTITUZIONE DI SET/RESET

L’utilizzo dell’istruzione MOVE per la sequenza delle fasi comporta la riscrittura dei segmenti, in quanto non è più possibile utilizzare SET e RESET. Vediamo i passi da seguire per realizzare il nuovo “CICLO AUTOMATICO” con l’istruzione MOVE. Il nuovo progetto viene realizzato seguendo la stessa linea dei precedenti: si divide il ladder in moduli OB di ciclo, OB di avvio, blocchi FB e blocchi FC. Prima si crea il ciclo delle transizioni, un blocco FB denominato “CicloTransizioni [FB2]”. Poi si definisce una variabile globale di tipo UInt, cioè un numero intero che identifica la fase. Al posto di SET e di RESET inseriamo MOVE: se la transizione è verificata viene eseguita l’istruzione MOVE che carica in memoria il valore della nuova fase attiva (fase_0-5 = 3), cancellando (cioè RESET) dalla memoria la fase non più attiva (vedi figura).

Nell’area di memoria “fase_0-5” (variabile interna del blocco FC) di tipo UInt viene “caricato” il valore 3 al posto del valore 2 precedentemente memorizzato. Il valore caricato in memoria rappresenta la fase attiva. Se ci sono più fasi attive tale tecnica presenta un problema: è necessario utilizzare più variabili in quanto è evidente che l’istruzione MOVE mantiene in memoria un solo valore. Per le fasi si definiscono ad esempio due variabili UInt (“fase_0-5” e “fase_6-8”) in modo da avere due variabili in cui memorizzare le fasi attive.

A.1.2

NASTRI TRASPORTATORI

Due nastri trasportatori devono convogliare dei pezzi dal magazzino A al magazzino B. Posizionando il pezzo in prossimità di SF0 (fotocellula presenza pezzo) e pigiando il pulsante di start (S1) parte il motore M1 (KM1). Raggiunto il finecorsa SF1 il motore M1 si spegne e si accende il motore M2 (KM2). Quando il pezzo raggiunge il finecorsa SF2 l’impianto torna alla fase iniziale ed è pronto per un altro start. Durante il funzionamento dei nastri è accesa la lampada HLY. S1 SF0 SF1 SF2 M1 M2 HLY

I0.0 I0.2 I0.3 I0.4 Q0.0 Q0.1 Q0.2

PULSANTE DI START FOTOCELLULA PRESENZA PEZZO FINECORSA NASTRO 1 FINECORSA NASTRO 2 MOTORE NASTRO 1 MOTORE NASTRO 2 LAMPADA SEGNALAZIONE

NOTA: in questo esercizio non sono utilizzate all’interno dei blocchi funzione variabili locali ma le variabili globali I e Q; inoltre viene definita una variabile (“fase”) di tipo UInt all’interno del blocco dati DB2.

1) BLOCCO “avvio [OB100]”

2) BLOCCO “Main [OB1]”

3) BLOCCO “Ciclo Automatico [FB1]”

4) BLOCCO “Comandi [FC1]”

A.1.3

GARAGE PUBBLICO (GRAFCET CON AUTOMAZIONI SEPARATE E INDIPENDENTI)

DESCRIZIONE: in un garage l’entrata e l’uscita sono regolati da due sbarre. Ambedue le sbarre vengono chiuse e aperte tramite un motore (rispettivamente M1 e M2). Prima di ogni sbarra vi è installato un fotosensore (LS1 per l’entrata e LS2 per l’uscita). Se nella fase di entrata di un’auto viene attivato il fotosensore LS1 la sbarra dell’entrata viene aperta tramite il motore (M1S); dopo cinque secondi il motore (M1G) richiude la sbarra. Contemporaneamente un contatore viene incrementato di una unità. Se nel garage sono presenti 100 veicoli, la sbarra

dell’entrata viene bloccata e il semaforo all’entrata diventa rosso (luce H1). La posizione della sbarra viene rilevata tramite due finecorsa: S2 (sbarra aperta) e S3 (sbarra chiusa). Nella fase di uscita la sbarra viene alzata (M2S) tramite il fotosensore LS2 e dopo cinque secondi si abbassa (M2G). Contemporaneamente il contatore viene decrementato di una unità. La sbarra viene rilevata tramite i finecorsa S4 (sbarra aperta) e S5 (sbarra chiusa). Con il pulsante S1 viene impostata la condizione iniziale di garage vuoto (contatore uguale a zero). L’esercizio proposto viene realizzato attraverso un grafcet che ha due automazioni separate (indipendenti) in quanto sia l’uscita che l’entrata di un veicolo dal garage possono verificarsi contemporaneamente e, poiché sono anche indipendenti, risultano necessari due grafcet e di conseguenza due fasi iniziali: 0 e 10.

S1 = pulsante di reset conta posti

M1 = motore sbarra di ingresso

S2 (SF2) = finecorsa sbarra aperta

M2 = motore sbarra di uscita

S3 (SF3) = finecorsa sbarra chiusa

H1 = luce semaforica rossa

S4 (SF4) = finecorsa sbarra aperta

H2 = luce semaforica verde

S5 (SF5) = finecorsa sbarra chiusa

LS1, LS3 = fotosensori di entrata LS2, LS4 = fotosensori di uscita

NOTA: LS3 e LS4 garantiscono che la sbarra si abbassi solo dopo che l’auto ha superato la linea di entrata o di uscita. Per risolvere il progetto in ladder utilizzando l’istruzione MOVE e la variabile di fase di tipo INT, è necessario utilizzare due variabili di fasi, in quanto le fasi 10, 11, 12 e 13 sono abilitate contemporaneamente alle fasi 0, 1, 2, 3 e 4. OSSERVAZIONI: in questo programma sono state utilizzate le costanti al posto dei valori numerici; tale procedura permette di modificare i valori costanti senza correggere ogni singolo segmento interessato, in quanto la

dichiarazione e l’impostazione del valore delle costanti avviene nella tabella delle variabili. Le costanti:

Le costanti “VALUE0”, “VALUE1” ... “VALUE7” saranno utilizzate (come si capirà di seguito) per impostare il bit di lampeggio delle lampade, mentre “garage pieno” indica il numero massimo di auto interne al parcheggio che per praticità nell’esercizio viene impostato uguale a “5” anziché “100”. Impostando VALUE = 1, si decide quale uscita far lampeggiare. Le variabili:

1) BLOCCO Predisposizioni (OB100)

2) BLOCCO Main (OB1)

3) Ciclo automatico TRANSIZIONI_0-4

4) Ciclo automatico TRANSIZIONI_10-13

5) COMANDI

6) TEMPORIZZATORI

7) CONTATORE

8) IMPOSTA FREQUENZA (ogni segmento imposta la frequenza per ciascuna bobina Q)

NOTA: scrivere tanti segmenti quante sono le uscite

9) L’istruzione FieldWrite imposta in ogni segmento il bit per ciascuna uscita lampeggiante

10) Il blocco “uscite_Q” imposta la bobine Q secondo i valori del blocco COMANDI e dei blocchi per il lampeggio (ripetere tanti segmenti quante sono le uscite Q)

A.1.4

IMPIANTO SEMAFORICO CON ATTRAVERSAMENTO PEDONALE SU UNA VIA DI GRANDE COMUNICAZIONE (DIAGRAMMI SEPARATI E TRANSIZIONI VERIFICATE DALL’ATTIVAZIONE DELLE FASI)

Il sistema semaforico prevede due strade: quella di grande comunicazione (“semaforo_1”), che ha inizialmente il verde, e quella con “semaforo_2” che invece permette il passaggio delle auto solo se i rilevatori presenza continua auto (“c1”, “c2”) sono attivati. È presente inoltre un pulsante “p”, per richiesta pedonale. Il ciclo di funzionamento dell’incrocio semaforico è il seguente: all’inizio del ciclo semaforico il semaforo_1 ha il verde e il semaforo_2 ha il rosso; se il verde del semaforo_1 è stato presente per almeno 4 minuti, si attiva per il semaforo_1/2 il ciclo “verde ‐ giallo ‐ rosso ‐ verde”; se entrambi i rilevatori c1 e c2 del semaforo_2 segnalano la presenza continua di auto (coda al semaforo_2), si attiva immediatamente per il semaforo_1/2 il ciclo “verde ‐ giallo ‐ rosso ‐ verde”; se vi è la richiesta da parte di un pedone si attiva dopo 50 secondi per il semaforo_1/2 il ciclo “verde ‐ giallo ‐ rosso ‐ verde”; se il rilevatore c1 segnala la presenza continua di un’auto si attiva dopo 60 secondi per il semaforo_1/2 il ciclo “verde ‐ giallo ‐ rosso ‐ verde”; il giallo dura 5 secondi mentre il verde del semaforo_2 dura 30 secondi.

SEGNALI DI INGRESSO

PLC

p

richiesta pedonale

I0.0

c1

rilevatore presenza continua di un’auto

I0.1

c2

rilevatori presenza continua di più auto (coda al semaforo)

I0.2

SEGNALI DI USCITA

PLC

V_1

luce verde semaforo_1

Q0.0

G_1

luce gialla semaforo_1

Q0.1

R_1

luce rossa semaforo_1

Q0.2

V_2

luce verde semaforo_2

Q0.3

G_2

luce gialla semaforo_2

Q0.4

R_2

luce rossa semaforo_2

Q0.5

FASI

PLC

F0

Fase 0

0

F1

Fase 1

1

F2

Fase 2

2

F3

Fase 3

3

F4

Fase 4

4

F5

Fase 5

5

F6

Fase 6

6

F7

Fase 7

7

F8

Fase 8

8

OSSERVAZIONI: alcune transizioni nel grafcet sono verificate utilizzando il bit del merker di passo.

BLOCCO Main [OB1]

NOTA: i blocchi funzionali possono essere scritti in ladder seguendo la tecnica utilizzata nell’esercizio precedente.

U.D. N.2 SELEZIONE MULTIPLA DI PROGETTI CON TIA PORTAL A.2.1

CARICAMENTO DI DUE PROGETTI NELLA CPU CON SELETTORE DI AVVIO

Supponendo di voler effettuare due tipi di lavorazioni differenti con uno stesso impianto e uno stesso PLC, realizziamo un progetto che permetta all’operatore di passare dall’uno all’altro semplicemente azionando un commutatore collegato a un ingresso del PLC. Per ogni processo lavorativo vengono realizzati i moduli “Ciclo Automatico”, “Comandi”, “Temporizzatori” e “Contatori”, mentre “Predisposizioni” e “Emergenze” sono realizzate in un’unica soluzione per entrambi. Sarà previsto che non sarà possibile commutare sull’altro se non dopo aver arrestato (STOP) il PLC. È previsto un pulsante di reset (NC) per annullare la prenotazione di entrambe le lavorazioni. Ogni funzione (FC o FB) sarà abilitata da un contatto normalmente aperto che si chiuderà attraverso un selettore su comando dell’operatore. Nell’esempio sono stati scelti due processi già studiati in precedenza.

A.2.2

ESEMPIO: AVVIO DI TRE MOTORI ED ETICHETTATRICE

1° PROGETTO: AVVIO DI TRE MOTORI A INTERVALLI SEPARATI A partire da un istante iniziale successivo alla pressione di un pulsante di start S1 si avviano i motori M1 e M3. Trascorsi 5 secondi, il motore M3 si spegne e il motore M2 si accende. Dopo aver premuto il pulsante S1, il motore M1 si spegne. Dopo altri 15 secondi, l’automazione si ripete come nelle fasi precedentemente descritte.

È previsto un pulsante di STOP (NC) S2 che riporta il sistema alla condizione iniziale (Fase 0).

2° PROGETTO: ETICHETTATRICE CON TRASPORTO SU NASTRO

Un impianto deve trasportare delle bottiglie su nastro dalla postazione di lavoro “A” alla postazione di lavoro “B” per effettuare l’etichettatura, la

quale dura un tempo di 5 secondi; al termine la bottiglia ritorna alla postazione iniziale. Una lampada HL1 (GR) segnala che l’impianto è acceso, mentre una lampada HL2 (RD), segnala che è in funzione. L’interruttore S4 avvia l’impianto. Quando l’operatore posiziona la bottiglia in prossimità della fotocellula SF1 e viene azionato il pulsante START si avvia il nastro tramite il motore M1 (KM1); raggiunta la fotocellula SF2 si avvia anche il motore M2 (KM3) e, dopo tre secondi, si spegne il motore M1. Raggiunta la fotocellula SF3 anche il motore M2 si ferma e rimane in questo stato per cinque secondi (tempo di etichettatura), dopodiché inverte la marcia (KM4). Raggiunta la fotocellula SF2 si avvia la retromarcia del motore M1 (KM2), mentre il motore M2 dopo tre secondi si ferma. Raggiunta la fotocellula SF1 anche il motore M1 si spegne. Il movimento dei nastri trasportatori viene segnalato dalla lampada HL3 (YL). In qualsiasi momento è possibile arrestare il processo premendo il pulsante di STOP (N.C.) o commutare l’interruttore S4.

I due progetti vengono riuniti in TIA Portal in un solo programma

(software) che può essere caricato nel PLC S7-1200/1500. Tramite un selettore (ovvero i due pulsanti I1.1 e I1.2) viene abilitato solo uno dei due progetti per volta. Ciò permette di impostare più programmi in uno stesso PLC e di effettuare la scelta utilizzando pulsanti presenti sull’impianto. Per le fasi dei progetti è utilizzata la variabile “fase” di tipo intero (UInt) in sostituzione dei meker di fase M0.0, M0.1, M0.2, … La variabile “fase” è definita all’interno del BLOCCO DATI “_[DB5]”.

Il blocco di avvio OB100

Il MAIN

I segmenti del MAIN

ANALISI DELLE FUNZIONI “FC” E DEI BLOCCHI FUNZIONALI “FB”

FB2 (ciclo-Transizioni etichettatrice) – Solo il primo segmento

FB3 (ciclo-TRANSIZIONI motori) – Solo il primo segmento

FC6 (comandi Etichettatrice) – Solo il primo segmento

FC7 (comandi 3 motori) – Solo il primo segmento

FC2 (Avvio_T_ON_etichettatrice)

FC8 (Avvio_T_ON_motori)

FC5 (STOP_EMERGENZE)

I blocchi seguenti sono gli stessi degli esercizi precedenti: • FC4 (Frequenza_lampeggio) • FC1 (set_bit_lampeggio)

DOMANDE DI RIEPILOGO 1) Quali sono gli elementi di base di un programma in TIA Portal? 2) Un progetto deve contenere almeno un blocco organizzativo per l’elaborazione ciclica del programma? 3) Le funzioni sono blocchi ciclici?

4) Definire la programmazione strutturata. 5) Che cosa sono le istanze? 6) I blocchi dati possono essere definiti di istanza e globali. Perché? 7) È possibile assegnare più dati istanza a una stessa funzione? 8) Quando può essere utile/necessario utilizzare le multiistanze? 9) Nella tecnica batch si utilizza l’istruzione MOVE al posto di SET/RESET. Perché? 10) Definire una variabile di fase dipende dalla complessità del progetto? 11) Le variabili globali si possono utilizzare nei blocchi funzionali? 12) Le costanti possono essere definite in TIA Portal allo stesso modo delle variabili? 13) Quali sono i vantaggi nell’utilizzo delle costanti in un progetto? 14) L’uso delle variabili interne alle funzioni (o blocchi funzionali) crea un vantaggio al programmatore? Perché? 15) Creare un progetto in cui sia possibile far scorrere su tre nastri trasportatori delle bottiglie per le quali sia prevista una fase di riempimento di liquido sul primo nastro, una di inserimento del tappo sul secondo e una di etichettatura sul terzo. L’operatore, semplicemente utilizzando un pulsante di selezione, deve avere la possibilità di impostare un secondo processo produttivo in cui sia inserita una diversa quantità di liquido ed eliminata la fase di etichettatura.

MODULO B

APPROFONDIMENTI SOFTWARE E HARDWARE PREREQUISITI: Saper utilizzare TIA Portal Saper utilizzare un personal computer OBIETTIVI: Saper gestire le CPU S7-1200 e S7-1500 per backup e ripristino dei progetti Saper gestire le aree di memoria del PLC

U.D. N.0 LE CPU S7-1500 Che cos’è il sistema di automazione SIMATIC S7-1500? Il sistema di automazione SIMATIC S7-1500 è l’evoluzione dei sistemi di automazione SIMATIC S7-300 e S7-400. Esso offre la flessibilità e la potenza necessarie per un’ampia gamma di applicazioni di comando nei settori della meccanica e dell’impiantistica. Con l’impiego di CPU S7-1500 fail-safe si realizzano applicazioni di sicurezza. Per la progettazione e la programmazione del programma di sicurezza si utilizza TIA Portal, esattamente come per la progettazione e la programmazione delle CPU standard. Il sistema di automazione S7-1500 è omologato per il grado di protezione IP20 e predisposto per il montaggio in un armadio elettrico. CONFIGURAZIONE È costituito da: CPU, Moduli di periferia digitali e analogici, Moduli di comunicazione (PROFI-NET/Ethernet, PROFIBUS, punto a punto), Moduli tecnologici (conteggio, rilevamento della posizione), Alimentazione di sistema. Configurazione hardware massima del sistema di automazione S7-1500: 32 moduli che occupano i posti connettore da 0 a 31. ALIMENTATORI DI SISTEMA E DI CARICO Sul sistema di automazione S7-1500 si distinguono due tipi di alimentatori di corrente: Alimentatore di sistema (PS) Alimentatore di carico (PM) Alimentatore di sistema (PS) L’alimentatore di sistema dispone di collegamento al bus backplane (connettore a U) e fornisce esclusivamente la tensione di sistema interna. La tensione di sistema alimenta i moduli e i LED. L’alimentatore di sistema può anche alimentare la CPU o i moduli di interfaccia nel caso in cui questi non

siano collegati direttamente alla tensione di carico di DC 24 V. Modelli: PS 25W 24V DC: alimentazione DC 24 V e potenza di 25 W PS 60W 24/48/60V DC: alimentazione DC 24/48/60 V e potenza di 60 W PS 60W 120/230V AC/DC: alimentazione AC 120/230 V e potenza di 60 W Alimentatore di carico (PM) L’alimentatore di carico fornisce corrente ai circuiti di ingresso e di uscita dei moduli ed eventualmente dei sensori e degli attuatori dell’impianto. Se il bus backplane viene alimentato in tensione tramite un alimentatore di sistema, l’alimentazione DC 24 V della CPU/del modulo di interfaccia è opzionale. Gli alimentatori di carico possono essere installati sulla guida profilata per l’S7-1500 ma non dispongono di collegamento al bus backplane. Modelli: PM 70W 120/230 V AC: alimentazione AC 120/230 V e potenza di 70 W PM 190W 120/230 V AC: alimentazione AC 120/230 V e potenza di 190 W

In via opzionale è possibile utilizzare fino a 2 alimentatori di sistema (PS) sui posti connettore a destra della CPU/del modulo di interfaccia (segmenti power). Il numero degli alimentatori di carico non è predefinito. Utilizzo di alimentatori di sistema Se la potenza fornita dalla CPU/dal modulo di interfaccia al bus backplane

non è sufficiente per alimentare tutti i moduli collegati è necessario utilizzare degli alimentatori di sistema (PS). Inoltre, si possono utilizzare alimentatori di sistema con AC 120/230V e alimentare la CPU e il modulo di interfaccia attraverso il bus backplane. In questo caso non è necessario alimentare la CPU a DC 24V. Per gli alimentatori di sistema sono disponibili i seguenti posti connettore: Un alimentatore di sistema sul posto connettore 0 a sinistra della CPU/del modulo di interfaccia; Fino a 2 alimentatori di sistema sui posti connettore a destra della CPU/del modulo di interfaccia (segmenti power).

B.0.1

PANORAMICA DELLE CPU (DA MANUALE SIEMENS)

B.0.2

CPU COMPATTE: SIMATIC S7-1511C-1 PN

Le CPU compatte sono indicate per le applicazioni da piccole a medie e dispongono sia di una periferia onboard analogica e digitale integrata sia di funzioni tecnologiche integrate. Esse supportano funzioni tecnologiche quali ad esempio conteggio veloce e generatori di impulsi (PWM, PTO e uscita in frequenza). Grazie alle funzioni tecnologiche supportate, esse sono la soluzione ideale per il comando di pompe, ventole, miscelatori, nastri trasportatori, piattaforme aeree, comandi gate, impiantistica per edifici, assi sincronizzati, ecc. L’hardware della CPU 1511C-1 PN comprende una CPU, una periferia

onboard analogica (X10) e una periferia onboard digitale (X11). Nella progettazione in TIA Portal la CPU compatta occupa un solo posto connettore (slot 1). Nella CPU compatta sono integrate le funzioni tecnologiche di conteggio veloce, misura e rilevamento posizione nonché i generatori di impulsi (PWM/uscita di frequenza/PTO) per Motion Control. La funzionalità Motion Control supporta assi di velocità, assi di posizionamento, assi sincroni, encoder esterni, camme, tracce camma, tastatori di misura e blocchi PLC open per la programmazione della funzionalità Motion Control attraverso degli oggetti tecnologici. La funzionalità Trace supporta la ricerca degli errori e l’ottimizzazione del programma utente, in particolare nelle applicazioni Motion Control o di regolazione. Diagnostica di sistema integrata – Il sistema crea automaticamente i messaggi della diagnostica di sistema e li visualizza tramite un PG/PC, un dispositivo HMI, il server web o il display integrato. La diagnostica di sistema è disponibile anche quando la CPU si trova nello stato di funzionamento STOP. Sicurezza integrata: La protezione dalla copia collega i blocchi utente con il numero di serie della SIMATIC Memory Card o con quello della CPU. I programmi utente non sono eseguibili senza la rispettiva SIMATIC Memory Card o CPU. La protezione del know-how protegge i blocchi utente da accessi e modifiche non autorizzati. La protezione di accesso avanzata offre un elevato grado di protezione da modifiche non autorizzate della progettazione. Attraverso vari livelli di autorizzazione si assegnano a diversi gruppi di utenti diritti separati. Il sistema protegge dalla manipolazione i dati trasmessi alla CPU. La CPU riconosce i dati di engineering errati o manomessi. L’hardware della CPU 1511C-1 PN comprende una CPU, una periferia onboard analogica (X10) e una periferia onboard digitale (X11). Nella progettazione in TIA Portal la CPU compatta occupa un solo posto connettore (slot 1).

A) La periferia onboard analogica presenta le seguenti caratteristiche tecniche: Ingressi analogici – 5 ingressi analogici – Risoluzione a 16 bit con segno – Tipo di misura tensione canale per canale impostabile per i canali da 0 a 3 – Tipo di misura corrente canale per canale impostabile per i canali da 0 a 3 – Tipo di misura resistenza impostabile per il canale 4 – Tipo di misura termoresistenza impostabile per il canale 4 – Diagnostica parametrizzabile (per canale) – Interrupt di processo in caso di superamento del valore limite impostabile per ogni canale (due valori limite superiori e due inferiori ciascuno) – Supporto dello stato del valore (Quality Information, QI) Uscite analogiche – 2 uscite analogiche – Risoluzione: 16 bit con segno – Uscita di tensione selezionabile canale per canale – Uscita di corrente selezionabile canale per canale – Diagnostica parametrizzabile (per canale) – Supporto dello stato del valore (Quality Information, QI) La periferia onboard analogica supporta la modifica della parametrizzazione in RUN B) La periferia onboard digitale presenta le seguenti caratteristiche tecniche: Ingressi digitali – 16 ingressi digitali veloci per segnali fino a max 100 kHz; gli ingressi si possono utilizzare sia come ingressi standard che come ingressi per funzioni tecnologiche – Tensione nominale di ingresso DC 24V – Adatti per commutatori e interruttori di prossimità a 2/3/4 fili – Diagnostica parametrizzabile

– Interrupt di processo impostabile (per canale) – Supporto dello stato del valore (Quality Information, QI) Uscite digitali – 16 uscite digitali, di cui 8 utilizzabili come uscite veloci per le funzioni tecnologiche; le uscite possono essere utilizzate sia come uscite standard che come uscite per le funzioni tecnologiche – Tensione nominale di uscita DC 24 V – Corrente nominale di uscita: – come uscita per il funzionamento standard 0,5 A per canale – come uscita per le funzioni tecnologiche. In questo caso è possibile scegliere tra una corrente di uscita fino a 0,5 A, con una frequenza di uscita fino a 10 kHz (dipendente dal carico) e una corrente di uscita ridotta di max 0,1 A con una frequenza di uscita incrementata fino a 100 kHz – Si addice, ad es., per valvole elettromagnetiche, teleruttori in continua e lampade di segnalazione, nonché per la trasmissione di segnali o per valvole proporzionali – Diagnostica parametrizzabile – Supporto dello stato del valore (Quality Information, QI) Le uscite digitali dispongono di blocchi driver con uscite Push-Pull. In base al principio i blocchi driver di questo tipo contengono sempre diodi parassiti che in caso di disinserzione di carichi induttivi agiscono come diodi di ricircolo. La tensione di disinserzione viene di conseguenza limitata a -0,8 V. La periferia onboard digitale supporta la funzione di modifica della parametrizzazione in RUN. Una parte delle funzioni tecnologiche può essere parametrizzata anche durante il funzionamento RUN della CPU. Utilizzo contemporaneo delle funzioni tecnologiche e delle funzioni standard Se l’hardware lo consente le funzioni tecnologiche e le funzioni standard possono essere usate contemporaneamente. Ad esempio, gli ingressi digitali non occupati dalle funzioni tecnologiche Conteggio, Misura, Rilevamento posizione o PTO, possono essere utilizzati come DI standard.

NOTA: le CPU con firmware V2.0 presentano nuove funzioni rispetto alla versione firmware V1.8.

B.0.3

BACKUP DELLA PROGETTAZIONE CON CPU S71200/1500

Effettuando copie di backup è possibile ripristinare lo stato precedente se le modifiche dovessero portare a comportamenti indesiderati. Le CPU offrono diverse opzioni per il backup e il ripristino della configurazione hardware e del software.

A) Carica backup del dispositivo online È possibile che vengano effettuate modifiche all’impianto come l’aggiunta di nuovi dispositivi, la sostituzione di dispositivi esistenti o l’adeguamento del programma utente. Se le modifiche non fossero adatte è possibile ripristinare una versione precedente dell’impianto. Prima di caricare nella CPU una progettazione modificata, creare con l’opzione “Carica backup del dispositivo online” un backup completo della versione attuale del dispositivo.

B) Caricamento del dispositivo (software) Tale opzione permette il caricamento dei dati di progetto software dalla CPU in un progetto esistente.

C) Carica dispositivo come nuova stazione (hardware e software) Tale opzione permette di caricare i dati hardware e software del dispositivo in un nuovo progetto. Non è disponibile per CPU S7-1200 con firmware V3 o inferiore. Particolarità nel backup dei valori attuali Il tipo di backup “Carica backup del dispositivo online” salva i valori attuali delle variabili impostate con ritenzione. Per assicurare la coerenza dei dati a ritenzione occorre disattivare durante il backup tutti gli accessi in scrittura ai

dati a ritenzione. Come è noto, al cambio di stato di funzionamento da STOP a RUN i valori attuali dei dati non a ritenzione vengono resettati ai rispettivi valori di avvio. Con il backup della CPU vengono salvati, per quanto concerne i dati non a ritenzione, soltanto i valori di avvio.

La tabella seguente mostra il backup dei dati della CPU in funzione del tipo di backup scelto e le loro proprietà specifiche.

Backup della configurazione software e hardware di una CPU Se è già stata caricata una progettazione in una CPU S7-1200 o S7-1500. È possibile che si intenda testare una nuova progettazione, per cui può essere utile farne una copia di backup dello stato attuale del dispositivo in modo tale che in seguito sarà possibile ripristinare la configurazione attuale. È possibile creare un numero qualsiasi di file di backup, e quindi rendere disponibili diverse progettazioni per una CPU. I file di backup vengono nominati con il nome della CPU e con la data e l’ora del backup. Il file di backup si trova nella navigazione del progetto nella cartella “Backup online”

sotto la CPU.

Il backup comprende tutti i dati necessari per ripristinare una data versione della configurazione di una CPU. Ad esempio, viene fatto il backup dei seguenti dati: I contenuti della memory card;

Aree di memoria a ritenzione, ad es., blocchi dati, contatori e merker; Altri contenuti della memoria a ritenzione quali i parametri degli indirizzi IP. Il backup avviene con i valori attuali della CPU. Il backup non comprende le voci del buffer di diagnostica. Nelle CPU S7-1500 il backup non contiene l’ora attuale. Backup della progettazione di un dispositivo Durante il backup la CPU va in STOP. Se è stato configurato un livello di accesso per la CPU si deve disporre della password per l’accesso in lettura. È necessario che: la CPU sia già stata creata nel progetto; il dispositivo sia collegato direttamente al PG/PC tramite l’interfaccia PROFINET della CPU; interfacce PROFIBUS della CPU e interfacce di CM/CP non siano supportate; la CPU sia collegata online. Se non è ancora disponibile un collegamento online esso viene creato durante il backup; la CPU sia nello stato di funzionamento STOP. Per l’esecuzione del backup della progettazione attuale di una CPU procedere nel seguente modo: 1) Selezionare la CPU nella navigazione del progetto. 2) Selezionare il comando “Carica backup del dispositivo online” nel menu “Online”. Se necessario si deve immettere la password per l’accesso in lettura alla CPU e confermare che la CPU viene portata in “STOP”. Viene creato un backup dell’intera configurazione hardware e del software. Il backup viene salvato nella navigazione del progetto nella cartella “Nome della CPU > Backup online”. Il backup reca il nome della CPU con la data e l’ora del backup. La rinomina del backup, senza tuttavia modificare i contenuti dello stesso, è possibile.

B) Caricamento del dispositivo (software) ovvero caricamento dei dati del progetto software dalla CPU a un progetto con CPU esistente

Con l’opzione “Caricamento del dispositivo (software)” si salvano solo i componenti software della CPU in un progetto: Valori attuali di tutti i DB Blocchi di tipo OB, FC, FB e DB Variabili PLC Oggetti tecnologici Prima di iniziare a caricare i dati dalla CPU a un progetto, sono necessari i presupposti seguenti: La CPU è stata creata nel progetto. La CPU è collegata al PG/PC attraverso l’interfaccia PROFINET. Sia le interfacce PROFIBUS della CPU che le interfacce dei CM/CP non sono supportate. La CPU è collegata online. I componenti software da caricare sono compatibili con STEP 7. La CPU si trova nello stato di funzionamento STOP o RUN. Procedura 1. Nella navigazione del progetto selezionare la stazione PLC desiderata. 2. Nel menu “Online” selezionare il comando “Caricamento del dispositivo (software)”. 3. Attivare nella finestra di dialogo “Anteprima per il caricamento del dispositivo” la casella di controllo “Continua”. 4. Fare clic sul pulsante “Caricamento del dispositivo”.

C) Carica dispositivo come nuova stazione (hardware e software) Questa opzione consente di caricare nel proprio progetto i dati hardware e software di una CPU. Vengono caricati i seguenti dati dalla CPU al progetto: Valori attuali di tutti i DB Blocchi di tipo OB, FC, FB e DB Variabili PLC Oggetti tecnologici Configurazione hardware

Prima di poter eseguire questa opzione sono necessari i presupposti seguenti: La CPU è collegata al PG/PC attraverso l’interfaccia PROFINET. Sia le interfacce PROFIBUS della CPU che le interfacce dei CM/CP non sono supportate. La configurazione hardware e software nel dispositivo da caricare è compatibile con TIA Portal STEP 7. I moduli presenti nel dispositivo derivanti da GSD (ML), HSP o Service Pack devono essere installati in STEP 7 sul PG/PC. Deve essere stato aperto un progetto. Il progetto può essere nuovo (e vuoto) o già esistente. OSSERVAZIONI: quando si carica un dispositivo come nuova stazione in un progetto esistente è necessario accertarsi che non esistano conflitti tra i nomi/indirizzi IP dei componenti esistenti e quelli da caricare, ad esempio, il nome della CPU è già in uso nel progetto esistente. In caso di conflitti procedere come segue: Modificare i nomi/indirizzi IP utilizzati nel progetto. Compilare le stazioni interessate. Riavviare la funzione “Carica il dispositivo come nuova stazione (hardware e software)”. Procedura Per caricare la CPU nel progetto procedere nel seguente modo: 1. Selezionare il nome del progetto nella navigazione. 2. Selezionare nel menu “Online” il comando “Carica il dispositivo come nuova stazione (hardware e software)”. Si apre la finestra di dialogo “Carica dispositivo nel PG/PC”. 3. Nella casella di riepilogo “Tipo di interfaccia PG/PC” selezionare il tipo di interfaccia desiderato. 4. Nella casella di riepilogo “Interfaccia PG/PC” selezionare l’interfaccia da utilizzare. 5. Fare clic a destra della casella di riepilogo “Interfaccia PG/PC” sul pulsante “Configura interfaccia” per adattare le impostazioni dell’interfaccia selezionata. 6. Visualizzare tutti i nodi compatibili attivando l’opzione corrispondente e facendo clic sul comando “Avvia ricerca”. Nella

tabella dei nodi accessibili selezionare il nodo dal quale si desiderano caricare i dati del progetto. 7. Fare clic sul pulsante “Carica”.

Il seguente risultato è ottenuto al termine della procedura “Carica il dispositivo come nuova stazione (hardware e software)”.

B.0.4

RIPRISTINO DELLA PROGETTAZIONE CON CPU S7-1200/1500

A) Ripristino della progettazione di un dispositivo (da backup) Il backup della progettazione realizzato in un momento precedente, può essere ritrasferito nel dispositivo interessato. La configurazione salvata viene così ripristinata nel dispositivo. Durante il caricamento di un backup la CPU va in STOP. Se è stato configurato un livello di accesso per la CPU si deve disporre della password per l’accesso in scrittura.

Procedimento 1. Aprire la cartella del dispositivo nella navigazione del progetto per visualizzare gli oggetti subordinati.

2. Aprire la cartella “Backup online”. 3. Selezionare il backup da ripristinare. 4. Nel menu “Online” selezionare il comando “Carica nel dispositivo”. – Se era già stato creato un collegamento online si apre la finestra di dialogo “Carica anteprima”. In questa finestra di dialogo vengono visualizzati messaggi e operazioni necessarie per il caricamento. – Se non è ancora stato creato un collegamento online si apre la finestra di dialogo “Caricamento avanzato” ed è necessario selezionare innanzitutto le interfacce mediante le quali creare il collegamento online con il dispositivo. 5. Controllare i messaggi nella finestra di dialogo “Carica anteprima” ed eventualmente attivare le operazioni nella colonna “Operazione”. 6. Non appena è possibile eseguire il caricamento si attiva il pulsante “Carica”. 7. Fare clic sul pulsante “Carica”. Il backup viene trasferito nel dispositivo e il dispositivo viene ripristinato. Successivamente si apre la finestra di dialogo “Carica risultati”. Questa finestra di dialogo consente di verificare se il caricamento è riuscito ed eventualmente di selezionare altre operazioni. 8. Fare clic sul pulsante “Fine”. Se necessario si deve immettere la password per l’accesso in lettura alla CPU e confermare che la CPU viene portata in “STOP”. I contenuti del backup vengono ripristinati nella CPU. Quindi la CPU viene riavviata.

B.0.5

RIPRISTINO DELLA PROGETTAZIONE CON CPU S7-1200/1500 DA MEMORY CARD (SD SIEMENS)

Il Ripristino della progettazione in TIA Portal è possibile anche da SD Siemens senza disporre del PLC S7-1200/1500.

Procedimento 1. Inserire la memory card (SD) in un lettore USB e collegarlo al computer 2. Aprire un nuovo progetto in TIA Portale non inserire nessuna CPU 3. Aprire la vista progetto

4. Selezionare “Card Reader/memoria USB” 5. Selezionare “Supporto dati rimovibile” A questo punto sarà visibile la memory card contenente il nostro progetto. 6. Nel menu “Online” selezionare il comando “Carica il dispositivo come nuova stazione”.

Dopo l’ultima operazione si otterrà il caricamento del progetto con la CPU

utilizzata nella progettazione (vedi figura a lato).

U.D. N.1 APPROFONDIMENTI SU TIA PORTAL B.1.1

APERTURA DI PROGETTI DI VERSIONI PRECEDENTI DEL TIA PORTAL (SOLO CPU S71200)

I progetti con versioni precedenti del TIA Portal si possono aprire, tuttavia è necessario tenere in considerazione alcune particolarità: 1. Progetti TIA Portal V10 e V10.5: i progetti creati con le versioni V10.0 o V10.5 possono essere aperti con il TIA Portal V12 solo se convertiti in un progetto TIA Portal V12. 2. Progetti del TIA Portal V11: i progetti della versione V11 si aprono e restano invariati. La gamma delle funzioni è limitata alle possibilità del TIA Portal V11. I progetti perciò restano compatibili con le versioni precedenti e possono ancora essere modificati con la versione precedente del TIA Portal. Affinché un progetto salvato nel TIA Portal V12 possa essere nuovamente elaborato in TIA Portal V11 quest’ultimo deve essere aggiornato alla versione più recente. In TIA Portal V11 devono essere installati il Service Pack 2 e tutti gli altri aggiornamenti. Per poter utilizzare la gamma completa di funzioni della versione attuale in un progetto del TIA Portal V11, è necessario aggiornare il progetto. Con l’aggiornamento il progetto viene convertito nel formato del TIA Portal V12 rendendo possibile l’uso dell’intera gamma di funzioni del TIA Portal V12.

N.1.2

PROCEDURA PER L’APERTURA (SOLO CPU S71200)

DOMANDA: I progetti creati con versioni precedenti del TIA Portal si possono aprire con TIA Portal V11 o V12? 1) Se il progetto è stato creato con TIA Portal V10 e V10.5 può essere aperto con il TIA Portal V11 o V12 solo dopo essere stato convertito in un progetto TIA Portal V11 o V12.

2) Se il progetto, creato con TIA Portal V11, viene aperto con TIA Portal V12, resta invariato. La gamma delle funzioni è però limitata alle possibilità del TIA Portal V11. 3) Il progetto creato con TIA Portal V11 e modificato con TIA Portal V12 resta sia compatibile che modificabile con la versione V11. 4) Affinché un progetto salvato nel TIA Portal V12 possa essere nuovamente elaborato in TIA Portal V11 quest’ultimo deve essere aggiornato alla versione più recente. In TIA Portal V11 devono essere installati il Service Pack 2 e tutti gli altri aggiornamenti. 5) Per poter utilizzare la gamma completa di funzioni della versione V12 in un progetto del TIA Portal V11, è necessario aggiornare il progetto. Con l’aggiornamento il progetto viene convertito nel formato del TIA Portal V12 rendendo possibile l’uso dell’intera gamma di funzioni del TIA Portal V12. La versione V11 non può aprire il progetto. Procedura per effettuare l’aggiornamento dei progetti Per poter utilizzare l’intera gamma delle funzioni del TIA Portal V12 è necessario aggiornare il programma. Anche le biblioteche globali del TIA Portal V11 devono essere aggiornate per l’ulteriore utilizzo. Per prevenire modifiche indesiderate, l’aggiornamento di queste biblioteche non ha luogo automaticamente e in modo congiunto a quello del progetto. Per aggiornare (solo V12) un progetto procedere nel seguente modo: 1. Aprire il software TIA Portal V12. 2. Aprire un progetto realizzato con una precedente versione di TIA Portal (V11). 3. Nel menu “Progetto” selezionare il comando “Aggiornamento”. Viene visualizzata un’interrogazione di sicurezza. 4. Confermare l’interrogazione di sicurezza selezionando “Sì”. 5. Risultato: il progetto originale è stato chiuso e memorizzato nella versione originale. 6. Dal progetto originale è stata creata una nuova versione. 7. La nuova versione del progetto è aperta.

B.1.3

APERTURA DI PROGETTI DI VERSIONI PIÙ

RECENTI DEL TIA PORTAL Se si desidera aprire un progetto creato in una versione più recente è necessario che esistano i seguenti presupposti: Il progetto deve essere stato creato con una versione diversa da TIA Portal V12, ad es., una versione con un Service Pack installato. Il progetto non deve contenere dati incompatibili con l’installazione attuale.

B.1.4

MIGRARE UN PROGETTO (MIGRAZIONE DA STEP 5 S7-300 A S7-1500)

Il TIA Portal dà la possibilità di migrare progetti che sono stati fatti con ambienti di programmazione Siemens più vecchi, permettendo così al programmatore di recuperare gran parte del lavoro svolto in passato. Possono essere migrati progetti dallo SIMATIC STEP 7 5.4 o 5.5, dal TIA Portal V10.5, TIA Portal V11 e dal MicroWin.

B.1.4.1 MIGRARE UN PROGETTO DA SIMATIC STEP 7V5.4 O V5.5 A TIA PORTAL Se si ha necessità di migrare un progetto PLC scritto per S7-300/S7-400 su Step7 Cassico in TIA Portal con S7-1500 è necessario eseguire due operazioni di migrazione: 1. prima è necessario portare il progetto da Step7 Classico a TIA Portal rimanendo su piattaforma S7-300; 2. successivamente è possibile procedere alla conversione del dispositivo S7-300 a S7-1500. SIMATIC STEP 7 CLASSICO E TIA PORTAL SULLO STESSO PC Se TIA Portal e SIMATIC STEP 7 classico sono installati sullo stesso PC bisogna seguire le seguenti operazioni: 1. Dalla vista portale (aprire TIA Portal V13) selezionare la voce “Avvia”; 2. Selezionare “Migrazione progetto” dalla finestra delle operazioni; 3. Selezionare, alla voce “Percorso sorgente” il file con estensione “.s7p” del progetto da migrare; 4. Decidere se si vuole migrare anche la configurazione hardware o

soltanto il codice dei blocchi; 5. Inserire i dati del nuovo progetto di destinazione; lanciare la migrazione con il tasto “Migrazione”. Al termine della migrazione verrà aperto direttamente il progetto nel TIA Portal e le informazioni relative al risultato della compilazione verranno riportate nella Finestra di ispezione alla voce “Informazioni” “Generale”. SIMATIC STEP 7 CLASSICO E TIA PORTAL SU PC DIVERSI Nel caso in cui TIA Portal e SIMATIC STEP 7 classico siano su PC diversi, è necessario installare, sul PC con lo SIMATIC STEP 7 classico un “Migration Tool” fornito da Siemens. Questo permette di generare il progetto “.ap13” a partire dal progetto SIMATIC STEP 7 classico che dovrà poi essere aperto sull’altro PC direttamente nel TIA Portal. Il tool è presente sul CD di installazione del SIMATIC STEP 7 V13. NOTA: non tutto l’hardware può essere gestito all’interno di TIA Portal. Se si migra un progetto con all’interno hardware non gestibile in TIA Portal la migrazione darà errore, indicando quali sono i moduli che danno problemi. È possibile migrare il progetto senza importare la configurazione hardware, migrando soltanto il software su una CPU fittizia.

B.1.4.2 MIGRAZIONE DA S7-300 A S7-1500 IN TIA PORTAL

Una volta portato il dispositivo S7-300 in TIA Portal, è possibile lanciare la migrazione a S7-1500 seguendo la procedura seguente: 1. Prima di tutto è necessario essere certi che nel dispositivo di partenza non ci siano errori. Per verificarlo cliccare col tasto destro del mouse sulla cartella “Blocchi di programma”, scegliere “Compila” e quindi “Software (compila completamente i blocchi)”; 2. Portarsi nella “Vista di rete”; 3. Cliccare col pulsante destro sul dispositivo che si vuole migrare; 4. Selezionare la voce “Migrazione all’S7-1500”.

NOTA: è possibile che compaiano errori di migrazione da S7-300 a S7-1500 TIA Portal.

B.1.4.3 SIMATIC STEP 7 CLASSICO E TIA PORTAL SULLO STESSO PC Se TIA Portal e SIMATIC STEP 7 classico sono installati sullo stesso PC bisogna seguire le seguenti operazioni: 1. Dalla vista portale selezionare la voce “Avvia”; 2. Selezionare “Migrazione progetto” dalla finestra delle operazioni; 3. Selezionare, alla voce “Percorso sorgente” il file con estensione “.s7p” del progetto da migrare;

4. Decidere se si vuole migrare anche la configurazione hardware o soltanto il codice dei blocchi; 5. Inserirei dati del nuovo progetto di destinazione; 6. Lanciare la migrazione con il tasto “Migrazione”. Al termine della migrazione verrà aperto direttamente il progetto nel portale TIA Portal e le informazioni relative al risultato della compilazione verranno riportate nella Finestra di ispezione alla voce “Informazioni” “Generale”.

B.1.4.4 SIMATIC STEP 7 CLASSICO E TIA PORTAL SU PC DIVERSI Nel caso in cui TIA Portal e SIMATIC STEP 7 classico siano su PC diversi, è necessario installare sul PC con lo SIMATIC STEP 7 classico un “Migration Tool” fornito da Siemens che permette di generare il progetto “.ap12” a partire dal progetto SIMATIC STEP 7 classico per poi poterlo aprire sull’altro PC direttamente nel TIA Portal. Il Tool è presente sul CD di installazione del SIMATIC STEP 7 V12.

B.1.4.5 MIGRARE UN PROGETTO DA TIA PORTAL V10.5 (SOLO CPU S7-1200) Per migrare un progetto dal TIA Portal V10.5 al TIA Portal V12, è necessario prima eseguire la migrazione a TIA Portal V11 e, successivamente, migrare a TIA Portal V12. Non è necessario aver installato sullo stesso PC TIA Portal V10.5 e TIA Portal V11. Sul PC con il TIA Portal V11 è necessario eseguire le seguenti operazioni dalla “Vista progetto”:

1. Selezionare la voce “Progetto” dal menu degli strumenti; 2. Selezionare la voce “Apri…”; 3. Scegliere il progetto dall’elenco degli ultimi progetti aperti oppure selezionarlo dalla relativa directory cliccando sul tasto “Sfoglia”; 4. Cliccare sul tasto “Apri” per aprire il progetto.

5. Per avviare la conversione cliccare sul tasto OK nella finestra di avviso che si apre; 6. A migrazione conclusa si aprirà la finestra di avviso. Cliccare su OK ed eseguire la compilazione dei singoli dispositivi del progetto per verificare se la migrazione è stata eseguita correttamente. Eventuali errori vengono segnalati nella “Finestra delle proprietà”, nella finestra “Informazioni” e nella sotto-finestra “Compila”.

A questo punto è possibile migrare il progetto alla versione V12.

B.1.4.6 MIGRARE UN PROGETTO DELL’S7-200 (SOLO CPU S7-1200) Per migrare un progetto, originariamente scritto in MicroWin, è necessario obbligatoriamente installare sullo stesso PC sia MicroWin V4.0SP6 (o superiore) che il TIA Portal V11 SP2 (o superiore). È necessario inoltre installare un ulteriore software di migrazione gratuito (SIMATIC S7-200 to SIMATIC S7-1200 software conversion tool) che bisogna richiedere al servizio di hotline Siemens. Una volta migrato il progetto al TIA Portal V11 SP2 è possibile migrare il progetto a TIA Portal V12. 1. Dalla vista progetto selezionare la voce “Progetto”, dalla barra dei menu; 2. Se il software di migrazione è stato installato correttamente, sarà disponibile la voce “Convert S7-200 Project…”; 3. Selezionare il percorso del progetto di origine alla voce “Sourcepath”; 4. Selezionare il progetto da migrare scritto in MicroWin (estensione “.mwp”); 5. Cliccare sul pulsante “Apri”; 6. Inserire il nome da assegnare al nuovo progetto nel campo “Target name”; 7. Scegliere la directory in cui salvare il progetto migrato nel TIA Portal V11; 8. Cliccare sul tasto “Convert” per lanciare la conversione. Al termine della conversione, lanciare la compilazione dei blocchi di programma per vedere se ci sono stati degli errori di conversione. A questo punto è possibile migrare il progetto alla versione V12.

ATTENZIONE! Il software di migrazione da MicroWin non è in grado di migrare tutti i tipi di comandi. Nel caso in cui parti di codice non fossero correttamente migrate, è necessario sistemare il codice manualmente.

B.1.5

ARCHIVIARE UN PROGETTO

Nella versione TIA Portal V12/13/14, è possibile anche archiviare un progetto in un file di tipo “.zap12”. L’archiviazione permette una riorganizzazione dei dati del progetto in modo tale da ridurre la dimensione del progetto stesso. Per farlo: 1. Selezionare la voce “Progetto” dal menu degli strumenti. 2. Selezionare la voce “Archivia” per aprire la finestra di archiviazione.

B.1.5.1 DISARCHIVIARE UN PROGETTO ESISTENTE

Prima di poter iniziare a programmare è necessario disarchiviare un progetto esistente. Cercare l’archivio specifico nella vista del progetto con → Progetto → Disarchivia → selezionare un “archivio.zap”, quindi confermare la selezione con “Apri”. Ora è possibile selezionare la directory di destinazione nella quale salvare il progetto disarchiviato. Confermare la selezione con “OK” (→ Directory di destinazione → OK).

B.1.6

BIBLIOTECA DI PROGETTO E BIBLIOTECA GLOBALE

Le biblioteche, messe a disposizione dal TIA Portal, sono uno strumento molto utile nel caso in cui l’utente voglia salvare delle parti di progetto per poterle utilizzare più volte nel progetto stesso o in altri progetti. Esistono due tipi di biblioteche messe a disposizione dal TIA Portal: Biblioteca di progetto e Biblioteca globale. La biblioteca di progetto è un tipo di biblioteca che può essere utilizzata solo all’interno del progetto nel quale è stata realizzata. Può essere utile quindi, nel caso in cui si vogliano salvare dei dati che verranno poi utilizzati in un altro dispositivo all’interno dello stesso progetto. Questa viene aperta, salvata e chiusa con il progetto associato. Dalla finestra “Task Card” sulla destra dell’editor, selezionare la voce “Biblioteche”. Nella sezione “Biblioteca del progetto”, è possibile salvare parti del proprio progetto, semplicemente trascinandole nella cartella “Copie master”, all’interno della cartella “Biblioteca del progetto”. La biblioteca globale è un tipo di biblioteca che può essere utilizzata all’interno di tutto il TIA Portal. Cioè i dati salvati in queste biblioteche potranno poi essere utilizzati in qualsiasi altro progetto e in qualsiasi altro momento. Un tipico esempio di utilizzo di tali biblioteche è per creare delle librerie personalizzate con all’interno blocchi di programma che l’utente utilizza spesso nella progettazione delle sue macchine.

Per creare una nuova biblioteca globale seguire le seguenti istruzioni:

Dalla finestra “TaskCard” sulla destra dell’editor, selezionare la voce “Biblioteche”. Nella sezione “Biblioteche globali”, cliccare sul relativo tasto di creazione di una nuova biblioteca; nella finestra che si apre, inserire il nome e l’autore della biblioteca e la directory dove salvarla; cliccare sul tasto “Crea”. Nella directory scelta, la biblioteca è rappresentata da una cartella che può essere gestita come una qualsiasi cartella sul PC. Per aprire una nuova biblioteca globale seguire le seguenti istruzioni.

Dalla finestra “Task Card” sulla destra dell’editor, selezionare la voce “Biblioteche”. Nella sezione “Biblioteche globali”, cliccare sul relativo tasto di apertura di una nuova biblioteca. Nella finestra che si apre, selezionare la biblioteca da utilizzare. Cliccare sul tasto “Apri”.

Per inserire degli elementi nella biblioteca globale seguire le seguenti istruzioni.

Dalla finestra “Task Card” sulla destra dell’editor, selezionare la voce “Biblioteche”. Selezionare dalla finestra di “Navigazione del progetto” e dalla “Finestra di lavoro” l’oggetto da salvare. Trascinare l’oggetto, per Drag&Drop, nella cartella “Copie master” all’interno della biblioteca globale desiderata. Per salvare la biblioteca globale realizzata utilizzare l’apposito tasto nella sezione “Biblioteche globali” nella finestra “Task card”. Una volta salvata, la biblioteca non è altro che una normalissima cartella che può essere copiata e portata su qualsiasi dispositivo di archiviazione, esternamente all’ambiente TIA Portal.

B.1.7

PROGETTI DI RIFERIMENTO (SOLO TIA PORTAL V13/14)

B.1.7.1 APRIRE UN PROGETTO EDITABILE Per aprire un progetto già esistente e poterlo modificare, seguire la seguente procedura: 1. Selezionare la voce “Progetto” dal menu degli strumenti; 2. Selezionare la voce “Apri…”; 3. Scegliere il progetto dall’elenco degli ultimi progetti aperti oppure selezionarlo dalla relativa directory cliccando sul tasto “Sfoglia”; 4. Cliccare sul tasto “Apri” per aprire il progetto.

OSSERVAZIONI: 1. Per aprire più progetti contemporaneamente, entrambi editabili, è necessario aprire più istanze del TIA Portal (ovvero lanciare più volte TIA Portal). 2. La creazione simultanea del collegamento online alla stessa CPU S7 da più istanze del TIA Portal non è possibile.

B.1.7.2 APRIRE UN PROGETTO NON EDITABILE (SOLO TIA PORTAL V12/V13/14) È possibile, nel TIA Portal V12/13/14, aprire un progetto già esistente, in modalità non editabile, senza chiudere il progetto su cui si sta lavorando.

Questo è utile per copiare parti di un vecchio progetto, salvaguardandosi dal rischio di modificarlo. Per poterlo fare seguire la seguente procedura:

1. Selezionare la voce “Visualizza” dal menu degli strumenti; 2. Selezionare la voce “Progetti di riferimento”. In questo modo compare, sotto la finestra di navigazione del progetto, la finestra di gestione dei “Progetti di riferimento”; 3. Cliccare sul pulsante “Apri il progetto di riferimento”; 4. Selezionare il progetto da aprire; 5. Cliccare sul pulsante “Apri”. I progetti aperti nella finestra di “Progetti di riferimento” vengono rappresentati con lo sfondo grigio perché non possono essere editati. Da qui è possibile, per Drag&Drop, copiare oggetti e portarli nel progetto editabile.

B.1.8

UTILIZZO DI PROGETTI DI RIFERIMENTO (NOZIONI DI BASE SUI PROGETTI DI RIFERIMENTO)

Accanto al progetto attuale, è possibile aprire ulteriori progetti da utilizzare come riferimento. I progetti di riferimento trovano impiego per: Trascinare singoli oggetti dal progetto di riferimento al progetto attuale dove procedere con la relativa elaborazione. Aprire protetti in scrittura determinati oggetti del progetto di riferimento quali blocchi di codice. Quest’opzione non è disponibile per tutti gli elementi. Avvalendosi del confronto offline/offline, confrontare dispositivi del

progetto di riferimento con quelli del progetto attuale. Tenere presente che i progetti di riferimento sono protetti in scrittura e non sono pertanto modificabili. È possibile anche aprire come progetti di riferimento dei progetti che sono stati creati con una versione precedente di TIA Portal o con un’installazione diversa. In questo caso valgono le stesse regole di compatibilità come per la normale apertura di un progetto da una versione di TIA Portal precedente.

B.1.8.1 APERTURA DEL PROGETTO DI RIFERIMENTO Per aprire un progetto di riferimento procedere nel seguente modo: 1. Nella navigazione del progetto, fare clic su “Apri progetto di riferimento” nella tavolozza “Progetti di riferimento” sulla barra degli strumenti. Si apre la finestra di dialogo “Apri progetto di riferimento”.

2. Navigare fino alla cartella del progetto desiderato e aprire il file di progetto. I progetti di TIA Portal V13.x hanno l’estensione “.ap13”. I progetti precedenti del TIA Portal hanno l’estensione “.ap[numero di versione]”. 3. Fare clic su “Apri”. Il progetto selezionato viene aperto come progetto di riferimento protetto in scrittura.

B.1.8.2 CHIUSURA DEL PROGETTO DI RIFERIMENTO Per chiudere un progetto di riferimento procedere nel modo seguente: 1. Nella navigazione del progetto, selezionare nella tavolozza “Progetti di riferimento” il progetto da chiudere. 2. Fare clic su “Chiudi progetto di riferimento” nella barra degli strumenti. Il progetto di riferimento selezionato viene chiuso.

B.1.8.3 CONFRONTO DI PROGETTI DI RIFERIMENTO I dispositivi dei progetti di riferimento possono essere confrontati con dispositivi del progetto attuale, con dispositivi dello stesso/di un altro progetto di riferimento o anche con dispositivi di una biblioteca. NOTA: prestare attenzione a quanto segue: Per gli oggetti di confronto non è possibile definire azioni perché i progetti di riferimento sono protetti in scrittura. Per gli oggetti di confronto si può eseguire un confronto dei dettagli se il tipo di oggetto consente un confronto dei dettagli in generale. Anche con il confronto dei progetti di riferimento è possibile commutare in qualsiasi momento tra confronto automatico e manuale. Procedimento Per il confronto degli oggetti di un progetto di riferimento con i dati dei dispositivi del progetto attuale, procedere nel seguente modo: 1. Nella navigazione del progetto selezionare il dispositivo di cui confrontare i dati con quelli di un progetto di riferimento. Il dispositivo interessato deve supportare il confronto offline/offline. 2. Nel menu di scelta rapida selezionare il comando “Confronta >

offline/offline”. Si apre l’editor del confronto che visualizza nella sezione sinistra il dispositivo selezionato. 3. Aprire la tavolozza “Progetti di riferimento” nella navigazione del progetto. 4. Nel progetto di riferimento selezionare il dispositivo di cui confrontare i dati con quelli del progetto attualmente aperto. 5. Trascinare il dispositivo dal progetto di riferimento sulla superficie di trascinamento nella sezione destra dell’editor del confronto.

B.1.9

CARICAMENTO DI MODIFICHE AI BLOCCHI SENZA REINIZIALIZZAZIONE

Spesso si presenta la necessità di modificare o ampliare a posteriori un programma PLC già messo in servizio e correttamente funzionante in un impianto. In questi casi il funzionamento non deve essere compromesso. RIPERCUSSIONI DEL CARICAMENTO SUI VALORI DELLE VARIABILI DI UN BLOCCO DATI In caso di caricamento di blocchi dati in un dispositivo nello stato di funzionamento STOP, la commutazione successiva in RUN si ripercuote come segue sui valori attuali delle variabili: Alle variabili non contrassegnate come variabili a ritenzione vengono assegnati i valori di avvio stabiliti. Le variabili a ritenzione dell’S7-1200/1500 mantengono i propri valori soltanto se sono soddisfatte le seguenti condizioni: – il blocco dati deve essere stato caricato dal comando di menu “Carica nel dispositivo > Software (soltanto modifiche)”. – La struttura del blocco dati non deve essere stata modificata. – In tutti gli altri casi anche le variabili a ritenzione mantengono i valori di avvio definiti.

B.1.9.1 CARICAMENTO DI BLOCCHI IN UN DISPOSITIVO NELLO STATO DI FUNZIONAMENTO “RUN” Quando si caricano in un dispositivo dei blocchi modificati, non è sempre necessario che il dispositivo si trovi nello stato di funzionamento “STOP”. In fase di caricamento l’Engineering System verifica se il dispositivo deve

essere arrestato prima di avviare il caricamento. Il risultato di questa verifica viene visualizzato nella finestra di dialogo “Carica anteprima”. Se occorre passare allo stato di funzionamento “STOP”, si può proseguire con il caricamento solo una volta impostata la relativa opzione. Con il caricamento nello stato di funzionamento “RUN” i parametri attuali non vengono sovrascritti. Le modifiche dei parametri attuali vengono effettuate solo alla successiva commutazione dello stato di funzionamento da “STOP” a “RUN”. Procedimento (Presupposti: il blocco da caricare deve essere aperto) Per caricare un blocco dall’editor di programma nel dispositivo procedere nel seguente modo: 1. Con il tasto destro del mouse, fare clic nella finestra delle istruzioni dell’editor di programma. 2. Selezionare il comando “Carica nel dispositivo” dal menu di scelta rapida. Se non è stato ancora stabilito un collegamento online si apre la finestra di dialogo “Caricamento avanzato”. Impostare in questo caso tutti i parametri necessari per il collegamento e fare clic su “Carica”. È possibile visualizzare tutti i nodi compatibili attivando l’opzione corrispondente e facendo clic sul comando “Avvia ricerca”. È possibile richiamare la finestra di dialogo “Caricamento avanzato” anche esplicitamente dal menu “Online”. Se il collegamento online è stato definito, i dati del progetto vengono eventualmente compilati e si apre la finestra di dialogo “Carica anteprima”, che contiene diversi messaggi e propone le operazioni necessarie per il caricamento. 3. Controllare i messaggi e attivare eventualmente le operazioni nella colonna “Operazione”. Non appena il caricamento è possibile viene attivato il pulsante “Carica”. 4. Fare clic su “Carica”. Se è necessaria una sincronizzazione, il sistema visualizza automaticamente la finestra di dialogo “Sincronizzazione” che contiene diversi messaggi e propone le operazioni necessarie per la sincronizzazione. È possibile eseguire queste operazioni oppure il caricamento senza sincronizzazione facendo clic su “Forza caricamento nel dispositivo”. Se sono state eseguite le operazioni proposte, verrà richiesto se si vuole proseguire con il caricamento. Fare clic su “Prosegui caricamento” per caricare il blocco. Si apre quindi la finestra di dialogo “Carica risultati” che visualizza lo stato e le operazioni

successivi al caricamento. 5. Per riavviare direttamente le unità dopo il caricamento attivare la casella “Avvia tutto”. 6. Chiudere la finestra di dialogo “Carica risultati” selezionando “Fine”.

B.1.10 COMMUTAZIONE DEL LINGUAGGIO DI PROGRAMMAZIONE Per commutare il linguaggio di programmazione per un blocco osservare le seguenti regole per tutte le famiglie di CPU: È possibile commutare solo blocchi interi e non i singoli segmenti. La commutazione tra i blocchi programmati nei linguaggi SCL o GRAPH non è possibile. Nei blocchi GRAPH è possibile tuttavia commutare tra KOP e FUP nel linguaggio dei segmenti.

1. Per S7-300/400: È possibile commutare tra i linguaggi di programmazione KOP, FUP e AWL. È possibile creare segmenti in un blocco con un altro linguaggio di programmazione e copiarli successivamente nel blocco desiderato. I singoli segmenti del blocco che non possono essere commutati vengono visualizzati nel linguaggio originale. 2. Per S7-1200/1500: È possibile commutare tra i linguaggi di programmazione KOP e FUP. 3. Per S7-1500: È possibile creare segmenti AWL all’interno di blocchi KOP e FUP. Tuttavia, non è possibile copiarli tra AWL e KOP/FUP.

B.1.11 PROCEDIMENTO PER LA COMMUTAZIONE DEL LINGUAGGIO DI PROGRAMMAZIONE Per modificare il linguaggio di programmazione procedere nel seguente modo. 1. Fare clic con il tasto destro del mouse sul blocco nella navigazione del progetto. 2. Selezionare quindi il comando “Proprietà” dal menu di scelta rapida. Si apre una finestra di dialogo con le proprietà del blocco. 3. Selezionare nella navigazione nell’area la voce “Generale”. 4. Selezionare nella casella di riepilogo “Linguaggio” il nuovo linguaggio di programmazione. 5. Confermare la selezione con “OK”.

B.1.12 HARDWARE: AGGIORNAMENTO DEL FIRMWARE Prima dell’installazione dell’update del firmware assicurarsi che non sia in uso la CPU. L’upgrade del firmware dei moduli CPU S7-1200 è possibile solo da V.1x a V2.x. Non è possibile un upgrade del FW da V2.x a V3.x e nemmeno da V3.x a V4.x. Il firmware V2, V3 e V4 richiede il corrispondente hardware della CPU.

Le CPU S7-1200 della versione V4 possono essere progettate con STEP 7 dalla versione V13. Dalla versione 4.2 solo con TIA Portal v14. COMPATIBILITÀ TRA I CONTENUTI DELLA MEMORY CARD E LA VERSIONE FIRMWARE DELLA CPU Le memory card (scheda di trasferimento o di programma) configurate e programmate per una CPU S7-1200 V1, V2 o V3 non funzionano con la CPU S7-1200 V4. Le memory card configurate e programmate per una CPU S7-1200 V4 non funzionano con la CPU S7-1200 V1, V2 o V3. La configurazione di una CPU S7-1200 V1-V3 deve essere commutata nella configurazione di una S7-1200 V4 (sostituzione dispositivi) e infine caricata nella CPU. Nella CPU S7-1200 V1-V2 la sostituzione dispositivi deve essere graduale (come verrà indicato in seguito). Inserendo una memory card con una versione firmware incompatibile, la CPU non si avvia. Inserendo una memory card prevista per una CPU V1, V2 o V3 in una CPU S7-1200 V4, quest’ultima segnala un errore di versione. COMMUTAZIONE ONLINE E CARICAMENTO Se con STEP 7 è stata progettata una CPU S7-1200 con versioni firmware V1, V2 o V3, la CPU da caricare o con la quale commutare online deve avere una di queste versioni firmware. Con una CPU S7-1200 V1, V2 o V3 non è possibile accedere online ad una CPU S7-1200 V4. Al contrario, con una CPU S7-1200 V4 è possibile accedere online ad una CPU S7-1200 V1, V2 o V3 o procedere al caricamento di quest’ultima. SOSTITUZIONE DI UNA CPU PREESISTENTE Una CPU S7-1200 V1, V2 o V3 può essere sostituita da una nuova CPU con una versione firmware superiore o uguale alla V4. DOMANDA N.1: Quali informazioni occorre considerare in STEP 7 (TIA Portal) per la sostituzione di un S7-1200 V3 con un S7-1200 V4? A partire da STEP 7 (TIA Portal) V13 è possibile configurare il firmware V4 per i moduli CPU S7-1200. Per passare da V3 a V4 occorre sostituire l’hardware della CPU. L’upgrade del firmware dei moduli CPU S7-1200 è possibile solo da

V1.x a V2.x. Non è possibile un upgrade del FW da V2.x a V3.x e nemmeno da V3.x a V4.x. Il firmware V2, V3 e V4 richiede il corrispondente hardware della CPU. ESEMPIO 1: È stata configurata la CPU 1212C DC/DC/Rly con numero di articolo 6ES7212-1HE31-0XB0 (firmware V3.0). Per il firmware V4.0 occorre la CPU 1212C DC/DC/Rly con il numero di articolo 6ES72121HE40-0XB0. ESEMPIO 2: È stata configurata la CPU 1215C DC/DC/Rly con numero di articolo 6ES7215-1HG31-0XB0 (firmware V3.0). Per il firmware V4.0 occorre la CPU 1215C DC/DC/Rly con il numero di articolo 6ES72151HG40-0XB0. DOMANDA N.2: Come si esegue in STEP 7 (TIA Portal) un aggiornamento del firmware per S7-1200 a partire da V3.0 mediante il web server? Dalla versione V3.0 è possibile eseguire l’aggiornamento del firmware per una CPU S7-1200 anche mediante il web server integrato. Per eseguire l’aggiornamento del firmware, è necessario innanzitutto attivare il web server della propria CPU. Se viene eseguito l’upgrade di una CPU S7-1200 da una versione precedente del firmware ad una versione più recente, il progetto contenuto rimane invariato sulla CPU. Se viene eseguito il downgrade di una CPU S7-1200 da una versione corrente del firmware ad una versione precedente, la CPU viene resettata completamente alle impostazioni di fabbrica. Il progetto contenuto viene cancellato e la CPU ora è raggiungibile solo da un indirizzo MAC.

1) IL SERVER WEB Il server web consente il monitoraggio e la gestione della CPU da parte dell’utente autorizzato tramite una rete. L’analisi e la diagnostica sono pertanto possibili a grandi distanze. Per eseguire queste operazioni è richiesto soltanto un browser di rete. I messaggi e le informazioni di stato vengono visualizzati su pagine HTML.

Per l’accesso alle pagine HTML della CPU è necessario disporre di un browser di rete. Per accedere al server Web procedere come indicato di seguito: Collegare il Client (PG, PC) alla CPU tramite l’interfaccia PROFINET. Aprire il browser di rete. Nel campo “Indirizzo” del browser di rete inserire l’indirizzo IP della CPU in formato http://ww.xx.yy.zz (indicazione di esempio: http://192.168.3.141). Si apre la pagina iniziale della CPU dalla quale è possibile accedere ad ulteriori informazioni. VANTAGGI E UTILITÀ DEL SERVER WEB: Senza componenti hardware e software aggiuntivi Il web server è contenuto di default in ogni CPU S7-1200 / S7-1500. Non sono necessari HW o SW aggiuntivi, è sufficiente un editor di testo standard. Web server integrato Le pagine web standard per la visualizzazione semplificata di informazioni di assistenza e diagnostiche vengono attivate con un clic con grande risparmio in termini di tempo. Possono essere inoltre generate pagine web personalizzate definite dall’utente. Indipendente dalla sede L’accesso al controllore è possibile a livello mondiale tramite un Internet browser standard e anche con dispositivi di comunicazione mobili quali tablet PC, smartphone. Sicurezza Per la sicurezza di accesso occorre utilizzare i meccanismi standard di sicurezza, quali tunnel VPN ecc. È eventualmente possibile la protezione di accesso tramite password. Esempio applicativo Impiego universale di questa applicazione per tutti i controllori S71200 / S7-1500. Riduzione dei tempi necessari per la pianificazione e la realizzazione della propria soluzione di automazione mediante il semplice adattamento dell’applicazione esistente alle proprie esigenze.

2) COME ATTIVARE IL SERVER WEB DELLA CPU Dopo aver aperto un progetto con TIA Portal e aver inserito la CPU in possesso, fare clic nell’area di navigazione delle proprietà della CPU su “Web server” e attivare l’opzione “Attiva server su tutti i moduli di questo dispositivo”. Salvare e compilare la configurazione dispositivi e caricare il programma nella CPU. NOTA: Accesso tramite HTTPS Il protocollo HTTPS consente la creazione di linguaggi criptati e l’autenticazione della comunicazione tra browser e Webserver. Per il trasferimento dati tra il browser e la CPU tramite il protocollo HTTPS, inserire l’URL nel formato https://ww.xx.yy.zz nella barra dell’indirizzo del browser di rete; il formato ww.xx.yy.zz indica l’indirizzo IP della CPU. Per l’accesso HTTPS alla CPU esente da errori, è necessario disporre di un certificato valido ed installato. Qualora il certificato non sia installato, viene visualizzato un avviso nel quale si sconsiglia l’utilizzo della pagina. Per visionare la pagina è necessario aggiungere un’eccezione di sicurezza. Alla pagina Web “Intro” alla voce “Download certificate”, è possibile scaricare un certificato valido (Certification Authority) “SIMATIC CONTROLLER”. La Guida in linea del rispettivo browser di rete fornisce indicazioni sull’installazione del certificato. Successivamente confermare l’avvertenza di sicurezza seguente con OK e chiudere la finestra di dialogo.

3) ESEGUIRE L’AGGIORNAMENTO DEL FIRMWARE TRAMITE WEBSERVER Come per ogni aggiornamento del firmware decomprimere il file compresso del firmware in una directory sul proprio disco rigido. 1. Aprire un browser di navigazione e inserire l’indirizzo IP della propria CPU nella barra degli indirizzi. 2. Quando la pagina web appare, fare clic su “Enter”. 3. Nell’area di navigazione il pulsante “Update Firmware” diventa visibile solo dopo il log in. 4. Immettere il nome “admin” in alto a sinistra. Se alla propria CPU è stata assegnata una password, immettere anche la password e fare clic su “Log in”.

5. Dopo l’aggiornamento della schermata nell’area di navigazione fare clic su “Update Firmware”. 6. Nella finestra di dialogo successiva “Update Firmware” mettere la propria CPU in modalità STOP facendo clic sul pulsante “Go to STOP”. 7. Usare il pulsante “Browse...” per navigare fino alla directory sul proprio disco rigido, dove sono stati memorizzati i file di aggiornamento. Nel file “FWUPDATE.S7S” si trova il file con l’estensione “.upd”, che deve essere selezionato in questo punto. 8. Infine fare clic sul pulsante “Load”, per avviare l’aggiornamento. Durante l’aggiornamento del firmware viene visualizzato il messaggio “Loading file... Please wait” (vedi figura seguente).

9. Al termine dell’operazione comparirà la seguente indicazione in cui si chiede di premere sul pulsante “OK”.

10. Sulla CPU il LED RUN/STOP si illumina in modo fisso e il LED MAINT lampeggia mentre sul monitor è visibile la seguente schermata.

11. Una volta eseguito con successo il download del firmware sulla CPU, solo il LED RUN/STOP continua a essere illuminato in modo fisso.

4) AGGIORNAMENTO FIRMWARE CON SD CARD Usare una Simatic Memory Card da 24 MB. Se la SMC non è vuota cancellare i file. Non formattare la Simatic Memory Card con i tool di formattazione di Microsoft Windows, in caso di formattazione con tali tool la SMC è inutilizzabile! Inserire una memory card nel lettore del PC o in un lettore esterno; per leggere la SMC si deve utilizzare un lettore di Memory card formato SD.

Fare doppio click sul file scaricato e dare come path di destinazione il drive

della SMC. Attenzione: durante l’aggiornamento firmware e quando si inserisce la SMC la CPU andrà in STOP. Inserire la SMC nella CPU, essa va in STOP e il LED MAINT inizia a lampeggiare. Fare un reboot della CPU (spegnerla e riaccenderla) o fare un memory reset attraverso il pannello presente in TIA Portal. Al reboot il firmware verrà copiato nella memoria della CPU, in questa fase i led RUN/STOP alternano il colore verde al giallo. Quando il led RUN/STOP diventa giallo e il led MAINT lampeggia il processo di copia è finito. Togliere la SMC. Ora la CPU ha la nuova versione Firmware, il programma e la configurazione hardware non hanno subito modifiche; attenzione però al valore dei dati presenti nelle DB che potrebbero essere andati persi.

NOTA: a differenza dell’aggiornamento del firmware tramite la memory card, l’aggiornamento con web server richiede solo un file (.upd). Nell’upgrade con la memory card, su quest’ultima vengono copiati sempre due file: “FWUPDATE.S7S” e “S7_JOB.S7S”.

5) AGGIORNAMENTO FIRMWARE TRAMITE “ONLINE & DIAGNOSTICA” (SOLO S7-1500)

1. 2. 3. 4.

5.

6. 7.

L’update del firmware online è indipendente dal fatto che l’SMC sia inserita o meno. L’aggiornamento del firmware per CPU/display quindi può essere eseguito anche senza la scheda SMC inserita. Per l’aggiornamento del display è richiesto un riavvio della CPU. Scaricare il file dell’update desiderato. Decomprimere il file con un doppio clic sul relativo nome. Evidenziare in STEP 7 la CPU nella vista dispositivi. Selezionare il comando menu “Online & Diagnostica” nel menu contestuale. Nel caso non esista alcun collegamento online, STEP 7 tenterà di instaurare il collegamento online. Selezionare nella cartella “Function” il gruppo “Aggiornamento Firmware”. Per una CPU è possibile scegliere se si intende eseguire l’update della CPU (PLC) o del display della CPU. Fare clic nell’area “File Firmware” sul pulsante “Sfoglia” per selezionare il percorso dei file di aggiornamento del firmware. Selezionare il file desiderato del firmware. Nella tabella vengono

elencati tutti i moduli per i quali è possibile eseguire un aggiornamento con il file selezionato del firmware. 8. Fare clic sul pulsante “Avvia aggiornamento”. Se il file selezionato è idoneo per il modulo, il file viene caricato nel modulo. L’operazione può impiegare alcuni minuti. In funzione del modulo impiegato la casella opzionale “Attiva il firmware dopo l’aggiornamento” è editabile o non editabile (sempre attivata). Se la casella opzionale è attivata, una volta terminata con successo l’operazione di caricamento il modulo acquisisce il firmware e avvia quindi il modulo con il nuovo firmware.

6) AGGIORNAMENTI CON TIA PORTAL V14 Aggiornamento firmware S7-1500 alla versione 2.0 e 2.1 Se si esegue l’aggiornamento al firmware 2.0 o successivi non è più

possibile accedere alla CPU con TIA Portal V13 o precedenti. Aggiornamento CPU S7-1200 al firmware 4.2 Se si esegue l’aggiornamento al firmware 4.2. o successivi non è più possibile accedere alla CPU con TIA Portal V13 o precedenti. Per eseguire l’accesso è necessario impostare la CPU su un firmware precedente. DOMANDA: Quali progetti posso migrare alla V14? È possibile migrare solo i progetti STEP7 V13 + SP1 e non è previsto il funzionamento in compatibility mode. NOVITÀ NELLA CONFIGURAZIONE E GESTIONE DELL’HARDWARE IN STEP7 V14 1. È ora possibile raggruppare nell’albero di progetto più stazioni in un’unica cartella (prima si poteva fare solo con i blocchi di programma).

2. Realizzare un profilo personalizzato con gli oggetti della libreria Hardware che si usano di più. La vista Network View e Topology View si possono sincronizzare.

3. Possibilità di inserire i segmenti in SCL in un programma ladder.

4. Il meccanismo di comparazione dei blocchi ora è stato modificato e migliorato e ora si basa sul CRC. C’è anche la possibilità di scegliere quali criteri di comparazione utilizzare. 5. Revisione della toolbar per i DB con la possibilità di reinizializzare una DB completa con i valori iniziali predefiniti. 6. Nel Trace è possibile visualizzare in un unico diagramma diverse misure. 7. Nuova finestra di “Global Search” (Ricerca globale) che consente di trovare gli oggetti del progetto HMI e PLC. A completamento esiste anche la funzione “Go To” per andare al punto di richiamo dell’oggetto. 8. Ora c’è la possibilità di avviare PLCSim in modalità compatta e senza

nessun progetto di simulazione. I dispositivi possono essere cambiati in un progetto di simulazione in modo tale da non dover ricreare le tabelle di simulazione già create. Gli I/O distribuiti possono essere simulati nella “device view”.

U.D. N.2 APPROFONDIMENTI SU AREE DI MEMORIA, VARIABILI E COSTANTI B.2.1

AREE DI MEMORIA PER S7-1500

Il disco rigido del dispositivo di programmazione contiene i dati offline del progetto creato in TIA Portal STEP 7. I dati online del progetto si trovano nella memoria di caricamento sulla SIMATIC Memory Card. Inoltre, sulla CPU vi sono la memoria di lavoro, la memoria a ritenzione e altre aree di memoria.

MEMORIA DI CARICAMENTO La memoria di caricamento è una memoria non volatile per blocchi di codice, blocchi dati, oggetti tecnologici e per la configurazione hardware. La memoria di caricamento si trova sulla SIMATIC Memory Card. STEP 7 trasferisce i dati di progetto dal dispositivo di programmazione alla memoria di caricamento. Se tramite il server Web della CPU o tramite Explorer sono stati copiati altri dati (ad es. backup HMI e altri file) nella SIMATIC Memory Card, questi dati si trovano anche nella memoria di caricamento della SIMATIC Memory Card.

Per il funzionamento della CPU S7-1500 è necessario avere inserito la SIMATIC Memory Card. MEMORIADI LAVORO La memoria di lavoro è una memoria volatile che contiene blocchi di codice e blocchi dati. La memoria di lavoro è integrata nella CPU e non può essere ampliata. La memoria di lavoro viene utilizzata solo durante il funzionamento della CPU. La memoria di lavoro nelle CPU è suddivisa in due aree: Memoria di lavoro del codice: la memoria di lavoro del codice contiene parti del codice di programma rilevanti per l’esecuzione. Memoria di lavoro dei dati: la memoria di lavoro dei dati contiene le parti dei blocchi dati rilevanti per l’esecuzione e gli oggetti tecnologici. Al passaggio dello stato di funzionamento da RETE ON ad Avviamento e da STOP ad Avviamento le variabili dei blocchi dati globali, dei blocchi dati di istanza e gli oggetti tecnologici vengono inizializzati con i loro valori di avvio; le variabili a ritenzione mantengono i propri valori attuali salvati nella memoria a ritenzione. MEMORIA A RITENZIONE La memoria di ritenzione è una memoria non volatile in cui viene salvata una quantità di dati limitata in caso di caduta della tensione. Le seguenti azioni cancellano il contenuto della memoria di ritenzione: Cancellazione totale Reset alle impostazioni di fabbrica ULTERIORI AREE DI MEMORIA Oltre alle aree di memoria descritte per il programma utente e i dati, la CPU dispone di ulteriori aree di memoria. Tra queste rientrano ad esempio le aree seguenti: Immagini di processo Dati locali temporanei SPAZIO DI MEMORIA NECESSARIO E MEMORIA UTILIZZATA In STEP 7, sul display della CPU (vale solo per le CPU S7-1500) e tramite il

server web, è possibile richiamare informazioni sulle aree di memoria della CPU. DATI SULLA SIMATIC MEMORY CARD Oltre al programma e ai rispettivi elementi (blocchi, tipi di dati, oggetti per Motion Control e variabili PLC) sulla scheda di memoria vengono memorizzati anche i seguenti dati: Configurazione hardware Informazioni sul progetto Ordini di forzamento/ordini Trace Simboli e commenti Ricette, Data Log e backup HMI File non SIMATIC copiati sulla scheda di memoria tramite il server web della CPU oppure offline in Explorer (ad es. file PDF). AREE DI MEMORIA A RITENZIONE Le CPU dispongono di una memoria in cui salvare i dati a ritenzione in caso di RETE OFF. Le dimensioni della memoria a ritenzione sono specificate nei dati tecnici di ciascuna CPU. In STEP 7 è possibile visionare il carico della memoria a ritenzione della CPU configurata offline alla voce “Informazioni sul programma > Memoria utilizzata” oppure online nella scheda Online & Diagnostica alla voce “Diagnostica > Memoria”. I dati definiti con ritenzione mantengono il proprio contenuto all’avviamento del programma in seguito a uno STOP o a una caduta della tensione. I dati e gli oggetti seguenti si possono definire con ritenzione: Variabili di blocchi dati globali Variabili di blocchi dati di istanza di un blocco funzionale Merker, temporizzatori, contatori In un blocco dati globale si possono definire a ritenzione singole variabili o tutte le variabili insieme, se l’Accesso ottimizzato al blocco è attivato. Se non è attivo nella tabella di dichiarazione del blocco dati è possibile definire la ritenzione solo per tutte le variabili insieme. Comportamento di ritenzione degli oggetti nella memoria

CONTATORE DELLE ORE DI ESERCIZIO I contatori delle ore di esercizio delle CPU sono a ritenzione e protetti dalla cancellazione totale. Con il reset alle impostazioni di fabbrica i contatori delle ore di esercizio vengono azzerati. ORA L’ora delle CPU è a ritenzione e protetta contro la cancellazione totale. Con il reset alle impostazioni di fabbrica l’ora viene resettata. COMPORTAMENTO DELLA MEMORIA AL CARICAMENTO DI MODIFICHE DEL SOFTWARE Le CPU offrono la possibilità di caricare modifiche del software in STOP o in RUN senza influenzare con il caricamento i valori attuali di variabili già

caricate. In STEP 7 le modifiche del software (nella navigazione del progetto e con la stazione PLC selezionata) si caricano con “Carica nel dispositivo > Software (soltanto modifiche)”. EFFETTI DELLE MODIFICHE SOFTWARE NEL CASO DELLE VARIABILI PLC Le seguenti modifiche software si possono caricare senza influenzare i valori attuali di variabili PLC già caricate: Modifica del nome Modifica del commento Aggiunta di nuove variabili Cancellazione di variabili Modifica delle impostazioni di ritenzione per aree di memoria a ritenzione Il caricamento delle seguenti modifiche software incide sui valori attuali: Modifica del tipo di dati Modifica dell’indirizzo RISERVA DI MEMORIA DI DB GLOBALI E DB DI ISTANZA Ogni blocco funzionale o dati con attributo “Accesso ottimizzato al blocco” attivato contiene per default una riserva di memoria che si può utilizzare per modificare l’interfaccia a posteriori. La riserva di memoria inizialmente non è utilizzata. La riserva di memoria si attiva se si decide di caricare a posteriori le modifiche dell’interfaccia dopo aver compilato e caricato il blocco. Tutte le variabili dichiarate in seguito vengono inserite nella riserva di memoria. Al successivo caricamento le nuove variabili vengono inizializzate sui rispettivi valori di avvio. Le variabili già caricate non vengono nuovamente inizializzate. L’impostazione della riserva di memoria si trova in STEP 7 nelle proprietà del blocco dati alla categoria “Carica senza reinizializzazione”. EFFETTI DELLE MODIFICHE SOFTWARE NEL CASO DEI BLOCCHI DATI SENZA RISERVA DI MEMORIA Se non si utilizza la riserva di memoria è possibile caricare le seguenti

modifiche software senza che vengano reinizializzati i valori attuali delle variabili DB già caricate: Modifica del valore di avvio Modifica del commento EFFETTI DELLE MODIFICHE SOFTWARE NEL CASO DEI BLOCCHI DATI CON RISERVA DI MEMORIA Se si utilizza la riserva di memoria per i blocchi dati (attributo “Accesso ottimizzato al blocco” e pulsante “Carica senza reinizializzazione per variabili a ritenzione” attivati), è possibile caricare le seguenti modifiche software senza che vengano reinizializzati i valori attuali delle variabili DB già caricate: Modifica del valore di avvio Modifica del commento Aggiunta di nuove variabili Se il pulsante “Carica senza reinizializzazione per variabili a ritenzione” è disattivato, al successivo caricamento delle seguenti modifiche software vengono reinizializzati tutti i valori attuali del blocco dati: Modifica del nome Modifica del tipo di dati Modifica della ritenzione Cancellazione di variabili Modifiche delle impostazioni della riserva di memoria

B.2.2

MEMORIA NECESSARIA NEGLI STATI DI FUNZIONAMENTO

SPAZIO DI MEMORIA NECESSARIO NELLO STATO DI FUNZIONAMENTO RUN Per una gestione coerente dell’intero processo di caricamento, la CPU deve disporre di uno spazio di memoria sufficiente sulla SIMATIC Memory Card. I file interessati dal caricamento delle modifiche software nella CPU vengono cancellati solo dopo che sono stati creati i nuovi file. La SIMATIC Memory Card richiede pertanto uno spazio di memoria libero dell’ordine di grandezza

dello spazio necessario per tutti gli oggetti di programma da caricare sulla scheda di memoria. Qualora uno spazio di memoria di quest’ordine di grandezza non fosse disponibile sulla SIMATIC Memory Card, durante il caricamento nella CPU in STEP 7 compare la seguente segnalazione: “Lo spazio di memoria nella scheda di memoria è insufficiente per questa quantità di dati”. Per consentire tuttavia il caricamento di modifiche nella CPU anche in questi casi, si consiglia una o più opzioni tra quelle descritte di seguito: Caricamento in stato di funzionamento RUN – Utilizzando il server web eliminare dalla scheda di memoria i file che non sono più necessari (ad es. file CSV, backup pannello ecc.). – Se possibile, eseguire il caricamento di modifiche importanti nello stato di funzionamento RUN in più fasi o dopo ogni fase di modifica. Caricamento in stato di funzionamento STOP – Qualora non fosse possibile eseguire il caricamento in più fasi, caricare le modifiche di grandi dimensioni nello stato di funzionamento STOP. Va osservato che durante il caricamento in stato di funzionamento STOP i valori attuali di dati non a ritenzione vengono inizializzati. Utilizzo di una scheda di memoria di dimensioni maggiori – Per riuscire ad eseguire in futuro caricamenti importanti nello stato di funzionamento RUN della CPU, utilizzare una scheda di memoria di dimensioni maggiori. EFFETTI DI PICCOLE MODIFICHE DI PROGRAMMA SUL CARICAMENTO Tra gli oggetti di un programma esistono relazioni di dipendenza, ad esempio tra blocchi di codice e blocchi di codice richiamati, tra blocchi di codice e blocchi dati e tra blocchi dati e tipi di dati (tipi di dati PLC, tipi FB). Pertanto, nel caso di una piccola modifica il caricamento può avere dimensioni importanti se tale modifica riguarda molti oggetti dipendenti. Esempio Un programma STEP 7 contiene un blocco organizzativo (OB), 20 funzioni

(FC) e un blocco dati (DB). L’OB richiama i 20 FC e tutti gli FC accedono al DB. Modificando il codice di programma in uno degli FC, il caricamento successivo contiene solo l’FC modificato. Modificando invece il tipo di dati di una variabile nel DB, il caricamento successivo conterrà tutti gli FC e il DB. SPAZIO DI MEMORIA NECESSARIO NELLO STATO DI FUNZIONAMENTO STOP Anche al caricamento nello stato di funzionamento STOP è necessaria una certa riserva di memoria, dato che per l’esecuzione coerente del caricamento di singoli blocchi dati la scheda di memoria deve disporre di sufficiente spazio di memoria libero. I file interessati dal caricamento dei blocchi dati vengono cancellati solo dopo aver creato i nuovi file. Per le modifiche occorre dunque disporre almeno dello spazio di memoria necessario per il blocco dati più grande. A differenza del caricamento in RUN, nello stato di funzionamento STOP i blocchi di codice interessati dal caricamento nella CPU vengono eliminati prima di caricare il blocco di codice modificato. Per questo motivo, al caricamento dei blocchi di codice nello stato di funzionamento STOP non è necessario uno spazio di memoria supplementare sulla scheda di memoria. Qualora al caricamento nello stato di funzionamento STOP non fosse disponibile una riserva sufficiente dello spazio di memoria sulla SIMATIC Memory Card, durante il caricamento nella CPU in STEP 7 compare la seguente segnalazione: “Lo spazio di memoria nella scheda di memoria è insufficiente per questa quantità di dati”. Per consentire tuttavia il caricamento di modifiche nella CPU anche in questi casi, si consiglia una o più opzioni tra quelle descritte di seguito: Utilizzando il server web eliminare dalla scheda di memoria i file che non sono più necessari (ad es. file CSV, backup pannello ecc.). Utilizzare una scheda di memoria di dimensioni maggiori. Per una descrizione di come sostituire la scheda di memoria consultare il paragrafo “Sostituzione della scheda di memoria senza perdita dei dati a ritenzione”. Va osservato che con le tre opzioni seguenti i dati a ritenzione ed eventualmente anche i dati di progetto vanno persi. Le tre opzioni descritte di seguito vanno pertanto impiegate solo se le due opzioni precedenti non

producono il risultato desiderato. In STEP 7 caricare il programma nella CPU con il comando Online > Carica e resetta programma del PLC nel dispositivo”. Estrarre la scheda di memoria dallo slot della CPU e cancellare con il PG il contenuto della scheda di memoria non più necessario. Cancellare l’intero contenuto, ad es. formattando la scheda di memoria. Per una descrizione di come formattare la scheda di memoria consultare il paragrafo “Formattazione di una SI-MATIC Memory Card”. SOSTITUZIONE DELLA SCHEDA DI MEMORIA SENZA PERDITA DEI DATI A RITENZIONE È possibile sostituire la scheda di memoria o utilizzare una SIMATIC Memory Card di dimensioni maggiori senza perdere i dati a ritenzione. Disattivando la CPU, i dati a ritenzione vengono salvati nella memoria a ritenzione della CPU. Quando la CPU è disattivata, è possibile estrarre la scheda di memoria e copiare il contenuto su una scheda di memoria più grande. Riattivando la CPU, i dati salvati alla sua disattivazione vengono ripristinati. FORMATTAZIONE DI UNA SIMATIC MEMORY CARD Per creare spazio di memoria sulla SIMATIC Memory Card è possibile formattare questa scheda di memoria. Durante la formattazione, il contenuto completo della scheda di memoria viene cancellato, ad eccezione dell’indirizzo IP. La SIMATIC Memory Card può essere formattata solo nella CPU. Con la SIMATIC Memory Card inserita procedere nel modo seguente: Formattazione con STEP 7 – Stabilire il collegamento online. – Fare doppio clic nella navigazione del progetto su “Online & diagnostica”. – Selezionare nella finestra di dialogo “Funzioni > Formatta memory card” e poi il pulsante “Formattazione”. Formattazione tramite il display della CPU – Sul display della CPU selezionare il menu “Impostazioni” >

“Funzioni scheda” > “Formatta scheda” e confermare con OK. Non formattare la scheda di memoria tramite Windows. La formattazione con Windows rende inutilizzabile la Memory Card in una CPU della famiglia di prodotti S7-1500. Se la scheda è stata formattata inavvertitamente tramite Windows, è possibile ripristinare la sua funzionalità riformattandola nella CPU nel formato SIMATIC. DURATA DELLA SIMATIC MEMORY CARD Il calcolo della durata teorica di una SIMATIC Memory Card è di supporto nella scelta della scheda necessaria per il task di automazione desiderato. I seguenti esempi forniscono tuttavia solo un valore indicativo. Un calcolo esatto della durata non è possibile in quanto la descrizione non può tenere conto di tutti gli scenari teoricamente possibili. FATTORI CHE INFLUISCONO SULLA DURATA La durata della SIMATIC Memory Card può essere influenzata dai seguenti fattori: Dimensioni della scheda Numero e tipo di operazioni di scrittura Dal numero e dal tipo di operazioni di scrittura dell’applicazione risulta il numero di operazioni di scrittura fisiche sui blocchi di memoria della scheda. STRUTTURA DI UNA SIMATIC MEMORY CARD La memoria flash interna della SIMATIC Memory Card è organizzata in blocchi di memoria. Un blocco di memoria è un’area di memoria che ha dimensioni fisse. Un’operazione di scrittura riguarda sempre interi blocchi di memoria sulla SIMATIC Memory Card. Un blocco di memoria su cui è già stata eseguita un’operazione di scrittura deve essere cancellato prima di poter riscrivere su di esso. Il numero delle operazioni di cancellazione e scrittura per ciascun blocco di memoria è limitato. La durata della SIMATIC Memory Card si misura sul numero massimo di operazioni di cancellazione e scrittura supportate per ogni blocco di memoria. Diversamente dalle operazioni di cancellazione e di scrittura, le

operazioni di lettura influiscono sulla durata in modo trascurabile. L’influenza esercitata dalle operazioni di lettura diminuisce con i progressi nella tecnologia di memorizzazione, pertanto tale influenza non viene presa in considerazione nel presente calcolo. Un numero elevato di operazioni di lettura può tuttavia avere un’influenza minima sulla durata. NUMERO MAX DELLE OPERAZIONI DI SCRITTURA/CANCELLAZIONE Per poter eseguire il maggior numero possibile di operazioni di scrittura sulla SIMATIC Memory Card, il controller interno della scheda di memoria fa sì che i blocchi di memoria disponibili vengano utilizzati in modo uniforme. Degli algoritmi interni distribuiscono gli accessi in scrittura sempre sulla stessa area di memoria logica mediante diverse aree di memoria fisiche per sfruttare così in modo uniforme i blocchi di memoria. La seguente tabella indica il numero max possibile delle operazioni di scrittura/cancellazione in funzione della SIMATIC Memory Card utilizzata. Il numero max delle operazioni di scrittura/cancellazione di ciascuna SIMATIC Memory Card è disponibile anche online nei dati tecnici della rispettiva SIMATIC Memory Card. Capacità di memoria della SIMATIC Memory Card*

Numero di articolo

Numero max delle operazioni di scrittura/cancellazione per ciascun blocco di memoria

4MB

6ES79548LCxx0AA0

500 000

12MB

6ES79548LExx0AA0

500 000

24MB

6ES79548LFxx0AA0

500 000

256MB

6ES79548LL020AA0

200 000

2GB

6ES79548LP010AA0

100 000

2GB

6ES79548LP020AA0

60 000

32GB

6ES79548LT020AA0

50 000

* I dati della capacità di memoria riportati nella tabella costituiscono un valore teorico. La capacità di memoria effettivamente disponibile è inferiore al valore teorico. Ciò è dovuto al fatto che il controller interno della scheda e il sistema di file riservano una parte della memoria disponibile alla propria gestione interna della memoria.

B.2.3

APPROFONDIMENTI SULLE VARIABILI

Per l’assegnazione dei nomi alle variabili PLC, valgono le seguenti regole: Sono ammessi lettere, cifre, caratteri speciali. Le virgolette non sono ammesse. Le variabili PLC devono avere nomi univoci in tutta la CPU anche se sono contenute in diverse tabelle delle variabili di una CPU. Un nome già assegnato a un blocco, a un’altra variabile PLC oppure a una costante all’interno della CPU non può più essere utilizzato per una nuova variabile PLC. Nel controllo dell’univocità non viene operata alcuna distinzione tra caratteri maiuscoli e minuscoli. Se si inserisce un nome già assegnato, viene aggiunto automaticamente un numero progressivo al secondo nome. Se si inserisce due volte il nome “Motore”, ad es., il secondo inserimento viene convertito in “Motore(1)”. Anche i nomi delle tabelle delle variabili PLC devono essere univoci in tutta la CPU. Al momento della creazione della tabella delle variabili PLC definita dell’utente, il nome univoco viene proposto automaticamente. Gli indirizzi delle tabelle delle variabili PLC sono costituiti dall’indicazione dell’area operandi e dell’indirizzo della stessa. Gli indirizzi devono essere univoci in tutta la CPU. Se si inserisce un indirizzo che è già

stato assegnato a un’altra variabile, l’indirizzo viene evidenziato in giallo in entrambe le posizioni e viene emesso un messaggio di errore. La seguente tabella indica le possibili aree operandi. I tipi di dati disponibili dipendono dalla CPU utilizzata: Tipo di dati

Indirizzo

Esempio

BOOL

Le variabili appartenenti al tipo di dati BOOL vengono indirizzate con un numero di byte e con un numero di bit. La numerazione dei byte comincia da 0 per ogni area operando. La numerazione dei bit va da 0 a 7.

Q 1.0

BYTE, CHAR, SINT, USINT

Le variabili appartenenti al tipo di dati BYTE, CHAR, SINT, USINT vengono indirizzate con un numero di byte.

MB 1

WORD, INT, UINT, DATE, S5TIME

Le variabili con tipo di dati WORD, INT, UINT, DATE, S5TIME sono costituite da due byte e vengono indirizzate con il numero del byte meno significativo.

IW 1

DWORD, DINT, UDINT, REAL, TIME, TOD

Le variabili con tipo di dati DWORD, DINT, UDINT, REAL, TIME, TOD sono costituite da quattro byte e vengono indirizzate con il numero del byte meno significativo.

QD 1

LWORD, LINT, ULINT, LTIME, LTOD, LDT, LREAL

Variabili con il tipo di dati LWORD, LINT, ULINT, LTIME, LTOD, LDT, LREAL costituite da 8 byte. Queste variabili vengono indirizzate con il numero del byte più basso nel numero di bit 0.

I 1.0

In una CPU è possibile creare diverse tabelle delle variabili PLC definite dall’utente. Ogni singola tabella deve avere un nome univoco in tutta la CPU. Tutte le CPU dispongono di un’area di memoria il cui contenuto viene mantenuto anche dopo la disattivazione della tensione di alimentazione. Quest’area di memoria viene definita memoria a ritenzione. Per evitare perdite di dati in caso di interruzione della tensione è possibile

salvare determinate variabili PLC in quest’area di memoria. Le impostazioni a ritenzione di variabili PLC vengono definite nella tabella delle variabili PLC. A seconda della famiglia della CPU, i tipi di variabili PLC che possono essere salvati nell’area di memoria a ritenzione sono diversi. La seguente tabella fornisce una panoramica delle opzioni offerte dalle diverse CPU:

Nella tabella delle variabili PLC è possibile determinare la larghezza dell’area di memoria a ritenzione delle variabili PLC. Tutte le variabili i cui indirizzi sono contenuti in quest’area di memoria vengono contrassegnate come a ritenzione. Se è stata impostata la ritenzione per una variabile, la colonna “Ritenzione” della tabella delle variabili PLC contiene un segno di spunta. Per definire la larghezza dell’area di memoria a ritenzione per le variabili PLC procedere nel seguente modo: 1. Fare clic sul pulsante “Ritenzione” nella barra degli strumenti. Si apre la finestra di dialogo “Memoria a ritenzione”. 2. Definire la larghezza dell’area di memoria a ritenzione, indicando il numero dei byte a ritenzione, dei temporizzatori o contatori nella casella di introduzione. 3. Fare clic sul pulsante “OK”. RAGGRUPPAMENTO IN STRUTTURE DELLE VARIABILI PLC PER GLI INGRESSI E LE USCITE Vantaggi delle variabili PLC strutturate per S7-1200 (a partire da V4) e S71500 Per rendere più chiara la struttura del programma si possono raggruppare più indirizzi di ingresso e uscita in una variabile PLC sovraordinata. La variabile PLC sovraordinata è una struttura costituita da un insieme di ingressi o uscite che presentano un’affinità logica. Poiché nel richiamo del blocco si trasferisce la variabile sovraordinata, è sufficiente un solo parametro di ingresso o di uscita per tutti gli ingressi o le uscite che

appartengono allo stesso tipo. Per creare una variabile PLC strutturata si deve innanzitutto definire un tipo di dati PLC (UDT), dichiararvi gli elementi di dati necessari e definirne il nome e il tipo di dati. Quindi si deve aprire la tabella delle variabili PLC e crearvi una variabile PLC sovraordinata. Come tipo di dati va selezionato il proprio tipo di dati PLC. Il sistema riserva un dato numero di indirizzi di ingresso o di uscita a partire dall’indirizzo di avvio della variabile sovraordinata. Il numero di indirizzi riservati dipende dalla lunghezza del tipo di dati PLC. Quando si richiama un blocco che richiede gli ingressi o le uscite riservati per elaborare il programma, si trasferisce la variabile sovraordinata come parametro del blocco. Nel codice del programma si possono indirizzare le singole variabili PLC come elementi della struttura. Le variabili PLC strutturate possono essere utilizzate per raggruppare gli ingressi o le uscite di un modulo funzionale. La seguente figura mostra la rappresentazione schematica di un motore. Per ognuno dei tre ingressi è stato creato un componente nel tipo di dati PLC “Datatype_Motor”.

Le aree di memoria delle variabili dichiarate non si devono sovrapporre. Nell’esempio si vede che il componente “Speed” è del tipo di dati “Integer” e deve quindi iniziare in un indirizzo di parola. Per questa ragione la prima parola di ingresso è stata riempita con la variabile di riempimento “Dummy”. Il componente “Speed” si trova quindi nella seconda parola di ingresso. La figura seguente mostra la variabile PLC sovraordinata “Motor” che si

basa sul tipo di dati “Datatype_Motor”. Con la dichiarazione di “Motor” vengono riservati gli indirizzi IW0 e IW1 sull’unità di ingresso.

Nel blocco “Motor_Control” possono essere indirizzati i singoli componenti della variabile. Indirizzamento

Spiegazione

“Motor”

Indirizzamento della variabile PLC sovraordinata

“Motor”.On

Indirizzamento di un componente di una variabile PLC strutturata

“Motor”.On:P

Indirizzamento di un ingresso o un’uscita di periferia (PI o PQ)

Quando si creano e si utilizzano le variabili PLC strutturate ci si deve attenere alle seguenti regole: Le variabili PLC strutturate sono utilizzabili nell’area di operandi “ingressi” e “uscite”. Le variabili PLC strutturate non sono ammesse nell’area dei merker. Non è possibile indirizzare le variabili PLC strutturate dai dispositivi HMI.

Quando si crea un tipo di dati PLC da utilizzare come base per una variabile PLC si deve tener conto delle seguenti regole: Le aree di memoria dei singoli elementi non devono sovrapporsi. Non raggruppare gli ingressi e le uscite in un unico tipo di dati PLC, ma crearne diversi. Non raggruppare gli ingressi e le uscite di unità diverse in un unico tipo di dati PLC, perché non c’è la certezza che le immagini di processo delle unità vengano aggiornate in modo sincrono. Nei tipi di dati PLC subordinati sono ammessi tutti i tipi di dati tranne “STRING”. Quando si creano le variabili PLC strutturate ci si deve attenere alle seguenti regole: Utilizzare tipi di dati PLC separati per le aree di operandi “ingressi” e “uscite”. Le variabili PLC strutturate non sono ammesse nell’area dei merker. Non raggruppare gli ingressi e le uscite di unità diverse in un unico tipo di dati PLC, perché non c’è la certezza che le immagini di processo delle unità vengano aggiornate in modo sincrono. Per creare una variabile PLC strutturata procedere nel seguente modo: 1. Nella navigazione del progetto fare doppio clic sul comando “Aggiungi nuovo tipo di dati” nella cartella “Tipi di dati PLC”. Viene creata e aperta una nuova tabella di dichiarazione che consente di creare un tipo di dati PLC. 2. Dichiarare tutti i componenti necessari nel tipo di dati PLC. Sono ammessi tutti i tipi di dati tranne “STRING”. 3. Selezionare il tipo di dati PLC nella navigazione del progetto e attivare il comando “Compila > Software (soltanto modifiche)” nel menu di scelta rapida. Il tipo di dati PLC viene compilato e può essere in seguito utilizzato nella tabella delle variabili PLC. Il programma deve essere ricompilato anche se si apportano modifiche ai tipi di dati PLC esistenti, in modo da aggiornare i punti di applicazione del tipo di dati PLC. 4. Aprire una tabella delle variabili PLC nella stessa CPU. 5. Dichiarare una nuova variabile o selezionarne una già disponibile. 6. Selezionare il tipo di dati PLC nella colonna “Tipo di dati” e assegnarlo

alla variabile PLC. La variabile PLC assume la struttura del tipo di dati PLC. Viene assegnato automaticamente un indirizzo adatto. Le variabili PLC strutturate iniziano sempre negli indirizzi di parola. Nella tabella compare solo l’elemento superiore della struttura senza gli elementi subordinati.

B.2.4

APPROFONDIMENTI SULLE COSTANTI

La scheda “Costanti di utente” consente la selezione di costanti simboliche valide per tutta la CPU. Nella scheda “Costanti di sistema” vengono visualizzate le costanti necessarie per il sistema. Sono costanti di sistema, ad es. gli ID hardware preposti all’identificazione di unità. La figura mostra la struttura di entrambe le schede. Il numero delle colonne visualizzate può variare.

Regole per le costanti globali Per i nomi delle costanti globali sono ammessi i seguenti caratteri: Sono ammessi lettere, cifre, caratteri speciali. Le virgolette non sono ammesse. Anche se situate nella CPU in diverse tabelle delle variabili, le costanti globali devono presentare nomi univoci. Un nome già assegnato a un blocco, a un’altra variabile PLC oppure a una costante all’interno della CPU non può più essere utilizzato per una nuova costante. Nel controllo dell’univocità non viene operata alcuna distinzione tra caratteri maiuscoli e minuscoli. Se si inserisce un nome già assegnato, viene aggiunto automaticamente un numero progressivo al secondo nome. Se si inserisce due volte il nome “Motore”, ad es., il secondo inserimento viene convertito in “Motore(1)”. Nelle costanti sono ammessi tutti i tipi di dati ammessi dalla CPU, ad

eccezione dei tipi di dati strutturati. Per il valore della costante è possibile selezionare un valore qualsiasi dal campo valori dei tipi di dati indicati. Ulteriori indicazioni sui campi di valori sono contenute nel capitolo “Tipi di dati”. Le costanti si dichiarano nella scheda “Costanti di utente” della tabella delle variabili PLC. Per la dichiarazione è necessario inserire un nome simbolico, un tipo di dati e un valore fisso per ciascuna costante. Per il valore della costante è possibile selezionare un valore qualsiasi dal campo valori dei tipi di dati indicati. Ulteriori indicazioni sui campi di valori sono contenute nel capitolo “Tipi di dati”. Dopo ogni immissione viene eseguita automaticamente una verifica della sintassi; eventuali errori vengono visualizzati in rosso. Non occorre eliminare immediatamente questi errori ma è possibile proseguire con l’elaborazione ed eseguire le correzioni in un secondo momento. Finché la dichiarazione delle variabili contiene errori di sintassi e la costante è impiegata nel programma, non è tuttavia possibile effettuare la compilazione.

B.2.5

TABELLE DI CONTROLLO E FORZAMENTO

DRAG&DROP PER PORTARE VARIABILI SU TABELLA DI CONTROLLO In TIA Portal, è possibile portare le variabili sulle tabelle di controllo, tramite il Drag&Drop: dalle DB; dalle Tabella delle variabili; direttamente dal codice: seleziono la parte di codice che voglio controllare, trascino sulla tabella ed automaticamente tutte le variabili vengono riportate. Per controllare e modificare i valori del programma utente eseguito da una CPU online si utilizzano le “tabelle di controllo”. È possibile creare e salvare nel progetto diverse tabelle di controllo per supportare svariati ambienti di test. In questo modo si possono riprodurre i test durante la messa in servizio o a scopo di assistenza e manutenzione. Una tabella di controllo contiene le variabili selezionate e definite dall’utente valide in tutta la CPU. Per ogni CPU creata nel progetto viene creata automaticamente una cartella “Tabelle di controllo e di forzamento”. Le tabelle di controllo consentono di controllare e interagire con la CPU mentre esegue il programma utente. È possibile visualizzare o modificare i

valori non solo per le variabili dei blocchi di codice e dei blocchi dati, ma anche per le aree di memoria della CPU, compresi gli ingressi e le uscite (I e Q), gli ingressi della periferia (I:P), i merker (M) e i blocchi dati (DB). La tabella di controllo consente di abilitare le uscite fisiche (Q:P) di una CPU in STOP. La si può usare, ad esempio, per assegnare valori specifici alle uscite mentre si effettua il test del cablaggio per la CPU. Utilizzando la tabella di forzamento è possibile assegnare valori fissi alle singole variabili del programma utente. Questa operazione è chiamata “Forzamento”. Nella tabella di Forzamento sono disponibili le funzioni seguenti: Controllo di variabili. Questa funzione consente di visualizzare i valori attuali delle singole variabili di un programma utente o di una CPU nel PG/PC. Il controllo può essere eseguito con o senza condizione di trigger. Forzamento di variabili. Consente di assegnare un valore fisso a singole variabili della periferia del programma utente. Nella Tabella di forzamento vengono inserite le variabili definite e selezionate dall’utente, valide in tutta la CPU e forzabili nella CPU assegnata. Soltanto gli ingressi e le uscite di periferia possono essere forzati. STEP 7 mette a disposizione anche una tabella di forzamento per “forzare” una variabile su un valore specifico. NOTA: i valori forzati sono memorizzati nella CPU e non nella tabella di controllo. Non è possibile forzare un ingresso (o un indirizzo “I”). Tuttavia, è possibile forzare un ingresso della periferia. Per forzare un ingresso della periferia aggiungere una :P all’indirizzo (ad esempio: “On:P”).

Operandi ammessi per la tabella di forzamento:

La seguente tabella visualizza gli operandi ammessi per il controllo nella

tabella di forzamento:

B.2.5.1 TEST DEL PROGRAMMA (CONTROLLO E MODIFICA DEI DATI CON TABELLA DI CONTROLLO E FORZAMENTO) Come illustrato nella tabella seguente, i valori nella CPU online possono essere controllati e modificati.

La tabella di controllo visualizza i valori delle variabili in tempo reale nello stesso modo in cui nel ladder abilitiamo con gli “occhiali” la visualizzazione dello stato.

L’utente ha la possibilità di testare l’esecuzione del proprio programma sul dispositivo. Si possono controllare gli stati di segnale e i valori delle variabili e preimpostare i valori delle variabili in modo da simulare particolari situazioni per l’esecuzione del programma. PRESUPPOSTI: sul dispositivo deve essere caricato un programma eseguibile. È possibile eseguire i seguenti test: TEST CON LO STATO DEL PROGRAMMA Lo stato del programma permette di controllare l’esecuzione del programma. Visualizzando i valori degli operandi e i risultati logici combinatori (RLO) si possono individuare ed eliminare gli errori logici nel programma. TEST CON LA TABELLA DI CONTROLLO La tabella di controllo consente di controllare e comandare i valori attuali di singole variabili del programma utente o di una CPU. Ai fini del test è possibile assegnare dei valori alle singole variabili e simulare così l’esecuzione di diversi scenari. È inoltre possibile assegnare valori fissi alle uscite di periferia di una CPU nello stato di funzionamento STOP, ad es., per verificare il cablaggio. TEST CON LA TABELLA DI FORZAMENTO La tabella di forzamento consente di controllare e forzare i valori attuali di singole variabili del programma utente o di una CPU. La funzione di forzamento sovrascrive le variabili con dei valori preimpostati per consentire all’utente di testare il programma utente e provare diverse situazioni di esecuzione. CONTROLLO E COMANDO DI VARIABILI PER S7-1500

Per il controllo e il comando delle variabili è necessaria una tabella di controllo. Fare doppio clic nella navigazione del progetto su → Aggiungi nuova tabella di controllo. Aprire la nuova “Watch table_1” facendo doppio clic con il mouse. (→“Tabella di controllo_1”). È possibile immettere singole variabili nella tabella oppure selezionare “Tag table_sorting station”, scegliere le variabili da controllare e trascinarle dalla vista dettagli alla tabella di controllo (→ Default tag table / Tabella delle variabili standard).

Per avere a disposizione tutte le funzioni di controllo e di comando è possibile visualizzare le colonne seguenti: “Show/hide all modify columns” (Visualizza/nascondi tutte le colonne di

comando)

e

“Show/hide

expanded

mode

columns”

(Visualizza/nascondi tutte le colonne del modo avanzato). Selezionare ora il punto di attivazione del controllo (→ Permanent / Permanente).

Sono disponibili i seguenti modi di controllo e di comando: Permanent (permanente; in questo modo gli ingressi vengono controllati o comandati all’inizio e le uscite alla fine del ciclo) Once only, at start of scancycle (Inizio ciclo, una volta) Once only, at end of scancycle (Fine ciclo, una volta) Permanently, at start of scancycle (Inizio ciclo, permanente) Permanently, at end of scancycle (Fine ciclo, permanente) Once only, attransition to STOP (Commutazione in STOP, una volta) Permanently, attransition to STOP (Commutazione in STOP, permanente)

Fare clic su

“Monitor all values once and now” (Controlla subito una

sola volta tutte le variabili) o su

“Monitor all” (Controlla tutto) per

controllare tutti i valori in base alle impostazioni del trigger.

Immettere i valori desiderati in “Modify value” (Valori di comando) per comandare le variabili. Ora fare clic su

“Modify all selected values

once and now” (Comanda subito una sola volta tutti i valori attivati) o su “All active values will be modified by modify with trigger” (Comanda tutti i valori attivati tramite la funzione “Comanda con condizione di trigger”). (→ TRUE →

Comanda tutti i valori attivati tramite la funzione

“Comanda con condizione di trigger”.)

Confermare l’avviso con “Yes” (→ Sì).

L’uscita si attiva benché non siano soddisfatte le condizioni programmate.

NOTA: se si chiude la tabella di controllo o si perde il collegamento con il PLC tutti i comandi di controllo vengono disattivati. FORZAMENTO DI VARIABILI Con la funzione “Forzamento” (comando forzato) è possibile assegnare un valore fisso alle variabili. I valori di forzamento vengono predefiniti come per il comando delle variabili, tuttavia, a differenza di quest’ultimo, dopo lo spegnimento o l’arresto della CPU vengono mantenuti. La differenza tra il “comando delle variabili” e la funzione “forzamento” è sostanzialmente la seguente: al contrario del “comando delle variabili”, con la funzione “forzamento” non è possibile assegnare valori a blocchi dati, temporizzatori, contatori e merker.

Gli ingressi di periferia (ad es. IWxx:P) non possono essere comandati, ma è possibile assegnare loro dei valori con il “forzamento”. I valori fissi preassegnati con il “forzamento”, al contrario del “comando”, non possono essere sovrascritti dal programma utente. Quando si esce dalla tabella di forzamento i valori di forzamento vengono mantenuti, a differenza del “comando”. Se si interrompe il collegamento online con la CPU, le variabili cui è stato assegnato un valore con il “forzamento” mantengono il proprio valore. Per il forzamento è necessario in primo luogo aprire la tabella di forzamento con un doppio clic (→ Force table / Tabella di forzamento). Selezionare l’operando “Q1” con l’indirizzo %Q0.0 dall’elenco (→ Q1).

Con il forzamento gli operandi vengono inseriti con accesso diretto alla periferia (%Q0.0:P).

Inserire il valore di forzamento desiderato e attivarlo con

.

Fare clic su

“Start or replace forcing” e il nuovo ordine di forzamento

viene trasmesso alla CPU. (→ %Q0.0:P→ TRUE →



Avvia o sostituisci forzamento).

Confermare l’avviso con “Yes” (→ Sì).

Il forzamento viene attivato e il LED MAINT giallo sulla CPU si accende. Inoltre, sul display dell’S7-1500 viene visualizzata in alto a destra una F su sfondo rosso.

NOTA: se si chiude la tabella di controllo non si perde il collegamento con il PLC, il forzamento rimane attivo e il LED FRCE giallo sulla CPU rimane acceso.

Per uscire dal forzamento fare clic su “

Stop forcing” e confermare

l’avvertenza successiva con “Yes”. (→

Termina forzamento) “Yes” (→ Sì).

Il forzamento viene chiuso e il LED MAINT giallo sulla CPU si spegne. Se nel controllore esiste già un ordine di forzamento, viene visualizzato nella tabella di controllo con il simbolo .

Facendo clic con il mouse su ).

si visualizzano ulteriori informazioni. (→

Se nel controllore esiste già un ordine di forzamento, è possibile visualizzarlo o chiuderlo anche dalla vista dispositivi online. In questo caso occorre fare clic con il tasto destro del mouse sulla CPU nella vista dispositivi online e selezionare “Update and display forced operands”. (→ Clic con il tasto destro del mouse sulla CPU → Aggiorna e visualizza operandi forzati). La tabella di forzamento verrà visualizzata con gli ordini di forzamento attuali e può essere chiusa (→

Stop forcing / Termina forzamento).

B.2.6

STATO PER I PROGRAMMI KOP

A) VISUALIZZAZIONE Visualizzazione dello stato del programma (premi sul tasto evidenziato in figura). La visualizzazione dello stato del programma viene aggiornata ciclicamente.

La figura seguente mostra un esempio di visualizzazione dello stato del programma in KOP.

B) RAPPRESENTAZIONE Lo stato delle istruzioni e delle linee di un segmento può essere facilmente identificato in base al colore e al tipo di linee e simboli. La seguente tabella spiega l’associazione tra il tipo di rappresentazione e lo stato:

C) ATTIVAZIONE/DISATTIVAZIONE DEL TEST Lo stato del programma può essere attivato per tutti i linguaggi di programmazione. I linguaggi grafici KOP e FUP, inoltre, consentono di attivare lo stato del programma a partire da una determinata posizione o per una particolare selezione. ATTIVAZIONE DELLO STATO DEL PROGRAMMA A PARTIRE DA UN DETERMINATO PUNTO IN UN SEGMENTO Per attivare lo stato del programma a partire da una posizione particolare in KOP e FUP procedere nel seguente modo: 1. Fare clic sul pulsante “Controllo on/off” nella barra degli strumenti.

2. Con il tasto destro del mouse fare clic sulla variabile a partire dalla quale si intende attivare lo stato del programma. 3. Selezionare “Comanda > Controlla da qui” dal menu di scelta rapida. ATTIVAZIONE DELLO STATO DEL PROGRAMMA PER DELLE VARIABILI SELEZIONATE Per attivare lo stato del programma per delle variabili selezionate in KOP e FUP procedere nel seguente modo: 1. Fare clic sul pulsante “Controllo on/off” nella barra degli strumenti. 2. Selezionare le variabili per cui si vuole attivare lo stato del programma. 3. Selezionare “Comanda > Controlla selezione”. COMANDO DELLE VARIABILI Durante il test con lo stato del programma è possibile comandare immediatamente e una sola volta le variabili sui seguenti valori: Comanda a 1 – Comanda le variabili del tipo di dati “Bool” sul valore “True”. Comanda a 0 – Comanda le variabili del tipo di dati “Bool” al valore “False”. Comanda operando – Per le variabili che non sono del tipo di dati “Bool” è possibile impostare un valore di comando. Tenere presente, tuttavia, che non è possibile comandare gli ingressi di periferia, ad es., con TagName:P. PROCEDIMENTO PER COMANDARE LE VARIABILI DURANTE IL TEST CON LO STATO DEL PROGRAMMA 1. Con il tasto destro del mouse fare clic sulla variabile che si intende comandare. 2. Selezionare dal menu di scelta rapida uno dei seguenti comandi: – “Comanda > Comanda a 1” – “Comanda > Comanda a 0” Il contatto M200.0 aperto viene chiuso

Il contatto M201.0 chiuso viene aperto

“Comanda a zero” riporta il contatto nella situazione iniziale.

B.2.7

TIPI DI DATI NELLE DIVERSE CPU S7-1200/1500

B.2.7.1 DISPONIBILITÀ DEI TIPI DI DATI PREDEFINITI PER CPU S7-1200/1500 I tipi di dati definiscono le proprietà dei dati, ad es., la rappresentazione del contenuto e le aree di memoria ammesse. Nel programma utente è possibile utilizzare tipi di dati predefiniti oppure definirne di propri. Le tabelle seguenti mostrano la disponibilità dei tipi di dati predefiniti

nelle diverse CPU (i dati sono estratti dal manuale Siemens):

B.2.7.2 CONFRONTO TRA S7-1200 E S7-1500

Vogliamo mette a confronto il “Set di Istruzioni” dei PLC S7-1200 e 1500, all’interno di TIA Portal (versione Professional). Evidenziamo solo le principali funzioni in cui differiscono i due dispositivi

ISTRUZIONI BASE – CONTATORI

ISTRUZIONI BASE – CONVERSIONE

CONTROLLO PROGRAMMA

DATA E ORA

ISTRUZIONI NON PRESENTI IN S7-1200

Diagnostica

Indirizzamento

B.2.8

CONTROLLO DI FLUSSO DEL PROGRAMMA: MECCANISMO EN/ENO

Durante l’elaborazione di istruzioni, possono verificarsi errori di tempo di

esecuzione che causano un’interruzione del programma. Con l’utilizzo di un meccanismo EN/ENO è possibile evitare quest’inconveniente. Questo meccanismo può essere impiegato su due livelli: Meccanismo EN/ENO per singole istruzioni Meccanismo EN/ENO per i richiami dei blocchi MECCANISMO EN/ENO PER ISTRUZIONI IN KOP/FUP Determinate istruzioni nei linguaggi KOP e FUP presentano un ingresso di abilitazione EN (enable) ed un’uscita di abilitazione ENO (enable output). L’ingresso di abilitazione EN consente di sottoporre a condizioni l’elaborazione dell’istruzione. Le istruzioni vengono eseguite soltanto se lo stato del segnale nell’ingresso di abilitazione EN è “1”. L’uscita di abilitazione ENO consente di interrogare gli errori di tempo di esecuzione nelle istruzioni e di definire la reazione corrispondente. L’uscita di abilitazione ENO ha lo stato del segnale “1” se durante l’elaborazione non si sono verificati errori. L’uscita di abilitazione ENO fornisce lo stato di segnale “0” se viene soddisfatta una delle seguenti condizioni: L’ingresso EN fornisce lo stato di segnale “0”. Durante l’elaborazione si è verificato un errore. Il meccanismo EN/ENO viene utilizzato per le seguenti istruzioni di base: Funzioni matematiche Operazioni di trasferimento Operazioni di conversione Combinazioni logiche a parola Operazioni di spostamento e rotazione Nei linguaggi KOP e FUP l’analisi dell’uscita di abilitazione ENO può essere attivata e disattivata per le singole istruzioni dal menu di scelta rapida. MECCANISMO EN/ENO PER RICHIAMI DEI BLOCCHI IN KOP/FUP Tutti i blocchi richiamati in KOP o FUP vengono dotati di un ingresso di abilitazione EN e di un’uscita di abilitazione ENO al momento del richiamo. Ciò vale per tutti i blocchi richiamati, indipendentemente dal linguaggio di programmazione con cui sono stati creati.

L’ingresso di abilitazione EN può essere impiegato per il richiamo del blocco sottoposto a condizioni. Il blocco viene eseguito soltanto se lo stato del segnale sull’ingresso di abilitazione EN è “1”. Con l’uscita di abilitazione ENO è possibile interrogare lo stato di errore del blocco. Non appena inizia l’elaborazione del blocco, l’uscita assume il segnale “1”. Se non viene impostata esplicitamente a “0” nel codice di programma, l’uscita ENO mantiene il segnale “1”. Tuttavia, è possibile impostarla esplicitamente a “0” per segnalare un’informazione di errore al blocco richiamante. In KOP o FUP l’uscita ENO viene impostata con l’istruzione “RET: Salta indietro”. Esempio di impiego del meccanismo EN/ENO nel linguaggio KOP.

Dopo il contatto normalmente aperto, l’RLO contiene il risultato della combinazione logica precedente: Se “TagIn” ha lo stato del segnale “0”, l’addizione non viene eseguita. EN e ENO hanno entrambi lo stato di segnale “0”. Se “TagIn” ha lo stato del segnale “1”, anche EN ha il valore “1” e l’addizione viene eseguita. Se non si verificano errori durante l’elaborazione dell’istruzione, anche l’uscita ENO ha lo stato di segnale “1” e viene impostata l’uscita “TagOut”. MECCANISMO EN/ENO IN SCL In SCL l’impiego del meccanismo EN/ENO per le istruzioni è opzionale. La sua attivazione può essere eseguita dalla proprietà del blocco “Imposta ENO automaticamente”. Se la proprietà è attiva tutti i blocchi vengono dotati implicitamente di un trattamento errori. Con l’ingresso di abilitazione EN è possibile realizzare un richiamo di

blocco condizionato. L’ingresso di abilitazione EN nell’elenco dei parametri si utilizza come un normale parametro di ingresso. Se EN ha il segnale “1” o se non viene utilizzato viene richiamato il blocco. Se EN ha il segnale “0” il blocco non viene richiamato. Quando si richiamano funzioni in SCL non è possibile utilizzare il meccanismo di abilitazione tramite EN. Al suo posto utilizzare un’istruzione IF per richiamare le funzioni in modo condizionato. Con l’uscita di abilitazione ENO si interroga lo stato di errore del blocco. Se ENO ha il segnale “1” il blocco è stato elaborato senza errori. Se ENO ha il segnale “0” significa che durante l’elaborazione si è verificato un errore. Per interrogare lo stato dell’uscita di abilitazione inserire un ulteriore parametro di uscita con il nome ENO nell’elenco dei parametri al momento del richiamo del blocco. Esempio di impiego del meccanismo EN/ENO in SCL Per l’impiego del meccanismo EN/ENO in istruzioni nel programma SCL, attivare la proprietà del blocco “Imposta ENO automaticamente”. ESEMPIO N.1: impiego dell’uscita di abilitazione ENO per l’istruzione “a/b”. Se l’istruzione “a/b” viene eseguita senza errori, MyOutputBool ha lo stato del segnale “1”.

ESEMPIO N.2: impiego dell’uscita di abilitazione ENO per il richiamo di un

blocco. Se MyTag1 non è maggiore di MyTag2 il richiamo di blocco non viene elaborato. EN e ENO hanno entrambi lo stato di segnale “0”. Se MyTag1 è maggiore di MyTag2, il segnale EN ha lo stato “1” e il richiamo di blocco viene eseguito. Se tutte le istruzioni all’interno di MyFB vengono eseguite senza errori, MyOutputBool ha lo stato del segnale “1”.

ENO IN GRAPH (S7-1500) In GRAPH, tramite l’operando ENO, è possibile valutare se un’operazione è stata eseguita correttamente. Inoltre, può essere attivata l’opzione “Imposta ENO automaticamente”: Attivare l’opzione nelle proprietà del programma per assegnarla come preimpostazione a nuovi blocchi GRAPH. Attivare quest’opzione nelle proprietà dei blocchi per utilizzarla per determinati blocchi. Se quest’opzione è attivata, durante il test con lo stato del programma viene visualizzato l’operando ENO. Quest’ultimo presenta il valore “TRUE” se l’operazione è stata eseguita correttamente e “FALSE” in caso contrario. È possibile utilizzare l’operando ENO nei seguenti casi: Quando si richiamano blocchi dotati dell’uscita di abilitazione ENO. Nel caso di istruzioni durante le quali possono verificarsi errori, ad es., conversioni o funzioni matematiche. MECCANISMO EN/ENO IN CASO DI ERRORE DI ACCESSO ALLA MEMORIA E DI ACCESSO ALLA PERIFERIA Gli errori di accesso alla memoria e di accesso alla periferia non possono

essere analizzati tramite il meccanismo EN/ENO. A questo scopo utilizzare il trattamento globale degli errori tramite OB (S7-300/400 e S7-1200/1500) oppure il trattamento locale degli errori tramite l’istruzione “GetError” (solo con S7-1200/1500). Se per un’istruzione non si è verificato alcun errore di accesso alla memoria, è possibile analizzare il relativo ENO. ATTIVAZIONE E DISATTIVAZIONE DEL MECCANISMO EN/ENO Alcune istruzioni KOP e FUP dispongono dell’uscita di abilitazione ENO (enable output) e si servono quindi del meccanismo EN/ENO che consente di interrogare gli errori del tempo di esecuzione delle istruzioni e di reagire di conseguenza. Per default il meccanismo EN/ENO è disattivato, in modo da migliorare le prestazioni della CPU. Inizialmente non è quindi possibile reagire tramite il valore ENO agli errori del tempo di esecuzione dell’istruzione, tuttavia se necessario è possibile riattivare il meccanismo EN/ENO in qualsiasi momento. Il meccanismo EN/ENO può essere attivato per le singole istruzioni in modo da generare l’ENO. Se lo si attiva per un’istruzione, le ulteriori istruzioni trascinate in seguito nel programma vengono a loro volta inserite con il meccanismo EN/ENO attivo. Se non si vuole utilizzare l’analisi ENO per una data istruzione è possibile disattivare nuovamente questo meccanismo in qualsiasi momento. Le istruzioni trascinate successivamente nel programma verranno quindi inserite senza meccanismo EN/ENO. ATTIVAZIONE DEL MECCANISMO EN/ENO Per attivare il meccanismo EN/ENO di un’istruzione, procedere nel seguente modo: 1. Con il tasto destro del mouse fare clic sull’istruzione nel programma per la quale si intende attivare il meccanismo EN/ENO. 2. Selezionare quindi il comando “Genera ENO” dal menu di scelta rapida. Il valore ENO viene nuovamente generato per quest’istruzione. Ulteriori istruzioni vengono inserite con l’uscita di abilitazione. DISATTIVAZIONE DEL MECCANISMO EN/ENO Per disattivare il meccanismo EN/ENO di un’istruzione, procedere nel

seguente modo: 1. Con il tasto destro del mouse fare clic sull’istruzione nel programma per la quale si intende disattivare il meccanismo EN/ENO. 2. Selezionare quindi il comando “Non generare ENO” dal menu di scelta rapida. Il valore ENO non viene più generato per quest’istruzione. Ulteriori istruzioni vengono inserite senza uscita di abilitazione.

U.D. N.3 COMBINAZIONI LOGICHE, FUNZIONI MATEMATICHE E DI CONTROLLO DEL PROGRAMMA B.3.1

PAROLA DI STATO

La parola di stato raggruppa bit di stato che la CPU utilizza per il comando delle combinazioni logiche binarie e imposta con l’elaborazione digitale. È possibile interrogare i bit di stato e influenzarli in modo mirato. La tabella seguente mostra la disposizione dei bit di stato nella parola di stato:

I bit di stato OS, OV, CC 0 e CC 1 sono visualizzazioni digitali che indicano in particolare i risultati di funzioni matematiche. OS (overflow, con memoria) Il bit di stato OS salva l’impostazione del bit di stato OV. Congiuntamente al bit di stato OV, la CPU imposta anche il bit di stato OS. Tuttavia, mentre l’istruzione successiva regolarmente eseguita resetta il bit OV, il bit di stato OS rimane impostato. Ciò consente di interrogare un overflow del campo numerico o, ad es., l’utilizzo di numeri in virgola mobile non validi in un punto successivo del blocco attuale della CPU. OV (overflow) Il bit di stato OV indica un overflow del campo numerico o l’utilizzo di numeri in virgola mobile non validi. Il bit di stato OV può essere influenzato da funzioni matematiche, istruzioni di conversione e confronti di numeri in virgola mobile. CC 0 e CC 1 (bit di visualizzazione).

I bit di stato CC 0 e CC 1 forniscono informazioni sul risultato delle seguenti istruzioni: Istruzioni di confronto Funzioni matematiche Combinazioni logiche a parola Istruzioni di spostamento e rotazione BR (risultato binario) Il bit di stato BR consente di realizzare il meccanismo EN/ENO per i box o funge da condizione per alcune istruzioni di salto (AWL). Il bit di stato BR può essere influenzato da determinate istruzioni (ad es. SAVE).

B.3.2

COMBINAZIONI LOGICHE DI BIT

RLO (risultato logico combinatorio) Il bit di stato RLO è la memoria intermedia delle combinazioni logiche binarie e non è parte integrante della parola di stato. Nel caso di una prima interrogazione la CPU trasferisce il risultato nell’RLO. A ogni interrogazione successiva il risultato dell’interrogazione viene combinato con l’RLO memorizzato e il risultato viene a sua volta salvato nell’RLO. L’RLO può essere impostato o resettato utilizzando le rispettive istruzioni. L’RLO consente di comandare le istruzioni di salvataggio, temporizzazione e conteggio e di eseguire determinate istruzioni di salto. NOTA: dato che i bit di stato sono necessari solamente per l’elaborazione interna, questi vengono visualizzati solo quando sono disponibili per l’ulteriore elaborazione del programma. SR: Flipflop di impostazione/resettaggio Con l’istruzione “Flipflop di impostazione/resettaggio” si imposta o si resetta il bit di un operando specifico in funzione dello stato del segnale negli ingressi S e R1. Se lo stato di segnale nell’ingresso S è “1” e nell’ingresso R1 è “0”, l’operando specificato viene impostato a “1”. Se lo stato di segnale nell’ingresso S è “0” e nell’ingresso R1 è “1”, l’operando specificato viene resettato a “0”. L’ingresso R1 prevale sull’ingresso S. Con uno stato di segnale “1” in

entrambi gli ingressi S e R1, lo stato di segnale dell’operando indicato viene resettato a “0”. Se lo stato del segnale degli ingressi S e R1 è “0” l’istruzione non viene eseguita. In questo caso lo stato di segnale dell’operando resta invariato. Lo stato di segnale attuale dell’operando viene trasferito nell’uscita Q dove può essere letto.

Gli operandi “TagSR” e “TagOut” vengono impostati (SET) se vengono soddisfatte le seguenti condizioni: L’operando “TagIn_1” ha lo stato di segnale “1”. L’operando “TagIn_2” ha lo stato di segnale “0”. Gli operandi “TagSR” e “TagOut” vengono resettati se è soddisfatta una delle seguenti condizioni: L’operando “TagIn_1” ha lo stato di segnale “0” e l’operando “TagIn_2” lo stato di segnale “1”. Gli operandi “TagIn_1” e “TagIn_2” hanno lo stato di segnale “1”. RS: Flipflop di resettaggio/impostazione Con l’istruzione “Flipflop di resettaggio/impostazione” si resetta o si imposta il bit di un operando specifico in funzione dello stato del segnale negli ingressi R e S1. Se lo stato di segnale nell’ingresso R è “1” e nell’ingresso S1 è “0”, l’operando specificato viene resettato a “0”. Se lo stato del segnale nell’ingresso R è “0” e nell’ingresso S1 è “1”, l’operando specificato viene impostato a “1”. L’ingresso S1 prevale sull’ingresso R. Se lo stato di segnale è “1” in entrambi gli ingressi R e S1 lo stato di segnale dell’operando indicato viene

impostato a “1”. Se lo stato del segnale degli ingressi R e S1 è “0” l’istruzione non viene eseguita. In questo caso lo stato di segnale dell’operando resta invariato. Lo stato di segnale attuale dell’operando viene trasferito nell’uscita Q dove può essere letto.

Gli operandi “TagRS” e “TagOut” vengono resettati alle seguenti condizioni: L’operando “TagIn_1” ha lo stato di segnale “1”. L’operando “TagIn_2” ha lo stato di segnale “0”. Gli operandi “TagRS” e “TagOut” vengono impostati se viene soddisfatta una delle seguenti condizioni: L’operando “TagIn_1” ha lo stato di segnale “0” e l’operando “TagIn_2” lo stato di segnale “1”. Gli operandi “TagIn_1” e “TagIn_2” hanno lo stato di segnale “1”. P_TRIG: Interroga il fronte di salita del segnale del RLO Con l’istruzione “Interroga il fronte di salita del segnale del RLO” si interroga un passaggio da “0” a “1” nello stato di segnale del risultato logico combinatorio (RLO). L’istruzione confronta lo stato di segnale attuale dell’RLO con quello dell’interrogazione precedente memorizzato in un merker di fronte (). Se l’istruzione rileva un passaggio da “0” a “1” nell’RLO è presente un fronte di salita del segnale. Se viene rilevato un fronte di salita del segnale, l’uscita dell’istruzione ha lo stato di segnale “1”. In tutti gli altri casi lo stato del segnale nell’uscita dell’istruzione è “0”.

L’indirizzo del merker del fronte non può essere utilizzato più di una volta nel programma perché in questo caso il bit di merker viene sovrascritto. L’analisi del fronte viene alterata, impedendo di ottenere un risultato univoco. L’area di memoria del merker del fronte deve trovarsi in un DB (area statica in caso di un FB) o in un’area di merker.

Nel merker del fronte “Tag_M” viene salvato l’RLO dell’interrogazione precedente. Se viene rilevato un cambio da “0” a “1” nello stato del segnale dell’RLO viene eseguito il salto all’etichetta CAS1. N_TRIG: Interroga il fronte di discesa del segnale del RLO Con l’istruzione “Interroga il fronte di discesa del segnale del RLO” si interroga un passaggio da “1” a “0” nello stato di segnale del risultato logico combinatorio (RLO). L’istruzione confronta lo stato di segnale attuale dell’RLO con quello dell’interrogazione precedente memorizzato in un merker di fronte (). Se l’istruzione rileva un passaggio da “1” a “0” nell’RLO è presente un fronte di discesa del segnale. Se viene rilevato un fronte di discesa del segnale, l’uscita dell’istruzione ha lo stato di segnale “1”. In tutti gli altri casi lo stato del segnale nell’uscita dell’istruzione è “0”. L’indirizzo del merker del fronte non può essere utilizzato più di una volta nel programma perché in questo caso il bit di merker viene sovrascritto. L’analisi del fronte viene alterata, impedendo di ottenere un risultato univoco. L’area di memoria del merker del fronte deve trovarsi in un DB (area statica in caso di un FB) o in un’area di merker.

R_TRIG: Riconosci fronte di salita del segnale L’istruzione “Riconosci fronte di salita del segnale” consente di riconoscere una transizione dello stato da “0” a “1” all’ingresso CLK. Quest’istruzione confronta lo stato attuale all’ingresso CLK con quello dell’interrogazione precedente salvata nell’istanza indicata (merker del fronte). Se l’istruzione riconosce una commutazione dello stato da “0” a “1” all’ingresso CLK, all’uscita Q viene creato un fronte di salita che significa che per la durata di un ciclo l’uscita porta esattamente il valore TRUE o “1”. In tutti gli altri casi lo stato del segnale nell’uscita dell’istruzione è “0”. Inserendo l’istruzione nel programma viene automaticamente aperta la finestra di dialogo “Opzioni di richiamo” in cui è possibile definire se il merker del fronte debba essere salvato in un blocco dati (istanza singola) separato oppure nell’interfaccia del blocco come variabile locale (multiistanza).

Nelle variabili “R_TRIG_DB” viene salvato il loro stato precedente all’ingresso CLK. Se negli operandi “TagIn_1” e “TagIn_2” o se nell’operando “TagIn_3” viene rilevata una transizione dello stato del segnale da “0” a “1”, l’uscita “TagOut_Q” emette lo stato del segnale “1” per la durata di un ciclo. F_TRIG: Riconosci fronte di discesa del segnale L’istruzione “Riconosci fronte di discesa del segnale” consente di riconoscere una modifica dello stato da “1” a “0” all’ingresso CLK. Quest’istruzione confronta lo stato attuale all’ingresso CLK con quello dell’interrogazione precedente salvata nell’istanza indicata (merker del fronte). Se l’istruzione riconosce una commutazione dello stato da “1” a “0” all’ingresso CLK, all’uscita Q viene creato un fronte di discesa che significa che per la durata di un ciclo l’uscita porta esattamente il valore TRUE o “1”. In tutti gli altri casi lo stato del segnale nell’uscita dell’istruzione è “0”. Inserendo l’istruzione nel programma viene automaticamente aperta la finestra di dialogo “Opzioni di richiamo” in cui è possibile definire se il merker del fronte debba essere salvato in un blocco dati (istanza singola) separato oppure nell’interfaccia del blocco come variabile locale (multiistanza).

Nelle variabili “F_TRIG_DB” viene salvato il loro stato precedente all’ingresso CLK. Se negli operandi “TagIn_1” e “TagIn_2” o se nell’operando “TagIn_3” viene rilevata una transizione dello stato del segnale

da “1” a “0”, l’uscita TagOut_Q” emette lo stato del segnale “1” per la durata di un ciclo.

B.3.3

FUNZIONI MATEMATICHE

“CALCULATE”: CALCOLA Con l’istruzione “Calcola” si definisce e si esegue un’espressione per il calcolo di operazioni matematiche o combinazioni logiche complesse in funzione del tipo di dati selezionato. Il tipo di dati dell’istruzione può essere selezionato nella casella di riepilogo “” del box dell’istruzione. In funzione del tipo di dato scelto è possibile combinare la funzionalità di determinate istruzioni in modo da poter eseguire calcoli complessi. L’espressione da calcolare va indicata in una finestra di dialogo che può essere richiamata dal simbolo “Calcolatrice” sul margine superiore destro del box dell’istruzione. L’espressione può contenere i nomi dei parametri di ingresso e la sintassi delle istruzioni. Non è consentito indicare il nome o l’indirizzo degli operandi. Il box dell’istruzione contiene nello stato di base almeno 2 ingressi (IN1 e IN2). Il numero degli ingressi è ampliabile. Gli ingressi inseriti vengono numerati in ordine crescente nel box. I valori degli ingressi vengono utilizzati per eseguire l’espressione indicata. Non tutti gli ingressi definiti devono essere utilizzati nell’espressione. Il risultato dell’istruzione viene trasferito nell’uscita OUT. Se una delle operazioni matematiche dell’espressione non riesce, non viene trasferito alcun risultato nell’uscita OUT e l’uscita di abilitazione ENO ha lo stato di segnale “1”. Se nell’espressione si utilizzano ingressi che non sono presenti nel box, questi vengono inseriti automaticamente. Perché questo sia possibile è necessario che i nuovi ingressi da definire siano stati numerati in modo continuo. Ad esempio, non è possibile utilizzare nell’espressione l’ingresso IN4 se non è stato definito l’ingresso IN3. L’uscita di abilitazione ENO ha lo stato di segnale “0” se è soddisfatta una delle seguenti condizioni: L’ingresso di abilitazione “EN” ha lo stato di segnale “0”. Il risultato o un risultato intermedio dell’istruzione “Calcola” è fuori dal campo ammesso per il tipo di dati indicato nell’uscita OUT. Un numero in virgola mobile ha un valore non valido.

Si è verificato un errore durante l’esecuzione di una delle istruzioni indicate nell’espressione. La seguente tabella mostra le istruzioni che possono essere combinate ed eseguite nell’espressione dell’istruzione “Calcola” in funzione del tipo di dati scelto:

La seguente tabella mostra i parametri dell’istruzione “Calcola”:

ESEMPIO: calcolo di un’equazione complessa->RESULT = ((5 + 10) x 4) / 6 NOTA: nell’istruzione “Calculate” non possono essere inseriti valori numerici se non come ingressi.

Se l’ingresso “Tag_Input” ha lo stato di segnale “1”, l’istruzione viene eseguita. Il valore dell’operando “A” viene sommato al valore dell’operando

“B”. La somma intermedia viene moltiplicata per “C” e infine divisa per il valore dell’operando “D”. Il risultato finale viene memorizzato nell’operando “RESULT”. Se non si verificano errori durante l’esecuzione delle singole istruzioni, l’uscita di abilitazione ENO e l’operando “Tag_Output” vengono impostati a “1”.

B.3.4

ISTRUZIONI CONTROLLO DEL PROGRAMMA

LABEL: Etichetta di salto Con un’etichetta di salto si identifica un segmento di destinazione nel quale continuare l’elaborazione del programma dopo un salto. L’etichetta di salto e l’istruzione nella quale l’etichetta è indicata come destinazione del salto devono trovarsi nello stesso blocco. La denominazione di un’etichetta di salto può essere assegnata una volta sola all’interno del blocco. Se si utilizza una CPU S7-1200, è possibile dichiarare massimo 32 etichette di salto, e con una CPU S7-1500, massimo 256 etichette di salto. Si può inserire una sola etichetta per segmento. Ogni etichetta di salto può essere raggiunta da diverse posizioni. ---( JMP ): Salta se RLO = 1 Con l’istruzione “Salta se RLO = 1” si interrompe l’elaborazione lineare del programma per proseguirla in un altro segmento. Il segmento di destinazione deve essere identificato da un’etichetta di salto (LABEL) il cui nome va indicato nel segnaposto sopra l’istruzione e deve essere contenuta nello stesso blocco in cui viene eseguita l’istruzione. La sua denominazione può essere assegnata una volta sola nel blocco. All’interno di un segmento è ammessa una sola bobina per il salto. Se il risultato logico combinatorio (RLO) nell’ingresso dell’istruzione è “1” viene eseguito il salto al segmento identificato dall’etichetta specificata. Il salto può essere effettuato verso segmenti con numero superiore o inferiore. Se la condizione nell’ingresso dell’istruzione non è soddisfatta (RLO = 0) l’elaborazione del programma prosegue nel segmento successivo.

ESEMPIO Se l’operando “TagIn_1” ha lo stato di segnale “1” viene eseguita l’istruzione

“Salta se RLO = 1”. L’elaborazione lineare del programma viene interrotta e prosegue nel segmento 3 identificato dall’etichetta di salto “CAS1”. Se l’ingresso “TagIn_3” ha lo stato di segnale “1” l’uscita “TagOut_3” viene resettata. ---( JMPN ): Salta se RLO = 0 Con l’istruzione “Salta se RLO = 0” si interrompe l’elaborazione lineare del programma per proseguirla in un altro segmento se il risultato logico combinatorio nell’ingresso dell’istruzione è “0”. Il segmento di destinazione deve essere identificato da un’etichetta di salto (LABEL) il cui nome va indicato nel segnaposto sopra l’istruzione. L’etichetta indicata deve essere contenuta nello stesso blocco in cui viene eseguita l’istruzione. La sua denominazione può essere assegnata una volta sola nel blocco. All’interno di un segmento è ammessa una sola bobina per il salto. Se il risultato logico combinatorio (RLO) nell’ingresso dell’istruzione è “0” viene eseguito il salto al segmento identificato dall’etichetta specificata. Il salto può essere effettuato verso segmenti con numero superiore o inferiore. Se il risultato logico combinatorio nell’ingresso dell’istruzione è “1”, l’elaborazione del programma prosegue nel segmento successivo. ESEMPIO Se l’operando “TagIn_1” ha lo stato di segnale “0” viene eseguita l’istruzione “Salta se RLO = 0”. L’elaborazione lineare del programma viene interrotta e prosegue nel segmento 3 identificato dall’etichetta di salto CAS1. Se l’ingresso “TagIn_3” ha lo stato di segnale “1” l’uscita “TagOut_3” viene resettata.

JMP_LIST: Rileva elenco di salti Con l’istruzione “Rileva elenco di salti” si definiscono diversi salti

condizionati riprendendo l’elaborazione del programma in un determinato segmento in funzione del valore del parametro K. I salti possono essere definiti specificando delle etichette di salto (LABEL) nelle uscite del box dell’istruzione. Il numero di uscite del box dell’istruzione può essere aumentato. È possibile dichiarare max 32 uscite utilizzando una CPU S71200 e max 99 uscite con una CPU S7-1500. La numerazione delle uscite inizia dal valore “0” e viene incrementata ad ogni nuova uscita. Nelle uscite dell’istruzione è possibile indicare solo etichette di salto. Non è consentito indicare istruzioni o operandi. Indicando il valore del parametro K si definisce il numero dell’uscita e quindi l’etichetta del salto dalla quale dovrà proseguire il programma. Se il valore del parametro K è maggiore del numero di uscite disponibili, l’elaborazione del programma continua nel successivo segmento del blocco. L’istruzione “Rileva elenco di salti” viene eseguita solo se lo stato del segnale nell’ingresso di abilitazione EN è “1”.

K = Indica il numerodell’uscita e quindi il salto che viene eseguito. DEST0 = Prima etichetta disalto DEST1 = Seconda etichetta di salto. DEST2 = Terza etichetta di salto. SWITCH: Distributore di salto

Con l’istruzione “Distributore di salto” si definiscono diversi salti del programma che vengono eseguiti in funzione del risultato di una o più istruzioni di confronto. Il valore da confrontare può essere indicato nel parametro K e viene confrontato con i valori forniti dai singoli ingressi. Il tipo di confronto può essere scelto per ciascun ingresso. La disponibilità delle diverse istruzioni di confronto dipende dal tipo di dati dell’istruzione. L’elaborazione dell’istruzione inizia con il primo confronto e continua finché una condizione di confronto è soddisfatta. Se una condizione è soddisfatta, le altre non vengono considerate. Se nessuna delle condizioni di confronto è soddisfatta viene eseguito il salto nell’uscita ELSE. Se non è stato definito un salto nell’uscita ELSE l’elaborazione del programma continua dal segmento successivo.

DEST0 = Salta all’etichetta “LABEL0” se il valore del parametro K è uguale a Tag_Value_1. DEST1 = Salta all’etichetta “LABEL1” se il valore del parametro K è maggiore diTag_Value_2. DEST2 = Salta all’etichetta “LABEL2” se il valore del parametro K è minore diTag_Value_3. ELSE = Salta all’etichetta “LABEL3” se nessuna delle condizioni di confronto viene soddisfatta.

--(RET): Salta indietro Con l’istruzione “Salta indietro” si conclude l’esecuzione di un blocco. Esistono tre modi di eseguire questa operazione: Senza richiamo dell’istruzione “Salta indietro” il blocco viene chiuso al termine dell’esecuzione dell’ultimo segmento. L’ENO della funzione di richiamo viene impostato allo stato di segnale “1”. Richiamo dell’istruzione “Salta indietro” preceduta da una combinazione logica (si veda esempio). Il blocco viene chiuso se il collegamento sinistro ha lo stato di segnale “1”. L’ENO della funzione di richiamo corrisponde all’operando. Richiamo dell’istruzione “Salta indietro” non preceduta da una combinazione logica. Il blocco viene chiuso. L’ENO della funzione di richiamo corrisponde all’operando. In un segmento è consentito utilizzare solo una bobina di salto (“Salta indietro”, “Salta se RLO = 1”, “Salta se RLO = 0”). ESEMPIO Se l’operando “TagIn” ha lo stato di segnale “1” viene eseguita l’istruzione “Salta indietro”. L’elaborazione del programma viene interrotta nel blocco richiamato e proseguita in quello richiamante. L’uscita di abilitazione ENO della funzione di richiamo viene resettata allo stato di segnale “0”.

DOMANDE DI RIEPILOGO 1) Qual è la differenza tra alimentatori PS e PM? 2) Quale vantaggio si ha nell’usare una CPU 1511C? 3) È possibile ripristinare un progetto da una memory card (SD)? 4) È sempre possibile migrare i progetti?

5) Qual è l’utilità dei progetti di riferimento? 6) In che modo è possibile effettuare l’aggiornamento del firmware? 7) Dove sono inserite (dichiarate) le costanti? 8) Qual è l’utilità della tabella di forzamento? 9) I PLC S7-1200 e S7-1500 utilizzano le stesse istruzioni? 10) A cosa serve l’istruzione JMP_list? 11) In quali situazioni risulta utile l’istruzione Calculate?

MODULO C

OROLOGIO HARDWARE PREREQUISITI: Saper utilizzare le funzioni di base di un PLC Saper realizzare un Ladder Saper utilizzare un personal computer OBIETTIVI: Saper realizzazione progetti con programmazione temporale

U.D. N.1 OROLOGIO HARDWARE La CPU dispone di un orologio hardware. Un condensatore a elevata capacità fornisce l’energia necessaria per far funzionare l’orologio quando la CPU è spenta. Il condensatore si ricarica quando la CPU è alimentata e dopo un minimo di 24 ore generalmente ha energia sufficiente a far funzionare l’orologio per 20 giorni. I modelli di PLC S7-1200 e S7-1500 permettono di utilizzare le impostazioni della data e dell’ora, lette dal PC o attraverso un orologio interno che può essere sincronizzato con quello solare. Le istruzioni di orologio consentono di impostare e leggere l’orologio di sistema del PLC. STEP 7 imposta l’orologio hardware sull’ora e la data di sistema che ha un valore di default preconfigurato o impostato durante un reset in fabbrica. Per poter utilizzare l’orologio hardware lo si deve impostare. L’ora può essere impostata con la funzione “Imposta data e ora” della vista “Online e diagnostica” della CPU online. OSSERVAZIONI: la CPU non verifica se il giorno della settimana corrisponde alla data ed è quindi possibile che vengano immesse date errate, quali il 30 febbraio. L’utente dovrà accertarsi di aver immesso la data corretta. STEP 7 calcola l’ora di sistema aggiungendo o sottraendo a quella impostata lo scostamento del sistema operativo Windows dall’UTC (Coordinated Universal Time). Se si imposta l’ora sull’attuale ora locale e se il fuso orario e l’ora legale impostati in Windows corrispondono a quelli locali, l’ora di sistema corrisponderà all’UTC. STEP 7 contiene istruzioni per la lettura e la scrittura dell’ora di sistema (RD_SYS_T e WR_SYS_T), per la lettura dell’ora locale (RD_LOC_T) e per l’impostazione del fuso orario (SET_TIMEZONE). L’istruzione RD_LOC_T calcola l’ora locale in base agli scostamenti del fuso orario e dell’ora legale impostati nella configurazione dell’orologio nelle proprietà generali della

CPU.

C.1.1

ISTRUZIONI DI DATA E ORA

Time I dati TIME sono memorizzati come numero intero doppio con segno espresso in millisecondi. Il formato dell’editor può usare le informazioni per giorno (d), ore (h), minuti (m), secondi (s) e millisecondi (ms). Non è necessario specificare tutte le unità di tempo. Ad esempio, T#5h10s e 500h sono validi. II valore totale di tutti i valori di unità specificati non può superare il limite superiore o inferiore in millisecondi per il tipo di dati Time (-2.147.483.648 ms ... +2.147.483.647 ms). Date I dati DATE sono memorizzati come numero intero senza segno che viene interpretato come il numero di giorni aggiunti alla data di base 01/01/1990 per ottenere la data specificata. Il formato dell’editor deve specificare anno, mese e giorno. TOD I dati TOD (Time Of Day) sono memorizzati come numero intero doppio senza segno che viene interpretato come il numero di millisecondi a partire dalla mezzanotte per l’ora del giorno specificata (mezzanotte = 0 ms). Devono essere specificati ora (24 ore/giorno), minuti e secondi. La specifica della frazione di secondo è opzionale. DTL II tipo di dati DTL (Date and Time Long) utilizza una struttura a 12 byte che salva le informazioni su data e ora. I dati DTL possono essere definiti sia nella memoria temporanea di un blocco che in un DB. Nella

colonna “Valore iniziale” dell’editor di DB deve essere inserito un valore per tutti i componenti. Lunghezza e campo per DTL

Ogni componente del DTL contiene un diverso tipo di dati e campo di valori. Il tipo di dati di un valore specificato deve essere uguale a quello dei relativi componenti. Elementi della struttura del DTL

NOTA: Il formato numerico BCD è supportato dalle istruzioni di conversione nonostante non sia disponibile come tipo di dati.

Le istruzioni di data e ora consentono di programmare operazioni di calcolo della data e dell’ora.

T_COMP confronta variabili temporali T_CONV converte il tipo di dati di un valore di data e ora: (da Time a DInt) o (da DInt a Time) T_ADD somma i valori Time e DTL: (Time + Time = Time) o (DTL + Time = DTL) T_SUB sottrae i valori Time e DTL: (Time - Time = Time) o (DTL Time = DTL) T_DIFF fornisce la differenza tra i due valori DTL come valore Time: DTL - DTL = Time T_COMBINE combina un valore Date e un valore Time_and_Date per creare un valore DTL T_COMP: Confronta variabili temporali Consente di confrontare il contenuto di due variabili con il tipo di dati “Temporizzatori” oppure “Date e ora”. Supporta il confronto dei seguenti tipi di dati: DATE, TIME, LTIME, TOD (TIME_OF_DAY), LTOD (LTIME_OF_DAY), DT (DATE_AND_TIME), LDT (DATE_AND_LTIME), DTL, S5Time. Per poter eseguire il confronto, la lunghezza e il formato del tipo di dati devono coincidere. Il risultato del confronto viene salvato come valore di ritorno nel parametro OUT. Il parametro OUT viene impostato a “1” se la condizione di confronto è soddisfatta. Esistono le seguenti possibilità di confronto: Simbolo

Descrizione

EQ

Il valore di ritorno ha lo stato di segnale “1” se la data/ora nei parametri IN1 e IN2 sono uguali.

NE

Il valore di ritorno ha lo stato di segnale “1” se la data/ora nei parametri IN1 e IN2 sono diversi.

GE

Il valore di ritorno ha lo stato di segnale “1” se la data/ora nel parametro IN1 è maggiore (più recente) o uguale a quella del parametro IN2.

LE

Il valore di ritorno ha lo stato di segnale “1” se la data/ora nel parametro IN1 è minore (meno recente) o uguale a quella del parametro IN2.

GT

Il valore di ritorno ha lo stato di segnale “1” se la data/ora nel parametro IN1 è maggiore (più recente) di quella del parametro IN2.

LT

Il valore di ritorno ha lo stato di segnale “1” se la data/ora nel parametro IN1 è minore (meno recente) di quella del parametro IN2.

T_CONV: Estrai e converti tempi L’istruzione “T_CONV” consente di convertire il tipo di dati nel parametro di ingresso IN nel tipo di dati che viene emesso nell’uscita OUT. I box dell’istruzione dell’ingresso e dell’uscita permettono di selezionare i formati di dati per la conversione.

T_ADD: Somma tempi Questa istruzione consente di sommare l’indicazione dell’ora nel parametro di ingresso IN1 a quello indicato nel parametro di ingresso IN2. Il risultato può essere letto nel parametro di uscita OUT. È possibile sommare i seguenti formati: Somma di una durata ad un’altra. Esempio: somma di un tipo di dati TIME ad un altro tipo di dati TIME. Somma di una durata ad una data e ora. Esempio: somma di un tipo di dati TIME al tipo di dati DTL.

Il tipo di dati per il valore del parametro di ingresso IN1 e del parametro di uscita OUT può essere determinato selezionando i box dell’ingresso e dell’uscita dell’istruzione. Nel parametro di ingresso IN2 le indicazioni temporali sono consentite esclusivamente nel formato TIME (nelle unità S71500 anche LTIME). Somma di una durata a un’altra

Somma di una durata a una data e ora

T_SUB: Sottrai tempi Questa istruzione consente di sottrarre l’indicazione temporale nel parametro di ingresso IN2 dall’indicazione temporale nel parametro di ingresso IN1. La differenza può essere letta nel parametro di uscita OUT. È possibile sottrarre i seguenti formati: Sottrazione di una durata da un’altra. Esempio: sottrazione di una durata del tipo di dati TIME da una durata del tipo di dati TIME. Il risultato può essere emesso in una variabile del tipo di dati TIME.

Sottrazione di una durata da una data e ora. Esempio: sottrazione di una durata del tipo di dati TIME da una data e ora del tipo di dati DTL. Il risultato può essere emesso in una variabile del tipo di dati DTL. I formati dei valori del parametro di ingresso IN1 e del parametro di uscita OUT possono essere determinati selezionando i tipi di dati del parametro di ingresso e del parametro di uscita dell’istruzione. Sottrazione di una durata da un’altra

Sottrazione di una durata da una data e ora

T_DIFF: Differenza di tempo Questa istruzione consente di sottrarre l’indicazione dell’ora nel parametro di ingresso IN2 dall’indicazione dell’ora nel parametro di ingresso IN1. Il risultato viene emesso nel parametro di uscita OUT. Se l’indicazione dell’ora nel parametro di ingresso IN2 è maggiore di quella indicata nel parametro di ingresso IN1, il risultato emesso nel parametro di uscita OUT sarà costituito da un valore negativo. Se il risultato della sottrazione si trova al di fuori del campo numerico TIME, il risultato viene impostato su “0” (0:00) e l’uscita di abilitazione ENO = “0”.

T_COMBINE: Combina tempi L’istruzione concentra il valore di una data con quello di una determinata ora e converte entrambi in un’indicazione combinata di data e ora. Nel parametro di ingresso IN1 viene indicata la data. Nel tipo di dati DATE deve essere indicato un valore compreso tra 1990-01-01 e 2089-12-31 (non viene controllato). Nel valore di ingresso IN2 viene indicata data e ora (tipo di dati TOD/LTOD). Nel valore di uscita OUT viene emesso il tipo di dati in un’indicazione combinata di data e ora.

C.1.2

LE ISTRUZIONI DI OROLOGIO E CALENDARIO

WR_SYS_T consente di impostare la data e l’ora dell’orologio della CPU. La data e l’ora vanno specificate in formato DTL nell’ingresso IN dell’istruzione. Leggendo l’ingresso RET_VAL si può sapere se si sono verificati errori durante l’esecuzione dell’istruzione. L’istruzione “WR_SYS_T” non può essere utilizzata per trasferire i dati relativi al fuso orario o all’ora legale.

WR_LOC_T: Scrivi ora locale Consente di impostare la data e l’ora dell’orologio della CPU. La data e l’ora vengono specificate nel parametro di ingresso LOCTIME come ora locale. Il valore deve essere compreso nel seguente campo: Con DT: min. DT#1990-01-01-00:00:00, max. DT#2089-12-3123:59:59.999 Con DTL: min. DTL#1970-01-01-00:00:00.0, max. DTL#2200-1231-23:59:59.999999999 Con LDT: min. LDT#1970-1-1-0:0:0.000000000, max. LDT#220012-31-23:59:59.999999999 La granularità dell’indicazione temporale per l’ora locale e di sistema è specifica per il prodotto e ammonta ad almeno un millisecondo. I valori di ingresso nel parametro LOCTIME, inferiori a quelli supportati nella CPU, vengono arrotondati durante il calcolo dell’ora di sistema. Utilizzo di WR_LOC_T durante il passaggio dall’ora legale all’ora solare 1) Passaggio dall’ora solare a quella legale. Si ipotizzi che l’ora del passaggio sia alle 02:00 del mattino e che gli orologi vengano spostati in avanti di un’ora. Ciò implica l’assenza dell’ora compresa tra 02:00:00:000000000 e 02:59:59:999999999. Indicando quest’ora in LOCTIME, viene emesso il codice di errore W#16#8089. DST non è rilevante. 2) Passaggio dall’ora legale a quella solare. Si ipotizzi che l’ora del passaggio sia alle 03:00 del mattino e che gli orologi vengano spostati

indietro di un’ora. Ciò implica la doppia presenza dell’ora compresa tra 02:00:00:000000000 e 02:59:59:999999999. In tutte le indicazioni temporali per LOCTIME che si collocano tra le 02:00:00:000000000 e 02:59:59:999999999, è necessario definire se l’ora sia riferita al momento precedente o successivo al cambio dell’ora. Quest’accertamento si effettua con il parametro DST: Con DST = TRUE l’indicazione temporale si colloca nella prima di queste due ore, vale a dire ancora nell’ora legale. Con DST = FALSE l’indicazione temporale si colloca nella seconda di queste due ore, vale a dire già nell’ora solare. Per tutte le indicazioni temporali LOCTIME che si collocano al di fuori dell’ora doppia, DST è privo di significato.

Parametro RET_VAL Codice di errore*

Descrizione

0000

Nessun errore.

8080

Valore non valido nel parametro LOCTIME.

8081

Il valore temporale indicato nel parametro LOCTIME non è compreso nel campo valori ammesso: • Con DT: min. DT#1990-01-01-00:00:00, max. DT#2089-12-3123:59:59.999

8082**

Valore non valido nell’indicazione del mese (byte 2 nel formato

DTL). 8083**

Valore non valido nell’indicazione del giorno (byte 3 nel formato DTL).

8084**

Valore non valido nell’indicazione dell’ora (byte 5 nel formato DTL).

8085**

Valore non valido nell’indicazione dei minuti (byte 6 nel formato DTL).

8086**

Valore non valido nell’indicazione dei secondi (byte 7 nel formato DTL).

8087**

Valore non valido nell’indicazione dei nanosecondi (byte da 8 a 11 nel formato DTL).

8089

Il valore temporale non esiste (ora scaduta durante il passaggio all’ora legale).

80B0

Guasto dell’orologio hardware.

* I codici di errore nell’editor di programma possono essere rappresentati come valore intero o esadecimale. ** Soltanto in caso di applicazione dell’ora locale nel parametro LOCTIME nel formato DTL.

RD_SYS_T consente di leggere la data e l’ora attuali dell’orologio della CPU. I dati letti vengono caricati in formato DTL nell’uscita OUT dell’istruzione. Il valore emesso non contiene indicazioni sul fuso orario o l’ora legale. Leggendo l’ingresso RET_VAL si può sapere se si sono verificati errori durante l’esecuzione dell’istruzione.

RD_LOC_T consente di leggere l’ora locale corrente dell’orologio della CPU e di caricarla in formato DTL nell’uscita OUT. Per l’emissione dell’ora locale vengono utilizzati i dati relativi al fuso orario e all’inizio dell’ora legale e dell’ora solare configurati per l’orologio della CPU. La data e l’ora locale vengono calcolate sulla base degli offset per il fuso orario e l’ora legale impostati dall’utente in Configurazione dispositivi, Orologio. La configurazione del fuso orario indica un offset rispetto al tempo coordinato universale (UTC). La configurazione dell’ora legale specifica il mese, la settimana, il giorno e l’ora di inizio dell’ora legale. Anche la configurazione dell’ora solare specifica il mese, la settimana, il giorno e l’ora di inizio dell’ora solare. L’offset del fuso orario viene applicato al valore dell’ora di sistema. L’offset dell’ora legale viene applicato solo quando è in vigore l’ora legale.

Codici delle condizioni di errore: ENO = 1

significa che non si è verificato alcun errore.

ENO = 0

significa che si è verificato un errore di esecuzione e l’uscita RET_VAL fornisce il codice della relativa condizione.

SET_TIMEZONE: Imposta fuso orario L’istruzione “SET_TIMEZONE” imposta i parametri per il fuso orario locale e il passaggio tra l’ora locale/solare. Le impostazioni effettuate con l’istruzione “SET_TIMEZONE” corrispondono a quelle delle proprietà della CPU. Per eseguire l’istruzione “SET_TIMEZONE” si memorizzano i parametri corrispondenti nel tipo di dati di sistema TimeTransformationRule. Tenendo conto delle impostazioni per il fuso orario e il passaggio tra l’ora locale/solare viene calcolata l’ora locale in base all’ora di sistema. L’ora di sistema della CPU è l’ora UTC. Per la comunicazione all’interno del sistema si usa esclusivamente l’ora di sistema.

Parametro STATUS Codice di errore*

Descrizione

7000

Nessun ordine in corso.

7001

Inizio dell’elaborazione dell’ordine Parametro BUSY = 1, DONE = 0.

7002

Richiamo intermedio (REQ irrilevante): istruzione già attiva; BUSY ha il valore “1”.

808x

Immissione errata nel x° parametro del tipo di dati di sistema TimeTransformationRule. Esempio: Il codice di errore 8084 corrisponde a un’immissione errata nel 4° parametro (DaylightStartWeek). Sono validi sono i valori da 1 a 5.

80C3

Errore di risorse temporaneo: la CPU sta elaborando il maggior numero possibile di richiami simultanei del blocco. “SET_TIMEZONE” non può

essere eseguito prima che si sia concluso almeno un richiamo del blocco. * I codici di errore nell’editor di programma possono essere rappresentati come valore intero o esadecimale.

RTM: Contatore ore di esercizio Questa istruzione consente di impostare, avviare, arrestare e leggere un contatore delle ore di esercizio a 32 bit della CPU. Si tenga presente che il contatore delle ore di esercizio può anche essere arrestato o riavviato durante l’esecuzione del programma utente con possibile conseguente alterazione dei valori salvati.

C.1.3

LETTURA DELLA DATA DALL’OROLOGIO HARDWARE

Le istruzioni di data e ora consentono di programmare operazioni di calcolo della data e dell’ora dell’orologio hardware. Per utilizzare le funzioni dell’orologio è necessario prima definire un nuovo blocco dati DB (vedi figura seguente). Si assegna un nome (per esempio “clockdate”) si definisce il tipo come “DB globale”, lasciando le altre impostazioni come illustrato.

Una volta creato il modulo per l’orologio, si apre la schermata (seguente) contenente le impostazioni. È necessario creare la variabile di tipo DTL, contenente le informazioni

della data e dell’ora. Si assegna il nome alla variabile: “orologio” e si definisce il tipo “DTL”. Automaticamente vengono create le variabili “YEAR”, “MOUNTH”, ecc. con il tipo di dati già assegnato. Essendo il “valore iniziale” impostato ad una data antecedente a quella attuale, non è necessario apportare modifiche. A questo punto si crea la variabile “imposta_clock” seguendo le indicazioni precedenti. Inseriamo adesso la data e l’ora relativa alla situazione attuale o che vogliamo simulare. Abbiamo così “costruito” il nostro orologio hardware. Vediamo con un esempio come utilizzarlo. La simulazione viene effettuata con il programma in “RUN” e abilitando la funzione di lettura dello stato, in modo da visualizzare i valori effettivi delle variabili dell’orologio del PLC.

ESEMPIO: scriviamo la data con “WR_SYS_T” e leggiamo il valore con “RD_SYS_T”.

Il box WR_SYS_T una volta abilitato da I0.1, scrive il valore DTL di clock_date.imposta_clock nell’orologio hardware in modo da impostare una data e l’ora predefinita dall’utente. È necessario che I0.1 sia chiuso solo per il tempo necessario per scrivere e che poi venga di nuovo aperto (altrimenti la scrittura continua impedirebbe all’orologio di scorrere). In questi casi è preferibile utilizzare il merker di sistema “first scan” che si chiude solo per il primo ciclo. Il box RD_SYS_T è abilitato da I0.0 (sempre chiuso) scrive invece la data e l’ora nella variabile DTL clock_date.orologio. Scriviamo la data con “WR_SYS_T” e leggiamo il valore con “RD_SYS_T”.

NOTA: “RD_SYS_T” “clock_date.orologio”

scrive

i

valori

di

“WR_SYS_T”

in

In questo esempio utilizziamo anche le aree di memoria MW60, MW62, MW64, MW66, MW68, MW70, per memorizzare la data e l’ora attraverso l’istruzione “CONV – UInt/USint to Int”. Una volta caricato il programma, si passa alla modalità RUN e successivamente si preme il tasto di “controllo on/off” per abilitare la modalità di “lettura dello stato” delle variabili del sistema. Il risultato è visualizzato nella figura seguente.

Se modifichiamo la data (DTL#2013-3-14-7:34:0.0) in orologio_HW (DB) utilizzando

rileggiamo i valori in ora di sistema e ora locale.

OSSERVAZIONE: ORA DI SISTEMA (UTC): un’ora indietro rispetto all’ora solare oppure due ore indietro rispetto all’ora legale. ORA LOCALE: se impostata “Attiva il passaggio all’ora legale” coincide con l’ora del PC quando siamo da marzo a ottobre. Se NON è impostato “Attiva il passaggio all’ora legale” coincide con l’ora solare.

Nella figura seguente si vede come attivare il passaggio all’ora legale.

U.D. N.2 RILEVAZIONE E IMPOSTAZIONE DELL’ORA La rilevazione e la modifica dell’ora nella CPU avvengono nella cartella “Funzioni” della vista online e di diagnostica nel gruppo “Imposta ora”. Ciò è possibile soltanto se sussiste un collegamento online. Il gruppo “Imposta ora” è costituito dalle seguenti aree: area per la lettura e impostazione dell’ora.

C.2.1

CONFIGURAZIONE DELL’AREA PER LA LETTURA E L’IMPOSTAZIONE DELL’ORA

Quest’area è suddivisa come segue: Ora PG/PC: vengono visualizzati qui il fuso orario impostato, la data e l’ora aggiornate del PG / PC. Ora unità: visualizza i valori relativi a data e ora attualmente letti dall’unità (per es. CPU) e convertiti nell’ora locale. Se la casella di scelta “Acquisisci data e ora del PG/PC” è attivata, facendo clic sul pulsante “Applica”, ha luogo il trasferimento nell’unità della data e dell’ora del PG / PC convertita in ora UTC. Disattivando la casella di scelta “Acquisisci data e ora del PG/PC” è possibile preimpostare la data e l’ora per l’orologio integrato dell’unità. Facendo clic sul pulsante “Applica”, la data e l’ora convertita secondo l’ora UTC vengono trasferite nell’unità.

Fare clic su: “collega on line”. Se premo sul tasto “Applica” ottengo il cambio delle data in “Ora dell’unità”.

Possiamo anche impostare una data manualmente.

Vediamo ora dove e come impostare l’ora locale e l’ora solare.

Per il nostro esempio, il cambio dell’ora solare / legale è stato impostato la domenica della prima settimana del mese di marzo, mentre il cambio legale / solare nel mese di settembre.

C.2.2

ESERCIZI CON DATA E ORA (CON SOLUZIONE)

ESERCIZIO N.1 SPEGNIMENTO (AD UN ORARIO PRESTABILITO) DI MACCHINE FOTOCOPIATRICI E PERSONAL COMPUTER CON OB E FC per il giorno della settimana (acquisizione della data e dell’ora dal PG/PC) Lo scopo dell’esercitazione è quella di gestire lo spegnimento di una serie di apparecchiature elettroniche durante le ore di non utilizzo; viene fissato a scopo didattico un orario dalle 19.00 alle 7.30 e come giorni della settimana

dal lunedì al venerdì. Inoltre, viene presa in considerazione la possibilità che l’utente possa avviare per necessità tutte le macchine in manuale, cioè disabilitando la gestione oraria comandata dal PLC. OSSERVAZIONE: le variabili sono di tipo word (= 2 byte), quindi dopo MW500 si passa a MW502, MW504 e cosi via, altrimenti si sovrappongono i dati. è necessario dividere l’orario in 3 intervalli (7.30 - 19.30): 8 - 18; 7.00 - 7.30; 19.00 - 19.30 in quanto ora e minuto sono due variabili distinte. Viene creata una funzione (FC) per convertire il numero della settimana in lettere (lunedì, martedì, ...). Una volta definite le variabili da utilizzare e realizzate le tabelle descrittive, si passa alla realizzazione dello schema LADDER. Introduciamo anche il giorno della settimana: creiamo il blocco dati DB1 e inseriamo le variabili stringa.

In questo modo convertiamo il “numero” della settimana nei nomi dei giorni della settimana utilizzando la variabile stringa.

Con TIA Portal V12 l’istruzione è S_MOVE, con TIA Portal V11 è S_CONV: utilizzando l’istruzione di confronto, si scrivono 7 segmenti, uno per ogni giorno della settimana; il “S_MOVE” assegna il valore alla variabile “read_day_week”.

Vediamo il segmento per la verifica di data e ora. È necessario dividere l’orario (7.30 -19.30) in 3 intervalli: 8 - 18; 7.00 - 7.30; 19.00 - 19.30; la presenza dei minuti richiede l’utilizzo di una seconda variabile e quindi un’ulteriore condizione da aggiungere per la verifica dell’orario stabilito.

ESERCIZIO N.2

AUTOMATIZZAZIONE APERTURA TENDE (scomposizione in blocchi OB e FC) In un’abitazione si vuole automatizzare l’apertura delle tende in base ad un orario stabilito soltanto alcuni giorni della settimana. È previsto che un interruttore crepuscolare invece provveda alla chiusura. Dal lunedì al venerdì le tende vengono aperte alle 7.00, il sabato alle 8.00 e la domenica alle 10.00. Il meccanismo di apertura e chiusura è regolato da due finecorsa. È inoltre previsto un funzionamento manuale (per emergenze o esigenze particolari) attraverso due pulsanti che provvedono ad aprire e chiudere le tende in qualunque situazione. Costruiamo la tabella di corrispondenza tra il sistema da automatizzare e il PLC.

Una volta definite le variabili da utilizzare e realizzate le tabelle descrittive, si passa alla realizzazione dello schema LADDER. Si evidenziano tre intervalli di tempo: lunedì-venerdì, sabato e domenica con differenti orari di intervento.

Il segmento 11 chiude le tende se è attivato il crepuscolare e l’interruttore automatico. I segmenti 12 e 13 determina la chiusura e l’apertura in manuale se il selettore automatico/manuale è posizionato in OFF (manuale). I segmenti 14 e 15 sono i comandi delle bobine di apertura e chiusura tende azionate o dal manuale o dall’automatico.

Blocco OB 1 Main

Blocco OB 125 Verifica data e ora

Blocco OB 126 Comandi

ESERCIZIO N.3

AUTOMATIZZAZIONE ILLUMINAZIONE DIURNA E NOTTURNA DI UN ACQUARIO (grafcet con orologio hardware) La gestione di un acquario prevede l’illuminazione nelle diverse ore del giorno, il filtraggio dell’acqua, l’erogazione del cibo per i pesci, il controllo della temperatura e del livello dell’acqua. Le luci diurne si accendono dalle ore 7.30 alle 19.30, mentre quelle notturne nelle restanti ore. È previsto anche una pompa elettrovalvole di apertura e chiusura per

immettere acqua e un agitatore che entra in funzione due volte al giorno ad orari prestabiliti. Il progetto viene realizzato utilizzando il grafcet, convertito poi in ladder. Il grafcet è diviso in più di un diagramma indipendente, poiché i processi di gestione non sono correlati tra loro. Il programma è realizzato in blocchi funzionali FC e FB. In questo specifico programma viene visua-lizzato anche il giorno della settimana. Costruiamo la tabella di corrispondenza tra il sistema da automatizzare e il PLC. fase 0 - Luci fase 1 - Luci fase 2 - Luci fase 0 - Alimentazione fase 1 - Aliment diurna fase 2 - Aliment notturna fase 3 - Agitaz diurna fase 4 - Agitaz notturna fase 0 - H2O fase 1 - H2O fase 2 - H2O fase 0 - Temperatura fase 1 - controllo temp

%M0.0 %M0.1 %M0.2 %M1.0 %M1.1 %M1.2 %M1.3 %M1.4 %M2.0 %M2.1 %M2.2 %M3.0 %M3.1

temp OK allarme temperatura alta livello H2O basso livello H2O alto livello H2O - OK

%I0.6 %I0.7 %I1.0 %I1.1 %I1.2

luce allarme temp alta luci diurne luci notturne erogazione cibo agitatore H2O

%Q0.0 %Q0.1 %Q0.2 %Q0.3 %Q0.4

elettrov apertura pompa immissione H2O elettrov svuotam H2O

%Q0.5 %Q0.6 %Q0.7

imposta data per cpu legge data corrente verifica data e ora

%M1000.0 %M1000.1 %M4000.0

Bool Bool Bool

enable cibo diurno cibo notturno agitazione diurna agitazione notturna abilita luce diurna

%M600.0 %M610.1 %M610.2 %M610.3 %M610.4 %M611.1

Bool Bool Bool Bool Bool Bool

giorno settimanale di sistema

%MB514

USInt

codice errore W codice errore RS

%MW100 %MW200

Int Int

anno_locale mese_locale giorno_locale ora_locale minuto_locale secondo_locale

%MW2000 %MW2002 %MW2004 %MW2006 %MW2008 %MW2010

Int Int Int Int Int Int

codice errore RC

%MW300

Int

anno mese giorno ora minuto secondo giorno della settimana minuti_HW

%MW500 %MW502 %MW504 %MW506 %MW508 %MW510 %MW512 %MW800

Int Int Int Int Int Int Int Int

Il progetto è stato realizzato in grafcet e convertito in ladder: esso prevede tre diagrammi di flusso indipendenti: controllo temperatura, controllo livello acqua, erogazione cibo e agitazione acqua. Inoltre, è prevista l’accensione delle luci notturne e diurne, utilizzando l’orologio hardware del PLC. EROGAZIONE CIBO E AGITAZIONE ACQUE

CONTROLLO LIVELLO ACQUA

CONTROLLO TEMPERATURA

C.2.3

REALIZZARE I PROGRAMMI CON ACCESSO ALLE VARIABILI DATA E ORA

La tecnica di memorizzare l’anno, il mese, il giorno e l’ora all’interno di aree di memoria merker è stata utilizzata similmente a quella della programmazione dei PLC precedenti. In realtà è possibile accedere ai dati direttamente come esposto nei seguenti esercizi. ESERCIZIO N.4:

REGOLAZIONE DELL’ILLUMINAZIONE ESTERNA Si vuole regolare l’automazione di un impianto di illuminazione esterna dal lunedì al venerdì, mentre il sabato e la domenica sono sempre spente. La regolazione può avvenire sia in manuale che in automatico, su un gruppo di luci principale e uno secondario. In automatico per il gruppo principale il funzionamento è da abilitare dalle ore 6.00 alle 24.00 utilizzando un interruttore crepuscolare. In automatico il secondario funziona solo nel mese di febbraio dalle ore 6.00 alle 8.00 e dalle 19.00 alle 24.00 se intervengono contemporaneamente il crepuscolare e il sensore di presenza. Se è richiesto l’intervento manuale entrambi i gruppi luce si accendono e l’intervento è condizionato solo dall’interruttore preposto per tale funzione. Costruiamo la tabella di corrispondenza tra il sistema da automatizzare e il PLC. In questo esempio, analizzando i seguenti segmenti, si osserverà che è stata utilizzata una tecnica diversa per la lettura dei valori nell’area di memoria dell’orologio hardware. NOTA: Parametro DST (Daylight Saving Time)

Il parametro DST viene analizzato solo durante il passaggio dall’ora legale a quella solare:

1) Utilizzo di DST durante il passaggio dall’ora legale a quella solare La mattina alle 03:00 (1) l’orologio viene spostato indietro di un’ora. Ciò implica la doppia presenza dell’ora compresa tra 02:00:00:000000000 e 02:59:59:999999999. In tutte le indicazioni temporali per LOCTIME che si collocano tra le 02:00:00:000000000 e 02:59:59:999999999, è necessario definire se l’ora sia riferita al momento precedente o successivo al cambio dell’ora. Quest’accertamento si effettua con il parametro DST: Con DST = TRUE l’indicazione temporale si colloca nella prima di queste due ore, vale a dire ancora nell’ora legale. Con DST = FALSE l’indicazione temporale si colloca nella seconda di queste due ore, vale a dire già nell’ora solare. Per tutte le indicazioni temporali LOCTIME che si collocano al di fuori dell’ora doppia, DST è privo di significato.

2) Passaggio dall’ora solare a quella legale Il parametro DST non è rilevante nel passaggio dall’ora solare a quella legale. La mattina alle 02:00 (1) l’orologio viene spostato in avanti di un’ora. Ciò implica l’assenza dell’ora compresa tra 02:00:00:000000000 e 02:59:59:999999999. Se si imposta in LOCTIME un orario compreso entro questa ora viene emesso il codice di errore W#16#8089.

Soluzione in linguaggio ladder Tabella delle variabili Name

Data Type

Logical Address

interruttore crepuscolare

Bool

%I10.0

sensore di presenza

Bool

%I10.1

selettore per l’automatico

Bool

%I10.2

selettore per il manuale

Bool

%I10.3

relè bobina gruppo principale

Bool

%Q4.0

relè bobina gruppo secondario

Bool

%Q4.1

imposta data locale

Bool

%M1000.0

legge data corrente

Bool

%M1000.1

imposta data di sistema

Bool

%M1000.2

luci primarie 6-24

Bool

%M400.0

luci secondarie 6-8 e 19-24

Bool

%M400.1

codice errore W

Int

%MW100

codice errore RS

Int

%MW200

codice errore RC

Int

%MW300

giorno della settimana

Int

%MW512

Blocco OB – MAIN[OB1]

Blocco FC[1]: visualizza_il_giorno_settimanale

Martedì, mercoledì, giovedì, venerdì, sabato sono rappresentati nello stesso modo. Blocco FC[2]: imposta e leggi data

Blocco dati [DB1]: data

DOMANDE ED ESERCIZI DI RIEPILOGO 1)

Il tipo dati DTL in quale situazione viene utilizzato?

2)

È possibile leggere la data dall’orologio del PC?

3)

C’è differenza tra l’ora legale e l’ora solare per il PLC?

4)

Il passaggio da ora legale a solare può essere impostato nel PLC?

5)

È possibile riconoscere i giorni della settimana all’interno del mese?

6)

Esistono istruzioni che permettono di impostare la data all’interno del progetto in TIA Portal utilizzando il linguaggio ladder?

7)

Tutte le CPU o nessuna ha un orologio interno?

8)

La data viene mantenuta anche spegnendo il PLC?

9)

Se il PLC rimane inattivo (senza tensione) per almeno tre mesi, la data viene azzerata?

10)

È possibile accedere ai singoli elementi della variabile data?

11)

È possibile creare la variabile data nella tabella delle variabili standard?

ESERCIZIO N.1

REGOLAZIONE DELLA TEMPERATURA AMBIENTE (DA SVOLGERE) Si vuole regolare il funzionamento di un impianto di riscaldamento per uso domestico, utilizzando un PLC che abbia integrata la funzione dell’orologio hardware. Sono previste diverse fasce a seconda del giorno della settimana. Inoltre, si può prevedere una diversa programmazione per i vari mesi invernali, riducendo di un’ora la durata dell’accensione dell’impianto nei mesi ritenuti meno freddi. Definiamo una tabella oraria per i mesi più freddi, lasciando all’allievo la definizione di una per i mesi meno freddi. La domenica se l’impianto di riscaldamento è attivato e la temperatura è inferiore al valore preimpostato tramite il termostato, la caldaia entra in funzione tra le ore 7.00 e le ore 21.00. Nei giorni feriali se l’impianto di riscaldamento è attivato e la temperatura ambiente è inferiore al valore preimpostato tramite il termostato, la caldaia entra in funzione tra le 7.00 e le 10.00 e tra le 14.00 e le 20.00. Legenda per i collegamenti PLC-impianto elettrico: L’uscita Q0.1 comanda la caldaia. L’ingresso I0.0 è collegato all’interruttore per l’attivazione dell’impianto. L’ingresso I0.1 riceve il segnale dal termostato quando la temperatura ambiente raggiunge il valore prefissato.

MODULO D

SEGNALI I/O ANALOGICI PREREQUISITI: Saper utilizzare le funzioni di base del PLC Saper utilizzare le aree di memoria

OBIETTIVI: Saper effettuare misure di temperatura, di tensione e corrente con valori interi

U.D. N.1 SENSORI ANALOGICI D.1.1

SENSORI DI TEMPERATURA (CENNI)

D.1.1.1 TERMISTORI Sono trasduttori elettrici che sfruttano le proprietà dei semiconduttori di variare la conducibilità elettrica con la temperatura. I termistori (Thermal Resistor) possono avere coefficienti di temperatura negativi (termistori NTC) o positivi (termistori PTC).

I termistori PTC hanno un intervallo di funzionamento ristretto e sono usati per la protezione da sovraccarichi e da surriscaldamento (il loro valore di resistenza “scatta” da un valore basso a un valore alto per T che supera una certa soglia). Mentre i termistori PTC trovano impiego in applicazioni di termoregolazione, per la misura di temperatura si utilizzano quasi sempre i termistori NTC con andamento più regolare. I termistori sono molto più sensibili degli RTD (da 103 a 106 volte

superiore per i PTC e di un fattore 10 per gli NTC). I termistori NTC funzionano in un intervallo di temperature che vada -100°C a 500°C circa. Presentano una impedenza elevata e non richiedono particolari cure nella procedura di misura (è sufficiente un collegamento a 2 fili). Purtroppo sono fortemente non lineari e meno stabili dei sensori RTD. Nei componenti NTC il legame fra temperatura e resistenza può essere espresso con l’equazione di Steinhart-Hart:

dove: T è la temperatura (in kelvin); R è la resistenza (in ohm); A, B, C sono i coefficienti di Steinhart-Hart che variano a seconda del tipo e modello del termistore e del range di temperatura scelto.

Nei componenti PTC la resistenza aumenta esponenzialmente con la temperatura non appena superato il valore TRef del materiale, che corrisponde in prima approssimazione alla “Temperatura di Curie TC”, mentre prima di tale temperatura il valore resistivo mostra un andamento leggermente decrescente con la temperatura. Il valore resistivo nel campo di ripida variazione della resistenza è definito da:

dove α è il coefficiente di temperatura che, per valori di R>RRef, può essere approssimativamente ritenuto costante.

D.1.1.2 SENSORI A VARIAZIONE DI RESISTENZA (RTD) Si tratta di trasduttori elettrici che sfruttano la proprietà dei metalli di variare la conducibilità elettrica con la temperatura. I termoresistori o RTD (Resistance Temperature Detector) usano in genere come materiale sensibile il platino, proprio per le sue caratteristiche di lunga durata, stabilità e riproducibilità. Il campo di validità del suo comportamento lineare è molto ristretto, mentre il materiale più usato è il platino che offre una maggior linearità in un vasto intervallo di temperatura.

D.1.1.3 PT100 E PT1000 Entrambe le sonde vengono realizzate secondo la tecnologia a film sottile. La misura della temperatura mediante i termometri a resistenza è basata sulla caratteristica, comune a tutti i conduttori e i semiconduttori, di modificare la propria resistenza elettrica al variare della temperatura. Il sensore Pt1000 ha un valore ohmico pari a 1000 a una temperatura di 0°C. A differenza del più comune sensore Pt100 il segnale più elevato della Pt1000 permette maggiore precisione e quindi di evitare la presenza del terzo filo necessario alla compensazione del valore ohmico del cavo. Per range di lettura e dettaglio costruttivo questo sensore risulta adatto a impianti di

condizionamento o di processo industriale con precisione decimale.

Nel caso del platino la relazione tra resistenza e temperatura viene descritta dall’equazione di Callendar-Van Dusen (che viene corretta in base alla IPTS68): R = R0 [1 + At + Bt2 + C (t – 100) t3] dove: R = resistenza alla temperatura t (°C); R0 = resistenza a 0°C; t = temperatura in °C; A, B, C = coefficienti ricavati sperimentalmente dalle misure di R0, R100, R260. L’equazione di Callendar-Van Dusen vale per l’intervallo di temperatura compreso tra -200 °C e 0°C, mentre per il range di temperatura che va da 0°C a661°C la funzione di trasferimento del platino non dipende dalla potenza

terza e si riduce alla sola equazione di Callendar: R = R0[1 + At + Bt2] Lo standard internazionale IEC751 definisce due classi per gli RTD al platino da 100Ω, le classi A e B con i parametri mostrati in figura

D.1.1.4 RTD E TERMISTORI A CONFRONTO Quando usare le RTD: • Quando precisione e stabilità sono l’obiettivo principale dell’applicazione • Quando va mantenuta la precisione su un ampio intervallo di temperatura • Quando la misurazione su un’area piuttosto che su un punto migliora il controllo • Quando è desiderabile un alto livello di standardizzazione Quando usare i termistori: • Quando l’applicazione richiede un’alta risoluzione su un intervallo stretto • Quando il basso costo è una considerazione primaria • Quando si richiede rilevazione su un punto singolo o miniaturizzazione RTD Vantaggi: • Lineari su un ampio intervallo operativo

• Ampio intervallo operativo di temperatura • Intercambiabilità su un ampio intervallo • Migliore stabilità ad alte temperature Svantaggi: • Bassa sensibilità • Costi maggiori • Non misura punti singoli • Influenzata da urti e vibrazioni • Richiede funzionamento a tre o quattro cavi • Può essere influenzata dalla resistenza di contatto TERMISTORI Vantaggi: • Risposta rapida (1÷10s) • Piccole dimensioni • L’alta resistenza elimina molti dei problemi legati alla resistenza dei cavi • Solido, non influenzato da urti o vibrazioni • Costo inferiore Svantaggi: • Non lineare • Intervallo ristretto per ciascuna unità • Intercambiabilità limitata, salvo che non si usino elementi accoppiati PRINCIPALI APPLICAZIONI RTD: condizionamento dell’aria e raffreddamento, fornaci, forni e griglie, produzione tessile, lavorazione delle materie plastiche, lavorazioni petrolchimiche, microelettronica, misura di temperatura di aria, gas e liquidi, misura delle temperature dei gas di scarico. Termistori: termometri per febbre e respiratori, fast food, macchine per caffè, termostati, controllo emissione, lavorazione fotografica, dispenser di colla a caldo, attrezzature per laboratori, processi che richiedono un’alta risoluzione su un intervallo ristretto, processi che richiedono miniaturizzazione. VANTAGGI E SVANTAGGI DEI DIVERSI ELEMENTI DI MISURA

I vantaggi degli elementi in platino sono: migliore stabilità a lungo termine e migliore adattamento ai cicli termici, un campo di temperatura esteso così come un’elevata precisione e linearità di misura (solo per un campo di temperatura molto limitato). Mentre la tecnologia a film sottile delle PT100 e PT1000 è adatta per temperature fino a 500°C, le sonde NTC standard possono essere utilizzate per temperature fino ad un massimo di circa 150°C. INFLUENZA DELL’ALIMENTAZIONE L’impedenza dovuta ai conduttori influenza il valore misurato dei sensori di temperatura a 2 fili e deve essere pertanto considerata. Nel caso di cavi in rame con una sezione di 0,22 mm2 si applica il seguente valore guida: 0,162 Ω/m → 0.42 °C/m per Pt100. In alternativa è possibile scegliere una versione con PT1000 la cui influenza dell’alimentazione (a 0,04 °C/m) sia più piccola di un fattore 10. L’influenza dell’impedenza, se confrontata con la resistenza di base R24 per un elemento di misura NTC è molto meno evidente. Per via della curva caratteristica di una sonda NTC, l’influenza alle temperature più elevate aumenta in modo non proporzionale.

D.1.1.5 TERMOCOPPIE Il loro funzionamento è basato sull’effetto Seebeck secondo cui la tensione (tra i due fili) al giunto freddo è proporzionale alla differenza di temperatura fra le due giunzioni.

Le termocoppie si formano ogni volta che due metalli diversi vengono collegati elettricamente generando una tensione proporzionale alla temperatura del punto di giunzione. Si tratta di una tensione molto piccola per

cui un microvolt può corrispondere a molti gradi. Il rilevamento della temperatura mediante termocoppia prevede la misura della tensione della termocoppia, la compensazione dei giunti supplementari e la linearizzazione del risultato. FUNZIONAMENTO BASE DI UNA TERMOCOPPIA Una termocoppia è composta dal termoelemento (sensore di misura) e dalle parti necessarie per il montaggio e il collegamento. Due fili di diverse leghe di metalli vengono saldati tra loro sulle estremità (estremità calda). Il punto di saldatura viene definito punto di misura, mentre le estremità libere della termocoppia vengono definite punto di collegamento. Le estremità libere vengono collegate da fili o cavi isolati con l’unità di analisi (ad es. unità di ingressi analogici). Per effetto delle diverse strutture dei materiali si hanno diversi tipi di termocoppie, come ad esempio K, J, N. Il principio di misura, indipendentemente dal tipo di termocoppie, è uguale per tutti i tipi.

Punto di rilevamento della tensione termica Cavo di collegamento, ad es. rame Giunto freddo Cavo di compensazione (dello stesso materiale della termocoppia) Punto di collegamento Termocoppia con terminali più e meno Punto di misura FUNZIONAMENTO DELLE TERMOCOPPIE Se il punto di misura viene sottoposto ad una temperatura diversa da quella delle estremità libere della termocoppia (punto di collegamento), su queste

estremità viene a crearsi una tensione denominata tensione termica. Il livello della tensione termica dipende dalla differenza tra la temperatura del punto di misura e quella delle estremità libere nonché dalla combinazione dei materiali della termocoppia. Poiché con una termocoppia viene sempre rilevata una differenza di temperatura, per determinare la temperatura del punto di misura deve essere nota la temperatura delle estremità libere (giunto freddo). Le termocoppie possono essere prolungate dal punto di collegamento mediante cavi di compensazione. Con questa misura si posiziona il giunto freddo in un punto in cui ad esempio è possibile mantenere una temperatura costante o dove semplicemente è possibile applicare il sensore. I conduttori di compensazione sono di materiale identico a quello dei fili della termocoppia. I cavi di collegamento dal giunto freddo al modulo sono di rame.

D.1.1.6 SENSORE INTEGRATO I sensori a circuito integrato contengono un sensore di temperatura e la relativa circuiteria per il condizionamento del segnale. Viene talvolta usato nei circuiti di compensazione della temperatura. La tensione (o corrente) di uscita è molto lineare nella temperatura. Richiede una tensione di ingresso al sensore. Sono poco sensibili a rumori di tensione e alle resistenze parassite dei cavi di collegamento e hanno un range di temperatura minore di 200°C e una dinamica lenta. Questi sensori di temperatura sono estremamente lineari (INL ≤ 0.1 °C) e con uscita intensione abbiamo l’integrato LM35 della National Semiconductor mentre incorrente abbiamo l’AD590 della Analog Devices; sono accurati e poco costosi ma con un intervallo di temperatura limitato (da -55 a 150 °C circa). Il sensore di temperatura LM35 è un componente elettronico caratterizzato da tre pin e si alimenta con una tensione di 5 volt; la tensione rilevata sul pin centrale è a sua volta proporzionale alla temperatura: ogni grado sopra lo zero provoca un aumento di tensione di 10 millivolt. Il trasduttore di temperatura AD590 è realizzato in materiale semiconduttore e produce all’uscita una corrente proporzionale alla temperatura (espressa in Kelvin). Esso è un dispositivo a due terminali e per tensioni di alimentazione nel range 4 -30 V genera una corrente di 1 uA/K,

con una non linearità di 0.8 °C.

In conclusione, vediamo le tabelle riepilogative. Sensore

Applicazione

Termoresistenza Processi fotochimici, monitoraggio temperatura sostanze RTD alimentari Termistore Sensore Integrato Termocoppia

Sistemi di riscaldamento, elettronica industriale e di consumo, telecomunicazioni Celle frigorifere, compensazione di temperatura in dispositivi di qualità, sistemi di monitoraggio delle CPU Forni a induzione, forni per uso alimentare

U.D. N.2 SEGNALI ANALOGICI D.2.1

INTRODUZIONE

Oltre ai segnali binari, nella tecnica di controllo vengono elaborati ed emessi anche segnali analogici. Essi assumono un numero qualsiasi di valori all’interno di una determinata area. Le grandezze analogiche possono essere ad es.: Temperatura Pressione Numero di giri Livello di riempimento Nei processi di automazione si può presentare il problema della gestione della temperatura, per cui è necessario trasformare le misure effettuate in segnali elettrici utilizzando strumenti di misura detti convertitori o trasduttori. I segnali elettrici vengono acquisiti dal PLC che provvede a comandare gli attuatori. DEFINIZIONI TRASDUTTORE: converte la grandezza fisica in un segnale elettrico. CONVERTITORE: adatta il segnale elettrico del trasduttore agli standard dei segnali analogici. A seconda del tipo di misura è possibile utilizzare i seguenti trasduttori di misura: Trasduttori di tensione Trasduttori di corrente: convertitore di misura a 2 fili, convertitore di misura a 4 fili Trasduttori di resistenza: connettore a 4 fili, connettore a 3 fili, connettore a 2 fili Termocoppie TRASDUTTORI DI MISURA ISOLATI E NON ISOLATI

I trasduttori di misura sono disponibili in diverse versioni: I trasduttori di misura isolati non sono collegati con il potenziale di terra locale. Possono essere utilizzati con potenziale libero. I trasduttori di misura non isolati sono collegati con il potenziale di terra locale. Nel caso dei trasduttori di misura non isolati un morsetto del trasduttore è collegato con il contenitore conduttore. Tutti i trasduttori di misura non isolati devono essere collegati galvanicamente tra loro e con il potenziale di terra locale. ABBREVIAZIONI UTILIZZATE NELLE FIGURE AI M L+ Mn+/MnICn+/ICnUn+/UnIn+/InCOMP+/COMPIComp+/ICompUV

UCM UISO MANA

Unità di ingressi analogici Connessione per la massa Connessione per la tensione di alimentazione Ingresso di misura canale n Uscita corrente alimentazione termoresistenza (RTD) canale n Ingresso tensione canale n Ingresso corrente canale n Ingresso compensazione Uscita corrente Alimentazione Compensazione Tensione di alimentazione sul canale (il collegamento può essere utilizzato per i convertitori di misura a 2 fili (2DMU) e nell’ET 200eco PN e ET 200pro per i convertitori di misura a 2/4 fili). Differenza di potenziale tra i punti di riferimento degli ingressi di misura o della massa analogica MANA Differenza di potenziale tra i punti di riferimento degli ingressi di misura e il punto di terra centrale Punto di riferimento della massa analogica

CAVI PER SEGNALI ANALOGICI Per i segnali analogici utilizzare conduttori intrecciati a coppie schermati. In questo modo si aumenta l’immunità EMC. COLLEGAMENTO DI INGRESSI ANALOGICI CON

COLLEGAMENTO MANA Nelle unità di ingressi analogici con connessione MANA i potenziali di riferimento degli ingressi di misura e il punto di terra centrale sono separati elettricamente. COLLEGAMENTO DI TERMORESISTENZE E RESISTENZE Con la misura della resistenza il modulo fornisce una corrente costante attraverso i morsetti IC+ e IC-. La corrente costante viene condotta tramite la resistenza misurata e quindi misurata come caduta di tensione. È importante che i cavi di corrente contante collegati vengano collegati direttamente alla termoresistenza/resistenza. Le misurazioni con collegamenti a 4 o a 3 fili compensano le resistenze dei cavi e ottengono quindi una maggiore precisione rispetto alla misurazione con collegamento a 2 fili. Poiché le misure con collegamento a due fili rilevano anche le resistenze dei cavi, oltre alla resistenza vera e propria, si devono preventivare notevoli perdite di precisione nei risultati di misura. Le figure seguenti contengono degli esempi di collegamento. COLLEGAMENTO A 4 FILI DI UNA TERMORESISTENZA La tensione generata sulla termoresistenza viene misurata ad alta impedenza attraverso i morsetti M0+ e M0-. Durante il collegamento prestare attenzione alla polarità del cavo collegato (collegare sia IC0+ e M0+ che IC0- e M0- alla termoresistenza). Durante il collegamento assicurarsi che sia i cavi IC0+ e M0+ che i cavi IC0e M0- siano collegati direttamente alla termoresistenza.

COLLEGAMENTO A 3 FILI DI UNA TERMORESISTENZA Nel caso del collegamento a 3 fili, a seconda del modulo in uso è necessario inserire un ponticello nei moduli con 4 morsetti (per canale) tra M0- e IC0(vedere figura seguente) o un ponticello tra M0+ e IC0+. Durante il collegamento assicurarsi che i cavi IC0+ e M0+ vengano collegati direttamente alla termoresistenza. Utilizzare cavi con conduttori dello stesso diametro.

COLLEGAMENTO A 2 FILI DI UNA TERMORESISTENZA Nel caso del collegamento a 2 fili a moduli con 4 morsetti (per canale) è necessario inserire dei ponticelli sul modulo tra M0+ e IC0+ e tra M0- e IC0-, come mostra la figura seguente. Le resistenze dei cavi vengono incluse nella misura ma non compensate. Per ragioni di fisica questo tipo di misura è meno accurato della misura con collegamenti a 3 o 4 fili. Tuttavia richiede poche operazioni di cablaggio, perché i ponticelli necessari possono essere cablati direttamente nel connettore rendendo superfluo l’uso di alcuni cavi.

COLLEGAMENTI DI TERMOCOPPIE Generalmente le termocoppie sono disponibili già pronte per l’uso. Sono protette da guaine che ne impediscono il danneggiamento ad es. a causa delle forze meccaniche. CAVI DI COMPENSAZIONE I cavi di compensazione facenti parte delle rispettive termocoppie sono contrassegnati con colori caratteristici specifici, in quanto per ciascuna termocoppia può essere utilizzato rispettivamente il solo cavo di compensazione del materiale adatto. Per i cavi di compensazione a norma

vale DIN EN 60584. È necessario osservare le temperature massime indicate dal produttore. COLLEGAMENTO DELLE TERMOCOPPIE Esistono diverse possibilità per collegare le termocoppie a un’unità di ingressi analogici: Direttamente Con cavo di compensazione Con cavo di compensazione collegato a un giunto freddo ad es. con un cavo di collegamento in rame .

Termocoppia senza cavo di compensazione Termocoppia con cavo di compensazione Termocoppia con cavo di compensazione e di collegamento Cavo di compensazione (dello stesso materiale della termocoppia) Giunto freddo esterno Cavo di collegamento, ad es. rame OSSERVAZIONE Nella maggior parte degli strumenti di misura, il convertitore è molto piccolo, come nelle termoresistenze al platino (PT100), e si trova spazio nella testina dove si trova la morsettiera. I segnali analogici a differenza di quelli digitali (solo due valori, uno alto

che rappresenta lo stato 1 cioè 24 Volt ed uno basso che rappresenta lo stato 0 cioè 0 Volt) assumono qualunque valore “elettrico” nel range di lavoro ovvero tutti i valori compresi tra i due estremi del campo. Esempi di trasduttori di grandezze fisiche sono le sonde di temperatura, oppure le valvole proporzionali (regolando il segnale di comando fanno passare più o meno liquido) e le pale motorizzate (aprono o chiudono il passaggio d’aria nei canali di ventilazione), quando vi è la necessità di comandare un dato dispositivo, inviandogli un segnale di comando appropriato.

D.2.2

RAPPRESENTAZIONE DEI VALORI ANALOGICI

CONVERSIONE DEI VALORI ANALOGICI I valori analogici vengono elaborati dalla CPU solo in forma digitalizzata. Le unità di ingressi analogici convertono il segnale analogico in un valore digitale che verrà elaborato dalla CPU e le unità di uscite analogiche convertono il valore di uscita digitale della CPU in un segnale analogico, grazie a un convertitore analogico-digitale integrato nell’unità degli ingressi analogici che lo converte in un valore intero a 16 bit. Un segnale analogico è un segnale elettrico che rappresenta la misura di un fenomeno fisico e che varia entro un campo specificato, o meglio “standardizzato”. I sistemi di controllo sono dotati nei loro ingressi di convertitori Analogico/Digitali che convertono il segnale elettrico in ingresso in un vero e proprio numero, che rappresenta il “valore” del segnale analogico acquisito. Questo numero (segnale) non è espresso in mA o Volt, ma si tratta di una “word” (16bit) che varia dal massimo al minimo del range di funzionamento in relazione al segnale elettrico analogico che rappresenta. In altri termini un segnale analogico viene rappresentato tramite una WORD, elemento costituito da 16 bit, dei quali il più significativo (il 16°) è utilizzato per indicare il segno, mentre gli altri 15 sono usati per rappresentare il numero. Dato che le combinazioni possibili sono 215, il numero Intero varia nel seguente range:

+ 32767 ... 0 ... - 32768 RAPPRESENTAZIONE DEL VALORE ANALOGICO CON LA RISOLUZIONE A 16 BIT Per i valori di ingresso e i valori di uscita il valore analogico digitalizzato è uguale nello stesso campo nominale. I valori analogici vengono rappresentati come numero a virgola fissa nel complemento a 2 cifre. Ne risulta la seguente assegnazione:

Segni: Il segno (VZ) del valore analogico è sempre nel bit 15: • “0” → + • “1” → RISOLUZIONE INFERIORE A 16 BIT Se la risoluzione di un modulo analogico è inferiore a 16 bit, il valore analogico viene posto a sinistra sul modulo. Le posizioni con valori più bassi non occupate vengono scritte con “0”. In questo modo si riduce il numero dei valori di misura rappresentabili. I campi di valori dei moduli occupano un valore tra +32767 e -32768, indipendentemente dalla risoluzione. La distanza tra due valori consecutivi dipende dalla risoluzione del modulo. Esempio Nel seguente esempio è possibile osservare come, con una risoluzione ridotta, nelle posizioni meno significative venga scritto “0”. • Il modulo con una risoluzione di 16 bit può incrementare i valori in passi di un’unità (20 = 1). • Il modulo con una risoluzione di 13 bit può incrementare i valori in passi di 8 unità (23 = 8).

RAPPRESENTAZIONE DELLE AREE DI INGRESSO Nelle tabelle seguenti si trova la rappresentazione digitalizzata delle aree di ingresso suddivise per aree bipolari e unipolari. La risoluzione è a 16 bit. L’assegnazione dei valori ai valori di misura concreti dei rispettivi campi di misura si trova nei manuali del prodotto dell’unità di ingressi analogici specifica. Aree di ingresso bipolari

Aree di ingresso unipolari

RAPPRESENTAZIONE DEI VALORI ANALOGICI NEI CAMPI DI MISURA TENSIONE

Campo di misura tensione 1 ... 5 V, 0 ... 10 V

RAPPRESENTAZIONE DEI VALORI ANALOGICI NEI CAMPI DI MISURA CORRENTE

Campi di misura corrente 0 ... 20 mA e 4 ... 20 mA

RAPPRESENTAZIONE DEI VALORI ANALOGICI PER SENSORI A RESISTENZA/TERMORESISTENZE Sensori a resistenza da 150 Ω, 300 Ω e 600 Ω

Termoresistenza Pt 100 Standard

Termoresistenza Ni 100 Standard

Valori di misura della diagnostica rottura conduttore

RAPPRESENTAZIONE DEI CAMPI DI EMISSIONE (RAPPRESENTAZIONE DELLE AREE DI USCITA) Nelle tabelle seguenti si trova la rappresentazione digitalizzata delle aree di uscita suddivise per aree bipolari e unipolari. La risoluzione è a 16 bit. L’assegnazione dei valori ai valori di misura concreti dei rispettivi campi di misura si trova nei manuali del prodotto dell’unità di uscite analogiche specifica. Aree di uscita bipolari

Aree di uscita unipolari

* Se si preimpostano valori > 32511 il valore di uscita viene limitato a 117,589 % o 0 % (0,0 V / 0,0 mA) in funzione del modulo utilizzato. ** Se si preimpostano valori < 0 il valore di uscita viene limitato a 0 % (0,0 V / 0,0 mA). RAPPRESENTAZIONE DEI VALORI ANALOGICI IN CAMPI DI EMISSIONE DELLA TENSIONE Campo di emissione della tensione ±10 V

Campo di emissione della tensione 0 ... 10 V

Campo di emissione della tensione 1 ... 5 V

RAPPRESENTAZIONE DEI VALORI ANALOGICI NEI CAMPI DI EMISSIONE DELLA CORRENTE Campo di emissione della corrente ±20 mA

Campo di emissione della corrente 0 ... 20 mA

Campo di emissione della corrente 4 ... 20 mA

D.2.3

SEGNALI ANALOGICI STANDARDIZZATI

I segnali analogici sono sempre in corrente continua, viaggiano su una coppia di file, e i più utilizzati sono i seguenti: In Tensione 0 - 10 Vcc In Corrente 4 - 20 mA Altri segnali analogici in tensione sono: 0-1V, 0-5V e +/-10V. Che differenze c’è tra segnali in tensione e segnali in corrente? I segnali in corrente sono quelli più completi e sicuri. I segnali in tensione sono più semplici da utilizzare e con minore costo dei dispositivi di gestione. SVANTAGGI NELL’USO DEI SEGNALI IN TENSIONE: possono percorrere pochi metri e sono facilmente disturbati da campi elettromagnetici,

transitori e altri disturbi elettrici. Per cautelarsi dai disturbi è necessario utilizzare cavi schermati. VANTAGGI NELL’USO DEI SEGNALI IN CORRENTE: elevata immunità a disturbi elettromagnetici provenienti da circuiti circostanti (anche se il cavo non è schermato); flessibilità elevata nel range di alimentazione (ad esempio da 12 a 30 VDC, anche se tipicamente si usa una tensione di 24 VDC); buona tolleranza alle fluttuazioni nella tensione di alimentazione; stabilità del segnale molto più elevata che quella in tensione; possibilità di compiere tratte molto lunghe (anche 200-300 metri); possibilità di determinare un guasto al cavo o al sensore (segnale inferiore a 4mA); possibilità di alimentare lo strumento di misura con lo stesso segnale, risparmiando sul lavoro di cablaggio e sui cavi. CONVERSIONI ANALOGICO/DIGITALE Come abbiamo già detto, una CPU elabora le informazioni solo in formato digitale quindi il valore analogico viene convertito in uno schema di bit. La conversione viene eseguita attraverso un convertitore analogicodigitale integrato nell’unità di ingressi analogici. Nei moduli SIEMENS il risultato di questa conversione per la CPU viene elaborato sempre come parola di 16 bit. Il convertitore analogico-digitale digitalizza il segnale analogico da rilevare e ne approssima il valore in forma di una curva a gradini.

I parametri più importanti di un CAD sono la relativa risoluzione e la velocità di conversione. In genere, un convertitore è costituito da una uscita a 14 bit, ma se si utilizzano moduli di ingressi analogici a 12 bit o anche a 10 bit non tutti i bit della word sono utilizzati (in una word ci sono 15 bit più un bit per il segno). La velocità di conversione (20-60 Hz) invece è sempre sufficiente per acquisire i segnali analogici. Dopo che il segnale è stato elaborato nella CPU, un convertitore DAC (digitale-analogico) integrato converte il segnale analogico in un valore di corrente o di tensione. Il valore del segnale di uscita risultante corrisponde alla grandezza di uscita con cui vengono comandati gli attuatori analogici. La figura seguente mostra l’elaborazione dei segnali analogici in un PLC.

PRECISIONE/RISOLUZIONE La risoluzione di un modulo analogico dipende dal convertitore utilizzato e dal suo circuito esterno. Il segnale analogico da acquisire o da emettere viene approssimato attraverso una curva a gradini. La risoluzione indica in quanti incrementi il valore analogico si suddivide su questa curva a gradini. Più alta è la risoluzione di un modulo, più bassi sono gli incrementi e più sensibilmente viene digitalizzato il segnale analogico. Se un modulo dispone di una risoluzione di 13 bit (= 12 bit + segno), un valore di misura unipolare viene suddiviso complessivamente in 212 = 4096 incrementi. Se il campo di misura va da 0 a 10 V il più piccolo valore rappresentabile, l’incremento, è di 10 V/4096, ovvero di 2,4 mV. Un modulo con risoluzione di 16 bit (= 15 bit + segno) fornisce un incremento di 0,3 mV. Se la risoluzione aumenta di un bit, il numero degli incrementi raddoppia mentre la larghezza di un incremento viene dimezzata. Se la risoluzione aumenta da 13 a 16 bit, il numero degli incrementi si

ottuplica da 4096 a 32768. Con una risoluzione di 13 bit il valore minimo rappresentabile pertanto è 2,4 mV. Con una risoluzione di 16 bit invece il valore è 0,3 mV. Esempi per segnali in ingresso di tipo 0-20 mA e 0-10V.

RISOLUZIONE: è la “minima variazione apprezzabile” dal convertitore, ossia il rapporto 20 mA / Valore massimo (o 10 V / Valore massimo). NOTA Per i segnali 4-20 mA, la precisione sulla misura reale non è determinabile allo stesso modo di quella relativa al segnale 0-10 V, in quanto i primi 4 mA sono convertiti dal sistema ma non fanno parte della misura reale. Per avere un risultato corretto bisogna dividere il Fondo Scala per gli effettivi conteggi determinati nell’intervallo 4-20 mA.

ESEMPIO Si abbia un trasduttore di temperatura, con uscita 4-20 mA e range di lavoro 0-100°C, un PLC con scheda di acquisizione A/D a 14 bit, (range 0-16384) e il segnale trasmesso sia di 15 mA. La scheda di acquisizione riporterà un dato numerico = (decimale) desumibile anche dal calcolo 15 / 0,00122 (risoluzione su 0-20 mA). A questo numero bisogna sottrarre i 4 mA “non misurati” detto OFFSET che è pari a 3277 (vedi tabella precedente) che il convertitore acquisisce comunque. Calcoliamo il Segnale Reale = Segnale Analogico - Offset = 12295 3277 = 9018 (decimale). Sapendo che il numero massimo di conteggi che il convertitore utilizza quando acquisisce il segnale in ingresso nel range 4-20 mA è 13107 (= 16384 - 3277). Questo ci permette di calcolare la risoluzione della conversione: 100 (valore massimo della misura) / 13107 (numero di conteggi) = 0,0076 (gradi °C /conteggio) Quindi possiamo concludere che il segnale tra 0 e 100 °C viene inviato dal convertitore sotto forma di corrente (4-20 mA) con una risoluzione di 0,0076, cioè ogni numero indicato dal convertitore vale 0,0076 gradi. Come si ottiene la misura reale (cioè i gradi centigradi)? Supponiamo di leggere 8760: è sufficiente moltiplicare 8760 per la scala 0,0076 per ottenere i gradi centigradi: 8760 * 0,0076 = 66,576 °C. SPECIFICHE DEI VARI MODULI

D.2.4

CAMPI DI MISURA

La CPU SIMATIC S7 distingue tra il campo nominale, il campo di sovra/sottocomando, l’overflow e l’underflow. Sulla base di questa distinzione si stabilisce se il valore di misura rientra nel campo specificato nei dati tecnici o lo ha superato. I campi overflow e underflow sono riservati al rilevamento degli errori. Con una risoluzione di 16 bit i 32768 incrementi teoricamente possibili vengono distribuiti in un campo di tensione di 11,852 V. Per la risoluzione di un campo di misura di 10 V restano quindi a disposizione 27648 incrementi, il che equivale a un valore minimo rappresentabile di 0,3617 mV (vedere

tabella). Esempio di risoluzione del campo di misura 0 ... 10 V di un modulo SIMATIC S7 Valore (incrementi)

Campo di misura della corrente

Decimale

0... 10 V

Campo

32767

11,852 V

Overflow

11,759 V

Campo di sovracomando

27648

10,0 V

Campo nominale

20736

7,5 V

1

361,7 μV

0

0V

32512 32511 27649

Non rilevante per questo esempio poiché non sono possibili valori negativi

Campo di sottocomando Underflow

CAMPO DI SOVRA E DI SOTTOCOMANDO I campi di sovra/sottocomando prevengono che con l’abbandono del campo nominale siano emesse segnalazioni di errore. Quando il segnale oltrepassa il campo di sovra/sottocomando e raggiunge quello dell’overflow o dell’underflow, viene diagnosticato lo stato di errore “Overflow” e “Underflow”. Il campo di sovra/sottocomando corrisponde quindi a un campo di tolleranza compreso tra il campo nominale e l’overflow/underflow. La seguente immagine illustra il campo nominale, il campo di sovracomando e l’overflow di un campo di misura unipolare. Durante la fase di assestamento il segnale abbandona brevemente il campo nominale.

= Segnale di uscita analogico tE = Tempo transitorio di assestamento del segnale sul setpoint t1 = Il modulo termina la conversione sul morsetto del canale di uscita analogico ed emette il segnale t2 = Il segnale si è assestato e la grandezza di uscita analogica specificata è raggiunta ERRORE DI MISURA Errore di misura attraverso la digitalizzazione con una risoluzione di 8 e 14 bit Il campo di misura di un modulo analogico è compreso tra 0 e 10 V. Una risoluzione di 8 bit rappresenta complessivamente 256 valori. Ciò corrisponde a un salto di tensione minimo possibile di 39 mV ovvero dello 0,4 % riferito al valore finale del campo di misura. Una risoluzione di 14 bit rappresenta complessivamente 16384 valori. Ciò corrisponde a un salto di

tensione minimo possibile di 0,61 mV ovvero dello 0,006 % riferito al valore finale del campo di misura. Le indicazioni percentuali rilevate in questo modo sono contemporaneamente i valori teorici Best Case per il limite di errore d’esercizio. Con una risoluzione di 8 bit e un campo di misura di 0 ... 10 V non è quindi possibile ottenere una precisione migliore dello 0,4%. CALCOLO DELL’ERRORE DI MISURA MASSIMO Con il campo di misura di un modulo analogico da 0 a 10 V e un limite di errore di esercizio di ±0,5 % nell’intero campo della temperatura l’errore di misura massimo si calcola nel modo seguente: 10 V · 0,5/100 = 50 mV Pertanto l’errore di misura massimo è di ±50 mV. Di conseguenza, per l’ingresso analogico ogni tensione nell’intero campo d’ingresso comprende un’indeterminazione di ±50 mV. Una tensione da misurare di 3,5 V può essere quindi rappresentata con un valore qualsiasi compreso tra 3,45 V e 3,55 V. ERRORE DI LINEARITÀ La linearità indica lo scostamento della conversione A/D o D/A reale dalla retta ideale all’interno di un campo di misura specifico. L’errore di linearità è quindi la misura per lo scostamento della funzione di trasmissione reale dalla retta ideale. Nei dati tecnici lo scostamento è indicato come valore percentuale riferito al campo nominale del modulo analogico.

ESEMPIO Con un campo d’ingresso di ±10 V e un errore di linearità di ±0,01 % risulta un errore di ±1 mV. L’errore si calcola nel modo seguente: 10 V · 0,01 % = 1 mV. Nei dati tecnici gli errori di linearità sono già compresi nel limite degli errori di utilizzo. ERRORE DI TEMPERATURA Durante il funzionamento, i moduli analogici sono sottoposti a condizioni che possono ripercuotersi negativamente sulla loro precisione e quindi sui risultati di misura. Se ad esempio la temperatura di esercizio del modulo si scosta dalla temperatura ambiente di 25 °C, si verificano errori di temperatura. Questi errori di temperatura si trovano entro il limite di errore d’esercizio, entro il campo di temperatura ammesso. DEFINIZIONE: l’errore di temperatura indica la deriva massima dei valori di misura e di uscita determinata dalla variazione della temperatura ambiente del modulo analogico. La deriva massima può determinarsi con qualsiasi temperatura ambiente. In funzione del modulo utilizzato, l’errore di temperatura viene indicato in percentuale di grado Celsius e/o di grado Kelvin, ad es. ±0,005 %/K, e fa riferimento al valore finale del campo di

misura del modulo analogico. LIVELLAMENTO La maggior parte delle unità di ingressi analogici offrono la possibilità di parametrizzare in STEP 7 un livellamento del segnale di misura. Il livellamento dei valori analogici riduce l’influenza dei segnali di disturbo. Il livellamento è utile nel caso di variazioni lente del valore di misura, ad es. misure della temperatura. Principio di livellamento I singoli valori di misura vengono livellati mediante filtro. Il modulo calcola dei valori medi da un numero prestabilito di valori analogici convertiti (digitalizzati). Il livellamento non deve essere confuso con l’integrazione dei valori di misura oltre un intervallo di tempo definito. Il livellamento dei segnali di misura non è pertanto in grado di filtrare una determinata frequenza di disturbo. Tuttavia il livellamento assicura valori dei dati più “equilibrati”, ovvero sopprimendo gli spike che si sovrappongono al segnale di misura. A seconda del modulo utilizzato l’utente ha a disposizione per la parametrizzazione del livellamento 4 o più livelli (Nessuno, Debole, Medio, Forte). Il livello determina il numero dei valori analogici presi per la formazione del valore medio. Maggiore è il fattore di livellamento, migliore è l’azione del filtro.

D.2.5

RAPPRESENTAZIONE IN MEMORIA

I convertitori D/A e A/D usati nei moduli analogici sono convertitori a 13 bit o 12 bit, quindi non tutti i 16 bit di una word sono utilizzati per memorizzare i dati utilizzati dai convertitori. Nei riferimenti %AQ e %AI (16 bit) viene posto il dato convertito o da convertire sotto forma di una parola lunga 12 bit; la posizione esatta della parola del dato nella word del riferimento dipende dal tipo di modulo.

Esempio a 12 bit

Dove: – D0 ... D11 rappresentano i bit del dato del convertitore; – S il bit di segno; – X i bit della word del riferimento non utilizzati per il dato. Nei riferimenti %AQ i bit non utilizzati servono alla CPU per comunicare con il modulo analogico; tale operazione risulta perfettamente trasparente al programma Ladder utente. Sempre per i riferimenti %AQ è la CPU che converte il numero intero nel formato voluto dal modulo. Per i riferimenti %AI i n bit meno significativi vengono posti a 0 dal modulo analogico. Il numero dei possibili valori diversi in uscita o in ingresso è di 4000 e non 4096 (212); è il modulo stesso che fa sì che ad ogni variazione del bit meno significativo corrisponda un multiplo della risoluzione (es. 4 µA, 5 µA, 2.5 mV, 5 mV, a seconda del tipo di modulo utilizzato). Effetto stairstep Poiché nella word di riferimento i bit del dato non occupano i primi n bit meno significativi allora l’andamento dell’uscita (o ingresso) in funzione del dato non è una retta ma assume un andamento a gradini (stairstep). Per un’uscita l’effetto consiste nel fatto che a un certo intervallo di valori interi (in %AQ) corrisponde lo stesso livello del segnale in uscita. Quindi se ad esempio si vuole impostare la velocità a 1400 giri/min il valore da immettere nel riferimento %AQ è 22400.

D.2.6

SEGNALI ANALOGICI NEL PLC

A differenza di un segnale binario, che può assumere solo i due stati di segnale “tensione presente +24V” e “tensione non presente 0V”, i segnali analogici possono assumere un qualsiasi numero di valori all’interno di un determinato campo. Un tipico esempio di sensore analogico è il potenziometro. A seconda della posizione della manopola è possibile

impostare qualsiasi resistenza, fino al valore massimo. Esempi di grandezze analogiche nella tecnica di comando: Temperatura -50 ... +150°C Portata 0 ... 200 l/min Numero di giri 500 ... 1500 giri/min Queste grandezze vengono convertite in tensioni, correnti o resistenze elettriche con l’aiuto di un trasduttore. Per rilevare un numero di giri è possibile convertire la gamma di velocità 500-1500 giri/min in un campo di tensione di 0 +10V con un trasduttore. Se il numero di giri misurato fosse 865 giri/min il trasduttore fornirebbe un valore di tensione paria + 3,65 V.

Queste tensioni, correnti o resistenze elettriche vengono poi collegate ad un’unità analogica che digitalizza il segnale. Per elaborare le grandezze analogiche con un PLC, il valore letto della tensione, della corrente o della resistenza deve essere convertito in un’informazione digitale. Questa conversione viene definita conversione analogico-digitale (conversione A/D). Ciò significa ad esempio che il valore della tensione di 3,65V viene salvato come informazione in una serie di cifre binarie. Più cifre binarie vengono utilizzate per la rappresentazione digitale, maggiore è la risoluzione. Se ad esempio per il campo della tensione 0 ... +10V fosse disponibile solo 1 bit, si potrebbe affermare solo se la tensione misurata fosse compresa nel campo 0 ... +5V o nel campo +5V … +10V. Con 2 bit è già possibile suddividere il campo in 4 campi singoli, ovvero 0 - 2,5 / 2,5 - 5 / 5 - 7,5 / 7,5 - 10V. Nella tecnica di comando i comuni convertitori A/D funzionano con 8 o 11 bit. Con 8 bit si hanno a disposizione 256 campi singoli e con 11 bit una risoluzione di 2048 campi singoli.

Per l’elaborazione del valore analogico, i tipi di dati ‘INT’ e ‘REAL’ sono particolarmente importanti. Infatti, i valori analogici immessi sono disponibili come numeri interi in formato ‘INT’ e per garantire che l’ulteriore elaborazione sia precisa considerato l’errore di arrotondamento di ‘INT’ possono essere utilizzati solo numeri in virgola mobile ‘REAL’.

U.D. N.3 I MODULI I/O ANALOGICI PER S71200 N.B.: Per ulteriori informazioni sui Moduli I/O Analogici consultare il manuale di sistema SIEMENS, da cui le tabelle seguenti sono tratte.

D.3.1

CARATTERISTICHE TECNICHE DEGLI INGRESSI ANALOGICI INTEGRATI NEL PLC S71200

DATI TECNICI DEGLI INGRESSI ANALOGICI INTEGRATI IN S71200

D.3.2

CARATTERISTICHE TECNICHE DEI MODULI ANALOGICI SB E SM PER PLC S7-1200

È possibile inserire nelle CPU S7-1200 il modulo “SB 1232” con un’uscita analogica. DATI TECNICI DEL MODULO DI INGRESSI ANALOGICO SM 1231

Gli ingressi analogici inutilizzati dovrebbero essere cortocircuitati. Quando gli ingressi sono configurati per il modo “corrente”, la corrente non attraversa l’ingresso a meno che non si alimenti il modulo con una

sorgente di alimentazione esterna.

MODULI DI USCITA ANALOGICI SM 1232 IN CORRENTE E IN TENSIONE

MODULI DI I/O ANALOGICI SM 1234 IN CORRENTE E IN TENSIONE

Gli ingressi analogici inutilizzati dovrebbero essere cortocircuitati. Quando gli ingressi sono configurati per il modo “corrente”, la corrente non

attraversa l’ingresso a meno che non si alimenti il modulo con una sorgente di alimentazione esterna.

MODULI ANALOGICI I/O SM 1231 PER TERMOCOPPIE Quando si collega una termocoppia al modulo di I/O SM 1231, i due fili di metallo diverso vengono collegati al connettore di segnale del modulo. Il

punto in cui i due fili si toccano costituisce il sensore della termocoppia. Altre due termocoppie si formano nel punto in cui i due fili di metallo diverso si collegano al connettore di segnale. La temperatura del connettore genera una tensione che viene sommata a quella del sensore. Se la tensione non viene compensata la temperatura rilevata si discosta da quella del sensore. Per compensare il connettore della termocoppia si effettua quindi una compensazione dei giunti freddi. Le tabelle relative alle termocoppie sono basate su una temperatura di riferimento dei giunti che generalmente è pari a 0 gradi Celsius. La compensazione dei giunti freddi dell’unità compensa il connettore a zero gradi Celsius e corregge la tensione sommata dalle termocoppie del connettore. La temperatura dell’unità viene misurata internamente e convertita in un valore che viene sommato alla conversione del sensore. La conversione corretta del sensore viene infine linearizzata mediante le tabelle delle termocoppie. Per garantire un funzionamento ottimale della compensazione dei giunti freddi è necessario collocare il modulo in un ambiente termicamente stabile. Le variazioni lente (inferiori a 0,1°C/minuto) con il modulo a temperatura ambiente vengono compensate correttamente entro le specifiche del modulo. Anche il passaggio di aria attraverso il modulo causa errori di compensazione dei giunti freddi. Per ottenere una migliore compensazione degli errori si può utilizzare un blocco isotermico esterno. Il modulo per termocoppie consente di utilizzare un blocco con riferimento a 0° C o 50° C. Il modulo di I/O analogici per termocoppie (TC) SM 1231 misura il valore della tensione collegata ai propri ingressi. Il tipo di misura della temperatura può essere “Termocoppia” o “Tensione”. “Termocoppia”: il valore viene indicato in gradi moltiplicati per dieci (ad es. 25,3 gradi corrispondono al valore decimale 253). “Tensione”: il valore di fondo scala del campo nominale è il valore decimale 27648.

Gli ingressi analogici inutilizzati dovrebbero essere cortocircuitati. I canali inutilizzati della termocoppia possono essere disattivati. Se un canale inutilizzato è disattivato non si verifica nessun errore. La tabella di selezione delle termocoppie per SM 1231 riporta i campi e la precisione dei tipi di termocoppie utilizzabili con il modulo di I/O SM 1231 per termocoppie.

Una volta collegata l’alimentazione il modulo esegue la calibrazione interna del convertitore analogico-digitale. Durante questo periodo di tempo restituisce il valore 32767 in tutti i canali finché i canali non hanno dati validi. Nel programma utente può essere necessario tener conto di questo tempo di inizializzazione. RAPPRESENTAZIONE DEI VALORI ANALOGICI DELLE TERMOCOPPIE DI TIPO J

Un cablaggio errato (ad esempio, inversione di polarità o ingressi aperti) o un errore di sensore nel campo negativo (ad esempio, tipo di termocoppia errato) fanno sì che il modulo di termocoppia segnali un underflow. MODULO DI I/O ANALOGICI SM 1231 RTD Il modulo di I/O analogici SM 1231 RTD misura il valore della resistenza collegata ai suoi ingressi. Il tipo di misura può essere “Resistenza” o “Resistenza termica”. “Resistenza”: il valore di fondo scala del campo nominale è il valore decimale 27648. “Resistenza termica”: il valore viene indicato in gradi moltiplicati per dieci (ad es. 25,3 gradi corrispondono al valore decimale 253).

Il modulo SM 1231 RTD consente di effettuare misure mediante collegamenti a 2, 3 e 4 fili alla resistenza del sensore.

I canali inutilizzati dell’RTD possono essere disattivati. Se un canale inutilizzato è disattivato non si verifica nessun errore. Il modulo RTD deve avere il loop continuo attuale per eliminare il tempo di stabilizzazione supplementare che è aggiunto automaticamente a un canale inutilizzato che non è disattivato. Per la coerenza il modulo RTD dovrebbe avere una resistenza collegata (come il collegamento RTD a 2 fili).

I valori RTD inferiori al valore minimo di underrange vengono specificati come -32768. I valori RTD superiori al valore massimo di overrange vengono specificati come +32767.

I valori di resistenza superiori al valore massimo di overrange vengono specificati come +32767. Se il sensore non è collegato il modulo segnala 32767 nei canali attivi. Se è attivo anche il rilevamento di rottura del conduttore gli appositi LED rossi del modulo lampeggiano. Se i campi 500 Ω e 1000 Ω RTD vengono utilizzati con altri resistori di valore inferiore, l’errore potrebbe aumentare del doppio dell’errore specificato. Nei sensori RTD da 10 Ω la precisione migliore viene ottenuta utilizzando collegamenti a 4 fili. Nella modalità a 2 fili la resistenza dei conduttori causa un errore nella lettura del sensore e non garantisce la precisione massima. Una volta collegata l’alimentazione il modulo esegue la calibrazione interna del convertitore analogico-digitale. Durante questo periodo di tempo restituisce il valore 32767 in tutti i canali finché i canali non hanno dati validi. Nel programma utente può essere necessario tener conto di questo tempo di inizializzazione. Poiché la configurazione del modulo può variare la durata del tempo di inizializzazione è opportuno verificarne il comportamento o il modulo nella configurazione. Se necessario, è possibile includere un circuito logico nel programma utente per adattare il tempo di inizializzazione del modulo. RAPPRESENTAZIONE DEI VALORI ANALOGICI DEGLI RTD La tabella rappresenta il valore misurato dei sensori di temperatura standard RTD, rappresentazione dei valori analogici delle termoresistenze PT 100, 200, 500, 1000 e PT 10, 50, 100, 500 GOST (0.003850).

DOMANDA: Come si collega un sensore ai moduli per segnali analogici del SIMATIC S7-1200? Un sensore di campo con le seguenti caratteristiche: Risoluzione: 12 bit + bit di segno Alimentazione di tensione: +/-10V, +/-5V o +/-2,5V o Alimentazione: da 0 a 20 mA può essere collegato ai seguenti moduli per segnali analogici di S7-1200: SM 1231 AI 4 x 13 bit SM 1231 AI 8 x 13 bit SM 1234 AI 4 x 13 Bit / AQ 2 x 14 Bit Il tipo di misurazione (tensione o corrente) può essere selezionato mediante 2 canali. Le figure nella pagina seguente mostrano esempi di come è possibile collegare i diversi tipi di sensori.

Alimentazione di tensione a 24V DC per il modulo per segnali analogici SM 1231 AI 4 x 13 bit (canale 0).

Come si possono standardizzare e destandardizzare valori analogici con STEP 7 (TIA Portal)? Moduli Analogici PLC S7-1200 - Gestione 4-20mA -

D.3.3

I MODULI I/O ANALOGICI PER S7-1511-C

La periferica onboard analogica presenta le seguenti caratteristiche tecniche: A) Ingressi analogici N. 5 ingressi analogici Risoluzione a 16 bit con segno Tipo di misura tensione canale per canale impostabile per i canali da 0a3 Tipo di misura corrente canale per canale impostabile per i canali da 0 a3 Tipo di misura resistenza impostabile per il canale 4

Tipo di misura termoresistenza impostabile per il canale 4 Diagnostica parametrizzabile (per canale) Interrupt di processo in caso di superamento del valore limite impostabile per ogni canale (due valori limite superiori e due inferiori ciascuno) Supporto dello stato del valore (Quality Information, QI) B) Uscite analogiche N. 2 uscite analogiche Risoluzione: 16 bit con segno Uscita di tensione selezionabile canale per canale Uscita di corrente selezionabile canale per canale Diagnostica parametrizzabile (per canale) Supporto dello stato del valore (Quality Information, QI)

AREA INDIRIZZI DELLA PERIFERIA ONBOARD ANALOGICA Gli indirizzi si suddividono in 5 canali di ingressi analogici e 2 di uscite analogiche. STEP 7 (TIA Portal) assegna gli indirizzi automaticamente. Gli indirizzi possono essere modificati nella configurazione hardware di STEP 7 (TIA Portal), assegnando liberamente l’indirizzo iniziale. Gli indirizzi dei canali vengono ricavati dall’indirizzo iniziale. “IB x” indica ad es. l’indirizzo iniziale byte di ingresso x. “QB x” indica ad es. l’indirizzo iniziale byte di uscita x.

TIPI E CAMPI DI MISURA DEGLI INGRESSI ONBOARD ANALOGI La periferia onboard analogica ha come preimpostazione per gli ingressi sui canali da 0 a 3 il tipo di misura tensione e il campo di misura ±10 V. Il canale 4 ha come preimpostazione il tipo di misura resistenza e il campo di misura 600 Ω. Se si preferisce utilizzare un altro tipo e un altro campo di misura, modificare la parametrizzazione della periferia onboard analogica

con STEP 7. Disattivare gli ingressi non utilizzati per evitare l’influsso di disturbi che possono causare un comportamento errato (ad es. l’attivazione di un interrupt di processo). Tipodimisura

Campo di misura

Canale

Tensione

0 ... 10 V 1 ... 5V ±5 V ±10 V

0...3

Corrente T4F (trasduttore a 4 fili)

0 ... 20 mA 4 ... 20 mA ±20 mA

0...3

Resistenza

150 Ω 300 Ω 600 Ω

4

Termoresistenza RTD

Pt 100 Standard/Climatizzazione Ni 100 Standard/Climatizzazione

4

Disattivato

-

-

MODI E CAMPI DI EMISSIONE DELLE USCITE ONBOARD ANALOGICHE La periferia onboard analogica ha come preimpostazione per le uscite il modo di emissione tensione e il campo di emissione ±10 V. Se si preferisce utilizzare un altro campo o un altro modo di emissione è necessario modificare i parametri della periferia onboard analogica STEP 7. Modo di emissione

Campo di emissione

Tensione

1 ... 5V 0 ... 10V ±10 V

Corrente

0 ... 20 mA 4 ... 20 mA ±20 mA

Disattivato

-

PARAMETRI DEGLI INGRESSI ONBOARD ANALOGICI Con la parametrizzazione in STEP 7 (TIA Portal) si definiscono le proprietà della periferia onboard analogica. I parametri impostabili sono riportati nelle tabelle seguenti, suddivisi per ingressi e uscite.

1) Tutti i parametri possono essere impostati canale per canale. 2) Solo per il tipo di misura “Tensione” nel campo di misura da 1 a 5 V e per il tipo “Corrente” nel campo di misura da 4 a 20 Ma.

1) Tutti i parametri possono essere impostati canale per canale. 2) L’unità Kelvin (K) è possibile solo per il campo di misura “Campo Standard” e non per il “Campo Climatizzazione”. 3) La soppressione delle frequenze di disturbo deve avere lo stesso valore per tutti i canali di ingresso attivi. È possibile modificare questo valore modificando i parametri in RUN con la parametrizzazione dei singoli ingressi

(set di dati 0 ... 4) solo se tutti gli altri canali di ingresso sono disattivati. PARAMETRI IMPOSTABILI E PREIMPOSTAZIONI DELLE USCITE

1) Tutti i parametri possono essere impostati canale per canale. 2) Solo per il modo di emissione “Corrente”. 3) Solo per il modo di emissione “Tensione”.

1) Tutti i parametri possono essere impostati canale per canale. RILEVAMENTO CORTOCIRCUITO Per il modo di emissione “tensione” è possibile parametrizzare la diagnostica di cortocircuito verso M. Il rilevamento di cortocircuito non è possibile per i valori di emissione piccoli. Pertanto le tensioni emesse devono essere inferiori a -0,1 V o superiori a +0,1 V. RILEVAMENTO ROTTURA CONDUTTORE Per il modo di emissione “corrente” è possibile parametrizzare la diagnostica di rottura conduttore. Non è possibile rilevare la rottura del conduttore quando i valori di emissione sono piccoli; le correnti emesse devono essere quindi inferiori a -0,2 mA e superiori a +0,2 mA. RAPPRESENTAZIONE DEI VALORI ANALOGICI

Ogni valore analogico viene inserito nelle variabili allineato a sinistra. I bit contrassegnati da “x” vengono impostati a “0”. Questa risoluzione non è valida per i valori di temperatura. I valori della temperatura digitalizzati sono il risultato di una conversione nella periferia onboard analogica.

Nelle tabelle seguenti sono riportati i valori decimali ed esadecimali (codifiche) dei possibili campi di misura della tensione.

Nelle tabelle seguenti sono riportati i valori decimali ed esadecimali (codifiche) dei possibili campi di misura della corrente.

Nelle tabelle seguenti sono riportati i valori decimali ed esadecimali (codifiche) dei possibili campi dei sensori a resistenza.

U.D. N.4 IMMISSIONE/EMISSIONE DEI VALORI ANALOGICI D.4.1

HARDWARE PER GLI INGRESSI E USCITE ANALOGICHE DEL PLC S7-1200

Esaminiamo gli ingressi analogici integrati nel PLC S7-1200 e l’uscita analogica del modulo SB1232: essi vengono immessi ed emessi nel PLC come informazioni a parola. Gli indirizzi sono: %IW64 e %IW66 (ingressi analogici) %QW80 (uscita analogica) Ogni valore analogico (“canale”) occupa una parola di ingresso o di uscita. Il formato è “Int”, un numero intero.

Se inseriamo in un S7-1200 il modulo analogico per RTD la configurazione in TIA Portal è la seguente:

NOTA: gli allarmi di diagnostica per overflow, underflow e bassa tensione vengono segnalati nei valori di dati analogici anche se sono stati disattivati nella configurazione del modulo. Il rilevamento dell’underflow non è mai abilitato per i campi di resistenza. Se l’allarme di rottura conduttore è disattivato e si verifica un’interruzione nel cablaggio del sensore, il modulo può restituire valori random.

D.4.2

HARDWARE PER GLI INGRESSI E USCITE ANALOGICHE DEL PLC S7-1511C

Esaminiamo gli ingressi analogici e le uscite analogiche integrati nel PLC S71511C00; essi vengono immessi ed emessi nel PLC come informazioni a parola. Gli indirizzi sono: %IW0, %IW2, %IW4, %IW6, %IW8 (ingressi analogici) %QW0 e %QW2 (uscita analogica)

Ogni valore analogico (“canale”) occupa una parola di ingresso o di uscita. Il formato è “Int”, un numero intero.

La trasformazione del valore analogico per l’ulteriore elaborazione nel PLC è uguale per ingressi e uscite analogici. I campi dei valori digitalizzati sono rappresentati in questo modo:

D.4.3

NORMALIZZAZIONE DEI VALORI ANALOGICI

Per la rielaborazione dei valori analogici digitalizzati è spesso necessario calcolare la grandezza di processo effettiva in luogo degli incrementi (ad es. 10 V = 27648 incrementi). La conversione di un campo valori (ad es. -27648 fino a +27648 incrementi) nella grandezza fisica originale (ad es. 0 ... 300 litri) viene definita normalizzazione o anche graduazione. Se un valore di ingresso analogico è disponibile come valore digitalizzato, nella maggior parte dei casi deve ancora essere normalizzato per far sì che i valori numerici corrispondano alle grandezze fisiche del

processo. Allo stesso modo il valore analogico normalmente viene emesso nella parola di uscita della periferia solo dopo che è stato normalizzato. BLOCCHI STANDARDIZZATI Per la normalizzazione dei valori analogici STEP 7 offre il blocco di programma adatto. Il blocco SCALE è compreso nella fornitura di STEP 7 e consente l’inserimento di un valore limite superiore e inferiore (ad es. da 0 a 500 litri). Nei programmi STEP7 per la normalizzazione si ricorre alle operazioni di calcolo. Per assicurare la massima precisione possibile i valori da normalizzare devono essere convertiti nel tipo di dati REAL così da ridurre al minimo gli errori di arrotondamento. NORM_X: Normazione L’istruzione “Riporta in scala” riporta in scala il valore nell’ingresso VALUE rispetto a un determinato campo di valori. Durante l’esecuzione dell’istruzione “Riporta in scala” il valore in virgola mobile nell’ingresso VALUE viene riportato in scala rispetto al campo di valori definito dai parametri MIN e MAX. Il risultato della rappresentazione in scala è un numero intero che viene salvato nell’uscita OUT. La figura seguente mostra un esempio di come si possano riportare i valori in scala.

SCALE_X: Riporta in scala L’istruzione “Riporta in scala” riporta in scala il valore nell’ingresso VALUE rispetto a un determinato campo di valori. Durante l’esecuzione dell’istruzione “Riporta in scala” il valore in virgola mobile nell’ingresso VALUE viene riportato in scala rispetto al campo di valori definito dai parametri MIN e MAX. Il risultato della rappresentazione in scala è un numero intero che viene salvato nell’uscita OUT. La figura seguente mostra un esempio di come si possano riportare i valori in scala.

Load impedance (impedenza di carico) se alimentato in Tensione: più di 1000 Ω se alimentato in Corrente: meno di 600 Ω Cosa significa impedenza di carico: 10V / 1000 ohms = 10 mA

cioè max 10 mA di corrente deve scorrere se si collega AQ come uscita di tensione. 20 mA * 600 = 12V, cioè max 12V di tensione si deve avere se AQ è collegato come uscita in corrente, ovvero come generatore di corrente. Controllo di temperatura effettuato con i moduli analogici senza utilizzare l’uscita per termoresistenze. Si collega un PTC o NTC ai terminali dell’uscita analogica, abilitando AQ in corrente, e successivamente si collegano i terminali dell’ingresso analogico in parallelo sul PCT; a quel punto si legge il valore di tensione ai capi del PTC (o NTC) che, una volta convertito, sarà la misura della temperatura richiesta.

D.4.4

LA BIBLIOTECA GLOBALE ‘SCALE_CURRENT’

La gamma di 0-20 mA, senza l’istruzione ‘Scale_current_input’, corrisponde alla portata 0-27.648 del segnale interno del PLC. L’istruzione ‘Scale_current_input’ adatta questa gamma interna per 4-20 mA lineare, a partire da 0 per 4 mA e terminando con 27648 per 20 mA. Un limite per la sorveglianza della rottura cavo può essere inserito a mano. L’istruzione ‘Scale_current_output’, per la gamma 0-20 mA con portata 0-27.648 del segnale interno del PLC, esegue gli stessi adattamenti dell’istruzione ‘Scale_current_input’.

DOMANDA: Si può utilizzare il modulo 0-20 mA con i segnali 4-20 mA? È possibile utilizzare i segnali Analogici di Ingresso e Uscite 4-20 mA, con le schede Analogiche 0-20 mA a disposizione dei PLC S7-1200. È possibile scalare la gamma di ingressi e uscite analogiche, utilizzando le Funzioni FC predefinite ‘Scale_current_input’ e ‘Scale_current_output’. La biblioteca Global ‘Scale_current’ può essere scaricata dal web e installata nella biblioteca globale. PROCEDURA Dopo aver scaricato e decompresso la biblioteca ‘Scale_current’, apri ‘Biblioteche’ in TIA Portal e fai clic sul pulsante ‘Apri biblioteca globale’ e

seleziona ‘Scale_current.al10’ (come in figura).

Poiché la biblioteca è stata realizzata con TIA Portal V10 verrà convertita nella versione locale

e successivamente visualizzata nel riquadro ‘Biblioteche globali’.

D.4.5

SCALING DELL’INGRESSO ANALOGICO

INSERIRE L’ISTRUZIONE ‘SCALE_CURRENT_INPUT’ IN UN SEGMENTO Sfogliare le librerie Globali per la ‘Scale_current_input’ FC. Trascinare e rilasciare il blocco FC in un segmento del programma relativo al PLC S7-1200.

SCALARE IL SEGNALE DI INGRESSO ANALOGICO La gamma di 0-20 mA, senza l’istruzione ‘Scale_current_input’, corrisponde alla portata del segnale interno del controllore di 0-27.648. L’istruzione ‘Scale_current_input’ adatta questa gamma interna per 4-20 mA lineare, a partire da ‘0’ per 4 mA e terminando con ‘27648’ per 20 mA. Un limite per la sorveglianza della rottura cavo può essere inserito a mano.

Collegare il contatto ‘w_input_0-20mA’ per l’input hardware analogico (per esempio IW64). Si visualizza il valore scalato al contatto ‘r_input_4-20mA’ (variabile reale MD100). NOTA: Per ogni valore di ingresso inferiore a 4 mA il segnale a ‘r_input_4-20mA’ sarà impostato a ‘0’. Di conseguenza, qualsiasi valore superiore a 20 mA non supererà il massimo di ‘27648’.

MONITORAGGIO DI ROTTURA CAVO Al contatto ‘r_wire_break_limit’, inserire il limite per il monitoraggio rottura cavo. Il valore ‘2764,8’ (per esempio), imposterà il limite di rottura del conduttore a 2 mA. Ciò significa che, se il valore di corrente in ingresso è inferiore a 2 mA, il contatto ‘b_wire_break’ (variabile booleana M200.0) verrà impostato a ‘1’.

D.4.6

SCALING DELL’USCITA ANALOGICA

INSERIRE L’ISTRUZIONE ‘SCALE_CURRENT_OUTPUT’ IN UN SEGMENTO

Sfogliare le librerie Globali per la ‘Scale_current_output’. Trascinare e rilasciare il blocco FC in un segmento del programma relativo al PLC S71200.

SCALARE IL SEGNALE ANALOGICO Collegare il contatto ‘r_output_4-20mA’ al valore del software. Viene visualizzato il valore di scala sul contatto ‘w_output_0-20mA’ per inviarlo all’uscita Hardware Analogica (per esempio QW80). NOTA: Per ogni valore di ingresso inferiore a ‘0’, il segnale ‘w_output_020mA’ sarà impostato a 4 mA. Quindi qualsiasi valore più alto di ‘27648’ non supererà un massimo di 20 mA.

Per scaricare la libreria S71200_Scale_current vai al link http://support.automation.siemens.com/WW/llisapi.dll/csfetch/42087579/S71200_Scale_current.zip?func=cslib.csFetch&nodeid=42086603

D.4.7

ESEMPIO CON MODULO SM1234 AI 4 x 13 BIT / AQ 2 x 14 BIT

(Risoluzione: 12 bit + bit di segno - con 4096 valori) L’uscita analogica QW98 è collegata sull’ingresso IW100 in modo da far leggere all’ingresso il valore di corrente uscente dal canale uscita 1 del modulo delle uscite.

Se immettiamo un valore di circa 5529 nell’uscita analogica.

DOMANDE DI RIEPILOGO 1) Evidenziare le differenze tra termistori e termoresistenze. 2) Che cosa significa PTC e NTC? 3) Su quale principio di funzionamento si basano le termocoppie? 4) Che differenza c’è tra sonde a 2 e a 4 fili? 5) Con quanti bit si rappresentano i valori analogici? 6) Quali sono i campi di misura delle correnti per i segnali analogici?

7) Quali sono i campi di misura delle tensioni per i segnali analogici? 8) Che differenza c’è tra segnale in tensione e segnale in corrente? 9) Che cos’è il livellamento? 10) Il PLC S7-1200 possiede sia ingressi che uscite analogiche? 11) Il PLC S7-1200 è in grado di leggere i valori da sonde PT100? 12) Il PLC S7-1511C è in grado di leggere i valori da sonde PT100? 13) Il PLC S7-1511C possiede ingressi e/o uscite analogiche integrate? 14) Quali indirizzi di memoria vengono assegnati agli I/O analogici per un S7-1200? 15) Quali indirizzi di memoria vengono assegnati agli I/O analogici per un S7-1511C?

MODULO E

ELETTROPNEUMATICA PREREQUISITI: Saper utilizzare le funzioni di base per un PLC Conoscere il linguaggio grafcet Saper realizzare un Ladder Saper utilizzare un personal computer

OBIETTIVI: Saper realizzazione progetti per l’azionamento di un impianto elettropneumatico comandato da PLC

U.D. N.1 NOZIONI DI PNEUMATICA GENERALE E.1.1

CONCETTI GENERALI

La pneumatica è una branca della fisica e della tecnologia che studia il trasferimento di forze mediante l’utilizzo di gas in pressione, molto spesso aria compressa. I circuiti pneumatici sono costituiti da valvole che hanno il compito d’inviare segnali pneumatici ai cilindri secondo una logica prestabilita; lo scopo di questi è di trasformare l’energia pneumatica in energia meccanica. I sistemi elettropneumatici sono basati sul comando elettrico delle valvole pneumatiche tramite solenoidi (bobine). Il complesso valvola-bobina, che prende il nome di elettrovalvola, comanda il circuito di potenza tipicamente pneumatico ed è controllata, a sua volta, da dispositivi elettromeccanici o elettronici cablati o, per esigenze più complesse, da PLC. Il sistema è suddiviso in circuito di potenza (produzione aria compressa tramite elettrocompressore, distribuzione controllata dell’aria agli attuatori, attuatori del sistema costituiti da cilindri pneumatici) e in circuito di controllo (alimentazione elettrica, circuito di controllo elettromeccanico, elettronico e a PLC, circuito di retroazione, costituito da sensori o trasduttori). Le elettrovalvole (valvole a solenoide) sono l’interfaccia tra la logica di comando e i dispositivi pneumatici; essa è munita di un solenoide (bobina), entro il quale è posto un nucleo di ferro dolce, che, nelle condizioni di riposo, è spinto da una molla ad assumere la posizione più lontana dal centro del solenoide. Il segnale elettrico di pilotaggio viene inviato al solenoide, il quale risucchia il nucleo di ferro, aprendo o chiudendo degli orifizi, utilizzati per la commutazione del flusso d’aria. L’azionamento è realizzato da una bobina e può avvenire in modo: diretto: quando uno stelo è comandato direttamente dalla bobina e

agisce sulla valvola commutandola; indiretto (servopilotate): quando la bobina agisce su uno stadio pilota (servopilota) che a sua volta utilizza il fluido in pressione per la commutazione della valvola. SISTEMI AD ARIA COMPRESSA Un sistema di comando può essere realizzato utilizzando diverse tecnologie e diversi mezzi fisici per il trasporto di energia e di segnali. L’aria si presenta come mezzo particolarmente adatto a essere utilizzato in sistemi di comando di tipo ON-OFF, ciò corrisponde, all’apertura o alla chiusura di un contatto elettrico o di una valvola pneumatica che permette o impedisce il passaggio dell’aria. Nella pneumatica usualmente i comandi determinano l’invio dell’aria ad una pressione prestabilita da una parte o dall’altra di un cilindro determinando una corsa in un senso o in senso opposto. Le valvole adibite alla distribuzione dell’aria vengono comandate in modo da assumere posizioni ben fisse: tutto aperto o tutto chiuso. Per la sua caratteristica di compressibilità l’aria, non è adatta a effettuare dei comandi graduali, meglio si presta, per un controllo di posizione proporzionale, l’impiego di liquidi, considerati praticamente incomprimibili. Tale tecnica viene studiata nell’oleodinamica. L’aria contiene sempre del vapore acqueo. La sua presenza può determinare delle condense dannose, che debbono essere eliminate nell’impianto. Nella produzione dell’aria compressa occorre prevedere una sua deumidificazione. L’aria prelevata dall’esterno, prima di essere compressa, deve essere filtrata, in modo che non contenga particelle in sospensione, che possono compromettere l’integrità del compressore. Poiché nell’operazione di compressione si ha una produzione di calore che aumenta la temperatura del fluido, occorre effettuare una refrigerazione sia delle pareti del compressore che dell’aria compressa, che verrà poi inviata nel serbatoio, dove viene immagazzinata, e dal quale verrà prelevata e immessa nella rete di distribuzione. Per essere utilizzata, l’aria deve poi passare in un gruppo di condizionamento. In questo si opera un ulteriore filtraggio del fluido, il quale viene poi portato alla pressione di lavoro e mantenuta a un valore costante,

indipendentemente dalle variazioni della pressione nella rete di distribuzione. Dal gruppo di condizionamento l’aria compressa viene inviata all’utenza. I compressori sono delle macchine che trasformano un lavoro meccanico in energia pneumatica (cinetica e di pressione). Qualunque sia il tipo di compressore il simbolo che lo indica è quello rappresentato in figura. Si noti che il triangolo nell’interno del cerchio è vuoto. In generale, i percorsi nei comandi pneumatici verranno indicati con triangoli vuoti. I compressori debbono fornire aria compressa ad una pressione che si mantenga ad un valore quanto più possibile costante. L’aria viene inviata dal compressore in un serbatoio, costituente una riserva che garantisce una piccola fluttuazione della pressione nella rete di distribuzione, compresa tra un valore minimo e uno massimo. Il sistema di regolazione assicura la fluttuazione della pressione entro l’intervallo stabilito.

Gli attuatori pneumatici sono dispositivi atti a trasformare l’energia pneumatica di pressione in energia meccanica. Essi possono essere a movimento rettilineo alternativo o rotatorio. Gli attuatori a moto rettilineo alternativo sono costituiti da cilindri, alimentati, in uno o in entrambi i suoli lati, dall’aria compressa, che muove assialmente un pistone. L’alimentazione dell’aria può avvenire in un solo lato del cilindro, determinando una sola corsa di lavoro, o in entrambe, fornendo due corse attive di lavoro. Si distinguono così: Cilindri a semplice e a doppio effetto. Cilindri a semplice effetto L’aria compressa viene immessa nell’orifizio di ingresso I e spinge il

pistone P a effettuare la corsa di lavoro, contrastando la tensione della molla.

L’aria viene scaricata dallo stesso orifizio da cui è stata immessa nel cilindro. Nello scarico dell’aria la molla effettua la corsa passiva di ritorno del pistone. Nel cilindro a semplice effetto la molla, nelle condizioni di riposo, spinge il pistone ponendolo in posizione di rientro dello stelo. La corsa di lavoro, effettuata dall’ingresso dell’aria, si attua con la fuoriuscita dello stelo. Il rientro è provocato dalla distensione della molla. Vi sono altri cilindri a semplice effetto nei quali in condizioni di riposo la molla spinge il pistone nella posizione di fuoriuscita dello stelo. L’ingresso dell’aria compressa, comprime la molla ed effettua la corsa di lavoro, consistente nel rientro dello stelo. Nello scarico dell’aria si ha la corsa passiva nella quale la molla si distende facendo fuoriuscire di nuovo lo stelo. Cilindri a doppio effetto L’aria compressa viene immessa nelle due camere del cilindro, poste ai lati opposti del pistone, determinando due corse attive di lavoro. Ovviamente, quando viene alimentata una camera, l’altra opposta deve essere in scarico. Ciò avviene mediante apposite valvole di distribuzione dell’aria

Le valvole sono dispositivi in grado di intercettare, regolare o distribuire il flusso dell’aria compressa. Esse sono composte: 1. da un corpo, contenente gli attacchi esterni con orifizi, attraverso i quali può avvenire l’alimentazione, l’utilizzazione o lo scarico dell’aria; 2. da un dispositivo interno, il quale, mutando posizione, può, con particolari canalizzazioni interne, porre in diverso collegamento gli orifizi. Questi dispositivi possono essere azionati con differenti tipi di comando: pneumatico, meccanico, elettrico. Le valvole si possono classificare in base a diversi criteri. 1) Rispetto alla natura del meccanismo di commutazione si distinguono: - Valvole ad otturatore - Valvole a cassetto - Valvole a distributore rotativo 2) Rispetto al tipo di comando si distinguono: - Valvole a comando meccanico - Valvole a comando pneumatico - Valvole a comando elettrico 3) Rispetto alla funzione si distinguono: - Valvole di distribuzione - Valvole di regolazione - Valvole di intercettazione

Classificazione rispetto alla funzione Come si è detto, la valvola può assumere diverse posizioni. A ciascuna di esse corrisponde un differente collegamento degli orifizi esterni. Ogni posizione viene indicata con un quadrato.

Una valvola a due posizioni viene indicata con due quadrati Adiacenti.

Il flusso interno dell’aria viene indicato con vettori, ognuno dei quali collega due diversi orifizi

L’intercettazione (blocco) del flusso viene indicata con un trattino a T.

Una valvola a due posizioni (due quadrati), a quattro vie (4 attacchi), detta valvola 4/2 (2 vie/4 posizioni).

SISTEMA DIN (tedesco)

SISTEMA I.S.O. (internazionale)

1 = pressione in entrata

P = pressione in entrata

2; 4; 6 = uscite a utilizzatori

A; B; C = uscite a utilizzatori

3; 5; 7 = scarichi R;S;T = scarichi

X; Y; Z = pressione tramite servopilota

12; 14; 16 = pressione tramite servopilota

Stati di una valvola Occorre distinguere due possibili stati di una valvola. Stato stabile: uno stato si dice stabile se la posizione permane anche quando cessa il comando che l’ha provocata. Stato instabile: uno stato si dice instabile se la posizione permane finché c’è il comando, cessato il quale, la valvola commuta la sua posizione, tornando nello stato di riposo. Valvole mono-stabili Le valvole mono-stabili (chiamate anche uni-stabili) hanno una posizione ben definita allo stato di riposo o non azionamento. L’azione di una molla interna infatti mantiene la valvola posizionata in una configurazione ben definita. La valvola rappresentata si dice monostabile in quanto ha solamente una sola posizione stabile. La pressione su un pulsante, un pedale, un comando pneumatico o elettrico permettono la commutazione della valvola. Togliendo l’azionamento la valvola ritorna nella posizione di riposo (riposizionamento automatico).

Nell’esempio sopra riportato la valvola mono-stabile 3/2 (3 vie e 2 posizioni), normalmente chiusa, a comando manuale tramite pulsante a fungo, rimane

chiusa allo stato di riposo perché la molla mantiene la valvola commutata nella configurazione di destra e pertanto A è collegato allo scarico R, mentre la presa di pressione P è chiusa. La pressione sul pulsante a fungo vince l’azione antagonista della molla e commuta la valvola nella configurazione di destra. In questo caso la valvola si apre, P è in collegamento con A, mentre lo scarico R viene chiuso. Le valvole bistabili non presentano invece una configurazione automatica a riposo. Il loro funzionamento è pertanto funzione dell’ultimo comando ricevuto.

La valvola bi-stabile 5/2 (5 vie e 2 posizioni), a comando pneumatico, è commutata nella posizione di destra se l’ultimo comando è stato X. Pertanto allo stato di riposo la valvola mantiene questa configurazione fino a quando non viene dato un comando sulla linea Z. In questa situazione l’aria in pressione è in comunicazione con l’uscita B, mentre A è in scarico su R. L’attivazione del comando Z commuta la valvola sull’altra configurazione e pertanto l’ingresso P va in comunicazione con A e B è in scarico. Tale situazione viene mantenuta ora anche in assenza del comando Z e pertanto è sufficiente un breve impulso su Z per ottenere la commutazione della valvola. Una valvola bistabile è pilotata da due segnali in senso opposto, ciascuno dei quali fa assumere alla valvola una posizione stabile.

Comando - Azionamento delle valvole Una caratteristica importante di ogni valvola è il suo tipo di azionamento, poiché la sua funzione entro un impianto è, a seconda del tipo di azionamento, di elemento segnalatore, di pilotaggio oppure di posizionamento. Il tipo di azionamento di una valvola a più vie non dipende dalla sua costruzione o funzione, ma l’azionamento è aggiuntivo alla valvola stessa. Il medesimo tipo di azionamento può essere previsto, a meno della esecuzione della valvola a 2, a 3, a 4 vie, con due o tre posizionamenti. Azionamento diretto Si fa distinzione fra azionamenti diretti e comandi a distanza. Nell’azionamento diretto, l’organo di azionamento è montato direttamente sulla valvola, come ad esempio tutti i tipi di azionamento manuale e meccanico. Azionamento manuale Tipi di azionamento manuali sono tutti quelli che possono essere azionati dalla mano oppure dal piede. Il segnale di pilotaggio della valvola può essere ottenuto con comando manuale, meccanico, pneumatico, elettrico o combinato. Il comando viene indicato con un opportuno simbolo posto all’estremità della valvola. Azionamento meccanico La valvola viene azionata mediante un organo di un impianto meccanico. Azionamento pneumatico La commutazione avviene normalmente con la pressione del sistema.

Condizione di riposo

Tale condizione si riferisce alle valvole con molla di richiamo, e corrisponde a quella posizione che la valvola assume quando è scollegata dall’impianto e la molla è distesa. Ovviamente tale posizione è stabile. Posizione iniziale è quella assunta dalla valvola dopo il suo montaggio e collegamento all’impianto, completato in tutte le sue parti e alimentato, prima che si prema lo START e che inizi quindi il ciclo di lavoro. Le valvole, nella descrizione del loro funzionamento, sono rappresentate nella posizione di riposo. Nello schema circuitale, invece, le valvole vanno rappresentate nella loro posizione iniziale Valvola 2/2 normalmente chiusa NC In condizioni di riposo il flusso dell’aria è intercettata. Con il segnale Z di pilotaggio (nello schema, supposto pneumatico) la valvola si commuta e il flusso dell’aria va dall’alimentazione P all’uscita A.

Valvola 2/2 normalmente aperta NA In condizioni di riposo il flusso dell’aria va dall’utilizzatore P all’uscita A. Il segnale Z di pilotaggio commuta la valvola e il flusso dell’aria d’alimentazione viene intercettato.

Valvola 3/2 normalmente chiusa NC In condizioni di riposo il flusso dell’aria è intercettato, mentre l’uscita di utilizzazione A è in scarico R. Il segnale Z di pilotaggio commuta la valvola e il flusso dell’aria va dall’alimentazione P al canale di utilizzazione. Usualmente la valvola è monostabile: tolto il segnale Z si ha il ritorno attraverso la molla nella condizione di riposo.

La valvola 3/2 può essere anche bistabile. In tal caso vi saranno due segnali di pilotaggio Z X, che comandano le due posizioni. Un tipo è quello a spola (cassetto) con doppio comando manuale.

Valvole di regolazione della portata strozzatore di flusso bidirezionale La regolazione del flusso d’aria è ottenuto mediante il passaggio del fluido attraverso una luce di sezione variabile. Uno stelo a spillo è comandato da una vite che, nella rotazione, avvicina o allontana l’otturatore dalla sede conica, variando così la luce di passaggio dell’aria dalla camera d’ingresso a quella di uscita. La regolazione è bidirezionale, in quanto si può indifferentemente scambiare l’ingresso con l’uscita: la regolazione avviene nei due sensi. Valvole di intercettazione Sono costituite da uno o più fori di alimentazione e uno solo di utilizzazione. Tali valvole vengono inserite nel circuito pneumatico per intercettare l’aria in una certa direzione, aprirla in un’altra, o defletterla in percorsi obbligati, in modo da ottenere tipi particolari di comando o di sequenze di comando. Valvola di non ritorno Permette il flusso dell’aria in un solo senso, impedisce, invece, il flusso nel senso opposto. L’aria entrando nell’orifizio di alimentazione P spinge l’otturatore, vince l’azione della molla e apre il passaggio. Se, invece, l’aria entra dall’orifizio, l’otturatore viene spinto contro la sede e impedisce il passaggio inverso. Regolatore di flusso unidirezionale Si ottiene la regolazione del flusso in un solo senso P -> A. Inviando l’aria da P ad A, il fluido è costretto a passare nella strozzatura: nel ramo parallelo, il dispositivo del non ritorno ne impedisce il passaggio. L’aria, nel senso

inverso A -> P trova via libera nel ramo parallelo alla strozzatura.

Circuiti pneumatici elementari I circuiti pneumatici sono costituiti da valvole che hanno il compito d’inviare segnali pneumatici ai cilindri secondo una logica prestabilita con lo scopo di trasformare l’energia pneumatica in energia meccanica. Comando di un cilindro a semplice effetto ove il comando principale è costituito da un distributore 3/2 ad esso direttamente collegato. Il sistema più semplice si realizza comandando direttamente i cilindri con valvole di distribuzione. Agendo normalmente sul comando si provoca lo spostamento o commutazione della valvola di comando. L’aria, attraverso la bocca di uscita, raggiunge la camera del cilindro vincendo la forza antagonista della molla e provoca l’avanzamento del pistone. Il pistone permane nella posizione fino a quando permane il comando manuale. Una volta rilasciato il comando della valvola, si ripristina la posizione iniziale del distributore e il pistone rientra per effetto della molla.

La figura a destra mostra lo stesso comando ma realizzato con un cilindro a doppio effetto. Invece di una valvola 3/2 viene ora utilizzata una valvola 5/2. Nella posizione di riposo o “normale” la via 2 è connessa al lato stelo ed è in comunicazione con l’alimentazione. Il cilindro ha lo stelo in posizione retratta. Azionando manualmente la valvola mettiamo in comunicazione l’alimentazione con l’uscita 4 e mandiamo in scarico la mandata. In questo modo il pistone fuoriesce e rimarrà in questa posizione fino a quando il comando manuale permane. Questi tipi d’impianti sono detti a comando diretto e sono consigliati quando si ha a che fare con cilindri di piccole dimensioni

I comandi sono dati da valvole di fine corsa azionate dagli steli dei pistoni. Con questo sistema si ha la certezza che la sequenza programmata venga rigorosamente rispettata. Dicendo che un segnale di comando provoca A+ significa che il comando agisce nel lato positivo della valvola del cilindro A con conseguente avanzamento del suo pistone. I finecorsa s’indicano con la lettera minuscola con cui è designato il cilindro relativo e, col codice zero s’indica il finecorsa azionato (premuto dalla camma), mentre con 1 quello in posizione rilasciata. Circuiti elettropneumatici Gli schemi elettropneumatici sono costituiti da due parti separate: 1) Circuito di potenza pneumatico: attuatori

distributori a comando elettrico 2) Circuito di comando elettrico disegnato a lato o sotto a quello pneumatico I due schemi sono uniti dal nome assegnato alle bobine delle elettrovalvole che azionano la corsa del pistone.

E.1.2

CICLO DI LAVORO

Per descrivere un ciclo di lavoro sono utilizzate alcune convenzioni abituali: 1. gli attuatori si indicano con le lettere maiuscole A, B, C, ...; 2. il segno + fatto seguire alla lettera indica la corsa d’andata (fuoriuscita dello stelo); ad esempio A+ indica la corsa d’andata del cilindro A; 3. il segno - fatto seguire alla lettera indica la corsa di ritorno (rientro dello stelo); ad esempio A- indica la corsa di ritorno del cilindro A; 4. per analogia con i segni, la posizione del cilindro con stelo rientrato si dice negativa, quella con stelo fuoriuscito si dice positiva; 5. considerando il distributore di potenza che comanda un attuatore si dice lato negativo quello relativo alla corsa di ritorno dello stelo, si dice lato positivo quello relativo alla corsa d’andata; 6. il ciclo può essere descritto indicando consecutivamente i movimenti delle varie fasi; ad esempio: A+ B+ C+ A-B-C-; qualora in una fase ci sia il movimento contemporaneo di più attuatori, questo dovrà essere indicato ponendolo necessariamente entro parentesi, ad esempio A+ B+ C+ A- (B-C-). Ogni fase del ciclo può iniziare solo quando è terminata la fase precedente, per questo, ad esempio, la corsa d’andata del cilindro B nella seconda fase avviene dall’istante in cui A è arrivato a fine corsa. Quando si dice corsa contemporanea di due o più cilindri si deve intendere che partono tutti insieme, essendo azionati contemporaneamente a seguito dello stesso evento, ma non necessariamente che procedono insieme per tutta la corsa, le velocità e le corse possono anche essere diverse.

Definizione dei segnali di comando La successione dei movimenti, ognuno dei quali legato ad un evento precedente, ci permette di definire i segnali di comando del ciclo e di passare ad una sua descrizione in forma tabellare. I finecorsa relativi ad ogni attuatore si indicano con le lettere minuscole a, b, c, ... seguite dal pedice 0 o 1 a seconda che si tratti rispettivamente del finecorsa azionato dallo stelo in posizione negativa o di quello azionato dallo stelo in posizione positiva. Lo start si indica con la lettera m. Consideriamo il ciclo A+ B+ C+ A- BC- Osserviamo che: Il moto B+ può avvenire solo dopo che A ha ultimato la propria corsa di andata a quindi ha azionato il finecorsa a1; quindi a1 è il segnale di comando del movimento B+. Ciò si può indicare in una tabella, ponendo a1 nella colonna della seconda fase immediatamente sotto

B+; Il moto C+ non può avvenire finché B non ha azionato b1, pertanto b1 è il segnale di comando del movimento C+; la tabella diviene:

dove si è sottolineato che l’ultimo movimento del ciclo, essendo questo ripetuto con continuità, deve precedere il primo movimento del ciclo successivo. La procedura descritta diventa immediata una volta che si sia scritta la prima riga della tabella (riga dei moti). Allo scopo basta seguire il metodo illustrato dalla tabella che segue per il ciclo indicato:

Il fatto che b0 e c0 siano posti in colonna con A+ significa che la fase può

avvenire solo quando b0 e c0 sono entrambi azionati, in altre parole quando il loro prodotto logico AND vale 1. Per completare i due esempi occorre inserire solo il segnale di start ovvero quello che dà il via al ciclo. Esso dovrà porsi in AND con i segnali di comando che consentono la prima fase. Stesura del diagramma dei movimenti del ciclo A+ B+ C+ A-B-C I movimenti del ciclo di lavoro si rappresentano su appositi diagrammi di moto con i quali è possibile sia seguire lo svolgimento delle fasi attraverso cui si sviluppa il ciclo stesso, che procedere all’analisi dei segnali di comando. Tale rappresentazione grafica si basa sulla tabella del ciclo la cui stesura abbiamo analizzato precedentemente. Essa si ottiene disegnando i movimenti degli steli dei vari attuatori secondo i criteri descritti nell’esempio seguente relativo al ciclo A+ B+ C+ A- (B-C-). Per prima cosa si imposta lo schema come illustrato sopra, quindi si passa a rappresentare le corse e le soste degli steli fase per fase. Nella fase 1 avviene la corsa di andata del cilindro A mentre B e C restano fermi nella posizione negativa raggiunta dall’ultimo movimento ad essi relativo.

Rappresentazione della prima fase Il segmento obliquo marcato rappresenta il passaggio dello stelo di A dalla posizione negativa a quella positiva ovvero la sua corsa di andata. I due segmenti marcati orizzontali rappresentano le soste degli steli dei cilindri B e C nelle loro posizioni negative.

Rappresentazione della seconda fase Nella fase 2 si ha la corsa di andata di B e la sosta di A e di C rispettivamente nella posizione positiva e negativa.

Le altre fasi Nella terza fase si ha la corsa di andata di C e la sosta di A e di B nella loro posizione positiva. Nella fase quarta si ha la corsa di ritorno di A mentre B e C sono nella loro posizione positiva. Nell’ultima fase si hanno contemporaneamente le corse di ritorno di B e di C mentre A è fermo nella sua posizione negativa.

U.D. N.2 ESERCIZI DI ELETTROPNEUMATICA CON PLC Gli schemi seguenti saranno realizzati in accordo con i software di pneumatica più utilizzati. A tal proposito viene illustrato un esempio di schema elettropneumatico con grafcet, azionato da PLC. N.B.: lo schema di seguito rappresentato è realizzato al solo scopo di illustrare tutte le possibili situazioni presenti in un progetto.

I segni che vediamo in figura sui rettangoli delle azioni corrispondono ai qualificatori.

Vedremo come convertire il grafcet con qualificatori in ladder con tecnica Batch. Il simbolo “X” seguito da un numero indica la fase corrispondente al numero inserito.

E.2.1

IMPIANTO DI TRASPORTO SU NASTRO PER MATERIALI IN POLVERE CON SISTEMA DI DOSAGGIO

L’impianto è dotato di un sistema per la dosatura di materiali sfusi o liquidi. Sfruttando un tratto delimitato da due saracinesche, azionate da cilindri elettropneumatici, la quantità di materiale viene convogliata in un carrello mosso da un nastro trasportatore. Funzionamento dell’impianto. 1) Il cilindro B apre il flusso per la fuoriuscita del materiale da depositare nel contenitore posto sul nastro trasportatore; durante questa fase il cilindro A deve essere in posizione “a+” onde evitare al serbatoio di alimentare il canale. È presente anche un sensore SF2 che segnala che il serbatoio di carico

del dosatore è vuoto, impedendo l’apertura delle saracinesche. 2) Il cilindro A chiude l’afflusso del materiale dal serbatoio al dosatore una volta che il sensore analogico SAn ha segnalato che il livello nel serbatoio è costante (cioè dosatore pieno); il volume delimitato dalle due saracinesche rappresenta il materiale dosato. 3) Il cilindro B deve a questo punto rientrare, permettendo al materiale di depositarsi nel contenitore posto sul nastro trasportatore se il carrello è posizionato in modo corretto (sensori SF3 e SF4); il sensore SF1 segnala che non è più presente materiale nel dosatore e quindi il cilindro B può richiudere la saracinesca. 4) L’operazione di scarico deve avvenire solo quando sul nastro è certa la presenza del contenitore, presenza segnalata da due fotocellule, SF3 e SF4, che fermano momentaneamente il nastro posto in movimento dal motore M1. 5) La posizione dei cilindri viene individuata dai finecorsa 1A1 (a-), 1A2 (a+), 1B1 (b-), 1B2 (b+). 6) I cilindri A e B sono comandati da elettrovalvole 5/2 monostabili che consentono, in assenza di alimentazione elettrica, di aprire entrambe le saracinesche con conseguente scarico del serbatoio e del dosatore. Prevedere il comando di avvio(S1), che pone in movimento il nastro trasportatore, un comando di arresto a fine ciclo (S2) ed uno di emergenza (S0) per arresto nastro. 7) Un pulsante di svuotamento S3 apre le saracinesche (solo se non è presente un carrello in prossimità dell’uscita del materiale) che scaricano tutto il materiale del serbatoio. È necessario inserire le lampade di segnalazione durante il funzionamento dell’impianto. OSSERVAZIONE: nelle specifiche di progetto è stata definita la condizione che le elettrovalvole in assenza di corrente elettrica portino i cilindri nella posizione rientrata (molla). S0 = stop

Hmin = misura liv min

HLB = serbatoio vuoto

S1 = start

Hmax = misura liv max

HLCA = pos chiusura DOSATORE

S2 = fine ciclo

SAn = sensore analogico livello serbatoio

HLCB = pos chiusura dosatore

S3 = svuotamento

SF3, SF4 = posizione corretta per carico carrello

HLS = segnalazione impianto in stop

SF1 = sensore svuotamento dosatore

M1 = motore nastro

HLG = impianto in funzione

SF2 = sensore livello min serbatoio

HLM = segnalazione motore on

HLY = segnalazione svuotamento

Fase 0: saracinesche chiuse

Fase 20: nastro fermo

Fase 40: arresto ciclo

Fase 1: impianto acceso

Fase 21, 22, 24: nastro in movimento

Fase 41: ciclo in funzione

Fase 2, 3: verifica saracinesche chiuse

Fase 23: arresto nastro per carico materiale

Fase 42: arresto del motore del nastro

Fase 4: verifica serbatoio vuoto Fase 5: apertura saracinesca A di carico Fase 6, 7: verifica del riempimento del dosatore Fase 8,9: richiusura saracinesca A Fase 10, 11: scarico del materiale dal dosatore al carrello

Fase 12, 100: svuotamento del dosatore

E.2.2

NASTRI TRASPORTATORI CON SELETTORE DI DIREZIONE

Alcuni pezzi devono essere trasportati in due posti diversi utilizzando nastri

trasportatori. Premendo il pulsante SB1 si accende una lampada bianca HL0 di accensione impianto. Posizionando il pezzo da trasportare in corrispondenza del sensore SQ1, si avvia il motore M1 del nastro trasportatore. Una volta che il pezzo ha raggiunto il sensore SQ4, il nastro si arresta. Solo dopo che i sensori SB2 o SB3 hanno rilevato le bande colorate sul pezzo, si riavvia il nastro M3 rispettivamente verso sinistra o verso destra. Supponendo di aver azionato SB2, quando il pezzo raggiunge il sensore SQ3, parte il nastro M2, mentre M3 si arresta con un ritardo di 2 secondi. Raggiunto il finecorsa SQ2 il pezzo cade nel raccoglitore della zona 1 e si spegne anche M2. Un contatore (posto in prossimità della zona di imballaggio 1) provvede a tener conto del numero di pezzi prodotti (6), mentre un secondo contatore posto in prossimità di SQ1 fornisce l’informazione sul numero di pezzi disponibili all’avvio del processo. In fase di progettazione, prevedere anche una procedura di azzeramento del conteggio. Se (quando il pezzo è in fermo sul nastro M3) invece viene premuto il pulsante SB3, si avvia il nastro M3 verso destra. Raggiunto SQ5 il nastro M3 si arresta e il nastro M4 si avvia. Una volta raggiunto il sensore SQ6, il nastro M4 si arresta ed uno spintore elettropneumatico provvede a togliere il pezzo dal nastro dopo che un altro ha provveduto ad attaccare un’etichetta; a questo punto il ciclo può iniziare nuovamente; si ricorda che solo dopo aver tolto il pezzo dal nastro M4 è possibile riavviare il processo. Oltre al pulsante di stop SB0, nelle specifiche è presente anche la condizione che se fosse posto un secondo pezzo in prossimità di SQ1, il processo debba arrestarsi. Una lampada gialla HL2 segnala il movimento del nastro M2, una lampada rossa HL3 segnala il movimento del nastro M3, una lampada blu HL1 segnala il movimento del nastro M1 e infine una lampada verde HL4 segnala il movimento del nastro M4. Si faccia l’ipotesi che se si dovessero azionare contemporaneamente SB2 e SB3, partirebbe il nastro M3 verso destra.

E.2.3

IMPIANTO PER POSIZIONAMENTO E

LAVORAZIONE SU NASTRO I pezzi arrivano alla macchina posizionatrice su di uno scivolo e devono essere disposti a gruppi di due su di un nastro trasportatore, che li trasferisce ad una successiva lavorazione. Funzionamento dell’impianto L’impianto deve soddisfare le caratteristiche qui di seguito elencate. II cilindro A, comandato dalla elettrovalvola 5/2 monostabile Y1A, deve disporre i pezzi in gruppi di due, utilizzando per il posizionamento gli interruttori di posizione S2 (posizione di riposo a-), S3 (posizione pezzo 2 ax), S4 (posizione pezzo 1 a+). Deve essere garantita la presenza del pezzo, segnalata mediante SI, prima di ogni uscita del cilindro A; in mancanza del pezzo la macchina si deve arrestare; dovrà proseguire il ciclo automaticamente se dallo scivolo arrivano altri pezzi. Il cilindro B, comandato dalla elettrovalvola 5/2 monostabile Y2A, deve operare la transizione sul nastro trasportatore, dopo che è stato posizionato il pezzo numero 2 – le posizioni del cilindro B sono individuate dai sensori S5 (b-) e S6 (b+) e il cilindro A è rientrato nella posizione di riposo (a-). Il motore elettrico MI deve venir alimentato solo quando i pezzi sono in posizione (definita dalla fotocellula Bl) e, dopo aver effettuato lo spostamento prestabilito del nastro, si deve arrestare. La fotocellula B1 deve dare il consenso per l’avvio del motore e il comando del successivo arresto. Lo schema deve essere completo di arresto per l’intervento del relè termico FI posto a protezione del motore MI e del pulsante di marcia S7, di arresto a fine ciclo S8 e di arresto di emergenza S9 in grado di arrestare il ciclo in qualsiasi istante. L’impianto deve essere completato con le seguenti segnalazioni: arresto ciclo (HI), ciclo in funzione (H2), arresto ciclo a causa della mancanza di pezzi (H3), relè termico FI scattato (H4).

E.2.4

IMPIANTO DI MISCELAZIONE LIQUIDI CON

TRASPORTO SU NASTRO L’impianto è costituito da: tre serbatoi con liquidi diversi tre diversi contenitori per liquidi tre cilindri elettropneumatici che controllano i sistemi di apertura dei serbatoi una tramoggia un nastro trasportatore un motore per l’azionamento del nastro un sistema per il lavaggio ad acqua della tramoggia.

Funzionamento dell’impianto In ciascuna serbatoio, l’apertura del sistema di scarico è azionata da un cilindro pneumatico comandato da un’elettrovalvola 5/2 monostabile (Y1, Y2, Y3). L’operazione è eseguita tramite il PLC che sceglie (tramite i sensori SF0 e SF1) quali serbatoi aprire in funzione del contenitore che viene posizionato sul nastro. Se il successivo riempimento è diverso dal precedente, viene aperta l’elettrovalvola (Y4) del serbatoio d’acqua che per circa 2 secondi procede ad un lavaggio della tramoggia. Se il contenitore è correttamente posizionato secondo il sensore SF2, lo

svuotamento richiede 5, 6 o 7 secondi a seconda del volume. Il nastro (M1) si arresta solo quando il contenitore è posizionato correttamente sotto la tramoggia. La partenza del nastro è determinata dal pulsante S1 (start). Lo scarico pertanto deve essere così predisposto: se i serbatoi (1, 2 e 3) sono al di sotto del livello minimo (SQ4), l’impianto segnala con una luce rossa (HL4) che è necessario il rifornimento; si blocca invece e diventa gialla lampeggiante (HL3) se almeno un serbatoio è vuoto. Una volta che viene riempito di nuovo il serbatoio (livello max SQ5), l’impianto riparte dalla posizione in cui è stato arrestato. Si preveda anche la lampada di segnalazione presenza contenitore in posizione di carico (HL1). È previsto un pulsante di stop (S0) che arresti l’impianto chiudendo i serbatoi e bloccando il nastro.

All’attivazione della fase il contatore viene incrementato.

È lasciata al progettista l’ipotesi sulla gestione del serbatoio dell’acqua.

DOMANDE ED ESERCIZI DI RIEPILOGO 1)

Definizione di cilindro a doppio effetto.

2)

Definizione di valvola 4/2.

3)

Definizione di cilindro a singolo effetto.

4)

Quali sono le differenze tra valvola monostabile e valvola bistabile?

5)

Che cos’è un ciclo di lavoro?

6)

Come si aziona un’elettrovalvola da PLC?

7)

È conveniente utilizzare il grafcet per rappresentare un ciclo di funzionamento di un sistema elettropneumatico?

8)

Quali vantaggi offre la tecnica batch nella programmazione di un PLC con sistemi elettropneumatici?

ESERCIZIO N.1

MACCHINA PIEGA TUBI L’impianto deve effettuare un’operazione di piegatura di tubi a caldo; il tubo viene trasportato su un carrello azionato da un motore elettrico. Nella prima fase viene effettuata una prima incurvatura del tubo attraverso un sistema elettropneumatico provvisto di un martello con testa curva che segnerà il punto per la successiva curvatura ad opera di due utensili piegatori elettropneumatici. L’operazione di piegatura viene effettuata a caldo, per cui è necessario attendere che sia raggiunta la temperatura utile dopo un tempo prefissato. Condizioni iniziali dell’impianto. L’impianto si trova nelle seguenti condizioni iniziali: il carrello si trova nella posizione di partenza; il martello deve essere in alto; i due utensili piegatori devono essere nella posizione di riposo. Funzionamento dell’impianto Se l’impianto si trova nelle condizioni iniziali, carrello posizionato carico (SF2) e nella posizione di partenza (SF2), il ciclo di piegatura può partire. L’operatore preme il pulsante di start (S1) che determina il movimento del carrello, che viene trainato da una catena mossa dal motore M1. Raggiunto il sensore SF3, il carrello si arresta e immediatamente scende il martello per effettuare la prima leggera piegatura. Con il superamento del sensore SF3, vengono automaticamente inseriti gli elementi riscaldanti EL1 e il tubo riprende la sua corsa. Quando il carrello è entrato nell’impianto piegatubi (SF4), la catena si ferma e viene fatto scendere l’utensile verticale che provvederà a bloccare il

tubo durante il riscaldamento e la piegatura. Un temporizzatore, impostato su 10 secondi, avviserà che la temperatura ha raggiunto il valore richiesto e l’utensile piegatore può procedere, mediante il cilindro A, comandato dall’elettrovalvola Y1A (5/2 monostabile), per tutta la sua corsa, in modo da ottenere la curvatura desiderata. A questo punto vengono spenti gli elementi riscaldanti EL1 e dopo un tempo di attesa di 5s e la successiva disattivazione delle elettrovalvole con il conseguente ritorno nella posizione di riposo degli utensili piegatori, il carrello tramite la catena azionata dal motore M1, ritorna nella sua posizione iniziale se un operatore avrà provveduto a togliere il tubo lavorato dalla zona di lavorazione (SF5). Un nuovo ciclo sarà attivato automaticamente quando il carrello (SF1) avrà raggiunto la posizione iniziale (SF1) e un nuovo tubo sarà posizionato. Se viene premuto il pulsante S2 il funzionamento termina non appena il processo ritorna nella condizione iniziale. Se viene premuto il pulsante S0, l’impianto viene bloccato, tutte le elettrovalvole disattivate e gli elementi riscaldanti spenti. Una lampada fissa (HL0) segnala che l’impianto è in moto e lampeggiante se il carrello è in pausa.

MODULO F

PANNELLO OPERATORE (HMI) PREREQUISITI: Saper progettare in grafcet Saper progettare in ladder

OBIETTIVI: Saper programmare con WinCC

U.D. N.1 SERVIZIO E SUPERVISIONE CON WINCC F.1.1

DESCRIZIONE DEL SISTEMA

Poiché i processi diventano sempre più complessi e le esigenze in termini di funzionalità delle macchine e degli impianti aumentano, l’operatore necessita di uno strumento efficiente per il comando e il controllo degli impianti di produzione. Un sistema HMI (Human Machine Interface) rappresenta l’interfaccia tra l’uomo (operatore) e il processo (macchina/impianto). Il controllo effettivo sul processo è affidato al controllore. Esiste quindi un’interfaccia tra operatore e WinCC (sul pannello operatore) e un’interfaccia tra WinCC e controllore. WinCC è il software utilizzato per eseguire tutti i compiti di progettazione necessari. WinCC Runtime è il software per la visualizzazione del processo. In Runtime il progetto viene elaborato durante il funzionamento del processo. WinCC consente di creare pagine per il controllo e la supervisione di macchine e impianti. Per creare pagine sono disponibili oggetti predefiniti che permettono di riprodurre l’impianto, visualizzare lo svolgimento dei processi e specificarne i relativi valori. WinCC ha i compiti seguenti: • Rappresentazione del processo Il processo viene rappresentato sul pannello operatore. Se nel processo varia ad esempio uno stato, la visualizzazione sul pannello operatore viene aggiornata. • Comando del processo L’operatore può comandare il processo utilizzando l’interfaccia utente grafica. L’operatore può ad esempio predefinire un setpoint per il controllore o avviare un motore. • Visualizzazione di segnalazioni Se in un processo si verificano stati critici, come ad esempio il superamento

di un determinato valore limite, il sistema emette automaticamente una segnalazione. • Archiviazione dei valori di processo e delle segnalazioni Il sistema HMI è in grado di archiviare segnalazioni e valori di processo. Ciò consente di documentare l’andamento del processo e di accedere ai dati di produzione pregressi anche in un secondo tempo. • Documentazione dei valori di processo e delle segnalazioni Il sistema HMI è in grado di fornire un protocollo delle segnalazioni e dei valori di processo. Ciò consente ad esempio di visionare i dati di produzione alla fine del turno di lavoro. • Gestione dei parametri del processo e delle macchine Il sistema HMI è in grado di salvare i parametri per processi e macchine all’interno di ricette. Questi parametri ad esempio si possono trasferire dal pannello operatore al controllore con un’unica operazione per adeguare la produzione a una diversa versione del prodotto.

F.1.2

STRUTTURA DI UNA PAGINA

Il layout della pagina dipende dal pannello operatore per cui si esegue la progettazione e corrisponde al layout dell’interfaccia utente del pannello operatore. Le proprietà della pagina, i tipi di carattere disponibili e i colori, variano a seconda del pannello operatore impostato. Se il pannello operatore impostato possiede tasti funzione, la pagina li visualizzerà. Un tasto funzione è un tasto sul pannello operatore che può essere configurato in WinCC con una o più funzioni. Le funzioni vengono attivate non appena l’operatore preme il tasto nel pannello operatore. È possibile configurare un tasto funzione a livello globale o locale: I tasti funzione con configurazione globale attivano sempre la stessa azione, indipendentemente dalla pagina visualizzata al momento. I tasti funzione con configurazione locale attivano diverse azioni in funzione della pagina visualizzata nel pannello operatore. La configurazione è valida solo per la pagina in cui il tasto funzione è stato definito. Affinché l’operatore possa richiamare una pagina in runtime sul pannello operatore, occorre collegare ogni pagina progettata nell’esecuzione dell’operazione, utilizzando l’editor di pagine per progettare nelle pagine

pulsanti e tasti funzione con cui richiamare altre pagine o l’editor “Pagina globale” per progettare tasti funzione configurati a livello globale.

F.1.3

L’HARDWARE DEL PANNELLO OPERATORE (HMI)

COLLEGAMENTO DELL’ALIMENTATORE Il pannello operatore è provvisto di una protezione di polarità.

INTERFACCE DELLE VERSIONI DA 7", 9" E 12" La figura seguente illustra l’interfaccia dei pannelli operatore: KP700, TP700 Comfort, KP900, TP900 Comfort, KP1200 e TP1200 Comfort. COLLEGAMENTO DEL CONTROLLORE Per i dispositivi con diagonale del display a partire da 7" vale quanto segue: il pannello operatore è dotato di uno switch interno che consente ad es. la creazione di una topologia ad anello anche in assenza di uno switch esterno. Per creare una topologia ad anello in dispositivi con diagonale del display a partire da 15" utilizzare l’interfaccia X1.

COLLEGAMENTO DEI DISPOSITIVI USB Alle interfacce USB di tipo A del pannello operatore si possono collegare dispositivi come mouse tastiera, stampante, memory stick USB, industrial USB Hub 4. Essa è ideata esclusivamente per il collegamento di periferiche, non deve essere utilizzata per la messa in servizio e per scopi di manutenzione. È richiesto un cavo USB 2.0 certificato con lunghezza max. 1,5 m.

COLLEGAMENTO DEL SISTEMA AUDIO Per gli apparecchi audio si possono utilizzare le seguenti interfacce: “Line Out” ad esempio per Active box o altri amplificatori audio. “Line In” per sorgenti audio con livello “Line In”. Se all’interfaccia “Line-Out” viene collegato un dispositivo audio, il cavo di collegamento di quest’ultimo può causare un’elevata emissione di disturbi. L’impiego di dispositivi audio non sufficientemente schermati, come auricolari e cuffie sull’interfaccia “Line-Out”, è ammesso esclusivamente

durante la messa in servizio.

SISTEMA DI MEMORIA I pannelli operatore utilizzano i seguenti tipi di memorizzazione: Memoria interna Scheda di memoria Scheda di memoria del sistema Inoltre è possibile collegare una memoria di massa USB all’interfaccia USB.

1) MEMORIA INTERNA Nella memoria interna vengono salvati i dati seguenti: Sistema operativo File di progetto Chiavi di licenza Amministrazione utenti Ricette (per salvare le ricette nella memoria interna, selezionare il percorso “\Flash\” in WinCC).

2) SCHEDA DI MEMORIA Sulla scheda di memoria vengono salvati i dati seguenti: Archivi Backup Ricette (per salvare le ricette sulla scheda di memoria selezionare il

percorso “\StorageCard SD\” in WinCC). È possibile utilizzare le normali schede di memoria in formato “SD (IO / HC)” oppure “MMC”.

3) SCHEDA DI MEMORIA DEL SISTEMA La scheda di memoria del sistema rientra nel sistema di assistenza per i pannelli operatore. Attivando il servizio di assistenza, tutti i dati nella memoria interna del pannello operatore vengono trasferiti sulla scheda di memoria del sistema. In caso di guasto del pannello operatore la scheda di memoria del sistema va inserita nel dispositivo sostitutivo. In questo modo si riducono al minimo i tempi di fermo dell’impianto. La scheda di memoria del sistema non è visibile sull’interfaccia utente del pannello operatore e non è nemmeno utilizzabile come memoria dati. Perché la scheda di memoria del sistema possa essere riconosciuta dal pannello operatore è necessario inserirla nell’apposito slot.

4) SLOT PER SCHEDE DI MEMORIA E DI MEMORIA DEL SISTEMA Gli slot per la scheda di memoria e la scheda di memoria del sistema si trovano, come varianti da 7", sul lato posteriore della custodia. Nell’armadio elettrico, le schede di memoria e quelle di memoria del sistema sono pertanto accessibili dal retro. Le schede di memoria e le schede di memoria del sistema sono fissate da un fermo di chiusura scorrevole. Schede di memoria e schede di memoria del sistema si possono inserire ed estrarre durante il funzionamento del pannello operatore. Nelle varianti da 4", gli slot sono collocati sul lato della custodia.

5) ESTRAZIONE DELLA SCHEDA Se si estrae la scheda di memoria mentre il pannello operatore sta accedendo ai dati in essa contenuti, questi dati possono andare distrutti. Estraendo la scheda di memoria del sistema con il progetto operativo, quest’ultimo viene terminato. SALVATAGGIO SU SUPPORTO DI MEMORIA ESTERNO (BACKUP)

Il sistema operativo, le applicazioni e i dati possono essere salvati dalla memoria interna del pannello operatore su un supporto di memoria esterno. È possibile utilizzare i seguenti supporti di memoria esterni come scheda di memoria o memoria USB (chiavetta USB). Procedimento: 1. Aprire la finestra di dialogo “Backup/Restore”. Nell’elenco vengono visualizzati i supporti di memoria esterni disponibili. 2. Selezionare il supporto di memoria esterno e successivamente scegliere “Backup”. RIPRISTINO DA UN SUPPORTO DI MEMORIA ESTERNO (RESTORE) Con il ripristino di un backup la memoria interna del pannello operatore verrà cancellata dopo richiesta di conferma. Successivamente il contenuto del file di backup viene copiato dal supporto di memoria esterno nella memoria interna del pannello operatore, quindi il pannello operatore viene riavviato. È possibile utilizzare i supporti di memoria esterni come scheda di memoria o memoria USB. Procedimento: 1. Aprire la finestra di dialogo “Backup/Restore”. Nell’elenco vengono visualizzati i supporti di memoria esterni disponibili. 2. Selezionare il supporto di memoria esterno e successivamente scegliere “Restore”. ACCENSIONE E TEST DEL DISPOSITIVO All’inserimento dell’alimentazione di corrente, il display si accende. Dopo aver avviato il sistema operativo viene visualizzato il desktop con lo Start Center. Con la prima messa in servizio il pannello operatore passa automaticamente al modo di funzionamento “Transfer” se sul pannello operatore non è presente alcun progetto. Durante la modalità “Transfer” viene visualizzata la seguente finestra di dialogo.

Per interrompere il trasferimento utilizzare il pulsante “Cancel”, visualizzando nuovamente il Desktop con lo Start Center. Se alla nuova messa in servizio, sul pannello operatore è già essere presente un progetto, esso si avvia dopo un tempo di ritardo impostabile o con il pulsante “Start”. TRASFERIMENTO DEI DATI TRA UN PANNELLO OPERATORE E IL PC DI PROGETTAZIONE Tabella riassuntiva

F.1.4

INSERIMENTO DEL PANNELLO KTP600 NEL PROGETTO

PROGETTAZIONE Per creare una visualizzazione del processo per il comando del nastro utilizzeremo la versione di WinCC integrata nel software di progettazione STEP 7. I valori di processo verranno visualizzati con pagine e oggetti delle

pagine. Con gli elementi di comando si possono trasferire valori predefiniti al controllore. Il pannello operatore e la macchina o il processo comunicano attraverso il controllore per mezzo di variabili. Il valore di una variabile viene scritto in un’area di memoria (indirizzo) nel controllore dalla quale successivamente viene letto dal pannello operatore. La visualizzazione del processo viene salvata e caricata nel pannello KTP600 Basic color PN. Dopo l’avvio del pannello operatore è possibile eseguire il servizio e la supervisione del comando del progetto. INSERIMENTO DEL PANNELLO KTP600 NEL PROGETTO DI ESEMPIO Per la gestione del progetto e la programmazione si utilizza il software TIA Portal V13. Qui si creano, si parametrizzano e si programmano con un’interfaccia utente unificata i componenti come controllore, visualizzazione e collegamento in rete della soluzione di automazione. Nei passi seguenti si deve creare un progetto per il SIMATIC S7-1200, salvarlo e adeguarlo ai nostri requisiti. Inserimento del pannello KTP600 PN nel progetto

Poi si sceglie

Alla voce Select PLC (Seleziona PLC) selezionare “il PLC inserito nel nostro progetto”.

Alla voce Screen layout (Layout pagine) modificare il colore di sfondo in “bianco” e rimuovere il segno di spunta da “Header” (Intestazione). Rimuovere tutti i segni di spunta dalle segnalazioni.

Nella navigazione della pagina si potrebbe creare una struttura di menu della pagina. Per il nostro esempio per il momento è sufficiente la pagina con il nome “Rootscreen” (Pagina base).

FINESTRA DELLE PROPRIETÀ

Nella finestra delle proprietà si modificano le proprietà degli oggetti, ad esempio il colore degli oggetti della pagina. La finestra delle proprietà è disponibile solo in determinati editor. Nella finestra delle proprietà vengono visualizzate le proprietà dell’oggetto selezionato ordinate per categorie. Non appena si esce da un campo di immissione le modifiche dei valori sono già attive. Quando un valore inserito non è valido viene visualizzato con un colore di fondo. Dalla Guida rapida è possibile ricavare informazioni ad esempio sul campo di valori valido. Nella finestra delle proprietà si progettano anche animazioni ed eventi per l’oggetto selezionato, come qui ad esempio un cambio di pagina al rilascio del pulsante.

MASCHERE OPERATIVE E COLLEGAMENTI Una pagina può essere composta da elementi statici e dinamici. Gli elementi statici, ad esempio testo e grafica, non vengono aggiornati dal controllore. Gli elementi dinamici sono collegati con il controllore e visualizzano i valori attuali della memoria del controllore. I valori possono essere visualizzati in formato alfanumerico, come curve e come barre. Sono elementi dinamici anche le immissioni nel pannello operatore che vengono scritte nella memoria del controllore. Questi elementi sono interfacciati con il controllore per mezzo di variabili. Inizialmente per il nostro progetto creeremo solo una pagina.

PAGINA BASE O PAGINA INIZIALE Questa pagina è già creata automaticamente e definita come pagina iniziale. Qui è rappresentato l’intero impianto. Per mezzo dei pulsanti è possibile commutare lo stato di funzionamento tra manuale e automatico, avviare e arrestare il motore del nastro e sostituire la cassetta. Il movimento della bottiglia sul nastro e il livello di riempimento della cassetta sono rappresentati graficamente. Con il tasto F6 si salta alla pagina di sistema.

COLLEGAMENTI CON I PLC S7-1200 Per gli oggetti di comando e visualizzazione che hanno accesso ai valori di processo di un controllore è necessario innanzitutto progettare un collegamento con il controllore.

Qui si stabilisce come far comunicare il pannello con il controllore e attraverso quale interfaccia. Nella navigazione del progetto fare doppio clic su Connections (Collegamenti). Attraverso le impostazioni nella configurazione hardware tutti i parametri sono già impostati.

Al pannello operatore deve solo essere assegnato l’indirizzo IP. Leggere l’indirizzo MAC del pannello operatore con Accessible devices (Nodi accessibili). Fare clic sul pulsante “Show” (Visualizza). ASSEGNAZIONE DELL’INDIRIZZO IP Dopo aver assegnato l’indirizzo MAC è possibile assegnare l’indirizzo IP in “Online & Diagnostics” (Online & Diagnostica). Il pannello operatore deve trovarsi in modo di trasferimento. L’indirizzo IP si può anche controllare o inserire nel pannello operatore dal Control Panel in Profinet.

SIMULAZIONE PANNELLO OPERATORE (HMI) IN TIA PORTAL Se non si dispone di un pannello operatore, è possibile simularlo anche durante il funzionamento dell’impianto. È necessario collegare il PLC ad un PC e dopo aver aperto il progetto seguire le indicazioni illustrate nelle figure seguenti.

Affinché la simulazione possa essere “collegata” al PLC in RUN è necessario effettuare prima le seguenti modifiche nel pannello di controllo di Windows. 1) Selezionare l’icona in figura

2) Successivamente verificare che la voce “S7ONLINE” sia impostata sulla scheda di rete del proprio PC.

F.1.5

PROGETTAZIONE DEGLI ELEMENTI DELLE PAGINE HMI

Gli oggetti sono elementi grafici con cui sono configurate le pagine del progetto. La task card “Casella degli strumenti” contiene tutti gli oggetti disponibili per il pannello operatore. Quando l’editor di pagine è aperto, nella finestra degli strumenti sono disponibili le seguenti tavolozze: “Oggetti semplici”: oggetti grafici fondamentali, ad es. Linea, Cerchio,

Casella di testo o Vista grafica.

“Elementi”: elementi di comando fondamentali, ad es. Campo I/O, Pulsante o Strumento indicatore.

“Controls”: dispongono di funzioni avanzate. Essi rappresentano dinamicamente anche le sequenze di processo come la vista curve e la vista ricette.

“Grafiche”: suddivise per tema in forma di albero delle directory. Le varie cartelle contengono ad es. le seguenti rappresentazioni grafiche: – Aree della macchina e dell’impianto – Strumenti di misura – Elementi di comando – Flag – Edifici Task card “Biblioteche”: contiene oggetti preconfigurati, ad es. grafiche di tubi, pompe, pulsanti preconfigurati. Gli oggetti della biblioteca possono essere incorporati più volte nel progetto,senza che essi debbano essere riconfigurati ogni volta. CREAZIONE DELLE PAGINE – Esempi di utilizzo di oggetti e gruppi di oggetti

U.D. N.2 PROGETTI CON TIA PORTAL E WINCC F.2.1

IMPIANTO DI MISCELAZIONE DI 4 LIQUIDI (CON SEL. E ISTRUZ. MOV)

Esercizio estratto dal testo Programmare con i nuovi PLC S7-1200 e S71500. DESCRIZIONE DEL PROBLEMA Un impianto di miscelazione automatico deve dosare opportunamente e mescolare 4 liquidi diversi prelevati da altrettanti serbatoi separati, tramite il comando di 4 elettrovalvole (Y 1, Y2, Y3, Y4). La pompa MOT2 aspira i liquidi riversandoli in un serbatoio S dove il motore MOT1 effettua l’operazione di mescolamento. Il contatore volumetrico X conta la quantità di litri che escono dai 4 serbatoi e comanda l’apertura e la chiusura delle elettrovalvole corrispondenti. Attraverso un selettore è possibile scegliere tre diverse combinazioni per i 4 liquidi che si desidera immettere nel serbatoio S; le quantità in litri sono le seguenti: 5-5-5-5, 10-5-2-4 e 3-6-4-2 e le 3 combinazioni si ottengono attraverso l’abilitazione degli ingressi I0.0, I0.1 e I0.2 del PLC.

F.2.2

INGRESSO CON COMBINAZIONE

Si vuole realizzare un accesso protetto da combinazione numerica, attraverso un pannello HMI dove l’operatore deve inserire un codice a 4 cifre per poter entrare in una stanza. Sono richiesti nel progetto: un sensore di pressione sotto al pavimento (composto da 4 pulsanti collegati in parallelo); due fotoresistenze illuminate da rispettivo numero di laser; un sensore posizionato sotto la teca (composto da un finecorsa); una porta con serratura di sicurezza (con elettromagnete); un buzzer; due lampade di segnalazione (verde per il via libera e rossa per l’allarme); quattro interruttori in grado di disattivare i sensori, con lo scopo di simulare una forzatura da parte di un malfattore che riesca a eludere i servizi di sicurezza (l’unico sensore che non può essere disattivato è quello sotto alla teca); un tastierino, simulato tramite un pannello HMI da 7", che serve per inserire il codice che consentirà l’apertura della porta (con segnalazione di una lampada verde) e di conseguenza subito dopo tutti i sensori verranno disattivati. Se il codice risultasse errato ci sarebbe la segnalazione del numero di tentativi che si possono fare prima della segnalazione di allarme. Ai primi tentativi una lampada rossa ci avviserà che stiamo inserendo il codice errato, mentre per l’ultimo inizierà a suonare anche un allarme e sul pannello operatore comparirà la scritta che ci avvisa di aver esaurito tutti i tentativi a disposizione. Una possibile soluzione è illustrata nella figura seguente.

In realtà progettiamo la pagina inserendo altri oggetti come in figura.

All’interno del progetto sono stati inseriti oggetti solo a scopo didattico non indispensabili per l’obiettivo che ci si prefigge di raggiungere: inserire un codice a tre cifre (escluso lo zero) per ottenere l’apertura di una porta (in questo pannello sostituita da una ventola). Sono inoltre visibili la data e l’ora, un’immagine del PLC utilizzato e un interruttore che determina l’avvio della ventola. Inoltre utilizzando una variabile a ritenzione è possibile modificare il numero di tentativi anche dopo aver caricato il progetto sulla CPU; se il PLC viene spento, a una successiva accensione, il valore del numero massimo di tentativi impostato da pannello in runtime rimane in memoria. Si può notare che in questo progetto non sono stati utilizzati ingressi e uscite digitali del PLC. I comandi sono tutti da pannello operatore (HMI).

DB dei dati

Blocco “costruzione codice[FC1]”

Blocco “verifica codice[FC2]”

Analizziamo il pannello operatore TP1500 basic color presente nel progetto. Pulsante di start

I pulsanti della tastiera permettono di inserire il codice a tre cifre.

Inserimento testo nel pannello operatore.

Testo a scomparsa o comparsa: i testi evidenziati compaiono solo se la variabile vale “1”, altrimenti il colore del testo, essendo verde non vede sul pannello.

Selezionando visibilità anziché conformazione si ottiene lo stesso risultato.

Ventola: il contorno si colora di giallo o verde a seconda se è attivata o no.

Interruttore per ventola

Data e ora

Pulsante di reset

Visualizzazione delle singole cifre del codice ad ogni inseriemento e del codice complessivo a 3 cifre.

Immagine del PLC S7-1200

Incrementa o decrementa variabile “numero di tentativi”. La variabile “N_tentativi” è a ritenzione, per cui la variazione è memorizzata nel PLC.

F.2.3

DISTRIBUTORE PER BEVANDE CALDE

NOTA: Il progetto è stato realizzato utilizzando un PLC S7-1511-C e un pannello operatore TP-700 Comfort su TIA Portal V14 SP1 Update 3, per cui alcune funzioni non possono essere implementate su un pannello basic. Inoltre la lettura della temperatura è avvenuta tramite una sonda PT 100 a 4 fili collegata all’ingresso analogico RTD. La funzione del progetto è quella di simulare un distributore di bevande usando il PLC. All’inizio il distributore effettua un lavaggio per ripulire il macchinario da eventuali polveri residue dal ciclo precedente; una volta effettuato il lavaggio l’apparecchiatura effettua due tipi di controllo, uno riguardante la temperatura e uno riguardante la quantità d’acqua presente nel serbatoio. È necessario effettuare il primo controllo in quanto se la temperatura fosse troppo bassa le polveri non si scioglierebbero e quindi la bevanda non scenderebbe, mentre se la temperatura fosse troppo alta la bevanda sarebbe molto calda e di conseguenza non sarebbe bevibile. Eseguiti questi due controlli, se i risultati sono stati soddisfacenti, il distributore è pronto per erogare la bevanda. A questo punto si aspetta la scelta del cliente che può scegliere tra 4 possibilità: solo acqua, latte, cioccolata oppure latte e cioccolata. La scelta può essere eseguita direttamente dal distributore, in quanto sono presenti dei pulsanti che avviano l’erogazione, oppure da pannello operatore. Da pannello operatore è possibile inoltre vedere la simulazione del processo di erogazione, vedere quanta acqua e quante polveri sono presenti nel sistema e vedere la temperatura della caldaia istante per istante. È infine possibile modificare alcune valori del sistema, come per esempio la temperatura massima, e quindi la temperatura minima della caldaia (in quanto è legata alla temperatura massima dalla relazione Tmin = Tmax - 10). Anche durante il ciclo di emissione della bevanda la temperatura viene monitorata per verificare che non scenda o salga eccessivamente. Quando la temperatura è troppo bassa si accende la caldaia che riscalda l’acqua. Per permettere l’erogazione bisogna inserire nel distributore una moneta, senza la quale appunto dopo 10 secondi dalla scelta della bibita, ritorna alla pagina pulsantiera del pannello operatore, ovvero la pagina da dove avviene la scelta iniziale della bibita.

FASE

DESCRIZIONE

COMANDI

0

accensione macchina

1, 7

lavaggio

2, 102

controllo temperatura

3, 101

riscaldamento

4

controllo volume serbatoio acqua

5

attesa riempimento serbatoio acqua

6

Richiesta bevanda e controllo temperatura

8, 10, 15, 19, 23

attesa ritiro bicchiere lavaggio, the, lattecioccolato, latte, cioccolato

9, 11, 16, 20

inizio erogazione the, latte-cioccolato, latte, cioccolato

Pompa acqua

12

completamento erogazione latte-cioccolato

Pompa acqua, motori serbatoi polveri

14

completamento erogazione latte-cioccolato

Pompa acqua

17

completamento erogazione latte

Pompa acqua, motore serbatoio polvere

18

completamento erogazione latte

Pompa acqua

21

completamento erogazione cioccolato

Pompa acqua, motore serbatoio polvere

22

completamento erogazione cioccolato

Pompa acqua

99, 111, 160, 200

richiesta moneta

(*)102

temperatura (per erogazione bevanda) raggiunta

Pompa acqua

Resistenza caldaia

Pannello operatore HMI TP700 COMFORT

Name

PLC tag

._acqua_HMI

".".acqua_HMI

._cioccolato_hmi

".".cioccolato_hmi

._conta_monete hmi

"."."conta_monete hmi"

._contatore_HMI

".".contatore_HMI

._fase ciclo

"."."fase ciclo"

._fase Temp

"."."fase Temp"

._latte_ciocc_hmi

".".latte_ciocc_hmi

._latte_hmi

".".latte_hmi

._lavaggio_hmi

".".lavaggio_hmi

._stop-HMI

".".stop-HMI

._T Celsius

"."."T Celsius"

._T_MAX

".".T_MAX

._Temperatura_PTC

".".Temperatura_PTC

._the_hmi

".".the_hmi

caldaia

caldaia

cioccolato_CV

cioccolato.CV

conta monete_CV

"conta monete".CV

latte cioccolato_CV

"latte cioccolato".CV

latte_CV

latte.CV

Mot_cioccolato

Mot_cioccolato

Mot_frullino

Mot_frullino

Mot_latte

Mot_latte

pompa H20

"pompa H20"

serbatoio_cioccolato_CV

serbatoio_cioccolato.CV

serbatoio_latte_CV

serbatoio_latte.CV

volume acqua_CV

"volume acqua".CV

HMI: Pagina “pulsantiera”

Inserisci l’immagine sulla pagina HMI e posiziona i tasti e la casella di testo sul piano superiore in modo che l’immagine sia sotto. Costruisci i pulsanti delle bevande con “motivo riempimento” = trasparente.

Costruisci i pulsanti “serbatoi”, “minibar” e “grafcet” per aprire le altre pagine sul pannello operatore.

Il pulsante “lavaggio” invece attiva la funzione lavaggio.

I pulsanti delle bevande attivano la chiamata per l’erogazione, mentre il

pulsante con il simbolo delle monete simula l’introduzione della moneta in sostituzione dell’effettiva introduzione nell’apposito raccoglitore (posizionato sul pannello frontale del “Minibar”) in cui è installato un sensore induttivo.

La casella di testo tramite la proprietà “Animazione” e la funzione “Visibilità” permette di visualizzare la scritta “inserire moneta” se la variabile “_fase ciclo” è tra il valore 99 e 200.

HMI: Pagina “grafcet”

La pagina mostra in quale fase è il progetto durante il funzionamento del distributore, dando la possibilità al programmatore di verificare il funzionamento della macchina e correggere gli eventuali errori. È sufficiente disegnare il grafcet e inserire i quadrati su ogni fase in modo che siano visibili quando la variabile di fase associata all’oggetto verifica la condizione imposta, come è illustrato nella figura seguente. Sarebbe ovviamente possibile disegnare anche le azioni corrispondenti per poter vedere i motori e la pompa in funzione. Per non complicare troppo il disegno l’autore ha preferito utilizzare solo le fasi del progetto.

Anche in questa pagina viene inserita un’immagine di sfondo e l’oggetto “rettangolo rosso” che diventa visibile se la variabile vale “6” in questo esempio (proprietà “Animazione” – “visibilità”).

HMI: Pagina “distributore”

Lo strumento indicatore (solo su pannelli comfort) visualizza il valore della

variabile temperatura.

HMI: Pagina “serbatoio”

Le barre grafiche visualizzano il valore della variabile “cv” del contatore e svolgono la stessa funzione dei serbatoi della pagina “distributore”. PROGETTO IN LADDER

F.2.4

IMPASTO PRODOTTI DA FORNO

Si vuole automatizzare il processo dell’impasto ottenuto dalla miscela di diverse farine combinate con lieviti e acqua opportunamente pesati e successivamente amalgamati. Le farine confluiscono dai silos attraverso le coclee azionate da due motori in corrente continua (MC1 e MC2) in una bilancia con cella di carico che misura le relative quantità. Un operatore, premendo un pulsante di start (S1), determina l’avvio del sistema automatizzato. Il processo ha inizio quindi con la selezione di una tra le tre possibili ricette, ognuna identificata da un codice apposto sul carrello e rilevato tramite due sensori (SF0 e SF1) i quali, rilevando la presenza del carrello sul nastro trasportatore, ne comandano l’avvio azionando il motore M1. Il nastro trasporta il carrello fino al sensore di presenza SF2 posizionato sotto la bilancia la quale, una volta che il carrello è fermo, viene riempita delle farine pesate una dopo l’altra in successione secondo le quantità specificate dalla ricetta. Al termine, tramite l’apertura della serranda

pneumatica (Y0), avviene lo scarico delle farine nel carrello sottostante e la misura nulla del peso comanda la richiusura. Si avvia quindi l’immissione di lieviti nel carrello per una durata di 5 secondi e contemporaneamente viene comandata un’elettrovalvola a sfera (Y1) che consente l’erogazione dell’acqua per una durata pari alla rilevazione effettuata da un opportuno misuratore di portata a turbina collocato a valle dell’elettrovalvola. Durante la fase di immissione dell’acqua nel carrello B (indicato in figura), in un’altra postazione sul nastro, scende un mescolatore ad immersione, che tramite un pistone pneumatico comandato da una ulteriore elettrovalvola (Y2) provvede al mescolamento (motore M2) dei prodotti presenti nel carrello A caricato in precedenza. Il ciclo si ripete fino a quando non viene azionato il pulsante di stop (S0) che determina l’arresto del processo di produzione e riporta l’impianto alle condizioni iniziali. Dati del problema Il serbatoio dell’acqua si suppone rifornito costantemente dall’impianto idrico. Cella di carico: uscita in tensione (0 – 10 V) e calibrazione 10 kg a fondo scala. Misuratore di portata a turbina: campo di misura: 0,5 l/sec; tensione di esercizio: 5÷24 Vdc; segnale di uscita a onda quadra: 10 imp/l. Ricetta base: 9 kg di farina, 6 kg di acqua, 0,2 kg di lieviti. • Ricetta 1: 7 kg di farina “Tipo 1” e 2 kg di farina “Tipo 2” • Ricetta 2: 6 kg di farina “Tipo 1” e 3 kg di farina “Tipo 2” • Ricetta 3: 8 kg di farina “Tipo 1” e 1 kg di farina “Tipo 2” DOMANDE 1. Rappresentare, mediante un diagramma di flusso (SFC) e codifica in un linguaggio di propria conoscenza (Ladder), le varie fasi di caricamento e impasto degli ingredienti. 2. Elaborare un opportuno sistema in grado di selezionare la ricetta rilevata dai sensori. 3. Progettare un sistema di rilevazione e conteggio del numero dei

carrelli, al fine di effettuare una stima percentuale del numero di impasti prodotti per ogni tipo di ricetta. In riferimento al sistema di caricamento degli ingredienti, si supponga che i silos contenenti le farine siano provvisti di indicatori di livello a ultrasuoni (indicati in figura) che segnalano la quota di farina presente durante il processo e forniscono un’uscita in corrente nell’intervallo 4÷20 mA corrispondenti rispettivamente al livello massimo e minimo. 4. Realizzare un sistema di blocco temporaneo del processo di produzione quando almeno un rilevatore ad ultrasuoni segnala il livello minimo di farina all’interno dei silos e la successiva ripartenza una volta che il serbatoio è stato nuovamente riempito. 5. Progettare un sistema di segnalazione luminosa nelle fasi di movimentazione del nastro e caricamento dei prodotti nel carrello durante l’intero processo, motivando le scelte effettuate. La figura seguente è la pagina base del pannello operatore HMI TP700 Comfort utilizzato nel progetto realizzato con WINCC in TIA Portal v14. Utilizzando la barra grafica e una variabile “CV” del contatore è possibile simulare lo svuotamento dei serbatoi, mentre il tratto poligonale simula il passaggio delle farine o dei liquidi.

La figura illustra come le barre grafiche, a cui sono state tolte le etichette, le

scala e i bordi, siano inserite all’interno dei serbatoi.

IL GRAFCET Seguendo le specifiche del progetto, è stata realizzata una possibile soluzione in grafcet, che a causa della complessità risulta necessario sviluppare in 4 schemi grafcet indipendenti, tutti con una loro fase iniziale: 0, 30, 40 e 50.

È lasciato al lettore lo sviluppo in linguaggio ladder del progetto.

F.2.5

ETICHETTATRICE CON TRASPORTO SU NASTRO

Un impianto deve trasportare delle bottiglie su nastro dalla postazione di lavoro A alla postazione di lavoro B dove saranno depositate in una scatola; lungo il percorso viene apposta su di esse un’etichetta. Durante l’operazione il nastro si arresta per3 secondi sul sensore SF2. L’accensione dell’impianto avviene attraverso l’interruttore S1 e viene segnalata dalla lampada HL1 (GR). L’operatore posiziona la bottiglia in prossimità della fotocellula SF1 e attraverso il pulsante di START fa partire il motore M1 (KM1); raggiunta la fotocellula SF2 si arresta per permettere l’operazione di etichettatura che avviene attraverso un pistone comandato da un’elettrovalvola (EV1). Diseccitando la bobina, il pistone risale automaticamente. Dopo tre secondi il nastro M1 riparte. Raggiunta la fotocellula SF3 la bottiglia si posizione automaticamente nel contenitore che viene posizionato di volta in volta per permettere il completo riempimento (l’azionamento del contenitore non è da prevedere nel progetto). La fotocellula SF3 è collegata agli ingressi digitali del PLC che attraverso un contatore fermerà il processo quando avrà raggiunto il decimo conteggio. In qualsiasi momento è possibile arrestare il processo premendo il pulsante di STOP (N.C.). In questo progetto è presente la funzione che aziona il movimento di una bottiglia e di un sistema di timbratura. La tecnica utilizzata può essere applicata per qualunque altra situazione in cui è necessario visualizzare oggetti in movimento. Del progetto saranno illustrate solo le funzioni non presenti nei precedenti esercizi proposti. Pagina iniziale del pannello operatore dove sono state progettate le segnalazioni relative al movimento del nastro con azionamento del motore, le fasi di etichettatura e quelle di transito fino al raggiungimento della stazione di imballaggio. Inoltre sono raffigurati anche i pulsanti che simulano i sensori, di norma presenti nelle stazioni di lavorazione su nastri.

La seconda pagina illustra il movimento della bottiglia su nastro, del pistone che inserisce il tappo/etichetta e della scatola dove vengono raccolte le bottiglie alla fine del ciclo.

La tecnica utilizzata per simulare il movimento della bottiglia richiede che nel software siano presenti i seguenti segmenti ladder inseriti utilizzando un blocco FB (“simulazione”).

La variabile CV del contatore viene collegata al movimento della bottiglia.

La variabile CV del secondo contatore viene collegata al movimento del timbro. Sistema di conteggio bottiglie con colorazione dei 6 posti della scatola.

Utilizzando un ulteriore contatore e la funzione “Visibilità” è possibile simulare la presenza delle bottiglie nella scatola. Come si evince dai disegni ogni cerchio presenta una numerazione diversa che permette di rendere

visibile l’oggetto.

Di seguito sono disegnate anche le due funzioni relative al ciclo automatico e ai comandi come previsto dalla tecnica batch.

DOMANDE ED ESERCIZI DI RIEPILOGO 1) Come si interfaccia il pannello operatore al PLC S7-1200 e S7-1500? 2) Cosa sono le pagine? 3) È possibile inserire dei pulsanti sul HMI per simulare e/o sostituire i pulsanti elettrici presenti ad esempio in un cancello automatizzato? 4) Gli ingressi Ix.y possono essere comandati dal pannello operatore? 5) Le uscite Qx.y sono rappresentabili sulle pagine del pannello operatore?

6) I pannelli Basic e Comfort sono programmabili tramite quale software? 7) I pannelli Basic e Comfort sono programmabili se è installato solo STEP 7 Basic? 8) È possibile far muovere oggetti sul pannello durante il RUN? 9) Come si fa a rendere invisibile un testo sul pannello? 10) È possibile simulare un pannello operatore da PC all’interno di TIA Portal mentre è in simulazione il software del PLC? 11) È possibile modificare i valori di alcuni parametri di progettazione durante l’esecuzione del programma del PLC (in RUN) tramite il pannello operatore? 12) I pannelli operatori dispongono anche di ingressi e uscite audio? ESERCIZIO N.1 GESTIONE DI UN DISTRIBUTORE DI LATTINE (DA SVOLGERE) Il progetto deve prevedere la realizzazione di un distributore di lattine. Il sistema avrà due modalità di funzionamento: 1. modalità cliente: il distributore, dopo aver ricevuto una quantità di monete sufficiente all’acquisto di una lattina, permetterà, tramite pannello operatore, di selezionare la bevanda tra 3 possibili scelte. Una volta selezionata, il sistema incasserà le monete (raccogliendole in un apposito salvadanaio) e provvederà alla fornitura della bevanda richiesta. Sul pannello operatore deve inoltre essere presente una funzione di restituzione delle monete nel caso in cui cliente non voglia più effettuare l’acquisto. 2. modalità operatore: il sistema deve prevedere una modalità di manutenzione a cui si può accedere dopo aver inserito un codice di

sicurezza da pannello operatore, mediante il quale l’operatore può verificare il numero di lattine presenti nella macchina e consentire l’apertura dello sportello in modo da permettere il caricamento delle lattine e il prelievo dell’incasso. La gestione della macchina deve essere realizzata utilizzando un PLC Siemens S7-1200/1500 e un pannello operatore touch screen (HMI TP 700 Comfort).

L’AUTORE Giovanni Pirraglia, laureato in Ingegneria presso l’Università “Federico II” di Napoli, è docente di Elettrotecnica, Elettronica e Automazione dal 1999. Attualmente insegna presso l’istituto G. “Marconi” di Dalmine ed è anche docente per i corsi PLC dell’I.T.S. “Lombardia Meccatronica”. Partecipa agli incontri tecnici presso il M.I.U.R. in qualità di esperto di Automazione. Realizza con i PLC Siemens S7-200, S7-1214, S7-1511C e HMI TP700 Comfort progetti per la didattica nei laboratori, avvalendosi anche dell’esperienza maturata nella progettazione e realizzazione di schede in SMT e PTH. Sviluppa software per schede Arduino, programma in Java, Visual Basic e realizza siti web per scopi didattici. Costantemente in contatto con Siemens Italia, segue l’aggiornamento dei sistemi hardware e software. È autore di Programmare con i nuovi PLC S7-1200 e S7-1500 (Hoepli 2015).

INFORMAZIONI SUL LIBRO Il volume presenta le caratteristiche avanzate dei PLC Siemens S7-1200 e S71500, utilizzando nei progetti anche i moduli I/O analogici, l’orologio hardware e i pannelli operatori (HMI). Nel testo sono analizzate le configurazioni dell’hardware e poi, in modo più dettagliato, ma con un linguaggio sempre accessibile, le principali tecniche di programmazione avanzata, attraverso numerosi esempi scritti con la tecnica grafcetladder e realizzati in TIA Portal con la programmazione strutturata, rendendo così più facile la comprensione del progetto. L’opera, divisa in moduli, propone all’interno di ognuno di essi un discreto numero di esercizi svolti e al termine domande ed esercizi da svolgere, molto utili per la revisione e il consolidamento dell’argomento sviluppato. Sono presenti anche numerose figure che illustrano l’utilizzo e le funzioni del software TIA Portal.

Related Documents


More Documents from "Ricky Mclaughlin"