Added precharge mode
This commit is contained in:
@@ -9,9 +9,6 @@ VAR_INPUT
|
||||
// HMI interface
|
||||
stHMIInterface : REFERENCE TO ST_UNIT_HMI_INTERFACE;
|
||||
|
||||
// Components shortage workaround
|
||||
// xVoltageSensorIs1500V : BOOL;
|
||||
|
||||
// Start unit
|
||||
xEnable : BOOL;
|
||||
|
||||
@@ -21,6 +18,9 @@ VAR_INPUT
|
||||
// Unit in safety check mode
|
||||
xInSafetyCheckMode : BOOL;
|
||||
|
||||
// String operation mode
|
||||
eStringOperatingMode : E_STRING_OPERATING_MODE;
|
||||
|
||||
// Emergency stop ok
|
||||
xEmergencyStopOk : BOOL;
|
||||
|
||||
@@ -1027,7 +1027,32 @@ CASE _iState OF
|
||||
31: // Check if voltage limit can be reached
|
||||
_tonVoltageCheckTimeput(IN := TRUE);
|
||||
|
||||
IF (NOT _xErrorActive) AND (NOT _xWarningActive) THEN
|
||||
CASE eStringOperatingMode OF
|
||||
E_STRING_OPERATING_MODE.SAFETY_CHECK:
|
||||
_xEnableVoltageLimitChecks := TRUE;
|
||||
_tonVoltageCheckTimeput(IN := FALSE);
|
||||
xReady := TRUE;
|
||||
stHMIInterface.eStatus := E_COMPONENT_STATUS.ON;
|
||||
_iState := 35;
|
||||
|
||||
E_STRING_OPERATING_MODE.PRECHARGE:
|
||||
_tonVoltageCheckTimeput(IN := FALSE);
|
||||
_xEnableVoltageLimitChecks := FALSE;
|
||||
xReady := TRUE;
|
||||
stHMIInterface.eStatus := E_COMPONENT_STATUS.ON;
|
||||
_iState := 35;
|
||||
|
||||
ELSE
|
||||
IF (_fbVoltageSegment.rScaledValue >= GVL_CONFIG.rMinimumUnitVoltage) THEN
|
||||
_xEnableVoltageLimitChecks := TRUE;
|
||||
xReady := TRUE;
|
||||
_iState := 35;
|
||||
END_IF
|
||||
END_CASE
|
||||
END_IF
|
||||
// Check for minimum unit voltage
|
||||
(*
|
||||
IF ((_fbVoltageSegment.rScaledValue >= GVL_CONFIG.rMinimumUnitVoltage) OR xInSafetyCheckMode) AND (NOT _xErrorActive) AND (NOT _xWarningActive) THEN
|
||||
_tonVoltageCheckTimeput(IN := FALSE);
|
||||
xReady := TRUE;
|
||||
@@ -1042,9 +1067,10 @@ CASE _iState OF
|
||||
stHMIInterface.eStatus := E_COMPONENT_STATUS.ON;
|
||||
_iState := 35;
|
||||
END_IF
|
||||
|
||||
END_IF
|
||||
*)
|
||||
|
||||
// Voltage check timeout
|
||||
IF _tonVoltageCheckTimeput.Q OR _xErrorActive THEN
|
||||
_tonVoltageCheckTimeput(IN := FALSE);
|
||||
xError := TRUE;
|
||||
@@ -1260,8 +1286,6 @@ CASE _iState OF
|
||||
_fbPosolytValveTankOutlet.ReqAutomaticClose();
|
||||
_rSetpointNegolytPumpInlet := GVL_CONFIG.rPumpNegolytDisChrgPower;
|
||||
_rSetpointPosolytPumpInlet := GVL_CONFIG.rPumpPosolytDisChrgPower;
|
||||
//_fbPosolytPumpInlet.ReqAutomaticStop();
|
||||
//_fbNegolytPumpInlet.ReqAutomaticStop();
|
||||
_xEnableVoltageLimitChecks := FALSE;
|
||||
xShutdownDischargeAllowed := FALSE;
|
||||
xInShutdownDischargeMode := FALSE;
|
||||
|
||||
Reference in New Issue
Block a user