rev:添加烘箱桁架取货完成、放货完成判断烘箱列是否开门信号

This commit is contained in:
2025-09-22 17:02:58 +08:00
parent b82122366e
commit fa976d8037

View File

@@ -542,7 +542,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
}
if (startdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) startdevice.getDeviceDriver();
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 0) {
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 0 || hongXiangConveyorDeviceDriver.getError() > 0) {
notCreateInstMessage = "就绪任务未创建指令原因->取货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "光电无货或者脱机,无法生成指令!";
return false;
}
@@ -550,7 +550,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
if (nextdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) {
hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextdevice.getDeviceDriver();
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 1) {
if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 1 || hongXiangConveyorDeviceDriver.getError() > 0) {
notCreateInstMessage = "就绪任务未创建指令原因->放货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "光电有货或者脱机,无法生成指令!";
return false;
}
@@ -947,6 +947,18 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
// EXECUTOR.execute(() -> {
toCloseDoor(device);
// });
//判断关联的同一列烘箱设备是否都关门 都关门返回false有一个不关门就返回true
boolean isCloseDoor = this.judgeCloseDoor(inst2.getStart_device_code(), inst2.getNext_device_code());
//如果未关门结束
if (isCloseDoor) {
LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(device_code)
.content("下发行架取货完成不满足条件:同一列烘箱有开门")
.build();
logDto.setLog_level(4);
luceneExecuteLogService.deviceExecuteLog(logDto);
return;
}
int mode = hongXiangConveyorDeviceDriver.getMode();
int door = hongXiangConveyorDeviceDriver.getDoor();
int action = hongXiangConveyorDeviceDriver.getAction();
@@ -1109,6 +1121,18 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
// EXECUTOR.execute(() -> {
toCloseDoor(nextDevice);
// });
//判断关联的同一列烘箱设备是否都关门 都关门返回false有一个不关门就返回true
boolean isCloseDoor = this.judgeCloseDoor(inst2.getStart_device_code(), inst2.getNext_device_code());
//如果未关门结束
if (isCloseDoor) {
LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(device_code)
.content("下发行架放货完成不满足条件:同一列烘箱有开门")
.build();
logDto.setLog_level(4);
luceneExecuteLogService.deviceExecuteLog(logDto);
return;
}
if (StrUtil.isNotEmpty(taskDto.getOven_time())) {
//下发烘箱时间
int time = Integer.parseInt(taskDto.getOven_time());