OBJECTIVE
This technical information details the new PID cascade algorithm that can be selected within the OpenTherm page of the RegConfig Configurator.
...
The following image shows, within the OpenTherm page of the RegConfig, the position of the Heating System Cascade control Algorithm Control section (red) and the Secondary Heating Buffer tank Compensation Temperature Compensation section (blue), closely related to the PID cascade algorithm:PHOTO TBD
...
The cascade algorithm can be of three types:
...
Enabled OpenTherm generators are those generators that have a number (which can range from 1, highest priority, to 8, lowest priority) in the Generators section (highlighted in green) on the OpenTherm page and not OFF in the box corresponding to the “Heat/Cool” column. The number indicates the priority of the call, so in the image below G1 and G3 generators have priority 1 (they are called first), while G2 has priority 2 and G4 priority 3:
...
Attenzione: non utilizzare G0 in quanto è il generatore OpenTherm utilizzato con il prodotto DOT, non con il sistema REG, quindi nella logica di cascata non viene mai considerato. Warning
Do not use G0 as it is the OpenTherm generator used with the DOT product, not with the REG system, therefore it is never considerate in the cascade logic.
...
The system assumes that the sensor used by the “PID Cascade” algorithm is the same one used by the “Buffer tank compensation temperature” function, and it is therefore set via the “Buffer tank Sensor” parameter.
E' però importante sottolineare che “Cascata PID” e “Compensazione Temp. Secondario” sono due funzioni diverse e separate, che possono funzionare in maniera congiunta o disgiunta (per es. la funzione “Compensazione Temp. Secondario” può essere utilizzata anche per altri tipi di algoritmi di cascata, ed anche per il funzionamento parallelo), che incidentalmente “condividono” lo stesso sensore, in quanto l’esigenza per entrambi gli algoritmi è quella di monitorare la temperatura “finale” fornita dall’insieme dei generatori.
Nota
La funzione “Compensazione Temp. Secondario” non è oggetto del presente bollettino tecnico, che si concentra invece sulla “Cascata PID”
Una volta definito il sensore di riferimento per l’algoritmo PI di cascata si può procedere ad inserire i valori che hanno effetto sul valore della variabile in uscita del controllo PI, cioè quanti generatori OpenTherm devono essere accesi e quando:
PHOTO TBD
...
Pausa tra variazioni (s): la variazione è il cambiamento corrispondente all’accensione o allo spegnimento di un generatore OpenTherm. La pausa tra due variazioni è il tempo minimo che trascorre tra l’accensione o lo spegnimento di un generatore OpenTherm e la successiva accensione (o successivo spegnimento) di un altro generatore OpenTherm. Ad esempio se al tempo x viene acceso un generatore, per il tempo indicato nella casella Pausa tra variazione, l’algoritmo non aggiungerà o toglierà generatori (anche se il risultato del calcolo lo richiederebbe) per dare il tempo ai generatori accesi di andare a regime e di vedere gli effetti sull’impianto;
...
However, it is important to underline that “PID Cascade” and “Buffer Tank Compensation Temperature” are two different and separate functions, which can operate together or separately (e.g., the “Buffer Tank Compensation Temperature” can be also used for other types of cascade algorithms, and also for Parallel functioning), which incidentally “share” the same sensor, as the requirement for both algorithms is to monitor the “final” temperature provided by the group of generators.
Note
The “Buffer Tank Compensation Temperature” is not the subject of this technical part, which instead focuses on the “PID Cascade”.
Once the reference sensor for the cascade PI algorithm has been defined, it is possible to enter the values that affect the PI control output variable, that is how many OpenTherm generators are to be switched on and when:
...
Stop between changes (s): the variation is the change corresponding to the switching on or off of an OpenTherm generator. The pause between two variations it the minimum time that passes between the switching on or off of an OpenTherm generator and its subsequent switching on (or subsequent switching off) of another OpenTherm generator. For example, if at time x a generator is switched on, for the time indicated in the Stop between changes box, the algorithm will not add or remove generators (even though the result of the calculation would require it) to give the switched-on generators time to get up to speed and see the effects on the system;
Pid P (dimensionless): Proportional parameter in the calculation of the number of OpenTherm generators to be switched on or off. The proportional parameter depends on the difference between the desired set point and the current temperature read by the sensor used for the PI controller:
Pid P = 160 / delta T
quindi se si desidera che con un delta T di 4 K venga subito attivato un generatore, allora il valore di Pid P da inserire è so, if it desired that with a delta T of 4 K a generator is immediately switched on, then the value of Pid P to be entered is 40 (160 / 4). Più il parametro proporzionale è alto più sarà veloce l’accensione di generatori40). The higher the proportional parameter, the faster the generators will be switched on.
Pid I (adimensionale): parametro Integrale nel calcolo del numero di generatori OpenTherm da accendere o da spegnere. Il parametro integrale completa il parametro proporzionale tenendo conto del tempo che il sistema impiega per avvicinarsi al set point desiderato. Per determinare il parametro Pid I si ipotizzi che il delta T dopo l’accensione del primo generatore sia passato da 4 K a 2 K e che si voglia accendere anche un secondo generatore dopo 5 minuti (ad esempiodimensionless): Integral parameter in the calculation of the number of OpenTherm generators to be switched on or off. The integral parameter complements the proportional parameter by taking into account the time the system takes to approach the desired set point. To determine the Pid I parameter, let us assume that the delta T, after switching on the first generator, has changed from 4 K to 2 K and that a second generator is to be switched on after 5 minutes (for example):
Pid I = 1740 / delta T * T ritardo
...
delay
so, if we consider a delta T of 4 K and a delay T of 5 minutes before switching on a second generator, then the value of Pid I to be entered is 87 (1740 / 4 * 5). Più il parametro Pid I è basso più tempo passerà prima di aggiungere un ulteriore generatore.NB: i valori 160 e 1740 sono stati ricavati da formule implementate per questo specifico algoritmoThe lower the Pid I parameter, the more time will pass before an additional generator is added.
Note
The values 160 and 1740 were derived from formulas implemented for this specific algorithm!
N. Generatori Start : indica il numero di generatori che vengono accessi partendo dalla condizione “tutti i generatori OpenTherm sono spenti”. Ad esempio si ipotizza di porre il numero di generatori Start pari a 2: si è nella condizione “tutti i generatori OpenTherm sono spenti” e l’algoritmo di cascata ha come risultato l’accensione di un solo generatore, però come minimo ne accende 2 contemporaneamente. Dopo l’accensione (e quindi perlomeno dopo il tempo indicato da “Pausa tra variazioni”) l’algoritmo potrà valutare se il numero di generatori è congruo alla richiesta dell’impianto (e quindi lasciarlo invariato), oppure diminuirlo o aumentarlo; il numero di generatori allo start è utile nel caso in cui ci siano impianti con molti generatori. Si supponga di avere un impianto con 8 generatori: se il sistema parte con un solo generatore e poi ogni “Pausa tra variazioni” (tipicamente 3 minuti) ne aggiunge un altro, passeranno almeno 21 minuti prima che il sistema vada a pieno regime; impostando invece il numero iniziale a 4 il sistema parte subito con 4 generatori, e poi si deciderà se aumentare tale numero (e comunque al massimo in 12 minuti andrebbe al massimo) o diminuirlo.N. Generatori Minimo:indica il numero minimo di generatori attivi. Se per esempio è impostato su 3 e attualmente sono attivi 3 generatori, anche se l’algoritmo di cascata determinasse la necessità di spegnere un ulteriore generatore, non ne verrebbe spento nessuno; detto in altro modo non verrebbero mai lasciati accesi meno di 3 generatori (nota bene: si intende che il sistema REG abilita 3 generatori i quali possono poi decidere di spegnere la fiamma/il compressore, perché determinano che la loro temperatura di mandata è soddisfatta);
N. Generatori Massimo: indica il numero massimo di generatori che possono essere contemporaneamente accesi. Se sono abilitati 5 generatori, ma il numero massimo è pari a 3 significa che al massimo l’algoritmo può accendere 3 generatori anche se ne servirebbero 4. Questa scelta ha come conseguenza diretta il fatto che il set point potrebbe non essere mai raggiunto o potrebbe essere raggiunto, ma in un arco di tempo molto lungo.
I parametri Power e Temperatura degradata fanno riferimento all'algoritmo di controllo Cascata di Potenza, quindi i valori inseriti vengono ignorati in caso si selezioni l’algoritmo di controllo PI di Cascata.
Il risultato delle impostazioni effettuate è visualizzato nella parte in alto a destra della pagina OpenTherm “Stato Richiesta Generatori”:
PHOTO TBD
Abilita Set/Riscaldamento: se il quadrato ha la spunta significa che c'è una richiesta ai generatori e nel rettangolo a destra è indicato il set point richiesto. Per le pompe di calore il set point è di riscaldamento o di raffrescamento. Se il quadrato non è spuntato e il set point è a zero significa che dai circuiti non sta arrivando nessuna richiesta a OpenTherm.
Abilita Set/Sanitario: se il quadrato ha la spunta significa che c'è una richiesta ai generatori e nel rettangolo a destra è indicato il set point richiesto per la produzione di Acqua calda Sanitaria. Se il quadrato non è spuntato e il set point è a zero significa che dai circuiti o dalla pagina ACS non sta arrivando nessuna richiesta a OpenTherm.
Numero Generatori attivi (cascata): indica quanti generatori sono stati attivati per la cascata in riscaldamento o in raffrescamento (non per la produzione ACS).
l’ultimo rettangolo in basso (riquadro giallo) è il countdown della pausa tra variazioni in centesimi di secondo.
PHOTO TBD
Facendo sempre riferimento all'immagine relativa alla sezione Generatori della pagina OpenTherm:
PHOTO TBD
si fa presente quanto segue:
la produzione di Acqua Calda Sanitaria non risponde all'algoritmo di cascata PI;
l’algoritmo PI accende i generatori OpenTherm in base alla priorità inserita e in base alla richiesta selezionata in terza colonna (Solo Riscaldamento, solo Raffrescamento o Sempre).
Nella parte inferiore della pagina OpenTherm si riporta per ogni generatore il risultato delle richieste di riscaldamento/raffrescamento e ACS (riquadro rosso) e il feedback dai generatori verso il sistema REG (giallo):
PHOTO TBD
Evidenziato in rosso si trova:
la richiesta di R = Riscaldamento, A = ACS e C = Condizionamento;
la temperatura richiesta in riscaldamento o raffrescamento [°C];
la potenza richiesta in riscaldamento o raffrescamento [%].
Se il generatore viene chiamato per la sola produzione ACS sia la temperatura richiesta che la potenza sono a zero, i valori che vengono passati in caso di produzione ACS sono quelli che si visualizzano in Stato Richiesta Generatori (in alto a destra nella pagina OpenTherm).
La pagina OpenTherm può gestire sia caldaie mediante protocollo OpenTherm (senza firmware dedicato) sia pompe di calore o caldaie mediante protocollo Modbus con firmware dedicato. In giallo si evidenziano i valori trasmessi dalla caldaia o dalla pompa di calore e sono strettamente legati a come il produttore dei generatori ha implementato il protocollo OpenTherm sulla caldaia o il protocollo Modbus sulla pompa di calore/caldaia (fare sempre riferimento alla documentazione del generatore a riguardo o nel caso di firmware dedicati alla documentazione fornita con il firmware). Passando con il mouse sopra i vari rettangoli/quadrati compare un tag con una descrizione estesa:
Stato Generatore: indica in che stato si trova il generatore (G = guasto, R = riscaldamento, SA = Acqua sanitaria, F = fiamma, C = condizionamento, ecc.). Se non implementato nessun quadrativo verrà popolato con le spunte.
Temperatura mandata, Temperatura ritorno, Temperatura ACS [°C]: sono le letture dei sensori del generatore se presenti e/o se mappate nel firmware dedicato.
Pot.: potenza erogata dal generatore in %, in kW elettrici, in kW termici (fare riferimento al manuale del produttore della caldaia o al manuale del firmware dedicato).
Errore OT: errori Opentherm più frequenti (Ra = richiesta assistenza, Rr = reset remoto abilitato, Bp = Bassa pressione acqua, ecc.). Nel caso di firmware dedicato fare riferimento alla documentazione fornita per la decodifica.
Errore OEM: indicazione del numero dell’errore, fare riferimento al manuale del generatore per la diagnostica o alla documentazione del firmware dedicato.
Reset: reset dell’errore, funziona solo se implementato o se la caldaia lo gestisce, fare riferimento al manuale del generatore per la diagnostica o alla documentazione del firmware dedicato.
ESEMPIO
Si ipotizza di avere selezionato 1 come numero di generatori Start e Minimo, mentre il numero Massimo è 9:
PHOTO TBD
L’impianto in oggetto ha 4 generatori OpenTherm:
G1 e G3 hanno priorità 1, G1 è abilitato solo in Riscaldamento, mentre G3 è sempre disponibile
G2 ha priorità 2 ed è disponibile solo in Raffrescamento
G4 ha priorità 3 ed è sempre disponibile
Partendo dalla condizione in cui tutti i generatori OpenTherm sono spenti la sequenza di accensione è la seguente:
In Estate G3 → G2 → G4
In Inverno G1 → G3 → G4
A parità di priorità l’accensione segue l’ordine numerico dei generatori per la prima accensione, mentre per le successive accensioni i generatori vengono fatti ruotare.
...
Generators: indicates the number of generators that are switched on starting from the condition “all OpenTherm generators are off”. For example, let us assume that the Start generators number is 2: you are in the condition “all OpenTherm generators are off” and the cascade algorithm results in only one generator switched on, but at least two generators are switched on at the same time. After switch-on (and therefore at least after the time indicated by “Stop between changes”) the algorithm may assess if the number of generators is appropriate to the demand of the system (and therefore leave it unchanged) or decrease or increase it; the number of generators at the start is useful if there are systems with many generators. Let us suppose we have a system with 8 generators: if the system starts with only one generator and then every “Stop between changes” (typically 3 minutes) adds another one, it will pass at least 21 minutes before the system goes at full speed; instead, if we set the initial number at 4, the system starts immediately with 4 generators, and then we decide if increase this number (and, in any case, in 12 minutes it would go to the maximum) or decrease it.
N. Minimum Generators: indicates the minimum number of active generators. If, for example, it is set to 3 and 3 generators are currently active, even if the cascade algorithm were to determine the need to switch off a further generator, none would be switched off; in another way, they would have never less than 3 generators on (Note: this means that the REG System enables 3 generators which can then decide to switch off the flame/compressor, because they determine that their water outlet temperature is satisfied).
N. Maximum Generators: indicates the maximum number of generators that can be switched on at the same time. If 5 generators are enabled, but the maximum number is 3, this means that the algorithm can switch on maximum 3 generators, even though 4 would be needed. This choice has the direct consequence that the set point may never be reached or that may be reached but over a long period of time.
The Power and Degraded Temperature parameters refer to the Power Cascade, so the values entered are ignored if the Cascade PI control algorithm is selected.
The result of the settings made is displayed at the top right of the OpenTherm page “Generator Demand Status”:
...
Enable/set Heating: if the square is ticked, this means that there is a request to the generators and in the rectangle on the right is indicated the required set point. For heat pumps, the set point is either heating or cooling. If the square is not ticked and the set point is zero, this means that no demand is coming from the circuits to OpenTherm.
Enable/Set DHW: if the square is ticked, this means there is a request to the generators and in the rectangle on the right is indicated the required set point for the production of Domestic Hot Water. If the square is not ticked and the set point is zero, this means that no demand is coming from the circuits or the DHW page to OpenTherm.
N. active generators (cascade): indicate how many generators have been activated for the cascade in heating or cooling (not for DHW production).
The last rectangle at the bottom (yellow box) is the countdown of the Stop between changes in hundredths of a second.
...
Always referring to the image in the Generators section of the OpenTherm page:
...
note the following:
Domestic Hot Water production does not respond to the PI cascade algorithm;
PI algorithm switches on the OpenTherm generators according to the priority entered and according to the request selected in the third column (Only Heat, Only Cool or Always)
The lower part of the OpenTherm page shows for each generator the result of the heating/cooling and DHW requests (red box) and the feedback from the generators to the REG System (yellow):
...
Highlighted in red you have:
The demand for H = Heating, W = DHW, and C = Cooling;
The required temperature in heating or cooling [°C];
The power required in heating or cooling [%].
Warning
If the generator is used for DHW production only both the required temperature and power are zero, the values that are passed in case of DHW production are those that are displayed in Generator Demand Status (top right of the OpenTherm page)
The OpenTherm page can manage both boiler via OpenTherm protocol (without dedicated firmware) and heat pumps or boilers via Modbus protocol with dedicated firmware. In yellow are highlighted the values transmitted by the boiler or the heat pump and are closely linked to how the generators’ manufacturer has implemented the OpenTherm protocol on the boiler or the Modbus protocol on the heat pump/boiler (always refer to the documentation of the generator or, in the case of dedicated firmware, to the documentation supplied with the firmware). By hovering the mouse over the various rectangles/squares, a tag with extended description appears:
Generators Status: indicates in which status the generator is (F = fault, H = heating, D = domestic hot water, F = flame, C = cooling etc.) If not implemented, no square will be ticked.
Water outlet temperature (T outlet), Water inlet Temperature (T inlet), DHW Temperature [°C]: are the readings of the generator sensors if present and/or if mapped in the dedicated firmware.
Pow.: power delivered by the generator in %, in electric kW, in thermal kW (refer to boiler manufacturer’s manual or to the dedicated firmware manual).
OT error: most frequent OpenTherm error (Ts = service request, Rr = remote reset enabled, Lp = low water pressure, etc.). In the case of dedicated firmware, refer to the documentation provided for decoding.
OEM Error: indication of the number of the error, refer to generator manual for diagnostic or to the dedicated firmware documentation.
Reset: reset of the error, it only works if implemented or if the boiler manages it; refer to the generator manual for diagnostic or to the dedicated firmware documentation.
EXAMPLE
Let us assume we have selected 1 as the number of Start and Minimum generators, while the maximum number is 9:
...
The hypothetical system has 4 OpenTherm generators:
G1 and G3 has priority 1, G1 is enabled only in Heating, while G3 is always available.
G2 has priority 2 and is available only in Cooling
G4 has priority 3 and it is always available
Starting from the condition “all the OpenTherm generators are switched off”, the switch-on sequence is as follows:
In Summer G3 → G2 → G4
In Winter G1 → G3 → G4
With equal priority, the power on follows the numerical order of the generators for the first power on, while for the subsequent power on the generators are rotated.
In Summer no generator has the same priority, so the order will always be the same (G3 → G2 → G4).
In Inverno Winter G1 e G3 hanno la stessa priorità, durante la prima accensione la sequenza è G1 e poi G3, alla seconda accensione verrà acceso prima G3 e poi G1. G4 seguirà sempre in quanto ha una priorità più bassa.
Per quanto riguarda lo spegnimento vale la regola del “First On First Off”, quindi, prendendo il caso invernale, se per primo è stato acceso G1 poi G3 e infine G4, il primo a spegnersi sarà G4 in quanto ha priorità più bassa, poi tra G1 e G3 (che hanno la stessa priorità) il primo a spegnarsi è il primo che si era accesso, quindi G1.
Per quanto riguarda i parametri del controllo PI si è deciso di inserire 600 s, il che significa che per almeno 10 minuti dopo l’accensione o lo spegnimento di un generatore il sistema non modificherà il numero di generatori accesi. Mentre il delta T per cui il sistema deve subito inserire un generatore è 2 K, quindi si utilizza il valore 80 per Pid P, il tempo di ritardo per l’accensione del secondo generatore è di circa 20 minuti inserendo un Pid I di 40and G3 have the same priority, during the first ignition the sequence is G1 and then G3, at the second ignition G3 will be switched on first and then G1. G4 will always follow as it has a lower priority.
Concerning the switch off, the “First On First Off” rule applies, therefore, taking the winter case, if G1 was switched first, then G3 and finally G4, the first to switch off will be G4 as it has a lower priority, then between G1 and G3 (that have the same priority) the first to switch off is the first one that was switched on, therefore G1.
Concerning the PI control parameters, it was decided to include 600 s, which means that for at least 10 minutes after a generator is switched on or off, the system will not change the number of generators switched on. While the delta T for which the system must immediately enter a generator is 2 K, so the value 80 is used for Pid P, by entering a Pid I of 40 the delay time for switching on the second generator is approximately 20 minutes.