自动化立体仓库 - WCS系统
#
luxiaotao1123
2020-12-28 678f43f99d4fe259c6ce3dabbc2563776c2a25f1
#
5个文件已修改
63 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/ConsoleController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/CrnController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/MelsecCrnThread.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/ConsoleController.java
@@ -13,6 +13,7 @@
import com.zy.asrs.service.BasDevpService;
import com.zy.asrs.service.WrkMastService;
import com.zy.common.CodeRes;
import com.zy.core.CrnThread;
import com.zy.core.Slave;
import com.zy.core.cache.SlaveConnection;
import com.zy.core.enums.CrnModeType;
@@ -111,7 +112,7 @@
        List<CrnLatestDataVo> vos = new ArrayList<>();
        for (CrnSlave crn : slaveProperties.getCrn()) {
            // 获取堆垛机信息
            SiemensCrnThread crnThread = (SiemensCrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId());
            CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, crn.getId());
            if (crnThread == null) {
                continue;
            }
src/main/java/com/zy/asrs/controller/CrnController.java
@@ -128,7 +128,7 @@
            vo.setForkOffset(crnProtocol.getForkPosType().desc);    // 货叉位置
            vo.setXLocation(crnProtocol.getWalkPos() == 1?"是":"否");      // 走行定位
            vo.setYLocation(crnProtocol.getLiftPosType().equals(CrnLiftPosType.NONE)?"否":"是");      // 升降定位
            vo.setStop(crnProtocol.getCrnError1().controlStop||crnProtocol.getCrnError1().mainStop||crnProtocol.getCrnError1().remoteStop?"是":"否");       //  急停
//            vo.setStop(crnProtocol.getCrnError1().controlStop||crnProtocol.getCrnError1().mainStop||crnProtocol.getCrnError1().remoteStop?"是":"否");       //  急停
            vo.setWarnCode(String.valueOf(crnProtocol.getAlarm1()));  //  异常码
        }
        return R.ok().add(list);
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -775,6 +775,7 @@
                        // 记录新异常
                        if (latest == null || (latest.getErrCode() != crnProtocol.getAlarm1().intValue())) {
                            BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm1());
                            String errName = crnError==null? String.valueOf(crnProtocol.getAlarm1()):crnError.getErrName();
                            BasErrLog basErrLog = new BasErrLog(
                                    null,    // 编号
                                    null,    // 工作号
@@ -790,7 +791,7 @@
                                    null,    // 源库位
                                    null,    // 条码
                                    crnProtocol.getAlarm1().intValue(),    // 异常码
                                    crnError.getErrName(),    // 异常
                                    errName,    // 异常
                                    1,    // 异常情况
                                    now,    // 添加时间
                                    null,    // 添加人员
@@ -799,7 +800,7 @@
                                    "无任务异常"    // 备注
                            );
                            if (!basErrLogService.insert(basErrLog)) {
                                log.error("堆垛机plc异常记录失败 ===>> [id:{}] [error:{}]", crn.getId(), crnError.getErrName());
                                log.error("堆垛机plc异常记录失败 ===>> [id:{}] [error:{}]", crn.getId(), errName);
                            }
                        }
                    // 无异常
src/main/java/com/zy/core/thread/MelsecCrnThread.java
@@ -96,7 +96,7 @@
                }
                Thread.sleep(500);
            } catch (Exception e) {
//                e.printStackTrace();
                e.printStackTrace();
            }
        }
@@ -145,6 +145,10 @@
        }
        melsecMcNet.ConnectClose();
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
        }
        return result;
    }
@@ -198,6 +202,7 @@
            BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class);
            BasCrnp basCrnp = new BasCrnp();
            basCrnp.setCrnNo(slave.getId());
            crnProtocol.setAlarm1((short) (crnProtocol.getAlarm1() + 1000));
            if (!basCrnpService.updateById(crnProtocol.toSqlModel(basCrnp))){
                log.error("堆垛机plc数据库更新失败 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
            }
src/main/resources/application.yml
@@ -62,29 +62,29 @@
      row: 1
      bay: 0
      lev: 1
    # 堆垛机2
    crn[1]:
      id: 2
      ip: 192.168.6.20
      port: 6000
      rack: 0
      slot: 0
      # 偏移量,当堆垛机站点列号=1时,偏移量=2
      offset: 2
      # 堆垛机入库站点
      crnInStn[0]:
        devpPlcId: ${wcs-slave.devp[1].id}
        staNo: 107
        row: 4
        bay: 0
        lev: 1
      # 堆垛机出库站点
      crnOutStn[0]:
        devpPlcId: ${wcs-slave.devp[1].id}
        staNo: 101
        row: 3
        bay: 0
        lev: 1
  # 堆垛机2
  crn[1]:
    id: 2
    ip: 192.168.6.20
    port: 6000
    rack: 0
    slot: 0
    # 偏移量,当堆垛机站点列号=1时,偏移量=2
    offset: 2
    # 堆垛机入库站点
    crnInStn[0]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 107
      row: 4
      bay: 0
      lev: 1
    # 堆垛机出库站点
    crnOutStn[0]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 101
      row: 3
      bay: 0
      lev: 1
  # 输送线
  devp[0]:
    id: 1