自动化立体仓库 - WCS系统
*
lsh
2025-04-08 a5e366c9143ff99bc5f707048a73f93a8d444bb8
src/main/java/com/zy/core/thread/RgvThread.java
@@ -107,7 +107,7 @@
                            commandAvoidanceXY = new RgvCommand();
                        }
                        commandAvoidanceXY.setRgvNo(slave.getId()); // RGV编号
                        commandAvoidanceXY.setTaskNo1((short) 9999); // 工作号
                        commandAvoidanceXY.setTaskNo1((short) 32222); // 工作号
                        commandAvoidanceXY.setAckFinish1((short) 1);  // 任务完成确认位
                        commandAvoidanceXY.setTaskMode1(RgvTaskModeType.X_MOVE); // 任务模式
                        commandAvoidanceXY.setSourceStaNo1((short)0);     // 源站
@@ -185,6 +185,7 @@
                    rgvProtocol = new RgvProtocol();
                    rgvProtocol.setRgvNo(slave.getId());
                }
                rgvProtocol.setRgvNo(slave.getId());
                rgvProtocol.setMode(siemensNet.getByteTransform().TransInt16(result.Content, 0));
                rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 2));
                rgvProtocol.setTaskNo1(siemensNet.getByteTransform().TransInt16(result.Content, 4));
@@ -238,6 +239,7 @@
                    BasRgv basRgv = new BasRgv();
                    basRgv.setRgvNo(slave.getId());
                    basRgv.setRgvSts((int)rgvProtocol.getMode());
                    basRgv.setLoaded2(rgvProtocol.getLoaded2().intValue());
                    if (!basRgvService.updateById(rgvProtocol.toSqlModel(basRgv))){
                        log.error("RGV plc数据库更新失败 ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
                    }
@@ -370,8 +372,8 @@
        if (result != null && result.IsSuccess) {
            Thread.sleep(200);
            this.readStatus();
            log.info("RGV 工位1命令下发[id:{}] >>>>> {}", slave.getId(), JSON.toJSON(command));
            OutputQueue.RGV.offer(MessageFormat.format("【{0}】[id:{1}] >>>>> 工位1命令下发: {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSON(command)));
            log.info("RGV 工位1命令下发[id:{}] >>>>> {}", slave.getId(), JSON.toJSONString(command));
            OutputQueue.RGV.offer(MessageFormat.format("【{0}】[id:{1}] >>>>> 工位1命令下发: {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSONString(command)));
            return true;
        } else {
            OutputQueue.RGV.offer(MessageFormat.format("【{0}】写入RGV plc工位1数据失败 ===>> [id:{1}] [ip:{2}] [port:{3}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));
@@ -429,8 +431,8 @@
        if (result != null && result.IsSuccess) {
            Thread.sleep(200);
            this.readStatus();
            log.info("RGV 工位2命令下发[id:{}] >>>>> {}", slave.getId(), JSON.toJSON(command));
            OutputQueue.RGV.offer(MessageFormat.format("【{0}】[id:{1}] >>>>> 工位2命令下发: {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSON(command)));
            log.info("RGV 工位2命令下发[id:{}] >>>>> {}", slave.getId(), JSON.toJSONString(command));
            OutputQueue.RGV.offer(MessageFormat.format("【{0}】[id:{1}] >>>>> 工位2命令下发: {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSONString(command)));
            return true;
        } else {
            OutputQueue.RGV.offer(MessageFormat.format("【{0}】写入RGV plc工位2数据失败 ===>> [id:{1}] [ip:{2}] [port:{3}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));