Files
Uniper_PLC/PLC/POUs/FB_UMD705.TcPOU
Matthias Heisig 9c6e28b83d Added Kaco inverter implementation
- Added Kaco inverter implementation
- Small refactoring
- Added release inverter power signal for simultaneous start of the
  inverters
2025-08-11 23:26:40 +09:00

47 lines
1.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4026.12">
<POU Name="FB_UMD705" Id="{e3557e0d-5497-476d-aba3-e3a1e4ffd057}" SpecialFunc="None">
<Declaration><![CDATA[FUNCTION_BLOCK FB_UMD705
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
_xExecute : BOOL;
// FB for reading Modbus holding registers
_fbReadRegister : FB_MBReadRegs;
// FB for writing Modbus holding registers
_fbWriteRegister : FB_MBWriteRegs;
_diLastReset : DINT;
END_VAR
VAR CONSTANT
STATUS_REGISTER : WORD := 40108;
END_VAR
]]></Declaration>
<Implementation>
<ST><![CDATA[_fbReadRegister(
sIPAddr:= sInverterIPAddr,
nTCPPort:= 502,
nUnitID:= 16#FF, // 16#FF for Modbus TCP
nQuantity:= 1,
nMBAddr:= STATUS_REGISTER,
cbLength:= SIZEOF(_uiInverterState),
pDestAddr:= ADR(_uiInverterState),
bExecute:= TRUE,
tTimeout:= T#5S,
bBusy=> ,
bError=> ,
nErrId=> ,
cbRead=> );
IF _xExecute THEN
_xExecute := FALSE;
END_IF]]></ST>
</Implementation>
</POU>
</TcPlcObject>