---
title: "Domat R312/R313"
description: "Sterowanie 8 wyjściami triak PWM do zaworów ogrzewania podłogowego i siłowników termicznych przez Modbus RTU. Szablon TapHome dla Domat R312/R313."
url: "https://taphome.com/pl/compatibility/domat-m312-pwm/"
language: pl
lastmod: 2026-10-08
generator: hugo
ai:
  topics: ["modbus-rtu","i/o-module","rs485","pwm","hvac","floor-heating","din-rail","triac"]
  questions: ["Jak zintegrować Domat R312/R313 z TapHome?","Co kontroluje szablon TapHome Domat M312 PWM?","Jak podłączyć Domat R312 przez RS-485 do TapHome?","Jak ustawić adres Modbus na Domat R312?","Jaka jest różnica między Domat M312 a R312?","Jak skonfigurować okres PWM dla zaworów ogrzewania podłogowego Domat R312?"]
---

# Domat R312/R313

Komunikacja: Modbus RTU

- [Strona produktu Domat R312](https://www.domat-int.com/en/product/r312)

## Poradnik integracji

Domat R312 (24 V AC) i R313 (230 V AC) to 8-kanałowe moduły wyjść triak PWM przeznaczone do zastosowań HVAC, takich jak rozdzielacze ogrzewania podłogowego i sterowanie siłownikami termicznymi. Moduły komunikują się przez Modbus RTU po optycznie izolowanej magistrali RS-485. Szablon TapHome udostępnia wszystkie 8 kanałów jako niezależne ściemniacze z regulacją wypełnienia 0–100 % (rozdzielczość 0,1 %).

Produkt był wcześniej sprzedawany jako M312/M313. Obecne modele R312/R313 mają identyczną mapę rejestrów i są w pełni kompatybilne z tym szablonem.

## Podłączenie sprzętowe

### Przypisanie zacisków

![Domat R312/R313 przypisanie zacisków i układ PCB](https://taphome.com/images/compatibility/domat-m312-pwm/terminals-pinout_hu_7c08f51877457924.jpg)

| Zacisk | Funkcja |
|--------|---------|
| **RS485 K+** | COM1 — łącze szeregowe RS-485, zacisk K+ (podłączyć do A+/D+ na bramce TapHome) |
| **RS485 K-** | COM1 — łącze szeregowe RS-485, zacisk K- (podłączyć do B-/D- na bramce TapHome) |
| **G** | Zasilanie 24 V AC/DC |
| **G0** | Zasilanie 24 V AC/DC |
| **TE** | Opcjonalne podłączenie ekranowania, masa techniczna |
| **GD (L)** | Zasilanie wyjść |
| **GDO (N)** | Zasilanie wyjść, przewód wspólny |
| **DO1** | Wyjście 1 |
| **GDO (N)** | Zasilanie wyjść, przewód wspólny |
| **DO2** | Wyjście 2 |
| **DO3** | Wyjście 3 |
| **GDO (N)** | Zasilanie wyjść, przewód wspólny |
| **DO4** | Wyjście 4 |
| **DO5** | Wyjście 5 |
| **GDO (N)** | Zasilanie wyjść, przewód wspólny |
| **DO6** | Wyjście 6 |
| **DO7** | Wyjście 7 |
| **GDO (N)** | Zasilanie wyjść, przewód wspólny |
| **DO8** | Wyjście 8 |

**Sygnalizacja LED:**

| LED | Funkcja |
|-----|---------|
| **TxD** (czerwona) | Transmisja danych RS-485 na COM1 (miga: transmisja; OFF: brak ruchu danych) |
| **PWR** (zielona) | Zasilanie (ON: zasilanie OK; OFF: brak zasilania, słabe lub uszkodzone zasilanie) |

**Przełączniki DIP** (mikro przełączniki DIP obok zacisków RS-485):

| Przełącznik | Funkcja |
|-------------|---------|
| **BUS END** | Oba ON = terminacja magistrali 120 Ω; włączyć na pierwszym i ostatnim urządzeniu na magistrali |
| **INIT** | Jeśli ON przy włączeniu, parametry konfiguracji zostają przywrócone do ustawień fabrycznych |
| **USR** | Definiowane przez użytkownika w konfiguracji klienta |

### Schemat połączeń

![Schematy połączeń Domat R312 i R313](https://taphome.com/images/compatibility/domat-m312-pwm/wiring-r312-r313_hu_e23e4f12ed251ef2.jpg)

R312 wymaga 24 V AC zarówno do zasilania modułu (G, G0), jak i do zasilania wyjść (GD, GDO). R313 wykorzystuje 24 V AC do zasilania modułu i 230 V AC do zasilania wyjść (L, N podłączone do GD, GDO).

> [!WARNING]
> Jeśli moduł jest pierwszym lub ostatnim urządzeniem na magistrali RS-485, włącz rezystor terminujący 120 omów poprzez zwarcie jumpera **BUS END** (mikro przełączniki DIP obok zacisków RS-485).

## Konfiguracja

### Ustawienie adresu Modbus

Domyślny adres Modbus slave to **1** z parametrami komunikacji **9600 baud, 8N1**. Aby zmienić adres lub prędkość transmisji, użyj oprogramowania konfiguracyjnego **ModComTool** (bezpłatne pobranie z domat.cz).

Zmiany adresu i prędkości transmisji są przechowywane w EEPROM i wymagają restartu modułu.

| Parametr | Rejestr | Domyślny | Uwagi |
|----------|---------|----------|-------|
| Adres slave | H:4 LSB | 1 | Zakres 1–247, EEPROM, wymaga restartu |
| Prędkość transmisji | H:4 MSB | 13 (9600) | 10=1200, 11=2400, 12=4800, 13=9600, 14=19200 |

### Tryb INIT (reset fabryczny)

Jeśli adres lub prędkość transmisji modułu jest nieznana, przełącznik DIP **INIT** zapewnia metodę przywracania:

1. Ustaw przełącznik DIP INIT na ON
2. Wyłącz i włącz moduł
3. Adres resetuje się do **1**, a prędkość transmisji do **9600, 8N1**
4. Po konfiguracji ustaw przełącznik DIP INIT z powrotem na OFF

### Konfiguracja okresu PWM

Okres PWM jest wspólny dla wszystkich 8 kanałów. Szablon TapHome ustawia go podczas importu za pomocą parametru **PWM time (ms)** (domyślnie: 1000 ms). Moduł przechowuje okres w jednostkach 100 ms.

Typowe okresy PWM dla zastosowań ogrzewania podłogowego wynoszą od 10 do 120 sekund. Okres około 60 sekund dobrze sprawdza się w przypadku większości siłowników termicznych, dlatego odpowiednio zmień domyślną wartość importu 1000 ms.

### Ochrona przed utratą komunikacji

Moduł wspiera konfigurację stanu bezpiecznego dla każdego kanału w przypadku utraty komunikacji Modbus:

| Rejestr | Funkcja |
|---------|---------|
| H:6 LSB | Włączenie zachowania przy utracie komunikacji dla każdego kanału (bitmaska) |
| H:6 MSB | Docelowy stan wyjścia przy utracie komunikacji (wł./wył. dla każdego kanału) |
| H:7 LSB | Limit czasu utraty komunikacji w sekundach (0 = wyłączone) |

Po włączeniu, jeśli w ciągu limitu czasu nie zostanie odebrana żadna komunikacja Modbus, moduł automatycznie ustawia każde wyjście w skonfigurowany stan bezpieczny.

## Funkcje urządzenia

### Kanały ściemniaczy PWM

Szablon udostępnia 8 niezależnych urządzeń PWM Dimmer (kanały 1–8), każde przypisane do rejestru holding. Każdy ściemniacz:

- **Odczytuje i zapisuje** wypełnienie jako wartość 0–1000 (odpowiadającą 0,0 %–100,0 %)
- TapHome automatycznie skaluje wartość (dzieli przez 1000 do wyświetlania, mnoży przez 1000 do zapisu)
- Skrypt inicjalizacyjny włącza kanał poprzez ustawienie odpowiedniego bitu w bitmasce włączenia PWM i konfiguruje wspólny okres PWM

Wszystkie 8 kanałów współdzieli ten sam okres PWM, ale ma niezależne sterowanie wypełnieniem, co czyni moduł odpowiednim do wielostrefowych rozdzielaczy ogrzewania podłogowego.

### Dodatkowe funkcje

Moduły R312/R313 udostępniają również rejestry do bezpośredniego binarnego sterowania wyjściami wł./wył. (z pominięciem PWM), bitmaski wymuszenia, odczytu stanu wyjść, flag stanu błędów, monitorowania temperatury wewnętrznej modułu i odczytu wersji firmware. Mogą one zostać dodane w przyszłej aktualizacji szablonu.

## Rozwiązywanie problemów

### Brak komunikacji Modbus

1. Sprawdź okablowanie RS-485: K+ do A+/D+ i K- do B-/D- na bramce Modbus
2. Upewnij się, że moduł jest zasilany (zielona dioda PWR powinna świecić)
3. Potwierdź, że adres slave odpowiada konfiguracji TapHome — użyj ModComTool do weryfikacji
4. Jeśli adres jest nieznany, użyj przełącznika DIP INIT do resetu na adres 1 / 9600 baud
5. Sprawdź terminację magistrali: włącz BUS END na pierwszym i ostatnim urządzeniu na magistrali

### Dioda TxD nie miga

Czerwona dioda TxD miga, gdy moduł transmituje dane na RS-485. Jeśli nigdy nie miga:

1. Moduł nie otrzymuje prawidłowych żądań Modbus — sprawdź adres slave
2. Sprawdź, czy prędkość transmisji się zgadza (domyślna 9600)
3. Spróbuj zamienić K+ i K-, jeśli polaryzacja jest odwrócona

### Wyjścia nie reagują

1. Sprawdź, czy kanał jest włączony dla trybu PWM — skrypt inicjalizacyjny ustawia to automatycznie przy pierwszym połączeniu
2. Sprawdź, czy zasilanie wyjść (zaciski GD/GDO) jest podłączone i ma prawidłowe napięcie (24 V AC dla R312, 230 V AC dla R313)
3. Sprawdź bezpiecznik — dostępny z przedniej strony modułu (F3,15A dla R312, F1A dla R313)
4. Sprawdź, czy minimalny prąd obciążenia (5 mA dla R312) jest spełniony — niektóre obciążenia LED mogą być poniżej tego progu

## Dostępne urządzenia 8

Te urządzenia pojawią się w TapHome po imporcie.

Domat R312/R313 Moduł

PWM Dimmer 1 Ściemniacz Odczyt i zapis

Kanał wyjścia triak 1 — wypełnienie 0–100 % z rozdzielczością 0,1 %, steruje siłownikami termicznymi lub zaworami grzewczymi przez PWM

Rejestr: H:9 Int16 Jednostka: % numeric

Inicjalizacja

```taphome
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 1) << 8));
```

Odczyt poziomu

```taphome
MODBUSR(H, 9, Int16)/1000
```

Zapis poziomu

```taphome
MODBUSWNE(H, 9, Int16, Le*1000)
```

PWM Dimmer 2 Ściemniacz Odczyt i zapis

Rejestr: H:10 Int16 Jednostka: % numeric

Inicjalizacja

```taphome
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 2) << 8));
```

Odczyt poziomu

```taphome
MODBUSR(H, 10, Int16)/1000
```

Zapis poziomu

```taphome
MODBUSWNE(H, 10, Int16, Le*1000)
```

PWM Dimmer 3 Ściemniacz Odczyt i zapis

Rejestr: H:11 Int16 Jednostka: % numeric

Inicjalizacja

```taphome
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 4) << 8));
```

Odczyt poziomu

```taphome
MODBUSR(H, 11, Int16)/1000
```

Zapis poziomu

```taphome
MODBUSWNE(H, 11, Int16, Le*1000)
```

PWM Dimmer 4 Ściemniacz Odczyt i zapis

Rejestr: H:12 Int16 Jednostka: % numeric

Inicjalizacja

```taphome
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 8) << 8));
```

Odczyt poziomu

```taphome
MODBUSR(H, 12, Int16)/1000
```

Zapis poziomu

```taphome
MODBUSWNE(H, 12, Int16, Le*1000)
```

PWM Dimmer 5 Ściemniacz Odczyt i zapis

Rejestr: H:13 Int16 Jednostka: % numeric

Inicjalizacja

```taphome
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 16) << 8));
```

Odczyt poziomu

```taphome
MODBUSR(H, 13, Int16)/1000
```

Zapis poziomu

```taphome
MODBUSWNE(H, 13, Int16, Le*1000)
```

PWM Dimmer 6 Ściemniacz Odczyt i zapis

Rejestr: H:14 Int16 Jednostka: % numeric

Inicjalizacja

```taphome
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 32) << 8));
```

Odczyt poziomu

```taphome
MODBUSR(H, 14, Int16)/1000
```

Zapis poziomu

```taphome
MODBUSWNE(H, 14, Int16, Le*1000)
```

PWM Dimmer 7 Ściemniacz Odczyt i zapis

Rejestr: H:15 Int16 Jednostka: % numeric

Inicjalizacja

```taphome
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 64) << 8));
```

Odczyt poziomu

```taphome
MODBUSR(H, 15, Int16)/1000
```

Zapis poziomu

```taphome
MODBUSWNE(H, 15, Int16, Le*1000)
```

PWM Dimmer 8 Ściemniacz Odczyt i zapis

Rejestr: H:16 Int16 Jednostka: % numeric

Inicjalizacja

```taphome
MODBUSWNE(H, 8, Int16, $[PWMtimems]);MODBUSW(H, 7, Int16, MODBUSR(H, 7, Int16) | (((MODBUSR(H, 7, Int16) >> 8) | 128) << 8));
```

Odczyt poziomu

```taphome
MODBUSR(H, 16, Int16)/1000
```

Zapis poziomu

```taphome
MODBUSWNE(H, 16, Int16, Le*1000)
```

**Połączenie:** Modbus RTU • 9600 baud• 8N1 • Slave ID: $\[SlaveId]

Możliwe ulepszenia (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

## Parametry importu

Te wartości podajesz podczas importu pliku XML.

| Pytanie w aplikacji | Domyślnie     |
|---------------------|---------------|
| PWM time (ms)       | `1000`        |
| Slave ID            | `1`           |
| Adres IP            | `192.168.0.1` |

## Źródła

- R312/R313 Datasheet
  
  [domat.blob.core.windows.net](https://domat.blob.core.windows.net/cms/ContentItems/1486_r312/l0Qzx7/domat_R312_R313_en.pdf) 2026-03-29
  
  [PDF](https://taphome.com/compatibility/devices/domat-m312-pwm/manufacturer/datasheet.pdf)
- M312/M313 Modbus Register Table (legacy)
  
  [domat-int.com](https://domat-int.com/wp-content/uploads/modbus/M312_M313modbus_en.pdf) 2026-03-29
  
  [PDF](https://taphome.com/compatibility/devices/domat-m312-pwm/manufacturer/modbus-table.pdf)
- R312/R313 Modbus Register Table (current)
  
  [domat-int.com](https://domat-int.com/wp-content/uploads/modbus/R312_R313_modbus_en.pdf) 2026-03-29
  
  [PDF](https://taphome.com/compatibility/devices/domat-m312-pwm/manufacturer/modbus-table-r312.pdf)
- Domat R312 Product Page
  
  [www.domat-int.com](https://www.domat-int.com/en/product/r312) 2026-03-29

Dokumenty producentów są © ich właścicieli. Udostępniamy je w formie opublikowanej przez producenta, wyłącznie w celach informacyjnych.

## Powiązana dokumentacja

- [Modbus Integration](https://taphome.com/pl/compatibility/modbus-guide/)
- [Modbus](https://taphome.com/pl/docs/integration/modbus/)
- [Prosta konfiguracja za pomocą szablonów](https://taphome.com/pl/docs/integration/modbus/templates/)
- [Skrypty Modbus i prefetch](https://taphome.com/pl/docs/script/modbus-scripts/)
- [Funkcje Modbus](https://taphome.com/pl/docs/script/modbus/)
- [Typy danych Modbus](https://taphome.com/pl/docs/script/modbus-data-types/)

