Diff of /branches/PackMLState/Main_Escape_PLC/Plc Logic/Application/Function Blocks/IO/SlidingDoorStateMachine/svnobj [r14] .. [r15]  Maximize  Restore

Switch to side-by-side view

--- a/branches/PackMLState/Main_Escape_PLC/Plc Logic/Application/Function Blocks/IO/SlidingDoorStateMachine/svnobj
+++ b/branches/PackMLState/Main_Escape_PLC/Plc Logic/Application/Function Blocks/IO/SlidingDoorStateMachine/svnobj
@@ -1,4 +1,5 @@
-Gx_lhL!0…jüo¦1`X1¼šà.¹KSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument	L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
+Gx_lHM!0…jüo$2à fJüç…
+ÕSystem.StringL{6f9dac99-8de1-4efc-8465-68ac443b7d08}SpecialFuncL{0db3d7bb-cde0-4416-9a7b-ce49a0124323}NoneImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocument	L{f3878285-8e4f-490b-bb1b-9acbb7eb04db}
 TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}Id
longTagText$IF NOT xInit THEN	N	UM				(		sName := 'Normal Operation', ì							dwSupportedStates := PACK_ML.State.All - PACK_ML.State.Suspending - PACK_ML.State.Suspended - PACK_ML.State.UnSuspending - PACK_ML.Holding - PACK_ML.Held - PACK_ML.UnHolding, Ô							dwAllowsLeavingFromStates := PACK_ML.State.Stopped OR PACK_ML.State.Aborted OR PACK_ML.State.Idle, Ö							dwAllowsEnteringIntoStates := PACK_ML.State.Stopped OR PACK_ML.State.Aborted OR PACK_ML.State.Idle, \							eInitialState := PACK_ML.State.Aborted,0							xActive := TRUE);	xInit := TRUE;	END_IF4IF Client.bReadyToPLC THEN:	CASE Client.iCommandToPLC OF"	0 : 	//Handshake	1 : 	//Lock		IF SysStrCmp(Client.sCommandToPLC, Client.LockCommands[0]) =  0 THEN		 "			_open := TRUE;!–		ELSIF SysStrCmp(Client.sCommandToPLC, Client.LockCommands[1]) =  0 THEN		"(			_close:= TRUE;			#		END_IF$	2 : 	//Key		%	3 : 	//IO&	4 : 	//Media'	5 : 	//Hint(	6 : 	//State	)l		IF SysStrCmp(Client.sCommandToPLC, 'SC') =  0 THEN		*&			StateComplete();+x		ELSIF SysStrCmp(Client.sCommandToPLC, 'Start') =  0 THEN		,			Start();-v		ELSIF SysStrCmp(Client.sCommandToPLC, 'Stop') =  0 THEN		.			Stop();/x		ELSIF SysStrCmp(Client.sCommandToPLC, 'Reset') =  0 THEN		0			Reset();1x		ELSIF SysStrCmp(Client.sCommandToPLC, 'Abort') =  0 THEN		2			Abort();3x		ELSIF SysStrCmp(Client.sCommandToPLC, 'Clear') =  0 THEN		4			Clear();5v		ELSIF SysStrCmp(Client.sCommandToPLC, 'Hold') =  0 THEN		6			Hold();7z		ELSIF SysStrCmp(Client.sCommandToPLC, 'UnHold') =  0 THEN		8			Unhold();	9|		ELSIF SysStrCmp(Client.sCommandToPLC, 'Suspend') =  0 THEN		:			Suspend();;€		ELSIF SysStrCmp(Client.sCommandToPLC, 'UnSuspend') =  0 THEN		<			UnSuspend();=		>	END_CASE?6	Client.iCommandToPLC := 0;@8	Client.sCommandToPLC := '';A:	Client.bReadyToPLC := FALSE;B.CASE UM.CurrentState OFC,PACK_ML.State.Stopped:D	;E,PACK_ML.State.Aborted:F&PACK_ML.State.Idle:G2PACK_ML.State.Complete :	H.PACK_ML.State.Execute :I4	CASE Client.ActualStep OFJ	0:K6		Client.ActualStep := 300;L	300:  M		IF _open THENNP			Client.Message:='Opening the door.';	O			//Open DoorP8			Client.ActualStep := 301;Q$			_open := FALSE;R&	   	IF _close THENSP			Client.Message:='Closing the door.';	T			//Close DoorU8			Client.ActualStep := 311;V&			_close := FALSE;W	   	END_IFX
 	301:Y’		IF FHPP_CTRL_Door.Ready AND FHPP_CTRL_Door.ActualPosition > 10000  THENZ8			Client.ActualStep := 302;[H	   	ELSIF FHPP_CTRL_Door.Ready THEN\8			Client.ActualStep := 300;]	   	END_IF;^
 	302:_T		FHPP_CTRL_Door.SetValuePosition := 5000;`6		Client.ActualStep := 303;a
@@ -7,7 +8,7 @@
 	311:k°		IF FHPP_CTRL_Door.Ready AND FHPP_CTRL_Door.ActualPosition < iTest_Door_Close_Pos  THENl8			Client.ActualStep := 312;mB		ELSIF FHPP_CTRL_Door.Ready THENn
 	312:ot		FHPP_CTRL_Door.SetValuePosition := iTest_Door_Close_Pos;p6		Client.ActualStep := 313;q
 	313:r8			Client.ActualStep := 314;s
-	314:tN			Client.Message:='Closed the door.';	u		END_IF;     v END_CASE  w2PACK_ML.State.Resetting :x		0:y:			Client.ActualStep := 100;	z		100: {ˆ			Client.Message:='Waiting for voltage supplied or fault reset.';	 |–			IF NOT FHPP_CTRL_Door.Fault AND FHPP_CTRL_Door.SupplyVoltagePresent THEN}L           		Client.ActualStep := 101;~        		END_IF;        €4    	101: (*enable drive*)Š			IF FHPP_CTRL_Door.DriveEnabled AND FHPP_CTRL_Door.HomingValid THEN‚:				Client.ActualStep := 111;ƒ˜			ELSIF FHPP_CTRL_Door.DriveEnabled AND NOT FHPP_CTRL_Door.HomingValid THEN„8				Client.ActualStep :=102;…			END_IF;†				‡>			IF FHPP_CTRL_Door.Fault THENˆL           		Client.ActualStep := 100;‰"		102: (*Homing*)Š:			Client.Message:='Homing.';‹J			IF FHPP_CTRL_Door.HomingValid THENŒ			END_IF;	    		END_IF;Ž		111:N			Client.Message:='Closing the door.';´			IF FHPP_CTRL_Door.Ready AND FHPP_CTRL_Door.ActualPosition >= iTest_Door_Close_Pos  THEN‘2				Client.Message:='';		’8				Client.ActualStep := 0;	“*				StateComplete();	”D			ELSIF FHPP_CTRL_Door.Ready THEN•:				Client.ActualStep := 112;–  			END_IF;—		112:˜R			Client.Message:='Closing the door.';		™v			FHPP_CTRL_Door.SetValuePosition := iTest_Door_Close_Pos;š8			Client.ActualStep := 113;›							œ		113:2		    startPulse := TRUE;žV			Client.Message:='Waiting for AckStart.';ŸD			IF FHPP_CTRL_Door.AckStart THEN L           		Client.ActualStep := 114;¡0				startPulse := FALSE;¢   			END_IF;£		114:¤8			IF FHPP_CTRL_Door.MC THEN¥   			END_IF;	¦	END_CASE	§0PACK_ML.State.Starting :¨,	Client.Message:='';		©2	Client.ActualStep := 0;	ª"	StateComplete();«4PACK_ML.State.Completing :¬2PACK_ML.State.Aborting :	­$	StateComplete();	®.PACK_ML.State.Stopping:¯0PACK_ML.State.Clearing :°END_CASE±fIF NOT (DI_EmergencyGF AND NOT DI_EmergencyFF) THEN²(	// Emergency Abort.³	Abort();	´END_IF µLClient.ActualState := UM.CurrentState;¶zbl(Enable := TRUE, TIMEHIGH := T#500MS, TIMELOW := T#500MS );·rb2(ENABLE := TRUE,TIMELOW := T#100MS,TIMEHIGH:= T#100MS);¸”IF Client.ActualStep = 100 AND Client.ActualState = PACK_ML.Resetting THEN¹J	FHPP_CTRL_Door.ResetFault := b2.OUT;ºELSE»N    FHPP_CTRL_Door.ResetFault := FALSE;¼END_IF;½$(* Enable drive *)¾êIF Client.ActualStep >= 101 AND (Client.ActualState = PACK_ML.Resetting OR Client.ActualState = PACK_ML.Execute )THEN¿N    FHPP_CTRL_Door.EnableDrive := TRUE;ÀP    FHPP_CTRL_Door.EnableDrive := FALSE;Á	Abort();Â$(* Start homing *)ÃÜFHPP_CTRL_Door.StartHoming := Client.ActualStep = 102 AND Client.ActualState = PACK_ML.Resetting AND bl.OUT  ;Ä (* Start task *)ÅdFHPP_CTRL_Door.StartTask:= startPulse AND bl.OUT ;ÆInterfaceÇL{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}ÈLFUNCTION_BLOCK SlidingDoorStateMachineÉVAR_IN_OUTÊ&	Client : IOClient;ËEND_VARÌVARÍ0	UM	: PACK_ML.UnitMode; Îj	xInit				: BOOL := FALSE; // Flag for initializationÏ	delay : TON;Ð	bl : blink;Ñ	b2 : blink;Ò	tp1 : TP;Ó	_open : BOOL;Ô	_close : BOOL;Õ&	startPulse : BOOL;ÖP	iTest_Door_Close_Pos : DINT := 827000 ;×"UniqueIdGeneratorØ882ÙPOULevelÚL{8e575c5b-1d37-49c6-941b-5c0ec7874787}ÛStandardÜ ChildObjectGuidsÝ8System.Collections.ArrayListÞ,AddAttributeSubsequentßboolÐÐ-ÐÐ	E
-€ÐÐ
­@ÚÐ-ÐÐ
­AÚÐ-ÐÐ
­BÚÐ-ÐÐ
­CÚÐ-ÐÐ
­DÚÐ-ÐÐ
­EÚÐ-ÐÐ
­FÚÐ-ÐÐ
­HÚÐ-ÐÐ
­IÚÐ-ÐÐ
­JÚÐ-ÐÐ
­KÚÐ-ÐÐ
­]ÚÐ-ÐÐ
­MÚÐ-ÐÐ
­NÚÐ-ÐÐ
­OÚÐ-ÐÐ
­PÚÐ-ÐÐ
­QÚÐ-ÐÐ
­RÚÐ-ÐÐ
­SÚÐ- ÐÐ
­TÚÐ-!ÐÐ
­UÚÐ-"ÐÐ
­VÚÐ-#ÐÐ
­WÚÐ-$ÐÐ
­XÚÐ-%ÐÐ
­YÚÐ-&ÐÐ
­ZÚÐ-'ÐÐ
­[ÚÐ-(ÐÐ
­\ÚÐ-)ÐÐ
­]ÚÐ-*ÐÐ
­^ÚÐ-+ÐÐ
­_ÚÐ-,ÐÐ
­`ÚÐ--ÐÐ
­aÚÐ-.ÐÐ
­bÚÐ-/ÐÐ
­cÚÐ-0ÐÐ
­dÚÐ-1ÐÐ
­eÚÐ-2ÐÐ
­fÚÐ-3ÐÐ
­gÚÐ-4ÐÐ
­hÚÐ-5ÐÐ
­iÚÐ-6ÐÐ
­jÚÐ-7ÐÐ
­kÚÐ-8ÐÐ
­lÚÐ-9ÐÐ
­mÚÐ-:ÐÐ
­nÚÐ-;ÐÐ
­oÚÐ-<ÐÐ
­pÚÐ-#ÐÐ
­qÚÐ-=ÐÐ
­rÚÐ->ÐÐ
­sÚÐ-ÐÐ
­tÚÐ-?ÐÐ
­uÚÐ-@ÐÐ
­vÚÐ-AÐÐ
­wÚÐ-ÐÐ
­xÚÐ-ÐÐ
­yÚÐ-ÐÐ
­zÚÐ-ÐÐ
­{ÚÐ-ÐÐ
­|ÚÐ-ÐÐ
­}ÚÐ-BÐÐ
­~ÚÐ-CÐÐ
­ÚÐ-DÐÐ
­€ÚÐ-EÐÐ
­ÚÐ-DÐÐ
­‚ÚÐ-FÐÐ
­ƒÚÐ-DÐÐ
­„ÚÐ-GÐÐ
­…ÚÐ-DÐÐ
­†ÚÐ-HÐÐ
­‡ÚÐ-IÐÐ
­ˆÚÐ-JÐÐ
­‰ÚÐ-KÐÐ
­ŠÚÐ-ÐÐ
­‹ÚÐ-LÐÐ
­ŒÚÐ-MÐÐ
­ÚÐ-NÐÐ
­ŽÚÐ-OÐÐ
­ÚÐ-PÐÐ
­ÚÐ-QÐÐ
­‘ÚÐ-#ÐÐ
­’ÚÐ-RÐÐ
­“ÚÐ-SÐÐ
­”ÚÐ-TÐÐ
­•ÚÐ-UÐÐ
­–ÚÐ-VÐÐ
­—ÚÐ-WÐÐ
­˜ÚÐ-=ÐÐ
­™ÚÐ-XÐÐ
­šÚÐ-YÐÐ
­›ÚÐ-ZÐÐ
­œÚÐ-[ÐÐ
­ŸÚÐ-\ÐÐ
­ ÚÐ-]ÐÐ
­¡ÚÐ-^ÐÐ
­¢ÚÐ-_ÐÐ
­£ÚÐ-`ÐÐ
­¤ÚÐ-aÐÐ
­^ÚÐ-bÐÐ
­¥ÚÐ-cÐÐ
­¦ÚÐ-dÐÐ
­cÚÐ-eÐÐ
­§ÚÐ-fÐÐ
­¨ÚÐ-gÐÐ
­©ÚÐ-hÐÐ
­ªÚÐ-iÐÐ
­«ÚÐ-\ÐÐ
­¬ÚÐ-fÐÐ
­­ÚÐ-jÐÐ
­®ÚÐ-kÐÐ
­¯ÚÐ-lÐÐ
­°ÚÐ-mÐÐ
­±ÚÐ-\ÐÐ
­²ÚÐ-fÐÐ
­³ÚÐ-nÐÐ
­´ÚÐ-oÐÐ
­µÚÐ-pÐÐ
­¶ÚÐ-qÐÐ
­_ÚÐ-bÐÐ
­·ÚÐ-cÐÐ
­¸ÚÐ-rÐÐ
­dÚÐ-eÐÐ
­¹ÚÐ-fÐÐ
­ºÚÐ-sÐÐ
­»ÚÐ-hÐÐ
­¼ÚÐ-tÐÐ
­½ÚÐ-\ÐÐ
­¾ÚÐ-uÐÐ
­¿ÚÐ-vÐÐ
­ÀÚÐ-wÐÐ
­ÁÚÐ-IÐÐ
­ÂÚÐ-xÐÐ
­ÃÚÐ-yÐÐ
­ÄÚÐ-zÐÐ
­ÅÚÐ-ÐÐ
­ÆÚÐ-{ÐÐ
­ÇÚÐ-|ÐÐ
­ÈÚÐ-}ÐÐ
­ÉÚÐ-~ÐÐ
­ÊÚÐ-ÐÐ
­ËÚÐ-€ÐÐ
­ÌÚÐ-ÐÐ
­ÍÚÐ-‚ÐÐ
­ÎÚÐ-ƒÐÐ
­ÏÚÐ-„ÐÐ
­ÐÚÐ-…ÐÐ
­ÑÚÐ-†ÐÐ
­ÒÚÐ-‡ÐÐ
­ÓÚÐ-ˆÐÐ
­ÔÚÐ-~ÐÐ
­ÕÚÐ-ÐÐ
­ÖÚÐ-‰ÐÐ
­×ÚÐ-ŠÐÐ
­ØÚÐ-‹ÐÐ
­ÙÚÐ-‚ÐÐ
­ÚÚÐ-ŒÐÐ
­ÛÚÐ-‡ÐÐ
­ÜÚÐ-ˆÐÐ
­ÝÚÐ-ÐÐ
­ÞÚÐ-ŽÐÐ
­ßÚÐ-ÐÐ
­àÚÐ-ÐÐ
­áÚÐ-‘ÐÐ
­âÚÐ-’ÐÐ
­ãÚÐ-“ÐÐ
­äÚÐ-”ÐÐ
­åÚÐ-•ÐÐ
­æÚÐ-…ÐÐ
­çÚÐ-‡ÐÐ
­èÚÐ-ˆÐÐ
­éÚÐ-–ÐÐ
­êÚÐ-—ÐÐ
­ëÚÐ-†ÐÐ
­ìÚÐ-˜ÐÐ
­íÚÐ-™ÐÐ
­mÚÐ-šÐÐ
­ðÚÐ-›ÐÐ
­ñÚÐ-œÐÐ
­òÚÐ-ÐÐ
­óÚÐ-žÐÐ
­ôÚÐ-ŸÐÐ
­õÚÐ- ÐÐ
­eÚÐ-¡ÐÐ
­öÚÐ-~ÐÐ
­÷ÚÐ-‡ÐÐ
­øÚÐ-ˆÐÐ
­fÚÐ-¡ÐÐ
­ùÚÐ-¢ÐÐ
­úÚÐ-£ÐÐ
­ûÚÐ-¤ÐÐ
­üÚÐ-‘ÐÐ
­ýÚÐ-’ÐÐ
­þÚÐ-“ÐÐ
­ÿÚÐ-…ÐÐ
­ÚÐ-‡ÐÐ
­ÚÐ-ˆÐÐ
­ÚÐ-¥ÐÐ
­ÚÐ-¦ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-§ÐÐ
­ÚÐ-¨ÐÐ
­ÚÐ-©ÐÐ
­	ÚÐ-ªÐÐ
­
-ÚÐ-«ÐÐ
­ÚÐ-¨ÐÐ
­ÚÐ-©ÐÐ
­
ÚÐ-ªÐÐ
­ÚÐ-¬ÐÐ
­qÚÐ-¨ÐÐ
­rÚÐ-©ÐÐ
­*ÚÐ-­ÐÐ
­,ÚÐ-®ÐÐ
­-ÚÐ-¨ÐÐ
­.ÚÐ-©ÐÐ
­/ÚÐ-ªÐÐ
­0ÚÐ-¯ÐÐ
­1ÚÐ-¨ÐÐ
­2ÚÐ-©ÐÐ
­3ÚÐ-ªÐÐ
­4ÚÐ-°ÐÐ
­5ÚÐ-ÐÐ
­6ÚÐ-±ÐÐ
­7ÚÐ-²ÐÐ
­8ÚÐ-³ÐÐ
­9ÚÐ-´ÐÐ
­:ÚÐ-ÐÐ
­;ÚÐ-ÐÐ
­<ÚÐ-µÐÐ
­=ÚÐ-ÐÐ
­@ÚÐ-ÐÐ
­AÚÐ-¶ÐÐ
­BÚÐ-·ÐÐ
­CÚÐ-ÐÐ
­DÚÐ-¸ÐÐ
­EÚÐ-¹ÐÐ
­FÚÐ-ºÐÐ
­GÚÐ-»ÐÐ
­HÚÐ-¼ÐÐ
­IÚÐ-ÐÐ
­JÚÐ-½ÐÐ
­KÚÐ-¾ÐÐ
­LÚÐ-¿ÐÐ
­MÚÐ-ºÐÐ
­NÚÐ-ÀÐÐ
­OÚÐ-¼ÐÐ
­PÚÐ-ÐÐ
­QÚÐ-±ÐÐ
­RÚÐ-ÁÐÐ
­SÚÐ-´ÐÐ
­VÚÐ-ÐÐ
­WÚÐ-ÂÐÐ
­XÚÐ-ÃÐÐ
­YÚÐ-ÐÐ
­ZÚÐ-ÄÐÐ
­fÚÐ-ÅÐÆÇÐ	E
-ÐÐ
­ÚÐ-ÈÐÐ
­ÚÐ-ÉÐÐ
­ÚÐ-ÊÐÐ
­ÚÐ-ËÐÐ
­ÚÐ-ÌÐÐ
­
ÚÐ-ÍÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÎÐÐ
­ÚÐ-ÏÐÐ
­‚ÚÐ-ÐÐÐ
­oÚÐ-ÑÐÐ
­[ÚÐ-ÒÐÐ
­ÚÐ-ÓÐÐ
­!ÚÐ-ÔÐÐ
­ ÚÐ-ÕÐÐ
­bÚÐ-ÖÐÐ
­hÚÐ-ÐÐ
­iÚÐ-ÐÐ
­ÚÐ-ËÐÐ
­ÚÐ-Ð×-ØÐÙÚ-ÛÜÝÐÞß­
\ No newline at end of file
+	314:tN			Client.Message:='Closed the door.';	u		END_IF;     v END_CASE  w2PACK_ML.State.Resetting :x		0:y:			Client.ActualStep := 100;	z		100: {ˆ			Client.Message:='Waiting for voltage supplied or fault reset.';	 |–			IF NOT FHPP_CTRL_Door.Fault AND FHPP_CTRL_Door.SupplyVoltagePresent THEN}L           		Client.ActualStep := 101;~        		END_IF;        €4    	101: (*enable drive*)Š			IF FHPP_CTRL_Door.DriveEnabled AND FHPP_CTRL_Door.HomingValid THEN‚:				Client.ActualStep := 111;ƒ˜			ELSIF FHPP_CTRL_Door.DriveEnabled AND NOT FHPP_CTRL_Door.HomingValid THEN„8				Client.ActualStep :=102;…			END_IF;†				‡>			IF FHPP_CTRL_Door.Fault THENˆL           		Client.ActualStep := 100;‰"		102: (*Homing*)Š:			Client.Message:='Homing.';‹J			IF FHPP_CTRL_Door.HomingValid THENŒ			END_IF;	    		END_IF;Ž		111:N			Client.Message:='Closing the door.';´			IF FHPP_CTRL_Door.Ready AND FHPP_CTRL_Door.ActualPosition >= iTest_Door_Close_Pos  THEN‘2				Client.Message:='';		’8				Client.ActualStep := 0;	“*				StateComplete();	”D			ELSIF FHPP_CTRL_Door.Ready THEN•:				Client.ActualStep := 112;–  			END_IF;—		112:˜R			Client.Message:='Closing the door.';		™v			FHPP_CTRL_Door.SetValuePosition := iTest_Door_Close_Pos;š8			Client.ActualStep := 113;›							œ		113:2		    startPulse := TRUE;žV			Client.Message:='Waiting for AckStart.';ŸD			IF FHPP_CTRL_Door.AckStart THEN L           		Client.ActualStep := 114;¡0				startPulse := FALSE;¢   			END_IF;£		114:¤8			IF FHPP_CTRL_Door.MC THEN¥   			END_IF;	¦	END_CASE	§0PACK_ML.State.Starting :¨,	Client.Message:='';		©2	Client.ActualStep := 0;	ª"	StateComplete();«4PACK_ML.State.Completing :¬2PACK_ML.State.Aborting :	­$	StateComplete();	®.PACK_ML.State.Stopping:¯0PACK_ML.State.Clearing :°END_CASE±fIF NOT (DI_EmergencyGF AND NOT DI_EmergencyFF) THEN²(	// Emergency Abort.³	Abort();	´END_IF µLClient.ActualState := UM.CurrentState;¶>messageQueue(Client := Client);·zbl(Enable := TRUE, TIMEHIGH := T#500MS, TIMELOW := T#500MS );¸rb2(ENABLE := TRUE,TIMELOW := T#100MS,TIMEHIGH:= T#100MS);¹”IF Client.ActualStep = 100 AND Client.ActualState = PACK_ML.Resetting THENºJ	FHPP_CTRL_Door.ResetFault := b2.OUT;»ELSE¼N    FHPP_CTRL_Door.ResetFault := FALSE;½END_IF;¾$(* Enable drive *)¿êIF Client.ActualStep >= 101 AND (Client.ActualState = PACK_ML.Resetting OR Client.ActualState = PACK_ML.Execute )THENÀN    FHPP_CTRL_Door.EnableDrive := TRUE;ÁP    FHPP_CTRL_Door.EnableDrive := FALSE;Â	Abort();Ã$(* Start homing *)ÄÜFHPP_CTRL_Door.StartHoming := Client.ActualStep = 102 AND Client.ActualState = PACK_ML.Resetting AND bl.OUT  ;Å (* Start task *)ÆdFHPP_CTRL_Door.StartTask:= startPulse AND bl.OUT ;ÇInterfaceÈL{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}ÉLFUNCTION_BLOCK SlidingDoorStateMachineÊVAR_IN_OUTË&	Client : IOClient;ÌEND_VARÍVARÎ0	UM	: PACK_ML.UnitMode; Ïj	xInit				: BOOL := FALSE; // Flag for initializationÐ	delay : TON;Ñ	bl : blink;Ò	b2 : blink;Ó	tp1 : TP;Ô	_open : BOOL;Õ	_close : BOOL;Ö&	startPulse : BOOL;×P	iTest_Door_Close_Pos : DINT := 827000 ;Ø:	messageQueue : MessageQueue;Ù"UniqueIdGeneratorÚ886ÛPOULevelÜL{8e575c5b-1d37-49c6-941b-5c0ec7874787}ÝStandardÞ ChildObjectGuidsß8System.Collections.ArrayListà,AddAttributeSubsequentáboolÐÐ-ÐÐ	E
+‚ÐÐ
­@ÚÐ-ÐÐ
­AÚÐ-ÐÐ
­BÚÐ-ÐÐ
­CÚÐ-ÐÐ
­DÚÐ-ÐÐ
­EÚÐ-ÐÐ
­FÚÐ-ÐÐ
­HÚÐ-ÐÐ
­IÚÐ-ÐÐ
­JÚÐ-ÐÐ
­KÚÐ-ÐÐ
­]ÚÐ-ÐÐ
­MÚÐ-ÐÐ
­NÚÐ-ÐÐ
­OÚÐ-ÐÐ
­PÚÐ-ÐÐ
­QÚÐ-ÐÐ
­RÚÐ-ÐÐ
­SÚÐ- ÐÐ
­TÚÐ-!ÐÐ
­UÚÐ-"ÐÐ
­VÚÐ-#ÐÐ
­WÚÐ-$ÐÐ
­XÚÐ-%ÐÐ
­YÚÐ-&ÐÐ
­ZÚÐ-'ÐÐ
­[ÚÐ-(ÐÐ
­\ÚÐ-)ÐÐ
­]ÚÐ-*ÐÐ
­^ÚÐ-+ÐÐ
­_ÚÐ-,ÐÐ
­`ÚÐ--ÐÐ
­aÚÐ-.ÐÐ
­bÚÐ-/ÐÐ
­cÚÐ-0ÐÐ
­dÚÐ-1ÐÐ
­eÚÐ-2ÐÐ
­fÚÐ-3ÐÐ
­gÚÐ-4ÐÐ
­hÚÐ-5ÐÐ
­iÚÐ-6ÐÐ
­jÚÐ-7ÐÐ
­kÚÐ-8ÐÐ
­lÚÐ-9ÐÐ
­mÚÐ-:ÐÐ
­nÚÐ-;ÐÐ
­oÚÐ-<ÐÐ
­pÚÐ-#ÐÐ
­qÚÐ-=ÐÐ
­rÚÐ->ÐÐ
­sÚÐ-ÐÐ
­tÚÐ-?ÐÐ
­uÚÐ-@ÐÐ
­vÚÐ-AÐÐ
­wÚÐ-ÐÐ
­xÚÐ-ÐÐ
­yÚÐ-ÐÐ
­zÚÐ-ÐÐ
­{ÚÐ-ÐÐ
­|ÚÐ-ÐÐ
­}ÚÐ-BÐÐ
­~ÚÐ-CÐÐ
­ÚÐ-DÐÐ
­€ÚÐ-EÐÐ
­ÚÐ-DÐÐ
­‚ÚÐ-FÐÐ
­ƒÚÐ-DÐÐ
­„ÚÐ-GÐÐ
­…ÚÐ-DÐÐ
­†ÚÐ-HÐÐ
­‡ÚÐ-IÐÐ
­ˆÚÐ-JÐÐ
­‰ÚÐ-KÐÐ
­ŠÚÐ-ÐÐ
­‹ÚÐ-LÐÐ
­ŒÚÐ-MÐÐ
­ÚÐ-NÐÐ
­ŽÚÐ-OÐÐ
­ÚÐ-PÐÐ
­ÚÐ-QÐÐ
­‘ÚÐ-#ÐÐ
­’ÚÐ-RÐÐ
­“ÚÐ-SÐÐ
­”ÚÐ-TÐÐ
­•ÚÐ-UÐÐ
­–ÚÐ-VÐÐ
­—ÚÐ-WÐÐ
­˜ÚÐ-=ÐÐ
­™ÚÐ-XÐÐ
­šÚÐ-YÐÐ
­›ÚÐ-ZÐÐ
­œÚÐ-[ÐÐ
­ŸÚÐ-\ÐÐ
­ ÚÐ-]ÐÐ
­¡ÚÐ-^ÐÐ
­¢ÚÐ-_ÐÐ
­£ÚÐ-`ÐÐ
­¤ÚÐ-aÐÐ
­^ÚÐ-bÐÐ
­¥ÚÐ-cÐÐ
­¦ÚÐ-dÐÐ
­cÚÐ-eÐÐ
­§ÚÐ-fÐÐ
­¨ÚÐ-gÐÐ
­©ÚÐ-hÐÐ
­ªÚÐ-iÐÐ
­«ÚÐ-\ÐÐ
­¬ÚÐ-fÐÐ
­­ÚÐ-jÐÐ
­®ÚÐ-kÐÐ
­¯ÚÐ-lÐÐ
­°ÚÐ-mÐÐ
­±ÚÐ-\ÐÐ
­²ÚÐ-fÐÐ
­³ÚÐ-nÐÐ
­´ÚÐ-oÐÐ
­µÚÐ-pÐÐ
­¶ÚÐ-qÐÐ
­_ÚÐ-bÐÐ
­·ÚÐ-cÐÐ
­¸ÚÐ-rÐÐ
­dÚÐ-eÐÐ
­¹ÚÐ-fÐÐ
­ºÚÐ-sÐÐ
­»ÚÐ-hÐÐ
­¼ÚÐ-tÐÐ
­½ÚÐ-\ÐÐ
­¾ÚÐ-uÐÐ
­¿ÚÐ-vÐÐ
­ÀÚÐ-wÐÐ
­ÁÚÐ-IÐÐ
­ÂÚÐ-xÐÐ
­ÃÚÐ-yÐÐ
­ÄÚÐ-zÐÐ
­ÅÚÐ-ÐÐ
­ÆÚÐ-{ÐÐ
­ÇÚÐ-|ÐÐ
­ÈÚÐ-}ÐÐ
­ÉÚÐ-~ÐÐ
­ÊÚÐ-ÐÐ
­ËÚÐ-€ÐÐ
­ÌÚÐ-ÐÐ
­ÍÚÐ-‚ÐÐ
­ÎÚÐ-ƒÐÐ
­ÏÚÐ-„ÐÐ
­ÐÚÐ-…ÐÐ
­ÑÚÐ-†ÐÐ
­ÒÚÐ-‡ÐÐ
­ÓÚÐ-ˆÐÐ
­ÔÚÐ-~ÐÐ
­ÕÚÐ-ÐÐ
­ÖÚÐ-‰ÐÐ
­×ÚÐ-ŠÐÐ
­ØÚÐ-‹ÐÐ
­ÙÚÐ-‚ÐÐ
­ÚÚÐ-ŒÐÐ
­ÛÚÐ-‡ÐÐ
­ÜÚÐ-ˆÐÐ
­ÝÚÐ-ÐÐ
­ÞÚÐ-ŽÐÐ
­ßÚÐ-ÐÐ
­àÚÐ-ÐÐ
­áÚÐ-‘ÐÐ
­âÚÐ-’ÐÐ
­ãÚÐ-“ÐÐ
­äÚÐ-”ÐÐ
­åÚÐ-•ÐÐ
­æÚÐ-…ÐÐ
­çÚÐ-‡ÐÐ
­èÚÐ-ˆÐÐ
­éÚÐ-–ÐÐ
­êÚÐ-—ÐÐ
­ëÚÐ-†ÐÐ
­ìÚÐ-˜ÐÐ
­íÚÐ-™ÐÐ
­mÚÐ-šÐÐ
­ðÚÐ-›ÐÐ
­ñÚÐ-œÐÐ
­òÚÐ-ÐÐ
­óÚÐ-žÐÐ
­ôÚÐ-ŸÐÐ
­õÚÐ- ÐÐ
­eÚÐ-¡ÐÐ
­öÚÐ-~ÐÐ
­÷ÚÐ-‡ÐÐ
­øÚÐ-ˆÐÐ
­fÚÐ-¡ÐÐ
­ùÚÐ-¢ÐÐ
­úÚÐ-£ÐÐ
­ûÚÐ-¤ÐÐ
­üÚÐ-‘ÐÐ
­ýÚÐ-’ÐÐ
­þÚÐ-“ÐÐ
­ÿÚÐ-…ÐÐ
­ÚÐ-‡ÐÐ
­ÚÐ-ˆÐÐ
­ÚÐ-¥ÐÐ
­ÚÐ-¦ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÐÐ
­ÚÐ-§ÐÐ
­ÚÐ-¨ÐÐ
­ÚÐ-©ÐÐ
­	ÚÐ-ªÐÐ
­
+ÚÐ-«ÐÐ
­ÚÐ-¨ÐÐ
­ÚÐ-©ÐÐ
­
ÚÐ-ªÐÐ
­ÚÐ-¬ÐÐ
­qÚÐ-¨ÐÐ
­rÚÐ-©ÐÐ
­*ÚÐ-­ÐÐ
­,ÚÐ-®ÐÐ
­-ÚÐ-¨ÐÐ
­.ÚÐ-©ÐÐ
­/ÚÐ-ªÐÐ
­0ÚÐ-¯ÐÐ
­1ÚÐ-¨ÐÐ
­2ÚÐ-©ÐÐ
­3ÚÐ-ªÐÐ
­4ÚÐ-°ÐÐ
­5ÚÐ-ÐÐ
­6ÚÐ-±ÐÐ
­7ÚÐ-²ÐÐ
­8ÚÐ-³ÐÐ
­9ÚÐ-´ÐÐ
­:ÚÐ-ÐÐ
­;ÚÐ-ÐÐ
­uÚÐ-µÐÐ
­vÚÐ-ÐÐ
­<ÚÐ-¶ÐÐ
­=ÚÐ-ÐÐ
­@ÚÐ-ÐÐ
­AÚÐ-·ÐÐ
­BÚÐ-¸ÐÐ
­CÚÐ-ÐÐ
­DÚÐ-¹ÐÐ
­EÚÐ-ºÐÐ
­FÚÐ-»ÐÐ
­GÚÐ-¼ÐÐ
­HÚÐ-½ÐÐ
­IÚÐ-ÐÐ
­JÚÐ-¾ÐÐ
­KÚÐ-¿ÐÐ
­LÚÐ-ÀÐÐ
­MÚÐ-»ÐÐ
­NÚÐ-ÁÐÐ
­OÚÐ-½ÐÐ
­PÚÐ-ÐÐ
­QÚÐ-±ÐÐ
­RÚÐ-ÂÐÐ
­SÚÐ-´ÐÐ
­VÚÐ-ÐÐ
­WÚÐ-ÃÐÐ
­XÚÐ-ÄÐÐ
­YÚÐ-ÐÐ
­ZÚÐ-ÅÐÐ
­fÚÐ-ÆÐÇÈÐ	E
+ÐÐ
­ÚÐ-ÉÐÐ
­ÚÐ-ÊÐÐ
­ÚÐ-ËÐÐ
­ÚÐ-ÌÐÐ
­ÚÐ-ÍÐÐ
­
ÚÐ-ÎÐÐ
­ÚÐ-ÐÐ
­ÚÐ-ÏÐÐ
­ÚÐ-ÐÐÐ
­‚ÚÐ-ÑÐÐ
­oÚÐ-ÒÐÐ
­[ÚÐ-ÓÐÐ
­ÚÐ-ÔÐÐ
­!ÚÐ-ÕÐÐ
­ ÚÐ-ÖÐÐ
­bÚÐ-×ÐÐ
­sÚÐ-ÐÐ
­tÚÐ-ØÐÐ
­hÚÐ-ÐÐ
­iÚÐ-ÐÐ
­ÚÐ-ÌÐÐ
­ÚÐ-ÐÙ-ÚÐÛÜ-ÝÞßÐàá­
\ No newline at end of file