
(* 4x3 flyways 1 xbot - MoverStereotype Define, Assign, ReadDef *)
FUNCTION_BLOCK Example25_stereotypes
	(*linear motion to 60,60*)
	PMC_XYMotion1(PM_Controller := PM_Controller,Execute := Execute,cmdLB := 1,XbotID := 1,Mode := 0,Type_ := 0,PosX := 0.06,PosY := 0.06,EndVel := 0,MaxVel := 1,MaxAcc := 10);

	(*define an unladen, fast stereotype as movertype 0 stereotype 1*)
	cg_array3[0] := 0; cg_array3[1] := 0; cg_array3[2] := 0;
	payloadsize_array4[0] := 0; payloadsize_array4[1] := 0; payloadsize_array4[2] := 0; payloadsize_array4[3] := 0;
	PMC_MoverStereotype_Define1(PM_Controller := PM_Controller,PM_Controller := PM_Controller,Execute := PMC_XYMotion1.Done,MoverType := 0,StereotypeID := 1,PerformanceLevel := 3,Cg := cg_array3,PayloadWeight := 0,PayloadSize := payloadsize_array4,EmergencyStopDecel := 10);

	(*read movertype 0 stereotype 1*)
	PMC_MoverStereotype_ReadDef1(PM_Controller := PM_Controller,PM_Controller := PM_Controller,Execute := PMC_MoverStereotype_Define1.Done,MoverType := 0,StereotypeID := 1);

	(*assign movertype 0 stereotype 1 to xbot 1*)
	PMC_MoverStereotype_Assign1(PM_Controller := PM_Controller,PM_Controller := PM_Controller,Execute := PMC_MoverStereotype_ReadDef1.Valid,StereotypeID := 1,XbotID := 1,BufferAssign := 0);

	(*linear motion to 900,660*)
	PMC_XYMotion2(PM_Controller := PM_Controller,Execute := PMC_MoverStereotype_Assign1.Done,cmdLB := 5,XbotID := 1,Mode := 0,Type_ := 0,PosX := 0.9,PosY := 0.66,EndVel := 0,MaxVel := 2,MaxAcc := 20);

	(*define a laden slow stereotype as movertype 0 stereotype 2*)
	cg_array3[0] := 0; cg_array3[1] := 0; cg_array3[2] := 0.03;
	payloadsize_array4[0] := 0.12; payloadsize_array4[1] := -0.12; payloadsize_array4[2] := 0.12; payloadsize_array4[3] := -0.12;
	PMC_MoverStereotype_Define2(PM_Controller := PM_Controller,PM_Controller := PM_Controller,Execute := PMC_XYMotion2.Done,MoverType := 0,StereotypeID := 2,PerformanceLevel := 0,Cg := cg_array3,PayloadWeight := 0.5,PayloadSize := payloadsize_array4,EmergencyStopDecel := 10);

	(*read movertype 0 stereotype 2*)
	PMC_MoverStereotype_ReadDef2(PM_Controller := PM_Controller,PM_Controller := PM_Controller,Execute := PMC_MoverStereotype_Define2.Done,MoverType := 0,StereotypeID := 2);

	(*assign movertype 0 stereotype 2 to xbot 1*)
	PMC_MoverStereotype_Assign2(PM_Controller := PM_Controller,PM_Controller := PM_Controller,Execute := PMC_MoverStereotype_ReadDef2.Valid,StereotypeID := 2,XbotID := 1,BufferAssign := 0);

	(*linear motion to 60,60*)
	PMC_XYMotion3(PM_Controller := PM_Controller,Execute := PMC_MoverStereotype_Assign2.Done,cmdLB := 9,XbotID := 1,Mode := 0,Type_ := 0,PosX := 0.06,PosY := 0.06,EndVel := 0,MaxVel := 2,MaxAcc := 20);

	Done := PMC_XYMotion3.Done;
END_FUNCTION_BLOCK
