From 030bbab9669c582af6c613dabfbebea4f83f57c9 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期日, 20 十月 2024 13:58:52 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/core/thread/RgvThread.java | 52 ++++++++++++++++++++++++++++------------------------
1 files changed, 28 insertions(+), 24 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index 7a15cab..c4edc97 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -11,6 +11,7 @@
import com.zy.asrs.entity.BasRgvOpt;
import com.zy.asrs.service.BasRgvOptService;
import com.zy.asrs.service.BasRgvService;
+import com.zy.asrs.utils.NumUtils;
import com.zy.asrs.utils.RouteUtils;
import com.zy.core.ThreadHandler;
import com.zy.core.cache.MessageQueue;
@@ -71,6 +72,20 @@
//宸ヤ綅1鍐欏叆鏁版嵁
case 2:
write((RgvCommand) task.getData());
+ break;
+ // 澶嶄綅
+ case 3:
+ RgvCommand command = (RgvCommand) task.getData();
+ if (null == command) {
+ command = new RgvCommand();
+ }
+ command.setRgvNo(slave.getId()); // RGV缂栧彿
+ command.setTaskNo1((short) 0); // 宸ヤ綔鍙�
+ command.setAckFinish1((short) 1); // 浠诲姟瀹屾垚纭浣�
+ command.setTaskMode1(RgvTaskModeType.NONE); // 浠诲姟妯″紡
+ command.setSourceStaNo1((short)0); // 婧愮珯
+ command.setDestinationStaNo1((short)0); // 鐩爣绔�
+ write(command);
break;
default:
break;
@@ -145,20 +160,8 @@
rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 12));
rgvProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 14));
rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransUInt32(result.Content, 16));
- rgvProtocol.setRgvPos(slave.getId().longValue()*100000);
+// rgvProtocol.setRgvPos((long)NumUtils.GetRandomIntInRange(1737000));
OutputQueue.RGV.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
-
- // 宸ヤ綅1澶嶄綅淇″彿
- if (rgvProtocol.getStatusType1().equals(RgvStatusType.WAITING)
- || rgvProtocol.getStatusType1().equals(RgvStatusType.FETCHWAITING)) {
- if (resetFlag1) {
- RgvCommand rgvCommand = new RgvCommand();
- rgvCommand.setAckFinish1((short)1);
- if (write(rgvCommand)) {
- resetFlag1 = false;
- }
- }
- }
try {
// 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴�
@@ -196,23 +199,24 @@
return false;
}
-// siemensNet.Write("DB100.20", command.getCommand());
+ siemensNet.Write("DB24.10.0", false);
+ siemensNet.Write("DB24.10.1", false);
command.setRgvNo(slave.getId());
short[] array = new short[5];
- array[0] = command.getAckFinish1();
- array[1] = command.getTaskNo1();
- array[2] = command.getTaskMode1();//浠诲姟妯″紡
- array[3] = command.getSourceStaNo1();
- array[4] = command.getDestinationStaNo1();
-// siemensNet.Write("DB100.20", 0);
+ array[0] = command.getRgvNo().shortValue();
+ array[1] = command.getSourceStaNo1();
+ array[2] = command.getDestinationStaNo1();
+ array[3] = command.getTaskMode1();//浠诲姟妯″紡
+ array[4] = command.getTaskNo1();
- OperateResult result = siemensNet.Write("DB100.0", array);
+ OperateResult result = siemensNet.Write("DB24.0", array);
- if (command.getAckFinish1() == 0) {
- short commandFinish = 1; //宸ヤ綅1浠诲姟鍐欏叆
+ if (command.getAckFinish1().equals((short)0)) {
Thread.sleep(100L);
- result = siemensNet.Write("DB100.20", commandFinish);
+ result = siemensNet.Write("DB24.10.0", true);
+ } else {
+ siemensNet.Write("DB24.10.1", true);
}
try {
--
Gitblit v1.9.1