From 10ac21082bbbe92dabecdda1a98fe4539f746037 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 14 四月 2026 09:10:38 +0800
Subject: [PATCH] 1
---
zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/service/Snap7Service.java | 19 ++++++++-----------
1 files changed, 8 insertions(+), 11 deletions(-)
diff --git a/zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/service/Snap7Service.java b/zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/service/Snap7Service.java
index 563287d..ccb551a 100644
--- a/zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/service/Snap7Service.java
+++ b/zy-asc-conveyor/src/main/java/com/zy/acs/conveyor/core/service/Snap7Service.java
@@ -38,6 +38,7 @@
public void read(StaProtocol staProtocol, SiemensS7Net siemensS7Net) {
}
+
public void writeSafe(StaProtocol staProtocol) throws InterruptedException {
if (staProtocol == null) {
log.warn("鍐欏叆鏁版嵁涓虹┖锛岃烦杩� [id:{}]", JSON.toJSONString(staProtocol));
@@ -63,22 +64,22 @@
}
SafeSignal safeSignal = staProtocol.getSafeSignal();
- int baseOffset = 0;
+ int baseOffset = 0;
short[] array = new short[6];
array[0] = (short) 1;
array[1] = (short) 0;
array[2] = (short) 0;
array[5] = (short) 0;
- if (safeSignal.getFlag()){
+ if (safeSignal.getFlag()) {
array[3] = (short) 0;
- array[4] =safeSignal.getValue();
- baseOffset = SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getOffset() + safeSignal.getIndex() * SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getByteLength();
- }else {
+ array[4] = safeSignal.getValue();
+ baseOffset = SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getOffset() + safeSignal.getIndex() * SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getByteLength();
+ } else {
array[3] = safeSignal.getValue();
array[4] = (short) 0;
- baseOffset = SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getOffset() +2 + safeSignal.getIndex() * SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getByteLength();
+ baseOffset = SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getOffset() + 2 + safeSignal.getIndex() * SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getByteLength();
}
- String flagAddr = TaskField.TASK_NUMBER.getAddressPattern() + PlcConstant.ADDRESS_CONCATENATION
+ String flagAddr = SafeSignalField.SAFE_SIGNAL_TO_CONVEYOR.getAddressPattern() + PlcConstant.ADDRESS_CONCATENATION
+ baseOffset;
// 浠诲姟涓嬪彂閲嶈瘯鏈哄埗
@@ -103,9 +104,6 @@
staProtocol.getPlcId(), staProtocol.getSiteId(), writeCount,
writeResult.Message);
- if (writeCount < WRITE_RETRY_MAX) {
- Thread.sleep(WRITE_RETRY_INTERVAL_MS);
- }
}
if (!success) {
@@ -114,7 +112,6 @@
OutputQueue.DEVP.offer(errorMsg);
News.error("SiemensDevp - 4 - 鍐欏叆瀹夊叏淇″彿杈撻�佺嚎绔欑偣鏁版嵁澶辫触銆傝緭閫佺嚎plc缂栧彿={}锛岀珯鐐规暟鎹�={}",
staProtocol.getPlcId(), JSON.toJSON(staProtocol));
- log.error(errorMsg);
}
}
--
Gitblit v1.9.1