FB_MBUS_JAN_UMG96S
This block is used for reading electricity meters from Janitza:
-UMG96S
The block can only be used in conjunction with the block FB_MBUSKL6781().
Functionality of the function block
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 counter, that shall be readout with this module.
stSecAdr: Secondary address of the counter, that shall be readout with this module.
eBaudrate: 300, 2400, 9600 baud.
bStart: Positive edge on this input, the meter is read out once.
bSND_NKE: TRUE to initialize the meter at each reading, and sets the meter on the first telegram (SND_NKE).
bReadInit: After restarting the PLC, the meter is read out once.
tMinSendTime: Standard t#2s. When this time exceeds, the counter is rereadout. At t#0s the counter is not readout and can be readout with bStart manually.
usiUnit: Unit of the energy values. 0=W/J(h) / 1=KW/KJ(h) / 2=MW/MJ(h) / 3=GW/GJ(h).
bDisabled: TRUE = disable the function 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);
stActiveEnergy : ST_MBus_Info;
stActiveEnergyTariff1 : ST_MBus_Info;
stActiveEnergyTariff2 : ST_MBus_Info;
stReactiveEnergy : ST_MBus_Info;
stReactiveEnergyTariff1 : ST_MBus_Info;
stReactiveEnergyTariff2 : ST_MBus_Info;
stApparentEnergy : ST_MBus_Info;
stActivePower : ST_MBus_Info;
stActivePowerL1 : ST_MBus_Info;
stActivePowerL2 : ST_MBus_Info;
stActivePowerL3 : ST_MBus_Info;
stReactivePower : ST_MBus_Info;
stApparentPower : ST_MBus_Info;
stCurrent : ST_MBus_Info;
stCurrentL1 : ST_MBus_Info;
stCurrentL2 : ST_MBus_Info;
stCurrentL3 : ST_MBus_Info;
stVoltageL1 : ST_MBus_Info;
stVoltageL2 : ST_MBus_Info;
stVoltageL3 : ST_MBus_Info;
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: The bError output becomes TRUE as soon as an error occurs. The error is described via the variable eError.
eError: The eError output issues an error code when an error occurs (see E_MBUS_ERROR).
dwIdNumber: Serial number of the meter (secondary address).
byStatus: Status of the meter. Please refer to device description for meanings.
byGEN: Meter software version.
byCounter: Transmission counter (number of transmitted RSP_UD).
usiRecivedAdr: Received primary address (0-250).
eMedium: Medium (see E_MBUS_Medium).
sMan: Manufacturer code.
stActiveEnergy: Meter reading, active energy (telegram 2, data point 14) (see ST_MBus_Info).
stActiveEnergyTariff1: Meter reading, active energy, tariff 1(telegram 2, data point 15) (see ST_MBus_Info).
stActiveEnergyTariff2: Meter reading, active energy, tariff 2(telegram 2, data point 16) (see ST_MBus_Info).
stReactiveEnergy: Meter reading, reactive energy (telegram 2, data point 17) (see ST_MBus_Info).
stReactiveEnergyTariff1: Meter reading, reactive energy, tariff 1(telegram 2, data point 18) (see ST_MBus_Info).
stReactiveEnergyTariff2: Meter reading, reactive energy, tariff 2(telegram 2, data point 19) (see ST_MBus_Info).
stApparentEnergy: Meter reading, apparent energy (telegram 2, data point 20) (see ST_MBus_Info).
stActivePower: Active power (telegram 2, data point 29) (see ST_MBus_Info).
stActivePowerL1: Active power phase L1 (telegram 2, data point 38) (see ST_MBus_Info).
stActivePowerL2: Active power phase L2 (telegram 2, data point 39) (see ST_MBus_Info).
stActivePowerL3: Active power phase L3 (telegram 2, data point 40) (see ST_MBus_Info).
stReactivePower: Reactive power (telegram 2, data point 30) (see ST_MBus_Info).
stApparentPower: Apparent power (telegram 2, data point 31) (see ST_MBus_Info).
stCurrent: Current (telegram 2, data point 28) (see ST_MBus_Info).
stCurrentL1: Current phase L1 (telegram 2, data point 35) (see ST_MBus_Info).
stCurrentL2: Current phase L2 (telegram 2, data point 36) (see ST_MBus_Info).
stCurrentL3: Current phase L3 (telegram 2, data point 37) (see ST_MBus_Info).
stVoltageL1: Voltage phase L1 (telegram 2, data point 32) (see ST_MBus_Info).
stVoltageL2: Voltage phase L2 (telegram 2, data point 33) (see ST_MBus_Info).
stVoltageL3: Voltage phase L3 (telegram 2, data point 34) (see ST_MBus_Info).
VAR_IN_OUT
stCom : ST_MBUS_Communication;
stCom: About this structure, the block FB_MBUSKL6781() is connected to the meter function blocks (see ST_MBUS_Communication).
Download sample program for PC/CX systems:
Download sample program for BX systems:
Controller configuration setting: "BCxx50 or BX serial"
Download sample program for BC systems:
BCxx00 must be set to "Large Model" in the PLC under "Project/Options/Controller Settings".
Controller configuration setting: "BC serial"