| src/main/java/com/zy/asrs/controller/SiteController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/core/model/protocol/CrnProtocol.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/core/thread/SiemensCrnThread.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/core/thread/SiemensDevpThread.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/SiteController.java
@@ -198,73 +198,114 @@ public List<PlcErrorTableVo> staPlcErr(Map.Entry<Integer, StaProtocol> entry){ List<PlcErrorTableVo> list = new ArrayList<>(); StaProtocol staProtocol = entry.getValue(); if (staProtocol.getBreakerErr()){ if (staProtocol.getPassTimeOut()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("断路器故障"); vo.setError("断路器故障"); vo.setPlcDesc("物体进出超时"); vo.setError("物体进出超时"); list.add(vo); } if (staProtocol.getInfraredErr()){ if (staProtocol.getObjectNoIdError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("光电异常"); vo.setError("光电异常"); vo.setPlcDesc("有物体无数据"); vo.setError("有物体无数据"); list.add(vo); } if (staProtocol.getOutTimeErr()){ if (staProtocol.getIdNoObjectError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("运行超时"); vo.setError("运行超时"); vo.setPlcDesc("有数据无物体"); vo.setError("有数据无物体"); list.add(vo); } if (staProtocol.getSeizeSeatErr()){ if (staProtocol.getLmfrError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("占位超时"); vo.setError("占位超时"); vo.setPlcDesc("线体电机热继报警"); vo.setError("线体电机热继报警"); list.add(vo); } if (staProtocol.getWrkYgoodsN()){ if (staProtocol.getLiftError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("有任务无货故障"); vo.setError("有任务无货故障"); vo.setPlcDesc("顶升报警"); vo.setError("顶升报警"); list.add(vo); } if (staProtocol.getInverterErr()){ if (staProtocol.getDlfrError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("变频器故障"); vo.setError("变频器故障"); vo.setPlcDesc("顶升电机热继报警"); vo.setError("顶升电机热继报警"); list.add(vo); } if (staProtocol.getContactErr()){ if (staProtocol.getDmfrError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("电机接触器故障"); vo.setError("电机接触器故障"); vo.setPlcDesc("顶升横移电机热继报警"); vo.setError("顶升横移电机热继报警"); list.add(vo); } if (staProtocol.getUpcontactErr()){ if (staProtocol.getVfdError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("顶升电机接触器故障"); vo.setError("顶升电机接触器故障"); /* * 宜科定制 150站点异常信息:大托盘目的站错误 * */ if (entry.getKey()==150){ vo.setPlcDesc("150站点大托盘目的站错误"); vo.setError("150站点大托盘目的站错误"); } vo.setPlcDesc("变频故障"); vo.setError("变频故障"); list.add(vo); } if (staProtocol.getSrvError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("伺服故障"); vo.setError("伺服故障"); list.add(vo); } if (staProtocol.getCommunicationTimeOut()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("与上位机通讯超时"); vo.setError("与上位机通讯超时"); list.add(vo); } if (staProtocol.getParameterIncompleteError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("信息参数不全"); vo.setError("信息参数不全"); list.add(vo); } if (staProtocol.getDataNotClear()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("信息数据未清除"); vo.setError("信息数据未清除"); list.add(vo); } if (staProtocol.getSetParameterError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("参数设置报警"); vo.setError("参数设置报警"); list.add(vo); } if (staProtocol.getDataError()){ PlcErrorTableVo vo = new PlcErrorTableVo(); vo.setNo(entry.getKey()); // 序号 vo.setPlcDesc("数据错误"); vo.setError("数据错误"); list.add(vo); } if (staProtocol.isFrontErr()){ src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2029,7 +2029,7 @@ BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm()); String errName = crnError == null ? String.valueOf(crnProtocol.getAlarm()) : crnError.getErrName(); BasErrLog basErrLog = new BasErrLog( null, // 编号 crnProtocol.getUuid(), // 编号 wrkMast.getWrkNo(), // 工作号 now, // 发生时间 null, // 结束时间 @@ -2077,7 +2077,7 @@ BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm()); String errName = crnError == null ? String.valueOf(crnProtocol.getAlarm()) : crnError.getErrName(); BasErrLog basErrLog = new BasErrLog( null, // 编号 crnProtocol.getUuid(), // 编号 null, // 工作号 now, // 发生时间 null, // 结束时间 @@ -3302,6 +3302,9 @@ // 获取RGV信息 RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId()); RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); if (rgvProtocol == null) { continue; } if (rgvProtocol.getStatusType1() != RgvStatusType.IDLE && rgvProtocol.getModeType() != RgvModeType.AUTO) { continue; } @@ -3518,6 +3521,7 @@ basRgv.setPakAll("1"); basRgvService.updateById(basRgv); rgvThread.setPakMk(true); } // List<WrkMastSta> wrkMastStaPakingNum = wrkMastStaService.selectPakingWrkNum(basRgv.getRgvNo()); // if(wrkMastStaPakingNum.size() <1){ @@ -3537,6 +3541,7 @@ // 获取堆垛机信息 RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId()); RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); if (rgvProtocol == null) { continue; } @@ -3547,6 +3552,8 @@ continue; } if(rgvProtocol.getStatusType1() == RgvStatusType.WORKING){ rgvThread.setPaking(true); }else if(rgvProtocol.getTaskNo1() == 0 && rgvProtocol.getTaskNo2() == 0 && rgvProtocol.getStatusType1() == RgvStatusType.IDLE){ rgvThread.setPaking(true); } if(rgvProtocol.isLoaded1ing() && rgvProtocol.isLoaded2ing()){ @@ -3704,7 +3711,7 @@ if(wrkMastSta3 != null ){ List<WrkMastSta> wrkMastStaPaking = wrkMastStaService.selectPakingWrk(wrkMastSta3.getStaStart()); if(wrkMastStaPaking.size() < 1 ){//已有标记不再标记 if(wrkMastStaPaking.size() < 1 && !wrkMastSta3.getWrkNo().equals(wrkMastSta.getWrkNo())){//已有标记不再标记 wrkMastSta3.setMk(1); basRgv.setPakAll("0"); basRgvService.updateById(basRgv); @@ -3836,8 +3843,13 @@ wrkMastSta.setWorkSta(wrkMastSta1 !=null ? 2 : 1);//若1号工位有任务给2号工位 wrkMastSta.setRgvNo((int) rgvProtocol.getRgvNo()); boolean sign = false; sign = rgvTakeFullAll(basRgvMap.getRgvNo(), wrkMastSta); //命令下发 if (sign){ if(wrkMastSta.getMk() == 1){//若已执行 basRgv.setPakAll("1"); basRgvService.updateById(basRgv); } if(LEFT_POSITION.contains(wrkMastSta.getStaEnd())){ basRgv.setPakToCrn("0"); basRgvService.updateById(basRgv); @@ -3847,7 +3859,7 @@ } } } if(wrkMastSta3 != null ){ if(wrkMastSta3 != null && !wrkMastSta3.getWrkNo().equals(wrkMastSta.getWrkNo())){ List<WrkMastSta> wrkMastStaPaking = wrkMastStaService.selectPakingWrk(wrkMastSta3.getStaStart()); if(wrkMastStaPaking.size() < 1){ wrkMastSta3.setMk(1); @@ -3855,7 +3867,7 @@ basRgvService.updateById(basRgv); try{ wrkMastStaMapper.updateById(wrkMastSta3); log.error("锁定相隔站点任务"); log.error("锁定相隔站点任务:"+ wrkMastSta3.getWrkNo()); }catch (Exception e){ log.error("锁定相隔站点任务失败"); } src/main/java/com/zy/core/model/protocol/CrnProtocol.java
@@ -189,6 +189,7 @@ public Float yDuration; //堆垛机配置信号-------------------------------------------------------------- private String uuid; // 故障读取锁定标记 private boolean errorMk = false; //写入标记 src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -53,6 +53,8 @@ */ private boolean backHpFlag = false; private Integer errId = 0; public SiemensCrnThread(CrnSlave slave) { this.slave = slave; } @@ -289,7 +291,9 @@ BasCrnErrorLog basCrnErrorLogs; basCrnErrorLogs = crnProtocol.toSqlModelError(); BasCrnErrorLogService basCrnErrorLogService = SpringUtils.getBean(BasCrnErrorLogService.class); basCrnErrorLogService.insert(basCrnErrorLogs); if(basCrnErrorLogService.insert(basCrnErrorLogs)){ crnProtocol.setUuid(basCrnErrorLogs.getId().toString()); } crnProtocol.setWriteMk(false); } catch (Exception ignore) { log.error(ignore.getMessage()); src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -283,6 +283,7 @@ read(); } catch (Exception e) { e.printStackTrace(); log.error("Dev数据读取线程异常!!! ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort()); initSite(); } src/main/resources/application.yml
@@ -477,12 +477,10 @@ # barcodeMat: ${wcs-slave.barcode[5].id} # backSta: 160 # led: ${wcs-slave.led[5].id} # 出库口1 outSta[0]: staNo: 1041 led: ${wcs-slave.led[0].id} outStaAgvFull[0]: staNo: 1041 led: ${wcs-slave.led[0].id} @@ -638,4 +636,11 @@ ip: 10.10.10.218 port: 5005 devpPlcId: ${wcs-slave.devp[1].id} staArr: 4006 staArr: 4006 # LED7 led[7]: id: 8 ip: 10.10.10.219 port: 5005 devpPlcId: ${wcs-slave.devp[0].id} staArr: 1041