fix:普通废箔任务改造调试、自动巡航费箔任务开发调试

This commit is contained in:
ls
2025-01-11 16:06:22 +08:00
parent d055944be4
commit becdab82f9
14 changed files with 228 additions and 62 deletions

View File

@@ -595,11 +595,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
.build();
logDto.setLog_level(4);
luceneExecuteLogService.deviceExecuteLog(logDto);
try {
manipulatorAgvStationDeviceDriver.writing(3);
} catch (Exception e) {
e.printStackTrace();
}
} else {
log.info("设备{},动作信号{} ,不满足取货条件,指令号{}", manipulatorAgvStationDeviceDriver.getDeviceCode(), manipulatorAgvStationDeviceDriver.getAction(), ikey);
LuceneLogDto logDto = LuceneLogDto.builder()
@@ -1156,7 +1152,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
//收卷锟行架
if (linkDevice.getDeviceDriver() instanceof RollUpRollerManipulatorDeviceDriver) {
rollUpRollerManipulatorDeviceDriver = (RollUpRollerManipulatorDeviceDriver) linkDevice.getDeviceDriver();
if ((manipulatorAgvStationDeviceDriver.getAction() == 6 && rollUpRollerManipulatorDeviceDriver.getMode() != 3 && rollUpRollerManipulatorDeviceDriver.getError() == 0 && rollUpRollerManipulatorDeviceDriver.getTask() == 0 && rollUpRollerManipulatorDeviceDriver.getError2() == 0 && manipulatorAgvStationDeviceDriver.getMove() == 1)) {
if ((manipulatorAgvStationDeviceDriver.getAction() == 6 && rollUpRollerManipulatorDeviceDriver.getMode() != 3 && rollUpRollerManipulatorDeviceDriver.getError() == 0 && rollUpRollerManipulatorDeviceDriver.getTask() == 0 && rollUpRollerManipulatorDeviceDriver.getError2() == 0 && manipulatorAgvStationDeviceDriver.getMove() == 0)) {
// 查询缓存架点位状态
JSONObject param = new JSONObject();
param.put("device_code", device_code);
@@ -1278,31 +1274,14 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic
String start_device_code2 = inst.getStart_device_code2();
String next_device_code2 = inst.getNext_device_code2();
//AGV取完收卷辊请求离开
if (ObjectUtil.isNotEmpty(start_device_code) && StrUtil.equals(device_code, next_device_code2)) {
if (ObjectUtil.isNotEmpty(start_device_code) && (StrUtil.equals(device_code, start_device_code) || StrUtil.equals(device_code, start_device_code2))) {
if (device.getDeviceDriver() instanceof ManipulatorAgvStationDeviceDriver) {
manipulatorAgvStationDeviceDriver = (ManipulatorAgvStationDeviceDriver) device.getDeviceDriver();
try {
manipulatorAgvStationDeviceDriver.writing(7);
manipulatorAgvStationDeviceDriver.writing(3);
} catch (Exception e) {
e.printStackTrace();
}
if (manipulatorAgvStationDeviceDriver.getAction() == 1) {
data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0, 0, 0);
LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(this.getDeviceCode())
.content("agvphase:" + phase + "反馈:" + data)
.build();
logDto.setLog_level(4);
luceneExecuteLogService.deviceExecuteLog(logDto);
} else {
message = "设备号:" + device_code + ",动作信号:" + manipulatorAgvStationDeviceDriver.getAction() + "mode信号:" + manipulatorAgvStationDeviceDriver.getMode() + "光电信号:" + manipulatorAgvStationDeviceDriver.getMove() + ",指令号:" + ikey + "不满足取货条件";
LuceneLogDto logDto = LuceneLogDto.builder()
.device_code(manipulatorAgvStationDeviceDriver.getDeviceCode())
.content(manipulatorAgvStationDeviceDriver.getDevice_code() + "动作信号不为1")
.build();
logDto.setLog_level(4);
luceneExecuteLogService.deviceExecuteLog(logDto);
}
}
}

View File

@@ -1061,15 +1061,15 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
String move = "";
String action = "";
String walk_y = "";
if (this.getMode() == 0) {
mode = LangProcess.msg("universal_off-line");
} else if (this.getMode() == 1) {
mode = LangProcess.msg("universal_stand-alone");
} else if (this.getMode() == 2) {
mode = LangProcess.msg("universal_standby");
} else if (this.getMode() == 3) {
mode = LangProcess.msg("universal_operation");
}
if (this.getMode() == 0) {
mode = LangProcess.msg("universal_off-line");
} else if (this.getMode() == 1) {
mode = LangProcess.msg("universal_stand-alone");
} else if (this.getMode() == 2) {
mode = LangProcess.msg("universal_standby");
} else if (this.getMode() == 3) {
mode = LangProcess.msg("universal_operation");
}
if (this.getMove() == 0) {
move = LangProcess.msg("universal_no");
@@ -1132,7 +1132,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
this.requireSucess = true;
}
if (HXDJ4Device.getDeviceDriver() instanceof ManipulatorAgvStationDeviceDriver) {
manipulatorAgvStationDeviceDriver = (ManipulatorAgvStationDeviceDriver) device.getDeviceDriver();
manipulatorAgvStationDeviceDriver = (ManipulatorAgvStationDeviceDriver) HXDJ4Device.getDeviceDriver();
if (StrUtil.equals(requireActionSucess, "0")) {
manipulatorAgvStationDeviceDriver.setOvenGantryTask(false);
} else if (StrUtil.equals(requireActionSucess, "1")) {

View File

@@ -21,6 +21,8 @@ import org.nl.acs.device_driver.FeedLmsRealFailed;
import org.nl.acs.device_driver.RouteableDeviceDriver;
import org.nl.acs.device_driver.driver.AbstractOpcDeviceDriver;
import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
import org.nl.acs.device_driver.two_conveyor.hongxiang_device.HongXiangConveyorDeviceDriver;
import org.nl.acs.device_driver.two_conveyor.pipe_core_rack_cachebit.PipeCoreRackCachebitDeviceDriver;
import org.nl.acs.enums.PointErrorTypeEnum;
import org.nl.acs.ext.wms.service.AcsToWmsService;
import org.nl.acs.ext.wms.service.impl.AcsToWmsServiceImpl;
@@ -540,6 +542,7 @@ public class PipeCoreRackManipulatorDeviceDriver extends AbstractOpcDeviceDriver
if (ObjectUtil.isEmpty(putDeviceCodeList)) {
putDeviceCodeList = this.getExtraDeviceCodes("put_device_code");
}
PipeCoreRackCachebitDeviceDriver pipeCoreRackCachebitDeviceDriver;
//找终点为入库输送线工位任务类型为行架的任务
for (int i = 0; i < getDeviceCodeList.size(); i++) {
String startDeviceCode = getDeviceCodeList.get(i);
@@ -569,6 +572,14 @@ public class PipeCoreRackManipulatorDeviceDriver extends AbstractOpcDeviceDriver
throw new BadRequestException("设备:" + nextDevice.getDevice_code() + "未设置电气调度号!");
}
if (nextDevice.getDeviceDriver() instanceof PipeCoreRackCachebitDeviceDriver) {
pipeCoreRackCachebitDeviceDriver = (PipeCoreRackCachebitDeviceDriver) nextDevice.getDeviceDriver();
if (pipeCoreRackCachebitDeviceDriver.getMode() == 1 ) {
notCreateInstMessage = "缓存位已经放满 move "+ pipeCoreRackCachebitDeviceDriver.getMove();
return false;
}
}
Map<String, Object> map1 = new HashMap<>();
Map<String, Object> map2 = new HashMap<>();
Map<String, Object> map3 = new HashMap<>();
@@ -587,6 +598,7 @@ public class PipeCoreRackManipulatorDeviceDriver extends AbstractOpcDeviceDriver
}
} else {
TaskDto taskDto = taskserver.findByStartCodeAndReady(startDeviceCode);
if (ObjectUtil.isNotEmpty(taskDto) && TaskTypeEnum.Truss_Task.getIndex().equals(taskDto.getTask_type())) {
String start_device_code = taskDto.getStart_device_code();
String next_device_code = taskDto.getNext_device_code();
@@ -605,6 +617,14 @@ public class PipeCoreRackManipulatorDeviceDriver extends AbstractOpcDeviceDriver
throw new BadRequestException("设备:" + nextDevice.getDevice_code() + "未设置电气调度号!");
}
if (nextDevice.getDeviceDriver() instanceof PipeCoreRackCachebitDeviceDriver) {
pipeCoreRackCachebitDeviceDriver = (PipeCoreRackCachebitDeviceDriver) nextDevice.getDeviceDriver();
if (pipeCoreRackCachebitDeviceDriver.getMode() == 1 ) {
notCreateInstMessage = "缓存位已经放满 move "+ pipeCoreRackCachebitDeviceDriver.getMove();
return false;
}
}
String interactionJson = taskDto.getInteraction_json();
InteractionJsonDTO interactionJsonDTO = null;
if (StrUtil.isNotEmpty(interactionJson)) {

View File

@@ -539,8 +539,8 @@ public class RollUpRollerManipulatorDeviceDriver extends AbstractOpcDeviceDriver
if (startDevice.getDeviceDriver() instanceof ManipulatorAgvStationDeviceDriver) {
manipulatorAgvStationDeviceDriver = (ManipulatorAgvStationDeviceDriver) startDevice.getDeviceDriver();
if (manipulatorAgvStationDeviceDriver.getMove() != 0) {
notCreateInstMessage = "手动创建指令未下发电气信号原因->放货位-收卷锟对接位:" + manipulatorAgvStationDeviceDriver.getMove() + "货,无法下发指令!任务号:" + instruction.getInstruction_code();
if (manipulatorAgvStationDeviceDriver.getMove() == 0) {
notCreateInstMessage = "手动创建指令未下发电气信号原因->放货位-收卷锟对接位:" + manipulatorAgvStationDeviceDriver.getMove() + "货,无法下发指令!任务号:" + instruction.getInstruction_code();
return false;
}
}
@@ -611,8 +611,8 @@ public class RollUpRollerManipulatorDeviceDriver extends AbstractOpcDeviceDriver
if (startDevice.getDeviceDriver() instanceof ManipulatorAgvStationDeviceDriver) {
manipulatorAgvStationDeviceDriver = (ManipulatorAgvStationDeviceDriver) startDevice.getDeviceDriver();
if (manipulatorAgvStationDeviceDriver.getMove() != 0) {
notCreateInstMessage = "手动创建指令未下发电气信号原因->放货位-收卷锟对接位:" + manipulatorAgvStationDeviceDriver.getMove() + "货,无法下发指令!" ;
if (manipulatorAgvStationDeviceDriver.getMove() == 0) {
notCreateInstMessage = "手动创建指令未下发电气信号原因->放货位-收卷锟对接位:" + manipulatorAgvStationDeviceDriver.getMove() + "货,无法下发指令!" ;
return false;
}
}

View File

@@ -1716,14 +1716,14 @@ public class TaskServiceImpl extends CommonServiceImpl<TaskMapper, Task> impleme
JSONArray ja = new JSONArray();
ja.add(feed_jo);
//TODO 有需要根据上位系统反馈的信息再做进一步处理
CompletableFuture.runAsync(() -> {
acstowmsService.feedTaskStatus(ja);
// 异步更新任务状态
try {
} catch (Exception e) {
e.printStackTrace();
}
});
acstowmsService.feedTaskStatus(ja);
// CompletableFuture.runAsync(() -> {
// // 异步更新任务状态
// try {
// } catch (Exception e) {
// e.printStackTrace();
// }
// });
}
}