From 882d2ee2d9a35bf02e5fbb11a79c3abffe9cfe61 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期四, 21 三月 2024 16:43:38 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/SiemensRgvThread.java | 93 ++++++++++++++++++++--------------------------
1 files changed, 40 insertions(+), 53 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/SiemensRgvThread.java b/src/main/java/com/zy/core/thread/SiemensRgvThread.java
index f77c5a8..9a49df5 100644
--- a/src/main/java/com/zy/core/thread/SiemensRgvThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensRgvThread.java
@@ -67,9 +67,9 @@
readStatus();
break;
// // 宸ヤ綅1銆�2鍐欏叆鏁版嵁
-// case 2:
-// write((RgvCommand) task.getData());
-// break;
+ case 2:
+ write((RgvCommand) task.getData());
+ break;
//宸ヤ綅1鍐欏叆鏁版嵁
case 4:
write1((RgvCommand) task.getData());
@@ -137,7 +137,7 @@
rgvProtocol.setStatus1((short)-1);
rgvProtocol.setLoaded1((short)0);
rgvProtocol.setWalkPos((short)0);
- rgvProtocol.setRgvPos((short)0);
+ rgvProtocol.setRgvPos(0);
// rgvProtocol.setTaskNo2((short)0);
// rgvProtocol.setStatus2((short)-1);
// rgvProtocol.setLoaded2((short)0);
@@ -172,46 +172,35 @@
*/
private void readStatus(){
try {
- OperateResultExOne<byte[]> result = siemensNet.Read("DB101.0", (short) 30);
+ OperateResultExOne<byte[]> result = siemensNet.Read("DB100.0", (short) 30);
if (result.IsSuccess) {
if (null == rgvProtocol || rgvProtocol.getRgvNo() == null) {
rgvProtocol = new RgvProtocol();
rgvProtocol.setRgvNo(slave.getId());
}
rgvProtocol.setMode(siemensNet.getByteTransform().TransInt16(result.Content, 0));
- rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 2));
- rgvProtocol.setTaskNo1(siemensNet.getByteTransform().TransInt16(result.Content, 4));
- rgvProtocol.setStatus1(siemensNet.getByteTransform().TransInt16(result.Content, 6));
- rgvProtocol.setLoaded1(siemensNet.getByteTransform().TransInt16(result.Content, 8));
- rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransInt16(result.Content, 10));
- rgvProtocol.setWalkPos(siemensNet.getByteTransform().TransInt16(result.Content, 12));
- rgvProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 14));
-// rgvProtocol.setStatus2(siemensNet.getByteTransform().TransInt16(result.Content, 16));
- rgvProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 18));
-// rgvProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 20));
- rgvProtocol.setxDistance(siemensNet.getByteTransform().TransInt16(result.Content, 22));
-// rgvProtocol.setTemp1(siemensNet.getByteTransform().TransInt16(result.Content, 24));
- rgvProtocol.setTemp2(siemensNet.getByteTransform().TransInt16(result.Content, 26));
-// rgvProtocol.setTemp3(siemensNet.getByteTransform().TransInt16(result.Content, 28));
-// rgvProtocol.setTemp4(siemensNet.getByteTransform().TransInt16(result.Content, 30));
-// rgvProtocol.setTemp5(siemensNet.getByteTransform().TransInt16(result.Content, 32));
-// rgvProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 28));
-// rgvProtocol.setxDistance(siemensNet.getByteTransform().TransInt16(result.Content, 40));
-// rgvProtocol.setxDuration(siemensNet.getByteTransform().TransInt16(result.Content, 48));
+ rgvProtocol.setSouSta(siemensNet.getByteTransform().TransInt16(result.Content, 2));
+ rgvProtocol.setEndSta(siemensNet.getByteTransform().TransInt16(result.Content, 4));
+ rgvProtocol.setTaskNo1(siemensNet.getByteTransform().TransInt16(result.Content, 6));
+ rgvProtocol.setAlarm(siemensNet.getByteTransform().TransInt16(result.Content, 8));
+ rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 10));
+ rgvProtocol.setSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 12));
+ rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransInt32(result.Content, 14));
+
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;
- }
- }
- }
+// 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;
+// }
+// }
+// }
// 宸ヤ綅2澶嶄綅淇″彿
// if (rgvProtocol.getStatusType2().equals(RgvStatusType.WAITING)
@@ -260,25 +249,23 @@
return false;
}
// convertRow(command);
- command.setRgvNo(slave.getId());
- short[] array = new short[11];
- array[0] = command.getAckFinish1();
- array[1] = command.getTaskNo1();
- array[2] = command.getTaskMode1();
- array[3] = command.getSourceStaNo1();
- array[4] = command.getDestinationStaNo1();
-// array[0] = command.getAckFinish1();
-// array[1] = command.getTaskNo1();
-// array[2] = command.getTaskMode1();
-// array[3] = command.getSourceStaNo1();
-// array[4] = command.getDestinationStaNo1();
-// array[5] = command.getAckFinish2();
-// array[6] = command.getTaskNo2();
-// array[7] = command.getTaskMode2();
-// array[8] = command.getSourceStaNo2();
-// array[9] = command.getDestinationStaNo2();
-// array[10] = command.getCommand();
- OperateResult result = siemensNet.Write("DB100.0", array);
+ OperateResult result = new OperateResult();
+ boolean[] array = new boolean[1];
+ array[0] = true;
+ if (command.isAuto()){
+ result = siemensNet.Write("DB99.0.1", array);
+ } else if (command.isRestoreTask()) {
+ result = siemensNet.Write("DB99.0.2", array);
+ }
+ else if (command.isCompTask()) {
+ result = siemensNet.Write("DB99.0.3", array);
+ }
+ else if (command.isStop()) {
+ result = siemensNet.Write("DB99.0.4", array);
+ }
+ else if (command.isReset()) {
+ result = siemensNet.Write("DB99.0.5", array);
+ }
// if (command.getAckFinish1() == 0 && command.getAckFinish2() == 0) {
// short commandFinish = 3; //宸ヤ綅1銆�2浠诲姟鍚屾椂鍐欏叆
--
Gitblit v1.9.1