From b3eb4d78efbaab9afbb48eaabedfb00c85aed142 Mon Sep 17 00:00:00 2001 From: gengby <858962040@qq.com> Date: Fri, 17 Feb 2023 19:47:29 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OvenGantryManipulatorDeviceDriver.java | 18 ++++++++++++++++++ .../main/resources/config/application-dev.yml | 4 ++-- 2 files changed, 20 insertions(+), 2 deletions(-) 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 425d72eb9..dedb23441 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 @@ -528,6 +528,15 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i Instruction instruction = instructionService.findByTaskcode(taskDto.getTask_code()); String start_device_code = instruction.getStart_device_code(); String next_device_code = instruction.getNext_device_code(); + Device device = deviceAppService.findDeviceByCode(next_device_code); + PhotoelectricInspectionSiteDeviceDriver photoelectricInspectionSiteDeviceDriver; + if (device.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ + photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) device.getDeviceDriver(); + if (photoelectricInspectionSiteDeviceDriver.getMove() != 0){ + notCreateInstMessage = "手动创建指令未下发电气信号原因->烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "有货,无法下发指令!"; + return false; + } + } //判断关联的同一列烘箱设备是否都关门 都关门返回false,有一个不关门就返回true boolean isCloseDoor = this.judgeCloseDoor(start_device_code, next_device_code); //未关门结束 @@ -566,6 +575,15 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i } } if (!ObjectUtil.isEmpty(task)) { + Device device = deviceAppService.findDeviceByCode(task.getNext_device_code()); + PhotoelectricInspectionSiteDeviceDriver photoelectricInspectionSiteDeviceDriver; + if (device.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ + photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) device.getDeviceDriver(); + if (photoelectricInspectionSiteDeviceDriver.getMove() != 0){ + notCreateInstMessage = "就绪任务未创建指令原因->烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "有货,无法生成指令!"; + return false; + } + } String taskid = task.getTask_id(); String taskcode = task.getTask_code(); String vehiclecode = task.getVehicle_code(); diff --git a/acs/nladmin-system/src/main/resources/config/application-dev.yml b/acs/nladmin-system/src/main/resources/config/application-dev.yml index d4bbec25a..73b246e26 100644 --- a/acs/nladmin-system/src/main/resources/config/application-dev.yml +++ b/acs/nladmin-system/src/main/resources/config/application-dev.yml @@ -13,11 +13,11 @@ spring: driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy # url: jdbc:log4jdbc:mysql://${DB_HOST:10.1.3.91}:${DB_PORT:3306}/${DB_NAME:acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true # url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.81.252}:${DB_PORT:3306}/${DB_NAME:lzhl_one_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true - url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lzhl_one_acs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true + url: jdbc:log4jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:lzhl_one_wcs}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true username: ${DB_USER:root} # password: ${DB_PWD:P@ssw0rd} # password: ${DB_PWD:Root.123456} - password: ${DB_PWD:123456} + password: ${DB_PWD:password} # 初始连接数 initial-size: 5 From 43a254a8c165d4c6d919d044a547da3ea023f5d9 Mon Sep 17 00:00:00 2001 From: gengby <858962040@qq.com> Date: Fri, 17 Feb 2023 20:29:59 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OvenGantryManipulatorDeviceDriver.java | 67 ++++++++++++++++--- 1 file changed, 58 insertions(+), 9 deletions(-) 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 dedb23441..14ff874fb 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 @@ -528,12 +528,37 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i Instruction instruction = instructionService.findByTaskcode(taskDto.getTask_code()); String start_device_code = instruction.getStart_device_code(); String next_device_code = instruction.getNext_device_code(); - Device device = deviceAppService.findDeviceByCode(next_device_code); + Device nextdevice = deviceAppService.findDeviceByCode(next_device_code); + Device startdevice = deviceAppService.findDeviceByCode(start_device_code); PhotoelectricInspectionSiteDeviceDriver photoelectricInspectionSiteDeviceDriver; - if (device.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ - photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) device.getDeviceDriver(); + HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver; + + if (startdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ + photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) startdevice.getDeviceDriver(); + if (photoelectricInspectionSiteDeviceDriver.getMove() != 1){ + notCreateInstMessage = "手动创建指令未下发电气信号原因->取货位-烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "无货,无法下发指令!"; + return false; + } + } + if (startdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver){ + hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) startdevice.getDeviceDriver(); + if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 0){ + notCreateInstMessage = "手动创建指令未下发电气信号原因->取货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "无货,无法下发指令!"; + return false; + } + } + + if (nextdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ + photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) nextdevice.getDeviceDriver(); if (photoelectricInspectionSiteDeviceDriver.getMove() != 0){ - notCreateInstMessage = "手动创建指令未下发电气信号原因->烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "有货,无法下发指令!"; + notCreateInstMessage = "手动创建指令未下发电气信号原因->放货位-烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "有货,无法下发指令!"; + return false; + } + } + if (nextdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver){ + hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextdevice.getDeviceDriver(); + if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 1){ + notCreateInstMessage = "手动创建指令未下发电气信号原因->放货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "有货,无法下发指令!"; return false; } } @@ -575,12 +600,36 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i } } if (!ObjectUtil.isEmpty(task)) { - Device device = deviceAppService.findDeviceByCode(task.getNext_device_code()); + Device nextdevice = deviceAppService.findDeviceByCode(task.getNext_device_code()); + Device startdevice = deviceAppService.findDeviceByCode(task.getStart_device_code()); PhotoelectricInspectionSiteDeviceDriver photoelectricInspectionSiteDeviceDriver; - if (device.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ - photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) device.getDeviceDriver(); + HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver; + if (startdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ + photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) startdevice.getDeviceDriver(); + if (photoelectricInspectionSiteDeviceDriver.getMove() != 1){ + notCreateInstMessage = "就绪任务未创建指令原因->取货位-烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "光电无货,无法生成指令!"; + return false; + } + } + if (startdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver){ + hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) startdevice.getDeviceDriver(); + if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 0){ + notCreateInstMessage = "就绪任务未创建指令原因->取货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "光电无货,无法生成指令!"; + return false; + } + } + + if (nextdevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver){ + hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextdevice.getDeviceDriver(); + if (hongXiangConveyorDeviceDriver.getMode() == 0 || hongXiangConveyorDeviceDriver.getMove() == 1){ + notCreateInstMessage = "就绪任务未创建指令原因->放货位-烘箱:" + hongXiangConveyorDeviceDriver.getDevice_code() + "光电有货,无法生成指令!"; + return false; + } + } + if (nextdevice.getDeviceDriver() instanceof PhotoelectricInspectionSiteDeviceDriver){ + photoelectricInspectionSiteDeviceDriver = (PhotoelectricInspectionSiteDeviceDriver) nextdevice.getDeviceDriver(); if (photoelectricInspectionSiteDeviceDriver.getMove() != 0){ - notCreateInstMessage = "就绪任务未创建指令原因->烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "有货,无法生成指令!"; + notCreateInstMessage = "就绪任务未创建指令原因->放货位-烘箱对接位:" + photoelectricInspectionSiteDeviceDriver.getDevice_code() + "光电有货,无法生成指令!"; return false; } } @@ -651,7 +700,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i this.writing("to_target", next_addr); this.writing("to_task", instdto.getInstruction_code()); this.writing("to_command", "1"); - HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver; + //HongXiangConveyorDeviceDriver hongXiangConveyorDeviceDriver; if (nextDevice.getDeviceDriver() instanceof HongXiangConveyorDeviceDriver) { hongXiangConveyorDeviceDriver = (HongXiangConveyorDeviceDriver) nextDevice.getDeviceDriver(); hongXiangConveyorDeviceDriver.writing("to_open_door", "1");