This commit is contained in:
2026-01-08 11:08:17 +01:00
commit fe882dc444
311 changed files with 511562 additions and 0 deletions

View File

@@ -0,0 +1,173 @@
<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4026.11">
<POU Name="TMX_5000_FB" Id="{4d9eac39-6cf5-4d08-b510-b0066824a702}" SpecialFunc="None">
<Declaration><![CDATA[FUNCTION_BLOCK TMX_5000_FB EXTENDS Peripherie_FB
VAR_INPUT
bOutCmdReq AT %Q* : BOOL;
bOutResultAck AT %Q* : BOOL;
rOutCmdNr AT %Q* : UDINT;
rOutParameter AT %Q* : ARRAY [1..2] OF UDINT;
END_VAR
VAR_OUTPUT
bInRUN AT %I* : BOOL;
bInCmdReady AT %I* : BOOL;
bInCmdComplete AT %I* : BOOL;
rInCmdResult AT %I* : UDINT;
rInResult AT %I* : ARRAY [1..14] OF UDINT;
END_VAR
VAR
Test : BOOL;
ToRun : BOOL;
Test2 : BOOL;
PrNr : UDINT;
END_VAR]]></Declaration>
<Implementation>
<ST><![CDATA[IF iStationStatus.Soll.Stop THEN
RunMode();
END_IF
IF Test THEN
IF RunMode(ToRun) THEN
Test := FALSE;
END_IF
END_IF
IF Test2 THEN
IF ProgramChange(PrNr) THEN
Test2 := FALSE;
END_IF
END_IF]]></ST>
</Implementation>
<Method Name="Initialization" Id="{da7fcae4-c6e6-4693-b43f-0c1671d808f0}">
<Declaration><![CDATA[METHOD Initialization : BOOL
VAR_INPUT
iStation : INT;
END_VAR
]]></Declaration>
<Implementation>
<ST><![CDATA[PeripherieInitialization(iStation);]]></ST>
</Implementation>
</Method>
<Method Name="ProgramChange" Id="{ccb2494b-9a08-4ffb-bf39-dd69143f78d2}">
<Declaration><![CDATA[METHOD ProgramChange : BOOL
VAR_INPUT
In : UDINT;
END_VAR
VAR_INST
Step : INT;
END_VAR]]></Declaration>
<Implementation>
<ST><![CDATA[IF iStationStatus.Soll.Stop THEN
Step := 0;
RETURN;
END_IF
CASE Step OF
0:
IF bInCmdReady THEN
rOutCmdNr := 25; //Programm lesen
bOutCmdReq := TRUE;
Step := Step +1;
END_IF
1:
IF bInCmdComplete THEN
bOutCmdReq := FALSE;
Step := Step +1;
END_IF
2:
CASE rInCmdResult OF
0:
Step := 10;
ELSE
Step := 0;
END_CASE
10:
IF rInResult[2] = In THEN
Step := 100;
ELSE
Step := 50;
END_IF
50:
IF bInCmdReady THEN
rOutCmdNr := 24; //Programm wechseln
rOutParameter[1] := 1;
rOutParameter[2] := In;
bOutCmdReq := TRUE;
Step := Step +1;
END_IF
51:
IF bInCmdComplete THEN
bOutCmdReq := FALSE;
Step := Step +1;
END_IF
52:
CASE rInCmdResult OF
0:
Step := 0;
ELSE
Step := 0;
END_CASE
100:
Step := 0;
ProgramChange := TRUE;
END_CASE]]></ST>
</Implementation>
</Method>
<Method Name="RunMode" Id="{4b277ed8-4412-4d3f-a78e-cb1c64dc36be}">
<Declaration><![CDATA[METHOD RunMode : BOOL
VAR_INPUT
In : BOOL := FALSE;
END_VAR
VAR_INST
Step : INT;
END_VAR]]></Declaration>
<Implementation>
<ST><![CDATA[IF iStationStatus.Soll.Stop THEN
Step := 0;
RETURN;
END_IF
CASE Step OF
0:
IF bInRUN = In THEN
Step := 100;
ELSE
Step := 10;
END_IF
10:
IF bInCmdReady THEN
IF In THEN
rOutCmdNr := 8;
ELSE
rOutCmdNr := 9;
END_IF
bOutCmdReq := TRUE;
Step := Step +1;
END_IF
11:
IF bInCmdComplete THEN
bOutCmdReq := FALSE;
Step := Step +1;
END_IF
12:
CASE rInCmdResult OF
0:
Step := 0;
ELSE
Step := 10;
END_CASE
100:
RunMode := TRUE;
Step := 0;
END_CASE]]></ST>
</Implementation>
</Method>
</POU>
</TcPlcObject>