#
whycq
2025-05-28 78489da7e2185f53faaec9356fa1a8997cedab70
src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -184,6 +184,8 @@
                // 复位信号
                if (crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) {
                    News.error("-------------------------------------------第一步、[堆垛机号:{}, 工作号:{}, 载货台信号:{}]==>> 状态为10,等待确认!!",
                            slave.getId(),crnProtocol.getTaskNo(), crnProtocol.getLoaded()==1 ? "有物" : "无物");
                    if (resetFlag) {
                        CrnCommand crnCommand = new CrnCommand();
                        crnCommand.setAckFinish((short)1);
@@ -280,8 +282,12 @@
        News.info("堆垛机命令下发[id:{}] >>>>> {}", slave.getId(), array);
        if(!result.IsSuccess){
            News.error("写入堆垛机plc数据失败,重新添加任务到队列 ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
            MessageQueue.offer(SlaveType.Crn, slave.getId(), new Task(2, command));
//            News.error("写入堆垛机plc数据失败,重新添加任务到队列 ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
//            MessageQueue.offer(SlaveType.Crn, slave.getId(), new Task(2, command));
            if(!resetFlag){
                News.error("堆垛机命令回读失败后,重新添加任务到队列1 ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
                MessageQueue.offer(SlaveType.Crn, slave.getId(), new Task(2, command));
            }
            Thread.sleep(100);
            readStatus();
            return false;
@@ -315,8 +321,10 @@
                            News.error("日志打印失败:===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
                        }
                    }
                    News.error("堆垛机命令回读失败后,重新添加任务到队列 ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
                    MessageQueue.offer(SlaveType.Crn, slave.getId(), new Task(2, command));
                    if(!resetFlag){
                        News.error("堆垛机命令回读失败后,重新添加任务到队列2 ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
                        MessageQueue.offer(SlaveType.Crn, slave.getId(), new Task(2, command));
                    }
                    Thread.sleep(100);
                    readStatus();
                    return false;