Filtri a media mobile nei loop PLC e DCS: rumore, ritardo e validazione
I filtri a media mobile possono attenuare i segnali analogici, ritardando però i comandi e gli allarmi. Scopri come il tempo di campionamento, la lunghezza d...
Un andamento regolare della variabile di processo può far sembrare sano un anello di controllo, ritardando però silenziosamente le informazioni di cui il controllore ha bisogno. Il filtraggio con media mobile è semplice, spiegabile ed efficace contro alcuni tipi di rumore, ma ogni campione aggiuntivo nella finestra modifica il comportamento dinamico dell’anello.
La decisione ingegneristica non riguarda il fatto che una traccia filtrata appaia migliore. Riguarda la capacità del filtro di rimuovere il rumore di misura senza nascondere movimenti reali del processo, guasti degli strumenti, condizioni di allarme o i primi segnali di un’anomalia.

Un DCS può filtrare una misura su più livelli, quindi è necessario documentare l’intero percorso del segnale.
Il calcolo è semplice; la temporizzazione no
Una media mobile uniforme memorizza gli ultimi N campioni, li somma e divide il risultato per N. Ogni nuovo campione entra nella finestra mentre il campione più vecchio ne esce. Se l’intervallo di campionamento è Ts, il comportamento del filtro dipende sia da N sia da Ts; copiare solo N da un altro controllore non riproduce la stessa risposta in tempo reale.
Per i segnali che cambiano lentamente, una media mobile uniforme causale si comporta approssimativamente come se la misura fosse ritardata di metà finestra. Un vero gradino non compare immediatamente alla sua ampiezza completa: l’uscita avanza di un N-esimo del gradino ogni volta che un nuovo campione sostituisce un vecchio valore e raggiunge il valore finale solo dopo che la finestra è stata riempita con campioni successivi al gradino.
Questa rampa prevedibile è utile per sopprimere il rumore casuale, ma rischiosa in una misura rapida di pressione, portata, velocità o relativa alla protezione. PID, allarmi, storico e operatore agiscono tutti su una rappresentazione ritardata del processo, a meno che il valore grezzo non venga conservato anch’esso.
La lunghezza della finestra deve essere espressa in tempo
Dieci campioni acquisiti una volta al secondo descrivono un filtro molto diverso da dieci campioni acquisiti ogni 100 millisecondi. Documentare il trigger di campionamento, il periodo del task, la lunghezza della finestra, l’intervallo temporale effettivo, il comportamento di inizializzazione e la destinazione che utilizza il valore filtrato.
Non bisogna presumere che la scansione del programma coincida con l’intervallo di campionamento. Un blocco funzione può essere eseguito a ogni scansione, ma accettare un nuovo campione solo quando SampleEnable è true. Anche un modulo di controllo DCS può avere un proprio periodo di esecuzione, diverso dall’aggiornamento dell’I/O e del trasmettitore.
La documentazione dell’istruzione MAVE di Rockwell Automation rende esplicita questa distinzione: NumberOfSamples definisce l’intervallo, SampleEnable controlla quando un campione entra nella memoria e il blocco segnala lo stato relativo a ingressi non validi e dimensionamento non valido dell’array.
Il rumore periodico può essere rifiutato, ma anche diagnosticato erroneamente
Una media mobile presenta zeri della risposta in frequenza a intervalli regolari. Quando la finestra copre un numero intero di cicli di un disturbo periodico stabile, le porzioni positive e negative possono annullarsi fortemente. Per questo una finestra scelta intenzionalmente può ridurre un’ondulazione elettrica o meccanica ripetibile.
Il risultato non equivale a un rifiuto universale. Se la frequenza del disturbo cambia, l’intervallo di campionamento varia o il segnale subisce aliasing prima di raggiungere il filtro, l’annullamento si indebolisce. Un andamento più regolare può inoltre mascherare problemi di messa a terra, schermatura, linea d’impulso, sensore o installazione che dovrebbero essere corretti alla fonte.
Prima di aumentare la finestra, confrontare il segnale grezzo con un riferimento indipendente ed esaminare lo spettro del rumore o almeno il suo periodo nel dominio del tempo. Verificare che il disturbo sia effettivamente rumore e non un ciclo reale del processo.

Lo stesso principio della media mobile si applica alle piattaforme PLC e DCS, ma l’esecuzione e la gestione dei guasti dipendono dalla piattaforma.
Media mobile e filtraggio del primo ordine risolvono problemi diversi
Una media mobile uniforme è un calcolo su una finestra finita. Ogni campione memorizzato ha lo stesso peso finché non esce dalla finestra. Un filtro passa-basso del primo ordine è ricorsivo: la nuova uscita combina l’ultimo ingresso con l’uscita precedente secondo una costante di tempo.
La media mobile offre una cronologia finita e visibile, una forte reiezione a frequenze specifiche e una risposta al gradino che raggiunge il valore finale quando la finestra è completa. Il filtro del primo ordine richiede poca memoria e produce una risposta esponenziale senza le attenuazioni periodiche della media mobile.
Una media mobile pesata rappresenta una soluzione intermedia. Attribuire un peso maggiore ai campioni più recenti può ridurre il ritardo apparente, ma modifica la risposta in frequenza e rende il comportamento meno evidente al personale di manutenzione. I pesi devono essere normalizzati, documentati e testati.
La scelta deve seguire il disturbo e l’obiettivo di controllo. Utilizzare una media mobile quando una finestra finita è significativa o quando è necessario attenuare una componente periodica stabile. Utilizzare un filtro del primo ordine quando una risposta esponenziale e una costante di tempo documentata sono adatte all’anello. Utilizzare un filtro notch o un altro filtro progettato allo scopo solo quando la frequenza dell’interferenza è nota e sufficientemente stabile da giustificarlo.
Evitare filtri nascosti in serie
Una misura può essere smorzata nel trasmettitore, mediata in un modulo di ingresso, filtrata nuovamente nella logica PLC o DCS, resa più uniforme nell’HMI e compressa dallo storico. Ogni livello può sembrare innocuo preso singolarmente, mentre la catena completa genera un ritardo considerevole.
Creare un documento del percorso del segnale che mostri l’ingresso elettrico grezzo, la scalatura e il filtro del modulo, il filtro del controllore, la sorgente dell’allarme, la variabile di processo del PID, il valore visualizzato nell’HMI e il tag dello storico. Stabilire quali utilizzatori necessitano di dati grezzi, convalidati o filtrati. Una diagnostica di manutenzione dovrebbe generalmente mantenere l’accesso alla misura grezza anche quando gli operatori utilizzano una visualizzazione filtrata.
I collegamenti interni all’hardware Honeywell Experion PKS C300 e alla serie di PLC ABB forniscono un contesto di piattaforma, ma la disponibilità e il comportamento del filtro devono essere verificati rispetto al controllore installato, al software e all’ambiente di esecuzione.
I dati di qualità scadente richiedono una risposta definita
Una media mobile non deve trasformare un circuito aperto, un valore fuori intervallo, un risultato di comunicazione obsoleto o un valore a virgola mobile non valido in una variabile di processo credibile. Memorizzare o trasmettere la qualità separatamente dal valore numerico e definire il comportamento del blocco quando la qualità diventa scadente.
Le strategie possibili includono il mantenimento dell’ultimo valore filtrato valido, la dichiarazione immediata dell’uscita come non valida, lo svuotamento della finestra o la reinizializzazione dal primo campione valido dopo il ripristino. La scelta corretta dipende dal fatto che il valore piloti il controllo, gli allarmi, la visualizzazione o la reportistica. Deve essere visibile agli operatori e alla logica a valle.
Anche l’inizializzazione è importante. Riempire un array vuoto con zeri crea una falsa rampa di avviamento. Calcolare progressivamente la media solo dei campioni validi raccolti fino a quel momento evita il bias dovuto agli zeri, ma modifica la finestra effettiva durante il riscaldamento. Inizializzare l’uscita al valore di ingresso valido corrente garantisce un avvio senza variazioni brusche, ma inizialmente non offre alcuna riduzione del rumore. Scegliere e documentare un comportamento.
Il filtraggio modifica le prestazioni del PID e degli allarmi
L’aggiunta di un filtro modifica il percorso di misura visto dal controllore. Una taratura PID precedentemente accettabile può diventare lenta o oscillante quando viene introdotto un ulteriore ritardo. L’azione derivativa è particolarmente sensibile al rumore di misura, ma filtrare il rumore e lasciare invariata la vecchia taratura non è automaticamente sicuro.
Dopo aver modificato un filtro, ripetere il test della risposta dell’anello in condizioni controllate. Verificare la reiezione ai disturbi, la risposta al setpoint, il movimento della valvola, il sovraelongamento, la temporizzazione degli allarmi e il tempo necessario per rilevare una vera escursione del processo. Valutare l’anello alle normali velocità operative, non solo in condizioni stazionarie.
La progettazione degli allarmi può richiedere percorsi separati per dati grezzi e filtrati. Un allarme intempestivo può trarre vantaggio dalla logica di persistenza o ritardo, mentre un limite protettivo può richiedere dati convalidati più rapidi. Non risolvere il pendolamento degli allarmi rallentando silenziosamente la misura di controllo per tutti gli utilizzatori.
Evidenze di implementazione e messa in servizio
Per un’implementazione PLC personalizzata, utilizzare un array limitato o un buffer circolare e una somma progressiva, in modo che il contributo più vecchio venga sostituito da quello più recente. Proteggere l’indice, definire la precisione numerica e impedire gli errori di superamento dei limiti dell’array. Se l’esecuzione del task può essere interrotta, verificare che buffer e somma non possano diventare incoerenti.
Eseguire la messa in servizio con valori stabili noti, un gradino controllato, stati di qualità scadente, interruzioni del task, modifiche di SampleEnable e variazioni a runtime della finestra richiesta. Confrontare gli andamenti grezzi e filtrati con timestamp sulla stessa scala. Registrare il ritardo osservato e la riduzione del rumore invece di approvare il filtro solo perché la linea appare regolare.
Opinione editoriale: il filtraggio fa parte della progettazione della misura, non della formattazione estetica degli andamenti. La soluzione migliore espone il valore grezzo, il valore filtrato, la qualità, l’intervallo di campionamento e la lunghezza della finestra, così che un altro tecnico possa spiegare esattamente che cosa il controllore sapeva e quando lo sapeva.
Domande frequenti
Quanti campioni dovrebbe utilizzare una media mobile?
Non esiste un numero universale. Scegliere N insieme all’intervallo di campionamento in base alle caratteristiche del rumore e all’evento reale più rapido che il controllo o l’allarme devono rilevare, quindi convalidare il ritardo risultante sul processo.
Una finestra più grande migliora sempre il controllo?
No. Riduce una maggiore quantità di variazione ad alta frequenza, ma aggiunge ritardo alla misura. Un filtraggio eccessivo può indebolire la reiezione ai disturbi, ritardare gli allarmi e far sembrare lento un PID tarato correttamente.
Lo smorzamento del trasmettitore deve essere disabilitato?
Non automaticamente. Documentare ogni filtro nella catena del segnale e assegnargli uno scopo. Evitare di sovrapporre smorzamenti e filtri del controllore non documentati, che producano un ritardo totale superiore a quello previsto.
Che cosa dovrebbe accadere quando la qualità dell’ingresso diventa scadente?
Il blocco dovrebbe esporre la qualità scadente e seguire una politica definita di mantenimento, invalidazione o reinizializzazione. Un ingresso guasto non deve essere mediato fino a produrre un valore di processo apparentemente valido.
Una media mobile è adatta a misure di sicurezza o di intervento?
Solo all’interno di un’architettura convalidata che consenta esplicitamente il ritardo aggiunto e il comportamento diagnostico. Non si deve mai presumere che il normale filtraggio di controllo soddisfi un requisito di tempo di risposta per una funzione di sicurezza.