Un banco refrigerato o una cella frigorifera ha già un computer a bordo. Il controllore legge le proprie sonde, comanda il compressore o la valvola, programma gli sbrinamenti e genera i propri allarmi. La maggior parte dei controllori commerciali può anche trasmettere tutte queste informazioni via Modbus RTU. Leggerli aggiunge a un sistema di monitoraggio il setpoint, lo stato di sbrinamento, la temperatura dell'evaporatore e gli allarmi del controllore, che spiegano perché una temperatura è cambiata.
Questa guida tratta le quattro famiglie di controllori più diffuse nella distribuzione alimentare e nella ristorazione in Europa: Danfoss EKC 202, Carel MPXPRO e ir33 e la gamma Dixell XR. Le tabelle dei registri provengono dai profili Modbus che EpiSensor usa su questi controllori, confrontati con i documenti dei produttori. Dove le due fonti non concordano, o dove un produttore non pubblica un valore, la guida lo segnala.
Perché leggere il controllore, e perché non soltanto il controllore
Le sonde del controllore sono posizionate per la regolazione. Un Danfoss EKC 202D legge l'aria prima e dopo l'evaporatore (S3 e S4) e l'evaporatore stesso (S5). Un Carel MPXPRO usa una sonda di mandata, una sonda di ripresa e una sonda di sbrinamento. Un Dixell XR usa una sonda termostato e una sonda evaporatore. Nessuna di queste si trova nella posizione degli alimenti più caldi, e il setpoint può essere modificato da chiunque acceda al menu del controllore.
Usa quindi entrambi i segnali:
| Segnale | Da | Uso |
|---|---|---|
| Temperatura degli alimenti nel punto più caldo | Una sonda indipendente | La registrazione HACCP e l'allarme principale |
| Temperatura dell'aria al controllore | Il controllore, via Modbus | Una seconda vista dell'unità; confronto con la sonda indipendente |
| Setpoint e differenziale | Il controllore | Prova dell'impostazione dell'unità e di quando è cambiata |
| Temperatura dell'evaporatore, stato di sbrinamento | Il controllore | Spiegare un aumento programmato; individuare batterie ghiacciate e sbrinamenti non riusciti |
| Allarmi del controllore | Il controllore | Allarmi di alta e bassa temperatura, guasti delle sonde |
La EN 12830, la norma per i registratori di temperatura, fa la stessa distinzione: la misura del registratore deve essere indipendente da quella usata per regolare l'impianto frigorifero. La guida alla EN 12830 spiega quando si applica la norma. La guida al posizionamento delle sonde spiega dove va la sonda indipendente e come lo stato di sbrinamento del controllore può evitare i falsi allarmi.
Il collegamento
Ognuno di questi controllori è uno slave Modbus RTU su una coppia RS-485. Un'interfaccia Modbus ZMB funge da master: interroga i registri configurati e invia i valori attraverso la rete mesh Zigbee a un Gateway su cui funziona Edge. Non serve un cavo dati fino al quadro. Uno ZMB legge molti registri per controllore: 8 o più, e fino a 16 o più a seconda del modello. Uno ZMB-30 aggiunge una propria sonda di temperatura impermeabile da 2,5 m, così un solo dispositivo può leggere il controllore e portare la sonda indipendente per gli alimenti della stessa unità.
Ogni controllore ha una pagina dispositivo con la sua mappa dei registri e un modello Edge di sola lettura: Danfoss EKC 202, Danfoss ERC 21x, Danfoss AK-CC55, Eliwell IDNext, Carel MPXPRO, Carel ir33, Carel pRack, Dixell XR60CX, Dixell XR77CX e Dixell XR170C. La guida al monitoraggio delle temperature HACCP mostra le letture del controllore accanto a sonde indipendenti.
Modbus su RS-485 ha un solo master per bus. Se un supervisore come un system manager Danfoss o un Carel PlantVisor interroga già i controllori, un secondo master sulla stessa coppia provoca collisioni. Leggi i dati dal supervisore, oppure usa la seconda porta seriale del controllore, se presente. La guida al cablaggio RS-485 tratta terminazione e polarizzazione su un bus nuovo.
| Controllore | Porta Modbus | Parametro dell'indirizzo | Impostazioni seriali |
|---|---|---|---|
| Danfoss EKC 202A, B, C | Scheda a innesto EKA 178A (084B8564) | o03 (da 1 a 240) | 9.600, 8, pari, 1 (profilo EpiSensor) |
| Danfoss EKC 202D | Modulo a innesto; l'EKC 302D su guida DIN ha Modbus integrato | o03 | 9.600, 8, pari, 1 (profilo EpiSensor) |
| Carel MPXPRO | RS-485 sulle unità Master; scheda MX3OP48500 per uno Slave | H0, predefinito 199 | 19.200, 8, nessuna, 2 (fisse) |
| Carel ir33 | Scheda IROPZ48500 o IROPZ485S0 | H0, predefinito 1 | 19.200, 8, nessuna, 2 |
| Dixell XR77CX | RS-485 integrata | Adr, predefinito 1 | 9.600, 8, nessuna, 1 |
| Dixell XR170C | RS-485 sui modelli che ne sono dotati | Adr | 9.600, 8, nessuna, 1 |
| Dixell XR60CX | TTL sul connettore HOT KEY, tramite un convertitore XJ485-CX | Adr, predefinito 1 | 9.600, 8, nessuna, 1 |
Danfoss non indica nei documenti pubblici le impostazioni seriali dell'EKA 178A; i valori riportati sono quelli usati dal profilo EpiSensor. Carel e Dixell le fissano, e i controllori Carel riconoscono automaticamente il protocollo Carel o Modbus. Il profilo EpiSensor legge l'ir33 con un bit di stop e il controllore ha risposto, ma i manuali Carel dell'MPXPRO e dell'ir33 Universale ne indicano due: usa due bit di stop. In una rete Carel MPXPRO solo il Master è su RS-485. Le unità Slave si raggiungono attraverso di esso, all'indirizzo del Master più il numero dello Slave.
Lettura di un registro di temperatura
Tutte e quattro le famiglie inviano le temperature nello stesso modo: un intero a 16 bit con segno in decimi di grado, in un registro holding letto con la funzione 03. La decodifica richiede tre passaggi:
- Leggi un registro con la funzione 03 all'indirizzo a base zero.
- Interpreta i 16 bit come intero con segno (complemento a due): i valori da 32.768 in su sono negativi.
- Moltiplica per 0,1 per ottenere °C, oppure °F se il parametro dell'unità di misura del controllore è impostato su Fahrenheit.
| Registro grezzo | Senza segno | Con segno | Temperatura |
|---|---|---|---|
| 0x0032 | 50 | 50 | 5,0 °C |
| 0x0000 | 0 | 0 | 0,0 °C |
| 0xFFEC | 65.516 | −20 | −2,0 °C |
| 0xFF4C | 65.356 | −180 | −18,0 °C |
Un congelatore che segna 6.535,6 °C ha un registro con segno decodificato come senza segno. Il decodificatore di registri Modbus mostra affiancate tutte le interpretazioni di una word grezza.
In Edge un registro ZMB si configura con l'indirizzo dello slave, l'indirizzo a base zero in decimale o esadecimale, il formato dei dati (16 bit con segno), Read from impostato su registro holding (funzione 03) e Write lasciato su Read only (sola lettura). Nella sezione dei nomi e della scalatura, imposta il moltiplicatore a 0,1 e l'unità a °C. Un template di dispositivo copia poi la stessa configurazione su ogni ZMB collegato allo stesso modello di controllore.
Danfoss EKC 202
Danfoss numera ogni valore con un numero di parametro (PNU), e il registro Modbus è il PNU meno uno, letto con la funzione 03. I valori sono in decimi e con segno.
| Valore | Registro (esadecimale) | Registro (decimale) | Modello | Nome Danfoss |
|---|---|---|---|---|
| Temperatura dell'aria visualizzata | 0x0A0F | 2575 | 202A, B, C | Display air, PNU 2576 |
| Temperatura S5 dell'evaporatore o del prodotto | 0x03F2 | 1010 | Tutti | u09 S5 temp, PNU 1011 |
| Temperatura dell'aria S3 | 0x09E1 | 2529 | 202D | u12 S3 air temp, PNU 2530 |
| Temperatura dell'aria S4 | 0x09E2 | 2530 | 202D | u16 S4 air temp, PNU 2531 |
| Temperatura di stacco (setpoint) | 0x0063 | 99 | Tutti | Cutout °C, PNU 100 |
| Differenziale | 0x0064 | 100 | Tutti | r01 Differential, PNU 101 |
Tutti e sei sono stati provati con i profili EpiSensor e corrispondono agli elenchi dei parametri Danfoss per l'EKC 202B e il 202D1. Il registro 2575 è il valore visualizzato, che comprende l'eventuale offset di visualizzazione impostato in r04. Il valore grezzo della sonda termostato, u69 Sair, è il PNU 2589, registro 2588.
Gli EKC 202A, B e C usano Sair per la regolazione e S5 per lo sbrinamento, oppure come sonda prodotto o condensatore (o70). L'EKC 202D combina S3 e S4 per la regolazione (r15), la visualizzazione (o17) e gli allarmi (A36). I guasti delle sonde sono segnalati come codici di allarme (E27 per S5, E29 per Sair; E25 ed E26 per S3 e S4 sul 202D) e come parametri di allarme, non come valore speciale nel registro di temperatura.
Carel MPXPRO e ir33
Carel numera le variabili di supervisione per tipo: analogiche (A), intere (I) e digitali (D). Nella tabella dell'ir33+, il registro Modbus di una variabile analogica coincide con il suo indice Carel, quello di una variabile intera è l'indice più 100, e le variabili digitali si leggono come coil con lo stesso numero.
| Valore | Registro (esadecimale) | Controllore | Fonte |
|---|---|---|---|
| Lettura della sonda 1 | 0x0004 | ir33 | Profilo EpiSensor; manuale ir33+, analogica 4 |
| Lettura della sonda 2 | 0x0005 | ir33 | Profilo EpiSensor; manuale ir33+, analogica 5 |
| Set point St | 0x0010 | ir33+ | Manuale ir33+, analogica 16 |
| Differenziale rd | 0x0011 | ir33+ | Manuale ir33+, analogica 17 |
| Stato di sbrinamento | Coil 31 | ir33+ | Manuale ir33+, digitale 31 |
| Allarme di alta temperatura | Coil 16 | ir33+ | Manuale ir33+, digitale 16 |
| Temperatura S1 | 0x0007 | MPXPRO | Profilo EpiSensor |
| Temperatura S2 | 0x0008 | MPXPRO | Profilo EpiSensor |
| Temperatura S3 | 0x0009 | MPXPRO | Profilo EpiSensor |
| Setpoint | 0x0027 | MPXPRO | Profilo EpiSensor |
| Differenziale | 0x0029 | MPXPRO | Profilo EpiSensor |
Carel non riporta nel manuale d'uso l'elenco delle variabili di supervisione dell'MPXPRO, quindi le righe dell'MPXPRO si basano solo sulle prove EpiSensor. Il profilo EpiSensor indica anche un terzo registro dell'ir33 a 0x000F, che la tabella dell'ir33+ non definisce (gli indici da 11 a 14 sono le calibrazioni delle sonde): escludilo, a meno che la documentazione del tuo controllore non lo indichi.
I ruoli delle sonde dipendono dalla configurazione. Sull'MPXPRO, per impostazione predefinita S1 è la sonda di mandata (Sm), S2 la sonda di sbrinamento (Sd) e S3 la sonda di ripresa (Sr). Sull'ir33, S1 regola e il parametro /A2 rende la sonda 2 una sonda prodotto, di sbrinamento o del condensatore. I guasti delle sonde sono variabili digitali (da 10 a 13 sull'ir33+), visualizzate sul display come codici da E0 a E3.
Entrambi i controllori hanno una funzione HACCP che registra gli allarmi di alta temperatura (HA) e gli allarmi dopo un'interruzione di alimentazione (HF) con data, ora e durata, sui modelli dotati di orologio. È disattivata per impostazione predefinita (parametro Htd = 0). L'MPXPRO, con le sonde NTC standard Carel, è dichiarato conforme alla EN 13485 come termometro («air, S, 1, −50T90 °C»), non alla EN 12830 come registratore.
Carel pRack
Il pRack pR300 è un controllore per centrali frigorifere, non per banchi. Il suo indirizzo di supervisione predefinito è 196, ma il protocollo predefinito è pRACK Manager: impostalo come slave Modbus prima di leggerlo. Le pressioni sono in barg (o psig), non in gradi, anche dove un elenco dei registri etichetta ogni valore in °C. Carel fornisce su richiesta l'elenco completo delle variabili di supervisione: procuratelo prima di fidarti di un registro di pressione.
Serie Dixell XR
Il documento Modbus di Dixell fissa la linea a 9.600 baud, 8 bit di dati, nessuna parità e un bit di stop, con le funzioni 03, 06 e 16. I valori delle sonde sono disposti a partire da 0x0100, ciascuno seguito da un registro di stato che contiene unità di misura, risoluzione, bit di allarme e bit di errore sonda.
| Valore | Registro (esadecimale) | Controllore | Fonte |
|---|---|---|---|
| Sonda ambiente (termostato) | 0x0100 | XR77CX, XR170C | Profilo EpiSensor; Dixell, sonda 1 |
| Sonda evaporatore | 0x0102 | XR170C | Profilo EpiSensor; Dixell, sonda 2 |
| Sonda display | 0x0104 | XR170C | Profilo EpiSensor; Dixell, sonda 3 |
| Sonda ambiente | 0x0108 | XR60CX | Profilo EpiSensor |
| Sonda evaporatore | 0x0109 | XR60CX | Profilo EpiSensor |
| Setpoint | 0x0372 | XR77CX | Profilo EpiSensor |
| Setpoint | 0x036C | XR170C | Profilo EpiSensor |
| Setpoint | 0x0301 | XR60CX | Profilo EpiSensor |
I parametri utente iniziano a 0x0300, ma il loro ordine cambia tra modelli e versioni firmware: per questo il setpoint si trova a un indirizzo diverso su ciascun modello. Dixell non pubblica gli indirizzi dei parametri per modello nel suo documento generale, e gli indirizzi delle sonde dell'XR60CX provati da EpiSensor differiscono dalla disposizione indicata in quel documento. Verifica ogni registro con il display del controllore prima di farvi affidamento, e registra modello e firmware insieme al profilo.
L'XR60CX richiede un componente in più. Non ha morsetti RS-485. Il suo manuale indica che la linea seriale TTL sul connettore HOT KEY si collega a un sistema di monitoraggio Modbus RTU tramite il convertitore esterno TTL/RS485 XJ485-CX. Collega il lato RS-485 del convertitore allo ZMB. Lo stesso connettore accoglie anche la chiave di programmazione HOT KEY e il display remoto opzionale X-REP, e il manuale precisa che l'X-REP esclude il collegamento seriale.
Ruoli delle sonde: P1 è la sonda termostato (ambiente), P2 la sonda evaporatore, P3 è configurabile e P4 si trova sulla presa HOT KEY. Sull'XR60CX e sull'XR77CX i limiti di allarme predefiniti sono 110 °C per l'alta e −50 °C per la bassa temperatura (ALU e ALL), quindi con le impostazioni di fabbrica gli allarmi di temperatura sono di fatto disattivati.
Sempre in sola lettura
Tutti questi controllori accettano scritture. Danfoss indica come scrivibili il setpoint, il differenziale, i limiti di allarme e l'interruttore generale r12; scrivere 0 in r12 arresta la refrigerazione. Carel consente la scrittura dei parametri e i comandi di sbrinamento, accensione e spegnimento. Dixell accetta le funzioni 06 e 16 sui propri parametri.
Un sistema di monitoraggio non ha alcun motivo di scriverne uno. Configura ogni registro con Write impostato su Read only, e non aggiungere una funzione di scrittura al profilo ZMB di un controllore la cui regolazione non è di tua competenza. I profili EpiSensor elencano le funzioni di scrittura per i setpoint perché il controllore le supporta, non perché vadano usate. Una modifica del setpoint spetta al frigorista, sul controllore.
Messa in servizio della lettura di un controllore
- Registra modello, codice d'ordine e firmware del controllore, e i parametri di configurazione delle sonde.
- Verifica che nessun altro master interroghi il bus.
- Imposta linea seriale e indirizzo, e termina il bus alle due estremità.
- Configura i registri come 16 bit con segno, funzione 03, moltiplicatore 0,1, sola lettura.
- Confronta ogni valore con il display del controllore, compreso un valore negativo su un congelatore.
- Annota quale sonda legge ogni registro (aria, evaporatore o display), così nessuno la scambia per la sonda degli alimenti.
- Verifica lo stato di sbrinamento durante uno sbrinamento reale, se lo usi per bloccare gli allarmi.
La guida alla messa in servizio di Modbus RS-485 tratta il verbale di accettazione completo, e la guida ai limiti critici HACCP spiega come i dati del controllore supportano una registrazione di temperatura senza sostituirla.
Domande frequenti
Il Danfoss EKC 202 supporta Modbus?
Sì, con il modulo di comunicazione dati EKA 178A (084B8564), una scheda a innesto Modbus per gli EKC 202A, B e C. L'indirizzo si imposta nel parametro o03. Il registro Modbus Danfoss è il numero di parametro (PNU) meno uno, letto con la funzione 03, e le temperature sono in decimi di grado.
Come si collega un Dixell XR60CX a Modbus?
L'XR60CX non ha morsetti RS-485. La sua linea seriale TTL si trova sul connettore HOT KEY, e il convertitore Dixell XJ485-CX la trasforma in Modbus RTU su RS-485. Un display X-REP collegato allo stesso connettore esclude la linea seriale.
Quali sono le impostazioni seriali del Carel MPXPRO?
19.200 baud, 8 bit di dati, nessuna parità e 2 bit di stop sulla porta RS-485 di un'unità Master, con l'indirizzo nel parametro H0 (predefinito 199). I protocolli Carel e Modbus sono riconosciuti automaticamente.
Perché un congelatore segna oltre 6.500 °C via Modbus?
Il registro è con segno ma è stato decodificato come senza segno. Una lettura di −18,0 °C viene inviata come −180 in complemento a due, che come numero senza segno vale 65.356, cioè 6.535,6 dopo la scalatura. Imposta il formato dei dati a 16 bit con segno, poi moltiplica per 0,1.
La sonda di un controllore di refrigerazione può essere usata per le registrazioni HACCP?
Non è la scelta ideale. La sonda del controllore è posizionata per la regolazione, di solito nell'aria che entra o esce dall'evaporatore, e la EN 12830 chiede che il registratore sia indipendente dalla misura di regolazione. Usa una sonda indipendente nella posizione degli alimenti più caldi per la registrazione e i dati del controllore per la diagnosi.