Diese Funktionalität ist nur in bestimmten Ausbaustufen verfügbar.

Anpassen von FB_Sequence.AWL (FB1)

Der Funktionsbaustein FB_Sequence.AWL muss entsprechend dem folgenden Programmcode geändert werden:

FUNCTION_BLOCK "FB_Sequence"
TITLE =
VERSION : 0.1


VAR_OUTPUT
DefaultPosition : BOOL ;
END_VAR

VAR
(*{LocalVariables}*)
SM0 : BOOL ;
SM1 : BOOL ;
SM2 : BOOL ;
SM3 : BOOL ;
SM4 : BOOL ;
END_VAR

BEGIN

NETWORK
TITLE =

UN "E_BA_Automatic";
SPB DONE;

NETWORK
TITLE =

U #SM1;
SPB SM1;

NETWORK
TITLE =

U #SM2;
SPB SM2;

NETWORK
TITLE =

U #SM3;
SPB SM3;

NETWORK
TITLE =

U #SM4;
SPB SM4;

NETWORK
TITLE =
//Schritt 0: Wait for restart
//
U "Default_Position_Auto";
U "E_Start";
S #SM1;
R #SM0;

NETWORK
TITLE =

SPA DONE;

NETWORK
TITLE =.
//Step 1: FB_Insert
//
SM1: U #SM1;
U #FB_Insert.Ready;
S #SM2;
R #SM1;

NETWORK
TITLE =

SPA DONE;

NETWORK
TITLE =
// Step 2: FB_Move
SM2: U #SM2;
U #FB_Move.Ready;
S #SM3;
R #SM2;

NETWORK
TITLE =

SPA DONE;

NETWORK
TITLE =
//Step 3: FB_Inspect
//
SM3: U #SM3;
(*{IF mroot.$Option_Inspect_available}*)
U #FB_Inspect.Ready;
(*{END_IF}*)
S #SM4;
R #SM3;

NETWORK
TITLE =

SPA DONE;

NETWORK
TITLE =
//Step 4: FB_Move
SM4: U #SM4;
U #FB_Move.Ready;
S #SM0;
R #SM4;

NETWORK
TITLE =

SPA DONE;

NETWORK
TITLE =

DONE: U #SM1;
U "E_BA_Automatic";
S "Part_is_OK";

NETWORK
TITLE =

U #SM1;
U "E_BA_Automatic";
= #FB_Insert.Start;

NETWORK
TITLE =

U #SM2;
U "E_BA_Automatic";
= #FB_Move.Pos1Pos2;

NETWORK
TITLE =

(*{IF mroot.$Option_Inspect_available}*)
U #SM3;
U "E_BA_Automatic";
= #FB_Inspect.Start;
(*{END_IF}*)

NETWORK
TITLE =

U #SM4;
U "Part_is_OK";
U "E_BA_Automatic";
= #FB_Move.Pos2Pos4;

NETWORK
TITLE =

U #SM4;
UN "Teil_ist_OK";
U "E_BA_Automatic";
= #FB_Move.Pos2Pos3;

NETWORK
TITLE =

U( ;
#SM2;
#SM4;
) ;
U "E_BA_Automatic";
= #FB_Move.Start;

(*{LOOP:dos}*)

NETWORK
TITLE =

(*{Call}*)(*{END_LOOP}*)

NETWORK
TITLE =Default Position for BA Automatic

U #FB_Insert.DefaultPosition_Auto;
(*{IF mroot.$Option_Inspect_available}*)
U #FB_Inspect.DefaultPosition_Auto;
(*{END_IF}*)
U #FB_Move.DefaultPosition_Auto;
= "DefaultPosition_Auto";

NETWORK
TITLE =Other Default Position in BA DefaultPositionMove

U #FB_Insert.DefaultPosition_GF;
(*{IF mroot.$Option_Inspect_available}*)
U #FB_Inspect.DefaultPosition_GF;
(*{END_IF}*)
U #FB_Move.DefaultPosition_GF;
= "DefaultPosition_GF";
END_FUNCTION_BLOCK