TapHome

Domat R312/R313

Modbus RTU
Eingereicht von
Zuletzt aktualisiert: 03. 2026
Domat R312/R313

Der Domat R312 (24 V AC) und R313 (230 V AC) sind 8-Kanal-Triac-PWM-Ausgangsmodule für HVAC-Anwendungen wie Fußbodenheizungsverteiler und Thermoantriebssteuerung. Die Module kommunizieren über Modbus RTU auf einem optisch isolierten RS-485-Bus. Die TapHome-Vorlage stellt alle 8 Kanäle als unabhängige Dimmer mit Tastverhältnisregelung von 0–100 % (Auflösung 0,1 %) bereit.

Das Produkt wurde zuvor als M312/M313 verkauft. Die aktuellen Modelle R312/R313 haben eine identische Registerkarte und sind vollständig mit dieser Vorlage kompatibel.

Hardwareanschluss

Klemmenbelegung
Domat R312/R313 Klemmenbelegung und PCB-Layout
KlemmeFunktion
RS485 K+COM1 — serielle Verbindung RS-485, Klemme K+ (an A+/D+ am TapHome-Gateway anschließen)
RS485 K-COM1 — serielle Verbindung RS-485, Klemme K- (an B-/D- am TapHome-Gateway anschließen)
GStromversorgung 24 V AC/DC
G0Stromversorgung 24 V AC/DC
TEOptionaler Schirmanschluss, technische Erde
GD (L)Stromversorgung der Ausgänge
GDO (N)Stromversorgung der Ausgänge, gemeinsamer Leiter
DO1Ausgang 1
GDO (N)Stromversorgung der Ausgänge, gemeinsamer Leiter
DO2Ausgang 2
DO3Ausgang 3
GDO (N)Stromversorgung der Ausgänge, gemeinsamer Leiter
DO4Ausgang 4
DO5Ausgang 5
GDO (N)Stromversorgung der Ausgänge, gemeinsamer Leiter
DO6Ausgang 6
DO7Ausgang 7
GDO (N)Stromversorgung der Ausgänge, gemeinsamer Leiter
DO8Ausgang 8

LED-Anzeige:

LEDFunktion
TxD (rot)RS-485-Datenübertragung an COM1 (blinkt: Übertragung; AUS: kein Datenverkehr)
PWR (grün)Stromversorgung (EIN: Versorgung OK; AUS: keine Versorgung, schwache oder beschädigte Versorgung)

DIP-Schalter (Mikro-DIP-Schalter neben den RS-485-Klemmen):

SchalterFunktion
BUS ENDBeide EIN = 120 Ω Busabschluss; am ersten und letzten Gerät am Bus aktivieren
INITBei EIN beim Einschalten werden Konfigurationsparameter auf Werkseinstellungen zurückgesetzt
USRBenutzerdefiniert in der Kundenkonfiguration
Anschlussschema
Domat R312 und R313 Anschlussschema

Der R312 benötigt 24 V AC sowohl für die Modulversorgung (G, G0) als auch für die Ausgangsversorgung (GD, GDO). Der R313 verwendet 24 V AC für die Modulversorgung und 230 V AC für die Ausgangsversorgung (L, N an GD, GDO angeschlossen).

Wenn das Modul das erste oder letzte Gerät am RS-485-Bus ist, aktivieren Sie den 120-Ohm-Abschlusswiderstand durch Kurzschließen des BUS END-Jumpers (Mikro-DIP-Schalter neben den RS-485-Klemmen).

Konfiguration

Modbus-Adresse einstellen

Die Standard-Modbus-Slave-Adresse ist 1 mit den Kommunikationsparametern 9600 Baud, 8N1. Zum Ändern der Adresse oder Baudrate verwenden Sie die Konfigurationssoftware ModComTool (kostenloser Download von domat.cz).

Änderungen der Adresse und Baudrate werden im EEPROM gespeichert und erfordern einen Modulneustart.

ParameterRegisterStandardHinweise
Slave-AdresseH:4 LSB1Bereich 1–247, EEPROM, Neustart erforderlich
BaudrateH:4 MSB13 (9600)10=1200, 11=2400, 12=4800, 13=9600, 14=19200
INIT-Modus (Werksreset)

Wenn die Adresse oder Baudrate des Moduls unbekannt ist, bietet der DIP-Schalter INIT eine Wiederherstellungsmethode:

  1. Stellen Sie den DIP-Schalter INIT auf EIN
  2. Schalten Sie das Modul aus und wieder ein
  3. Die Adresse wird auf 1 und die Baudrate auf 9600, 8N1 zurückgesetzt
  4. Stellen Sie den DIP-Schalter INIT nach der Konfiguration wieder auf AUS
PWM-Periodenkonfiguration

Die PWM-Periode ist für alle 8 Kanäle gemeinsam. Die TapHome-Vorlage stellt sie beim Import über den Parameter PWM time (ms) ein (Standard: 1000 ms). Das Modul speichert die Periode in 100-ms-Einheiten.

Typische PWM-Perioden für Fußbodenheizungsanwendungen liegen zwischen 10 und 120 Sekunden. Die Standard-60-Sekunden-Periode funktioniert gut für die meisten Thermoantriebe.

Kommunikationsausfallschutz

Das Modul unterstützt die Konfiguration eines sicheren Zustands pro Kanal bei Verlust der Modbus-Kommunikation:

RegisterFunktion
H:6 LSBAktivierung des Ausfallverhaltens pro Kanal (Bitmaske)
H:6 MSBZielausgangszustand bei Kommunikationsausfall (ein/aus pro Kanal)
H:7 LSBZeitüberschreitung bei Kommunikationsausfall in Sekunden (0 = deaktiviert)

Wenn aktiviert und innerhalb der Zeitüberschreitung keine Modbus-Kommunikation empfangen wird, setzt das Modul automatisch jeden Ausgang in den konfigurierten sicheren Zustand.

Gerätefunktionen

PWM-Dimmerkanäle

Die Vorlage stellt 8 unabhängige PWM-Dimmer-Geräte (Kanäle 1–8) bereit, die jeweils einem Holding-Register zugeordnet sind. Jeder Dimmer:

  • Liest und schreibt das Tastverhältnis als Wert 0–1000 (entspricht 0,0 %–100,0 %)
  • TapHome skaliert den Wert automatisch (teilt durch 1000 zur Anzeige, multipliziert mit 1000 zum Schreiben)
  • Das Initialisierungsskript aktiviert den Kanal durch Setzen des entsprechenden Bits in der PWM-Freigabe-Bitmaske und konfiguriert die gemeinsame PWM-Periode

Alle 8 Kanäle teilen dieselbe PWM-Periode, haben aber eine unabhängige Tastverhältnisregelung, was das Modul für Mehrzonen-Fußbodenheizungsverteiler geeignet macht.

Weitere Funktionen

Die Module R312/R313 stellen auch Register für direkte binäre Ein-/Ausschaltung der Ausgänge (Umgehung von PWM), Zwangsüberschreibungs-Bitmaske, Rücklesen des Ausgangsstatus, Fehlerstatusflags, Überwachung der internen Modultemperatur und Auslesen der Firmwareversion bereit. Diese können in einem zukünftigen Vorlagen-Update hinzugefügt werden.

Fehlerbehebung

Keine Modbus-Kommunikation
  1. Überprüfen Sie die RS-485-Verkabelung: K+ an A+/D+ und K- an B-/D- am Modbus-Gateway
  2. Stellen Sie sicher, dass das Modul mit Strom versorgt wird (grüne PWR-LED muss leuchten)
  3. Bestätigen Sie, dass die Slave-Adresse mit der TapHome-Konfiguration übereinstimmt — verwenden Sie ModComTool zur Überprüfung
  4. Wenn die Adresse unbekannt ist, verwenden Sie den DIP-Schalter INIT zum Zurücksetzen auf Adresse 1 / 9600 Baud
  5. Überprüfen Sie den Busabschluss: aktivieren Sie BUS END am ersten und letzten Gerät am Bus
TxD-LED blinkt nicht

Die rote TxD-LED blinkt, wenn das Modul Daten auf RS-485 überträgt. Wenn sie nie blinkt:

  1. Das Modul empfängt keine gültigen Modbus-Anfragen — überprüfen Sie die Slave-Adresse
  2. Überprüfen Sie, ob die Baudrate übereinstimmt (Standard 9600)
  3. Versuchen Sie, K+ und K- zu tauschen, falls die Polarität vertauscht ist
Ausgänge reagieren nicht
  1. Überprüfen Sie, ob der Kanal für den PWM-Modus aktiviert ist — das Initialisierungsskript setzt dies automatisch bei der ersten Verbindung
  2. Überprüfen Sie, ob die Ausgangsversorgung (Klemmen GD/GDO) angeschlossen ist und die richtige Spannung hat (24 V AC für R312, 230 V AC für R313)
  3. Überprüfen Sie die Sicherung — zugänglich von der Vorderseite des Moduls (F3,15A für R312, F1A für R313)
  4. Überprüfen Sie, ob der minimale Laststrom (5 mA für R312) eingehalten wird — einige LED-Lasten können unter diesem Schwellenwert liegen

Verfügbare Geräte

Domat R312/R313 Modul
PWM Dimmer 1 Dimmer

Triac-Ausgangskanal 1 — Tastverhältnis 0–100 % mit 0,1 % Auflösung, steuert Thermoantriebe oder Heizungsventile über PWM

Register: H:9 Int16 Einheit: % numeric

PWM Dimmer 1

Initialisierung
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 1) << 8));
Level lesen
MODBUSR(H, 9, Int16)/1000
Level schreiben
MODBUSWNE(H, 9, Int16, Le*1000)
PWM Dimmer 2 Dimmer
Register: H:10 Int16 Einheit: % numeric

PWM Dimmer 2

Initialisierung
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 2) << 8));
Level lesen
MODBUSR(H, 10, Int16)/1000
Level schreiben
MODBUSWNE(H, 10, Int16, Le*1000)
PWM Dimmer 3 Dimmer
Register: H:11 Int16 Einheit: % numeric

PWM Dimmer 3

Initialisierung
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 4) << 8));
Level lesen
MODBUSR(H, 11, Int16)/1000
Level schreiben
MODBUSWNE(H, 11, Int16, Le*1000)
PWM Dimmer 4 Dimmer
Register: H:12 Int16 Einheit: % numeric

PWM Dimmer 4

Initialisierung
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 8) << 8));
Level lesen
MODBUSR(H, 12, Int16)/1000
Level schreiben
MODBUSWNE(H, 12, Int16, Le*1000)
PWM Dimmer 5 Dimmer
Register: H:13 Int16 Einheit: % numeric

PWM Dimmer 5

Initialisierung
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 16) << 8));
Level lesen
MODBUSR(H, 13, Int16)/1000
Level schreiben
MODBUSWNE(H, 13, Int16, Le*1000)
PWM Dimmer 6 Dimmer
Register: H:14 Int16 Einheit: % numeric

PWM Dimmer 6

Initialisierung
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 32) << 8));
Level lesen
MODBUSR(H, 14, Int16)/1000
Level schreiben
MODBUSWNE(H, 14, Int16, Le*1000)
PWM Dimmer 7 Dimmer
Register: H:15 Int16 Einheit: % numeric

PWM Dimmer 7

Initialisierung
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 64) << 8));
Level lesen
MODBUSR(H, 15, Int16)/1000
Level schreiben
MODBUSWNE(H, 15, Int16, Le*1000)
PWM Dimmer 8 Dimmer
Register: H:16 Int16 Einheit: % numeric

PWM Dimmer 8

Initialisierung
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 128) << 8));
Level lesen
MODBUSR(H, 16, Int16)/1000
Level schreiben
MODBUSWNE(H, 16, Int16, Le*1000)
Verbindung: Modbus RTU • 9600 baud• 8N1 • Slave ID: $[SlaveId]
Mögliche Verbesserungen (6)
  • H:1 Digital Outputs Bitmask — Direct on/off control of outputs via bitmask (lower byte), bypassing PWM dimming
  • H:2 Digital Outputs Force Bitmask — Force output state override bitmask — forces outputs regardless of other control
  • H:3 Output Status Readback — Read actual output states as bitmask — useful for verifying output is active
  • H:4 Error Status — Module error flags — overtemperature, communication loss, etc.
  • H:5 Module Temperature — Internal module temperature for thermal monitoring
  • H:6 Firmware Version — Read-only firmware version identifier

Quellen