In particolar modo vedremo:
Il Problema
Un tecnico PLC ha sollevato una domanda su come leggere un segnale analogico 0-10V con una scheda analogica 6ES7231-5ND32-0XB0 su un PLC S7-1200. La scheda supporta il range -10/+10V, ma il segnale del sensore di temperatura è 0-10V. È possibile leggere il 0-10V con questa scheda semplicemente inserendo i valori 0-27648 nella funzione NORM_X (come se si usasse un 4-20mA)? Inoltre, per leggere un ipotetico -10/+10V dovrei inserire in NORM_X i valori -27648 e 27648? Questo articolo ti guiderà attraverso la soluzione tecnica per risolvere questo problema.
Causa Tecnica Leggere 0-10V
La scheda analogica 6ES7231-5ND32-0XB0 supporta diversi range di tensione analogica. Nella configurazione è possibile scegliere tra +-10V o 0-10V. Tecnicamente, un segnale 0/10V può essere collegato a più dispositivi, ma è importante che la resistenza di uscita della sorgente e la resistenza d’ingresso dei moduli di acquisizione siano compatibili per evitare falsi misurazioni. Inoltre, è necessario verificare l’equipotenzialità dei riferimenti.
Soluzione Definitiva per Leggere 0-10V
Passo 1: Configurazione della Scheda Analogica
Per leggere il segnale 0-10V, è necessario configurare la scheda analogica sul range corretto. Nella configurazione è possibile scegliere il range -10/+10V. Se si sceglie -10/+10V, il segnale 0-10V può essere letto correttamente.
Passo 2: Verifica delle Resistenza
Assicurati che la resistenza di uscita del sensore e la resistenza d’ingresso della scheda analogica siano compatibili. In questo caso, la resistenza del sensore è di 25 kOhm e quella delle schede PLC è di 1 MOhm, quindi è tutto a posto.
Passo 3: Configurazione del PLC
Configura il PLC per leggere il segnale analogico. Utilizza la funzione NORM_X per mappare il range di ingresso al range di uscita del PLC.
Codice e Configurazione Leggere 0-10V
FUNCTION_BLOCK FB_AnalogRead VAR_INPUT V_IN : REAL; END_VAR END_FUNCTION_BLOCK
FUNCTION NORM_X (INPUT V_IN : REAL; OUTPUT V_OUT : REAL)
V_OUT := ((V_IN - 0) / (10 - 0)) * (20 - (-10)); // Normalizzazione
END FUNCTION
Verifica e Test della Soluzione
Per verificare la soluzione, esegui un test con un generatore di segnale analogico impostato a 0-10V. Verifica che il valore letto dal PLC corrisponda al valore atteso. Per maggiori dettagli consulta la documentazione ufficiale Siemens.
Errori Comuni Leggere 0-10V
1. Utilizzo di un range di tensione errato sulla scheda analogica.
2. Resistenza di ingresso incompatibile tra sensore e scheda analogica.
3. Mancanza di verifica dell’equipotenzialità dei riferimenti.
Domande Frequenti su Leggere 0-10V
Domanda 1: Come posso configurare il PLC per leggere il segnale 0-10V?
Risposta: Configura la scheda analogica sul range -10/+10V e utilizza la funzione NORM_X per normalizzare il segnale.
Domanda 2: Posso collegare il segnale 0-10V a più PLC?
Risposta: Tecnicamente sì, ma verifica che le resistenze siano compatibili per evitare falsi misurazioni.
Conclusione
La lettura del segnale 0-10V su un PLC S7-1200 è possibile configurando correttamente la scheda analogica e verificando le compatibilità di resistenza. Per ulteriori dettagli consulta la risorsa correlata sul forum PLC ufficiale.
Approfondimento Tecnico Avanzato
Nel dettaglio, la scheda analogica 6ES7231-5ND32-0XB0 integra un convertitore analogico-digitale (ADC) che opera su un range di tensione da -10V/+10V. Tecnicamente, per leggere un segnale 0-10V, è necessario configurare la scheda per il range corretto. La risoluzione interna del convertitore è di 16 bit, che permette una risoluzione di 27648 livelli di tensione. Tuttavia, quando si imposta il range -10/+10V, la risoluzione si distribuisce su 20V, offrendo una maggiore precisione per ogni livello di tensione. Il funzionamento interno del PLC/TIA implica l’utilizzo di registri speciali per la conversione e la memorizzazione dei dati analogici, come il registro AN (Analog Input). È fondamentale configurare correttamente questi registri per garantire che i dati acquisiti siano accurati e che il sistema possa gestire correttamente il range di tensione impostato.
Per un’implementazione più avanzata, è possibile utilizzare funzioni di normalizzazione come NORM_X per adattare i valori acquisiti al range di lavoro del sistema. La normale configurazione di NORM_X per un range -10/+10V implica l’utilizzo di valori di offset e scala come -27648 e +27648 rispettivamente. Tuttavia, per il range 0-10V, è necessario adattare questi valori per ottenere una lettura corretta. Questo richiede una comprensione approfondita del funzionamento interno del PLC e della configurazione dei registri di acquisizione.
Metodi Alternativi e Varianti
Esistono diverse strade per affrontare il problema di lettura di un segnale 0-10V con una scheda progettata per il range -10/+10V. Una soluzione è l’uso di un convertitore di livello, come un sdoppiatore di segnali analogici, che può introdurre un ritardo e un errore aggiuntivi. Un approccio alternativo è l’utilizzo della metà scala del range di tensione della scheda, impostando il range su 0-10V direttamente. Questo metodo offre una maggiore precisione, poiché la risoluzione del convertitore è distribuita uniformemente sul range di 10V. Un altro metodo è l’uso di un circuito di offset per aggiungere una tensione di 5V al segnale 0-10V, trasformandolo così in un segnale -5/+15V, che può essere letto correttamente dalla scheda. Ognuno di questi metodi ha i suoi pro e contro, e la scelta dipende dalle specifiche del sistema e dalle esigenze di precisione e affidabilità.
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







