---
title: "solvimus MBUS-GEM – wodomierz M-Bus"
description: "Przewodowy wodomierz M-Bus w TapHome przez Modbus TCP i bramkę solvimus MBUS-GEM — objętość w m³, przepływ i średni przepływ do alarmu wycieku."
url: "https://taphome.com/pl/compatibility/solvimus-mbus-gem-m-bus-water-meter/"
language: pl
lastmod: 2026-11-05
generator: hugo
ai:
  topics: ["modbus-tcp","sensor","m-bus","gateway","water-meter","leak-detection","din-rail"]
  questions: ["Jak podłączyć wodomierz M-Bus do TapHome?","Czy TapHome obsługuje liczniki M-Bus?","Jak zintegrować bramkę solvimus MBUS-GEM z TapHome przez Modbus TCP?","Co odczytuje szablon TapHome dla wodomierza M-Bus?","Jakie liczby wpisać do RegMeter, RegVolume i RegFlow?","Jak TapHome może wykryć wyciek wody na podstawie wodomierza M-Bus?"]
---

# solvimus MBUS-GEM – wodomierz M-Bus

Komunikacja: Modbus TCP

- [Oficjalna strona solvimus](https://www.solvimus.de/en/homepage/)
- [Strona produktu solvimus MBUS-GE20M / MBUS-GE80M](https://www.solvimus.de/en/product/mbus-ge20m-mbus-ge80m-2/)

TapHome nie ma własnego interfejsu M-Bus. Przewodowy wodomierz M-Bus podłącza się przez bramkę z M-Bus na Modbus, a TapHome odczytuje go jako urządzenie Modbus TCP. Ten szablon korzysta z bramki solvimus MBUS-GEM (MBUS-GE20M, MBUS-GE80M, MBUS-GE125M, MBUS-GE250M, MBUS-GE500M): bramka odczytuje liczniki na swojej magistrali M-Bus i udostępnia ich dane jako serwer Modbus TCP na porcie 502. Jeden zaimportowany moduł to jeden wodomierz; dla kolejnych liczników szablon importuje się ponownie.

Szablon odczytuje objętość wody w m³, przepływ zgłaszany przez sam licznik i średni przepływ między dwoma odczytami bramki w l/h. Średni przepływ służy do wykrywania wycieków: smart rules w TapHome mogą porównywać go z limitami, na przykład aby włączyć alarm, gdy woda płynie także w nocy.

> [!WARNING]
> **Szablon społeczności — jeszcze nie testowany na sprzęcie.** Szablon powstał w portalu TapHome na podstawie instrukcji obsługi solvimus MBUS-GEM (wersja 1.31). Nie działał ani na prawdziwej bramce z licznikiem, ani na symulatorze. Jego numery rejestrów (`RegMeter`, `RegVolume`, `RegFlow`) są wartościami zastępczymi: po imporcie instalator ustawia je według kolumny **Register** na karcie **Meter** bramki. Zanim zaczniesz polegać na wartościach, sprawdź połączenie trybem testowym bramki (zob. Konfiguracja); doświadczenia z praktyki są mile widziane. Pobierz XML na tej stronie lub z portalu TapHome: [solvimus MBUS-GEM – wodomierz M-Bus — szablon społeczności](https://portal.taphome.com/portal/community/solvimus-mbus-gem-m-bus-water-meter), i zaimportuj go jako nowy moduł.

**[solvimus MBUS-GEM – M-Bus water meter](https://portal.taphome.com/pl/portal/community/solvimus-mbus-gem-m-bus-water-meter)** — solvimus, Modbus TCP. Wired M-Bus water meter via solvimus MBUS-GEM Modbus TCP gateway: volume in m³, flow for leak detection, meter read status.

## Czego potrzebujesz

- Bramki **solvimus MBUS-GEM** dla przewodowego M-Bus z Modbus TCP: MBUS-GE20M, MBUS-GE80M, MBUS-GE125M, MBUS-GE250M lub MBUS-GE500M. MBUS-GEWM to wariant dla bezprzewodowego M-Bus i ten szablon go nie obejmuje.
- **Przewodowego wodomierza M-Bus** (EN 13757), który bramka potrafi odczytać. Ultradźwiękowe wodomierze zwykle zgłaszają też przepływ.
- Bramki i jednostki sterującej Core w tej samej sieci lokalnej.

## Połączenie sprzętowe

MBUS-GEM montuje się na szynie DIN 35 mm; ma zaciski śrubowe dla M-Bus i zasilania oraz port Ethernet RJ45 (10/100 Mbit/s).

| Model | Obciążenia jednostkowe M-Bus | Szerokość | Zasilanie | Prędkość M-Bus |
|---|---|---|---|---|
| MBUS-GE20M | 20 | 2 moduły | 21,6–24,5 VDC | maks. 19200 bps |
| MBUS-GE80M | 80 | 2 moduły | 21,6–24,5 VDC | maks. 19200 bps |
| MBUS-GE125M | 125 | 3 moduły | 12–36 VDC | maks. 9600 bps |
| MBUS-GE250M | 250 | 3 moduły | 12–36 VDC | maks. 9600 bps |
| MBUS-GE500M | 500 | 3 moduły | 12–36 VDC | maks. 9600 bps |

Jedno obciążenie jednostkowe (UL) odpowiada zwykle jednemu licznikowi.

1. Podłącz linię M-Bus wodomierza do zacisków M-Bus bramki.
2. Podłącz bramkę kablem Ethernet do sieci lokalnej.
3. Podłącz zewnętrzny zasilacz 24 VDC. Bramka uruchomi się sama.

## Konfiguracja

### Sieć i lista liczników

Bramka jest dostarczana ze statycznym adresem IP **192.168.1.101** (maska podsieci 255.255.255.0, brama sieciowa 192.168.1.254); jej interfejs WWW otwiera się pod `http://192.168.1.101/`. Przy pierwszym logowaniu administrator musi zmienić hasło. Narzędzie **Netdiscover** firmy solvimus znajduje bramkę w sieci i potrafi przełączyć ją na inny adres statyczny lub na DHCP; przy DHCP przydzielony adres znajdziesz w serwerze DHCP po adresie MAC bramki. Bez serwera DHCP bramka wybiera adres z zakresu 169.254.x.x. Szablon łączy się z bramką po adresie IP, dlatego nadaj jej stały adres lub rezerwację DHCP.

W interfejsie WWW wyszukaj liczniki na magistrali M-Bus, aby wodomierz pojawił się na liście liczników na karcie **Meter** razem ze swoimi wartościami (objętość i przepływ, jeśli licznik go zgłasza).

### Ustawienia Modbus na karcie Server

1. Ustaw **Modbus mode** na Modbus TCP i pozostaw **Modbus port** na 502.
2. Pozostaw **Modbus float only** wyłączone. Ten tryb usuwa pola typu i jednostki, które sprawdza szablon.
3. Pozostaw **Modbus swap** wyłączone. Szablon oczekuje domyślnej kolejności słów (najbardziej znaczące słowo pierwsze).
4. Zalecane jest włączenie **Modbus multi slave**. Każdy licznik staje się wtedy osobnym wirtualnym slave Modbus z własnym adresem (1–247), a numeracja rejestrów zaczyna się od nowa dla każdego licznika, więc liczniki tego samego typu mają te same numery rejestrów.

Po włączeniu lub wyłączeniu multi slave adresy na karcie Meter trzeba przydzielić ponownie (menu kontekstowe **Allocate**).

### Cykl odczytu

Bramka odczytuje liczniki niezależnie od zapytań Modbus: według **Readout cycle** na karcie **Configuration** lub według **Cycle** (w sekundach) danego licznika na karcie Meter. Te ustawienia decydują o tym, jak świeże są wartości w TapHome. Niektóre bateryjne liczniki M-Bus pozwalają tylko na ograniczoną liczbę odczytów dziennie; zanim wybierzesz krótki cykl, sprawdź kartę katalogową licznika.

### Ustawienia szablonu po imporcie

Bramka nie ma stałej tabeli rejestrów. Każdy wpis licznika i każda wartość licznika dostaje własny blok 10 rejestrów holding, a początek każdego bloku pokazuje kolumna **Register** na karcie Meter. Kolejność wartości odpowiada kolejności, w jakiej licznik wysyła swoje rekordy M-Bus, więc różni się między modelami liczników. Dlatego szablon przechowuje początek każdego bloku w zmiennej modułu i z niej oblicza każdy adres rejestru.

| Ustawienie | Gdzie | Wartość |
|---|---|---|
| Adres IP | Parametr importu | Adres bramki (okno importu proponuje 192.168.1.100; bramka jest dostarczana z 192.168.1.101) |
| `SlaveId` | Parametr importu (domyślnie 1) | Z multi slave: liczba w kolumnie Register w wierszu licznika. Bez multi slave: 255 |
| `RegMeter` | Zmienna modułu (domyślnie 10) | Z multi slave: 10 (wpis licznika zaczyna się w każdym wirtualnym slave od 10). Bez multi slave: liczba w kolumnie Register w wierszu licznika |
| `RegVolume` | Zmienna modułu (domyślnie 20) | Liczba w kolumnie Register w wierszu objętości (jednostka m³) |
| `RegFlow` | Zmienna modułu (domyślnie 30) | Liczba w kolumnie Register w wierszu przepływu (jednostka m³/h, m³/min lub m³/s) |

Wartości domyślne 10, 20 i 30 pasują tylko do układu trybu testowego bramki; zastąp je numerami prawdziwego licznika.

Każde urządzenie sprawdza typ wpisu i jednostkę swojego bloku. Błędny numer pokazuje na urządzeniu błąd z nazwą zmiennej modułu, na przykład `RegVolume does not point to a volume value in m³ … copy the Register number of this value from the gateway Meter tab`.

### Sprawdzenie połączenia przez Modbus test

Gdy na karcie Server włączony jest **Modbus test**, bramka udostępnia statyczne dane testowe: wpis licznika w rejestrze 10 i wartość energii (jednostka Wh, 1234,5678 Wh) w rejestrze 20. Przy domyślnych zmiennych modułu **Objętość wody** przyjmuje wtedy rejestr 10 jako wpis licznika (z ostrzeżeniem, że medium licznika testowego, kod 2, nie jest wodą) i zgłasza, że rejestr 20 nie jest wartością objętości (kod jednostki 5). Jeśli widzisz dokładnie te komunikaty, adres IP, port, adres slave i numery rejestrów docierają do bramki tak, jak powinny. Potem wyłącz tryb testowy i ustaw zmienne modułu dla prawdziwego licznika.

## Możliwości urządzeń

Wszystkie trzy urządzenia są tylko do odczytu i są odczytywane co 15 s. Ich wartości zmieniają się tylko wtedy, gdy bramka odczyta licznik, w swoim cyklu odczytu.

### Objętość wody

**Objętość wody** to stan wodomierza w m³ z dokładnością do trzech miejsc po przecinku, odczytany jako skalowana wartość zmiennoprzecinkowa z bloku objętości. Urządzenie sprawdza też wpis licznika:

| Komunikat | Typ | Znaczenie |
|---|---|---|
| `RegMeter does not point to a meter entry …` | Błąd | `RegMeter` wskazuje blok, który nie jest wpisem licznika |
| `RegMeter points to a meter with medium code …, which is not a water meter …` | Ostrzeżenie | Licznik nie jest wodomierzem (akceptowane kody medium: woda, woda zimna, woda ciepła, woda gorąca i woda z podwójnym rejestrem) — sprawdź `RegMeter` i `SlaveId` |
| `The gateway could not read the meter in its last readout …` | Błąd | Sprawdź okablowanie M-Bus, adres licznika i listę liczników w bramce |
| `Not all meter values were updated in the last gateway readout` | Ostrzeżenie | Ostatni odczyt nie był kompletny |

Atrybut serwisowy **Numer seryjny licznika** pokazuje numer seryjny licznika M-Bus i pomaga potwierdzić, że szablon odczytuje właściwy licznik. Numer seryjny zawierający litery jest pokazywany jako 0.

### Średni przepływ wody

**Średni przepływ wody** to przyrost objętości między dwoma ostatnimi odczytami bramki podzielony przez czas między ich znacznikami czasu, w l/h. Jest przeliczany tylko wtedy, gdy zmieni się znacznik czasu odczytu licznika, więc jest to średnia z jednego cyklu odczytu.

- Po pierwszym odczycie, po ponownym uruchomieniu jednostki sterującej Core i po wyzerowaniu licznika (objętość mniejsza niż wcześniej) wartość wynosi 0 aż do następnego odczytu.
- Jeśli bramka przestanie odczytywać licznik, zostaje ostatnia średnia; Objętość wody pokazuje wtedy błąd odczytu.

Urządzenie odczytuje ten sam blok objętości co Objętość wody. Samo wykrywanie wycieków — limity, godziny otwarcia, alarmy — ustawiasz za pomocą smart rules w TapHome; szablon dostarcza wartość.

### Przepływ wody

**Przepływ wody** to przepływ zgłaszany przez sam licznik, przeliczony na m³/h (z m³/h, m³/min lub m³/s). Nie każdy wodomierz M-Bus zgłasza przepływ; liczniki ultradźwiękowe zwykle tak.

## Rozwiązywanie problemów

### Brak komunikacji

- Sprawdź, czy bramka i jednostka sterująca Core są w tej samej sieci i czy bramka odpowiada na ping.
- Sprawdź, czy Modbus jest włączony na karcie Server, czy port to 502 i czy nie blokuje go zapora sieciowa.
- Użyj opisanego wyżej trybu testowego.
- Bramka w konfiguracji standardowej przyjmuje jednocześnie do pięciu połączeń Modbus TCP; powyżej tego limitu nowe połączenie zamyka najstarsze.

### Błąd podaje nazwę zmiennej modułu

Numer w tej zmiennej wskazuje blok innego typu lub jednostki. Przepisz numer ponownie z kolumny Register na karcie Meter; przy multi slave sprawdź też `SlaveId`. Po włączeniu lub wyłączeniu multi slave przydziel adresy ponownie (**Allocate**) i przepisz nowe numery.

### Wartości się nie zmieniają

Sprawdź cykl odczytu bramki i limit odczytów licznika. Czas systemowy bramki musi być poprawny (ustawiony ręcznie lub przez SNTP), w przeciwnym razie znaczniki czasu odczytu i średni przepływ są błędne.

### Niewielka różnica względem strony bramki

Wartość zmiennoprzecinkowa ma około 7 cyfr znaczących, więc ostatnie cyfry mogą się nieznacznie różnić od wartości w interfejsie WWW bramki.

## Dostępne urządzenia

solvimus MBUS-GEM – wodomierz Moduł

Zmienne niestandardowe

|                            |                                                                                                                                                                                   |
|----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `RegMeter` (numeric) = 10  | Początek wpisu licznika (numer seryjny, czas odczytu, stan odczytu) — przy Modbus multi slave 10, w przeciwnym razie liczba z kolumny Register w wierszu licznika na karcie Meter |
| `RegVolume` (numeric) = 20 | Początek wartości objętości (jednostka m³) — liczba z kolumny Register w wierszu objętości na karcie Meter                                                                        |
| `RegFlow` (numeric) = 30   | Początek wartości przepływu (jednostka m³/h, m³/min lub m³/s) — liczba z kolumny Register w wierszu przepływu na karcie Meter                                                     |

Objętość wody Zmienna Tylko do odczytu

Stan wodomierza w m³ z dokładnością do trzech miejsc po przecinku; pokazuje błąd, gdy bramka nie mogła odczytać licznika

Rejestr: H:RegVolume+4 Float Jednostka: m³ numeric

Atrybuty serwisowe

|                        |                                                                                  |
|------------------------|----------------------------------------------------------------------------------|
| Numer seryjny licznika | Numer seryjny licznika M-Bus — potwierdza, że szablon odczytuje właściwy licznik |

Średni przepływ wody Zmienna Tylko do odczytu

Średni przepływ między dwoma ostatnimi odczytami bramki w l/h — do wykrywania wycieków, na przykład gdy woda płynie w nocy

Rejestr: H:RegVolume+4, H:RegMeter+4 Float, UInt32 Jednostka: l/h numeric

Przepływ wody Zmienna Tylko do odczytu

Przepływ zgłaszany przez sam licznik, w m³/h; zmienia się tylko przy każdym odczycie bramki

Rejestr: H:RegFlow+4 Float Jednostka: m³/h numeric

**Połączenie:** Modbus TCP • Slave ID: $\[SlaveId]

Możliwe ulepszenia (3)

- H:RegVolume+0 Unscaled meter value (64-bit integer) with scaling factor — Int64 at offset 0–3 with the power-of-ten scaling factor at offset 6; preferred by the manual for exact billing, 0 when the meter sends a floating-point value. The template reads the scaled Float at offset 4.
- H:RegVolume+8 Timestamp of the value from the meter — UNIX time provided by the meter for the value, 0 if the meter provides none. The template uses the readout time of the meter entry (H:RegMeter+4) instead.
- H:RegMeter+2 Manufacturer code of the meter — Three letters encoded in 5-bit groups.

## Źródła

- solvimus MBUS-GEM User manual v1.31 (Modbus TCP server, network configuration)
  
  [www.solvimus.de](https://www.solvimus.de/wp-content/uploads/2026/02/UG_EN_MBUS-GEM.pdf) 2026-11-05
- solvimus MBUS-GEM datasheets (MBUS-GE20M/80M and MBUS-GE125M/250M/500M)
  
  [www.solvimus.de](https://www.solvimus.de/wp-content/uploads/2026/09/DB_EN_MBUS_GEM_2TE.pdf) 2026-11-05

## 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/)

