FB_MBUS_REL_PadPulsM4
This block is used for reading energy meters with pulse output from Relay:
-PadPuls M4
-PadPuls M4L
The block can only be executed together with the block FB_MBUSKL6781().
Up to 4 pulse generators can be connected to a PadPuls 4/PadPuls 4L at the same time. The PadPuls 4/PadPuls 4L behaves like 4 independent slaves.
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: Primary address of the meter to be read with this block.
stSecAdr: Secondary address of the meter to be read with this block (see ST_MBUS_SecAdr).
eBaudrate: 300, 2400, 9600 baud (see E_MBUS_Baudrate).
bStart: A positive edge of this input triggers one reading of the meter.
bSND_NKE: TRUE initializes the meter for each read operation and sets the meter to the first telegram (SND_NKE).
bReadInit: If the PLC is restarted, the meter is read once.
tMinSendTime: Standard 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: Unit of the energy values to be output by the block. 0=W(h) / 1=KW(h) / 2 =MW(h) / 3=GW(h).
bDisabled: TRUE = deselection of the block.
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);
stValue : ST_MBus_Info;
stDateTime : ST_MBus_Info;
stValueDueDay : ST_MBus_Info;
stDateDueDay : ST_MBus_Info;
stDateFutureDueDay : ST_MBus_Info;
byInfo : BYTE;
byNumerator : BYTE;
byDenominator : BYTE;
byPStat : BYTE;
bBusy: The bBusy output is TRUE while the meter is being read.
bReady: The bReady output is TRUE for one cycle, once meter reading is completed.
bError: this output goes TRUE as soon as an error occurs. This error is described via the variable eError.
eError: In the event of an error the output issues an error code (see E_MBUS_ERROR). bError goes TRUE at the same time.
dwIdNumber: Serial number of the meter (secondary address).
byStatus: Device status.
byGEN: Software version of the device.
byCounter: Number of times the master has accessed data of the respective slave.
usiRecivedAdr: Received primary address (0-250).
eMedium: Medium (see E_MBUS_Medium).
sMan: Manufacturer code.
stValue: Meter reading (see ST_MBus_Info).
stDateTime: Current date (see ST_MBus_Info).
stValueDueDay: Cutoff date meter reading (see ST_MBus_Info).
stDateDueDay: Last cutoff date (see ST_MBus_Info).
stDateFutureDueDay: Future cutoff date (see ST_MBus_Info).
byInfo: Information byte (tariff and sampling method).
byNumerator: Pulse value numerator (1..99).
byDenominator: Pulse value denominator (1..255, 0 -> 256).
byPStat: Port status (current contact state at the port inputs).
VAR_IN_OUT
stCom : ST_MBUS_Communication;
stCom: This structure is used to link the block FB_MBUSKL6781() with the meter blocks (see ST_MBUS_Communication).
Requirements
Development environment | required TC3 PLC library |
---|---|
TwinCAT from v3.1.4020.14 | Tc2_MBus from 3.3.4.0 |