From 6428fad15dbe79e30a48ffc9aabe31e03a45426c Mon Sep 17 00:00:00 2001 From: patrick <patrick.xu@broconcentric.com> Date: 星期四, 05 十二月 2019 12:50:13 +0800 Subject: [PATCH] 1. 添加部分log信息 2. 修改部分机器人动作流程 3. 开放OperationConfig的InputData参数 --- src/A032.Process/AGVBindUnit.cs | 47 +++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 41 insertions(+), 6 deletions(-) diff --git a/src/A032.Process/AGVBindUnit.cs b/src/A032.Process/AGVBindUnit.cs index 507d8c8..5d843f3 100644 --- a/src/A032.Process/AGVBindUnit.cs +++ b/src/A032.Process/AGVBindUnit.cs @@ -182,8 +182,14 @@ [JsonIgnore] public bool IsEmptyTrayTaskAssigned { get; set; } - [Browsable(false)] - [JsonIgnore] + //[Browsable(false)] + //[JsonIgnore] + //public ManualResetEvent FullTrayFullHandle { get; set; } = new ManualResetEvent(false); + + //[Browsable(false)] + //[JsonIgnore] + //public ManualResetEvent FullTrayEmptyHandle { get; set; } = new ManualResetEvent(false); + public ManualResetEvent RobotIOHandle { get; set; } = new ManualResetEvent(false); public AGVBindUnit() @@ -191,6 +197,35 @@ //TaskList.CollectionChanged += TaskList_CollectionChanged; } + object agvStatusLock = new object(); + public bool SetAGVStatus(TaskStatus status) + { + lock (agvStatusLock) + { + switch (status) + { + case TaskStatus.Available: + break; + case TaskStatus.Running: + if (AGVStatus == TaskStatus.Available) + { + AGVStatus = status; + return true; + } + else + { + return false; + } + case TaskStatus.Warning: + break; + default: + break; + } + + AGVStatus = status; + return true; + } + } //private void TaskList_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) //{ // if (e.Action == System.Collections.Specialized.NotifyCollectionChangedAction.Add) @@ -288,9 +323,9 @@ { ProcessConfig config = scope.Resolve<ProcessConfig>(); - config.RobotConfigCollection.ForEach(plc => + config.RobotConfigCollection.ForEach(robot => { - _hash[plc.ID] = plc.Name; + _hash[robot.ID] = robot.Name; }); } } @@ -304,9 +339,9 @@ { ProcessConfig config = scope.Resolve<ProcessConfig>(); - config.CameraConfigCollection.ForEach(plc => + config.CameraConfigCollection.ForEach(camera => { - _hash[plc.ID] = plc.Name; + _hash[camera.ID] = camera.Name; }); } } -- Gitblit v1.8.0