Komunikační protokol M-Bus

Driver protokolu M-Bus slouží pro připojení měřičů (elektroměrů, vodoměrů, kalorimetrů…), které komunikují protokolem M-Bus. Musíme rozlišovat:

PLC Domat, s výjimkou podstanice mark150, rozhraní M-Bus fyzicky nemají, a je proto nutné pro připojení sběrnice M-Bus na PLC použít převodník, např. Domat R095 nebo R096. Převodník se připojuje na rozhraní RS232, tedy např. COM1 nebo COM2 u mark320. Toto číslo COM portu se proto vybírá v nastavení driveru.

Pravým kliknutím na PLC založíme nový kanál. V pravé části nastavíme jeho vlastnosti:

Parametry protokolu M-Bus

Parametry sériové linky

Následující parametry musejí odpovídat nastavení měřičů, které jsou na M-Bus připojeny. Měřiče musí být naadresovány a musejí mít nastavenou stejnou komunikační rychlost, jaká je nastavena zde.

Pravým kliknutím na kanál otevřeme kontextové menu. Pro přidání měřiče existují čtyři možnosti:

Pokud známe typ měřiče a jeho adresu, tedy sběrnice je (nebo bude) nakonfigurovaná předem a máme k dispozici tabulku měřičů s adresami, je možné použít funkci Přidat zařízení, v něm Přidat skupinu a ve skupině Přidat datový bod (nebo postupně více datových bodů, podle toho, kolik hodnot potřebujeme z měřiče číst). K tomu je ale nutné znát parametry DIF/VIF a offset hodnoty v telegramu. Ty by měl dodat výrobce měřiče. Je proto vhodnější postupovat tak, že vytvoříme měřič M-Bus z reálného zařízení:

Pokud PLC není v režimu Oživování, je do něj automaticky přepnuto:

M-Bus commissioning mode

Select primary or secondary address

V seznamu zařízení na komunikačním kanálu se objeví nové zařízení s příslušnou adresou a vlastnostmi, které byly vyčteny ze  skutečného přístroje na sběrnici.

Pokud je na sběrnici připojeno více měřičů a je nutné je detekovat nebo potřebujeme zkontrolovat, zda je komunikace v pořádku, použijeme funkci Hledat M-Bus měřiče v síti.

M-Bus commissioning mode

Select primary or secondary address

Nalezené měřiče

V tomto příkladu byl na sběrnici nalezen pouze jeden měřič.

(Dialog zároveň umožňuje změnit nebo nastavit primární adresu měřiče. To může významně usnadnit uvádění do provozu - adresování probíhá zároveň s kontrolou a není potřeba používat cizí adresovací program s M-Busovým převodníkem na portu PC. Adresování M-Bus měřičů lze tedy provádět i na dálku přes PLC v módu oživování.)

Měřiče, které chceme importovat, označíme v okénku Importovat. Neoznačené měřiče budou při importu ignorovány. Individuální výběr se využívá například tehdy, přidáváme-li další měřiče na již nakonfigurovanou sběrnici. Při výběru všech měřičů by se existující měřiče importovaly znovu a vznikla by duplicitní zařízení.

Pokud je měřič stejného typu nalezen v knihovně M-busových zařízení, převezme se zařízení včetně seznamu vybraných proměnných z knihovny. Chceme-li pro detekovaný měřič založit samostatné zařízení a ručně vybrat importované proměnné ze seznamu všech proměnných, dostupných v měřiči, zaškrtneme  u měřiče volbu Vytvořit. Měřiče jsou pak importovány postupně s možností výběru konkrétních proměnných pro každý z nich.

Funkce Přidat zařízení vloží do kanálu „prázdné“ zařízení, jehož všechny parametry je nutné vyplnit ručně. Tato funkce se používá tehdy, potřebujeme-li vytvořit zařízení s definovanými parametry a nemáme přístup na funkční sběrnici s měřičem.

Funkce Přidat zařízení z knihovny nabízí vložení zařízení, které je uloženo v knihovně M-Busových měřičů. Tato knihovna bude v dalších verzích Mervis IDE postupně rozšiřována, aktuálně je možné si do ní uložit vlastní měřiče (pravým tlačítkem na měřič, Vytvořit knihovnu). Po vybrání zařízení z knihovny mu nezapomeňme nastavit primární nebo sekundární adresu měřiče a vybrat, kterou z nich bude  PLC s měřičem komunikovat:

Zařízení vložené z knihovny

Vkládání měřičů do knihovny

Jakmile je zařízení vytvořeno a vyzkoušeli jsme komunikaci, můžeme jeho prototyp přidat do knihovny a příště ho místo detekce vložit z knihovny. Pro uložení do knihovny je třeba vyplnit ve vlastnostech zařízení sekce Definice prototypu a Informace o zařízení.

Vlastnosti zařízení

Vlastnosti zařízení

Parametry zařízení M-Bus

Definice prototypu

Informace o zařízení

Ruční přidávání měřičů a hodnot

Kromě detekování měřičů na sběrnici je možné i přidávat další hodnoty ručně, stejně jako u jiných protokolů. Tento postup má výhodu větší flexibility u měřičů, které používají segmentaci:

Některé M-busové měřiče mohou odpověď dělit na více telegramů kvůli omezení max. délky M-Bus rámce na 255 bytů, je tedy potřeba řešit tzv. segmentaci. Standardní způsob segmentace je takový, že se pošle inicializační dotaz SND_NKE, který měřidlo potvrdí a resetuje si interní čítač segmentu. Master ale dopředu neví, kolik segmentů je k dispozici, a nemá jak to zjistit. Řeší se to tak, že v dotazu na data (REQ_UD2) je dedikován jeden bít (FCB) jako indikátor požadavku na další telegram v pořadí. Měřidlo si pamatuje poslední přijatý FCB a pokud se liší od aktuálně přijatého, pošle další segment v pořadí a inkrementuje čítač segmentů. Master tedy postupně posílá REQ_UD2 a neguje FCB, aby dostal další segment v pořadí. Poslední segment má na konci specifický DIF (0F) a dotazování končí.

Pokud má měřič pouze dva telegramy odpovědi, lze podle normy realizovat segmentaci tak, že FCB bude přímo svázané se segmentem. Tzn. pro FCB=0 měřič vrací vždy první segment odpovědi, pro FCB=1 druhý segment odpovědi. Není potřeba posílat inicializaci, měřič nemusí mít interní čítač segmentů, ani si pamatovat poslední stav FCB.

Tato pravidla je dobré znát, pokud tvoříme měřič ručně. Skupina (Group) datových bodů v zařízení odpovídá segmentu. Parametr ve skupině „Číslo telegramu“ je číslo segmentu.

M-Bus číslo telegramu

U proměnných ve skupině jsou nejdůležitější parametry DIF/VIF a Offset. Ty určují pozici hodnoty v telegramu.

Proměnná M-Bus - ruční vyplnění