S7 CC Lezione 11
π S7 PLC Crash Course Β· Lezione 11
HMI β Human Machine Interface π
KTP700 Button Gauge Tank Motor
L’interfaccia operatore β pulsanti, indicatori, animazioni di processo
e 8 modelli di pannello Siemens.
π― Cosa impari in questa lezione
- Cos’Γ¨ un HMI e a cosa serve in un impianto
- Gli 8 modelli di pannello Siemens nel simulatore
- I 16 tipi di widget: input, visualizzazione, processo
- Come collegare i widget alle variabili PLC
- Multi-pagina, tasti funzione e sistema allarmi
- Progetto guidato: pannello controllo motore
π Scheda lezione
| Modulo | 11 β Interfaccia Operatore |
| Lezione | 11 di 15 |
| Livello | βββ Avanzato |
| Tempo | ~45 minuti |
| Elementi nuovi | 16 widget HMI |
| Prerequisiti | Lezione 10 |
π§ Cos’Γ¨ un HMI β gli occhi e le mani dell’operatore
Il PLC Γ¨ una scatola senza schermo, montata in un quadro elettrico chiuso. L’operatore non puΓ² vederci dentro β e non deve aprire il quadro ogni volta che vuole sapere se il motore gira o quanti pezzi sono stati contati.
L’HMI (Human Machine Interface) Γ¨ il pannello touch che risolve questo problema. Γ montato sulla porta del quadro o su un braccio a lato della macchina, e permette all’operatore di:
- Vedere lo stato dell’impianto: lampade, gauge, livelli, conteggi, allarmi
- Comandare il processo: pulsanti START/STOP, regolazione setpoint, selezione modalitΓ
- Diagnosticare problemi: storico allarmi, trend di temperatura, contatori di manutenzione
Nel mondo Siemens, gli HMI si programmano con WinCC (dentro TIA Portal). Il simulatore ne replica le funzionalitΓ essenziali con un editor drag & drop integrato.
π I modelli di pannello
Il simulatore replica 8 modelli reali Siemens, divisi in due serie. Puoi cambiare modello in qualsiasi momento dal menu a tendina nell’editor HMI.
Basic Panels (grigio)
| KTP400 | 4.3″ | 480Γ272 | 4 F-key |
| KTP700 | 7″ | 800Γ480 | 8 F-key |
| KTP900 | 9″ | 800Γ480 | 8 F-key |
| KTP1200 | 12″ | 1280Γ800 | 10 F-key |
Tasti funzione in basso. Il modello piΓΉ usato per le lezioni: KTP700.
Comfort Panels (nero)
| TP700 | 7″ | 800Γ480 | 8 F-key |
| TP900 | 9″ | 800Γ480 | 8 F-key |
| TP1200 | 12″ | 1280Γ800 | 14 F-key |
| TP1500 | 15.4″ | 1280Γ800 | 18 F-key |
Tasti funzione ai lati (4+4 o 7+7 o 9+9). Per progetti avanzati.
π§© I 16 widget β il catalogo completo
Ogni widget si aggiunge con un click dalla toolbar HMI, si posiziona con drag & drop e si configura con un doppio click. Tutti i widget si collegano a variabili PLC (I, Q, M, MW, IW, QW).
Elementi di Input β l’operatore comanda
Elementi di Visualizzazione β l’operatore osserva
{v}.Elementi di Processo β l’impianto prende vita
π Collegare un widget alla variabile PLC
Ogni widget Γ¨ collegato a una variabile PLC tramite tre parametri: Tipo (I, Q, M, MW, IW, QW), Numero (byte o indirizzo word) e Bit (solo per tipi bit). Il widget legge o scrive quella variabile in tempo reale durante la simulazione.
| Widget | Direzione | Variabili tipiche | Tipo valore |
|---|---|---|---|
| Button, Switch | Scrive nel PLC | I0.0, M0.0 | Bit (0/1) |
| Slider | Scrive nel PLC | MW0, QW64 | Word (0β65535) |
| LED | Legge dal PLC | Q0.0, M0.0 | Bit (0/1) |
| Display, Gauge, Bargraph | Legge dal PLC | MW0, IW64, C0.CV | Word |
| Motor, Valve, Pump, Conveyor | Legge dal PLC | Q0.0, Q0.1 | Bit (0/1) |
| Tank | Legge dal PLC | MW0 | Word (0β100%) |
| Light | Legge dal PLC | MW0 | Word (0=off, 1=R, 2=Y, 3=G) |
| Trend | Legge dal PLC | MW0, IW64 | Word (continuo) |
π‘ Il principio Γ¨ semplice: i widget di input (Button, Switch, Slider) scrivono variabili PLC β l’operatore comanda il processo. I widget di output (LED, Gauge, Motor, Tankβ¦) leggono variabili PLC β l’operatore osserva lo stato. Il programma Ladder sta nel mezzo e fa la logica.
π Multi-pagina, Tasti Funzione e Allarmi
π Multi-pagina
Come su un pannello reale, puoi creare piΓΉ pagine β una per la vista generale, una per i parametri, una per gli allarmi. Le tab in basso permettono di passare da una pagina all’altra. Ogni pagina ha i suoi widget indipendenti.
π² Tasti Funzione (F1βF18)
I tasti fisici intorno allo schermo. Configurabili per: cambiare pagina, set/reset/toggle un bit, o scrivere un valore. Il numero di tasti dipende dal modello (da 4 nel KTP400 a 18 nel TP1500).
π Sistema Allarmi
Messaggi con condizioni di attivazione (un bit) e presa visione (acknowledge). Quando la condizione diventa vera, l’allarme appare nella barra. L’operatore deve fare “acknowledge” per confermare di averlo visto.
π» Progetto guidato: Pannello Controllo Motore
Costruiamo insieme un HMI completo per controllare un motore con marcia/arresto. Serve sia il programma Ladder che il pannello HMI.
Passo 1 β Il programma Ladder
Crea un semplice marcia/arresto con Set/Reset (lezione 03):
Network 1 // START motore (da pulsante HMI su I0.0)
I0.0 ββ€ ββ ββββββββββ β(S)β Q0.0
Network 2 // STOP motore (da pulsante HMI su I0.1)
I0.1 ββ€ ββ ββββββββββ β(R)β Q0.0
Passo 2 β Apri l’editor HMI
- Clicca il pulsante π HMI nella toolbar
- Si apre il pannello HMI con il canvas vuoto
- Seleziona il modello KTP700 Basic PN dal menu a tendina (se non Γ¨ giΓ selezionato)
Passo 3 β Aggiungi i widget
Clicca i pulsanti nella toolbar HMI per aggiungere gli elementi, poi trascinali nella posizione desiderata:
| # | Widget | Label | Variabile | Note |
|---|---|---|---|---|
| 1 | Text | CONTROLLO MOTORE | β | Titolo in alto, centrato |
| 2 | Button | START | I0.0 | Colore verde, modo momentary |
| 3 | Button | STOP | I0.1 | Colore rosso, modo momentary |
| 4 | LED | RUNNING | Q0.0 | Colore verde β si accende quando il motore gira |
| 5 | Motor | M1 | Q0.0 | Animazione rotante quando Q0.0=1 |
Passo 4 β Configura ogni widget
Doppio click su ciascun widget per aprire la configurazione. Imposta la variabile (tipo, byte, bit), il colore e la label come indicato nella tabella sopra.
Passo 5 β Testa!
- Premi RUN nella toolbar β l’HMI entra in modalitΓ esecuzione
- Premi il pulsante START sull’HMI β il LED RUNNING si accende, il Motor inizia a ruotare
- Premi STOP β tutto si ferma
- Nota: i pulsanti HMI scrivono direttamente nelle variabili I0.0 e I0.1 β il programma Ladder li legge normalmente
π Flusso dati: Pulsante HMI (START) β scrive I0.0=1 β il Ladder legge I0.0 β Set Q0.0 β il LED HMI legge Q0.0=1 β si illumina. L’HMI Γ¨ l’interfaccia, il Ladder Γ¨ il cervello, gli I/O sono il ponte.
ποΈ Esercizi pratici
Esercizio 11.1 β Pannello Controllo Motore
Implementa il progetto guidato descritto sopra. Aggiungi anche un’etichetta Text con il nome del motore e sistema i widget in una disposizione ordinata.
Esercizio 11.2 β Dashboard Serbatoio
Crea un pannello di monitoraggio serbatoio con questi widget:
- Tank collegato a MW0 β mostra il livello
- Gauge collegato a MW0 β indicatore a lancetta (range 0β100)
- Display collegato a MW0 β valore numerico
- Bargraph collegato a MW0 β barra verticale
- Slider collegato a MW0 β per simulare il sensore di livello
- Text β “LIVELLO SERBATOIO” come titolo
RUN β muovi lo slider e osserva Tank, Gauge, Display e Bargraph aggiornarsi in tempo reale.
Esercizio 11.3 β HMI + Ladder combinati
Combina HMI e Ladder: il serbatoio dell’esercizio 11.2 con il controllo livello della lezione 09:
- Lo Slider HMI scrive su MW0 (simula il sensore)
- Nel Ladder: MW0 < 20 β Set Q0.0 (pompa ON), MW0 > 80 β Reset Q0.0 (pompa OFF)
- Nell’HMI: aggiungi una Pump collegata a Q0.0 e un LED “POMPA” collegato a Q0.0
- RUN β muovi lo slider. La pompa si avvia automaticamente quando il livello Γ¨ basso e si ferma quando Γ¨ alto
Esercizio 11.4 β Sfida: pannello semaforo
Sfida: riprendi il programma semaforo della lezione 06 e costruisci un HMI con:
- Una Light (colonna luminosa) collegata a un MW che codifica il colore (1=rosso, 2=giallo, 3=verde)
- Un Button START e un Button STOP
- Un Display che mostra il tempo rimasto nella fase corrente
- Un Text che indica la fase corrente
Suggerimento per la Light
La Light legge un valore MW. Nel Ladder, aggiungi dei Network che scrivono il valore in MW0: se M0.0 (verde) β MW0=3, se M0.1 (giallo) β MW0=2, se M0.2 (rosso) β MW0=1. Dato che il simulatore non ha istruzioni MOVE dirette, puoi usare un approccio creativo: Set/Reset diversi Merker che controllano il valore, oppure gestirlo interamente con i comparatori che hai imparato.
Esercizio 11.5 β Sfida: HMI multi-pagina
Sfida avanzata: crea un HMI con due pagine:
- Pagina 1 “Controllo”: pulsanti START/STOP, LED stato motore, Motor animato
- Pagina 2 “Monitoraggio”: Tank con livello, Gauge temperatura, Trend del livello nel tempo
- Configura un tasto funzione F1 per passare alla Pagina 1 e F2 per la Pagina 2
β Quiz rapido
1. Un pulsante HMI Γ¨ configurato come “momentary” su I0.0. Cosa succede quando l’operatore preme e rilascia?
Mostra risposta
Quando preme: I0.0 = 1. Quando rilascia: I0.0 = 0. Γ come un pulsante fisico β attivo solo finchΓ© Γ¨ premuto. Se il programma Ladder usa un’autoritenuta o un Set, l’azione persiste. Se usa una bobina standard, l’azione dura solo il tempo della pressione.
2. Un LED HMI Γ¨ collegato a Q0.0 ma non si accende quando il motore gira. Cosa controllo?
Mostra risposta
Verifica la configurazione del widget: tipo variabile (deve essere Q), byte (0) e bit (0). Se tutto Γ¨ corretto, verifica che il programma Ladder stia effettivamente scrivendo Q0.0 = 1 (controlla nel pannello I/O a destra). Se Q0.0 Γ¨ a 1 nel pannello ma il LED HMI non si accende, il collegamento del widget Γ¨ sbagliato.
3. Qual Γ¨ la differenza tra un Button “momentary” e un Button “toggle”?
Mostra risposta
Momentary: attivo (1) solo mentre Γ¨ premuto, torna a 0 al rilascio. Come un pulsante fisico a molla. Toggle: ogni click alterna lo stato (0β1, 1β0). Come un interruttore. Scegli momentary per START/STOP (il Ladder gestisce la memoria con Set/Reset), toggle per selettori ON/OFF dove vuoi che lo stato resti.
4. Un Tank mostra il 50% ma nel Ladder MW0 vale 13824. PerchΓ© non mostra 13824?
Mostra risposta
Il Tank interpreta il valore MW come percentuale di riempimento (0β100). Se il range del widget Γ¨ configurato come 0β100, il valore 50 nel MW corrisponde al 50% di riempimento. Se MW0 vale 13824, il Tank mostra erroneamente un livello fuori scala (>100%). La soluzione: nel Ladder, converti il valore analogico (0β27648) in percentuale (0β100) prima di scriverlo in MW, oppure configura il range del Tank su 0β27648.
5. Posso avere piΓΉ widget collegati alla stessa variabile?
Mostra risposta
SΓ¬, quanti ne vuoi! Nell’esercizio 11.2, Tank, Gauge, Display e Bargraph leggono tutti MW0 β mostrano lo stesso dato in modi diversi. Γ una pratica comune: un Display mostra il numero esatto, un Gauge dΓ una lettura intuitiva “a colpo d’occhio”, e un Trend mostra l’andamento nel tempo. PiΓΉ widget = piΓΉ informazione per l’operatore.
Prossima lezione β
Lezione 12 β Gestione Progetti e SalvataggioπΎ Salva π€ Esporta π₯ Importa
Salvare, esportare, organizzare β e preparare il portfolio
per i progetti finali del livello Esperto.
Β© Prof. D. Bertolino Β· S7 PLC Crash Course Β· Unofficial S7-1200 Simulator Β· Lezione 11