From ab8d3b72f79b835ea3d7e630839b1bc6e249b8a5 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期四, 05 六月 2025 16:55:16 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/core/thread/RgvThread.java | 71 +++++++++++++++++++++++++----------
1 files changed, 51 insertions(+), 20 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index ba56b5f..892093a 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -84,6 +84,14 @@
private void taskIssued() {
while (true) {
try {
+ if(!connectRgv){
+ try {
+ Thread.sleep(1000L);
+ } catch (Exception e){
+
+ }
+ continue;
+ }
int step = 1;
Task task = MessageQueue.poll(SlaveType.Rgv, slave.getId());
if (task != null) {
@@ -111,6 +119,20 @@
command.setSourceStaNo1((short)0); // 婧愮珯
command.setDestinationStaNo1((short)0); // 鐩爣绔�
write3(command);
+ break;
+ // 澶嶄綅
+ case 4:
+ RgvCommand command4 = (RgvCommand) task.getData();
+ if (null == command4) {
+ command4 = new RgvCommand();
+ }
+ command4.setRgvNo(slave.getId()); // RGV缂栧彿
+ command4.setTaskNo1((short) 0); // 宸ヤ綔鍙�
+ command4.setAckFinish1((short) 1); // 浠诲姟瀹屾垚纭浣�
+ command4.setTaskMode1(RgvTaskModeType.X_MOVE); // 浠诲姟妯″紡
+ command4.setSourceStaNo1((short)0); // 婧愮珯
+ command4.setDestinationStaNo1((short)0); // 鐩爣绔�
+ write3(command4);
break;
default:
break;
@@ -148,6 +170,15 @@
private void readStatusRgv() {
while (true) {
try {
+ if(!connectRgv){
+ try {
+ Thread.sleep(1000L);
+ } catch (Exception e){
+
+ }
+ initRgv();
+ continue;
+ }
Thread.sleep(40);
readStatus();
@@ -215,7 +246,7 @@
OperateResultExOne<byte[]> result = siemensNet.Read("DB100.0", (short) 20);
OperateResultExOne<byte[]> resultV = siemensNet.Read("DB20.16", (short) 2);
OperateResultExOne<byte[]> resultE = siemensNet.Read("DB20.26", (short) 2);
- if (result.IsSuccess) {
+ if (result.IsSuccess && resultV.IsSuccess && resultE.IsSuccess) {
if (null == rgvProtocol) {
rgvProtocol = new RgvProtocol();
rgvProtocol.setRgvNo(slave.getId());
@@ -288,7 +319,7 @@
if (command.getAckFinish1().equals((short)0)) {
// Thread.sleep(100L);
siemensNet.Write("DB24.10.7", command.getRgvSome() == 1);
- Thread.sleep(100L);
+ Thread.sleep(20L);
result = siemensNet.Write("DB24.10.0", true);
} else {
siemensNet.Write("DB24.10.1", true);
@@ -315,8 +346,8 @@
} catch (Exception ignore) {}
if (result != null && result.IsSuccess) {
- Thread.sleep(200);
- this.readStatus();
+// Thread.sleep(200);
+// this.readStatus();
log.info("RGV 宸ヤ綅1鍛戒护涓嬪彂[id:{}] >>>>> {}", slave.getId(), JSON.toJSONString(command));
OutputQueue.RGV.offer(MessageFormat.format("銆恵0}銆慬id:{1}] >>>>> 宸ヤ綅1鍛戒护涓嬪彂锛� {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSONString(command)));
return true;
@@ -346,7 +377,7 @@
// OperateResult result = siemensNet.Write("DB24.0", array);
OperateResult result = null;
if (command.getAckFinish1().equals((short)0)) {
- Thread.sleep(100L);
+ Thread.sleep(20L);
result = siemensNet.Write("DB24.10.0", true);
} else {
siemensNet.Write("DB24.10.1", true);
@@ -373,8 +404,8 @@
} catch (Exception ignore) {}
if (result != null && result.IsSuccess) {
- Thread.sleep(200);
- this.readStatus();
+// Thread.sleep(200);
+// this.readStatus();
log.info("RGV 宸ヤ綅1鍛戒护涓嬪彂[id:{}] >>>>> {}", slave.getId(), JSON.toJSONString(command));
OutputQueue.RGV.offer(MessageFormat.format("銆恵0}銆慬id:{1}] >>>>> 宸ヤ綅1鍛戒护涓嬪彂锛� {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSONString(command)));
return true;
@@ -393,18 +424,18 @@
/******************************************************************************************/
/**************************************** 娴嬭瘯涓撶敤 *****************************************/
/*****************************************************************************************/
- public static void main(String[] args) throws InterruptedException {
- RgvSlave slave = new RgvSlave();
- slave.setId(1);
- slave.setIp("192.168.6.9");
- slave.setRack(0);
- slave.setSlot(0);
- RgvThread rgvThread = new RgvThread(slave);
- rgvThread.connect();
- rgvThread.readStatus();
- System.out.println(JSON.toJSONString(rgvThread.rgvProtocol));
- Thread.sleep(3000L);
-
- }
+// public static void main(String[] args) throws InterruptedException {
+// RgvSlave slave = new RgvSlave();
+// slave.setId(1);
+// slave.setIp("192.168.6.9");
+// slave.setRack(0);
+// slave.setSlot(0);
+// RgvThread rgvThread = new RgvThread(slave);
+// rgvThread.connect();
+// rgvThread.readStatus();
+// System.out.println(JSON.toJSONString(rgvThread.rgvProtocol));
+// Thread.sleep(3000L);
+//
+// }
}
--
Gitblit v1.9.1