From 405ebbaa5488fef901a354c162c738e81c58e563 Mon Sep 17 00:00:00 2001
From: zzgtfwq <zzgtfwq>
Date: 星期三, 10 十二月 2025 18:24:26 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/RgvThread.java | 88 ++++++++++++++++++++++++++++++++++---------
1 files changed, 69 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index 6ea0bca..9744012 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -174,7 +174,7 @@
delRgvTask = false;
continue;
}
- Thread.sleep(200L);
+ Thread.sleep(50L);
// 鏋勫缓璁惧鐘舵�佸璞�
RgvProtocol rgvProtocol = RgvStatusCache.getRgvStatus(slave.getId());
@@ -209,6 +209,10 @@
}
OperateResult result0 = siemensNet.Write("DB100.0", (short) 1);
+
+ Thread.sleep(20L);
+
+ OperateResult result00 = siemensNet.Write("DB100.0", (short) 0);
}
} catch (Exception e) {
log.error("RGV鏁版嵁浠诲姟涓嬪彂澶嶄綅绾跨▼寮傚父锛侊紒锛� ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
@@ -286,8 +290,14 @@
continue;
}
RgvRunProtocol rgvRun = RgvRunCache.getRgvRun();
- if (!rgvRun.getRgvNo().equals(slave.getId())){
- continue;
+ if (slave.getId()>2){
+ if (!rgvRun.getRgvNo2().equals(slave.getId())){
+ continue;
+ }
+ } else {
+ if (!rgvRun.getRgvNo().equals(slave.getId())){
+ continue;
+ }
}
try {
Thread.sleep(100);
@@ -295,20 +305,35 @@
// System.out.println(JSON.toJSON(rgvRun));
// 浼戠湢 1 绉�
- if (System.currentTimeMillis() - rgvRun.currentTimeMilliOld > 500L) {
- rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
- } else {
- continue;
+ if (slave.getId()>2){
+ if (System.currentTimeMillis() - rgvRun.currentTimeMilliOld2 > 500L) {
+ rgvRun.currentTimeMilliOld2 = System.currentTimeMillis()+50;
+ } else {
+ continue;
+ }
+ }else {
+ if (System.currentTimeMillis() - rgvRun.currentTimeMilliOld > 500L) {
+ rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
+ } else {
+ continue;
+ }
}
if (!deviceDetection()) {
- rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
- rgvRun.setRgvNo(slave.getOtherId());
+ if (slave.getId()>2){
+ rgvRun.currentTimeMilliOld2 = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo2(slave.getOtherId());
+ } else {
+ rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo(slave.getOtherId());
+ }
RgvRunCache.updateRgvStatus(rgvRun);
if (!errorRgv.equals("鏃�")){
RgvErrCache.updateRgvErr(slave.getId(),errorRgv);
}
continue;
}
+
+ Thread.sleep(50L);
RgvProtocol rgvProtocol = RgvStatusCache.getRgvStatus(slave.getId());
RgvTaskProtocol rgvTaskProtocol = RgvTaskCache.getRgvStatus(slave.getId());
@@ -318,21 +343,36 @@
rgvTaskProtocol = RgvTaskCache.getRgvStatus(slave.getId());
}
if (!rgvProtocol.getStatusType().equals(RgvStatusType.IDLE) || (Math.abs(rgvProtocol.getRgvPos() - rgvProtocol.getRgvPosDestination())>100)){
- rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
- rgvRun.setRgvNo(slave.getOtherId());
+ if (slave.getId()>2){
+ rgvRun.currentTimeMilliOld2 = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo2(slave.getOtherId());
+ } else {
+ rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo(slave.getOtherId());
+ }
RgvRunCache.updateRgvStatus(rgvRun);
continue;
}
if (rgvProtocol.getLoaded() == -1){
- rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
- rgvRun.setRgvNo(slave.getOtherId());
+ if (slave.getId()>2){
+ rgvRun.currentTimeMilliOld2 = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo2(slave.getOtherId());
+ } else {
+ rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo(slave.getOtherId());
+ }
RgvRunCache.updateRgvStatus(rgvRun);
RgvErrCache.updateRgvErr(slave.getId(),"灏忚溅鎺㈢墿鐗╃姸鎬佸紓甯�");
continue;
}
if (rgvTaskProtocol.getAvoid() != 0) {
- rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
- rgvRun.setRgvNo(slave.getOtherId());
+ if (slave.getId()>2){
+ rgvRun.currentTimeMilliOld2 = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo2(slave.getOtherId());
+ } else {
+ rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo(slave.getOtherId());
+ }
RgvRunCache.updateRgvStatus(rgvRun);
continue;
}
@@ -419,8 +459,13 @@
}
}
}
- rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
- rgvRun.setRgvNo(slave.getOtherId());
+ if (slave.getId()>2){
+ rgvRun.currentTimeMilliOld2 = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo2(slave.getOtherId());
+ } else {
+ rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo(slave.getOtherId());
+ }
RgvRunCache.updateRgvStatus(rgvRun);
} catch (Exception e) {
log.error("RGV浠诲姟涓嬪彂绾跨▼寮傚父锛侊紒锛� ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
@@ -431,8 +476,13 @@
// log.error("e2:"+e2.getMessage());
}
rgvRun = RgvRunCache.getRgvRun();
- rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
- rgvRun.setRgvNo(slave.getOtherId());
+ if (slave.getId()>2){
+ rgvRun.currentTimeMilliOld2 = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo2(slave.getOtherId());
+ } else {
+ rgvRun.currentTimeMilliOld = System.currentTimeMillis()+50;
+ rgvRun.setRgvNo(slave.getOtherId());
+ }
RgvRunCache.updateRgvStatus(rgvRun);
continue;
// e.printStackTrace();
--
Gitblit v1.9.1