TapHome

Sistema Sistema-Home 4..18(T)

Modbus RTU
Dodane przez
Ostatnia aktualizacja: 04. 2026

Wymaga zewnętrznej bramki

TapHome Modbus RTU CCU — strona produktu

Sistema Sistema-Home 4..18(T)

Sistema-Home 4..18(T) to dwuobwodowa pompa ciepła komunikująca się przez Modbus RTU (RS-485). Szablon TapHome zapewnia sterowanie trybem pracy z trybami ogrzewania, chłodzenia i CWU, regulację wartości zadanych dla obwodu grzewczego i chłodniczego, wartość zadaną temperatury CWU oraz kompleksowe monitorowanie temperatur wody, ciśnień czynnika chłodniczego, prędkości wentylatora i pompy oraz przepływu wody. Szablon raportuje również 80+ kodów błędów z regulatora pompy ciepła za pośrednictwem rejestrów bitowych.

Regulator jest prawdopodobnie oparty na platformie CAREL pCO (typowej dla włoskich pomp ciepła OEM). Mapa rejestrów jest zastrzeżona, a wszystkie informacje techniczne w tym szablonie pochodzą wyłącznie z szablonu XML — producent nie udostępnia żadnej publicznej dokumentacji.

Podłączenie sprzętowe

Sistema-Home 4..18(T) łączy się z TapHome przez bramkę Modbus RTU CCU za pomocą magistrali szeregowej RS-485. Domyślne parametry komunikacji to 9600 baud, 8 bitów danych, parzystość parzysta, 1 bit stopu, Slave ID 1.

Podłącz okablowanie RS-485 między portem Modbus pompy ciepła a TapHome Modbus RTU CCU:

  • A+ na pompie ciepła → A+/D+ na TapHome RS-485
  • B- na pompie ciepła → B-/D- na TapHome RS-485
  • GNDGND (obowiązkowe dla niezawodnej komunikacji)

Przewód GND musi być połączony między pompą ciepła a bramką TapHome. Bez prawidłowego uziemienia błędy komunikacji Modbus są prawdopodobne, szczególnie przy dłuższych trasach kablowych.

Konfiguracja

Włączenie zdalnego zapisu

Szablon automatycznie włącza zdalny dostęp do zapisu przy każdym cyklu odpytywania, ustawiając bit 0 rejestru H:7201. Oznacza to, że pompa ciepła akceptuje zmiany wartości zadanych i trybów z TapHome natychmiast po zaimportowaniu szablonu — ręczna konfiguracja tego rejestru nie jest wymagana.

Parametry komunikacji

Sprawdź, czy poniższe ustawienia są zgodne między pompą ciepła a TapHome:

ParametrWartość
Prędkość transmisji9600
Bity danych8
ParzystośćParzysta
Bity stopu1
Slave ID1 (domyślny)

Jeśli Slave ID na pompie ciepła różni się od 1, zaktualizuj parametr importu Slave ID w TapHome.

Funkcje urządzeń

Sterowanie trybem pracy

Urządzenie Active Mode wybiera tryb pracy pompy ciepła. Dostępne tryby:

WartośćTrybOpis
0Stand byPompa ciepła w trybie gotowości
1CoolTylko chłodzenie
2HeatTylko ogrzewanie
4SanitaryTylko produkcja CWU
5Cool+DHWChłodzenie z CWU
6Heat+DHWOgrzewanie z CWU

Wartości trybów 3, 7, 8 i 9 są zdefiniowane w szablonie, ale nie mają znaczących nazw — wyświetlane są jako zastępcze cyfry i mogą być zarezerwowane lub nieużywane w tej wersji regulatora.

Akcja serwisowa DHW (Sanitary) Setpoint na urządzeniu Active Mode pozwala ustawić temperaturę docelową ciepłej wody użytkowej (zakres 25–55 °C).

Regulacja wartości zadanych

Dwa urządzenia termostatowe sterują wartościami zadanymi ogrzewania i chłodzenia:

  • Heat Setpoint — odczyt/zapis wartości zadanej ogrzewania (H:1002). Referencyjna temperatura bieżąca pochodzi z czujnika zbiornika mieszającego (H:440).
  • Cool Setpoint — odczyt/zapis wartości zadanej chłodzenia (H:1001). Używa tej samej temperatury zbiornika mieszającego jako wartości bieżącej.

Obie wartości zadane wykorzystują konwersję ×10 (np. wartość rejestru 350 = 35,0 °C).

Monitorowanie temperatur

Sześć czujników temperatury zapewnia monitorowanie termiczne w całym systemie:

  • Outside Temperature — temperatura zewnętrzna (H:428, odpytywanie co 30 s)
  • Plant Temperature (Mixing Tank) — temperatura zbiornika buforowego/mieszającego (H:440), używana również jako referencyjna temperatura bieżąca dla obu termostatów
  • Water Inlet Temperature — temperatura wody na wlocie wymiennika ciepła (H:400)
  • Water Outlet Temperature — temperatura wody na wylocie wymiennika ciepła (H:401)
  • DHW Temperature — temperatura zasobnika ciepłej wody użytkowej (H:405), z wykrywaniem usterek (zgłasza ostrzeżenie, jeśli czujnik odczytuje “Not configured” lub “Fault”)
  • Compressor Discharge Temperature — temperatura tłoczenia sprężarki 1 (H:433), z 7 atrybutami serwisowymi obejmującymi temperatury tłoczenia dla wszystkich sprężarek w obu obwodach czynnika chłodniczego

Urządzenie szablonu o nazwie “Compressor inhalation” w rzeczywistości odczytuje rejestr H:433, który zgodnie z mapą rejestrów odpowiada tłoczeniu sprężarki 1. Rzeczywisty rejestr ssania sprężarki (H:422) nie jest udostępniony jako urządzenie główne. Nazwa wyświetlana w TapHome odzwierciedla skorygowaną funkcję (Compressor Discharge Temperature).

Monitorowanie ciśnień czynnika chłodniczego

Dwa czujniki ciśnienia monitorują obwody czynnika chłodniczego:

  • High Pressure — ciśnienie czynnika chłodniczego po stronie wysokiej w bar (H:406), z atrybutem serwisowym dla obwodu 2 (H:20406)
  • Low Pressure — ciśnienie czynnika chłodniczego po stronie niskiej w bar (H:414), z atrybutem serwisowym dla obwodu 2 (H:20414)
Prędkość wentylatora i pompy
  • Fan Speed — prędkość wentylatora tylko do odczytu w procentach (H:7000, konwersja ÷1000)
  • Pump Speed — prędkość pompy obiegowej tylko do odczytu w procentach (H:7001, konwersja ÷1000)
Przepływ wody

Czujnik Water Flow Rate mierzy przepływ wody w systemie w l/min (H:444). Zawiera wykrywanie usterek — ostrzeżenie jest generowane, gdy czujnik zgłasza “Not configured” (32766) lub “Fault” (32767).

Atrybut serwisowy stanu Water Flow Rate odczytuje rejestr H:405 (rejestr temperatury CWU) zamiast H:444. Prawdopodobnie jest to błąd szablonu — stan może nie odzwierciedlać dokładnie stanu czujnika przepływu wody.

Monitorowanie czasu pracy sprężarki

Sześć atrybutów serwisowych na poziomie modułu śledzi godziny pracy sprężarek:

  • Compressor 1/2/3 Runtime — godziny kumulatywne dla sprężarek obwodu 1 (H:305, H:307, H:309)
  • Compressor 1/2/3 Runtime (Circuit 2) — godziny kumulatywne dla sprężarek obwodu 2 (H:313, H:315, H:317)
Monitorowanie błędów

Moduł ReadScript monitoruje rejestry od H:950 do H:956 (7 rejestrów bitowych) i raportuje 80+ różnych kodów błędów i ostrzeżeń. Główne kategorie błędów:

  • Usterki obwodu chłodniczego — wysokie ciśnienie (E001), niskie ciśnienie (E002), mróz (E005)
  • Ochrona termiczna — sprężarka (E003, E013, E023), wentylator (E004, E014, E024), pompa (E016, E026)
  • Usterki temperaturowe — wysoka temperatura tłoczenia (E009, E019, E029), wysoka temperatura (E018), niespójne temperatury (E041)
  • Usterki CWU — słaba wymiana ciepła (E042), przegrzanie zasobnika akumulacyjnego (E050), status anty-legionella (E060/E061)
  • Błędy czujników — błędy sond dla do 11 sond w 3 modułach I/O (E611–E713)
  • Usterki falownika — błędy komunikacji, usterki sprzętowe, nadprąd, przegrzanie, usterki napięciowe, błędy kolejności faz, błędy EEPROM dla do 3 falowników (E801–E973)
  • Usterki modułu I/O — moduł 1/2 odłączony (E101, E102)
Dodatkowe funkcje

Regulator pompy ciepła udostępnia również rejestr temperatury ssania sprężarki (H:422) oraz flagę włączenia zdalnego zapisu (H:7201), która jest automatycznie zarządzana przez szablon. Mogą one zostać dodane jako samodzielne urządzenia w przyszłej aktualizacji szablonu, jeśli potrzebne jest bezpośrednie monitorowanie temperatury ssania.

Rozwiązywanie problemów

Brak komunikacji Modbus
  1. Sprawdź okablowanie RS-485 — A+ do A+, B- do B-, GND podłączony
  2. Potwierdź parametry komunikacji: 9600 baud, 8E1, Slave ID 1
  3. Sprawdź długość kabla i terminację — przy długich trasach może być wymagany rezystor terminujący 120 ohm na ostatnim urządzeniu na magistrali
  4. Upewnij się, że interfejs Modbus na regulatorze pompy ciepła jest włączony (sprawdź menu regulatora na miejscu)
Czujniki pokazujące ostrzeżenie “Not configured”

Rejestry zwracające wartość specjalną 32766 wskazują czujnik, który nie jest podłączony lub skonfigurowany na regulatorze pompy ciepła. Jest to oczekiwane dla czujników opcjonalnych (np. sonda CWU na jednostkach bez zasobnika CWU). Ostrzeżenie można potwierdzić w TapHome.

Zmiany trybu nie są stosowane
  1. Sprawdź, czy urządzenie Active Mode pokazuje oczekiwany tryb po zapisie — rejestr odczytu (H:200) i rejestr zapisu (H:7200) są oddzielne, więc może wystąpić krótkie opóźnienie
  2. Sprawdź, czy na regulatorze pompy ciepła nie jest aktywne lokalne nadpisanie lub blokada
  3. Flaga włączenia zdalnego zapisu (H:7201 bit 0) jest ustawiana automatycznie przez szablon — jeśli komunikacja została przerwana, zostanie ponownie włączona w następnym cyklu odpytywania

Dostępne urządzenia

Sistema-Home 4..18(T) Moduł
Atrybuty serwisowe
Czas pracy sprężarki 1
Czas pracy sprężarki 2
Czas pracy sprężarki 3
Czas pracy sprężarki 1 (obwód 2)
Czas pracy sprężarki 2 (obwód 2)
Czas pracy sprężarki 3 (obwód 2)

Sistema-Home 4..18(T) heatpump

Odczyt (moduł)
#Enablement of writing the machine status remotely
var mod := MODBUSR(H, 7201, UINT16);
if(getbit(mod, 0) = 0, MODBUSW(H, 7201, Uint16, SETBIT(mod, 0, 1)));
#Errors
IF(GETBIT(MODBUSR(H, 950, Uint16),0)=1, ADDERROR("High pressure", "E001"));
IF(GETBIT(MODBUSR(H, 950, Uint16),1)=1, ADDERROR("Low pressure", "E002"));
IF(GETBIT(MODBUSR(H, 950, Uint16),2)=1, ADDERROR("Compressor thermal protection", "E003"));
IF(GETBIT(MODBUSR(H, 950, Uint16),3)=1, ADDERROR("Fan thermal protection", "E004"));
IF(GETBIT(MODBUSR(H, 950, Uint16),4)=1, ADDERROR("Frost", "E005"));
IF(GETBIT(MODBUSR(H, 950, Uint16),5)=1, ADDERROR("Lack of flow", "E006"));
IF(GETBIT(MODBUSR(H, 950, Uint16),6)=1, ADDERROR("DHW preparer low temperature", "E007"));
IF(GETBIT(MODBUSR(H, 950, Uint16),7)=1, ADDERROR("Lack of lubrication", "E008"));
IF(GETBIT(MODBUSR(H, 950, Uint16),8)=1, ADDERROR("High discharge temperature of Cp1", "E009"));
IF(GETBIT(MODBUSR(H, 950, Uint16),9)=1, ADDERROR("Solar collector at high temperature", "E010"));
IF(GETBIT(MODBUSR(H, 950, Uint16),12)=1, ADDERROR("Compressor 2 thermal protection", "E013"));
IF(GETBIT(MODBUSR(H, 950, Uint16),13)=1, ADDERROR("Fan 2 thermal protection", "E014"));
IF(GETBIT(MODBUSR(H, 950, Uint16),15)=1, ADDERROR("Pump thermal protection", "E016"));

IF(GETBIT(MODBUSR(H, 951, Uint16),1)=1, ADDERROR("High temperature", "E018"));
IF(GETBIT(MODBUSR(H, 951, Uint16),2)=1, ADDERROR("High discharge temperature of Cp2", "E019"));
IF(GETBIT(MODBUSR(H, 951, Uint16),3)=1, ADDERROR("Inverted pressure transcuders", "E020"));
IF(GETBIT(MODBUSR(H, 951, Uint16),6)=1, ADDERROR("Compressor 3 thermal protection", "E023"));
IF(GETBIT(MODBUSR(H, 951, Uint16),7)=1, ADDERROR("Fan 3 thermal protection", "E024"));
IF(GETBIT(MODBUSR(H, 951, Uint16),9)=1, ADDERROR("Pump 2 thermal protection", "E026"));
IF(GETBIT(MODBUSR(H, 951, Uint16),11)=1, ADDERROR("Incongruent temperatures", "E041"));
IF(GETBIT(MODBUSR(H, 951, Uint16),12)=1, ADDERROR("Poor heat exchange DHW", "E042"));
IF(GETBIT(MODBUSR(H, 951, Uint16),13)=1, ADDERROR("DHW accumulation tank in high temperature", "E050"));
IF(GETBIT(MODBUSR(H, 951, Uint16),14)=1, ADDERROR("I/O module 1 disconnected", "E101"));
IF(GETBIT(MODBUSR(H, 951, Uint16),15)=1, ADDERROR("I/O module 2 disconnected", "E102"));

IF(GETBIT(MODBUSR(H, 952, Uint16),0)=1, ADDERROR("Probe 1 error", "E611"));
IF(GETBIT(MODBUSR(H, 952, Uint16),1)=1, ADDERROR("Probe 2 error", "E621"));
IF(GETBIT(MODBUSR(H, 952, Uint16),2)=1, ADDERROR("Probe 3 error", "E631"));
IF(GETBIT(MODBUSR(H, 952, Uint16),3)=1, ADDERROR("Probe 4 error", "E641"));
IF(GETBIT(MODBUSR(H, 952, Uint16),4)=1, ADDERROR("Probe 5 error", "E651"));
IF(GETBIT(MODBUSR(H, 952, Uint16),5)=1, ADDERROR("Probe 6 error", "E661"));
IF(GETBIT(MODBUSR(H, 952, Uint16),6)=1, ADDERROR("Probe 7 error", "E671"));
IF(GETBIT(MODBUSR(H, 952, Uint16),7)=1, ADDERROR("Probe 8 error", "E681"));
IF(GETBIT(MODBUSR(H, 952, Uint16),8)=1, ADDERROR("Probe 9 error", "E691"));
IF(GETBIT(MODBUSR(H, 952, Uint16),9)=1, ADDERROR("Probe 10 error", "E701"));
IF(GETBIT(MODBUSR(H, 952, Uint16),10)=1, ADDERROR("Probe 11 error", "E711"));
IF(GETBIT(MODBUSR(H, 952, Uint16),11)=1, ADDERROR("Module 1 probe 1 error", "E612"));
IF(GETBIT(MODBUSR(H, 952, Uint16),12)=1, ADDERROR("Module 1 probe 2 error", "E622"));
IF(GETBIT(MODBUSR(H, 952, Uint16),13)=1, ADDERROR("Module 1 probe 3 error", "E632"));
IF(GETBIT(MODBUSR(H, 952, Uint16),14)=1, ADDERROR("Module 1 probe 4 error", "E642"));
IF(GETBIT(MODBUSR(H, 952, Uint16),15)=1, ADDERROR("Module 1 probe 5 error", "E652"));

IF(GETBIT(MODBUSR(H, 953, Uint16),0)=1, ADDERROR("Module 1 probe 6 error", "E662"));
IF(GETBIT(MODBUSR(H, 953, Uint16),1)=1, ADDERROR("Module 1 probe 7 error", "E672"));
IF(GETBIT(MODBUSR(H, 953, Uint16),2)=1, ADDERROR("Module 1 probe 8 error", "E682"));
IF(GETBIT(MODBUSR(H, 953, Uint16),3)=1, ADDERROR("Module 1 probe 9 error", "E692"));
IF(GETBIT(MODBUSR(H, 953, Uint16),4)=1, ADDERROR("Module 1 probe 10 error", "E702"));
IF(GETBIT(MODBUSR(H, 953, Uint16),5)=1, ADDERROR("Module 1 probe 11 error", "E712"));
IF(GETBIT(MODBUSR(H, 953, Uint16),6)=1, ADDERROR("Module 2 probe 1 error", "E613"));
IF(GETBIT(MODBUSR(H, 953, Uint16),7)=1, ADDERROR("Module 2 probe 2 error", "E623"));
IF(GETBIT(MODBUSR(H, 953, Uint16),8)=1, ADDERROR("Module 2 probe 3 error", "E633"));
IF(GETBIT(MODBUSR(H, 953, Uint16),9)=1, ADDERROR("Module 2 probe 4 error", "E643"));
IF(GETBIT(MODBUSR(H, 953, Uint16),10)=1, ADDERROR("Module 2 probe 5 error", "E653"));
IF(GETBIT(MODBUSR(H, 953, Uint16),11)=1, ADDERROR("Module 2 probe 6 error", "E663"));
IF(GETBIT(MODBUSR(H, 953, Uint16),12)=1, ADDERROR("Module 2 probe 7 error", "E673"));
IF(GETBIT(MODBUSR(H, 953, Uint16),13)=1, ADDERROR("Module 2 probe 8 error", "E683"));
IF(GETBIT(MODBUSR(H, 953, Uint16),14)=1, ADDERROR("Module 2 probe 9 error", "E693"));
IF(GETBIT(MODBUSR(H, 953, Uint16),15)=1, ADDERROR("Module 2 probe 10 error", "E703"));

IF(GETBIT(MODBUSR(H, 954, Uint16),0)=1, ADDERROR("Module 2 probe 11 error", "E713"));
IF(GETBIT(MODBUSR(H, 954, Uint16),1)=1, ADDERROR("Link inverter 1", "E801"));
IF(GETBIT(MODBUSR(H, 954, Uint16),2)=1, ADDERROR("Link inverter 2", "E802"));
IF(GETBIT(MODBUSR(H, 954, Uint16),3)=1, ADDERROR("Link inverter 3", "E803"));
IF(GETBIT(MODBUSR(H, 954, Uint16),4)=1, ADDERROR("Hardware fault inverter 1", "E851"));
IF(GETBIT(MODBUSR(H, 954, Uint16),5)=1, ADDERROR("Hardware fault inverter 2", "E852"));
IF(GETBIT(MODBUSR(H, 954, Uint16),6)=1, ADDERROR("Hardware fault inverter 3", "E853"));
IF(GETBIT(MODBUSR(H, 954, Uint16),7)=1, ADDERROR("Overcurrent inverter 1", "E861"));
IF(GETBIT(MODBUSR(H, 954, Uint16),8)=1, ADDERROR("Overcurrent inverter 2", "E862"));
IF(GETBIT(MODBUSR(H, 954, Uint16),9)=1, ADDERROR("Overcurrent inverter 3", "E863"));
IF(GETBIT(MODBUSR(H, 954, Uint16),10)=1, ADDERROR("High temperature inverter 1", "E871"));
IF(GETBIT(MODBUSR(H, 954, Uint16),11)=1, ADDERROR("High temperature inverter 2", "E872"));
IF(GETBIT(MODBUSR(H, 954, Uint16),12)=1, ADDERROR("High temperature inverter 3", "E873"));
IF(GETBIT(MODBUSR(H, 954, Uint16),13)=1, ADDERROR("Bad voltage inverter 1", "E881"));
IF(GETBIT(MODBUSR(H, 954, Uint16),14)=1, ADDERROR("Bad voltage inverter 2", "E882"));
IF(GETBIT(MODBUSR(H, 954, Uint16),15)=1, ADDERROR("Bad voltage inverter 3", "E883"));

IF(GETBIT(MODBUSR(H, 955, Uint16),0)=1, ADDERROR("Phase sequence inverter 1", "E891"));
IF(GETBIT(MODBUSR(H, 955, Uint16),1)=1, ADDERROR("Phase sequence inverter 2", "E892"));
IF(GETBIT(MODBUSR(H, 955, Uint16),2)=1, ADDERROR("Phase sequence inverter 3", "E893"));
IF(GETBIT(MODBUSR(H, 955, Uint16),3)=1, ADDERROR("Model error inverter 1", "E901"));
IF(GETBIT(MODBUSR(H, 955, Uint16),4)=1, ADDERROR("Model error inverter 2", "E902"));
IF(GETBIT(MODBUSR(H, 955, Uint16),5)=1, ADDERROR("Model error inverter 3", "E903"));
IF(GETBIT(MODBUSR(H, 955, Uint16),6)=1, ADDERROR("Overload error inverter 1", "E911"));
IF(GETBIT(MODBUSR(H, 955, Uint16),7)=1, ADDERROR("Overload error inverter 2", "E912"));
IF(GETBIT(MODBUSR(H, 955, Uint16),8)=1, ADDERROR("Overload error inverter 3", "E913"));
IF(GETBIT(MODBUSR(H, 955, Uint16),9)=1, ADDERROR("Overcurrent PFC inverter 1", "E921"));
IF(GETBIT(MODBUSR(H, 955, Uint16),10)=1, ADDERROR("Overcurrent PFC inverter 2", "E922"));
IF(GETBIT(MODBUSR(H, 955, Uint16),11)=1, ADDERROR("Overcurrent PFC inverter 3", "E923"));
IF(GETBIT(MODBUSR(H, 955, Uint16),12)=1, ADDERROR("Internal communication error inverter 1", "E931"));
IF(GETBIT(MODBUSR(H, 955, Uint16),13)=1, ADDERROR("Internal communication error inverter 2", "E932"));
IF(GETBIT(MODBUSR(H, 955, Uint16),14)=1, ADDERROR("Internal communication error inverter 3", "E933"));
IF(GETBIT(MODBUSR(H, 955, Uint16),15)=1, ADDERROR("Fault PFC inverter 1", "E941"));

IF(GETBIT(MODBUSR(H, 956, Uint16),0)=1, ADDERROR("Fault PFC inverter 2", "E942"));
IF(GETBIT(MODBUSR(H, 956, Uint16),1)=1, ADDERROR("Fault PFC inverter 3", "E943"));
IF(GETBIT(MODBUSR(H, 956, Uint16),2)=1, ADDERROR("Probe error inverter 1", "E951"));
IF(GETBIT(MODBUSR(H, 956, Uint16),3)=1, ADDERROR("Probe error inverter 2", "E952"));
IF(GETBIT(MODBUSR(H, 956, Uint16),4)=1, ADDERROR("Probe error inverter 3", "E953"));
IF(GETBIT(MODBUSR(H, 956, Uint16),5)=1, ADDERROR("Abnormal condition inverter 1", "E961"));
IF(GETBIT(MODBUSR(H, 956, Uint16),6)=1, ADDERROR("Abnormal condition inverter 2", "E962"));
IF(GETBIT(MODBUSR(H, 956, Uint16),7)=1, ADDERROR("Abnormal condition inverter 3", "E963"));
IF(GETBIT(MODBUSR(H, 956, Uint16),8)=1, ADDERROR("Inverter 1 EEPROM error", "E971"));
IF(GETBIT(MODBUSR(H, 956, Uint16),9)=1, ADDERROR("Inverter 2 EEPROM error", "E972"));
IF(GETBIT(MODBUSR(H, 956, Uint16),10)=1, ADDERROR("Inverter 3 EEPROM error", "E973"));
IF(GETBIT(MODBUSR(H, 956, Uint16),11)=1, ADDERROR("High discharge temperature of Cp3", "E029"));
IF(GETBIT(MODBUSR(H, 956, Uint16),12)=1, ADDWARNING("Anti-legionella performed correctly", "E060"));
IF(GETBIT(MODBUSR(H, 956, Uint16),13)=1, ADDERROR("Anti-legionella failed or stopped", "E061"));
Atrybuty serwisowe
Compressor 1 runtime
MODBUSR(H, 305, Uint16) + "h"
Compressor 2 runtime
MODBUSR(H, 307, Uint16) + "h"
Compressor 3 runtime
MODBUSR(H, 309, Uint16) + "h"
Compressor 1 runtime (circuit 2)
MODBUSR(H, 313, Uint16) + "h"
Compressor 2 runtime (circuit 2)
MODBUSR(H, 315, Uint16) + "h"
Compressor 3 runtime (circuit 2)
MODBUSR(H, 317, Uint16) + "h"
Tryb aktywny Przełącznik wielowartościowy

Wybór trybu pracy — Stand by, Cool, Heat, Sanitary (CWU), Cool+DHW, Heat+DHW

Rejestr: H:200H:7200 Int16 numeric
Wartości / Stany: Stand by · Cool · Heat · Sanitary · Cool+DHW · Heat+DHW
Akcje serwisowe
Wartość zadana CWUUstawienie temperatury docelowej ciepłej wody użytkowej (25–55 °C)

Tryb aktywny

Odczyt stanu przełącznika
MODBUSR(H, 200, Int16)
Zapis stanu przełącznika
MODBUSW(H, 7200, int16, Mu)
Akcje serwisowe
DHW (sanitary) setpoint
Parametry: Temp setpoint (25–55 ts)
MODBUSW(H, 7205, Uint16, ts*10);
Temperatura tłoczenia sprężarki Czujnik temperatury Tylko do odczytu

Temperatura tłoczenia sprężarki 1 z atrybutami serwisowymi dla wszystkich czujników tłoczenia sprężarek w obu obwodach

Rejestr: H:433 Int16 Jednostka: °C numeric
Atrybuty serwisowe
Tłoczenie sprężarki 1
Tłoczenie sprężarki 2
Tłoczenie sprężarki 3
Ssanie sprężarki (obwód 2)
Tłoczenie sprężarki 1 (obwód 2)
Tłoczenie sprężarki 2 (obwód 2)
Tłoczenie sprężarki 3 (obwód 2)

Temperatura tłoczenia sprężarki

Odczyt temperatury
MODBUSR(H, 433, Int16) / 10
Atrybuty serwisowe
Compressor discharge 1
var temp := MODBUSR(H, 433, Int16);
if(temp = 32766, "Not configured", temp/10 + "°C");
Compressor discharge 2
var temp := MODBUSR(H, 434, Int16);
if(temp = 32766, "Not configured", temp/10 + "°C");
Compressor discharge 3
var temp := MODBUSR(H, 435, Int16);
if(temp = 32766, "Not configured", temp/10 + "°C");
Compressor inhalation (circuit 2)
var temp := MODBUSR(H, 20422, Int16);
if(temp = 32766, "Not configured", temp/10 + "°C");
Compressor 1 discharge (circuit 2)
var temp := MODBUSR(H, 20433, Int16);
if(temp = 32766, "Not configured", temp/10 + "°C");
Compressor 2 discharge (circuit 2)
var temp := MODBUSR(H, 20434, Int16);
if(temp = 32766, "Not configured", temp/10 + "°C");
Compressor 3 discharge (circuit 2)
var temp := MODBUSR(H, 20435, Int16);
if(temp = 32766, "Not configured", temp/10 + "°C");
Wartość zadana chłodzenia Termostat

Termostat wartości zadanej chłodzenia — temperatura bieżąca ze zbiornika mieszającego

Rejestr: H:1001 Int16 Jednostka: °C numeric

Wartość zadana chłodzenia

Odczyt temperatury
MODBUSR(H, 440, Int16)/10
Odczyt temperatury zadanej
MODBUSR(H, 1001, Int16) / 10
Zapis temperatury zadanej
MODBUSW(H, 1001, Int16, Se * 10)
Temperatura CWU Czujnik temperatury Tylko do odczytu

Temperatura ciepłej wody użytkowej z wykrywaniem usterek (ostrzeżenia Not configured / Fault)

Rejestr: H:405 Int16 Jednostka: °C numeric
Atrybuty serwisowe
Status

Temperatura CWU

Odczyt temperatury
var reg := MODBUSR(H, 405, Int16);
SWITCH(reg, 32766, ADDWARNING("DHW temperature not configured"), 32767, ADDWARNING("DHW temperature at fault"), Return(reg/10));
Return (nan);
Atrybuty serwisowe
Status
SWITCH(MODBUSR(H, 405, Uint16), 32766, "Not configured", 32767, "Fault", "Ok")
Prędkość wentylatora Ściemniacz Tylko do odczytu

Prędkość wentylatora tylko do odczytu w procentach

Rejestr: H:7000 Int16 Jednostka: % numeric

Prędkość wentylatora

Odczyt poziomu
MODBUSR(H, 7000, Int16)/1000
Wartość zadana ogrzewania Termostat

Termostat wartości zadanej ogrzewania — temperatura bieżąca ze zbiornika mieszającego

Rejestr: H:1002 Int16 Jednostka: °C numeric

Wartość zadana ogrzewania

Odczyt temperatury
MODBUSR(H, 440, Int16)/10
Odczyt temperatury zadanej
MODBUSR(H, 1002, Int16) / 10
Zapis temperatury zadanej
MODBUSW(H, 1002, Int16, Se * 10)
Wysokie ciśnienie Zmienna Tylko do odczytu

Ciśnienie czynnika chłodniczego po stronie wysokiej w bar z atrybutem serwisowym dla obwodu 2

Rejestr: H:406 Int16 Jednostka: bar numeric
Atrybuty serwisowe
Wysokie ciśnienie obwód 2

Wysokie ciśnienie

Odczyt
MODBUSR(H, 406, Int16)/100
Atrybuty serwisowe
High Pressure Circuit 2
MODBUSR(H, 20406, Int16)/100 + " bar"
Niskie ciśnienie Zmienna Tylko do odczytu

Ciśnienie czynnika chłodniczego po stronie niskiej w bar z atrybutem serwisowym dla obwodu 2

Rejestr: H:414 Int16 Jednostka: bar numeric
Atrybuty serwisowe
Niskie ciśnienie obwód 2

Niskie ciśnienie

Odczyt
MODBUSR(H, 414, Int16)/100
Atrybuty serwisowe
Low Pressure Circuit 2
MODBUSR(H, 20414, Int16)/100 + " bar"
Temperatura zewnętrzna Czujnik temperatury Tylko do odczytu
Rejestr: H:428 Int16 Jednostka: °C numeric

Temperatura zewnętrzna

Odczyt temperatury
MODBUSR(H, 428, int16) / 10
Temperatura instalacji (zbiornik mieszający) Czujnik temperatury Tylko do odczytu

Temperatura zbiornika buforowego/mieszającego — używana również jako referencyjna temperatura bieżąca dla termostatów ogrzewania i chłodzenia

Rejestr: H:440 Int16 Jednostka: °C numeric

Temperatura instalacji (zbiornik mieszający)

Odczyt temperatury
MODBUSR(H, 440, Int16)/10
Prędkość pompy Ściemniacz Tylko do odczytu

Prędkość pompy obiegowej tylko do odczytu w procentach

Rejestr: H:7001 Int16 Jednostka: % numeric

Prędkość pompy

Odczyt poziomu
MODBUSR(H, 7001, Int16)/1000
Przepływ wody Zmienna Tylko do odczytu

Przepływ wody w l/min z wykrywaniem usterek (ostrzeżenia Not configured / Fault)

Rejestr: H:444 Int16 Jednostka: l/min numeric
Atrybuty serwisowe
Status

Przepływ wody

Odczyt
var reg := MODBUSR(H, 444, Int16);
SWITCH(reg, 32766, ADDWARNING("Water flow not configured"), 32767, ADDWARNING("Water flow at fault"), Return(reg/10));
Return (nan);
Atrybuty serwisowe
Status
SWITCH(MODBUSR(H, 405, Uint16), 32766, "Not configured", 32767, "Fault", "Ok")
Temperatura wody na wlocie Czujnik temperatury Tylko do odczytu
Rejestr: H:400 Int16 Jednostka: °C numeric

Temperatura wody na wlocie

Odczyt temperatury
MODBUSR(H, 400, Int16) / 10
Temperatura wody na wylocie Czujnik temperatury Tylko do odczytu
Rejestr: H:401 Int16 Jednostka: °C numeric

Temperatura wody na wylocie

Odczyt temperatury
MODBUSR(H, 401, Int16) / 10
Połączenie: Modbus RTU • 9600 baud• 8E1 • Slave ID: $[SlaveId]
Możliwe ulepszenia (2)
  • H:422 Compressor Inhalation Temperature — Int16, /10 = °C. Register H:422 is listed in report but template device named 'Compressor inhalation' actually reads H:433 (discharge). True inhalation temp is not exposed as a primary device
  • H:7201 Remote Write Enable (direct access) — UInt16 bit 0 — module readscript auto-enables this on every poll. Not exposed as a standalone device but could be useful for manual override