In particolar modo vedremo:
Il Problema
Un tecnico PLC ha incontrato difficoltà con il fronte di discesa dell’ingresso fisico i0.0 su un sistema S7-1200. Nonostante le impostazioni corrette per la variabile m50.0 e l’utilizzo di set coils e reset coils, il sistema non ha reagito come previsto. Questo problema può compromettere l’efficienza operativa del sistema.
Causa Tecnica problema fronte discesa i0.0
Il problema principale è legato all’utilizzo inappropriato del fronte di discesa dell’ingresso i0.0. In un sistema S7-1200, il fronte di discesa di un ingresso non può essere settato o resettato direttamente. È necessario utilizzare le memorie di appoggio per gestire tali operazioni.
Soluzione Definitiva per problema fronte discesa i0.0
Passo 1: Configurare un Database Personalizzato
Crea un database chiamato ‘MieiDati’ e, all’interno, dichiara un array di 10 bool chiamato ‘MieiFronti’. Dichiara anche un array identico chiamato ‘MieiIngressi’ e un altro identico chiamato ‘MieUscite’.
Passo 2: Collegare il Fronte di Discesa
Inserisci il contatto Fronte di discesa di ‘MieiDati.MieiIngressi[0].e’ dove ti chiede la memoria, inserisci ‘MieiDati.MieiFronti[0]’.
Passo 3: Configurare la Bobina Set
Inserisci una bobina Set che sarà ‘MieiDati.MieUscite[0]’. Ora che non sei più vincolato ad ingressi o uscite fisiche, vai Online e prova a forzare ad ‘1’ il tuo contatto di ingresso del DB e poi riportalo a ‘0’.
Codice e Configurazione problema fronte discesa i0.0
DB 'MieiDati'
STRUCT
MeiIngressi[10] : BOOL
MeiFronti[10] : BOOL
MieUscite[10] : BOOL
END_STRUCT
Verifica e Test della Soluzione
Per verificare la soluzione, esegui una scansione e verifica se l’uscita è diventata ‘1’ quando il contatto di ingresso è stato forzato a ‘1’ e riportato a ‘0’. Per maggiori dettagli consulta la documentazione ufficiale Siemens.
Errori Comuni problema fronte discesa i0.0
1. Utilizzo errato del fronte di discesa.
2. Memorie di appoggio non configurate correttamente.
3. Utilizzo di variabili di sistema senza accorgersene.
Domande Frequenti su problema fronte discesa i0.0
Domanda 1: Come posso risolvere il problema del fronte di discesa i0.0 su S7-1200?
Risposta: Configura un database personalizzato e utilizza le memorie di appoggio per gestire il fronte di discesa.
Domanda 2: Perché non posso settare direttamente il fronte di discesa i0.0?
Risposta: Il fronte di discesa non può essere settato o resettato direttamente; è necessario utilizzare le memorie di appoggio.
Conclusione
Risolvere il problema del fronte di discesa i0.0 su S7-1200 richiede una configurazione corretta delle memorie di appoggio. Segui le istruzioni sopra riportate per garantire un funzionamento corretto del sistema. Per ulteriori risorse, consulta il forum PLC ufficiale.
Approfondimento Tecnico Avanzato
Nel sistema S7-1200, la gestione del fronte di discesa dell’ingresso fisico i0.0 è complessa e richiede una comprensione approfondita del funzionamento interno del PLC/TIA. Il fronte di discesa è un evento che si verifica quando lo stato di un ingresso cambia da 1 a 0. In un PLC S7-1200, tale evento non può essere gestito direttamente tramite set o reset coils. Invece, è necessario utilizzare registri di appoggio, come l’array di bool ‘MieiFronti’ all’interno di un database personalizzato. Questi registri permettono di monitorare lo stato del fronte di discesa senza interferire con le operazioni di set/reset. I registri M, come M50.0, sono utilizzati dal sistema per memorizzare lo stato dell’operando, ma non devono essere utilizzati per gestire il fronte di discesa di un ingresso fisico. La configurazione corretta prevede la dichiarazione di un array di bool per i fronti e un altro per gli ingressi fisici, consentendo una gestione più flessibile e precisa delle operazioni di fronte di discesa.
L’utilizzo di registri di appoggio per gestire il fronte di discesa è fondamentale per evitare interferenze con le operazioni di sistema e garantire che il PLC reagisca correttamente agli eventi di stato. La configurazione corretta implica la creazione di un database personalizzato, come ‘MieiDati’, e la dichiarazione di array di bool per i fronti e gli ingressi, oltre a un array per le uscite. Questo approccio consente di monitorare e gestire il fronte di discesa in modo efficiente, senza compromettere l’integrità del sistema.
Metodi Alternativi e Varianti
Per risolvere il problema del fronte di discesa dell’ingresso i0.0 su un S7-1200, esistono diverse strategie. Una prima opzione è l’utilizzo di un contatore di fronte di discesa, che incrementa una variabile ogni volta che l’ingresso cambia stato. Questo metodo è utile per applicazioni che richiedono un conteggio degli eventi, come il conteggio dei pezzi su un nastro trasportatore rilevato da una fotocellula. Tuttavia, questo approccio può essere complesso da implementare e richiede una configurazione dettagliata.
Un’altra variante è l’uso di un timer di fronte di discesa, che attiva un’azione solo per una scansione successiva quando il fronte di discesa viene rilevato. Questo metodo è particolarmente utile per operazioni che devono essere eseguite solo una volta per ogni evento di fronte di discesa, come l’accensione di una luce di allarme. Tuttavia, questo approccio può richiedere una configurazione aggiuntiva per garantire che il timer venga resettato correttamente dopo l’attivazione.
Infine, un metodo alternativo è l’uso di un contatore di fronte di discesa combinato con un contatore di fronte di salita, per gestire eventi bidirezionali. Questo approccio offre una maggiore flessibilità e può essere utilizzato per applicazioni più complesse, ma richiede una configurazione avanzata e una comprensione approfondita del funzionamento dei contatori e dei timer nel PLC.
Stanco di andare a tentativi?
Se errori come questo ti mandano in panico, probabilmente ti mancano le basi solide della programmazione PLC.
Smetti di risolvere problemi uno alla volta e impara il metodo giusto dall’inizio.

“Semplifica, automatizza, sorridi: il mantra del programmatore zen.”
Dott. Strongoli Alessandro
Programmatore
CEO IO PROGRAMMO srl







