Fixed startup time reset error in balancing mode

This commit is contained in:
Markus.Neukirch
2025-09-09 12:28:22 +02:00
parent dffcfc9ebe
commit 39a206a1df
4 changed files with 403 additions and 393 deletions

View File

@@ -177,6 +177,9 @@
<Compile Include="POUs\Sunspec\Kaco\E_KACO_PCU_STATE.TcDUT">
<SubType>Code</SubType>
</Compile>
<Compile Include="POUs\Sunspec\Kaco\E_KACO_PCU_REQUESTED_STATE.TcDUT">
<SubType>Code</SubType>
</Compile>
<Compile Include="POUs\Sunspec\Kaco\FB_PowerSupplyKaco.TcPOU">
<SubType>Code</SubType>
</Compile>

File diff suppressed because one or more lines are too long

View File

@@ -950,6 +950,7 @@ CASE _iState OF
_timUnitStartupWaitTime := GVL_CONFIG.timUnitStartupTime;
_iState := 10;
stHMIInterface.eStatus := E_COMPONENT_STATUS.STARTING;
_tonStartupCheck(IN := FALSE);
END_IF
// Start in balancing mode
@@ -958,6 +959,7 @@ CASE _iState OF
xBalancingDone := FALSE;
_timUnitStartupWaitTime := GVL_CONFIG.timUnitBalancingStartupTime;
_iState := 10;
_tonStartupCheck(IN := FALSE);
END_IF
IF _xErrorActive THEN

View File

@@ -263,7 +263,7 @@
</System>
<Plc>
<Project GUID="{9AE64910-5EB2-4866-93FD-EFE059C38C36}" Name="PLC" PrjFilePath="PLC\PLC.plcproj" TmcFilePath="PLC\PLC.tmc" ReloadTmc="true" AmsPort="851" FileArchiveSettings="#x000e" CopyTmcToTarget="true" CopyTpyToTarget="false" SymbolicMapping="true">
<Instance Id="#x08502000" TcSmClass="TComPlcObjDef" KeepUnrestoredLinks="2" TmcHash="{B0096793-1726-0903-97E7-B7D9EB7ED965}" TmcPath="PLC\PLC.tmc">
<Instance Id="#x08502000" TcSmClass="TComPlcObjDef" KeepUnrestoredLinks="2" TmcHash="{C7236B6A-7E8F-98EB-57CD-54FB34241E9F}" TmcPath="PLC\PLC.tmc">
<Name>PLC Instance</Name>
<CLSID ClassFactory="TcPlc30">{08500001-0000-0000-F000-000000000064}</CLSID>
<Vars VarGrpType="2" AreaNo="1">
@@ -272,6 +272,31 @@
<Name>MAIN._xShowAckEmergencyStop</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN.xSafetyRun</Name>
<Comment><![CDATA[ Safety]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN.xSafetyErrAck</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._xShowErrorOnButton</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTowerLight.xRedLight</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTowerLight.xYellowLight</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTowerLight.xGreenLight</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._afbStrings[0].xCloseDCCB</Name>
<Comment><![CDATA[ Signal to close dc circuit breaker]]></Comment>
@@ -1276,31 +1301,6 @@
<Comment><![CDATA[ Motor speed setpoint]]></Comment>
<Type>INT</Type>
</Var>
<Var>
<Name>MAIN.xSafetyRun</Name>
<Comment><![CDATA[ Safety]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN.xSafetyErrAck</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._xShowErrorOnButton</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTowerLight.xRedLight</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTowerLight.xYellowLight</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTowerLight.xGreenLight</Name>
<Type>BOOL</Type>
</Var>
</Vars>
<Vars VarGrpType="1">
<Name>PlcTask Inputs</Name>
@@ -1312,6 +1312,95 @@
<Name>MAIN.xNAProtectionOK</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN.xSafetyResterTaster</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._xHarwareResetButton</Name>
<Comment><![CDATA[ Hardware reset button]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbSafety.xVoltagesInRange</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbSafety.xPressureInRange</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbSafety.xTemperaturesInRange</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._uiEtherCATState</Name>
<Comment><![CDATA[ String EtherCAT state]]></Comment>
<Type>UINT</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString1.iAnalogValue</Name>
<Comment><![CDATA[ Analog input value]]></Comment>
<Type>INT</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString1.xUnderrange</Name>
<Comment><![CDATA[ Card has detected an open circuit]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString1.xOverrange</Name>
<Comment><![CDATA[ Input is overloaded]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString1.xErrorCard</Name>
<Comment><![CDATA[ Input card has error
EL30xx also sets this if an underrange or overrange error is present]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString2.iAnalogValue</Name>
<Comment><![CDATA[ Analog input value]]></Comment>
<Type>INT</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString2.xUnderrange</Name>
<Comment><![CDATA[ Card has detected an open circuit]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString2.xOverrange</Name>
<Comment><![CDATA[ Input is overloaded]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString2.xErrorCard</Name>
<Comment><![CDATA[ Input card has error
EL30xx also sets this if an underrange or overrange error is present]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetBMS.iAnalogValue</Name>
<Comment><![CDATA[ Analog input value]]></Comment>
<Type>INT</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetBMS.xUnderrange</Name>
<Comment><![CDATA[ Card has detected an open circuit]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetBMS.xOverrange</Name>
<Comment><![CDATA[ Input is overloaded]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetBMS.xErrorCard</Name>
<Comment><![CDATA[ Input card has error
EL30xx also sets this if an underrange or overrange error is present]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._afbStrings[0].xECWcState</Name>
<Type>BOOL</Type>
@@ -7013,95 +7102,6 @@
<Var>
<Name>MAIN._afbStrings[1]._fbStringCurrent.xErrorCard</Name>
<Comment><![CDATA[ Input card has error
EL30xx also sets this if an underrange or overrange error is present]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN.xSafetyResterTaster</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._xHarwareResetButton</Name>
<Comment><![CDATA[ Hardware reset button]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbSafety.xVoltagesInRange</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbSafety.xPressureInRange</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbSafety.xTemperaturesInRange</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._uiEtherCATState</Name>
<Comment><![CDATA[ String EtherCAT state]]></Comment>
<Type>UINT</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString1.iAnalogValue</Name>
<Comment><![CDATA[ Analog input value]]></Comment>
<Type>INT</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString1.xUnderrange</Name>
<Comment><![CDATA[ Card has detected an open circuit]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString1.xOverrange</Name>
<Comment><![CDATA[ Input is overloaded]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString1.xErrorCard</Name>
<Comment><![CDATA[ Input card has error
EL30xx also sets this if an underrange or overrange error is present]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString2.iAnalogValue</Name>
<Comment><![CDATA[ Analog input value]]></Comment>
<Type>INT</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString2.xUnderrange</Name>
<Comment><![CDATA[ Card has detected an open circuit]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString2.xOverrange</Name>
<Comment><![CDATA[ Input is overloaded]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetSCSString2.xErrorCard</Name>
<Comment><![CDATA[ Input card has error
EL30xx also sets this if an underrange or overrange error is present]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetBMS.iAnalogValue</Name>
<Comment><![CDATA[ Analog input value]]></Comment>
<Type>INT</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetBMS.xUnderrange</Name>
<Comment><![CDATA[ Card has detected an open circuit]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetBMS.xOverrange</Name>
<Comment><![CDATA[ Input is overloaded]]></Comment>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._fbTempCabinetBMS.xErrorCard</Name>
<Comment><![CDATA[ Input card has error
EL30xx also sets this if an underrange or overrange error is present]]></Comment>
<Type>BOOL</Type>
</Var>