Initial
This commit is contained in:
173
PLC/6 Aligner/POUs/Peripherie/TMX_5000_FB.TcPOU
Normal file
173
PLC/6 Aligner/POUs/Peripherie/TMX_5000_FB.TcPOU
Normal 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>
|
||||
Reference in New Issue
Block a user