From d6335a2f0540388ab1844fc42d1f770b26c85b6f Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 01 八月 2023 13:27:11 +0800
Subject: [PATCH] 将行走节点添加到每一步移动命令中
---
src/main/java/com/zy/asrs/utils/Utils.java | 23 +++++++++++++++--------
1 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index d862cba..041ec0a 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -23,8 +23,10 @@
import com.zy.core.model.Task;
import com.zy.core.model.command.ShuttleAssignCommand;
import com.zy.core.model.command.ShuttleCommand;
+import com.zy.core.model.protocol.NyShuttleProtocol;
import com.zy.core.model.protocol.ShuttleProtocol;
import com.zy.core.properties.SlaveProperties;
+import com.zy.core.thread.NyShuttleThread;
import com.zy.core.thread.ShuttleThread;
import java.text.DecimalFormat;
@@ -420,24 +422,24 @@
}
//鑾峰彇绌挎杞︽墍鍦ㄨ妭鐐逛綅缃�
- ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId());
+ NyShuttleThread shuttleThread = (NyShuttleThread) SlaveConnection.get(SlaveType.Shuttle, slave.getId());
if (shuttleThread == null) {
continue;
}
- ShuttleProtocol shuttleProtocol = shuttleThread.getShuttleProtocol();
+ NyShuttleProtocol shuttleProtocol = shuttleThread.getShuttleProtocol();
if (shuttleProtocol == null) {
continue;
}
- if (shuttleProtocol.getLocNo() == null) {
+ if (shuttleProtocol.getCurrentLocNo() == null) {
continue;
}
- if (lev != Utils.getLev(shuttleProtocol.getLocNo())) {
+ if (lev != Utils.getLev(shuttleProtocol.getCurrentLocNo())) {
continue;//妤煎眰涓嶅悓
}
- int[] xyPosition = NavigatePositionConvert.positionToXY(shuttleProtocol.getLocNo());//閫氳繃搴撲綅鍙疯幏鍙杧y鍧愭爣
+ int[] xyPosition = NavigatePositionConvert.positionToXY(shuttleProtocol.getCurrentLocNo());//閫氳繃搴撲綅鍙疯幏鍙杧y鍧愭爣
list.add(xyPosition);
}
return list;
@@ -445,7 +447,7 @@
//妫�娴嬬┛姊溅琛岃蛋璺緞锛屾槸鍚﹀瓨鍦ㄥ叾浠栧皬杞︼紝濡傛湁鍏朵粬灏忚溅鍒欒繘琛岃皟绂�
public static boolean checkShuttlePath(List<NavigateNode> nodes, Integer shuttleId) {
- boolean flag = false;
+ boolean flag = false;
int shuttleX = -1;
int shuttleY = -1;
int shuttleZ = -1;
@@ -504,6 +506,11 @@
if (currentShuttleThread == null) {
//娌℃壘鍒板皬杞�
return false;
+ }
+
+ ShuttleProtocol shuttleProtocol = currentShuttleThread.getShuttleProtocol();
+ if (!shuttleProtocol.isIdle()) {
+ return false;//琚皟搴︾殑灏忚溅澶勪簬宸ヤ綔鐘舵�侊紝绂佹瑙﹀彂閬胯浠诲姟
}
//鎼滅储涓�鏉℃病鏈夊皬杞︾殑绌哄贩閬擄紝骞惰皟搴﹀皬杞�
@@ -582,7 +589,7 @@
ShuttleAssignCommand assignCommand = new ShuttleAssignCommand();
assignCommand.setShuttleNo(shuttleProtocol.getShuttleNo());//鍥涘悜绌挎杞﹀彿
assignCommand.setTaskNo((short) commonService.getWorkNo(7));//浠诲姟鍙�
- assignCommand.setTaskMode(ShuttleTaskModeType.MOVE_LOC_NO.id.shortValue());//绉诲姩鍒扮洰鏍囧簱浣�
+ assignCommand.setTaskMode(ShuttleTaskModeType.AVOID.id.shortValue());//閬胯浠诲姟
assignCommand.setSourceLocNo(startLocNo);//婧愬簱浣�
//鍒嗛厤鐩爣搴撲綅
@@ -596,7 +603,7 @@
return null;
}
- assignCommand.setCommands(commands);
+// assignCommand.setCommands(commands);
return assignCommand;
}
return null;
--
Gitblit v1.9.1