51 lines
1.1 KiB
XML
51 lines
1.1 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4026.8">
|
|
<POU Name="FB_PowerMeter" Id="{9d4159f4-2d3f-4522-a770-c038a26d9d77}" SpecialFunc="None">
|
|
<Declaration><![CDATA[FUNCTION_BLOCK FB_PowerMeter
|
|
VAR_INPUT
|
|
xResetEnergyCounter : BOOL;
|
|
END_VAR
|
|
VAR_OUTPUT
|
|
END_VAR
|
|
VAR
|
|
_fbReadRegs : FB_MBReadInputRegs;
|
|
_fbWriteRegs : FB_MBWriteRegs;
|
|
|
|
_fbREResetEnergyCounter : R_TRIG;
|
|
_xResetEnergyCounter : BOOL;
|
|
|
|
_iState : INT := 0;
|
|
END_VAR
|
|
]]></Declaration>
|
|
<Implementation>
|
|
<ST><![CDATA[_fbREResetEnergyCounter(CLK := xResetEnergyCounter);
|
|
|
|
IF _fbREResetEnergyCounter.Q THEN
|
|
_xResetEnergyCounter := TRUE;
|
|
END_IF
|
|
|
|
CASE _iState OF
|
|
0: // Idle
|
|
IF _xResetEnergyCounter THEN
|
|
_xResetEnergyCounter := FALSE;
|
|
_iState := 10;
|
|
END_IF
|
|
|
|
10: // Reset energy counters
|
|
_fbWriteRegs(
|
|
sIPAddr:= '192.168.42.80',
|
|
nTCPPort:= 502,
|
|
nUnitID:= 16#FF ,
|
|
nQuantity:= ,
|
|
nMBAddr:= 16#0600,
|
|
cbLength:= ,
|
|
pSrcAddr:= ,
|
|
bExecute:= ,
|
|
tTimeout:= ,
|
|
bBusy=> ,
|
|
bError=> ,
|
|
nErrId=> );
|
|
END_CASE]]></ST>
|
|
</Implementation>
|
|
</POU>
|
|
</TcPlcObject> |