Relinked everything with HAL and Execute pattern
- Switched to BaseConponents V2.0
This commit is contained in:
@@ -15,13 +15,10 @@ VAR_OUTPUT
|
||||
xError : BOOL;
|
||||
END_VAR
|
||||
VAR_IN_OUT
|
||||
stIO : ST_Tank_IO;
|
||||
stHMIInterface : ST_HMI_Tank;
|
||||
END_VAR
|
||||
VAR
|
||||
i_xOverfull AT %I* : BOOL;
|
||||
i_xFull AT %I* : BOOL;
|
||||
i_xEmpty AT %I* : BOOL;
|
||||
|
||||
_fbWaterValve : FB_Valve('Water valve');
|
||||
_fbFillingValve : FB_Valve('Filling valve');
|
||||
_fbDrainValve : FB_Valve('Drain Valve');
|
||||
@@ -50,28 +47,31 @@ END_IF
|
||||
M_HandleHMIInput();
|
||||
|
||||
// Overfull is NC so true if ok
|
||||
_wFillingValveSafetyIntlk.0 := i_xOverfull;
|
||||
_wFillingValveSafetyIntlk.0 := stIO.i_xOverfull;
|
||||
_fbFillingValve(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
stValveConfig:= _stValveConfig,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
wSafetyINTLK:= _wFillingValveSafetyIntlk,
|
||||
wSafetyINTLKUsed:= _wFillingValveSafetyIntlkUsed,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stIO := stIO.stValveFilling,
|
||||
stHMIInterface:= stHMIInterface.stFillingValve);
|
||||
|
||||
_fbWaterValve(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
stValveConfig:= _stValveConfig,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stIO := stIO.stValveWater,
|
||||
stHMIInterface:= stHMIInterface.stDrainValve);
|
||||
|
||||
_fbDrainValve(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
stValveConfig:= _stValveConfig,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stIO := stIO.stValveDrain,
|
||||
stHMIInterface:= stHMIInterface.stDrainValve);
|
||||
|
||||
_fbPumpValve(
|
||||
@@ -79,7 +79,8 @@ _fbPumpValve(
|
||||
xReleaseErrors:= xReleaseErrors,
|
||||
stValveConfig:= _stValveConfig,
|
||||
xReleaseManualMode:= xReleaseManualMode,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
xConfirmAlarms:= xConfirmAlarms,
|
||||
stIO := stIO.stValvePump,
|
||||
stHMIInterface:= stHMIInterface.stPumpValve);
|
||||
|
||||
CASE _iState OF
|
||||
@@ -99,7 +100,7 @@ CASE _iState OF
|
||||
10:
|
||||
_fbDrainValve.xAutomaticOpen := TRUE;
|
||||
|
||||
IF (NOT i_xEmpty) THEN
|
||||
IF (NOT stIO.i_xEmpty) THEN
|
||||
_fbDrainValve.xAutomaticOpen := FALSE;
|
||||
|
||||
_iState := 0;
|
||||
@@ -119,9 +120,9 @@ END_CASE
|
||||
M_HandleHMIOutput();
|
||||
|
||||
// Copy to output buffer
|
||||
xOverfull := (NOT i_xOverfull);
|
||||
xFull := i_xFull;
|
||||
xEmpty := (NOT i_xEmpty);]]></ST>
|
||||
xOverfull := (NOT stIO.i_xOverfull);
|
||||
xFull := stIO.i_xFull;
|
||||
xEmpty := (NOT stIO.i_xEmpty);]]></ST>
|
||||
</Implementation>
|
||||
<Method Name="FB_Init" Id="{9c6d1842-9c2e-4437-b40f-941f77668ffe}">
|
||||
<Declaration><![CDATA[//FB_Init is always available implicitly and it is used primarily for initialization.
|
||||
@@ -171,12 +172,12 @@ END_VAR
|
||||
<Implementation>
|
||||
<ST><![CDATA[{warning disable C0371}
|
||||
// Overfull sensor is NC
|
||||
stHMIInterface.xOverfull := (NOT i_xOverfull);
|
||||
stHMIInterface.xFull := i_xFull;
|
||||
stHMIInterface.xEmpty := (NOT i_xEmpty);
|
||||
stHMIInterface.xOverfull := (NOT stIO.i_xOverfull);
|
||||
stHMIInterface.xFull := stIO.i_xFull;
|
||||
stHMIInterface.xEmpty := (NOT stIO.i_xEmpty);
|
||||
|
||||
stHMIInterface.stFillButton.xRelease := i_xOverfull AND (NOT i_xFull);
|
||||
stHMIInterface.stEmptyButton.xRelease := i_xEmpty;
|
||||
stHMIInterface.stFillButton.xRelease := stIO.i_xOverfull AND (NOT stIO.i_xFull);
|
||||
stHMIInterface.stEmptyButton.xRelease := stIO.i_xEmpty;
|
||||
|
||||
IF _fbWaterValve.IsOpen THEN
|
||||
stHMIInterface.stFillButton.eFeedback := 1;
|
||||
|
||||
Reference in New Issue
Block a user