From d9271883338de97164a36ea9a1e5fc7eef73e64d Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期三, 04 十月 2023 14:38:25 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/model/protocol/LiftProtocol.java | 358 +++++++++++++++++++---------------------------------------- 1 files changed, 118 insertions(+), 240 deletions(-) diff --git a/src/main/java/com/zy/core/model/protocol/LiftProtocol.java b/src/main/java/com/zy/core/model/protocol/LiftProtocol.java index 790bb2f..dcee8b0 100644 --- a/src/main/java/com/zy/core/model/protocol/LiftProtocol.java +++ b/src/main/java/com/zy/core/model/protocol/LiftProtocol.java @@ -5,8 +5,6 @@ import lombok.Data; import lombok.extern.slf4j.Slf4j; -import java.util.Date; - /** * 鎻愬崌鏈� */ @@ -18,11 +16,6 @@ * 鎻愬崌鏈哄彿 */ private Short liftNo; - - /** - * 鎻愬崌鏈哄唴閮ㄤ簩缁寸爜 - */ - private Short barcode = 1699; /** * 浠诲姟鍙� @@ -45,189 +38,96 @@ private LiftProtocolStatusType protocolStatusType = LiftProtocolStatusType.IDLE; /** + * 妯″紡 + */ + private Boolean model; + + /** + * 蹇欓棽 + */ + private Boolean busy; + + /** + * 鍓嶈秴闄� + */ + private Boolean frontOverrun; + + /** + * 鍚庤秴闄� + */ + private Boolean backOverrun; + + /** + * 宸﹁秴闄� + */ + private Boolean leftOverrun; + + /** + * 鍙宠秴闄� + */ + private Boolean rightOverrun; + + /** + * 瓒呴珮 + */ + private Boolean overHeight; + + /** + * 瓒呴噸 + */ + private Boolean overWeight; + + /** + * 鏈夋墭鐩� + */ + private Boolean hasTray; + + /** + * 鏈夊皬杞� + */ + private Boolean hasCar; + + /** + * 璁惧鏁呴殰 + */ + private Boolean deviceError; + + /** + * 浠诲姟鍦板潃 + */ + private Short taskAddress; + + /** + * 鐩殑鍦板潃 + */ + private Short distAddress; + + /** + * 宸插畬鎴愮殑浠诲姟鍙� + */ + private Short completeTaskNo; + + /** * 灞� */ private Short lev; /** - * 鎻愬崌鏈洪攣瀹� - */ - private Boolean liftLock; - - /** - * 浣嶇疆鍒拌揪鍙嶉 - */ - private Short positionArrivalFeedback; - - /** - * 鍑嗗灏辩华 - * 灏辩华涓�1锛屾湭灏辩华涓�0 - */ - private Boolean ready; - - /** - * 杩愯涓� - * 杩愯涓负1锛屾湭杩愯涓�0 - */ - private Boolean running; - - /** - * 鑱旀満/鍗曟満 - * 鑱旀満涓�1锛屽崟鏈轰负0 - */ - private Boolean mode; - - /** - * 杈撻�佺嚎鍓嶇鍏夌數鏈夎揣 - * 鏈夎揣涓�1锛屾棤璐т负0锛堝墠绔寚闈犺繎璐ф灦渚э級 - */ - private Boolean lineFrontHasStock; - - /** - * 杈撻�佺嚎姝h浆鍙嶉 - * 姝h浆杩愯涓�1锛屽惁鍒欎负0 - */ - private Boolean forwardRotationFeedback; - - /** - * 杈撻�佺嚎鍙嶈浆鍙嶉 - * 鍙嶈浆杩愯涓�1锛屽惁鍒欎负0 - */ - private Boolean reverseFeedback; - - /** - * 杈撻�佺嚎鐢垫満杩囪浇 - * 杩囪浇涓�0锛屾甯镐负1 - */ - private Boolean motorOverload; - - /** - * 杈撻�佺嚎鏈鍏夌數鏈夎揣 - * 鏈夎揣涓�1锛屾棤璐т负0 - */ - private Boolean lineEndHasStock; - - /** - * 杩涜緭閫佺嚎鍗℃墭鐩樻姤璀� - * 鎶ヨ涓�1锛屾湭鎶ヨ涓�0 - */ - private Boolean inConveyLineCardTrayAlarm; - - /** - * 鍑鸿緭閫佺嚎鍗℃墭鐩樻姤璀� - * 鎶ヨ涓�1锛屾湭鎶ヨ涓�0 - */ - private Boolean outConveyLineCardTrayAlarm; - - /** - * 骞冲彴浣嶇疆鍋忓樊鎶ヨ - * 鎶ヨ涓�1锛屾湭鎶ヨ涓�0 - */ - private Boolean platPositionDeviationAlarm; - - /** - * 骞冲彴鎵煩鍋忓樊鎶ヨ - * 鎶ヨ涓�1锛屾湭鎶ヨ涓�0 - */ - private Boolean platTorqueDeviationAlarm; - - /** - * 骞冲彴鍥涘悜杞︽娴� - * 鏈夎溅涓�1锛屾棤杞︿负0 - */ - private Boolean platShuttleCheck; - - /** - * 鏈氨缁姸鎬� - * 1. 涓嶅湪鎸囧畾灞� - * 2. 鍥涜酱涓嶅悓姝� - * 3. 骞冲彴鍓嶉檺鍏夌數琚尅鍒帮紙闈犺繎璐ф灦锛� - * 4. 骞冲彴鍚庨檺鍏夌數琚尅鍒帮紙杩滅璐ф灦锛� - * 5. 骞冲彴涓婇檺浣嶆姤璀� - * 6. 骞冲彴涓嬮檺浣嶆姤璀� - * 7. 鐢垫煖鎬ュ仠鎶ヨ - * 8. 杈撻�佺嚎鍓嶉檺浣嶈鎸″埌锛堥潬杩戣揣鏋讹級 - * 9. 杈撻�佺嚎鍚庨檺浣嶈鎸″埌锛堣繙绂昏揣鏋讹級 - * 10. 瑙︽懜灞忕揣鎬ュ仠姝㈣鎸変笅 - * 11. 鍥涜酱鍔ㄥ姏绾挎柇绾� - * 12. 鍗曟満妯″紡 - * 13. 鍥涜酱鎶ヨ - * 14. 浣嶇疆鍋忓樊杩囧ぇ - * 15. 鎵煩鍋忓樊杩囧ぇ - * 16. 杈撻�佺嚎杩囪浇 - * 17. 杩涙彁鍗囨満鍗℃墭鐩� - * 18. 鍑烘彁鍗囨満鍗℃墭鐩� - */ - private Short notReady; - - /** - * 浼烘湇1閿欒 - */ - private Short servoError1; - - /** - * 浼烘湇2閿欒 - */ - private Short servoError2; - - /** - * 浼烘湇3閿欒 - */ - private Short servoError3; - - /** - * 浼烘湇4閿欒 - */ - private Short servoError4; - - /** - * 鎻愬崌鏈哄疄闄呴�熷害鍙嶉 - */ - private Short liftActualSpeed; - - /** * 浣滀笟鏍囪 */ - private Boolean pakMk = true; + private Boolean pakMk = false; /** - * 鍥涘悜绌挎杞﹁皟搴︽彁鍗囨満鏃讹紝闇�瑕侀攣瀹氭鏍囪 + * 鐙崰浠ょ墝 + * 鏈浠诲姟鍗犳嵁锛屼护鐗屼负0 + * 琚换鍔″崰鎹紝灏嗕换鍔″彿璧嬪�肩粰浠ょ墝 */ - private Boolean securityMk = false; + private Integer token = 0; /** * 浠诲姟鍛戒护 */ private LiftAssignCommand assignCommand; - - /** - * 鍑哄叆搴撴ā寮忥紝1锛氬叆搴擄紝2锛氬嚭搴� - */ - private Integer outInModel; - - /** - * 鍑哄叆搴撴ā寮忚捣濮嬬珯鐐� - */ - private Integer startSta; - - /** - * 鍑哄叆搴撴ā寮忕洰鏍囩珯鐐� - */ - private Integer distSta; - - /** - * 鍑哄叆搴撴ā寮忔鏁� - */ - private Integer outInModelStep; - - /** - * 宸ヤ綔鏃堕棿 - */ - private Date wrkTime; - - public Short getLiftLockShortValue() { - return liftLock ? (short) 1 : (short) 0; - } /** * 璁剧疆鎻愬崌鏈虹姸鎬� @@ -246,89 +146,67 @@ } // 鏄惁澶勪簬绌洪棽寰呭懡鐘舵�� - public Boolean isIdle() { - if(this.taskNo == null - || this.liftLock == null - || this.ready == null - || this.running == null - || this.mode == null + public Boolean isIdle(Short taskNo) { + if(this.busy == null + || this.model == null + || this.deviceError == null || this.pakMk == null + || this.token == null ){ return false; } - boolean res = this.taskNo == 0 - && !this.liftLock -// && this.ready - && !this.running - && this.mode - && this.pakMk.equals(true) - && !this.securityMk + boolean res = +// (this.taskNo.equals(this.completeTaskNo) || this.taskNo.intValue() == taskNo.intValue()) + !this.busy + && this.model + && !this.pakMk + && !this.deviceError + && this.protocolStatusType.equals(LiftProtocolStatusType.IDLE) + ; + return res; + } + + // 鏄惁澶勪簬绌洪棽寰呭懡鐘舵�� + public Boolean isIdle() { + if(this.taskNo == null + || this.busy == null + || this.model == null + || this.deviceError == null + || this.pakMk == null + || this.token == null + ){ + return false; + } + + boolean res = +// this.taskNo.equals(this.completeTaskNo) + !this.busy + && this.model + && !this.pakMk + && !this.deviceError + && this.token == 0 + && this.protocolStatusType.equals(LiftProtocolStatusType.IDLE) ; return res; } // 鏄惁澶勪簬绌洪棽寰呭懡鐘舵�侊紝涓嶅垽鏂换鍔″彿 public Boolean isIdleNoTask() { - if(this.taskNo == null - || this.liftLock == null - || this.ready == null - || this.running == null - || this.mode == null + if(this.busy == null + || this.model == null + || this.deviceError == null || this.pakMk == null ){ return false; } - boolean res = !this.liftLock -// && this.ready - && !this.running - && this.mode - && this.pakMk - && !this.securityMk + boolean res = !this.busy + && this.model + && !this.pakMk + && !this.deviceError ; return res; - } - - public void setPositionArrivalFeedback(Short position) { - Short lev = null; - switch (position) { - case 1: - lev = 1; - break; - case 4: - lev = 2; - break; - case 8: - lev = 3; - break; - case 16: - lev = 4; - break; - } - this.lev = lev;//灞傞珮 - this.positionArrivalFeedback = position;//浣嶇疆鍒拌揪鍙嶉 - } - - public Integer getPositionArrivalFeedback$() { - if (this.positionArrivalFeedback == null) { - return null; - } - - switch (this.positionArrivalFeedback) { - case 1: - return 1; - case 2: - return 2; - case 4: - return 3; - case 8: - return 4; - case 16: - return 5; - } - - return null; } -- Gitblit v1.9.1