FB_MBUS_SVM_F22_Ext

FB_MBUS_SVM_F22_Ext 1:

The function block FB_MBUS_SVM_F22_Ext is used to read heat meters from Metrima:

-F22 (as FB_MBUS_SVM_F22(), but with the extended output values arrAcountAccums and arrMonthlyAccums.)

FB_MBUS_SVM_F22_Ext 2:

The function block is not suitable for BC/BX.

The function block can only be executed together with the function block FB_MBUSKL6781().

FB_MBUS_SVM_F22_Ext 3:

Further information

See Operating principle of the function block

FB_MBUS_SVM_F22_Ext 4: Inputs

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;
  bMonthstorages  : BOOL;
  byMonthstorages : BYTE;
END_VAR

Name

Type

Description

usiAddress

USINT

Primary address of the meter to be read with this function block.

stSecAdr

ST_MBUS_SecAdr

Secondary address of the meter to be read with this function block.

eBaudrate

E_MBUS_Baudrate

300, 2400, 9600 baud

bStart

BOOL

All meters are read once on the positive edge of this input.

bSND_NKE

BOOL

TRUE initializes the meter for each read operation and sets the meter to the first telegram (SND_NKE).

bReadInit

BOOL

If the PLC is restarted, the meter is read once.

tMinSendTime

TIME

Default t#2s. The meter is read again, once the time set here has elapsed. If t#0s the meter is not read and can be read manually with bStart.

usiUnit

USINT

Unit of the energy values to be output by the function block. 0=W(h) / 1=KW(h) / 2 =MW(h) / 3=GW(h).

bDisabled

BOOL

TRUE = deselection of the function block

bMonthstorages

BOOL

FALSE = due days and monthly values are not read (arrAccountAccums and arrMonthlyAccums) / TRUE = due days and monthly values are read (arrAccountAccums and arrMonthlyAccums). The number of monthly values (arrMonthlyAccums) can be changed and depends on the variable byMonthstorages.

byMonthstorages

BYTE

Number of monthly values (arrMonthlyAccums), maximum 37 values. Only applies if byMonthstorages =TRUE.

FB_MBUS_SVM_F22_Ext 5: Inputs/outputs

VAR_IN_OUT
  stCom : ST_MBUS_Communication;
END_VAR

Name

Type

Description

stCom

ST_MBUS_Communication

This structure is used to link the function block FB_MBUSKL6781() with the meter blocks.

FB_MBUS_SVM_F22_Ext 6: Outputs

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;
  stVolume        : ST_MBus_Info;
  stVolume2       : ST_MBus_Info;
  stForwardTemp   : ST_MBus_Info;
  stReturnTemp    : ST_MBus_Info;
  stDiffTemp      : ST_MBus_Info;
  stFlow          : ST_MBus_Info;
  stPower         : ST_MBus_Info;
  stPulsecounter1 : ST_MBus_Info;
  stPulsecounter2 : ST_MBus_Info;
  arrAccountAccums : ARRAY [1..2] OF ST_MBus_F22;
  arrMonthlyAccums : ARRAY [1..37] OF ST_MBus_F22;
END_VAR

Name

Type

Description

bBusy

BOOL

The bBusy output is TRUE as long as the meter is being read.

bReady

BOOL

The bReady output is TRUE for one cycle, once meter reading is completed.

bError

BOOL

This output goes TRUE as soon as an error occurs. This error is described via the eError variable.

eError

E_MBUS_ERROR

This output outputs an error code in the event of an error. bError goes TRUE at the same time.

dwIdNumber

DWORD

Serial number of the meter (secondary address)

byStatus

BYTE

Device status

byGEN

BYTE

Software version of the device

byCounter

BYTE

Number of times the master has accessed data of the respective slave

usiRecivedAdr

USINT

Received primary address (0-250)

eMedium

E_MBUS_Medium

Medium

sMan

STRING

Manufacturer sign

stEnergy

ST_MBus_Info

Meter reading, energy consumption

stVolume

ST_MBus_Info

Meter reading, water consumption

stVolume2

ST_MBus_Info

Accumulated volume. Energy calculation

stForwardTemp

ST_MBus_Info

Flow temperature

stReturnTemp

ST_MBus_Info

Return temperature

stDiffTemp

ST_MBus_Info

Temperature difference

stFlow

ST_MBus_Info

Current water consumption

stPower

ST_MBus_Info

Current energy consumption, power

stPulsecounter1

ST_MBus_Info

Pulse counter 1

stPulsecounter2

ST_MBus_Info

Pulse counter 2

arrAccountAccums

ARRAY OF ST_MBus_F22

2 due day values (energy, volume 1, volume 2, pulse counter 1, pulse counter 2, date). Values are only read if bMonthstorages =TRUE.

arrMonthlyAccums

ARRAY OF ST_MBus_F22

Maximum 37 monthly values (energy, volume 1, volume 2, pulse counter 1, pulse counter 2, date). Values are only read if bMonthstorages =TRUE. The number of values depends on the variable byMonthstorages.

Requirements

Development Environment

PLC library to include

TwinCAT from v3.1.4020.14

Tc2_MBus from 3.3.5.0