自动化立体仓库 - WCS系统
Junjie
2023-10-19 191f08b7a74c461d1914652aed737888967a69f1
src/main/java/com/zy/core/thread/SteThread.java
@@ -179,13 +179,13 @@
                steProtocol.setCrnStopRun(siemensS7Net.getByteTransform().TransInt16(result.Content, 38));
                steProtocol.setCrnStopFork(siemensS7Net.getByteTransform().TransInt16(result.Content, 40));
                steProtocol.setCrnAllowRun(siemensS7Net.getByteTransform().TransInt16(result.Content, 42));
//                steProtocol.setCrnAllowRun(siemensS7Net.getByteTransform().TransInt16(result.Content, 44));
                SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
                if (!devpThread.charge0 || devpThread.charge1){
                    steProtocol.setChargeStatus((short)1);
                }else {
                    steProtocol.setChargeStatus((short)0);
                }
                OutputQueue.STE.offer(MessageFormat.format("【{0}】[id:{1}] <<<<< 实时数据更新成功",DateUtils.convert(new Date()), slave.getId()));
@@ -220,6 +220,9 @@
                    steProtocol.setForcedTravel(status[68]);
                    steProtocol.setDemoMode(status[69]);
                    steProtocol.setBrushConnect(status[70]);
//                    if (status[70]){
//                        steProtocol.setChargeStatus((short)1);
//                    }
                    steProtocol.setTaskManualForbid(status[71]);
                    steProtocol.setOnlineManualForbid(status[72]);
                    steProtocol.setDevpEmergency(status[73]);
@@ -298,7 +301,7 @@
        }
        //判断小车是否在充电
        SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
        if (!devpThread.charge0 || devpThread.charge1){
        if (devpThread.charge1){
            // led 异常显示
            LedThread ledThread1 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
            LedThread ledThread2 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
@@ -310,6 +313,18 @@
            }
            News.error("穿梭车正在充电");
            return false;
        }else if (!devpThread.charge0){
            // led 异常显示
            LedThread ledThread1 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
            LedThread ledThread2 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
            LedThread ledThread3 = (LedThread) SlaveConnection.get(SlaveType.Led, 1);
            if (ledThread1 != null && ledThread2 != null && ledThread3 != null) {
                MessageQueue.offer(SlaveType.Led, 1, new Task(3, "穿梭车可能在离线充电,检查电控柜穿梭车是否充电桩在线"));
                MessageQueue.offer(SlaveType.Led, 2, new Task(3, "穿梭车可能在离线充电,检查电控柜穿梭车是否充电桩在线"));
                MessageQueue.offer(SlaveType.Led, 3, new Task(3, "穿梭车可能在离线充电,检查电控柜穿梭车是否充电桩在线"));
            }
            News.error("穿梭车可能在离线充电,检查电控柜穿梭车是否充电桩在线");
            return false;
        }
        command.setSteNo(slave.getId());
        OperateResult result = null;