FB_MBUS_HYD_Sharky_00

FB_MBUS_HYD_Sharky_00 1:

Dieser Baustein dient zum Auslesen von Energiezählern der Firmen:

Hydrometer:

-Sharky 773

-Sharky 775

-ENERGY INT 6

Brunata:

-Brunata Optuna H (775)

Aquametro:

-AMNTRONIC SONIC D

Es werden alle Werte des Telegramms 00 ( Application Reset-Subcode 00 / All ) ausgelesen. Das Gerät schaltet selbständig in den entsprechenden Modus um.

stPulsecounter1 und stPulsecounter2 werden nur bei gestecktem Impulsmodul ausgegeben.

Werden weitere Telgramme benötigt, kann mit dem Baustein FB_MBUS_General_Send() das gewünschte Telegramm angewählt und mit dem Baustein FB_MBUS_General() alle Daten des jeweiligen Telegrammes ausgelesen werden.

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;

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

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.

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;
stTariff1         : ST_MBus_Info;
stTariff2         : ST_MBus_Info;
stVolume          : ST_MBus_Info;
stPower           : ST_MBus_Info;
stFlow            : ST_MBus_Info;
stForwardTemp     : ST_MBus_Info;
stReturnTemp      : ST_MBus_Info;
stDiffTemp        : ST_MBus_Info;
stOperatingHours  : ST_MBus_Info;
stDateTime        : ST_MBus_Info;
stDueDay1         : ST_MBUS_DueDayHYD1;
stDueDay2         : ST_MBUS_DueDayHYD1;
stPulsecounter1   : ST_MBus_Info;
stPulsecounter2   : 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: Zählerstand, verbrauchte Energie (siehe ST_MBus_Info).

stTariff1: Zählerstand Tarif 1 (siehe ST_MBus_Info).

stTariff2: Zählerstand Tarif 2 (siehe ST_MBus_Info).

stVolume: Zählerstand, verbrauchtes Wasser (siehe ST_MBus_Info).

stPower: Aktueller Energieverbrauch, Leistung (siehe ST_MBus_Info).

stFlow: Aktueller Wasserverbrauch (siehe ST_MBus_Info).

stForwardTemp: Vorlauftemperatur (siehe ST_MBus_Info).

stReturnTemp: Rücklauftemperatur (siehe ST_MBus_Info).

stDiffTemp: Temperaturdifferenz (siehe ST_MBus_Info).

stOperatingHours: Aktuelle Betriebsstunden (siehe ST_MBus_Info).

stDateTime: Aktuelles Datum, Uhrzeit (siehe ST_MBus_Info).

stDueDay1: Werte Stichtag 1 (siehe ST_MBUS_DueDayHYD1).

stDueDay2: Werte Stichtag 2 (siehe ST_MBUS_DueDayHYD1).

stPulsecounter1: Zählerstand Impulszähler 1 (siehe ST_MBus_Info).

stPulsecounter2: Zählerstand Impulszähler 2 (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: FB_MBUS_HYD_Sharky_00 2:

Download Beispielprogramm für BX Systeme: FB_MBUS_HYD_Sharky_00 3:

Einstellung Steuerungskonfiguration: "BCxx50 oder BX seriell"

Download Beispielprogramm für BC Systeme: FB_MBUS_HYD_Sharky_00 4:

BCxx00 müssen in der PLC unter "Projekt/Optionen/Controller Settings" auf "Large Model" eingestellt werden.

Einstellung Steuerungskonfiguration: "BC seriell"