Some refactoring after static code analysis

This commit is contained in:
2026-02-08 12:48:29 +01:00
parent bdaaf1fe9f
commit 69ef2c6904
43 changed files with 3244 additions and 1097 deletions

View File

@@ -4,26 +4,29 @@
<Declaration><![CDATA[FUNCTION_BLOCK FB_Aligner EXTENDS FB_PackMLGeneric
VAR_INPUT
xEnableVacuum : BOOL;
xAlign : BOOL;
xExecute : BOOL;
xConfirmAlarms : BOOL;
END_VAR
VAR_OUTPUT
xVacuumEnabled : BOOL;
END_VAR
VAR
VAR
xActivateVacuum AT %Q* : BOOL := FALSE;
xDeactivateVacuum AT %Q* : BOOL := TRUE;
xVacuumOk AT %I* : BOOL;
diXOffset AT %I* : DINT;
diYOffset AT %I* : DINT;
_fbXAxis : FB_AxisPTP;
_fbYAxis : FB_AxisPTP;
_xEnableVacuum AT %Q* : BOOL := FALSE;
_xDisableVacuum AT %Q* : BOOL := TRUE;
_xVacuumOk AT %I* : BOOL;
_udiXOffset AT %I* : DINT;
_udiYOffset AT %I* : DINT;
_rXPosToGo : REAL;
_rYPosToGo : REAL;
_rtExecute : R_TRIG;
_xStartAlign : BOOL;
END_VAR
]]></Declaration>
<Implementation>
@@ -51,12 +54,13 @@ _fbYAxis(
lrJerk:= 0,
xConfirmAlarms:= xConfirmAlarms);
// Drei mal ausführen damit die Position genau ist
IF xAlign THEN
xAlign := FALSE;
_rtExecute(CLK:= xExecute, Q=> _xStartAlign);
_rXPosToGo := DINT_TO_REAL(_udiXOffset) * -0.001;
_rYPosToGo := ((DINT_TO_REAL(_udiYOffset) * 0.001) - 37.5) * -1;
// Drei mal ausführen damit die Position genau ist
IF _xStartAlign THEN
_rXPosToGo := DINT_TO_REAL(diXOffset) * -0.001;
_rYPosToGo := ((DINT_TO_REAL(diYOffset) * 0.001) - 37.5) * -1;
IF (ABS(_rXPosToGo) < 10.0) AND (ABS(_rYPosToGo) < 10.0) AND (NOT _fbXAxis.xError) AND (NOT _fbYAxis.xError) THEN
_fbXAxis.M_MoveRel(lrRelDist := _rXPosToGo);
@@ -65,9 +69,9 @@ IF xAlign THEN
END_IF
// Handle enable disable vacuum command
_xEnableVacuum := xEnableVacuum;
_xDisableVacuum := (NOT xEnableVacuum);
xVacuumEnabled := _xVacuumOk;]]></ST>
xActivateVacuum := xEnableVacuum;
xDeactivateVacuum := (NOT xEnableVacuum);
xVacuumEnabled := xVacuumOk;]]></ST>
</Implementation>
</POU>
</TcPlcObject>