优化:短连接+抛异常 防止异常导致端口占用 无法连接设备
| | |
| | | List<Machine> machineDispensing =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"自动点胶机").eq(Machine::getState,"开工")); |
| | | List<Machine> machineListRotate =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"旋转台").eq(Machine::getState,"开工")); |
| | | List<Machine> machineListLamination =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"自动贴膜机").eq(Machine::getState,"开工")); |
| | | // for (Machine item:machineListLoad){ |
| | | // new MachineLoad(item,primitiveTaskMapper,taskingMapper,machineMapper,taskingService,primitiveTaskService,lineConfigurationService).start(); |
| | | // } |
| | | // for (Machine item:machineListEdging){ |
| | | // new MachineEdging(item,taskingMapper,machineMapper,taskingService,primitiveTaskService,lineConfigurationService).start(); |
| | | // } |
| | | // for (Machine item:machineListFlipSlice){ |
| | | // new MachineFlipSlice(item,machineMapper,taskingService).start(); |
| | | // } |
| | | // for (Machine item:machineListMarking){ |
| | | // new MachineMarking(item,machineMapper,taskingService).start(); |
| | | // } |
| | | // for (Machine item:machineListSilkScreen){ |
| | | // new MachineSilkScreen(item,machineMapper,taskingService).start(); |
| | | // } |
| | | // for (Machine item:machineDispensing){ |
| | | // new MachineDispensing(item,machineMapper,taskingService).start(); |
| | | // } |
| | | // for (Machine item:machineListRotate){ |
| | | // new MachineRotate(item,machineMapper,taskingService).start(); |
| | | // } |
| | | // for (Machine item:machineListLamination){ |
| | | // new MachineLamination(item,machineMapper,taskingService).start(); |
| | | // } |
| | | for (Machine item:machineListLoad){ |
| | | new MachineLoad(item,primitiveTaskMapper,taskingMapper,machineMapper,taskingService,primitiveTaskService,lineConfigurationService).start(); |
| | | } |
| | | for (Machine item:machineListEdging){ |
| | | new MachineEdging(item,taskingMapper,machineMapper,taskingService,primitiveTaskService,lineConfigurationService).start(); |
| | | } |
| | | for (Machine item:machineListFlipSlice){ |
| | | new MachineFlipSlice(item,machineMapper,taskingService).start(); |
| | | } |
| | | for (Machine item:machineListMarking){ |
| | | new MachineMarking(item,machineMapper,taskingService).start(); |
| | | } |
| | | for (Machine item:machineListSilkScreen){ |
| | | new MachineSilkScreen(item,machineMapper,taskingService).start(); |
| | | } |
| | | for (Machine item:machineDispensing){ |
| | | new MachineDispensing(item,machineMapper,taskingService).start(); |
| | | } |
| | | for (Machine item:machineListRotate){ |
| | | new MachineRotate(item,machineMapper,taskingService).start(); |
| | | } |
| | | for (Machine item:machineListLamination){ |
| | | new MachineLamination(item,machineMapper,taskingService).start(); |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | public void readData() { |
| | | try { |
| | | byte[] resultValues=plccontrol.readByte(PlcMesObject.getPlcAddressBegin(), PlcMesObject.getPlcAddressLength()); |
| | | |
| | | // byte[] resultValues=new byte[PlcMesObject.getPlcAddressLength()]; |
| | | // int maxRead=1092; |
| | | // int size=PlcMesObject.getPlcAddressLength()%maxRead==0? |
| | | // (PlcMesObject.getPlcAddressLength()/maxRead): |
| | | // (PlcMesObject.getPlcAddressLength()/maxRead+1); |
| | | // for (int i = 0; i <size ; i++) { |
| | | // int begin=i*maxRead; |
| | | // int length=(i==size-1?PlcMesObject.getPlcAddressLength()-begin:maxRead); |
| | | // String beginAddress=PlcMesObject.getPlcAddressBegin().substring(0, PlcMesObject.getPlcAddressBegin().indexOf("."))+"."+begin; |
| | | // byte[] getplcvlues = plccontrol.readByte(beginAddress, length); |
| | | // System.arraycopy(getplcvlues,0,resultValues,begin,length); |
| | | // } |
| | | byte[] resultValues; |
| | | if (PlcMesObject.getPlcAddressLength()>1092){ |
| | | resultValues=new byte[PlcMesObject.getPlcAddressLength()]; |
| | | int maxRead=1092; |
| | | int size=PlcMesObject.getPlcAddressLength()%maxRead==0? |
| | | (PlcMesObject.getPlcAddressLength()/maxRead): |
| | | (PlcMesObject.getPlcAddressLength()/maxRead+1); |
| | | for (int i = 0; i <size ; i++) { |
| | | int begin=i*maxRead; |
| | | int length=(i==size-1?PlcMesObject.getPlcAddressLength()-begin:maxRead); |
| | | String beginAddress=PlcMesObject.getPlcAddressBegin().substring(0, PlcMesObject.getPlcAddressBegin().indexOf("."))+"."+begin; |
| | | byte[] getplcvlues = plccontrol.readByte(beginAddress, length); |
| | | System.arraycopy(getplcvlues,0,resultValues,begin,length); |
| | | } |
| | | }else{ |
| | | resultValues=plccontrol.readByte(PlcMesObject.getPlcAddressBegin(), PlcMesObject.getPlcAddressLength()); |
| | | } |
| | | if (resultValues.length>0) { |
| | | PlcMesObject.setPlcParameterList(resultValues); |
| | | } |
| | | } catch (Exception e) { |
| | | log.info("异常:ip:{},port:{},配置{},{}",this.ip,this.port,PlcMesObject.getPlcAddressBegin(),PlcMesObject.getPlcAddressLength()); |
| | | PlcMesObject=null; |
| | | log.info("异常:ip:{},port:{},错误{},{}",this.ip,this.port,e.getMessage(),e.toString()); |
| | | } |
| | | } |
| | | } |
| | |
| | | public void plcStart() throws Exception { |
| | | Machine machine = machineMapper.selectById(thisMachine.getId()); |
| | | S7objectMachine s7objectMachine = new S7objectMachine(machine.getIp(), machine.getPort(), machine.getFileName(), EPlcType.S1200); |
| | | s7objectMachine.readData();//按照json文件读取内容 |
| | | PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject; |
| | | if (plcParameterObject == null) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | return; |
| | | } |
| | | |
| | | try { |
| | | s7objectMachine.readData();//按照json文件读取内容 |
| | | PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject; |
| | | if (plcParameterObject == null) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | return; |
| | | } |
| | | PlcParameterInfo plcRequest = plcParameterObject.getPlcParameter("plcRequest");//请求字 |
| | | PlcParameterInfo plcRequestID = plcParameterObject.getPlcParameter("plcRequestID");//请求ID |
| | | PlcParameterInfo plcRequestType = plcParameterObject.getPlcParameter("plcRequestType");//PLC请求 |
| | |
| | | nullMachine(machine); |
| | | } |
| | | } catch (Exception e) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | |
| | | log.info("逻辑处理异常:设备id【{}】", machine.getId()); |
| | | } |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | } |
| | | |
| | | |
| | |
| | | Machine machine = machineMapper.selectById(thisMachine.getId()); |
| | | |
| | | S7objectMachine s7objectMachine = new S7objectMachine(machine.getIp(), machine.getPort(), machine.getFileName(), EPlcType.S1200); |
| | | s7objectMachine.readData();//按照json文件读取内容 |
| | | PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject; |
| | | if (plcParameterObject == null) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | return; |
| | | } |
| | | try { |
| | | s7objectMachine.readData();//按照json文件读取内容 |
| | | PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject; |
| | | if (plcParameterObject == null) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | return; |
| | | } |
| | | PlcParameterInfo plcRequest = plcParameterObject.getPlcParameter("plcRequest");//请求字 |
| | | PlcParameterInfo mesSend = plcParameterObject.getPlcParameter("mesSend");//发送字 |
| | | PlcParameterInfo lengthOutOfService = plcParameterObject.getPlcParameter("length");//长 |
| | |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | |
| | | log.info("逻辑处理异常:设备id【{}】", machine.getId()); |
| | | } |
| | | |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | } |
| | | |
| | | @Override |
| | |
| | | public void plcStart()throws Exception { |
| | | Machine machine = machineMapper.selectById(thisMachine.getId()); |
| | | S7objectMachine s7objectMachine = new S7objectMachine(machine.getIp(), machine.getPort(), machine.getFileName(), EPlcType.S1500); |
| | | s7objectMachine.readData();//按照json文件读取内容 |
| | | PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject; |
| | | if (plcParameterObject == null) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | return; |
| | | } |
| | | try { |
| | | s7objectMachine.readData();//按照json文件读取内容 |
| | | PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject; |
| | | if (plcParameterObject == null) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | return; |
| | | } |
| | | PlcParameterInfo plcRequest = plcParameterObject.getPlcParameter("plcRequest");//请求字 |
| | | PlcParameterInfo plcRequestID = plcParameterObject.getPlcParameter("plcRequestID");//请求ID |
| | | PlcParameterInfo mesSend = plcParameterObject.getPlcParameter("mesSend");//发送字 |
| | |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | log.info("逻辑处理异常:设备id【{}】", machine.getId()); |
| | | } |
| | | |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | } |
| | | |
| | | @Override |
| | |
| | | //旋转台 |
| | | Machine machine = machineMapper.selectById(thisMachine.getId()); |
| | | S7objectMachine s7objectMachine = new S7objectMachine(machine.getIp(), machine.getPort(), machine.getFileName(), EPlcType.S1200); |
| | | s7objectMachine.readData();//按照json文件读取内容 |
| | | PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject; |
| | | if (plcParameterObject == null) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | return; |
| | | } |
| | | try { |
| | | |
| | | try { |
| | | s7objectMachine.readData();//按照json文件读取内容 |
| | | PlcParameterObject plcParameterObject = s7objectMachine.PlcMesObject; |
| | | if (plcParameterObject == null) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | return; |
| | | } |
| | | PlcParameterInfo plcRequest = plcParameterObject.getPlcParameter("plcRequest");//请求字 |
| | | PlcParameterInfo plcRequestID = plcParameterObject.getPlcParameter("plcRequestID");//请求ID |
| | | PlcParameterInfo plcRequestType = plcParameterObject.getPlcParameter("plcRequestType");//PLC请求 |
| | |
| | | nullMachine(machine); |
| | | } |
| | | } catch (Exception e) { |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | |
| | | log.info("逻辑处理异常:设备id【{}】", machine.getId()); |
| | | } |
| | | s7objectMachine.plccontrol.closeS7client(); |
| | | |
| | | } |
| | | |
| | |
| | | username: root |
| | | password: beibo.123/ |
| | | driver-class-name: com.mysql.cj.jdbc.Driver |
| | | salve_JomooKBB: |
| | | url: jdbc:sqlserver://localhost:1433;databasename=JomooKBB |
| | | username: sa |
| | | password: beibo.123/ |
| | | driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
| | | # salve_JomooKBB: |
| | | # url: jdbc:sqlserver://172.18.19.85:1433;databasename=JomooKBB |
| | | # username: thok |
| | | # password: jomoo@123 |
| | | # url: jdbc:sqlserver://localhost:1433;databasename=JomooKBB |
| | | # username: sa |
| | | # password: beibo.123/ |
| | | # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
| | | salve_JomooKBB: |
| | | url: jdbc:sqlserver://10.14.133.16:1433;databasename=JomooKBB |
| | | username: thok |
| | | password: jomoo@123 |
| | | driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
| | | cloud: |
| | | nacos: |
| | | discovery: |
| | |
| | | username: root |
| | | password: beibo.123/ |
| | | driver-class-name: com.mysql.cj.jdbc.Driver |
| | | salve_JomooKBB: |
| | | url: jdbc:sqlserver://localhost:1433;databasename=JomooKBB |
| | | username: sa |
| | | password: beibo.123/ |
| | | driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
| | | # salve_JomooKBB: |
| | | # url: jdbc:sqlserver://172.18.19.85:1433;databasename=JomooKBB |
| | | # username: thok |
| | | # password: jomoo@123 |
| | | # url: jdbc:sqlserver://localhost:1433;databasename=JomooKBB |
| | | # username: sa |
| | | # password: beibo.123/ |
| | | # driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
| | | salve_JomooKBB: |
| | | url: jdbc:sqlserver://10.14.133.16:1433;databasename=JomooKBB |
| | | username: thok |
| | | password: jomoo@123 |
| | | driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
| | | cloud: |
| | | nacos: |
| | | discovery: |
| | |
| | | export default { |
| | | |
| | | serverUrl: "localhost:88/api", |
| | | serverUrl2: "localhost:88" |
| | | // |
| | | // serverUrl: "localhost:88/api", |
| | | // serverUrl2: "localhost:88" |
| | | |
| | | // serverUrl: "10.36.164.253:88/api", |
| | | // serverUrl2: "10.36.164.253:88" |
| | | |
| | | // serverUrl: "10.36.164.200:88/api", |
| | | // serverUrl2: "10.36.164.200:88" |
| | | serverUrl: "10.36.164.200:88/api", |
| | | serverUrl2: "10.36.164.200:88" |
| | | |
| | | // serverUrl2: "127.0.0.1:88"npm |
| | | |
| | |
| | | export const WebSocketHost = "localhost"; |
| | | // export const WebSocketHost = "localhost"; |
| | | // export const WebSocketHost = "10.36.164.253"; |
| | | //export const WebSocketHost = "10.36.164.200"; |
| | | export const WebSocketHost = "10.36.164.200"; |
| | | export const host = "88"; |