S7 CC Lezione 15
🎓 S7 PLC Crash Course · Lezione 15
Best Practice e Troubleshooting 🏆
Le regole d’oro, gli errori comuni, la checklist di collaudo
e il tuo progetto finale di valutazione — l’ultima lezione del corso.
🎯 Cosa trovi in questa lezione
- Le regole d’oro della programmazione PLC
- Gli errori più comuni e come risolverli
- Una checklist di collaudo universale
- Come passare dal simulatore a TIA Portal
- Il progetto finale di valutazione
- E poi? I prossimi passi nel mondo dell’automazione
📋 Scheda lezione
| Modulo | 15 — Chiusura Corso |
| Lezione | 15 di 15 🏁 |
| Livello | ⭐⭐⭐⭐ Esperto |
| Tempo | ~30 min lettura + progetto |
| Elementi nuovi | Nessuno (sintesi) |
| Prerequisiti | Lezioni 01–14 |
📏 Le regole d’oro della programmazione PLC
In 14 lezioni hai imparato gli strumenti. Ora impari le abitudini che separano un programma che funziona da un programma che funziona bene — leggibile, manutenibile, sicuro.
🛑 Sicurezza — sempre per prima
📐 Organizzazione — leggibilità è manutenibilità
─( )─ Q0.0 — il secondo cancella il primo.⚡ Performance — efficienza conta
🔧 Errori comuni e soluzioni
Dopo 14 lezioni di pratica, questi sono gli errori che si vedono più spesso. Se qualcosa non funziona nel tuo programma, controlla questa lista prima di tutto:
| Errore | Sintomo | Causa | Soluzione |
|---|---|---|---|
| Bobine in serie | Errore quando aggiungi una bobina | Il simulatore blocca bobine in serie nella sezione uscite | Usa Network separati per ogni uscita, o rami paralleli nella sezione uscite |
| Doppia assegnazione | L’uscita “lampeggia” o non risponde | Due Network con ─( )─ Q0.0 — il secondo cancella il primo | Usa Set/Reset in Network separati, oppure unifica la logica in un solo Network |
| Timer che non parte | ET resta a 0 | La condizione di ingresso non è stabile (lampeggia tra 0 e 1) | Verifica la catena di contatti: se uno oscilla, il timer si resetta ad ogni ciclo |
| Counter che non conta | CV resta fermo | L’ingresso è tenuto a 1 (stato) anziché generare fronti (transizioni 0→1) | Il counter conta i fronti, non gli stati. L’ingresso deve tornare a 0 prima di un nuovo conteggio |
| Sequenza bloccata | Il processo si ferma a un passo | La condizione di transizione non si verifica, o il Merker di reset non funziona | Controlla i Merker nel pannello I/O: quale è attivo? La condizione di avanzamento è vera? Il Merker precedente è stato resettato? |
| Due passi attivi | Uscite conflittuali (es: carico + scarico) | Manca il Reset del passo precedente nella transizione | Ogni Set di un nuovo passo deve avere il corrispondente Reset del passo precedente |
| HMI non si aggiorna | Widget mostra valore errato o fisso | L’indirizzo del widget non corrisponde alla variabile nel Ladder | Doppio click sul widget → verifica tipo (I/Q/M/MW), byte e bit |
| Emergenza non funziona | Il sistema non si ferma | L’emergenza è su un contatto NA invece che NC, o i Reset sono prima dei Set | L’emergenza deve usare un contatto NA che legge l’ingresso NC del pulsante. I Network di Reset emergenza devono essere i primi del programma |
💡 Metodo di debug sistematico: quando qualcosa non funziona, metti il simulatore in RUN e osserva il pannello I/O. Guarda gli ingressi (sono quelli che ti aspetti?), poi i Merker (il passo corretto è attivo?), poi le uscite (corrispondono al passo?). Risali la catena logica fino a trovare il punto dove la realtà diverge dall’aspettativa.
✅ Checklist universale di collaudo
Ogni progetto, prima di essere consegnato o messo in produzione, deve superare questa checklist. Stampa e usa per ogni esercizio futuro:
☐ L’emergenza ferma TUTTO (compresi timer attivi e sequenze)?
☐ Lo STOP ha priorità sullo START in ogni circuito?
☐ I movimenti opposti sono interbloccati?
☐ I pulsanti di sicurezza usano logica NC (fail-safe)?
☐ Ogni transizione fa Set del nuovo passo E Reset del precedente?
☐ C’è un percorso di ritorno allo stato iniziale (reset o ciclo)?
☐ I timer hanno timeout ragionevoli?
☐ I counter hanno una condizione di reset?
☐ I pulsanti HMI sono collegati agli indirizzi corretti?
☐ I widget di visualizzazione si aggiornano in tempo reale?
☐ Esiste un modo per l’operatore di vedere il passo corrente?
☐ La tabella I/O è documentata?
☐ La convenzione Merker è documentata?
☐ Il progetto è salvato come file .json?
🌉 Dal simulatore a TIA Portal — cosa cambia
Quando aprirai TIA Portal per la prima volta, ti troverai in un ambiente molto più complesso — ma i concetti sono esattamente gli stessi. Ecco cosa cambia e cosa resta uguale:
✅ Uguale
- Contatti NA, NC, P, N
- Bobine standard, Set, Reset
- Timer TON, TOF, TP (con IEC timers)
- Counter CTU, CTD, CTUD
- Comparatori
- Network, commenti, struttura
- Indirizzamento I/Q/M/IW/QW/MW
- Ciclo di scansione
- Logica AND/OR/NOT
- Set/Reset e autoritenuta
- Sequenze a Merker
- HMI con WinCC (concetti identici)
🆕 Nuovo in TIA Portal
- Data Block (DB) — strutture dati organizzate
- Function Block (FB/FC) — sottoprogrammi riusabili
- SCL — programmazione testuale (come il C)
- PROFINET — comunicazione di rete
- Tag table — nomi simbolici per ogni I/O
- MOVE, CALCULATE — istruzioni aritmetiche
- Cross-reference — dove è usata ogni variabile
- Simulazione online — test con PLC reale
- Diagnostica — errori hardware
- Safety — programmazione F-CPU
La colonna di sinistra è tutto ciò che hai imparato in questo corso. La colonna di destra è ciò che aggiungerai con TIA Portal. Ma il punto chiave è: la logica Ladder, i timer, i counter, le sequenze e l’HMI funzionano esattamente allo stesso modo. Quello che cambia è l’ambiente software, non i concetti.
📊 Riepilogo del corso — tutto ciò che sai
| Lezione | Concetti | Elementi appresi |
|---|---|---|
| 01 | PLC, scan cycle, S7-1200, indirizzamento | I, Q, M, IW, QW, MW, T, C |
| 02 | Ladder Logic, AND/OR/NOT | Contatto NA, NC, Bobina |
| 03 | Memoria, priorità STOP | Set, Reset, autoritenuta |
| 04 | Variabili interne, sequenze, interblocco | Merker M, Memory Word MW |
| 05 | Ritardo all’eccitazione | Timer TON |
| 06 | Ritardo alla diseccitazione, impulso | Timer TOF, TP |
| 07 | Conteggio eventi | Counter CTU, CTD, CTUD |
| 08 | Cattura del cambiamento | Edge P, Edge N |
| 09 | Segnali continui, 0–27648 | I/O Analogici, NORM_X/SCALE_X |
| 10 | Confronto valori numerici | 6 Comparatori |
| 11 | Interfaccia operatore | 16 widget HMI, 8 pannelli |
| 12 | Salvataggio, organizzazione | JSON, Undo/Redo, portfolio |
| 13 | Progetto completo 1 | Nastro trasportatore |
| 14 | Progetto completo 2 | Impianto di miscelazione |
| 15 | Best practice, troubleshooting | Regole d’oro, checklist |
In totale: 19 elementi Ladder (4 contatti, 3 bobine, 3 timer, 3 counter, 6 comparatori), 16 widget HMI, 8 modelli di pannello, 9 CPU, 15 moduli di espansione. E la capacità di combinarli in sistemi completi.
🎓 Progetto finale di valutazione
Progetta un sistema di automazione a tua scelta che dimostri la padronanza di tutti i concetti del corso. Può essere realistico (un impianto che esiste) o inventato (un processo che ti piacerebbe automatizzare).
Requisiti minimi
☐ Almeno 1 ingresso analogico con comparatore
☐ Almeno 2 timer di tipo diverso (TON + TOF o TP)
☐ Almeno 1 contatore (CTU, CTD o CTUD)
☐ Almeno 1 rilevamento fronte (P o N)
☐ Un circuito di emergenza funzionante
☐ Almeno 1 interblocco tra azioni incompatibili
☐ Almeno 8 widget (input + output + processo)
☐ Un commento su ogni Network
☐ Una tabella I/O documentata (nel commento del Network 1 o su carta)
☐ Il progetto salvato come file .json
☐ Un breve testo descrittivo (cosa fa il sistema, come funziona)
Idee per il progetto (scegli una o inventa la tua)
⚠️ Non esiste un progetto “troppo semplice” se soddisfa i requisiti minimi. Un autolavaggio ben fatto, con tutti i commenti, l’emergenza funzionante, l’HMI completo e i test documentati, vale più di una centrale nucleare con metà dei Network senza commento. La qualità batte la complessità.
🚀 E poi? I prossimi passi
Hai completato il corso S7 PLC Crash Course. Ma il percorso nell’automazione non finisce qui — è appena iniziato. Ecco dove puoi andare ora:
- Installa TIA Portal — la versione trial è gratuita per 21 giorni. Ricrea uno dei tuoi progetti del simulatore in TIA Portal: vedrai quanto è familiare
- Prova con hardware reale — un S7-1200 Starter Kit costa poche centinaia di euro. Collegare un LED reale a Q0.0 e vederlo accendersi con il tuo programma è un’emozione che il simulatore non può dare
- Impara SCL — il Structured Text (SCL in Siemens) è il passo successivo. Permette calcoli complessi, cicli FOR, gestione stringhe — tutto ciò che il Ladder fa con difficoltà
- Esplora le comunicazioni — PROFINET, Modbus TCP, OPC UA. Come fa un PLC a parlare con un altro PLC, con un robot, con un sistema SCADA
- Studia la sicurezza funzionale — la programmazione F-CPU per applicazioni dove la sicurezza è certificata (presse, robot, macchine pericolose)
🏆 Congratulazioni!
Hai completato il corso S7 PLC Crash Course.
15 lezioni · 19 elementi Ladder · 16 widget HMI · 2 progetti completi
Da “cos’è un PLC?” a impianti di miscelazione con sequenze a 8 passi.
Le competenze che hai acquisito con il simulatore si trasferiscono direttamente all’hardware reale e a TIA Portal. Quando aprirai un progetto industriale, riconoscerai i Network, i timer, i counter, le sequenze a Merker e l’HMI — perché li hai già costruiti, testati e debuggati decine di volte.
Ora sei pronto per il mondo reale.
© Prof. D. Bertolino · S7 PLC Crash Course · Unofficial S7-1200 Simulator · Lezione 15