Sie sind auf Seite 1von 39

Anwendungshinweis

Gebäude
TIA

Automation

Simatic TIA Portal


Bausteinbeschreibungen für die
M-Bus-Klemme 753-649
A2018001

Version 1.0.0
2 Anwendungshinweis –
Bausteinbeschreibungen für die M-Bus-Klemme 753-649

© 2021 by WAGO Kontakttechnik GmbH & Co. KG


Alle Rechte vorbehalten.

WAGO Kontakttechnik GmbH & Co. KG

Hansastraße 27
D-32423 Minden

Tel.: +49 (0) 571/8 87 – 0


Fax: +49 (0) 571/8 87 – 1 69

E-Mail: info@wago.com

Web: http://www.wago.com

Technischer Support

Tel.: +49 (0) 571/8 87 – 445 55

E-Mail: support@wago.com

Es wurden alle erdenklichen Maßnahmen getroffen, um die Richtigkeit und


Vollständigkeit der vorliegenden Dokumentation zu gewährleisten. Da sich
Fehler, trotz aller Sorgfalt, nie vollständig vermeiden lassen, sind wir für
Hinweise und Anregungen jederzeit dankbar.

Wir weisen darauf hin, dass die in diesem Dokument verwendeten Soft- und
Hardwarebezeichnungen und Markennamen der jeweiligen Firmen im
Allgemeinen einem Warenzeichenschutz, Markenzeichenschutz oder
patentrechtlichem Schutz unterliegen.

Version 1.0.0
Anwendungshinweis Beschreibung 3

Hinweise zu dieser Dokumentation

Urheberschutz
Diese Dokumentation, einschließlich aller darin befindlichen Abbildungen, ist
urheberrechtlich geschützt. Jede Weiterverwendung dieser Dokumentation, die
von den urheberrechtlichen Bestimmungen abweicht, ist nicht gestattet. Die
Reproduktion, Übersetzung in andere Sprachen sowie die elektronische und
fototechnische Archivierung und Veränderung bedarf der schriftlichen
Genehmigung der WAGO Kontakttechnik GmbH & Co. KG, Minden.
Zuwiderhandlungen ziehen einen Schadenersatzanspruch nach sich.
WAGO ist eine eingetragene Marke der WAGO Verwaltungsgesellschaft mbH.

Darstellung der Zahlensysteme


Tabelle 1: Darstellungen der Zahlensysteme
Zahlensystem Beispiel Bemerkung
Dezimal 100 Normale Schreibweise
Hexadezimal 0x64 C-Notation
Binär '100' In Hochkomma,
'0110.0100' Nibble durch Punkt getrennt

Schriftkonventionen
Tabelle 2: Schriftkonventionen
Schriftart Bedeutung
kursiv Namen von Pfaden und Dateien werden kursiv dargestellt z. B.:
C:\Programme\WAGO-I/O-CHECK
Menü Menüpunkte werden fett dargestellt z. B.:
Speichern
> Ein „Größer als“- Zeichen zwischen zwei Namen bedeutet die
Auswahl eines Menüpunktes aus einem Menü z. B.:
Datei > Neu
Eingabe Bezeichnungen von Eingabe- oder Auswahlfeldern werden fett
dargestellt z. B.:
Messbereichsanfang
„Wert“ Eingabe- oder Auswahlwerte werden in Anführungszeichen
dargestellt z. B.:
Geben Sie unter Messbereichsanfang den Wert „4 mA“ ein.
[Button] Schaltflächenbeschriftungen in Dialogen werden fett dargestellt und
in eckige Klammern eingefasst z. B.:
[Eingabe]
[Taste] Tastenbeschriftungen auf der Tastatur werden fett dargestellt und in
eckige Klammern eingefasst z. B.:
[F5]

Version 1.0.0
4 Beschreibung Anwendungshinweis

Symbole

GEFAHR Warnung vor Personenschäden!


Kennzeichnet eine unmittelbare Gefährdung mit hohem Risiko, die Tod
oder schwere Körperverletzung zur Folge haben wird, wenn sie nicht
vermieden wird.

GEFAHR Warnung vor Personenschäden durch elektrischen Strom!


Kennzeichnet eine unmittelbare Gefährdung mit hohem Risiko, die Tod
oder schwere Körperverletzung zur Folge haben wird, wenn sie nicht
vermieden wird.

WARNUNG Warnung vor Personenschäden!


Kennzeichnet eine mögliche Gefährdung mit mittlerem Risiko, die Tod
oder (schwere) Körperverletzung zur Folge haben kann, wenn sie nicht
vermieden wird.

VORSICHT Warnung vor Personenschäden!


Kennzeichnet eine mögliche Gefährdung mit geringem Risiko, die leichte
oder mittlere Körperverletzung zur Folge haben könnte, wenn sie nicht
vermieden wird.

ACHTUNG Warnung vor Sachschäden!


Kennzeichnet eine mögliche Gefährdung, die Sachschaden zur Folge
haben könnte, wenn sie nicht vermieden wird.

ESD Warnung vor Sachschäden durch elektrostatische Aufladung!


Kennzeichnet eine mögliche Gefährdung, die Sachschaden zur Folge
haben könnte, wenn sie nicht vermieden wird.

Hinweis Wichtiger Hinweis!


Kennzeichnet eine mögliche Fehlfunktion, die aber keinen Sachschaden
zur Folge hat, wenn sie nicht vermieden wird.

Information Weitere Information


Weist auf weitere Informationen hin, die kein wesentlicher Bestandteil
dieser Dokumentation sind (z. B. Internet).

Version 1.0.0
Anwendungshinweis Beschreibung 5

Rechtliche Grundlagen

Änderungsvorbehalt
Die WAGO Kontakttechnik GmbH & Co. KG behält sich Änderungen, die dem
technischen Fortschritt dienen, vor. Alle Rechte für den Fall der Patenterteilung
oder des Gebrauchmusterschutzes sind der WAGO Kontakttechnik GmbH &
Co. KG vorbehalten. Fremdprodukte werden stets ohne Vermerk auf
Patentrechte genannt. Die Existenz solcher Rechte ist daher nicht
auszuschließen.

Personalqualifikation
Der in diesem Dokument beschriebene Produktgebrauch richtet sich
ausschließlich an Fachkräfte mit einer Ausbildung in der SPS-Programmierung,
Elektrofachkräfte oder von Elektrofachkräften unterwiesene Personen, die
außerdem mit den geltenden Normen vertraut sind.

Ferner müssen genannte Personen mit allen in diesem Dokument genannten


Produkten und deren Gebrauchsanleitungen vertraut sein. Sie müssen in der
Lage sein, auch solche Gefährdungen richtig abschätzen zu können, die sich erst
durch die Kombination der Produkte ergeben.

Für Fehlhandlungen und Schäden, die an WAGO-Produkten und


Fremdprodukten durch Missachtung der Informationen dieses Dokumentes
entstehen, übernimmt die WAGO Kontakttechnik GmbH & Co. KG keine
Haftung.

Haftungsbeschränkung
Diese Dokumentation beschreibt den Einsatz diverser Hardware- und
Softwarekomponenten in spezifischen Beispielanwendungen. Die Komponenten
können Produkte oder Teile von Produkten unterschiedlicher Hersteller
darstellen. Hinsichtlich bestimmungsgemäßer und sicherer Verwendung der
Produkte gelten ausschließlich die jeweiligen Gebrauchsanleitungen der
Hersteller. Für deren Inhalte sind ausschließlich die jeweiligen Hersteller der
Produkte verantwortlich.

Die in dieser Dokumentation beschriebenen Beispielanwendungen stellen


Konzepte, also technisch mögliche Anwendungen dar. Ob diese Konzepte im
konkreten Einzelfall realisiert werden können, hängt von diversen
Randbedingungen ab. Beispielsweise können andere Versionen der Hardware-
oder Softwarekomponenten eine andere als die beschriebene Handhabung
erfordern. Aus den hier enthaltenen Beschreibungen leitet sich daher kein
Anspruch auf eine bestimmte Beschaffenheit der Produkte ab.

Die Verantwortung für die sichere Verwendung einer konkreten Software- oder
Hardwarekonfiguration liegt bei demjenigen, der sie erstellt bzw. betreibt. Dies
gilt auch dann, wenn bei der Realisierung eines der in diesem Dokument
beschriebenen Konzepte umgesetzt wurde.

Version 1.0.0
6 Beschreibung Anwendungshinweis

Die WAGO Kontakttechnik GmbH & Co. KG übernimmt für Realisierungen


dieser Konzepte keine Haftung.

Inhaltsverzeichnis
Inhaltsverzeichnis .................................................................................................. 6
1 Beschreibung ................................................................................................ 7
2 Verwendetes Material .................................................................................. 7
2.1 Geräte ........................................................................................................ 7
2.2 Tools .......................................................................................................... 7
3 Systemkonfiguration .................................................................................... 8
3.1 Beispielprojekt .......................................................................................... 9
4 Funktionsblöcke ......................................................................................... 12
4.1 M-Bus Kommunikation (FbMbusCommunicationBase) ........................ 12
4.2 Zählerbausteine ....................................................................................... 15
4.2.1 M-Bus Wasserzähler (FbMbusWater) ................................................ 15
4.2.2 M-Bus Elektrozähler (FbMbusElectricity) ......................................... 17
4.2.3 M-Bus Wärmezähler (FbMbusHeat) .................................................. 19
4.3 Datenstruktur: eEnum_Unit .................................................................. 22
4.4 Datenword: wMed .................................................................................. 23
4.5 Sonstiges ................................................................................................. 24
4.5.1 Allgemeiner M-Bus Datensatz (FbMbusGeneral).............................. 24
4.5.2 M-Bus Rohdaten (FbMbusRawData) ................................................. 26
4.5.3 M-Bus Daten senden (FbMbusSendData) .......................................... 28
4.5.4 M-Bus Status (FbMbusStatus) ........................................................... 31
4.5.5 M-Bus Statistic (FbMbusStatistic) ..................................................... 33
4.5.6 M-Bus Scan IDs (FbMbusScanID) .................................................... 34
5 Datenstrukturen ......................................................................................... 36
6 Datenbausteine ........................................................................................... 37
7 Anhang ........................................................................................................ 38
7.1 Inbetriebnahme Hinweise........................................................................ 38

Version 1.0.0
Anwendungshinweis Beschreibung 7

1 Beschreibung
Dieser Anwendungshinweis beschreibt die Anbindung einer M-Bus-Klemme,
über einen Profinet Koppler, an eine Siemens S7 1500 SPS und die Bedienung
der entsprechenden M-Bus Funktionsblöcke.

Beachten sie bitte das Handbuch zum Modul 753-649.

2 Verwendetes Material
2.1 Geräte
Lieferant Anzahl Bezeichnung Bestnr. Version*

WAGO 1 Feldbuskoppler 750-375 FW06


PROFINET IO advanced HW01

WAGO 1 M-Bus-Klemme 753-649

SIEMENS 1 SPS 1511-1 PN 6ES7 511- V1.1


1AK00-
0AB0
*diese Version wurde bei Erstellung des Anwendungshinweises verwendet.

Hinweis Die Bausteine können auch auf einer SPS der Serie 12xx benutzt werden.
Jedoch sind einige SPSen aufgrund des geringen Speicherausbaus nicht
geeignet. Bei der Verwendung von mehreren Zählerbausteinen ist zu
prüfen, ob der Speicher der Siemens SPS ausreichend ist.

2.2 Tools
Bezeichnung Bestnr. Version*

TIA Portal V13 SP1


Update 5

Version 1.0.0
8 Systemkonfiguration Anwendungshinweis

3 Systemkonfiguration

In der Netzsicht kann der Koppler über den Produktkatalog > Weitere
FELDGERÄTE > PROFINET IO > I/O > Wago Kontakttechnik GmbH &
Co.KG hinzugefügt werden.

Anschließend werden Koppler und PLC_1 über ein PROFINET IO-System


miteinander verbunden.

In der Gerätesicht der Wago-Station werden Module über den Katalog


hinzugefügt.

Außerdem können die Ein-/Ausgangsadressen der Module angepasst werden


und einem Prozessabbild zugeordnet werden.

Version 1.0.0
Anwendungshinweis Systemkonfiguration 9

3.1 Beispielprojekt

Im ersten Netzwerk findet die Anbindung des Moduls an die Hardware statt. Es
muss über die Bausteine DPRD_DAT und DPWR_DAT(Netzwerk 4)
zugegriffen werden. Es wird ein Datenbaustein benötigt in dem die Ein-und
Ausgangsdaten erfasst werden. In diesem Beispiel wird der Datenbaustein
DB300 benutzt.

Im zweiten Netzwerk ist der grundlegende Kommunikationsbaustein zu sehen.


Für jedes M-Bus Modul wird genau ein Kommunikationsbaustein benötigt.

Version 1.0.0
10 Systemkonfiguration Anwendungshinweis

Es wird ein Datenbaustein zur Kommunikation mit den Zählern benötigt. In


diesem Beispiel wird der Datenbaustein DB301 benutzt.

Im dritten Netzwerk ist der eigentliche M-Bus Zähler zu finden. In diesem


Beispiel ein Wärmezähler mit der Primäradresse 1. Über den Eingang typData
und somit den Datenbaustein DB301 ist eine Verbindung zum
Kommunikationsbaustein herzustellen.

Version 1.0.0
Anwendungshinweis Systemkonfiguration 11

Version 1.0.0
12 Funktionsblöcke Anwendungshinweis

4 Funktionsblöcke
4.1 M-Bus Kommunikation
(FbMbusCommunicationBase)

Siemens TIA Portal


Kategorie:
Name: FbMbusCommunicationBase
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:
Verwendete Bibliothek:

Eingangsparameter: Datentyp: Kommentar:


bBaudrate BYTE Baudrate der M-Bus Zähler
1:BAUD_2400
2:BAUD_9600
Voreinstellung = BAUD_2400 (ist die
allgemein übliche M-Bus Baudrate)
tTimeout TIME Timeout für M-Bus Kommunikation
Voreinstellung = t#1000ms
tCmdDelay TIME Zeitverzögerung nach dem SND_NKE
Telegramm
iMaxRepeat INT M-Bus Wiederholungen (Voreinstellung =
3, automatisch nur ein Versuch bei Senden
auf Broadcast- Adresse 255)
abIn_753_649 Array[0..23 Zugriff auf das Eingangsabbild des Moduls
] of Byte 753-649

Ein- / Ausgabeparameter Datentyp: Kommentar:


abOut_753_649 Array[0..23 Zugriff auf das Ausgangsabbild des
] of Byte Moduls 753-649
typData typMbus_ Kommunikationsstruktur für alle Bausteine
Module
xReset BOOL Reset der Kommunikation und der
Ausgänge „bFeedback“ und
„iCounterMbusResponse“
Ausgabeparameter Datentyp: Kommentar:
bFeedback BYTE Status- bzw. Fehlermeldungen
iCounterMbusResponse INT Anzahl Mbus-Telegramme die empfangen
wurden

Version 1.0.0
Anwendungshinweis – 13
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

Grafische Darstellung:

Version 1.0.0
14 Funktionsblöcke Anwendungshinweis

Funktionsbeschreibung:
Der Funktionsbaustein FbMbusCommunicationBase wird für jedes Modul 753-649
benötigt. Der Baustein ist zyklisch im Programm aufzurufen.
Die Ein-/Ausgangsvariable „typData“ enthält alle notwendigen Aufrufparameter und
Daten der empfangenen / zu sendenden M-Bus Telegramme. An allen Bausteinen
die zu einer Mbus Klemme gehören ist dieselbe Variable anzulegen.
Die Variablen „bFeedback“ liefert Fehlermeldungen und Statusmeldungen.
Fehlermeldungen:
0: Status OK
4: Fehler Applikation Timeout
5: Status Busy, warten auf Antwort
6: Fehler CRC Fehler erkannt
7: Fehler Frame Fehler erkannt
10: Fehler Ungültiges Telegramm
11: Status Warten auf Antwort
12: Fehler Antwort Timeout
13: Fehler Fehler erkannt, ggf. ist der K-Bus nicht mit Spannung versorgt
14: Fehler Kollision auf Busleitung
15:Fehler Anfrage zurückgewiesen
16: Fehler Kurzschluss
18: Fehler Übertemperatur
19: Fehler FEC
20: Fehler FVOLT
21: Fehler Overload
22: Fehler Nicht bereit
23: Fehler Keine M-Bus Spannung verfügbar

Version 1.0.0
Anwendungshinweis – 15
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

4.2 Zählerbausteine
4.2.1 M-Bus Wasserzähler (FbMbusWater)

Siemens TIA Portal


Kategorie:
Name: FbMbusWater
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
dwAddress DWORD M-Bus Primäradresse
xStart BOOL Variable zum Start der Auslesung des
Wasserzählers.
xSND_NKE BOOL M-Bus Normierungskommando vorweg

Ein- / Ausgabeparameter Datentyp: Kommentar:


typData typMbus_M Kommunikationsstruktur für alle
odule Bausteine eines Masters

Ausgabeparameter Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen
vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
97 = keine auswertbaren Datensätze
iLength INT Länge des Antworttelegramms
typMbus_Info typMBus_Inf Feste Zählerdaten (Header im Daten-
o Telegramm mit ID, Hersteller, Medium, ..)
.bPAdr BYTE Gelesene Primäradresse
.sID STRING Sekundäradresse (ID)
.sMAN STRING 3-stelliges Herstellerkürzel
.wMED WORD zu messendes Medium
.bMGen BYTE Versionsnummer (Generation)
.bMStatus BYTE M-Bus Status-Byte
.bAllRecords BYTE Anzahl Daten- Records im Telegramm
.bGoodRecords BYTE Ausgewertete Daten- Records
typVolume typMBus_ Gezähltes Wasser-Volumen (Wert, 10er
Record Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit Int Einheit als Konstante (Enumeration)
typFlow typMBus_ Momentaner Wasser- Durchfluss
Record (Wert, 10er Potenz, Einheit)

Version 1.0.0
16 Funktionsblöcke Anwendungshinweis

.diValue DINT Wert


.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit Int Einheit als Konstante (Enumeration)
Grafische Darstellung:

Funktionsbeschreibung:
Der Baustein FbMBusWater dient zur Auslesung und Dekodierung der Daten eines M-
Bus Wasserzählers. Zusätzlich werden noch Wärme-, Kälte-, Wärme/Kälte-, Gas-,
Dampf-, Öl- und Massen-Zähler in dieser Kategorie berücksichtigt. Der Baustein kann
nur zusammen mit dem M-Bus Kommunikationsbaustein
FbMbusCommunicationBase ausgeführt werden.
Die Synchronisation der beiden Bausteine wird über die Variablenstruktur „typData“
erreicht und muss deshalb miteinander verbunden sein.
Die Eingangsvariable „dwAddress“ wird mit der Primäradresse des M-Bus
Wasserzählers vorbelegt.
Wenn „xSND_NKE“ gesetzt ist, wird vor der Auslesung der Daten ein M-Bus
Normalisierungs-Kommando zum Zähler geschickt. Somit wird bei Zählern mit Folge-
Telegrammen gewährleistet, dass diese bei der nächsten Abfrage mit ihrem 1.
(wichtigen) Telegramm antworten.
Die Input-Variable „xStart“ startet die Auslesung des Wasserzählers.
„bFeedback“ gibt Auskunft darüber, ob die Auslesung fehlerfrei durchgeführt werden
konnte.
Die Ausgangsvariablen „typVolume“ und „typFlow“ beinhalten bei erfolgreicher
Auslesung das Volumen und den aktuellen Durchfluss des Wasserzählers.
Zu beachten ist, dass nicht alle M-Bus Wasserzähler den Durchfluss in ihrem
Telegramm liefern. In diesem Fall bleiben die Stringvariablen leer.
Wichtig:
Nur Zähler mit folgender Mediums-Einstellung werden ausgewertet:
Water, Hot Water, Cold Water, Dual Water,
Oil, Gas, Steam, Compressed Air,
Heat, Heat Inlet, Heat Outlet, Heat/Cooling, Cooling Inlet, Cooling Outlet.

Version 1.0.0
Anwendungshinweis – 17
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

4.2.2 M-Bus Elektrozähler (FbMbusElectricity)

Siemens TIA Portal


Kategorie:
Name: FbMbusElectricity
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
dwAddress DWORD M-Bus Primäradresse
xStart BOOL Toggle- Variable zum Start der
Auslesung des Elektrozählers.
xSND_NKE BOOL M-Bus Normierungskommando vorweg

Ein- / Ausgabeparameter Datentyp: Kommentar:


typData typMbus_M Kommunikationsstruktur für alle
odule Bausteine eines Masters

Ausgabeparameter: Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen
vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
97 = keine auswertbaren Datensätze
iLength INT Länge des Antworttelegramms
typMbus_Info typMbus_Inf Feste Zählerdaten (Header im Daten-
o Telegramm mit ID, Hersteller, Medium, ..)
.bPAdr BYTE Gelesene Primäradresse
.sID STRING Sekundäradresse (ID)
.sMAN STRING 3-stelliges Herstellerkürzel
.wMED WORD zu messendes Medium
.bMGen BYTE Versionsnummer (Generation)
.bMStatus BYTE M-Bus Status-Byte
.bAllRecords BYTE Anzahl Daten- Records im Telegramm
.bGoodRecords BYTE Ausgewertete Daten- Records
typEnergy typMbus_ Zählerstand der verbrauchten Energie
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)
typPower typMbus_ Momentane elektrische Leistung
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)

Version 1.0.0
18 Funktionsblöcke Anwendungshinweis

typVoltage typMbus_ Spannung


Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)
typCurrent typMbus_ Strom
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)
Grafische Darstellung:

Funktionsbeschreibung:
Der Baustein FbMbusElectricity dient zur Auslesung und Dekodierung der Daten
eines M-Bus Elektrozählers. Er kann nur zusammen mit dem M-Bus
Kommunikationsbaustein FbMbusCommunicationBase ausgeführt werden.
Die Synchronisation der beiden Bausteine wird über die Variablenstruktur „typData“
erreicht und muss deshalb miteinander verbunden sein.
Die Eingangsvariable „dwAddress“ wird mit der Primäradresse des M-Bus
Elektrozählers vorbelegt.
Wenn „xSND_NKE“ gesetzt ist, wird vor der Auslesung der Daten ein M-Bus
Normalisierungs-Kommando zum Zähler geschickt. Somit wird bei Zählern mit
Folge-Telegrammen gewährleistet, dass diese bei der nächsten Abfrage mit ihrem
1.(wichtigen) Telegramm antworten.
Die Input-Variable „xStart“ startet die Auslesung des Elektrozählers. Wenn die
Auslesung beendet ist, wird „xReady“ auf TRUE gesetzt.
„bFeedback“ gibt Auskunft darüber, ob die Auslesung fehlerfrei durchgeführt
werden konnte.
Die Ausgangsvariablen „typEnergy“ und „typPower“ beinhalten bei erfolgreicher
Auslesung den aktuellen Energieverbrauch und die aktuelle Leistung des
Elektrozählers. Zu beachten ist, dass nicht alle M-Bus Elektrozähler die Leistung in
ihrem Telegramm liefern. In diesem Fall bleiben die Variablen leer.

Wichtig:
Nur Zähler mit der Mediums-Einstellung “Electricity“ werden ausgewertet.

Version 1.0.0
Anwendungshinweis – 19
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

4.2.3 M-Bus Wärmezähler (FbMbusHeat)

Siemens TIA Portal


Kategorie:
Name: FbMbusHeat
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
dwAddress DWORD M-Bus Primäradresse
xStart BOOL Toggle- Variable zum Start der
Auslesung des Elektrozählers.
xSND_NKE BOOL M-Bus Normierungskommando vorweg

Ein- / Ausgabeparameter Datentyp: Kommentar:


typData typMbus_M Kommunikationsstruktur für alle
odule Bausteine eines Masters

Ausgabeparameter: Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen
vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
97 = keine auswertbaren Datensätze
iLength INT Länge des Antworttelegramms
typMbus_Info typMbus_Inf Feste Zählerdaten (Header im Daten-
o Telegramm mit ID, Hersteller, Medium, ..)
.bPAdr BYTE Gelesene Primäradresse
.sID STRING Sekundäradresse (ID)
.sMAN STRING 3-stelliges Herstellerkürzel
.wMED WORD zu messendes Medium
.bMGen BYTE Versionsnummer (Generation)
.bMStatus BYTE M-Bus Status-Byte
.bAllRecords BYTE Anzahl Daten- Records im Telegramm
.bGoodRecords BYTE Ausgewertete Daten- Records
typEnergy typMbus_ Zählerstand der verbrauchten Energie
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)
typPower typMbus_ Momentane Wärme-Leistung
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)

Version 1.0.0
20 Funktionsblöcke Anwendungshinweis

typVolume typMbus_ Gezähltes Wasser- Volumen


Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)
typFlow typMbus_ Momentaner Durchfluss
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)
typFTemp typMbus_ Vorlauf-Temperatur
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)
typRTemp typMbus_ Rücklauf-Temperatur
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)
typDTemp typMbus_ Differenz-Temperatur
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit INT Einheit als Konstante (Enumeration)

Grafische Darstellung:

Version 1.0.0
Anwendungshinweis – 21
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

Funktionsbeschreibung:
Der Baustein FbMbusHeat dient zur Auslesung und Dekodierung der Daten eines
M-Bus Wärmezählers. Er kann nur zusammen mit dem M-Bus Kommunikations-
baustein FbMbusCommunicationBase ausgeführt werden.
Die Synchronisation der beiden Bausteine wird über die Variablenstruktur „typData“
erreicht und muss deshalb miteinander verbunden sein.
Die Eingangsvariable „dwAddress“ wird mit der Primäradresse des M-Bus
Wärmezählers vorbelegt.
Wenn „xSND_NKE“ gesetzt ist, wird vor der Auslesung der Daten ein M-Bus
Normalisierungs-Kommando zum Zähler geschickt. Somit wird bei Zählern mit
Folge-Telegrammen gewährleistet, dass diese bei der nächsten Abfrage mit ihrem
1.(wichtigen) Telegramm antworten.
Die Input-Variable „xStart“ startet die Auslesung des Wärmezählers. Wenn die
Auslesung beendet ist, wird die Variable „xReady“ auf TRUE gesetzt.
„bEeedback“ gibt Auskunft darüber, ob die Auslesung fehlerfrei durchgeführt
werden konnte.
Die Ausgangsvariablen „typEnergy“ und „typPower“ beinhalten bei erfolgreicher
Auslesung den aktuellen Energieverbrauch und die aktuelle Leistung des
Wärmezählers. „typVolume“ und „typFlow“ liefern das aktuelle Volumen und den
aktuellen Durchfluss. Die gemessene Vorlauf- und Rücklauf-Temperatur und die
Differenz-Temperatur werden durch die Variablen „typFTemp“, „typRTemp“ und
„typDTemp“ repräsentiert.
Zu beachten ist, dass viele M-Bus Wärmezähler nicht alle Variablen in ihrem
Telegramm liefern. In diesem Fall bleiben die entsprechenden Variablen leer.

Wichtig:
Nur Zähler mit folgender Mediums-Einstellung werden ausgewertet:
Heat, Heat Inlet, Heat Outlet, Heat/Cooling, Cooling Inlet, Cooling Outlet,
Hot Water

Version 1.0.0
22 Funktionsblöcke Anwendungshinweis

4.3 Datenstruktur: eEnum_Unit


Die Variable “eEnum_Unit“ kann folgende Werte annehmen:
0..4: MBus_miW, MBus_W, MBus_kW, MBus_MW, MBus_GW,
5..9: MBus_miJps, MBus_Jps, MBus_kJps, MBus_MJps, MBus_GJps,
10..14: MBus_miJpmin, MBus_Jpmin, MBus_kJpmin, MBus_MJpmin, MBus_GJpmin,
15..19: MBus_miJph, MBus_Jph, MBus_kJph, MBus_MJph, MBus_GJph,
20..24: MBus_miWs, MBus_Ws, MBus_kWs, MBus_MWs, MBus_GWs,
25..29: MBus_miJ, MBus_J, MBus_kJ, MBus_MJ, MBus_GJ,
30..34: MBus_miWmin, MBus_Wmin, MBus_kWmin, MBus_MWmin, MBus_GWmin,
35..39: MBus_miWh, MBus_Wh, MBus_kWh, MBus_MWh, MBus_GWh,
40..42: MBus_mil, MBus_l, MBus_m3,
43..45: MBus_milps, MBus_lps, MBus_m3ps,
46..48: MBus_milpmin, MBus_lpmin, MBus_m3pmin,
49..51: MBus_milph, MBus_lph, MBus_m3ph,
52..53: MBus_g, MBus_kg,
54..55: MBus_gps, MBus_kgps,
56..57: MBus_gpmin, MBus_kgpmin,
58..59: MBus_gph, MBus_kgph,
60..62: MBus_mibar, MBus_bar, MBus_kbar,
63..64: MBus_miC, MBus_C,
65..66: MBus_miK, MBus_K,
67: MBus_HCA,
68: Mbus_none,
69: MBus_V,
70..71: MBus_miA, MBus_A,
72: MBus_pRH,
73: MBus_Hz

mi = milli, k = kilo, M = Mega, G = Giga


ps = pro Sekunde, pmin = pro Minute, ph = pro Stunde
l = Liter, m3 = m3 ,W = Watt, J = Joule
HCA = Heat Cost Allocator (ohne Einheit)
none = ungültig

Hinweis:
Achtung, aufgrund des verwendeten REAL- Zahlenformats kann es bei den konvertierten
Zählerständen zu Rundungsfehlern kommen. Eingangswerte die außerhalb des Wertebereichs  3
999 999 999 liegen können nicht konvertiert werden.

Version 1.0.0
Anwendungshinweis – 23
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

4.4 Datenword: wMed


Die Variable “wMed“ kann folgende Werte annehmen:
0. Other
1. Oil
2. Electricity
3. Gas
4. Heat
5. Steam
6. Warm/Hot water
7. Water
8. HCA
9. Compressed Air
10. Cooling Outlet
11. Cooling Inlet
12. Heat Inlet
13. Heat/Cooling
14. Bus/System
15. Unknown type
16. Reserved
17. Reserved
18. Reserved
19. Reserved
20. Calorific
21. Hot water
22. Cold water
23. Dual register
24. Pressure
25. A/D converter
26. Smoke detector
27. Room sensor
28. Gas detector
29. Reserved
30. Reserved
31. Reserved
32. Breaker
33. Valve
34. Reserved
35. Reserved
36. Reserved
37. Customer Unit
38. Reserved
39. Reserved
40. Waste water
41. Garbage
42. Reserved
43. Reserved
44. Reserved
45. Reserved
46. Reserved
47. Reserved
48. Reserved
49. Gateway
50. Unid repeater
51. Bid repeater
52. Reserved
53. Reserved
54. Radio system
55. Radio meter

Version 1.0.0
24 Funktionsblöcke Anwendungshinweis

4.5 Sonstiges
4.5.1 Allgemeiner M-Bus Datensatz (FbMbusGeneral)

Siemens TIA Portal


Kategorie:
Name: FbMbusGeneral
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
dwAddress DWORD M-Bus Primäradresse
xStart BOOL Toggle- Variable zum Start der Auslesung
des M-Bus Zählers.
xSND_NKE BOOL M-Bus Normierungskommando vorweg

Ein- / Ausgabeparameter Datentyp: Kommentar:


typData typMbus_Modul
Kommunikationsstruktur für alle Bausteine
e eines Masters

Ausgabeparameter: Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
97 = keine auswertbaren Datensätze
iLength INT Länge des Antworttelegramms
typMBus_Info typMBus_Info Feste Zählerdaten (Header im Daten-
Telegramm mit ID, Hersteller, Medium, ..)
.bPAdr BYTE Gelesene Primäradresse
.sID STRING Sekundäradresse (ID)
.sMAN STRING 3-stelliges Herstellerkürzel
.wMED WORD zu messendes Medium
.bMGen BYTE Versionsnummer (Generation)
.bMStatus BYTE M-Bus Status-Byte
.bAllRecords BYTE Anzahl Daten- Records im Telegramm
.bGoodRecords BYTE Ausgewertete Daten- Records
typMbus_Record typMBus_ M-Bus Zählerwert
Record (Wert, 10er Potenz, Einheit)
.diValue DINT Wert
.siPof10 SINT 10er-Potenz
.sUnit STRING Einheit als String
.eEnum_Unit typMBusUnit Einheit als Konstante (Enumeration)

Version 1.0.0
Anwendungshinweis – 25
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

Grafische Darstellung:

Funktionsbeschreibung:
Der Baustein FbMbusGeneral dient zur Auslesung und Dekodierung der Daten eines
M-Bus Zählers. Er liefert genau einen Zählerstand zurück. Er kann nur zusammen mit
dem M-Bus Kommunikationsbaustein FbMbusCommunicationBase ausgeführt
werden.
Die Synchronisation der beiden Bausteine wird über die Variablenstruktur „typData“
erreicht und muss deshalb miteinander verbunden sein.
Die Eingangsvariable „dwAddress“ wird mit der Primäradresse des M-Bus Zählers
vorbelegt.
Wenn „xSND_NKE“ gesetzt ist, wird vor der Auslesung der Daten ein M-Bus
Normalisierungs-Kommando zum Zähler geschickt. Somit wird bei Zählern mit Folge-
Telegrammen gewährleistet, dass diese bei der nächsten Abfrage mit ihrem
1.(wichtigen) Telegramm antworten.
Die Input-Variable „xStart“ startet die Auslesung des Zählers. Wenn die Auslesung
beendet ist, wird „xReady“ auf TRUE gesetzt.

„bFeedback“ gibt Auskunft darüber, ob die Auslesung fehlerfrei durchgeführt werden


konnte.
Die Ausgangsvariable „typMbus_Record“ beinhaltet bei erfolgreicher Auslesung den
Verbrauchswert des M-Bus Zählers. Wenn das Telegramm mehrere Datensätze enthält,
so wird der wichtigste Datensatz vom Programm automatisch ermittelt.
Folgende Reihenfolge für die Wichtigkeit ist vorgegeben:
1. Energie-Wert
2. Volumen
3. HCA (Heat Cost Allocator, dimensionslos)
4. Leistung
5. Volumenfluss
6. Temperatur
7. Differenztemperatur
8. Druck

Version 1.0.0
26 Funktionsblöcke Anwendungshinweis

4.5.2 M-Bus Rohdaten (FbMbusRawData)

Siemens TIA Portal


Kategorie:
Name: FbMbusRawData
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
dwAddress DWORD M-Bus Primäradresse
xStart BOOL Toggle- Variable zum Start der
Auslesung des M-Bus Zählers.
xSND_NKE BOOL M-Bus Normierungskommando vorweg

Ein- / Ausgabeparameter Datentyp: Kommentar:


typData typMbus_M Kommunikationsstruktur für alle
odule Bausteine eines Masters

Ausgabeparameter: Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen
vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
abData ARRAY Daten-Puffer
[0..255] OF
BYTE

uiLength UINT Belegte Länge im Daten-Puffer

Grafische Darstellung:

Version 1.0.0
Anwendungshinweis – 27
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

Funktionsbeschreibung:
Der Baustein FbMbusRawData dient zur Auslesung eines M-Bus Zählers und liefert
die Rohdaten ohne Auswertung in einem Byte-Array zurück. Er kann nur zusammen
mit dem M-Bus Kommunikationsbaustein FbMbusCommunicationBase ausgeführt
werden.
Die Synchronisation der beiden Bausteine wird über die Variablenstruktur „typData“
erreicht und muss deshalb miteinander verbunden sein.
Die Eingangsvariable „dwAddrress“ wird mit der Primäradresse des M-Bus Zählers
vorbelegt.
Wenn „xSND_NKE“ gesetzt ist, wird vor der Auslesung der Daten ein M-Bus
Normalisierungs-Kommando zum Zähler geschickt. Somit wird bei Zählern mit
Folge-Telegrammen gewährleistet, dass diese bei der nächsten Abfrage mit ihrem
1.(wichtigen) Telegramm antworten.
Die Input-Variable „xStart“ startet die Auslesung des M-Bus Zählers. Wenn die
Auslesung beendet ist, wird „xReady“ auf TRUE gesetzt.
„bFeedback“ gibt Auskunft darüber, ob die Auslesung fehlerfrei durchgeführt
werden konnte.
Die Ausgangsvariable „abData“ beinhaltet bei erfolgreicher Auslesung ein Byte-
Array mit M-Bus Rohdaten und die Variable „uiLength“ gibt die Anzahl der
Nutzdaten an.

Version 1.0.0
28 Funktionsblöcke Anwendungshinweis

4.5.3 M-Bus Daten senden (FbMbusSendData)

Siemens TIA Portal


Kategorie:
Name: FbMbusSendData
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
dwAddress DWORD M-Bus Primäradresse
bC_Field BYTE M-Bus C-Feld (16#53 für Daten senden)
bCI_Field BYTE M-Bus CI-Feld
xSND_NKE BOOL M-Bus Normierungskommando vorweg
aTxPayload ARRAY Daten-Puffer
[0..255] OF
BYTE

bTxLength BYTE Anzahl Bytes im TxPayload-Puffer


xStart BOOL Variable zum Start des Sendens.
Ein- / Ausgabeparameter Datentyp: Kommentar:
typData typMbus_M Kommunikationsstruktur für alle
odule Bausteine eines Masters

Ausgabeparameter: Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen
vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
Grafische Darstellung:

Version 1.0.0
Anwendungshinweis – 29
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

Funktionsbeschreibung:
Der Baustein FbMbusSendData dient zum Senden von Daten zu einem M-Bus
Zähler. Er muss zusammen mit dem M-Bus Kommunikationsbaustein
FbMbusCommunicationBase ausgeführt werden.
Die Synchronisation mehrerer Instanzen des Bausteins oder mit anderen Daten
anfordernden Bausteinen wird über die Variablenstruktur „typData“ erreicht, die
auch vom Kommunikationsbaustein FbMbusCommunicationBase benutzt wird.
Die zu sendenden M-Bus Daten werden in der Eingangsvariablen „aTxPayload“ ab
dem ersten Datenbyte bis zum letzten Datenbyte zur Verfügung gestellt. Ein zu
sendender Datensatz sieht folgendermaßen aus (68 = Startzeichen, L = Längenbyte,
Dat 1, …, Dat n = Daten, CRC = Checksumme, 16 = Stoppzeichen):
68 L L 68 C-Feld PAdr CI-Feld Dat 1 Dat 2 … Dat n CRC 16 (Zahlen hexadezimal).
„aTxPayload“ wird programmtechnisch mit (Dat1, Dat2, …, Dat n) und der
Pufferlänge n vor dem Senden festgelegt. FbMbusSendData fügt automatisch
Startzeichen, Länge, CRC und Stoppzeichen ein. Der über „dwAddress“
adressierte Zähler quittiert den empfangenen Datensatz mit dem Einzelzeichen
16#E5. Wenn alle am Bus befindlichen M-Bus Zähler den Datensatz erhalten sollen,
kann die Broadcast- Adresse 255 ohne Quittung benutzt werden. In diesem Fall
sorgt der
M-Bus Kommunikationsbaustein FbMbusCommunicationBase automatisch dafür,
dass keine Telegramm-Wiederholungen ausgeführt werden und somit keine
unnötigen Wartezeiten durch Timeout entstehen.
„bC_Field“ ist das C-Feld des zu sendenden M-Bus Telegramms. Das C-Feld hat
z.B. den Wert 16#53 für “send data to slave“ (bzw. 16#73 mit gesetztem FCB).
16#52 (bzw. 16#72 mit gesetztem FCB) wird zur Selektion eines Zählers mit Hilfe
seiner 8-stellige ID (Sekundäradresse) an der Primäradresse 253 vorgenommen.
Das CI-Feld 16#51 signalisiert dem adressierten Zähler, dass ihm Daten vom Master
zugesandt werden. Bei dem CI-Feld 16#50 führt der adressierte Zähler das
“Application Reset“ - Kommando aus.
Wenn „xSND_NKE“ gesetzt ist, wird vor dem eigentlichen Senden der Daten noch
zusätzlich ein M-Bus Normalisierungs-Kommando zum adressierten Zähler
geschickt.
Die Input-Variable „xStart“ startet das Senden von Daten zum M-Bus Zähler. Wenn
die Auslesung beendet ist, wird „xReady“ auf TRUE gesetzt.

„bFeedback“ gibt Auskunft darüber, ob das Senden fehlerfrei durchgeführt werden


konnte.

Version 1.0.0
30 Funktionsblöcke Anwendungshinweis

Beispiele:
1. Praxis-Beispiel:
Ein COSMOS Hybrid Wasserzähler der Firma Sensus hat in seinem Standard-
Telegramm nur den Verbrauch und einige historische Werte, nicht aber den
momentanen Durchfluss. Um Verbrauch und Durchfluss gleichzeitig in einem
Telegramm auszugeben, benötigt er vom M-Bus Master zwei Einstelltelegramme:
68 07 07 68 53 02 51 0F 07 55 4D 5E 16 schaltet den Zähler mit
Adresse 2 auf Mischprotokoll (hexadezimale Telegrammdarstellung)
dwAddress:=2
bC_Field:=16#53
bCI_Field:=16#51

aTxPayloadData:=16#0F,16#07,16#55,16#4D
uiLength:=4

68 08 08 68 53 02 51 0F 07 4D 3A 6A AD 16 selektiert Verbrauch u.
Durchfluss beim Zähler mit Adresse 2 (hexadezimale Telegrammdarstellung)
dwAddress:=2
bC_Field:=16#53
bCI_Field:=16#51

aTxPayloadData:=16#0F,16#07,16#4D,16#3A,16#6A
uiLength:=5

Anschließend kann der Zähler mit dem Funktionsbaustein FbMbusWater


ausgelesen werden. Dabei muss die SND_NKE - Option ausgeschaltet sein, da
sonst der Zähler auf sein Standardtelegramm ohne den momentanen Durchfluss
zurückfällt.
2. Praxis-Beispiel:
Es soll ein “Application Reset“ – Kommando an einen Zähler ausgegeben werden. In
seltenen Fällen kann dieses Kommando notwendig sein, damit der Zähler bei der
nächsten Abfrage mit seinem Standardtelegramm antwortet.
68 03 03 68 53 02 50 A5 16 der Zähler mit der Adresse 2 erhält ein „Application
Reset“ – Kommando (hexadezimale Telegrammdarstellung)
dwAddress:=2
bC_Field:=16#53
bCI_Field:=16#50

aTxPayloadData:=255(0)
uiLength:=0

Version 1.0.0
Anwendungshinweis – 31
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

4.5.4 M-Bus Status (FbMbusStatus)

Siemens TIA Portal


Kategorie:
Name: FbMbusStatus
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
xStart BOOL Toggle- Variable zum Start der
Statusabfrage

Ein- / Ausgabeparameter Datentyp: Kommentar:


typData typMbus_M Kommunikationsstruktur für alle
odule Bausteine eines Masters

Ausgabeparameter: Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen
vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
typMbusStatus typMbusStat Stausinformationen
us

Grafische Darstellung:

Version 1.0.0
32 Funktionsblöcke Anwendungshinweis

Funktionsbeschreibung:
Der Baustein FbMbusStatus dient zur Auslesung eines M-Bus Master-Moduls 753-
649. Er kann nur zusammen mit dem M-Bus Kommunikationsbaustein
FbMbusCommunicationBase ausgeführt werden.
Die Synchronisation der beiden Bausteine wird über die Variablenstruktur „typData“
erreicht und muss deshalb miteinander verbunden sein.
Die Input-Variable „xStart“ startet die Auslesung des Status. Wenn die Auslesung
beendet ist, wird „xReady“ auf TRUE gesetzt.
„bFeedback“ gibt Auskunft darüber, ob die Auslesung fehlerfrei durchgeführt
werden konnte.
Die Ausgangsvariable „typMbusStatus“ liefert detailliierte Statusinformationen.

Version 1.0.0
Anwendungshinweis – 33
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

4.5.5 M-Bus Statistic (FbMbusStatistic)

Siemens TIA Portal


Kategorie:
Name: FbMbusStatistic
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
xStart BOOL Toggle- Variable zum Start der
Auslesung des M-Bus Zählers.
xStatistikReset BOOL Rücksetzen

Ein- / Ausgabeparameter Datentyp: Kommentar:


typData typMbus_M Kommunikationsstruktur für alle
odule Bausteine eines Masters

Ausgabeparameter: Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen
vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
typMbusStatistik typMbusStat Daten
istik

Grafische Darstellung:

Version 1.0.0
34 Funktionsblöcke Anwendungshinweis

Funktionsbeschreibung:
Der Baustein FbMbusStatistik dient zur Auslesung eines M-Bus Masters und liefert
Staistik Informationen über das M-Bus System.. Er kann nur zusammen mit dem M-
Bus Kommunikationsbaustein FbMbusCommunicationBase ausgeführt werden.
Die Synchronisation der beiden Bausteine wird über die Variablenstruktur „typData“
erreicht und muss deshalb miteinander verbunden sein.
Die Input-Variable „xStart“ startet die Auslesung. Wenn die Auslesung beendet ist,
wird „xReady“ auf TRUE gesetzt.
„bFeedback“ gibt Auskunft darüber, ob die Auslesung fehlerfrei durchgeführt
werden konnte.
Die Ausgangsvariable „typMbusStatistik“ beinhaltet bei erfolgreicher Auslesung
die Statistik Daten im Detail.

4.5.6 M-Bus Scan IDs (FbMbusScanID)

Siemens TIA Portal


Kategorie:
Name: FbMbusScanID
Typ: Funktion Funktionsblock X Programm
Name der Bibliothek:
Anwendbar für:

Eingangsparameter: Datentyp: Kommentar:


xEnable BOOL Baustein freigeben
xStart BOOL Toggle- Variable zum Start der
Auslesung des M-Bus Zählers.

Ein- / Ausgabeparameter Datentyp: Kommentar:


typData typMbus_M Kommunikationsstruktur für alle
odule Bausteine eines Masters

Ausgabeparameter: Datentyp: Kommentar:


xReady BOOL Baustein freigegeben bzw. Daten liegen
vor
bFeedback BYTE 0 = kein Fehler
12 = M-Bus Timeout
adwAddressID ARRAY Datenfeld mit den erkannten IDs der
[0..255] OF Zähler
DWORD

atypMbus_Info ARRAY Datenfeld mit den Informationen der


[0..255] OF erkannten Zähler
typMbus_inf
o

usiProgress USINT Scan Fortschritt in %

Version 1.0.0
Anwendungshinweis – 35
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Funktionsblöcke

usiCount USINT Anzahl erkannter M-Bus Zähler

dwActualCheckAddr DWORD Adresse die aktuell überprüft wird

Grafische Darstellung:

Funktionsbeschreibung:
Der Baustein FbMbusScanID dient zum Scannen des M-Bus und liefert die
erkannten Zähler IDs in einem Dword-Array zurück. Er kann nur zusammen mit dem
M-Bus Kommunikationsbaustein FbMbusCommunicationBase ausgeführt werden.
Die Synchronisation der beiden Bausteine wird über die Variablenstruktur „typData“
erreicht und muss deshalb miteinander verbunden sein.
Die Input-Variable „xStart“ startet den Scan-Vorgang. Wenn der Vorgang beendet
ist, wird „xReady“ auf TRUE gesetzt.
„bFeedback“ gibt Auskunft darüber, ob die Auslesung fehlerfrei durchgeführt
werden konnte.
Die Ausgangsvariable „atypMbus_Info“ beinhaltet bei erfolgreicher Auslesung ein
Feld mit Zähler Daten vom Typ typMbus_Info. Die Variable „usiCount“ gibt die
Anzahl der erkannten Zähler an.

Version 1.0.0
36 Datenstrukturen Anwendungshinweis

5 Datenstrukturen

utMbus_InOut Strukur mit Ein- und Ausgangsdaten eines Moduls

utMbus_Module Zusammenfassung aller Daten eines Moduls

MBX_typMsg Struktur einer Nachricht

utMBX_Rx Struktur für empfangene Daten

utMBX_Tx Struktur für zu sendende Daten

typMbus_Info Allgemeine Informationen eines Zählers

typMbus_Module Struktur innerhalb der Kommunikationsstruktur

typMbus_Record Datenstruktur für einen Wert des M-Bus Zählers

typMbusMBX Interne Struktur zur Kommunikation

Version 1.0.0
Anwendungshinweis – 37
Bausteinbeschreibungen für die M-Bus-Klemme 753-649 Datenbausteine

6 Datenbausteine
DB300

In diesem Baustein ist der Speicher für den Zugriff von bis zu 5 M-Bus
Modulen reserviert. Durch das Vergrößern des Arrays können weitere
Module genutzt werden.

DB301

In diesem Baustein werden die Daten eines M-Bus Moduls zur


Kommunikation mit den verschiedenen Bausteinen verwaltet. Es können
bis zu 5 M-Bus Module genutzt werden. Durch das Vergrößern des Arrays
können weitere Module genutzt werden.

Version 1.0.0
38 Anhang Anwendungshinweis

7 Anhang
7.1 Inbetriebnahme Hinweise
Beim Multitelegramm Baustein, sind die voreingestellten Werte ggf. anzupassen:

Fehlerbild:

1)

Der Baustein meldet bFeedback=4

iLength=0

→ der Parameter MBUS_RSP_TIMEOUT ist zu klein (er darf auch nicht größer als
tCmdDelay seien)

2)

Der Baustein meldet bFeedback=4

iLength=xx

➔ der Parameter tCmdDelay ist kleiner als MBUS_RSP_TIMEOUT

Gleichzeitig ist auch der Parameter MBUS_UART_INTERFRAME_TIME ggf.


anzupassen.

Werte für eine Baudrate von 2400:

tCmdDelay : 500ms

MBUS_RSP_TIMEOUT :3

MBUS_UART_INTERFRAME_TIME :3

Version 1.0.0
WAGO Kontakttechnik GmbH & Co. KG
Postfach 2880 • D-32385 Minden
Hansastraße 27 • D-32423 Minden
Telefon: +49 (0) 571/8 87 – 0
Telefax: +49 (0) 571/8 87 – 1 69
E-Mail: info@wago.com
Internet: http://www.wago.com

Das könnte Ihnen auch gefallen