Balancing quick fixes
allowed operating mode to be change when balancing is started, added lock mechanism to not leave balancing state when not enabled
This commit is contained in:
10
PLC/PLC.tmc
10
PLC/PLC.tmc
File diff suppressed because one or more lines are too long
@@ -400,7 +400,7 @@ HandleErrors();
|
|||||||
CASE _iState OF
|
CASE _iState OF
|
||||||
0: // Idle
|
0: // Idle
|
||||||
// Start in normal mode
|
// Start in normal mode
|
||||||
IF xEnable AND xAllModulesInAutoMode AND xRepairSwitchOk AND (NOT _xErrorInternal) THEN
|
IF (xEnable OR xStartBalancing) AND xAllModulesInAutoMode AND xRepairSwitchOk AND (NOT _xErrorInternal) THEN
|
||||||
_xEnable := TRUE;
|
_xEnable := TRUE;
|
||||||
|
|
||||||
CASE eOperationMode OF
|
CASE eOperationMode OF
|
||||||
@@ -412,6 +412,7 @@ CASE _iState OF
|
|||||||
E_STRING_OPERATING_MODE.BALANCING:
|
E_STRING_OPERATING_MODE.BALANCING:
|
||||||
_xStartBalancing := TRUE;
|
_xStartBalancing := TRUE;
|
||||||
_xReleaseLimitErrorsInternal := FALSE;
|
_xReleaseLimitErrorsInternal := FALSE;
|
||||||
|
_xEnable := FALSE;
|
||||||
_iState := 7;
|
_iState := 7;
|
||||||
|
|
||||||
// Safety check mode
|
// Safety check mode
|
||||||
|
|||||||
@@ -996,7 +996,7 @@ CASE _iState OF
|
|||||||
_iState := 1000;
|
_iState := 1000;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
IF (NOT xEnable) THEN
|
IF (NOT xEnable) AND NOT xStartBalancing THEN
|
||||||
_iState := 51;
|
_iState := 51;
|
||||||
END_IF
|
END_IF
|
||||||
|
|
||||||
|
|||||||
@@ -194,7 +194,7 @@
|
|||||||
</SubItem>
|
</SubItem>
|
||||||
</DataType>
|
</DataType>
|
||||||
<DataType>
|
<DataType>
|
||||||
<Name GUID="{18071995-0000-0000-0000-002000000003}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..2] OF BIT</Name>
|
<Name GUID="{18071995-0000-0000-0000-002000000003}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..2] OF BIT</Name>
|
||||||
<BitSize>3</BitSize>
|
<BitSize>3</BitSize>
|
||||||
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
|
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
|
||||||
<ArrayInfo>
|
<ArrayInfo>
|
||||||
@@ -203,7 +203,7 @@
|
|||||||
</ArrayInfo>
|
</ArrayInfo>
|
||||||
</DataType>
|
</DataType>
|
||||||
<DataType>
|
<DataType>
|
||||||
<Name GUID="{18071995-0000-0000-0000-002000000002}" IecBaseType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..1] OF BIT</Name>
|
<Name GUID="{18071995-0000-0000-0000-002000000002}" IecBaseType="true" BitType="true" AutoDeleteType="true" HideSubItems="true">ARRAY [0..1] OF BIT</Name>
|
||||||
<BitSize>2</BitSize>
|
<BitSize>2</BitSize>
|
||||||
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
|
<BaseType GUID="{18071995-0000-0000-0000-000000000010}">BIT</BaseType>
|
||||||
<ArrayInfo>
|
<ArrayInfo>
|
||||||
@@ -269,7 +269,7 @@
|
|||||||
</System>
|
</System>
|
||||||
<Plc>
|
<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">
|
<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="{A0F2628C-48EB-9D12-8507-F5C9CD4F0746}" TmcPath="PLC\PLC.tmc">
|
<Instance Id="#x08502000" TcSmClass="TComPlcObjDef" KeepUnrestoredLinks="2" TmcHash="{BDA8C6E6-4D3D-7BBF-7C10-5638478304C1}" TmcPath="PLC\PLC.tmc">
|
||||||
<Name>PLC Instance</Name>
|
<Name>PLC Instance</Name>
|
||||||
<CLSID ClassFactory="TcPlc30">{08500001-0000-0000-F000-000000000064}</CLSID>
|
<CLSID ClassFactory="TcPlc30">{08500001-0000-0000-F000-000000000064}</CLSID>
|
||||||
<Vars VarGrpType="2" AreaNo="1">
|
<Vars VarGrpType="2" AreaNo="1">
|
||||||
|
|||||||
Reference in New Issue
Block a user