
Șablonul SVC este o integrare generică Modbus TCP pentru un controler de pompă de căldură aer-apă reversibilă, care pune la dispoziție în rețeaua locală senzori, selectarea modului și trei termostate (pentru încălzirea spațiului, răcirea spațiului și apa caldă menajeră). TapHome se conectează direct la interfața Ethernet a pompei de căldură — nu este nevoie de cablaj RS-485 și nici de gateway.
Identitatea producătorului nu este confirmată. Textul
SVCprovine din câmpul<Producer>al șablonului XML TapHome original și este aproape sigur o denumire generică / whitelabel, nu o marcă pentru consumatori. Înainte de a importa acest șablon, verificați dacă controlerul dvs. folosește exact harta de registre descrisă mai jos (registre holdingH:0–H:34, modul laH:30cu valorile0–6, temperatura apei la ieșire laH:8, temperaturile setate ale termostatelor de încălzire/răcire laH:31/H:32cu scalare ×1, temperatura setată a termostatului rezervorului laH:33cu scalare ×10). Dacă vreun registru nu corespunde, șablonul va citi greșit sau va configura greșit dispozitivul.
Harta de registre, enumerarea modurilor și scalarea descrise pe această pagină sunt preluate direct din XML-ul canonic TapHome. Nu este disponibil niciun manual al producătorului.
Conectarea hardware
Controlerul SVC folosește modelul CCU ModbusTcpCCU, adică TapHome comunică prin Modbus TCP direct cu interfața LAN a pompei de căldură.
- Protocol: Modbus TCP
- Port: 502 (standard)
- Tip de registre: toate sunt registre holding (H)
- Tip de date: toate registrele sunt
Int16, big-endian - Ordinea octeților: standard Modbus (mai întâi octetul cel mai semnificativ)
- Interval de registre:
H:0 – H:34(registrele 9–14, 17–19, 21–23 și 27–29 nu sunt folosite de șablon și nu trebuie presupus că există în controler)
Cerințe de rețea
- Conectați portul Ethernet / LAN al pompei de căldură la aceeași rețea locală ca TapHome Core.
- Atribuiți pompei de căldură o adresă IP stabilă — fie setați o adresă IP statică în controler, fie adăugați în router o rezervare DHCP după adresa MAC. Valoarea implicită din șablon,
192.168.0.1, este doar un substituent. - Asigurați-vă că niciun firewall dintre TapHome Core și pompa de căldură nu blochează portul TCP 502.
Șablonul nu folosește descoperirea mDNS / Zeroconf — adresa IP a pompei de căldură trebuie introdusă manual la import.
Configurare
Activarea comunicației Modbus
Deoarece producătorul acestui controler nu este cunoscut, aici nu este descrisă o procedură specifică producătorului. Procedura generală pentru această categorie de controlere de pompe de căldură este:
- Intrați în meniul de service / instalator de pe controlerul cu fir al pompei de căldură sau de pe afișajul integrat (de obicei protejat cu PIN).
- Găsiți secțiunea comunicație sau setări de rețea.
- Activați Modbus TCP, dacă nu este activ implicit.
- Setați adresa IP (se recomandă una statică) și, dacă este cazul, masca de subrețea și gateway-ul.
- Confirmați sau setați ID-ul slave (unit) Modbus — valoarea implicită din șablon este
1. - Salvați și, dacă este necesar, reporniți controlerul.
Calea exactă din meniu o găsiți în manualul de service livrat cu unitatea. Dacă Modbus TCP nu apare ca opțiune în meniul controlerului, acest șablon nu poate fi folosit.
Parametri de import
La importul șablonului în TapHome introduceți:
| Parametru | Descriere | Implicit |
|---|---|---|
| Adresă IP | Adresa IP locală a controlerului pompei de căldură | 192.168.0.1 |
| Slave ID | Identificatorul unității Modbus | 1 |
Înainte de import, verificați conectivitatea de pe dispozitivul pe care rulează TapHome Core: trimiteți un ping la adresa IP a pompei de căldură și, dacă este posibil, testați portul TCP 502 cu un instrument precum
ncsau un client Modbus. Astfel descoperiți problemele de rețea înainte să apară ca erori ale șablonului.
Harta de registre
Șablonul folosește următoarele registre holding. Toate registrele sunt Int16. Scalarea temperaturii /10 înseamnă că valoarea întreagă brută se împarte la 10 pentru a obține grade Celsius (de ex. valoarea brută 235 → 23.5 °C).
| Adr. | Denumire | R/W | Scalare | Unitate | Observații |
|---|---|---|---|---|---|
| H:0 | Out ambient temp | R | /10 | °C | Temperatura exterioară la unitatea exterioară |
| H:1 | Out coil temp | R | /10 | °C | Bateria de agent frigorific exterioară |
| H:2 | Discharge temp | R | /10 | °C | Conducta de refulare a compresorului |
| H:3 | Suction temp | R | /10 | °C | Conducta de aspirație a compresorului |
| H:4 | In ambient temp (reversed) | R | /10 | °C | Senzor pe partea interioară; nota „(reversed)” din XML nu este explicată |
| H:5 | Tank temp | R | /10 | °C | Rezervorul tampon ACM; folosit și ca sursă a temperaturii curente pentru termostatul rezervorului |
| H:6 | In coil temp | R | /10 | °C | Bateria de agent frigorific interioară |
| H:7 | In water temp | R | /10 | °C | Intrarea apei în schimbătorul de căldură |
| H:8 | Out water temp | R | /10 | °C | Ieșirea apei din schimbătorul de căldură; folosită și ca sursă a temperaturii curente pentru termostatele de încălzire și de răcire |
| H:15 | Output status | R | brut | — | Număr întreg brut, semnificație nedocumentată |
| H:16 | Run status | R | brut | — | Număr întreg brut, semnificație nedocumentată |
| H:20 | Main valve | R | brut | — | Număr întreg brut, probabil starea vanei de inversare cu 4 căi |
| H:24 | Power [Watt] | R | brut | W | Int16 — se limitează la ±32767 W |
| H:25 | Low pressure [kPa] | R | brut | kPa | Presiunea agentului frigorific pe partea de aspirație |
| H:26 | High pressure [kPa] | R | brut | kPa | Presiunea agentului frigorific pe partea de refulare |
| H:30 | Mode | R/W | enum | — | Consultați Moduri de funcționare mai jos |
| H:31 | Heat thermostat setpoint | R/W | ×1 | °C | Rezoluție în grade întregi |
| H:32 | Cool thermostat setpoint | R/W | ×1 | °C | Rezoluție în grade întregi |
| H:33 | Tank thermostat setpoint | R/W | ×10 | °C | Rezoluție zecimală — se scrie valoarea Se*10 |
| H:34 | Difference temp of restart | R/W | brut | °C | Histerezis / diferențial de repornire |
Scalare asimetrică a termostatelor — ușor de trecut cu vederea. Termostatul rezervorului ACM (
H:33) folosește scalarea×10, iar termostatul de încălzire (H:31) și termostatul de răcire (H:32) folosesc scalarea×1. Astfel, temperatura setată a rezervorului acceptă zecimale (de ex. 48,5 °C), dar temperaturile setate pentru încălzire / răcire acceptă doar grade întregi. Această asimetrie vine din firmware-ul controlerului, nu din TapHome.
XML-ul setează
IsReadOnly=Falsepentru registreleH:15,H:16,H:20,H:24,H:25șiH:26, dar pentru niciunul nu există o formulăWriteState. Prin urmare, în șablon aceste registre sunt practic doar pentru citire.
Funcțiile dispozitivului
Șablonul oferă 20 de dispozitive: senzori, un selector de mod, trei termostate și un parametru pentru diferențialul de repornire.
Senzori de temperatură
Nouă senzori de temperatură doar pentru citire acoperă circuitul de agent frigorific, circuitul hidraulic și condițiile ambientale:
- Temperatură exterioară (
H:0) — temperatura aerului exterior la unitatea exterioară. - Temperatura bateriei exterioare (
H:1) — bateria de agent frigorific de pe partea exterioară (evaporator la încălzire, condensator la răcire). - Temperatura bateriei interioare (
H:6) — bateria de agent frigorific de pe partea interioară (condensator la încălzire, evaporator la răcire). - Temperatura de refulare a compresorului (
H:2) — agentul frigorific cald care iese din compresor. - Temperatura de aspirație a compresorului (
H:3) — agentul frigorific rece care se întoarce în compresor. - Temperatură interioară (reversed) (
H:4) — senzor ambiental pe partea interioară. Sufixul(reversed)este preluat textual din XML; fără documentația producătorului, semnificația lui exactă nu poate fi confirmată — poate indica o polaritate inversată a senzorului sau o amplasare orientată spre interior pe unitatea exterioară. - Temperatură rezervor ACM (
H:5) — rezervorul tampon de apă caldă menajeră. Acest registru este folosit și ca sursă a temperaturii curente pentru termostatul rezervorului ACM. - Temperatura apei la intrare (
H:7) — apa care se întoarce din circuitul hidraulic în schimbătorul de căldură. - Temperatura apei la ieșire (
H:8) — apa care iese din schimbătorul de căldură. Acest registru este folosit și ca sursă a temperaturii curente pentru ambele termostate, de încălzire și de răcire.
Sursă comună a temperaturii curente. Registrele
H:5(Tank temp) șiH:8(Out water temp) sunt folosite fiecare de două ori — o dată ca senzor separat și încă o dată ca sursă a temperaturii curente pentru un termostat. Mai ales termostatul de încălzire și termostatul de răcire citesc amândouăH:8, așa că șablonul nu poate distinge o „temperatură curentă a zonei” separată pentru încălzire și pentru răcire. Controlerul pur și simplu nu oferă senzori de zonă independenți.
Mod de funcționare
Selectorul Mod de funcționare (H:30, citire/scriere) este disponibil ca un comutator cu mai multe valori, cu următoarele opțiuni:
| Valoare | Mod | Semnificație |
|---|---|---|
| 0 | Oprit | Pompa de căldură este oprită |
| 1 | Încălzire | Doar încălzirea spațiului |
| 2 | Încălzire intensivă | Încălzire forțată / boost |
| 3 | Încălzire rezervor | Doar ACM |
| 4 | Răcire | Doar răcirea spațiului |
| 5 | Încălzire + Încălzire rezervor | Încălzirea spațiului combinată cu ACM |
| 6 | Răcire + Încălzire rezervor | Răcirea spațiului combinată cu ACM |
Valorile 7, 8 și 9 apar în XML ca poziții substituent, denumite doar prin cifre — nu sunt moduri valide și nu trebuie folosite.
Termostate
Sunt disponibile trei termostate, fiecare ca dispozitiv TapHome separat, cu propria temperatură setată și o sursă comună a temperaturii curente:
- Termostat încălzire spațiu (
H:31, citire/scriere, scalare ×1) — temperatura setată pentru încălzirea spațiului, în grade întregi. Temperatura curentă se citește dinH:8(Out water temp). - Termostat răcire spațiu (
H:32, citire/scriere, scalare ×1) — temperatura setată pentru răcirea spațiului, în grade întregi. Temperatura curentă se citește tot dinH:8. - Termostat rezervor ACM (
H:33, citire/scriere, scalare ×10) — temperatura setată pentru rezervorul ACM, cu rezoluție zecimală. Temperatura curentă se citește dinH:5(Tank temp). Nu este disponibilă nicio informație despre starea robinetului (ReadValveStateeste fixat la0).
Logica internă a pompei de căldură decide dacă este activă temperatura setată pentru încălzire sau pentru răcire, în funcție de Modul de funcționare selectat în
H:30. Scrierea într-un registru de temperatură setată nu comută singură unitatea între încălzire și răcire — schimbați mai întâi modul, apoi ajustați temperatura setată corespunzătoare.
Putere și presiunile agentului frigorific
- Putere electrică (
H:24) — puterea electrică instantanee absorbită de pompa de căldură, în wați (W). Deoarece registrul esteInt16, valoarea se limitează la ±32767 W; unitățile comerciale mari pot depăși acest interval. - Presiune de aspirație (
H:25) — presiunea agentului frigorific pe partea de aspirație, în kilopascali (kPa). Valorile tipice pe partea de joasă presiune pentru R410A / R32 sunt în intervalul de aproximativ 100–700 kPa. - Presiune de refulare (
H:26) — presiunea agentului frigorific pe partea de refulare, în kilopascali (kPa). Valorile tipice pe partea de înaltă presiune pentru R410A / R32 sunt în intervalul de aproximativ 1500–4500 kPa.
Variabile de stare (brute)
Trei registre de stare sunt disponibile ca valori brute Int16, deoarece producătorul controlerului nu a documentat pentru ele nicio mască de biți sau enumerare:
- Stare ieșiri (
H:15) - Stare funcționare (
H:16) - Starea vanei principale (
H:20) — probabil starea vanei de inversare cu 4 căi (calea agentului frigorific pentru încălzire sau răcire), dar această interpretare nu este confirmată.
Aceste valori pot fi monitorizate pentru a detecta modificări, dar fără documentația producătorului nu pot fi transformate în etichete ușor de înțeles.
Parametru de service
- Diferențial de temperatură pentru repornire (
H:34, citire/scriere, număr întreg brut în °C) — valoarea histerezisului care stabilește cu câte grade sub temperatura setată activă trebuie să scadă temperatura înainte de repornirea compresorului. Controlerele obișnuite din această categorie folosesc valori între 1 și 15 °C, dar intervalul valid pentru acest dispozitiv concret nu a fost verificat.
Depanare
Nu există comunicare Modbus
- Verificați dacă portul Ethernet al pompei de căldură este conectat fizic și legătura de rețea este activă (verificați LED-ul de stare a rețelei de pe controler, dacă există).
- Verificați adresa IP — în meniul de setări de rețea al controlerului sau în tabelul de alocări DHCP al routerului.
- Asigurați-vă că TapHome Core și pompa de căldură sunt în aceeași subrețea sau că rutarea dintre subrețele permite portul TCP 502.
- Verificați dacă nicio regulă de firewall sau VLAN nu blochează portul 502.
- Confirmați că Modbus TCP este într-adevăr activat în meniul de service al controlerului (unele controlere sunt livrate cu el dezactivat implicit).
Valorile sunt vizibil greșite (temperaturi aberante, numere imposibile)
Dacă temperaturile apar ca mii de grade, presiunile ca numere foarte mici sau selectorul de mod arată valori necunoscute, pompa dvs. de căldură folosește cel mai probabil o altă hartă de registre decât cea pe care o așteaptă acest șablon. Eticheta SVC acoperă un controler OEM neidentificat — alte pompe de căldură OEM (SPRSUN / Carel, Fairland, Gree Versati, Midea / Clivet / Kaisai, LG Therma V, Aermec, Sibotherm) folosesc toate alte structuri de registre. Nu lăsați șablonul să ruleze cu un dispozitiv care nu corespunde, deoarece scrierile în registrele de mod și de termostat ar putea modifica setări fără legătură.
Modificările temperaturii setate par „înjumătățite” sau „înzecite”
Aproape întotdeauna este vorba de o nepotrivire a scalării. Termostatul rezervorului (H:33) folosește scalarea ×10, iar termostatele de încălzire (H:31) și de răcire (H:32) folosesc scalarea ×1. Dacă temperatura setată se aplică de 10 ori mai mare sau mai mică decât vă așteptați, verificați dacă scrieți în termostatul corect — șablonul aplică deja scalarea corectă pentru fiecare dispozitiv, așa că cea mai probabilă cauză este că firmware-ul controlerului diferă de harta presupusă.
Termostatele de încălzire și răcire arată aceeași temperatură curentă
Este normal. Atât termostatul de încălzire, cât și termostatul de răcire citesc temperatura curentă din registrul H:8 (Temperatura apei la ieșire). Șablonul nu poate separa „temperatura curentă a zonei de încălzire” de „temperatura curentă a zonei de răcire”, deoarece controlerul oferă un singur senzor la ieșire. Dacă aveți nevoie de senzori de zonă separați, adăugați senzori de temperatură TapHome separați (conectați direct la intrările TapHome).
Puterea rămâne la 32767 sau –32768
Registrul de putere H:24 este un număr întreg cu semn pe 16 biți, așa că un consum instantaneu de peste 32 767 W (32,77 kW) produce depășire. Acest lucru afectează doar unitățile comerciale mari — unitățile rezidențiale rămân de obicei mult sub această limită.