TapHome

Geminox THRi

Modbus RTU
Trimis de
Ultima actualizare: 03. 2026

Necesită gateway extern

Amit DM-OT2 — pagina produsului

Geminox THRi

Geminox THRi este o centrală termică în condensare pe gaz, conectată la TapHome prin gateway-ul OpenTherm–Modbus RTU Amit DM-OT2. DM-OT2 traduce protocolul OpenTherm al centralei în registre holding Modbus RTU și oferă astfel TapHome acces la senzorii de temperatură, la termostatele pentru încălzire și ACM, la starea arzătorului și la monitorizarea puterii sursei de căldură.

Șablonul folosește registre cu mască de biți pentru stare și control (H:100 și H:200), registre Float pentru temperaturi și presiune, precum și un mecanism ciclic de citire a registrelor OT suplimentare, care obține valorile min./max. din data-ID-urile OpenTherm nemapate în registrele standard.

Conexiunea hardware

Prezentarea gateway-ului

Amit DM-OT2 este un convertor pentru montare pe șină DIN, cu interfață RS-485 separată galvanic și interfață OpenTherm/+. Funcționează ca master OpenTherm, care comunică cu centrala termică, și ca slave Modbus RTU pe magistrala RS-485.

Specificații tehnice
  • Alimentare: 20–30 V DC, max. 30 mA
  • Temperatură de funcționare: -40 °C până la +70 °C
  • Protocol: Modbus RTU Slave, RS-485
  • Baud rate: 9600, fără paritate, 2 biți de stop
  • Număr maxim de convertoare: 63 într-o singură rețea RS-485
  • Izolare RS-485: galvanică, 500 V AC
  • Montare: șină DIN de 35 mm
Conexiunile bornelor
BornăSemnalDescriere
1G485Masă RS-485
2BSemnal RS-485 B (-)
3ASemnal RS-485 A (+)
4GNDMasa alimentării
5+24VAlimentare +24 V DC
6RC1Interfață OpenTherm/+
7RC2Interfață OpenTherm/+
Cablarea RS-485 la TapHome

Conectați printr-o conexiune RS-485 cu 3 fire:

  • A (borna 3) → A+/D+ pe RS-485 TapHome
  • B (borna 2) → B-/D- pe RS-485 TapHome
  • G485 (borna 1) → GND pe sursa de alimentare TapHome (obligatoriu)

Important — masă comună (GND)

Firul de masă G485 trebuie conectat între DM-OT2 și sursa de alimentare TapHome. Fără o legare corectă la masă pot apărea erori de comunicare.

Terminarea magistralei

DM-OT2 are jumperi pentru terminarea RS-485:

  • Jumperi montați — stație terminală (stările de repaus și terminările active). Montați-i la ultimul dispozitiv de pe magistrală.
  • Jumperi nemontați — stație intermediară. Lăsați-i nemontați la toate celelalte dispozitive.

Ambii jumperi trebuie setați întotdeauna simultan.

Configurare

Adresarea cu comutatorul DIP

Comutatoarele DIP ADR0–ADR5 (comutatoarele 1–6) setează adresa slave Modbus (interval 1–63). Adresa 0 nu este permisă.

Calculul adresei: Fiecare comutator reprezintă o valoare binară — ADR0=1, ADR1=2, ADR2=4, ADR3=8, ADR4=16, ADR5=32. Adunați valorile comutatoarelor aflate în poziția ON.

Exemple de adrese:

AdresăComutatoare ON
1ADR0
2ADR1
3ADR0 + ADR1
5ADR0 + ADR2
10ADR1 + ADR3

Recomandat: adresa 1 (ADR0=ON, toate celelalte OFF).

Viteza de comunicație

Comutatoarele DIP COMM0–COMM3 (comutatoarele 7–10) configurează baud rate-ul și paritatea. Pentru TapHome setați:

  • COMM0: OFF, COMM1: OFF, COMM2: ON — astfel se selectează 9600 baud, fără paritate

Când este selectată varianta fără paritate, DM-OT2 folosește automat 2 biți de stop. Modificările se aplică imediat.

Selectarea protocolului

Comutatorul DIP MODE (comutatorul 11) selectează protocolul:

  • Nemontat (OFF) — Modbus RTU (necesar pentru TapHome)
  • Montat (ON) — protocolul ARION

Modificarea se aplică după o repornire.

Funcțiile dispozitivului

Monitorizarea stării

Trei senzori binari de stare citesc biți individuali din registrul de stare (H:100):

  • Arzător (bitul 4) — indică dacă flacăra arzătorului este activă
  • Încălzire (bitul 2) — indică dacă încălzirea centrală este activă
  • Încălzire ACM (bitul 3) — indică dacă încălzirea apei calde menajere este activă

Acești senzori se actualizează la fiecare 2500 ms și oferă o imagine în timp real a stării de funcționare a centralei termice.

Controlul încălzirii și al ACM

Două comutatoare de activare controlează încălzirea și ACM prin registrul de control (H:200):

  • Activare încălzire (bitul 5) — activează sau dezactivează încălzirea centrală
  • Activare ACM (bitul 6) — activează sau dezactivează încălzirea apei calde menajere

Ambele comutatoare folosesc modelul citire-modificare-scriere: șablonul citește întregul registru H:200, maschează bitul țintă, setează noua valoare și o scrie înapoi. Un debounce bazat pe contor (cnt=5 cicluri de interogare) asigură că, imediat după comutare, comutatorul afișează starea scrisă și previne pâlpâirea în timp ce centrala termică procesează comanda.

Termostate de temperatură

Două dispozitive de tip termostat oferă atât citirea temperaturii actuale, cât și controlul temperaturii setate:

  • Temperatura circuitului de încălzire — citește temperatura actuală pe tur din H:102 (Float) și citește/scrie temperatura dorită în H:201 (Float). Un atribut de service afișează intervalul min./max. al temperaturii setate din data-ID-ul OpenTherm 49.
  • Termostat ACM — citește temperatura actuală a ACM din H:106 (Float) și citește/scrie temperatura dorită în H:205 (Float). Un atribut de service afișează intervalul min./max. al temperaturii setate din data-ID-ul OpenTherm 48.
Senzori de temperatură

Trei senzori de temperatură doar pentru citire oferă monitorizare suplimentară:

  • Temperatura gazelor de ardere (H:118) — temperatura gazelor evacuate din centrala termică, utilă pentru monitorizarea eficienței arderii
  • Temperatura apei pe retur (H:108) — temperatura apei pe returul circuitului de încălzire
  • Temperatură exterioară (H:110) — temperatura aerului exterior de la senzorul centralei termice, folosită pentru curbele de încălzire compensate climatic

Toate registrele de temperatură folosesc formatul Float pe 32 de biți (2 registre holding consecutive).

Monitorizarea presiunii
  • Presiunea circuitului de încălzire (H:114) — presiunea apei în circuitul de încălzire, în bari. O presiune scăzută poate indica o scurgere de apă sau necesitatea de a reumple sistemul.
Puterea sursei de căldură
  • Puterea sursei de căldură — un dispozitiv de tip dimmer care reprezintă nivelul de modulație al centralei termice. Două atribute de service din data-ID-ul OpenTherm 15 afișează procentul minim de modulație și puterea maximă a centralei termice în kW.

Citirea registrelor OpenTherm suplimentare

Șablonul include un mecanism ciclic de citire a data-ID-urilor OpenTherm care nu sunt mapate direct în registrele Modbus standard. Acesta servește la obținerea intervalelor de temperatură min./max. și a datelor despre puterea și modulația centralei termice.

Cum funcționează:

  1. ReadScript-ul modulului activează citirea registrelor OT suplimentare prin setarea bitului 10 din H:200
  2. Scrie data-ID-ul OpenTherm dorit în H:216 și declanșează citirea prin H:217
  3. Răspunsul apare în H:120, iar starea în H:121 (1=succes, 3=eroare)
  4. Scriptul parcurge ciclic trei data-ID-uri: 48 (min./max. ACM), 49 (min./max. încălzire) și 15 (puterea și modulația centralei termice)

Valorile obținute se stochează în variabile interne (TUV_MM, Top_MM, Kotol_MM) și sunt disponibile ca atribute de service la dispozitivele corespunzătoare.

Diagnosticare de service

Modulul pune la dispoziție nouă atribute de service pentru monitorizare:

  • ID gateway (H:0) — confirmă tipul gateway-ului (197 = DM-OT2)
  • Versiune firmware (H:1) — versiunea actuală a firmware-ului gateway-ului
  • Timp (H:2) — contorul timpului de funcționare al gateway-ului
  • Timp de gardă (H:4) — intervalul de timp după care se consideră că s-a pierdut comunicarea Modbus, în milisecunde
  • Contor de resetări (H:8) — numărul de resetări ale gateway-ului (se poate reseta prin acțiunea de service)
  • Contor de mesaje Modbus (H:9) — numărul total de mesaje Modbus procesate (se poate reseta prin acțiunea de service)
  • ACM prezentă (H:100, bitul 6) — indică dacă funcția de încălzire a ACM este disponibilă
  • TV2 prezent (H:100, bitul 7) — indică dacă este disponibil un circuit secundar de încălzire
  • Puterea sursei de căldură [%] (H:112) — modulația actuală a centralei termice în procente

Două acțiuni de service permit resetarea contoarelor gateway-ului:

  • Resetare contor de resetări — șterge contorul de resetări al gateway-ului (H:8)
  • Resetare contor de mesaje Modbus — șterge contorul de mesaje Modbus (H:9)

ReadScript-ul modulului monitorizează și starea comunicației OpenTherm (H:100, bitul 0) și erorile dispozitivului (H:100, bitul 1, H:101) și le raportează în TapHome ca erori și avertizări.

Indicatoarele LED

LEDFuncție
PWRConvertorul este alimentat
RxDRecepție de date pe RS-485
TxDTransmisie de date pe RS-485
RxOTRecepție de date pe OpenTherm
TxOTTransmisie de date pe OpenTherm

Starea normală: PWR aprins, RxD/TxD clipesc în timpul comunicației Modbus, RxOT/TxOT clipesc în timpul comunicației OpenTherm.

Rezolvarea problemelor

Nu există comunicare Modbus (LED-urile RxD/TxD nu clipesc)
  1. Verificați cablurile RS-485:
    • A (borna 3) conectată corect la A+/D+ pe TapHome
    • B (borna 2) conectată corect la B-/D- pe TapHome
    • G485 (borna 1) conectată la masa sursei de alimentare TapHome — cea mai frecventă problemă
  2. Verificați adresa slave Modbus pe comutatoarele DIP ADR0–ADR5
  3. Confirmați că comutatorul DIP MODE este pe OFF (Modbus RTU selectat)
  4. Verificați setările vitezei de comunicație (COMM0=OFF, COMM1=OFF, COMM2=ON pentru 9600 baud)
  5. Confirmați că TapHome este setat la: 9600 baud, fără paritate, 2 biți de stop
Nu există comunicare OpenTherm (LED-urile RxOT/TxOT nu clipesc)
  1. Verificați cablajul dintre bornele RC1/RC2 și conectorul OpenTherm al centralei termice
  2. Verificați dacă centrala termică acceptă OpenTherm (nu toate modelele Geminox au interfață OT)
  3. Verificați dacă DM-OT2 are alimentarea corectă (20–30 V DC)
Eroare de comunicare OT în TapHome

Dacă TapHome raportează „OT communication error” (bitul de stare 0 = 0):

  1. Verificați cablajul OpenTherm dintre DM-OT2 și centrala termică
  2. Reporniți DM-OT2 prin deconectarea și reconectarea alimentării
  3. Verificați atributul de service Timp de gardă — dacă este setat la 0, conexiunea este marcată permanent ca deconectată
Eroare a dispozitivului în TapHome

Dacă TapHome raportează „Device error” (bitul de stare 1 = 1):

  1. Citiți valoarea registrului ultimei erori din avertizările TapHome
  2. Consultați manualul de service al centralei termice pentru codul de eroare respectiv
  3. Eroarea provine de la centrala termică însăși, nu de la gateway
Funcții suplimentare

Gateway-ul DM-OT2 pune la dispoziție și registre pentru temperatura apei pe tur a centralei termice (H:116), temperatura directă a ACM (H:104) și biți de control suplimentari în H:200 pentru activarea comunicației OT și confirmarea erorilor. Acestea pot fi adăugate într-o actualizare viitoare a șablonului.

Dispozitive disponibile

Geminox THRi (prin Amit DM-OT2) Modul
Atribute de service
ID gatewaycitește H:0 (UInt16); switch: 197=\'DM-OT2\', altă valoare=\'Necunoscut\'; identifică gateway-ul Amit DM-OT2
Versiune firmwarecitește H:1 (UInt16); numărul versiunii firmware a gateway-ului
Timpcitește H:2 (UInt32); contorul timpului de funcționare sau al timpului de sistem al gateway-ului
Timp de gardă [ms]citește H:4 (UInt16); timpul de gardă Modbus în milisecunde
Contor de resetăricitește H:8 (UInt16); numărul de resetări ale gateway-ului de la ultima ștergere
Contor de mesaje Modbuscitește H:9 (UInt16); numărul total de mesaje Modbus procesate de la ultima ștergere
ACM prezentăcitește bitul 6 din Status (H:100); \'Da\' dacă încălzirea ACM este disponibilă, altfel \'Nu\'
TV2 prezentcitește bitul 7 din Status (H:100); \'Da\' dacă circuitul secundar de încălzire (TV2) este disponibil, altfel \'Nu\'
Puterea sursei de căldură [%]citește H:112 (Float); modulația/puterea actuală a centralei termice în procente
Acțiuni de service
Resetare contor de resetăriscrie H:8 (UInt16) = 0; șterge contorul de resetări al gateway-ului
Resetare contor de mesaje Modbusscrie H:9 (UInt16) = 0; șterge contorul de mesaje Modbus

Geminox THRi (cez Amit DM-OT2)

Citire (modul)
Status := modbusr(H, 100, Uint16);
if(getbit(Status, 0) = 0, adderror("Chyba komunikacie OT"));
if(getbit(Status, 1) = 1, adderror("Chyba zariadenia OT"));

var lastError := modbusr(H, 101, Uint16);
if(lastError != 0, addwarning("Chyba zariadenia " + lastError));

# povol citanie extra OT registrov
var ret := modbusr(H, 200, Uint16);
if getbit(ret, 10) = 0
    modbusw(H, 200, Uint16, ret + (1 << 10));
end

# citanie extra OT registrov
var reg := modbusr(H,216,Uint16);
var stat := modbusr(H,121,Uint16);
var out := 0;
if reg = 48
    #TUV Min/Max
    if  stat = 1
        out := modbusr(H,120,Uint16);
        TUV_MM := out;
        modbusw(H, 216, Uint16, 49);
        modbusw(H, 217, Uint16, 1);
    end
elseif reg = 49
    #kurenie Min/Max
    if stat = 1
        out := modbusr(H,120,Uint16);
        Top_MM := out;
        modbusw(H, 216, Uint16, 15);
        modbusw(H, 217, Uint16, 0);
    end
elseif reg = 15
    #kotol Min/Max
    if stat = 1
        out := modbusr(H,120,Uint16);
        Kotol_MM := out;
        modbusw(H, 216, Uint16, 48);
        modbusw(H, 217, Uint16, 1);
    end 
else
    #zaciname s TUV Min/Max
    modbusw(H, 216, Uint16, 48);
    modbusw(H, 217, Uint16, 1);
end

if modbusr(H,121,Uint16) = 3
    #ak chyba zaciname odznova s TUV Min/Max
    modbusw(H, 216, Uint16, 48);
    modbusw(H, 217, Uint16, 1);
end
Atribute de service
ID
switch(modbusr(H, 0, Uint16),
197, "DM-OT2",
"Unknown")
Verze firmware
modbusr(H, 1, Uint16)
Čas
modbusr(H, 2, Uint32)
GuardTime [ms]
modbusr(H, 4, Uint16)
Počítadlo resetů
modbusr(H, 8, Uint16)
Počítadlo MODBUS zpráv
modbusr(H, 9, Uint16)
Ohřev TUV přítomen
if(getbit(Status, 6), "Ano", "Ne")
TV2 přítomna
if(getbit(Status, 7), "Ano", "Ne")
Výkon topného zdroje [%]
modbusr(H, 112, Float)
Acțiuni de service
Nulovat Počítadlo resetů
modbusw(H, 8, Uint16, 0)
Nulovat Počítadlo MODBUS zpráv
modbusw(H, 9, Uint16, 0)
Arzător Contact reed Doar citire

Starea flăcării arzătorului — activă când arzătorul centralei termice funcționează

Registru: H:100 UInt16 bitmask

Arzător

Citire
getbit(Status, 4)
Încălzire Contact reed Doar citire

Starea încălzirii centrale — activă când circuitul de încălzire funcționează

Registru: H:100 UInt16 bitmask

Încălzire

Citire
getbit(Status, 2)
Încălzire ACM Contact reed Doar citire

Starea încălzirii apei calde menajere — activă când circuitul ACM funcționează

Registru: H:100 UInt16 bitmask

Încălzire ACM

Citire
getbit(Status, 3)
Activare încălzire Comutator

Activează sau dezactivează încălzirea centrală prin citire-modificare-scriere în registrul de control

Registru: H:200 UInt16 bitmask
Valori / Stări: ON · OFF

Activare încălzire

Citirea stării comutatorului
if cnt = 0
    var ret := getbit(modbusr(H,200,Uint16), 5);
    return (ret);
else
    cnt := cnt -1;
    return (St);
end
Scrierea stării comutatorului
var ret := modbusr(H,200,Uint16);
var x := (ret & 0xffdf) + (St << 5);
modbusw(H, 200, Uint16, x);
cnt := 5;
Activare ACM Comutator

Activează sau dezactivează încălzirea apei calde menajere prin citire-modificare-scriere în registrul de control

Registru: H:200 UInt16 bitmask
Valori / Stări: ON · OFF

Activare ACM

Citirea stării comutatorului
if cnt = 0
    var ret := getbit(modbusr(H,200,Uint16), 6);
    return (ret);
else
    cnt := cnt -1;
    return (St);
end
Scrierea stării comutatorului
var ret := modbusr(H,200,Uint16);
var x := (ret & 0xffbf) + (St << 6);
modbusw(H, 200, Uint16, x);
cnt := 5;
Temperatura gazelor de ardere Senzor de temperatură Doar citire

Temperatura gazelor evacuate din camera de ardere a centralei termice

Registru: H:118 Float Unitate: °C numeric

Temperatura gazelor de ardere

Citirea temperaturii
MODBUSR(H, 118, Float)
Temperatura apei pe retur Senzor de temperatură Doar citire

Temperatura apei pe returul circuitului de încălzire

Registru: H:108 Float Unitate: °C numeric

Temperatura apei pe retur

Citirea temperaturii
MODBUSR(H, 108, Float)
Temperatura circuitului de încălzire Termostat

Temperatura pe tur a circuitului de încălzire, cu temperatură setată reglabilă și interval min./max. din OpenTherm

Registru: H:102 → H:201 Float Unitate: °C numeric
Atribute de service
Temperatura min./max. a circuitului de încălzire

Temperatura circuitului de încălzire

Citirea temperaturii
MODBUSR(H, 102, Float)
Citirea temperaturii dorite
MODBUSR(H, 201, Float)
Scrierea temperaturii dorite
MODBUSW(H, 201, Float, Se)
Atribute de service
Min / Max Teplota Vykurovacieho okruhu
getbyte(Top_MM, 1) + "/" + getbyte(Top_MM, 0)
Presiunea circuitului de încălzire Variabilă Doar citire

Presiunea apei în circuitul de încălzire

Registru: H:114 Float Unitate: bar numeric

Presiunea circuitului de încălzire

Citire
MODBUSR(H, 114, Float)
Termostat ACM Termostat

Temperatura apei calde menajere, cu temperatură setată reglabilă și interval min./max. din OpenTherm

Registru: H:106 → H:205 Float Unitate: °C numeric
Atribute de service
Temperatura min./max. ACM

Termostat ACM

Citirea temperaturii
MODBUSR(H, 106, Float)
Citirea temperaturii dorite
MODBUSR(H, 205, Float)
Scrierea temperaturii dorite
MODBUSW(H, 205, Float, Se)
Atribute de service
Min / Max Teplota TUV
getbyte(TUV_MM, 1) + "/" + getbyte(TUV_MM, 0)
Temperatură exterioară Senzor de temperatură Doar citire

Temperatura aerului exterior de la senzorul centralei termice

Registru: H:110 Float Unitate: °C numeric

Temperatură exterioară

Citirea temperaturii
MODBUSR(H, 110, Float)
Puterea sursei de căldură Dimmer Doar citire

Nivelul de modulație al centralei termice, cu atributele de service pentru modulația minimă în procente și puterea maximă

Atribute de service
Modulație minimă [%]
Putere maximă [kW]

Puterea sursei de căldură

Citirea nivelului
MODBUSR(H, 112, Float) / 100
Atribute de service
Minimalna modulacia [%]
getbyte(Kotol_MM, 1)
Max vykon [kW]
getbyte(Kotol_MM, 0)
Conexiune: Modbus RTU • 9600 baud• 8N2 • Slave ID: $[SlaveId]
Îmbunătățiri posibile (5)
  • H:104 DHW Temperature (direct) — H:104 Float — likely DHW flow temperature; not exposed as separate device (DHW Thermostat uses H:106 for current)
  • H:116 Boiler Water Temperature — H:116 Float — boiler flow/supply water temperature; could complement return water temp
  • H:200 bit 0 OT Communication Enable — Bit 0 of H:100 indicates OT comm status; corresponding control bit on H:200 could enable/disable OT communication
  • H:200 bit 1 Device Error Acknowledge — Bit 1 of H:100 indicates device error; potential error acknowledgment via H:200
  • H:203 Heating Circuit Desired Temperature (alternative) — Potential alternative setpoint register; template uses H:201 for heating circuit desired temp

Surse

Ați găsit o problemă la acest șablon de dispozitiv?

Spuneți-ne ce nu funcționează, ce lipsește sau cum ar trebui să se comporte șablonul. Feedbackul dvs. ne ajută să păstrăm catalogul corect.

Verificat de TapHome

Doriți să folosiți acest șablon în TapHome Core?

Deschideți acest șablon în Customer Portal pentru a-l aplica într-una dintre locuințele dvs. sau pentru a propune o îmbunătățire și a o trimite înapoi în catalog.

Deschideți în portal