FB_MBUS_General_Param

FB_MBUS_General_Param 1:

Dieser Baustein dient zum Auslesen von beliebigen M-Bus Geräten. Die Variable arrData liefert cMBUS_MaxDataParam Werte.

Diese Werte können in dem Input Array arrConfigData parametriert werden. String-Werte und herstellerspezifische Informationen werden nicht korrekt dargestellt.

Der Baustein kann nur zusammen mit dem Baustein FB_MBUSKL6781() ausgeführt werden.

Funktionsweise des Bausteins

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;
usiUnit       : USINT;
bDisabled     : BOOL := FALSE;
arrConfigData : ARRAY [1..cMBUS_MaxDataParam] OF WORD;

usiAddress: Primäradresse des Zählers, der mit diesem Baustein ausgelesen werden soll.

stSecAdr: Sekundäradresse des Zählers, der mit diesem Baustein ausgelesen werden soll (siehe ST_MBUS_SecAdr).

eBaudrate: 300, 600, 1200, 2400, 4800, 9600 Baud (siehe E_MBUS_Baudrate).

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.

usiUnit: Einheit der Energiewerte, die der Baustein ausgeben soll. 0=W(h) / 1=KW(h) / 2 =MW(h) / 3=GW(h).

bDisabled: TRUE = Abwahl des Bausteins.

arrConfigData: Maximal cMBUS_MaxDataParam Eingangsparameter zum Festlegen, welche Werte in dem Output Array arrData angezeigt werden sollen (siehe Globale_Variablen_MBUS).

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);
arrData          : ARRAY [1..cMBUS_MaxDataParam] OF ST_MBus_Data;

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.

arrData: Maximal cMBUS_MaxDataParam Werte (siehe Globale_Variablen_MBUS). Die Werte können über die Input Variable arrConfigData konfiguriert werden. Die Bedeutung der Werte muss dem M-Bus Protokoll des Gerätes entnommen werden.

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).

Voraussetzungen

Entwicklungsumgebung

erforderliche TC3 SPS-Bibliothek

TwinCAT ab v3.1.4020.14

Tc2_MBus ab 3.3.5.0