Browse Source

嘉兴测试

jx-test
yuliang 5 months ago
parent
commit
ccebcba935
  1. 18
      servo/src/main/java/com/galaxis/rcs/amr/AmrAgvItem.java
  2. 2
      servo/src/main/java/com/galaxis/rcs/amr/AmrConnectorThread.java
  3. 2
      servo/src/main/java/com/galaxis/rcs/connector/amr/fm600/Fm600Item.java
  4. 6
      servo/src/main/java/com/yvan/logisticsModel/LogisticsRuntime.java

18
servo/src/main/java/com/galaxis/rcs/amr/AmrAgvItem.java

@ -748,8 +748,10 @@ public abstract class AmrAgvItem extends ExecutorItem {
deviceTask.isGroupEnd = true; deviceTask.isGroupEnd = true;
// 最后一个规划任务为旋转时需要添加一个endDirection // 最后一个规划任务为旋转时需要添加一个endDirection
if (rotationPlanTaskIdSet.size() > 0) { if (rotationPlanTaskIdSet.size() > 0) {
deviceTask.operationType = AmrAgvItem.COperationType.move; if (deviceTask.operationType <= AmrAgvItem.COperationType.move) {
deviceTask.pickMode = AmrAgvItem.CPickMode.normal; deviceTask.operationType = AmrAgvItem.COperationType.move;
deviceTask.pickMode = AmrAgvItem.CPickMode.normal;
}
deviceTask.endDirection = direction; deviceTask.endDirection = direction;
deviceTask.planTaskIdSet.addAll(rotationPlanTaskIdSet); deviceTask.planTaskIdSet.addAll(rotationPlanTaskIdSet);
if (deviceTask.movePlanTaskId == null) { if (deviceTask.movePlanTaskId == null) {
@ -760,9 +762,19 @@ public abstract class AmrAgvItem extends ExecutorItem {
// 反向标记任务组 // 反向标记任务组
int lastIndex = deviceTaskList.size() - 1; int lastIndex = deviceTaskList.size() - 1;
for (int i = deviceTaskList.size() - 1; i >= 0; i--) {
AmrDeviceTask d = deviceTaskList.get(i);
if (d.operationType > 0) {
lastIndex = i;
break;
}
}
for (int i = deviceTaskList.size() - 1; i >= 0; i--) { for (int i = deviceTaskList.size() - 1; i >= 0; i--) {
AmrDeviceTask d = deviceTaskList.get(i); AmrDeviceTask d = deviceTaskList.get(i);
if (d.isGroupEnd) { if (d.isGroupEnd && d.operationType > AmrAgvItem.COperationType.move) {
lastIndex = i; lastIndex = i;
} else { } else {
d.operationType = deviceTaskList.get(lastIndex).operationType; d.operationType = deviceTaskList.get(lastIndex).operationType;

2
servo/src/main/java/com/galaxis/rcs/amr/AmrConnectorThread.java

@ -3,6 +3,7 @@ package com.galaxis.rcs.amr;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.galaxis.rcs.amr.sendEntity.RcsTaskMessage; import com.galaxis.rcs.amr.sendEntity.RcsTaskMessage;
import com.galaxis.rcs.connector.amr.AmrDeviceConnector; import com.galaxis.rcs.connector.amr.AmrDeviceConnector;
import com.querydsl.core.util.StringUtils;
import com.yvan.logisticsModel.LogisticsRuntime; import com.yvan.logisticsModel.LogisticsRuntime;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.mqttv5.common.MqttException; import org.eclipse.paho.mqttv5.common.MqttException;
@ -88,6 +89,7 @@ public class AmrConnectorThread extends Thread {
taskMessage.ChargeDirection = currentTask.chargeDirection; taskMessage.ChargeDirection = currentTask.chargeDirection;
taskMessage.ChargeLocation = currentTask.chargeLocation; taskMessage.ChargeLocation = currentTask.chargeLocation;
taskMessage.EndDirection = currentTask.endDirection; taskMessage.EndDirection = currentTask.endDirection;
taskMessage.StorageRacksNo = currentTask.storageRacksNo;
try { try {
// 发送任务 // 发送任务
this.__currentTaskSeqNo = taskMessage.SeqNo; this.__currentTaskSeqNo = taskMessage.SeqNo;

2
servo/src/main/java/com/galaxis/rcs/connector/amr/fm600/Fm600Item.java

@ -43,6 +43,8 @@ public class Fm600Item extends AmrAgvItem {
d.operationType = COperationType.unload; d.operationType = COperationType.unload;
} }
d.pickMode = CPickMode.normal; d.pickMode = CPickMode.normal;
// 临时处理方案
d.storageRacksNo = "any";
} }
} }

6
servo/src/main/java/com/yvan/logisticsModel/LogisticsRuntime.java

@ -202,12 +202,12 @@ public class LogisticsRuntime {
FrontendMessagePushService.INSTANCE.pushDeviceAlive(this, sender.id, sender.getT(), true); FrontendMessagePushService.INSTANCE.pushDeviceAlive(this, sender.id, sender.getT(), true);
} }
// 设备状态变化 // 设备状态变化
if (sender instanceof PtrAgvItem) { if (sender instanceof AmrAgvItem) {
var ptr = (PtrAgvItem) sender; var ptr = (AmrAgvItem) sender;
FrontendMessagePushService.INSTANCE.pushDeviceStatus(this, sender.id, ptr.getState()); FrontendMessagePushService.INSTANCE.pushDeviceStatus(this, sender.id, ptr.getState());
} else { } else {
log.error("AGV事件类型 {} 仅支持 PtrAgvItem 类型的执行器", type); log.error("AGV事件类型 {} 仅支持 AmrAgvItem 类型的执行器", type);
} }
break; break;
} }

Loading…
Cancel
Save