From 8e665b01e41676e31fd57e662d4aa2680137be60 Mon Sep 17 00:00:00 2001
From: tqs <56479841@qq.com>
Date: 星期一, 20 二月 2023 13:21:09 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/domain/vo/SteSensorDataVo.java | 253 +++++++++++++++++++++++++
src/main/java/com/zy/core/thread/SteThread.java | 60 +++++
src/main/java/com/zy/core/model/protocol/SteProtocol.java | 175 ++++++++++++++--
src/main/java/com/zy/asrs/controller/SteController.java | 57 +++++
4 files changed, 514 insertions(+), 31 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/SteController.java b/src/main/java/com/zy/asrs/controller/SteController.java
index ae3b776..caf6d76 100644
--- a/src/main/java/com/zy/asrs/controller/SteController.java
+++ b/src/main/java/com/zy/asrs/controller/SteController.java
@@ -201,6 +201,63 @@
if (steProtocol == null) {
return R.error("璁惧涓嶅湪绾�");
}
+
+ // 绌挎杞﹀紓甯� -----------
+ vo.setLiftErr(steProtocol.isLiftErr());
+ vo.setInFetchErr(steProtocol.isInFetchErr());
+ vo.setOutFetchErr(steProtocol.isOutFetchErr());
+ vo.setAntiErr(steProtocol.isAntiErr());
+ vo.setLiftSwitchErr(steProtocol.isLiftSwitchErr());
+ vo.setTrackErr(steProtocol.isTrackErr());
+ vo.setTimeoutErr(steProtocol.isTimeoutErr());
+ vo.setConnectErr(steProtocol.isConnectErr());
+ vo.setEmergencyErr(steProtocol.isEmergencyErr());
+ vo.setTaskTypeErr(steProtocol.isTaskTypeErr());
+ vo.setTaskNoErr(steProtocol.isTaskNoErr());
+ vo.setNewTaskErr(steProtocol.isNewTaskErr());
+ vo.setErrTaskErr(steProtocol.isErrTaskErr());
+ vo.setStopErr(steProtocol.isStopErr());
+ vo.setOfflineTaskErr(steProtocol.isOfflineTaskErr());
+ vo.setStartTaskErr(steProtocol.isStartTaskErr());
+ vo.setVoltageTaskErr(steProtocol.isVoltageTaskErr());
+ vo.setDevpErr(steProtocol.isDevpErr());
+
+ // 绌挎杞︽彁绀轰俊鎭� ----------------------
+ vo.setOnline(steProtocol.isOnline());
+ vo.setNotOnTrack(steProtocol.isNotOnTrack());
+ vo.setLowVoltage(steProtocol.isLowVoltage());
+ vo.setElectricityLoss(steProtocol.isElectricityLoss());
+ vo.setForcedTravel(steProtocol.isForcedTravel());
+ vo.setDemoMode(steProtocol.isDemoMode());
+ vo.setBrushConnect(steProtocol.isBrushConnect());
+ vo.setTaskManualForbid(steProtocol.isTaskManualForbid());
+ vo.setOnlineManualForbid(steProtocol.isOnlineManualForbid());
+ vo.setDevpEmergency(steProtocol.isDevpEmergency());
+ vo.setTaskInterrupt(steProtocol.isTaskInterrupt());
+ vo.setTaskClear(steProtocol.isTaskClear());
+ vo.setTaskConfirmTimeout(steProtocol.isTaskConfirmTimeout());
+ vo.setTaskWithCharge(steProtocol.isTaskWithCharge());
+
+ // 浠诲姟淇℃伅 ----------------
+ vo.setPakInTask(steProtocol.isPakInTask());
+ vo.setPakOutTask(steProtocol.isPakOutTask());
+ vo.setPakMoveTask(steProtocol.isPakMoveTask());
+ vo.setGoHpTask(steProtocol.isGoHpTask());
+ vo.setGoOHpTask(steProtocol.isGoOHpTask());
+ vo.setGoHpAvoid(steProtocol.isGoHpAvoid());
+ vo.setGoOHpAvoid(steProtocol.isGoOHpAvoid());
+ vo.setPakInEmpty(steProtocol.isPakInEmpty());
+ vo.setPakInFinish(steProtocol.isPakInFinish());
+ vo.setPakOutEmpty(steProtocol.isPakOutEmpty());
+ vo.setPakOutFinish(steProtocol.isPakOutFinish());
+ vo.setGoHpAvoidFinish(steProtocol.isGoHpAvoidFinish());
+ vo.setGoOHpAvoidFinish(steProtocol.isGoOHpAvoidFinish());
+ vo.setGoHpAvoidErr(steProtocol.isGoHpAvoidErr());
+ vo.setGoOHpAvoidErr(steProtocol.isGoOHpAvoidErr());
+
+ // 鐘舵�佷俊鎭� -------------
+ vo.setAutoMode(steProtocol.isAutoMode());
+ vo.setVoltageLow(steProtocol.isVoltageLow());
break;
}
}
diff --git a/src/main/java/com/zy/asrs/domain/vo/SteSensorDataVo.java b/src/main/java/com/zy/asrs/domain/vo/SteSensorDataVo.java
index 23d51bb..de04a0c 100644
--- a/src/main/java/com/zy/asrs/domain/vo/SteSensorDataVo.java
+++ b/src/main/java/com/zy/asrs/domain/vo/SteSensorDataVo.java
@@ -8,8 +8,259 @@
@Data
public class SteSensorDataVo {
- // 绌挎杞﹀彿
+ /**
+ * 绌挎杞﹀彿
+ */
private Integer steNo;
+ // 绌挎杞﹀紓甯� ------------------------------------------------------------------------
+ /**
+ * 0.鍗囬檷瓒呮椂鎶ヨ
+ */
+ private boolean liftErr;
+
+ /**
+ * 2.鍏ュ簱鍙栫┖鎶ヨ
+ */
+ private boolean inFetchErr;
+
+ /**
+ * 3.鍑哄簱鍙栫┖鎶ヨ
+ */
+ private boolean outFetchErr;
+
+ /**
+ * 4.闃叉挒淇濇姢
+ */
+ private boolean antiErr;
+
+ /**
+ * 5.鍗囬檷鎺ヨ繎寮�鍏虫晠闅�
+ */
+ private boolean liftSwitchErr;
+
+ /**
+ * 6.杞ㄩ亾妫�娴嬫姤璀�
+ */
+ private boolean trackErr;
+
+ /**
+ * 7.璁惧杩愯瓒呮椂鎶ヨ
+ */
+ private boolean timeoutErr;
+
+ /**
+ * 8.閫氫俊閿欒鎶ヨ
+ */
+ private boolean connectErr;
+
+ /**
+ * 9.璁惧鎬ュ仠
+ */
+ private boolean emergencyErr;
+
+ /**
+ * 10.浠诲姟绫诲瀷缂哄け
+ */
+ private boolean taskTypeErr;
+
+ /**
+ * 11.浠诲姟鍙风己澶�
+ */
+ private boolean taskNoErr;
+
+ /**
+ * 12.杩愯涓湁鏂颁换鍔�
+ */
+ private boolean newTaskErr;
+
+ /**
+ * 13.鏁呴殰涓湁浠诲姟
+ */
+ private boolean errTaskErr;
+
+ /**
+ * 14.杩愯涓仠姝�
+ */
+ private boolean stopErr;
+
+ /**
+ * 15.鑴辨満妯″紡涓嬫湁浠诲姟
+ */
+ private boolean offlineTaskErr;
+
+ /**
+ * 16.鏉′欢鏈弧瓒冲惎鍔ㄤ换鍔�
+ */
+ private boolean startTaskErr;
+
+ /**
+ * 17.浣庣數鍘嬫椂鏈変换鍔�
+ */
+ private boolean voltageTaskErr;
+
+ /**
+ * 63.璁惧鏁呴殰鏍囧織浣�
+ */
+ private boolean devpErr;
+ // 绌挎杞﹀紓甯� ------------------------------------------------------------------------
+
+ // 绌挎杞︽彁绀轰俊鎭� ------------------------------------------------------------------------
+ /**
+ * 64.鑱旀満鐘舵��
+ */
+ private boolean online;
+
+ /**
+ * 65.涓嶅湪杞ㄩ亾涓�
+ */
+ private boolean notOnTrack;
+
+ /**
+ * 66.浣庣數閲忔彁閱�
+ */
+ private boolean lowVoltage;
+
+ /**
+ * 67.浜忕數涓�
+ */
+ private boolean electricityLoss;
+
+ /**
+ * 68.寮哄埗琛岃蛋鍚姩
+ */
+ private boolean forcedTravel;
+
+ /**
+ * 69.婕旂ず妯″紡寮�鍚�
+ */
+ private boolean demoMode;
+
+ /**
+ * 70.鍏呯數鍒峰凡鎺ラ��
+ */
+ private boolean brushConnect;
+
+ /**
+ * 71.浠诲姟涓姝㈡墜鍔�
+ */
+ private boolean taskManualForbid;
+
+ /**
+ * 72.鑱旀満涓姝㈡墜鍔�
+ */
+ private boolean onlineManualForbid;
+
+ /**
+ * 73.璁惧鎬ュ仠涓�
+ */
+ private boolean devpEmergency;
+
+ /**
+ * 74.浠诲姟涓柇涓�
+ */
+ private boolean taskInterrupt;
+
+ /**
+ * 75.浠诲姟宸叉竻闄�
+ */
+ private boolean taskClear;
+
+ /**
+ * 76.浠诲姟纭宸茶秴鏃�
+ */
+ private boolean taskConfirmTimeout;
+
+ /**
+ * 77.鍏呯數涓湁浠诲姟
+ */
+ private boolean taskWithCharge;
+
+ // 浠诲姟淇℃伅 ---------------------------------------------------------
+ /**
+ * 96.鍏ュ簱浠诲姟涓�
+ */
+ private boolean pakInTask;
+
+ /**
+ * 97. 鍑哄簱浠诲姟涓�
+ */
+ private boolean pakOutTask;
+
+ /**
+ * 98. 绉诲簱浠诲姟涓�
+ */
+ private boolean pakMoveTask;
+
+ /**
+ * 99. 鍥炲師鐐逛换鍔′腑
+ */
+ private boolean goHpTask;
+
+ /**
+ * 100. 鍘诲弽鍘熺偣浠诲姟涓�
+ */
+ private boolean goOHpTask;
+
+ /**
+ * 101. 鍘诲師鐐归伩璁╀綅
+ */
+ private boolean goHpAvoid;
+
+ /**
+ * 102. 鍘诲弽鍘熺偣閬胯浣�
+ */
+ private boolean goOHpAvoid;
+
+ /**
+ * 104. 鍏ュ簱鍙栫┖缁撴潫
+ */
+ private boolean pakInEmpty;
+
+ /**
+ * 105. 鍏ュ簱姝e父缁撴潫
+ */
+ private boolean pakInFinish;
+
+ /**
+ * 106. 鍑哄簱鍙栫┖缁撴潫
+ */
+ private boolean pakOutEmpty;
+
+ /**
+ * 107. 鍑哄簱姝e父缁撴潫
+ */
+ private boolean pakOutFinish;
+
+ /**
+ * 108. 鍘诲師鐐归伩璁╁畬鎴�
+ */
+ private boolean goHpAvoidFinish;
+
+ /**
+ * 109. 鍘诲弽鍘熺偣閬胯瀹屾垚
+ */
+ private boolean goOHpAvoidFinish;
+
+ /**
+ * 110. 鍘诲師鐐归伩璁╁畬鎴�
+ */
+ private boolean goHpAvoidErr;
+
+ /**
+ * 111. 鍘诲弽鍘熺偣閬胯瀹屾垚
+ */
+ private boolean goOHpAvoidErr;
+
+ // 鐘舵�佷俊鎭� ---------------------------------------------------------
+ /**
+ * 112. 鑱旀満妯″紡
+ */
+ private boolean autoMode;
+
+ /**
+ * 113. 鐢靛帇杩囦綆
+ */
+ private boolean voltageLow;
}
diff --git a/src/main/java/com/zy/core/model/protocol/SteProtocol.java b/src/main/java/com/zy/core/model/protocol/SteProtocol.java
index 10e9009..a7e6571 100644
--- a/src/main/java/com/zy/core/model/protocol/SteProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/SteProtocol.java
@@ -206,136 +206,253 @@
// 绌挎杞﹀紓甯� ------------------------------------------------------------------------
/**
- * 1.鍗囬檷瓒呮椂鎶ヨ
+ * 0.鍗囬檷瓒呮椂鎶ヨ
*/
private boolean liftErr;
/**
- * 3.鍏ュ簱鍙栫┖鎶ヨ
+ * 2.鍏ュ簱鍙栫┖鎶ヨ
*/
private boolean inFetchErr;
/**
- * 4.鍑哄簱鍙栫┖鎶ヨ
+ * 3.鍑哄簱鍙栫┖鎶ヨ
*/
private boolean outFetchErr;
/**
- * 5.闃叉挒淇濇姢
+ * 4.闃叉挒淇濇姢
*/
private boolean antiErr;
/**
- * 6.鍗囬檷鎺ヨ繎寮�鍏虫晠闅�
+ * 5.鍗囬檷鎺ヨ繎寮�鍏虫晠闅�
*/
private boolean liftSwitchErr;
/**
- * 7.杞ㄩ亾妫�娴嬫姤璀�
+ * 6.杞ㄩ亾妫�娴嬫姤璀�
*/
private boolean trackErr;
/**
- * 8.璁惧杩愯瓒呮椂鎶ヨ
+ * 7.璁惧杩愯瓒呮椂鎶ヨ
*/
private boolean timeoutErr;
/**
- * 9.閫氫俊閿欒鎶ヨ
+ * 8.閫氫俊閿欒鎶ヨ
*/
private boolean connectErr;
/**
- * 10.璁惧鎬ュ仠
+ * 9.璁惧鎬ュ仠
*/
private boolean emergencyErr;
/**
- * 11.浠诲姟绫诲瀷缂哄け
+ * 10.浠诲姟绫诲瀷缂哄け
*/
private boolean taskTypeErr;
/**
- * 12.浠诲姟鍙风己澶�
+ * 11.浠诲姟鍙风己澶�
*/
private boolean taskNoErr;
/**
- * 13.杩愯涓湁鏂颁换鍔�
+ * 12.杩愯涓湁鏂颁换鍔�
*/
private boolean newTaskErr;
/**
- * 14.鏁呴殰涓湁浠诲姟
+ * 13.鏁呴殰涓湁浠诲姟
*/
private boolean errTaskErr;
/**
- * 15.杩愯涓仠姝�
+ * 14.杩愯涓仠姝�
*/
private boolean stopErr;
/**
- * 16.鑴辨満妯″紡涓嬫湁浠诲姟
+ * 15.鑴辨満妯″紡涓嬫湁浠诲姟
*/
private boolean offlineTaskErr;
/**
- * 17.鏉′欢鏈弧瓒冲惎鍔ㄤ换鍔�
+ * 16.鏉′欢鏈弧瓒冲惎鍔ㄤ换鍔�
*/
private boolean startTaskErr;
/**
- * 18.浣庣數鍘嬫椂鏈変换鍔�
+ * 17.浣庣數鍘嬫椂鏈変换鍔�
*/
private boolean voltageTaskErr;
/**
- * 64.璁惧鏁呴殰鏍囧織浣�
+ * 63.璁惧鏁呴殰鏍囧織浣�
*/
private boolean devpErr;
// 绌挎杞﹀紓甯� ------------------------------------------------------------------------
// 绌挎杞︽彁绀轰俊鎭� ------------------------------------------------------------------------
/**
- * 65.鑱旀満鐘舵��
+ * 64.鑱旀満鐘舵��
*/
private boolean online;
/**
- * 66.涓嶅湪杞ㄩ亾涓�
+ * 65.涓嶅湪杞ㄩ亾涓�
*/
private boolean notOnTrack;
/**
- * 67.浣庣數閲忔彁閱�
+ * 66.浣庣數閲忔彁閱�
*/
private boolean lowVoltage;
/**
- * 68.浜忕數涓�
+ * 67.浜忕數涓�
*/
private boolean electricityLoss;
/**
- * 69.寮哄埗琛岃蛋鍚姩
+ * 68.寮哄埗琛岃蛋鍚姩
*/
private boolean forcedTravel;
/**
- * 70.婕旂ず妯″紡寮�鍚�
+ * 69.婕旂ず妯″紡寮�鍚�
*/
private boolean demoMode;
/**
- * 71.鍏呯數鍒峰凡鎺ラ��
+ * 70.鍏呯數鍒峰凡鎺ラ��
*/
private boolean brushConnect;
-// /**
-// * 71.鍏呯數鍒峰凡鎺ラ��
-// */
-// private boolean brushConnect;
+ /**
+ * 71.浠诲姟涓姝㈡墜鍔�
+ */
+ private boolean taskManualForbid;
+
+ /**
+ * 72.鑱旀満涓姝㈡墜鍔�
+ */
+ private boolean onlineManualForbid;
+
+ /**
+ * 73.璁惧鎬ュ仠涓�
+ */
+ private boolean devpEmergency;
+
+ /**
+ * 74.浠诲姟涓柇涓�
+ */
+ private boolean taskInterrupt;
+
+ /**
+ * 75.浠诲姟宸叉竻闄�
+ */
+ private boolean taskClear;
+
+ /**
+ * 76.浠诲姟纭宸茶秴鏃�
+ */
+ private boolean taskConfirmTimeout;
+
+ /**
+ * 77.鍏呯數涓湁浠诲姟
+ */
+ private boolean taskWithCharge;
+
+ // 浠诲姟淇℃伅 ---------------------------------------------------------
+ /**
+ * 96.鍏ュ簱浠诲姟涓�
+ */
+ private boolean pakInTask;
+
+ /**
+ * 97. 鍑哄簱浠诲姟涓�
+ */
+ private boolean pakOutTask;
+
+ /**
+ * 98. 绉诲簱浠诲姟涓�
+ */
+ private boolean pakMoveTask;
+
+ /**
+ * 99. 鍥炲師鐐逛换鍔′腑
+ */
+ private boolean goHpTask;
+
+ /**
+ * 100. 鍘诲弽鍘熺偣浠诲姟涓�
+ */
+ private boolean goOHpTask;
+
+ /**
+ * 101. 鍘诲師鐐归伩璁╀綅
+ */
+ private boolean goHpAvoid;
+
+ /**
+ * 102. 鍘诲弽鍘熺偣閬胯浣�
+ */
+ private boolean goOHpAvoid;
+
+ /**
+ * 104. 鍏ュ簱鍙栫┖缁撴潫
+ */
+ private boolean pakInEmpty;
+
+ /**
+ * 105. 鍏ュ簱姝e父缁撴潫
+ */
+ private boolean pakInFinish;
+
+ /**
+ * 106. 鍑哄簱鍙栫┖缁撴潫
+ */
+ private boolean pakOutEmpty;
+
+ /**
+ * 107. 鍑哄簱姝e父缁撴潫
+ */
+ private boolean pakOutFinish;
+
+ /**
+ * 108. 鍘诲師鐐归伩璁╁畬鎴�
+ */
+ private boolean goHpAvoidFinish;
+
+ /**
+ * 109. 鍘诲弽鍘熺偣閬胯瀹屾垚
+ */
+ private boolean goOHpAvoidFinish;
+
+ /**
+ * 110. 鍘诲師鐐归伩璁╁畬鎴�
+ */
+ private boolean goHpAvoidErr;
+
+ /**
+ * 111. 鍘诲弽鍘熺偣閬胯瀹屾垚
+ */
+ private boolean goOHpAvoidErr;
+
+ // 鐘舵�佷俊鎭� ---------------------------------------------------------
+ /**
+ * 112. 鑱旀満妯″紡
+ */
+ private boolean autoMode;
+
+ /**
+ * 113. 鐢靛帇杩囦綆
+ */
+ private boolean voltageLow;
public void setStatus(Short status){
diff --git a/src/main/java/com/zy/core/thread/SteThread.java b/src/main/java/com/zy/core/thread/SteThread.java
index 073e990..f04cc86 100644
--- a/src/main/java/com/zy/core/thread/SteThread.java
+++ b/src/main/java/com/zy/core/thread/SteThread.java
@@ -179,6 +179,65 @@
OutputQueue.STE.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
+ //璇诲彇绌挎杞﹁澶囦俊鎭紝鎻愪緵鏌ヨ
+ OperateResultExOne<byte[]> result1 = siemensS7Net.Read("V732", (short) 16);
+ if (result1.IsSuccess) {
+ boolean[] status = siemensS7Net.getByteTransform().TransBool(result1.Content, 0, 128);
+ steProtocol.setLiftErr(status[0]);
+ steProtocol.setInFetchErr(status[2]);
+ steProtocol.setOutFetchErr(status[3]);
+ steProtocol.setAntiErr(status[4]);
+ steProtocol.setLiftSwitchErr(status[5]);
+ steProtocol.setTrackErr(status[6]);
+ steProtocol.setTimeoutErr(status[7]);
+ steProtocol.setConnectErr(status[8]);
+ steProtocol.setEmergencyErr(status[9]);
+ steProtocol.setTaskTypeErr(status[10]);
+ steProtocol.setTaskNoErr(status[11]);
+ steProtocol.setNewTaskErr(status[12]);
+ steProtocol.setErrTaskErr(status[13]);
+ steProtocol.setStopErr(status[14]);
+ steProtocol.setOfflineTaskErr(status[15]);
+ steProtocol.setStartTaskErr(status[16]);
+ steProtocol.setVoltageTaskErr(status[17]);
+
+ steProtocol.setDevpErr(status[63]);
+
+ steProtocol.setOnline(status[64]);
+ steProtocol.setNotOnTrack(status[65]);
+ steProtocol.setLowVoltage(status[66]);
+ steProtocol.setElectricityLoss(status[67]);
+ steProtocol.setForcedTravel(status[68]);
+ steProtocol.setDemoMode(status[69]);
+ steProtocol.setBrushConnect(status[70]);
+ steProtocol.setTaskManualForbid(status[71]);
+ steProtocol.setOnlineManualForbid(status[72]);
+ steProtocol.setDevpEmergency(status[73]);
+ steProtocol.setTaskInterrupt(status[74]);
+ steProtocol.setTaskClear(status[75]);
+ steProtocol.setTaskConfirmTimeout(status[76]);
+ steProtocol.setTaskWithCharge(status[77]);
+
+ steProtocol.setPakInTask(status[96]);
+ steProtocol.setPakOutTask(status[97]);
+ steProtocol.setPakMoveTask(status[98]);
+ steProtocol.setGoHpTask(status[99]);
+ steProtocol.setGoOHpTask(status[100]);
+ steProtocol.setGoHpAvoid(status[101]);
+ steProtocol.setGoOHpAvoid(status[102]);
+ steProtocol.setPakInEmpty(status[104]);
+ steProtocol.setPakInFinish(status[105]);
+ steProtocol.setPakOutEmpty(status[106]);
+ steProtocol.setPakOutFinish(status[107]);
+ steProtocol.setGoHpAvoidFinish(status[108]);
+ steProtocol.setGoOHpAvoidFinish(status[109]);
+ steProtocol.setGoHpAvoidErr(status[110]);
+ steProtocol.setGoOHpAvoidErr(status[111]);
+
+ steProtocol.setAutoMode(status[112]);
+ steProtocol.setVoltageLow(status[113]);
+ }
+
// 澶嶄綅淇″彿
if (steProtocol.getWaiting()) {
if (resetFlag) {
@@ -189,7 +248,6 @@
}
}
}
-
// 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴�
BasSteService service = SpringUtils.getBean(BasSteService.class);
--
Gitblit v1.9.1