From a206dda817a9f9615db1fa52e3ac193af9ac4a92 Mon Sep 17 00:00:00 2001 From: wankeda <Administrator@DESKTOP-HAU3ST3> Date: 星期五, 11 四月 2025 10:27:24 +0800 Subject: [PATCH] 1 --- 代码管理/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGVJob/SendTaskAGV.cs | 43 ++++++++++++++++++++++--------------------- 1 files changed, 22 insertions(+), 21 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGVJob/SendTaskAGV.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGVJob/SendTaskAGV.cs" index 37cb8f7..ffe6c58 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGVJob/SendTaskAGV.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGVJob/SendTaskAGV.cs" @@ -191,24 +191,24 @@ try { // 璇诲彇浠诲姟浜や簰鍜岄噸缃氦浜掔殑鐘舵�� - int taskInteractive = agv.Communicator.Read<int>(taskInteractiveR); // 1琛ㄧず鏀跺埌 - int taskInteractiveW = agv.Communicator.Read<int>(taskInteractiveW1); // 0鍒濆/1涓嬪彂/2鍙栨秷/3鏇存敼 - int resetTaskInteractiveW = agv.Communicator.Read<int>(resetTaskW); - int resetTaskInteractiver = agv.Communicator.Read<int>(resetTaskInteractiveR); + int taskInteractive = agv.Communicator.Read<Int16>(taskInteractiveR); // 1琛ㄧず鏀跺埌 + int taskInteractiveW = agv.Communicator.Read<Int16>(taskInteractiveW1); // 0鍒濆/1涓嬪彂/2鍙栨秷/3鏇存敼 + int resetTaskInteractiveW = agv.Communicator.Read<Int16>(resetTaskW); + int resetTaskInteractiver = agv.Communicator.Read<Int16>(resetTaskInteractiveR); // 澶勭悊浠诲姟浜や簰W鍜岄噸缃氦浜扺涓嶄负0鐨勬儏鍐� if (isTrue1 && name1 == agv.DeviceName) { if (taskInteractiveW != 0 || resetTaskInteractiveW != 0 || taskInteractive != 0) { - agv.Communicator.Write(resetTaskW, 1); + agv.Communicator.Write<UInt16>(resetTaskW, 1); Task.Delay(2000).Wait(); - resetTaskInteractiveW = agv.Communicator.Read<int>(resetTaskW); + resetTaskInteractiveW = agv.Communicator.Read<Int16>(resetTaskW); if (resetTaskInteractiveW == 1) { - agv.Communicator.Write(resetTaskW, 0); - agv.Communicator.Write(taskInteractiveW1, 0); + agv.Communicator.Write<UInt16>(resetTaskW, 0); + agv.Communicator.Write<UInt16>(taskInteractiveW1, 0); Task.Delay(2000).Wait(); } return; @@ -220,14 +220,14 @@ // 濡傛灉閲嶇疆浜や簰R涓�1锛屽垯閲嶇疆浠诲姟浜や簰W if (resetTaskInteractiver == 1) { - agv.Communicator.Write(taskInteractiveW1, 0); + agv.Communicator.Write<UInt16>(taskInteractiveW1, 0); for (int i = 0; i < 5; i++) { Task.Delay(300).Wait(); // 鐢═ask.Delay浠f浛Thread.Sleep锛屼互閬垮厤绾跨▼闃诲 - int agvNumber = agv.Communicator.Read<int>(taskInteractiveW1); + int agvNumber = agv.Communicator.Read<Int16>(taskInteractiveW1); if (agvNumber != 0) { - agv.Communicator.Write(taskInteractiveW1, 0); + agv.Communicator.Write<UInt16>(taskInteractiveW1, 0); } else { @@ -251,7 +251,8 @@ // 妫�鏌ヤ换鍔D鏄惁鍐欏叆姝g‘ string taskId = agv.Communicator.Read<string>(taskID); - if (taskId != agvTask.TaskNum.ToString()) + string numberPart = taskId.Split('-')[1]; + if (numberPart != agvTask.TaskNum.ToString()) { throw new Exception($"缁橝GV鍐欏叆浠诲姟澶辫触,浠诲姟鍙穥agvTask.TaskNum}"); } @@ -260,19 +261,19 @@ if (string.IsNullOrEmpty(rel)) { // 鍐欏叆浠诲姟纭淇″彿1 - agv.Communicator.Write(taskInteractiveW1, 1); + agv.Communicator.Write<UInt16>(taskInteractiveW1, 1); Task.Delay(1000).Wait(); // 璇诲彇AGV鐨勭‘璁や俊鍙� - int readTask1Ok = agv.Communicator.Read<int>(taskInteractiveR); + int readTask1Ok = agv.Communicator.Read<Int16>(taskInteractiveR); if (readTask1Ok == 1) { // 鍐欏叆WCS鐨勭‘璁や俊鍙�0 - agv.Communicator.Write(taskInteractiveW1, 0); + agv.Communicator.Write<UInt16>(taskInteractiveW1, 0); Task.Delay(2000).Wait(); // 鍐嶆璇诲彇AGV鐨勭‘璁や俊鍙� - int readTask0Ok = agv.Communicator.Read<int>(taskInteractiveR); + int readTask0Ok = agv.Communicator.Read<Int16>(taskInteractiveR); if (readTask0Ok == 0) { // 鏇存柊浠诲姟鐘舵�佸苟淇濆瓨 @@ -292,7 +293,7 @@ else if (readTask1Ok == 11) { // 澶勭悊浠诲姟寮傚父鎯呭喌 - agv.Communicator.Write(taskInteractiveW1, 0); + agv.Communicator.Write<UInt16>(taskInteractiveW1, 0); Task.Delay(2000).Wait(); int readTask0Error = agv.Communicator.Read<int>(taskInteractiveR); @@ -342,7 +343,7 @@ public static string TaskWrite(AGV client, Dt_Task agvTask, AGVJobEnum jobEnum) { List<byte> sendData = new List<byte>(); - string tmp = agvTask.TaskNum.ToString(); + string tmp = "KH-" + agvTask.TaskNum.ToString(); List<byte> taskID = Encoding.Default.GetBytes(tmp).ToList();//浠诲姟ID taskID.Insert(0, 30); taskID.Insert(1, Convert.ToByte(tmp.Length)); @@ -377,11 +378,11 @@ Array.Reverse(taskType); sendData.AddRange(taskType); - List<byte> containerType = Encoding.Default.GetBytes(agvTask.PalletCode).ToList(); + List<byte> containerType = Encoding.Default.GetBytes(agvTask.Barcode).ToList(); containerType.Insert(0, 30); - containerType.Insert(1, Convert.ToByte(agvTask.PalletCode.Length)); + containerType.Insert(1, Convert.ToByte(agvTask.Barcode.Length)); - for (int i = 0; i < 30 - agvTask.PalletCode.Length; i++) + for (int i = 0; i < 30 - agvTask.Barcode.Length; i++) { containerType.Add(0); } -- Gitblit v1.9.3