自动化立体仓库 - WCS系统
zjj
2024-06-26 23cd2e02d10d18462b8bdfa8f181451f37139cab
Merge remote-tracking branch 'origin/gdykwcs' into gdykwcs
3个文件已修改
60 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/SiteController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/MainProcess.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/SiteController.java
@@ -253,6 +253,13 @@
            vo.setPlcDesc("顶升电机接触器故障");
            vo.setError("顶升电机接触器故障");
            /*
             * 宜科定制  150站点异常信息:大托盘目的站错误
             * */
            if (entry.getKey()==150){
                vo.setPlcDesc("150站点大托盘目的站错误");
                vo.setError("150站点大托盘目的站错误");
            }
            list.add(vo);
        }
        if (staProtocol.isFrontErr()){
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2548,7 +2548,7 @@
    /**
     * 执行小车搬运任务
     */
    public synchronized void rgvRunWrkMastFullSta() {
    public synchronized boolean rgvRunWrkMastFullSta() {
        boolean wrkEnable = false;
        try{
            List<BasRgvMap> basRgvMaps = basRgvMapService.selectList(new EntityWrapper<>());
@@ -2586,10 +2586,29 @@
                            continue;
                        }
                        //判断工作结束位置状态
                        boolean signDev = false;
                        BasDevp devNo = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", wrkMastSta.getStaEnd()));
                        if (devNo.getDevNo()==113){
                            BasDevp devNo114 = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", 114));
                            if (!Cools.isEmpty(devNo114)){
                                if (devNo114.getOutEnable().equals("Y")){
                                    signDev = true;
                                }
                            }
                        }
                        if (!Cools.isEmpty(devNo)){
                            if (devNo.getAutoing().equals("Y") && !devNo.getWrkNo().equals(0) && !devNo.getLoading().equals("N")){
                                continue;
                            }
                            if (!signDev && devNo.getDevNo()==113){
                                if (!devNo.getAutoing().equals("Y") || !devNo.getWrkNo().equals(0) || !devNo.getLoading().equals("N")){
                                    wrkEnable = true;
                                    continue;
                                }
                                if (!devNo.getOutEnable().equals("Y")){
                                    wrkEnable = true;
                                    continue;
                                }
                            }
                        }
                        boolean sign = rgvTakeFullAll(basRgvMap.getRgvNo(), wrkMastSta); //命令下发
@@ -2605,7 +2624,7 @@
                            rgvThread.setPakMk(false);
                            boolean signMap = rgvMapUpdate(basRgvMap, wrkMastSta.getStaStart(), wrkMastSta.getStaEnd(),"2526");
                            if (signMap){
                                return;
                                return wrkEnable;
//                                break;
                            }else {
                                log.error("3864行,货物搬运任务:工作号{}所属任务下发后地图同步失败",wrkMastSta.getWrkNo());
@@ -2620,13 +2639,14 @@
                }
            }
            if (!wrkEnable){
                rgvRunWrkMastEmptyStaAvoidance();
            }
//            if (!wrkEnable){
//                rgvRunWrkMastEmptyStaAvoidance();
//            }
        }catch (Exception e){
            log.error("3875行执行小车搬运任务下发失败");
            log.error("3875行"+e);
        }
        return wrkEnable;
    }
    /**
     * 执行小车搬运任务
src/main/java/com/zy/core/MainProcess.java
@@ -26,6 +26,7 @@
    private Thread thread;
    // 频率
    private int i = 0;
    private int k = 0;
    private boolean rgcWrk = true;
    /**
@@ -99,14 +100,14 @@
                    /////////////////////////////////////RGV调度/////////////////////////////////////
//
                    //完成小车任务
                    mainService.rgvCompleteWrkMastSta();
//                    mainService.rgvCompleteWrkMastSta();
//                    //执行小车空板搬运任务
//                    mainService.rgvRunWrkMastEmptyStaPut();//放
//                    mainService.rgvRunWrkMastEmptyStaTake();//取
//                    if (rgcWrk){
//                        //执行小车货物搬运任务
                        mainService.rgvRunWrkMastFullSta();
//                        mainService.rgvRunWrkMastFullSta();
//                        rgcWrk = false;
//                    }else {
//                        mainService.rgvRunWrkMastEmptyStaAvoidance();//避让
@@ -115,6 +116,24 @@
                    /////////////////////////////////////RGV调度/////////////////////////////////////
                    /////////////////////////////////////RGV调度/////////////////////////////////////
                    k++;
                    // RGV  ===>>  小车任务作业下发
                    try{
                        boolean rgvIoExecuteSign = mainService.rgvRunWrkMastFullSta();
                        if (rgvIoExecuteSign){
                            k = 0;
                        } else if (k>4){
                            k = 0;
                            mainService.rgvRunWrkMastEmptyStaAvoidance();//避让
                        }
                    }catch (Exception e){
                        log.error("RGV  ===>>  小车任务作业下发异常"+e);
                    }
                    //完成小车任务
                    mainService.rgvCompleteWrkMastSta();
                    /////////////////////////////////////RGV调度/////////////////////////////////////
                } catch (Exception e) {
                    e.printStackTrace();