From 398148cf7a3f35accdbdf324c1507aacd41af445 Mon Sep 17 00:00:00 2001 From: "USER-20220102CG\\noblelift" <546428999@qq.com> Date: Fri, 18 Aug 2023 11:09:09 +0800 Subject: [PATCH 1/3] =?UTF-8?q?rev=20=E5=A2=9E=E5=8A=A0agv=E6=9C=AA?= =?UTF-8?q?=E5=88=B0=E4=BD=8D=E4=B8=8D=E5=85=81=E8=AE=B8=E4=BA=BA=E5=B7=A5?= =?UTF-8?q?=E7=82=B9=E7=A1=AE=E8=AE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../agv/ndctwo/AgvNdcTwoDeviceDriver.java | 2 +- .../wms/service/impl/AcsToWmsServiceImpl.java | 8 +-- .../wms/service/impl/WmsToAcsServiceImpl.java | 55 +++++++++++++++---- 3 files changed, 49 insertions(+), 16 deletions(-) diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java index ae697c853..b0a3165fb 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java @@ -729,7 +729,7 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic } if (!ObjectUtil.isEmpty(data)) { - phase =0; + //phase =0; logServer.deviceExecuteLog(this.device_code, "", "", "agvphase:" + phase + "反馈:" + Bytes2HexString(data)); if (StrUtil.equals(inst.getAgv_system_type(), "2")) { TwoNDCSocketConnectionAutoRun.write(data); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java index f5e0c01c5..e0659ac70 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/AcsToWmsServiceImpl.java @@ -550,10 +550,10 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { String methods_url = addressDto.getMethods_url(); String url = wmsUrl + methods_url; // log.info("sendDeviceStatus - 请求参数 {}", param); -// HttpRequest -// .post(url) -// .body(param.toString()) -// .execute(); + HttpRequest + .post(url) + .body(param.toString()) + .execute(); // log.info("sendDeviceStatus - 返回参数 {}", response.body()); } } catch (Throwable ignored) { diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java index 0a4920ef7..c614956c7 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/ext/wms/service/impl/WmsToAcsServiceImpl.java @@ -883,18 +883,51 @@ public class WmsToAcsServiceImpl implements WmsToAcsService { String task_code = jsonObject.getString("task_code"); //1-允许取放; 2-允许离开 String option = jsonObject.getString("option"); - StandardOrdinarySiteDeviceDriver standardOrdinarySiteDeviceDriver; - Device device_k = deviceAppService.findDeviceByCode(device_code + "_K"); - Device device_m = deviceAppService.findDeviceByCode(device_code + "_M"); - if (device_k.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { - standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_k.getDeviceDriver(); - standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); - } - if (device_m.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { - standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_m.getDeviceDriver(); - standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); - } + Instruction inst = instructionService.findByTaskcode(task_code); + if(ObjectUtil.isEmpty(inst)){ + JSONObject jo = new JSONObject(); + jo.put("task_code",task_code); + jo.put("message","未找到对应任务"); + errArr.add(jo); + continue; + } else { + String carNo = inst.getCarno(); + if(ObjectUtil.isEmpty(carNo)) { + JSONObject jo = new JSONObject(); + jo.put("task_code", task_code); + jo.put("message", "未找到任务对应车号"); + errArr.add(jo); + continue; + } else { + Device device = deviceAppService.findDeviceByCode(carNo); + AgvNdcTwoDeviceDriver agvNdcTwoDeviceDriver; + if(device.getDeviceDriver() instanceof AgvNdcTwoDeviceDriver ){ + agvNdcTwoDeviceDriver = (AgvNdcTwoDeviceDriver)device.getDeviceDriver(); + int phase = agvNdcTwoDeviceDriver.getPhase(); + if(phase == 0x03 || phase == 0x05 || phase == 0x08) + { + StandardOrdinarySiteDeviceDriver standardOrdinarySiteDeviceDriver; + Device device_k = deviceAppService.findDeviceByCode(device_code + "_K"); + Device device_m = deviceAppService.findDeviceByCode(device_code + "_M"); + if (device_k.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { + standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_k.getDeviceDriver(); + standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); + } + if (device_m.getDeviceDriver() instanceof StandardOrdinarySiteDeviceDriver) { + standardOrdinarySiteDeviceDriver = (StandardOrdinarySiteDeviceDriver) device_m.getDeviceDriver(); + standardOrdinarySiteDeviceDriver.setOption(Integer.parseInt(option)); + } + } else { + JSONObject jo = new JSONObject(); + jo.put("task_code", task_code); + jo.put("message", "AGV未就绪无法设置"); + errArr.add(jo); + continue; + } + } + } + } } } JSONObject resultJson = new JSONObject(); From 36907a602a11928a1e6d4883e60ef6df31d5c4d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=B1=9F=E7=8E=AE?= Date: Fri, 18 Aug 2023 14:56:12 +0800 Subject: [PATCH 2/3] =?UTF-8?q?fix=20=E5=8F=8D=E9=A6=88=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java | 6 ++++++ .../basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java | 6 ++++++ .../device_status/DeviceStatusDeviceDriver.java | 3 +++ .../OvenGantryManipulatorDeviceDriver.java | 9 +++++++++ .../siemens_conveyor/SiemensConveyorDeviceDriver.java | 6 ++++++ .../SiemensConveyorCkkDeviceDriver.java | 6 ++++++ .../SiemensConveyorLabelingDeviceDriver.java | 6 ++++++ .../SiemensOneFloorAGVConveyorDeviceDriver.java | 6 ++++++ .../SlitTwoManipulatorDeviceDriver.java | 9 +++++++++ 9 files changed, 57 insertions(+) diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java index 571e07595..9a8b3668c 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java @@ -448,6 +448,9 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic param.put("device_code", this.device_code); param.put("error", error); param.put("error_msg", this.getError_message()); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "4"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } data = NDCAgvService.sendAgvOneModeInst(phase, index, 0); @@ -472,6 +475,9 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic JSONObject param = new JSONObject(); param.put("device_code", this.device_code); param.put("mode", status); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "4"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java index b0a3165fb..f829443f6 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java @@ -691,6 +691,9 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic param.put("device_code", this.device_code); param.put("error", error); param.put("error_msg", this.getError_message()); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "4"); + param.put("product_area", ParamService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } data = ndcAgvService.sendAgvTwoModeInst(phase, index, 0); @@ -715,6 +718,9 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic JSONObject param = new JSONObject(); param.put("device_code", this.device_code); param.put("mode", status); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "4"); + param.put("product_area", ParamService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/device_status/DeviceStatusDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/device_status/DeviceStatusDeviceDriver.java index 725422341..0ac1ab09d 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/device_status/DeviceStatusDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/device_status/DeviceStatusDeviceDriver.java @@ -123,6 +123,9 @@ public class DeviceStatusDeviceDriver extends AbstractOpcDeviceDriver implements param.put("device_code", this.device_id); param.put("error", alarm); param.put("error_msg", ErrorUtil.getDictDetail("ssx_error_type", alarm)); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "3"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } this.last_iserror = iserror; diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java index 4e332d911..6fd5c62f5 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java @@ -37,6 +37,8 @@ import org.nl.acs.route.service.RouteLineService; import org.nl.acs.task.service.TaskService; import org.nl.acs.task.service.dto.TaskDto; import org.nl.modules.common.exception.BadRequestException; +import org.nl.modules.system.service.ParamService; +import org.nl.modules.system.service.impl.ParamServiceImpl; import org.nl.modules.wql.util.SpringContextHolder; import org.openscada.opc.lib.da.Server; import org.springframework.beans.factory.annotation.Autowired; @@ -67,6 +69,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i DeviceAppService deviceAppService = SpringContextHolder.getBean(DeviceAppServiceImpl.class); @Autowired DeviceErrorLogService deviceErrorLogService = SpringContextHolder.getBean(DeviceErrorLogServiceImpl.class); + ParamService paramService = SpringContextHolder.getBean(ParamServiceImpl.class); //工作模式 int mode = 0; int last_mode = 0; @@ -180,6 +183,9 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i JSONObject param = new JSONObject(); param.put("device_code", this.device_code); param.put("mode", mode); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "2"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); if (mode == 2) { @@ -221,6 +227,9 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i param.put("device_code", this.device_code); param.put("error", error); param.put("error_msg", errorInfo); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "2"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } logServer.deviceItemValue(this.device_code, "error", String.valueOf(error)); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java index b6df3b53e..6b3b84f54 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java @@ -233,6 +233,9 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme JSONObject param = new JSONObject(); param.put("device_code", this.device_code); param.put("mode", mode); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "1"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } @@ -275,6 +278,9 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme param.put("device_code", this.device_code); param.put("error", error); param.put("error_msg", errorInfo); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "1"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java index b53882f36..a745b49aa 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java @@ -191,6 +191,9 @@ public class SiemensConveyorCkkDeviceDriver extends AbstractOpcDeviceDriver impl JSONObject param = new JSONObject(); param.put("device_code", this.device_code); param.put("mode", mode); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "1"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); logServer.deviceItemValue(this.device_code, "mode", String.valueOf(mode)); @@ -230,6 +233,9 @@ public class SiemensConveyorCkkDeviceDriver extends AbstractOpcDeviceDriver impl param.put("device_code", this.device_code); param.put("error", error); param.put("error_msg", errorInfo); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "1"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } logServer.deviceItemValue(this.device_code, "error", String.valueOf(error)); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java index 8cffdb010..b6fb67619 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java @@ -174,6 +174,9 @@ public class SiemensConveyorLabelingDeviceDriver extends AbstractOpcDeviceDriver JSONObject param = new JSONObject(); param.put("device_code", this.device_code); param.put("mode", mode); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "1"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); logServer.deviceItemValue(this.device_code, "mode", String.valueOf(mode)); @@ -208,6 +211,9 @@ public class SiemensConveyorLabelingDeviceDriver extends AbstractOpcDeviceDriver param.put("device_code", this.device_code); param.put("error", error); param.put("error_msg", errorInfo); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "1"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } logServer.deviceItemValue(this.device_code, "error", String.valueOf(error)); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_onefloor_agv_conveyor/SiemensOneFloorAGVConveyorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_onefloor_agv_conveyor/SiemensOneFloorAGVConveyorDeviceDriver.java index fd0ad57ac..985094f8c 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_onefloor_agv_conveyor/SiemensOneFloorAGVConveyorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_onefloor_agv_conveyor/SiemensOneFloorAGVConveyorDeviceDriver.java @@ -165,6 +165,9 @@ public class SiemensOneFloorAGVConveyorDeviceDriver extends AbstractOpcDeviceDri JSONObject param = new JSONObject(); param.put("device_code", this.device_code); param.put("mode", mode); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "1"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } if (to_command != last_to_command) { @@ -189,6 +192,9 @@ public class SiemensOneFloorAGVConveyorDeviceDriver extends AbstractOpcDeviceDri param.put("device_code", this.device_code); param.put("error", error); param.put("error_msg", errorInfo); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "1"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } } diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java index ce7e8642c..9b8c7eaa0 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java @@ -34,6 +34,8 @@ import org.nl.acs.route.service.RouteLineService; import org.nl.acs.task.service.TaskService; import org.nl.acs.task.service.dto.TaskDto; import org.nl.modules.common.exception.BadRequestException; +import org.nl.modules.system.service.ParamService; +import org.nl.modules.system.service.impl.ParamServiceImpl; import org.nl.modules.wql.util.SpringContextHolder; import org.openscada.opc.lib.da.Server; import org.springframework.beans.factory.annotation.Autowired; @@ -64,6 +66,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl DeviceExecuteLogService logServer = SpringContextHolder.getBean("deviceExecuteLogServiceImpl"); @Autowired DeviceErrorLogService deviceErrorLogService = SpringContextHolder.getBean(DeviceErrorLogServiceImpl.class); + ParamService paramService = SpringContextHolder.getBean(ParamServiceImpl.class); //分切行架机械手是否禁用 0否 1是 private int is_disable = 0; private String error_type = "fqhj_error_type"; @@ -233,6 +236,9 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl JSONObject param = new JSONObject(); param.put("device_code", this.device_code); param.put("mode", mode); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "2"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); inst_type = null; @@ -265,6 +271,9 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl param.put("device_code", this.device_code); param.put("error", error); param.put("error_msg", errorInfo); + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "2"); + param.put("product_area", paramService.findByCode("productArea").getValue()); acsToWmsService.sendDeviceStatus(param); } logServer.deviceItemValue(this.device_code, "error", String.valueOf(error)); From 4772072564c7124a1cd1154de44666cacac81446 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=B1=9F=E7=8E=AE?= Date: Fri, 18 Aug 2023 16:11:46 +0800 Subject: [PATCH 3/3] =?UTF-8?q?fix=20=E5=8F=8D=E9=A6=88=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../agv/ndcone/AgvNdcOneDeviceDriver.java | 24 ++++++++++++++----- .../agv/ndctwo/AgvNdcTwoDeviceDriver.java | 24 ++++++++++++++----- .../OvenGantryManipulatorDeviceDriver.java | 17 +++++++------ .../SiemensConveyorDeviceDriver.java | 2 +- .../SiemensConveyorCkkDeviceDriver.java | 2 +- .../SiemensConveyorLabelingDeviceDriver.java | 2 +- ...iemensOneFloorAGVConveyorDeviceDriver.java | 2 +- .../SlitTwoManipulatorDeviceDriver.java | 2 +- 8 files changed, 49 insertions(+), 26 deletions(-) diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java index 9a8b3668c..58e380272 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndcone/AgvNdcOneDeviceDriver.java @@ -471,14 +471,26 @@ public class AgvNdcOneDeviceDriver extends AbstractDeviceDriver implements Devic //三色灯状态 status = ikey; - if (status != last_status) { + if (status != last_status && status != 6 && status != 7) { + boolean flag = true; JSONObject param = new JSONObject(); param.put("device_code", this.device_code); - param.put("mode", status); - param.put("device_name", this.getDevice().getDevice_name()); - param.put("device_type", "4"); - param.put("product_area", paramService.findByCode("productArea").getValue()); - acsToWmsService.sendDeviceStatus(param); + if (status == 1) { + param.put("mode", 0); + } else if (status == 2) { + param.put("mode", 3); + } else if ("345".contains(String.valueOf(status))) { + param.put("mode", 2); + } else { + flag = false; + } + + if (flag) { + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "4"); + param.put("product_area", paramService.findByCode("productArea").getValue()); + acsToWmsService.sendDeviceStatus(param); + } } last_status = status; diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java index f829443f6..97ad49791 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/agv/ndctwo/AgvNdcTwoDeviceDriver.java @@ -714,14 +714,26 @@ public class AgvNdcTwoDeviceDriver extends AbstractDeviceDriver implements Devic //三色灯状态 status = ikey; - if (status != last_status) { + if (status != last_status && status != 6 && status != 7) { + boolean flag = true; JSONObject param = new JSONObject(); param.put("device_code", this.device_code); - param.put("mode", status); - param.put("device_name", this.getDevice().getDevice_name()); - param.put("device_type", "4"); - param.put("product_area", ParamService.findByCode("productArea").getValue()); - acsToWmsService.sendDeviceStatus(param); + if (status == 1) { + param.put("mode", 0); + } else if (status == 2) { + param.put("mode", 3); + } else if ("345".contains(String.valueOf(status))) { + param.put("mode", 2); + } else { + flag = false; + } + + if (flag) { + param.put("device_name", this.getDevice().getDevice_name()); + param.put("device_type", "4"); + param.put("product_area", ParamService.findByCode("productArea").getValue()); + acsToWmsService.sendDeviceStatus(param); + } } last_status = status; diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java index 6fd5c62f5..d3b00b6a9 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/oven_manipulator/OvenGantryManipulatorDeviceDriver.java @@ -182,7 +182,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i if (mode != last_mode) { JSONObject param = new JSONObject(); param.put("device_code", this.device_code); - param.put("mode", mode); + param.put("mode", Math.min(mode, 3)); param.put("device_name", this.getDevice().getDevice_name()); param.put("device_type", "2"); param.put("product_area", paramService.findByCode("productArea").getValue()); @@ -247,7 +247,6 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i update_instruction_status(); - } catch (Exception var17) { var17.printStackTrace(); feedMessage = var17.getMessage(); @@ -296,7 +295,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i } if (task != 0) { remark = remark + "当前上报任务号(task)应该为0,"; - if(ObjectUtil.isNotEmpty(this.inst)){ + if (ObjectUtil.isNotEmpty(this.inst)) { this.inst = null; } } @@ -346,11 +345,11 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i } else { this.instruction_require_time = date; //抓取工位 - if(ObjectUtil.isEmpty(getDeviceCodeList)){ + if (ObjectUtil.isEmpty(getDeviceCodeList)) { getDeviceCodeList = this.getExtraDeviceCodes("get_device_code"); } //放货工位 - if(ObjectUtil.isEmpty(putDeviceCodeList)){ + if (ObjectUtil.isEmpty(putDeviceCodeList)) { putDeviceCodeList = this.getExtraDeviceCodes("put_device_code"); } @@ -1094,10 +1093,10 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i } } - public Instruction checkInst(){ - if(ObjectUtil.isNotEmpty(this.inst)){ - if(this.task>0){ - if(this.inst.getInstruction_code().equals(String.valueOf(this.task))){ + public Instruction checkInst() { + if (ObjectUtil.isNotEmpty(this.inst)) { + if (this.task > 0) { + if (this.inst.getInstruction_code().equals(String.valueOf(this.task))) { return this.inst; } else { inst = instructionService.findByCodeFromCache(String.valueOf(task)); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java index 6b3b84f54..f5fcc25a9 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor/SiemensConveyorDeviceDriver.java @@ -232,7 +232,7 @@ public class SiemensConveyorDeviceDriver extends AbstractOpcDeviceDriver impleme if ("true".equals(this.device.getExtraValue().get("sendDeviceStatus"))) { JSONObject param = new JSONObject(); param.put("device_code", this.device_code); - param.put("mode", mode); + param.put("mode", Math.min(mode, 3)); param.put("device_name", this.getDevice().getDevice_name()); param.put("device_type", "1"); param.put("product_area", paramService.findByCode("productArea").getValue()); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java index a745b49aa..f755222ed 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_ckk/SiemensConveyorCkkDeviceDriver.java @@ -190,7 +190,7 @@ public class SiemensConveyorCkkDeviceDriver extends AbstractOpcDeviceDriver impl JSONObject param = new JSONObject(); param.put("device_code", this.device_code); - param.put("mode", mode); + param.put("mode", Math.min(mode, 3)); param.put("device_name", this.getDevice().getDevice_name()); param.put("device_type", "1"); param.put("product_area", paramService.findByCode("productArea").getValue()); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java index b6fb67619..f2c42a173 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_conveyor_labeling/SiemensConveyorLabelingDeviceDriver.java @@ -173,7 +173,7 @@ public class SiemensConveyorLabelingDeviceDriver extends AbstractOpcDeviceDriver JSONObject param = new JSONObject(); param.put("device_code", this.device_code); - param.put("mode", mode); + param.put("mode", Math.min(mode, 3)); param.put("device_name", this.getDevice().getDevice_name()); param.put("device_type", "1"); param.put("product_area", paramService.findByCode("productArea").getValue()); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_onefloor_agv_conveyor/SiemensOneFloorAGVConveyorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_onefloor_agv_conveyor/SiemensOneFloorAGVConveyorDeviceDriver.java index 985094f8c..c568401c3 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_onefloor_agv_conveyor/SiemensOneFloorAGVConveyorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/siemens_onefloor_agv_conveyor/SiemensOneFloorAGVConveyorDeviceDriver.java @@ -164,7 +164,7 @@ public class SiemensOneFloorAGVConveyorDeviceDriver extends AbstractOpcDeviceDri if (last_mode != mode) { JSONObject param = new JSONObject(); param.put("device_code", this.device_code); - param.put("mode", mode); + param.put("mode", Math.min(mode, 3)); param.put("device_name", this.getDevice().getDevice_name()); param.put("device_type", "1"); param.put("product_area", paramService.findByCode("productArea").getValue()); diff --git a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java index 9b8c7eaa0..a82db0757 100644 --- a/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java +++ b/acs/nladmin-system/src/main/java/org/nl/acs/device_driver/basedriver/slit_two_manipulator/SlitTwoManipulatorDeviceDriver.java @@ -235,7 +235,7 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl if (mode != last_mode) { JSONObject param = new JSONObject(); param.put("device_code", this.device_code); - param.put("mode", mode); + param.put("mode", Math.min(mode, 3)); param.put("device_name", this.getDevice().getDevice_name()); param.put("device_type", "2"); param.put("product_area", paramService.findByCode("productArea").getValue());