| | |
| | | } |
| | | boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | if (result) { |
| | | int devId = 0; |
| | | switch (siteId) { |
| | | case 1081: devId = 4;break; |
| | | case 1084: devId = 5;break; |
| | | case 1087: devId = 6;break; |
| | | default: |
| | | } |
| | | if(devId != 0){ // 同时给罐装线写可出 |
| | | staProtocol.setPlaceableFlag(1); |
| | | MessageQueue.offer(SlaveType.Devp, devId, new Task(5, staProtocol)); |
| | | } |
| | | return R.ok(); |
| | | } else { |
| | | return R.error("下发命令失败"); |
| | |
| | | add(1081); add(1084);add(1087); |
| | | }}; |
| | | |
| | | private static long lastLogTime = 0; |
| | | |
| | | public SiemensDevpThread(DevpSlave slave) { |
| | | this.slave = slave; |
| | | } |
| | |
| | | // log.info("读取{}号罐装线plc信息成功",slave.getId()); |
| | | OperateResultExOne<byte[]> read = siemensS7Net.Read("DB101.0", (short) 58); |
| | | if (read.IsSuccess) { |
| | | // 15秒打印一下日志 |
| | | if (System.currentTimeMillis() - lastLogTime >= 15000) { |
| | | OperateResultExOne<byte[]> readKc = siemensS7Net.Read("DB100.6", (short) 2); |
| | | if(readKc.IsSuccess){ |
| | | short i = siemensS7Net.getByteTransform().TransInt16(readKc.Content, 0); |
| | | log.info("读{}号罐装线可出信号成功,值:{}", slave.getId() -3, i); |
| | | } |
| | | lastLogTime = System.currentTimeMillis(); |
| | | } |
| | | // 成品信息反馈到罐装线出口站点 |
| | | DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 2); |
| | | StaProtocol staProtocol = devpThread.getStation().get(gzxResultSite.get(slave.getId()-4)); |
| | |
| | | crnCommand.setDestinationPosX(crnStn.getRow().shortValue()); // 目标库位排 |
| | | |
| | | // 源站1057 |
| | | if(slave.getId() == 4 && crnStn.getStaNo() == 1057 && sourceSta.getRow1() == 12) { |
| | | if(slave.getId() == 4 && crnStn.getStaNo() == 1057 && (sourceSta.getRow1() == 11 || sourceSta.getRow1() == 12)) { |
| | | crnCommand.setDestinationPosX((short) 9); |
| | | } |
| | | crnCommand.setDestinationPosY(crnStn.getBay().shortValue()); // 目标库位列 |
| | |
| | | } |
| | | |
| | | if(wrkMast.getIoType() == 3 && (wrkMast.getStaNo() == 1024 || wrkMast.getStaNo() == 1016 || wrkMast.getStaNo() == 1043)) { // 到1024出库口,放到输送线后任务完成 |
| | | if(wrkMast.getWrkSts() != 2 ){ |
| | | log.warn("rgv放货完成,rgv未复位:rgv号{},任务号:{},任务状态{}",wrkMast.getRgvNo(),wrkMast.getWrkNo(),wrkMast.getWrkSts()); |
| | | continue; |
| | | } |
| | | wrkMast.setWrkSts(2L); |
| | | wrkMast.setModiTime(new Date()); |
| | | wrkMastService.updateById(wrkMast); |