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