#
lty
2025-09-25 8478a159d79bf9ca5da04ab18562f2d7cdddb05c
src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -261,8 +261,9 @@
        ArrayList<Integer> staNos = getStaNo();
        int staNoSize = staNos.size();
        OperateResultExOne<byte[]> result = null;
        OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB100.0", (short) (2764));
        OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.0", (short) (1264));
        OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB100.0", (short) (2764));//1001-1028
        OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.0", (short) (1264));//1029-1037
        OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB104.0", (short) (1264));//1042-1053
        if (result1.IsSuccess && result2.IsSuccess) {
            for (int i = 0; i < staNoSize; i++) {
@@ -275,8 +276,10 @@
                }
                if(siteId < 1029){
                    result = result1;
                }else{
                }else if(siteId < 1042){
                    result = result2;
                }else if(siteId < 1054){
                    result = result3;
                }
                // 获取该站点对应的偏移量
                Integer offset = siteOffsetMap.get(siteId);
@@ -294,13 +297,9 @@
                boolean[] status1 = siemensS7Net.getByteTransform().TransBool(result.Content, offset + offset3 - 4, 3);
                staProtocol.setLoading(!status1[0]);  // 有物
                if(staProtocol.isLoading()){
                    staProtocol.setInEnable(false); // 可入
                    staProtocol.setOutEnable(false);// 可出
                }else{
                    staProtocol.setInEnable(true); // 可入
                    staProtocol.setOutEnable(true);// 可出
                }
                staProtocol.setInEnable(true); // 可入
                staProtocol.setOutEnable(true);// 可出
//                staProtocol.setInEnable(status1[1]); // 可入
//                staProtocol.setOutEnable(status1[3]);// 可出
//                staProtocol.setEmptyMk(status[4]);  // 空板信号
@@ -528,11 +527,11 @@
            if(siteId > 1028){
                write = siemensS7Net.Write("DB101." + (offset + offset2), staProtocol.getWorkNo());    // 工作号
                Thread.sleep(200);
                write1 = siemensS7Net.Write("DB101." + (offset + offset2 + 12), staProtocol.getStaNo());    // 目标站
                write1 = siemensS7Net.Write("DB101." + (offset + offset2 + 12), staProtocol.getStaNo().intValue());    // 目标站
            }else{
                write = siemensS7Net.Write("DB100." + (offset + offset2), staProtocol.getWorkNo());    // 工作号
                Thread.sleep(200);
                write1 = siemensS7Net.Write("DB100." + (offset + offset2 + 12), staProtocol.getStaNo());    // 目标站
                write1 = siemensS7Net.Write("DB100." + (offset + offset2 + 12), staProtocol.getStaNo().intValue());    // 目标站
            }
            if(write.IsSuccess && write1.IsSuccess){
                log.error("写入输送线命令成功。输送线plc编号={},站点数据={},写入次数={}", slave.getId(), JSON.toJSON(staProtocol), writeCount);