FB_MBUS_ZRM_multidataWR3
Dieser Baustein dient zum Auslesen von Rechenwerken der Firma Zenner.
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 eingestellen 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;
stVolume : ST_MBus_Info;
stFlow : ST_MBus_Info;
stPower : ST_MBus_Info;
stForwardTemp : ST_MBus_Info;
stReturnTemp : ST_MBus_Info;
stDeviceClock : ST_MBus_Info;
stBatteryEndDate : ST_MBus_Info;
stFlowMaxTimepoint : ST_MBus_Info;
stFlowMax : ST_MBus_Info;
stPowerMaxTimepoint: ST_MBus_Info;
stPowerMax : 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).
stVolume: Volumen (siehe ST_MBus_Info).
stFlow: Momentaner Durchfluss (siehe ST_MBus_Info).
stPower: Leistung (siehe ST_MBus_Info).
stForwardTemp: Vorlauftemperatur (siehe ST_MBus_Info).
stReturnTemp: Rücklauftemperatur (siehe ST_MBus_Info).
stDeviceClock: Aktuelle Zeit des Zählers (siehe ST_MBus_Info).
stBatteryEndDate: Vermutliche Haltbarkeit der Batterie (siehe ST_MBus_Info).
stFlowMaxTimepoint: Speicherzeitpunkt Maximalwert Durchfluss (absolut) (siehe ST_MBus_Info).
stFlowMax: Maximalwert Durchfluss (absolut) (siehe ST_MBus_Info).
stPowerMaxTimepoint: Speicherzeitpunkt Maximalwert Leistung (absolut) (siehe ST_MBus_Info).
stPowerMax: Maximalwert Leistung (absolut) (siehe ST_MBus_Info).
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"
Voraussetzungen
Entwicklungsumgebung | Zielsystem | erforderliche Bibliotheken |
---|---|---|
TwinCAT 2.11 R3/x64 ab Build 2234 | PC/CX, BX oder BC | TcMBus-Bibliothek ab V2.1.0 |