Progettazione della gestione sicura delle ricette in Logix e PanelView
Un’architettura delle ricette incentrata sul controllore per Logix e PanelView che separa modifica, convalida, archiviazione e attivazione, garantendo al contempo limiti, revisioni, autorizzazioni,...
Una ricetta può modificare temperatura, velocità, pressione, temporizzazione, movimento e qualità del prodotto senza scaricare un nuovo programma nel controllore. Per questo i dati delle ricette sono operativamente importanti anche quando sono memorizzati in un normale array di UDT Logix. L’obiettivo progettuale non è soltanto salvare i valori, ma impedire che valori incompleti, obsoleti, non autorizzati o incompatibili diventino attivi.
Un flusso di lavoro controllato separa la modifica da parte dell’operatore dai valori che stanno attualmente comandando la macchina.
Assegna ai dati della ricetta quattro ruoli distinti
Utilizza strutture separate per le ricette memorizzate, la sorgente selezionata, una copia di lavoro modificabile e la copia di processo attiva. L’HMI modifica soltanto la copia di lavoro. Una richiesta di salvataggio convalida e registra tale copia di lavoro nel record di archiviazione selezionato. Una richiesta di attivazione separata esegue nuovamente la convalida e trasferisce un unico record completo e approvato nella struttura attiva.
Questa separazione impedisce che ogni pressione di un tasto sull’HMI modifichi un setpoint in uso. Supporta inoltre l’annullamento, il confronto, l’approvazione, il ripristino e messaggi chiari per l’operatore. La ricetta attiva rimane stabile mentre un’altra ricetta viene esaminata.
L’hardware PanelView è organizzato nella collezione Allen-Bradley PanelView, mentre le piattaforme di controllo sono disponibili tramite PLC & PAC Systems. La scelta dell’hardware non sostituisce le regole transazionali implementate nell’applicazione.
Progetta l’UDT come un record sottoposto a controllo
Raggruppa i valori di processo correlati in un UDT, in modo che archiviazione, confronto e trasferimento utilizzino un unico layout definito. Aggiungi metadati quali identificativo della ricetta, nome, versione del formato, codice prodotto, revisione, ora di creazione, ora di modifica, stato di validità e ruolo responsabile della modifica. Mantieni lo stato operativo separato dalla struttura dei setpoint quando non deve essere copiato insieme alla ricetta.
Ogni membro numerico deve avere unità ingegneristiche, intervallo consentito e motivazione di tale intervallo. Utilizza enumerazioni delimitate o codici convalidati per le modalità discrete, anziché testo libero. Definisci valori predefiniti solo quando un valore predefinito è sicuro e tecnicamente significativo.
Una versione del formato è importante durante gli aggiornamenti software. Se una versione successiva del programma del controllore aggiunge campi o modifica le unità, i record precedenti devono essere rifiutati o migrati deliberatamente. Copiare un vecchio layout binario in un UDT più recente senza una regola di compatibilità può creare setpoint dall’aspetto valido ma errati.
Convalida le relazioni, non solo i singoli limiti
Verificare ogni campo rispetto a un minimo e a un massimo è necessario, ma non sufficiente. Il limite superiore deve rimanere maggiore di quello inferiore. Il tempo di rampa deve essere coerente con velocità e distanza. Le durate delle fasi devono rispettare la sequenza. Le opzioni mutuamente esclusive non possono essere entrambe abilitate. Una velocità può essere accettabile per una determinata dimensione del prodotto e non sicura per un’altra configurazione dell’attrezzaggio.
Implementa la convalida nella logica del controllore, perché il controllore gestisce la risposta del processo. L’HMI può ripetere i controlli per fornire un feedback immediato, ma non deve essere l’unico livello di applicazione delle regole. Restituisci un codice di convalida specifico e identifica il membro o la relazione che ha causato l’errore. Il solo messaggio “Ricetta non valida” costringe il personale di manutenzione a cercare tra decine di valori.
Distingui un avviso da un rifiuto. Un avviso può richiedere una conferma o una revisione da parte di un supervisore, mentre un record rifiutato non può essere salvato o attivato. Non consentire mai a un pulsante di conferma generico di ignorare un limite rigoroso dell’apparecchiatura o di sicurezza.
Utilizza una macchina a stati transazionali esplicita
I comandi momentanei dell’HMI possono non essere rilevati, essere ripetuti o rimanere attivi dopo un’interruzione della comunicazione. Implementa una sequenza di richiesta e riconoscimento con un numero di transazione. L’HMI scrive i dati di lavoro, incrementa il numero di richiesta e attende. Il controllore acquisisce una copia stabile, la convalida, esegue una sola volta l’azione richiesta e restituisce lo stesso numero di transazione con il risultato e il codice di errore.
Rifiuta una nuova richiesta mentre un’altra transazione è in corso. Applica un timeout nell’HMI e conserva il risultato del controllore abbastanza a lungo da consentire all’operatore di leggerlo. Dopo la riconnessione, l’HMI confronta i numeri di transazione anziché presumere che il salvataggio precedente non sia riuscito.
Il controllore deve trasferire il record completo e convalidato in un unico punto di esecuzione definito. Trasferimenti distribuiti, controllati da condizioni separate, possono creare una combinazione di valori vecchi e nuovi. Se i dati possono essere modificati contemporaneamente da un altro task o canale di comunicazione, progetta uno snapshot stabile e verifica che la relativa sequenza non sia cambiata durante la copia.
Separa il salvataggio dall’attivazione
Il salvataggio registra in memoria una copia di lavoro esaminata. L’attivazione modifica i valori utilizzati dal processo. Queste azioni devono avere autorizzazioni, messaggi e interblocchi separati. A un tecnico può essere consentito preparare una ricetta senza autorizzarlo ad avviarla.
Definisci quando l’attivazione è consentita: macchina ferma, ciclo completato, attuatori in uno stato sicuro, attrezzaggio corretto confermato, nessun guasto critico e ruolo operatore richiesto presente. Se alcuni valori possono cambiare durante la produzione, elencali esplicitamente e controllane il trasferimento. Non affidarti alla memoria dell’operatore per sapere quali campi possono essere modificati online in sicurezza.
Dopo l’attivazione, restituisci all’HMI l’identificativo e la revisione della ricetta attiva. Confronta la copia attiva con la sorgente approvata e genera un allarme in caso di differenza imprevista. La logica delle sequenze a valle deve utilizzare esclusivamente la copia attiva, mai i tag di lavoro dell’HMI.
Rendi autorizzazioni e tracciabilità proporzionate
Come minimo, distingui le azioni di visualizzazione, modifica, salvataggio, attivazione, eliminazione e ripristino. Limita l’eliminazione più rigorosamente della selezione. Evita credenziali condivise quando l’applicazione richiede la responsabilità individuale. Se la piattaforma supporta la registrazione degli audit, memorizza utente, ora, azione, identificativo della ricetta, revisione precedente, nuova revisione e risultato.
Il controllore deve inoltre conservare evidenze operative che non dipendano interamente dall’HMI: identificativo attivo, revisione, ultima transazione, risultato della convalida e ora di attivazione. I registri dell’HMI sono utili, ma possono andare persi durante la sostituzione del terminale o il download dell’applicazione.
Chiarisci i limiti. Lo storico ordinario delle ricette di una macchina non è automaticamente un sistema di registrazione elettronica per la produzione regolamentata. Se sono richieste firme, prove di manomissione, conservazione o audit trail convalidati, valuta l’intera architettura e le relative procedure.
Progetta il comportamento all’avvio e in caso di perdita della comunicazione
Specifica quale ricetta diventa attiva dopo il riavvio del controllore, il download del programma, il ripristino della memoria o la sostituzione dell’HMI. Caricare ciecamente il record zero può essere pericoloso. I dati ritentivi devono essere convalidati prima dell’uso, inclusi la versione del formato e tutti i rapporti tra i campi. Se non è possibile dimostrarne la validità, mantieni la macchina in uno stato definito e richiedi selezione e conferma.
La perdita della comunicazione con l’HMI non deve attivare parzialmente una ricetta. Il controllore continua con l’ultimo record attivo completo oppure adotta la risposta sicura prevista per il processo. Quando la comunicazione viene ripristinata, cancella gli stati di modifica obsoleti e mostra l’effettivo stato della transazione del controllore prima di abilitare un altro comando.
Verifica i percorsi di errore
Durante la messa in servizio, verifica il salvataggio normale, il campo non valido, la relazione non valida, l’azione non autorizzata, la pressione ripetuta del pulsante, l’interruzione della rete durante il trasferimento, il riavvio del controllore, il riavvio dell’HMI, l’archiviazione completa, l’eliminazione, il ripristino e un record con formato precedente. Conferma che nessun caso crei una ricetta attiva composta da valori misti.
Esegui un test ai limiti per ogni campo numerico importante e verifica le unità sull’HMI e nel controllore. Confronta tutti i membri attivi dopo il trasferimento. Registra i risultati e conserva una ricetta sicuramente funzionante al di fuori del backup del controllore, affinché il ripristino non dipenda da un unico dispositivo.
Un sistema di gestione delle ricette solido rende visibili le modifiche proposte, le convalida nel controllore, attiva una revisione completa in uno stato controllato e lascia evidenze sufficienti per ricostruire quanto accaduto. Questa disciplina è più importante del fatto che l’archiviazione inizi come array di UDT o come componente ricette dell’HMI.