Browse Source

嘉兴测试

jx-test
yuliang 5 months ago
parent
commit
ccebcba935
  1. 14
      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

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

@ -748,8 +748,10 @@ public abstract class AmrAgvItem extends ExecutorItem {
deviceTask.isGroupEnd = true;
// 最后一个规划任务为旋转时需要添加一个endDirection
if (rotationPlanTaskIdSet.size() > 0) {
if (deviceTask.operationType <= AmrAgvItem.COperationType.move) {
deviceTask.operationType = AmrAgvItem.COperationType.move;
deviceTask.pickMode = AmrAgvItem.CPickMode.normal;
}
deviceTask.endDirection = direction;
deviceTask.planTaskIdSet.addAll(rotationPlanTaskIdSet);
if (deviceTask.movePlanTaskId == null) {
@ -760,9 +762,19 @@ public abstract class AmrAgvItem extends ExecutorItem {
// 反向标记任务组
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--) {
AmrDeviceTask d = deviceTaskList.get(i);
if (d.isGroupEnd) {
if (d.isGroupEnd && d.operationType > AmrAgvItem.COperationType.move) {
lastIndex = i;
} else {
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.galaxis.rcs.amr.sendEntity.RcsTaskMessage;
import com.galaxis.rcs.connector.amr.AmrDeviceConnector;
import com.querydsl.core.util.StringUtils;
import com.yvan.logisticsModel.LogisticsRuntime;
import lombok.extern.slf4j.Slf4j;
import org.eclipse.paho.mqttv5.common.MqttException;
@ -88,6 +89,7 @@ public class AmrConnectorThread extends Thread {
taskMessage.ChargeDirection = currentTask.chargeDirection;
taskMessage.ChargeLocation = currentTask.chargeLocation;
taskMessage.EndDirection = currentTask.endDirection;
taskMessage.StorageRacksNo = currentTask.storageRacksNo;
try {
// 发送任务
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.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);
}
// 设备状态变化
if (sender instanceof PtrAgvItem) {
var ptr = (PtrAgvItem) sender;
if (sender instanceof AmrAgvItem) {
var ptr = (AmrAgvItem) sender;
FrontendMessagePushService.INSTANCE.pushDeviceStatus(this, sender.id, ptr.getState());
} else {
log.error("AGV事件类型 {} 仅支持 PtrAgvItem 类型的执行器", type);
log.error("AGV事件类型 {} 仅支持 AmrAgvItem 类型的执行器", type);
}
break;
}

Loading…
Cancel
Save