1
zhangchao
2024-10-25 ee85eb3d354c2012b6975d94d0668300d9b4050e
1
2个文件已修改
18 ■■■■ 已修改文件
src/main/java/com/zy/core/thread/SiemensDevpThread.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/logback-spring.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -350,19 +350,19 @@
        boolean staNoFlag = false;
        do {
            if (!wrkNoFlag) {
                Thread.sleep(180);
                write = siemensS7Net.Write("DB100." + index * 6, (int) staProtocol.getWorkNo());    // 工作号
                Thread.sleep(600);
                if (write.IsSuccess) {
                    OperateResultExOne<byte[]> readResult = siemensS7Net.Read("DB100." + index * 6, (short) 4);
                    if (readResult.IsSuccess) {
                        short workNo = (short) siemensS7Net.getByteTransform().TransInt32(readResult.Content, 0);
                        if (staProtocol.getWorkNo().equals(workNo)) {
                            //任务命令写入成功
                            log.info("写入工作号命令后返回成功,并且回读成功。堆垛机plc编号={},{},写入次数={}", slave.getId(), JSON.toJSON(staProtocol), writeCount);
                            log.info("写入工作号命令后返回成功,并且回读成功。堆垛机plc编号={},{},{},写入次数={}", slave.getId(), staProtocol.getWorkNo(), workNo, writeCount);
                            wrkNoFlag = true;
                        } else {//返回结果是成功了,但是真实值不相同
                            writeCount++;
                            log.error("写入工作号命令后返回成功,但是读取任务值不一致。堆垛机plc编号={},{},写入次数={}", slave.getId(), JSON.toJSON(staProtocol), writeCount);
                            log.error("写入工作号命令后返回成功,但是读取任务值不一致。堆垛机plc编号={},{},{},写入次数={}", slave.getId(), staProtocol.getWorkNo(), workNo, writeCount);
                        }
                    } else {
                        writeCount++;
@@ -374,19 +374,19 @@
                }
            }
            if (!staNoFlag) {
                Thread.sleep(180);
                write1 = siemensS7Net.Write("DB100." + (index * 6 + 4), staProtocol.getStaNo());    // 目标站
                Thread.sleep(600);
                if (write1.IsSuccess) {
                    OperateResultExOne<byte[]> readResult1 = siemensS7Net.Read("DB100." + (index * 6 + 4), (short) 2);
                    if (readResult1.IsSuccess) {
                        short staNo = siemensS7Net.getByteTransform().TransInt16(readResult1.Content, 0);
                        if (staProtocol.getStaNo().equals(staNo)) {
                            //任务命令写入成功
                            log.info("写入目标站命令后返回成功,并且回读成功。堆垛机plc编号={},{},写入次数={}", slave.getId(), JSON.toJSON(staProtocol), writeCount);
                            log.info("写入目标站命令后返回成功,并且回读成功。堆垛机plc编号={},{},{},写入次数={}", slave.getId(), staProtocol.getStaNo(), staNo, writeCount);
                            staNoFlag = true;
                        } else {//返回结果是成功了,但是真实值不相同
                            writeCount++;
                            log.error("写入目标站命令后返回成功,但是读取任务值不一致。堆垛机plc编号={},{},写入次数={}", slave.getId(), JSON.toJSON(staProtocol), writeCount);
                            log.error("写入目标站命令后返回成功,但是读取任务值不一致。堆垛机plc编号={},{},{},写入次数={}", slave.getId(), staProtocol.getStaNo(), staNo, writeCount);
                        }
                    } else {
                        writeCount++;
@@ -400,7 +400,7 @@
            if (wrkNoFlag && staNoFlag) {
                break;
            }
        } while (writeCount < 18);
        } while (writeCount < 40);
        if (!write.IsSuccess) {
            staProtocol = station.get(staProtocol.getSiteId());
src/main/resources/logback-spring.xml
@@ -26,7 +26,7 @@
    <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${LOG_PATH}/${datetime}/info.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${LOG_PATH}/info_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
            <FileNamePattern>${LOG_PATH}/${datetime}/info_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
            <maxHistory>3600</maxHistory>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>10MB</maxFileSize>
@@ -45,7 +45,7 @@
        </filter>
        <file>${LOG_PATH}/${datetime}/error.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${LOG_PATH}/error_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
            <FileNamePattern>${LOG_PATH}/${datetime}/error_%d{yyyy-MM-dd}.%i.log</FileNamePattern>
            <maxHistory>3600</maxHistory>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>10MB</maxFileSize>