void ReleaseTimer_OnElapsed(Experior.Core.Timer sender) { ReleaseTimer.Reset(); if ((this.NextRouteStatus.Available == RouteStatuses.Available) && (LineReleasePhotocell.PhotocellStatus == PhotocellState.Blocked || LineReleasePhotocell.PhotocellStatus == PhotocellState.LoadBlocked)) { this.RouteAvailable = RouteStatuses.Available; StartReleaseTimer(); } }
public Controller() : base("Qubiqa.PGGantry") { var tcar1 = Experior.Core.Assemblies.Assembly.Items["Transfer car 1"] as TransferCar; if (tcar1 != null) { transferCarController1 = new TransferCarController(tcar1); } var tcar2 = Experior.Core.Assemblies.Assembly.Items["Transfer car 2"] as TransferCar; if (tcar2 != null) { transferCarController2 = new TransferCarController(tcar2); } Experior.Catalog.Logistic.Track.DiverterMerger InFeed1DMUnit = Experior.Core.Assemblies.Assembly.Items["InFeed1-DMUnit"] as Experior.Catalog.Logistic.Track.DiverterMerger; InFeed1DMUnit.OnEnter += InFeed1DMUnit_OnEnter; Experior.Catalog.Logistic.Track.DiverterMerger InFeed2DMUnit = Experior.Core.Assemblies.Assembly.Items["InFeed2-DMUnit"] as Experior.Catalog.Logistic.Track.DiverterMerger; InFeed2DMUnit.OnEnter += InFeed2DMUnit_OnEnter; Experior.Catalog.Logistic.Track.DiverterMerger OutFeedDMUnit = Experior.Core.Assemblies.Assembly.Items["OutFeed-DMUnit"] as Experior.Catalog.Logistic.Track.DiverterMerger; OutFeedDMUnit.OnEnter += OutFeedDMUnit_OnEnter; //Experior.Catalog.Logistic.Track.DiverterMerger SP11 = Experior.Core.Assemblies.Assembly.Items["SP11"] as Experior.Catalog.Logistic.Track.DiverterMerger; //SP11.OnEnter += SP_OnEnter; //Experior.Catalog.Logistic.Track.DiverterMerger SP12 = Experior.Core.Assemblies.Assembly.Items["SP12"] as Experior.Catalog.Logistic.Track.DiverterMerger; //SP12.OnEnter += SP_OnEnter; //Experior.Catalog.Logistic.Track.DiverterMerger SP21 = Experior.Core.Assemblies.Assembly.Items["SP21"] as Experior.Catalog.Logistic.Track.DiverterMerger; //SP21.OnEnter += SP_OnEnter; //Experior.Catalog.Logistic.Track.DiverterMerger SP22 = Experior.Core.Assemblies.Assembly.Items["SP22"] as Experior.Catalog.Logistic.Track.DiverterMerger; //SP22.OnEnter += SP_OnEnter; //ActionPoint.Get("SP11").OnEnter += new ActionPoint.EnterEvent((ActionPoint sender, Load load) => { load.MoveTo("PLA1SPL12"); load.Release(); }); //ActionPoint.Get("SP12").OnEnter += new ActionPoint.EnterEvent((ActionPoint sender, Load load) => { load.MoveTo("PLA1SPL22"); load.Release(); }); //ActionPoint.Get("SP21").OnEnter += new ActionPoint.EnterEvent((ActionPoint sender, Load load) => { load.MoveTo("PLA2SPL12"); load.Release(); }); //ActionPoint.Get("SP22").OnEnter += new ActionPoint.EnterEvent((ActionPoint sender, Load load) => { load.MoveTo("PLA2SPL22"); load.Release(); }); //Stores the arrived pallet in Aisle 1 ActionPoint.Items["TCar1-InFeed"].OnEnter += TCar1InFeed_AP_OnEnter; //Stores the arrived pallet Aisle 2 ActionPoint.Items["TCar2-InFeed"].OnEnter += TCar2InFeed_AP_OnEnter; //Returns pallet to the inventory and updates its status ActionPoint.Items["OutFeed"].OnEnter += OutFeed_AP_OnEnter; RefreshCycle = new Core.Timer(5.0f); RefreshCycle.AutoReset = true; RefreshCycle.OnElapsed += RefreshCycle_OnElapsed; rndFeed = new Random(); Reset(); }
private void Process_OnElaspsed(Experior.Core.Timer timer) { delayTimer.OnElapsed -= Process_OnElaspsed; if (currentOperation == Operation.ChangeStatusToAvailable) { ThisRouteStatus.Available = RouteStatuses.Available; } if (currentOperation == Operation.PreviousLoadArrived) { ReleasePreviousLoad(); } if (currentOperation == Operation.PhotocellBlocked) { StackLoads(); if (NextRouteStatus.Available == RouteStatuses.Available) { ThisRouteStatus.Available = RouteStatuses.Request; loadActive = false; ReleasePreviousLoad(); } } if (currentOperation == Operation.PhotocellClear) { ThisRouteStatus.Available = RouteStatuses.Request; loadActive = false; ReleasePreviousLoad(); } if (currentOperation == Operation.NextRouteStatusChanged) { if (NextRouteStatus.Available == RouteStatuses.Available || NextRouteStatus.Available == RouteStatuses.Request) { Motor = MotorStatus.Running; ThisRouteStatus.Available = RouteStatuses.Request; loadActive = false; ReleasePreviousLoad(); } } }
void LowerLift_OnElapsed(Experior.Core.Timer sender) { delayTimer.OnElapsed -= LowerLift_OnElapsed; LowerLift(); }