FB_MBUS_ZRM_zelsiusZR
Dieser Baustein dient zum Auslesen von Wärmezählern der Firma Zenner.
Ebenfalls verwendbar mit:
- Sanext Combi von SANEXT (ab V2.7.0)
Der Baustein kann nur zusammen mit dem Baustein FB_MBUSKL6781() ausgeführt werden.
VAR_INPUT
usiAddress : USINT;
stSecAdr : ST_MBUS_SecAdr;
eBaudrate : E_MBUS_Baudrate := eMBUS_Baud2400;
bStart : BOOL;
bSND_NKE : BOOL := TRUE;
bReadInit : BOOL := TRUE;
tMinSendTime : TIME := t#2s;
bDisabled : BOOL := FALSE;
usiAddress: Primäradresse der Zählers, der mit diesem Baustein ausgelesen werden soll.
stSecAdr: Sekundäradresse der Zählers, der mit diesem Baustein ausgelesen werden soll.
eBaudrate: 300, 2400, 9600 Baud.
bStart: Auf positive Flanke dieses Eingangs wird der Zähler einmal ausgelesen.
bSND_NKE: TRUE initialisiert den Zähler bei jedem Auslesen, und stellt den Zähler auf das erste Telegramm (SND_NKE).
bReadInit: Bei Neustart der SPS wird der Zähler 1-mal ausgelesen.
tMinSendTime: Standard t#2s. Nach Ablauf der hier eingestellten Zeit wird ein Zähler erneut ausgelesen. Bei t#0s wird der Zähler nicht ausgelesen und kann mit bStart manuell ausgelesen werden.
bDisabled: TRUE = Abwahl des Bausteins.
VAR_OUTPUT
bBusy : BOOL;
bReady : BOOL;
bError : BOOL;
eError : E_MBUS_ERROR;
dwIdNumber : DWORD;
byStatus : BYTE;
byGEN : BYTE;
byCounter : BYTE;
usiRecivedAdr : USINT;
eMedium : E_MBUS_Medium;
sMan : STRING(3);
stEnergy : ST_MBus_Info;
stVolumeInput1 : ST_MBus_Info;
stVolumeInput2 : ST_MBus_Info;
stDeviceError : ST_MBus_Info;
stTimepoint : ST_MBus_Info;
stEnergyTimepoint : ST_MBus_Info;
stCounterInput1 : ST_MBus_Info;
stCounterInput2 : ST_MBus_Info;
bBusy: Der bBusy Ausgang ist TRUE solange das Auslesen des Zählers läuft.
bReady: Der bReady Ausgang ist für einen Zyklus TRUE, wenn das Auslesen des Zählers beendet wurde.
bError: Der Ausgang wird TRUE sobald ein Fehler auftritt. Dieser Fehler wird über die Variable eError beschrieben.
eError: Der Ausgang gibt im Fehlerfall einen Fehlercode aus (siehe E_MBUS_ERROR). Gleichzeitig wird bError TRUE.
dwIdNumber: Seriennummer des Zählers (Sekundäradresse).
byStatus: Status des Gerätes.
byGEN: Software Version des Gerätes.
byCounter: Anzahl der Zugriffe des Masters auf Daten des jeweiligen Slaves.
usiRecivedAdr: Empfangene Primäradresse (0-250).
eMedium: Medium (siehe E_MBUS_Medium).
sMan: Herstellerkurzzeichen.
stEnergy: Aktuelle Wärmeenergie (siehe ST_MBus_Info).
stVolumeInput1: Volumen Eingang 1 (siehe ST_MBus_Info).
stVolumeInput2: Volumen Eingang 2 (siehe ST_MBus_Info).
stDeviceError: Fehlerstatus M-Bus Ausgabe (siehe ST_MBus_Info).
stTimepoint: Stichtag (Datum und Zeit des nächsten Stichtags) (siehe ST_MBus_Info).
stEnergyTimepoint: Wärmeenergie am Stichtag (siehe ST_MBus_Info).
stCounterInput1: Zählwert Eingang 1 am Stichtag (siehe ST_MBus_Info).
stCounterInput2: Zählwert Eingang 2 am Stichtag (siehe ST_MBus_Info).
Voraussetzungen
Entwicklungsumgebung | Zielsystem | erforderliche Bibliotheken |
---|---|---|
TwinCAT 2.11 R3/x64 ab Build 2234 | PC/CX, BX oder BC | TcMBus-Bibliothek ab V2.1.0 |
VAR_IN_OUT
stCom : ST_MBUS_Communication;
stCom: Über diese Struktur wird der Baustein FB_MBUSKL6781() mit den Zählerbausteinen verbunden (siehe ST_MBUS_Communication).
Download Beispielprogramm für PC/CX Systeme:
Download Beispielprogramm für BX Systeme:
Einstellung Steuerungskonfiguration: "BCxx50 oder BX seriell"
Download Beispielprogramm für BC Systeme:
BCxx00 müssen in der PLC unter "Projekt/Optionen/Controller Settings" auf "Large Model" eingestellt werden.
Einstellung Steuerungskonfiguration: "BC seriell"