From 9bd955804174cd26cfe275d672a33220ae5a199f Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期二, 16 五月 2023 14:31:18 +0800 Subject: [PATCH] 堆垛机管理 --- src/main/java/com/zy/core/model/protocol/CrnProtocol.java | 292 ++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 263 insertions(+), 29 deletions(-) diff --git a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java index 00d6b1c..87c0781 100644 --- a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java +++ b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java @@ -1,9 +1,7 @@ package com.zy.core.model.protocol; -import com.zy.core.enums.CrnForkPosType; -import com.zy.core.enums.CrnLiftPosType; -import com.zy.core.enums.CrnModeType; -import com.zy.core.enums.CrnStatusType; +import com.zy.asrs.entity.BasCrnp; +import com.zy.core.enums.*; import lombok.Data; /** @@ -22,14 +20,19 @@ public CrnModeType modeType; /** + * 鍫嗗灈鏈轰换鍔″畬鎴� + */ + public Short taskFinish; + + /** + * 鏍¢獙缁撴灉 1琛ㄧず妫�楠屾垚鍔� + */ + public Short valid; + + /** * 1 = 鎬ュ仠 */ public Short eStop; - - /** - * 寮傚父鐮� - */ - public Short alarm; /** * 浠诲姟鍙� @@ -67,35 +70,150 @@ public Short level; /** + * 鍫嗗灈鏈哄綋鍓嶆帓 + */ + public Short row; + + /** + * 鍫嗗灈鏈哄綋鍓嶅贩閬撳彿 + */ + public Short lane; + + /** + * 鍫嗗灈鏈洪�氳鐘舵�� + */ + public Boolean connStatus; + + /** + * 鐢宠鍏ュ簱淇 + */ + public Boolean correction; + + /** + * 鎵樼洏鍙烽敊 + */ + public Boolean tuError; + + /** + * 鍙栬揣鏃犵 + */ + public Boolean noneError; + + /** + * 鍙岄噸鍏ュ簱 + */ + public Boolean stockError; + + /** + * 浣滀笟鏁版嵁鏃犳晥 + */ + public Boolean jobInvalid; + + /** + * 绌洪棽鐘舵�� + */ + public Boolean idle; + + /** + * 鎺у埗鏌滀娇鑳� + */ + public Boolean control; + + /** + * 鍋滃噯 + */ + public Boolean stopQuasi; + + /** + * 杩愯 + */ + public Boolean running; + + /** + * 鏁呴殰 + */ + public Boolean fault; + + /** + * 璐у弶涓綅 + */ + public Boolean forkHome; + /** + * 鍗曚几浣嶈揣鍙夊乏浣� + */ + public Boolean forkSingleLeft; + /** + * 鍗曚几浣嶈揣鍙夊彸浣� + */ + public Boolean forkSingleRight; + /** + * 鍙屼几浣嶈揣鍙夊乏浣� + */ + public Boolean forkDoubleLeft; + /** + * 鍙屼几浣嶈揣鍙夊彸浣� + */ + public Boolean forkDoubleRight; + /** + * 鍗曚几浣嶉珮浣� + */ + public Boolean singleHigh; + /** + * 鍗曚几浣嶄綆浣� + */ + public Boolean singleLow; + /** + * 鍙屼几浣嶉珮浣� + */ + public Boolean doubleHigh; + /** + * 鍙屼几浣嶄綆浣� + */ + public Boolean doubleLow; + /** + * 绔欏彴楂樹綅 + */ + public Boolean platformHigh; + /** + * 绔欏彴浣庝綅 + */ + public Boolean platformLow; + + /** * 褰撳墠璐у弶浣嶇疆 * 0 = 璐у弶鍘熶綅 * 1 = 璐у弶鍦ㄥ乏渚� * 2 = 璐у弶鍦ㄥ彸渚� */ - public Short forkPos; + public Short forkPos = -1; - private CrnForkPosType forkPosType; + public CrnForkPosType forkPosType = CrnForkPosType.NONE; /** * 褰撳墠杞借揣鍙颁綅缃� * 0 = 涓嬪畾浣� * 1 = 涓婂畾浣� */ - public Short liftPos; + public Short liftPos = -1; - public CrnLiftPosType liftPosType; + public CrnLiftPosType liftPosType = CrnLiftPosType.ERROR; /** * 璧拌鍦ㄥ畾浣� * 0 = 鍦ㄥ畾浣� * 1 = 涓嶅湪瀹氫綅 */ - public Short walkPos; + public Short walkPos = 0; /** - * 鍫嗗灈鏈轰换鍔″畬鎴� + * 鎷ㄦ寚浣嶇疆 + * 0 = 涓嶅湪瀹氫綅 + * 1 = 涓婂畾浣� + * 2 = 涓嬪畾浣� */ - public Short taskFinish; + public Short fingerPos; + + public CrnFingerPosType fingerPosType; /** * 杞借揣鍙版湁鐗� @@ -103,54 +221,87 @@ public Short loaded; /** - * 寮傚父鐮侊紙鏁板�兼樉绀猴級 + * 鍫嗗灈鏈哄瀭鐩存晠闅滀唬鐮侊紙鏁板�兼樉绀猴級 */ - private Short alarm1; + private Integer alarm1 = 0; + + /** + * 鍫嗗灈鏈烘按骞虫晠闅滀唬鐮侊紙鏁板�兼樉绀猴級 + */ + private Integer alarm2 = 0;; + + /** + * 鍫嗗灈鏈鸿揣鍙夋晠闅滀唬鐮侊紙鏁板�兼樉绀猴級 + */ + private Integer alarm3 = 0;; + + /** + * 鍫嗗灈鏈虹姸鎬佹晠闅滀唬鐮侊紙鏁板�兼樉绀猴級 + */ + private Integer alarm4 = 0;; /** * 寮傚父1 */ - private Short error1; + private boolean[] error1; + + private CrnError1 crnError1; /** * 寮傚父2 */ - private Short error2; + private boolean[] error2; + + private CrnError2 crnError2; /** - * 淇濈暀 + * 寮傚父3 */ - private Short temp1; + private boolean[] error3; + + private CrnError3 crnError3; + + /** + * 寮傚父4 + */ + private boolean[] error4; + + private CrnError4 crnError4; /** * X琛岃蛋绾块�熷害m/min */ - private Short xSpeed; + private Float xSpeed = 0F; /** * Y琛岃蛋绾块�熷害m/min */ - private Short ySpeed; + private Float ySpeed = 0F; /** * Z琛岃蛋绾块�熷害m/min */ - private Short zSpeed; + private Float zSpeed = 0F; /** * 鍫嗗灈鏈虹疮璁¤蛋琛岃窛绂籯m */ - public Integer xDistance; + public Float xDistance = 0F; /** * 鍫嗗灈鏈虹疮璁″崌闄嶈窛绂籯m */ - public Integer yDistance; + public Float yDistance = 0F; /** - * 鍫嗗灈鏈虹疮璁¤繍琛屾椂闀縣 + * 鍫嗗灈鏈虹疮璁¤蛋琛屾椂闀縣 */ - public Integer duration; + public Float xDuration = 0F; + + /**w + * 鍫嗗灈鏈虹疮璁″崌闄嶆椂闀縣 + */ + public Float yDuration = 0F; public void setMode(Short mode) { this.mode = mode; @@ -192,6 +343,83 @@ this.status = CrnStatusType.get(type).id.shortValue(); } + public void setFingerPos(Short type) { + this.fingerPos = type; + this.fingerPosType = CrnFingerPosType.get(type); + } + + public void setError1(boolean[] error1){ + this.error1 = error1; + this.crnError1 = new CrnError1(); + this.crnError1.remoteStop = error1[0]; + this.crnError1.mainStop = error1[1]; + this.crnError1.controlStop = error1[2]; + this.crnError1.xCoverErr = error1[3]; + this.crnError1.yCoverErr = error1[4]; + this.crnError1.zCoverErr = error1[5]; + this.crnError1.laserErr = error1[6]; + this.crnError1.barcodeErr = error1[7]; + this.crnError1.xFrontLimitErr = error1[8]; + this.crnError1.xBackLimitErr = error1[9]; + this.crnError1.yUpLimitErr = error1[10]; + this.crnError1.yDownLimitErr = error1[11]; + this.crnError1.zLeftLimitErr = error1[12]; + this.crnError1.zRightLimitErr = error1[13]; + this.crnError1.leftOverWidthErr1 = error1[14]; + this.crnError1.leftOverWidthErr2 = error1[15]; + } + + public void setError2(boolean[] error2){ + this.error2 = error2; + this.crnError2 = new CrnError2(); + this.crnError2.leftOverLenErr1 = error2[0]; + this.crnError2.leftOverLenErr2 = error2[1]; + this.crnError2.leftOverHighErr = error2[2]; + this.crnError2.rightOverWidthErr1 = error2[3]; + this.crnError2.rightOverWidthErr2 = error2[4]; + this.crnError2.rightOverLenErr1 = error2[5]; + this.crnError2.rightOverLenErr2 = error2[6]; + this.crnError2.rightOverHighErr = error2[7]; + this.crnError2.leftLooseRopeErr = error2[8]; + this.crnError2.rightLooseRopeErr = error2[9]; + this.crnError2.frontDoorErr = error2[10]; + this.crnError2.backDoorErr = error2[11]; + this.crnError2.startupErr = error2[12]; + this.crnError2.xFrontLocaUpErr = error2[13]; + this.crnError2.xFrontLocaDownErr = error2[14]; + this.crnError2.xBackLocaUpErr = error2[15]; + } + + public void setError3(boolean[] error3) { + this.error3 = error3; + this.crnError3 = new CrnError3(); + this.crnError3.xBackLocaDownErr = error3[0]; + this.crnError3.yUpLocaUpErr = error3[1]; + this.crnError3.yUpLocaDownErr = error3[2]; + this.crnError3.yDownLocaUpErr = error3[3]; + this.crnError3.yDownLocaDownErr = error3[4]; + this.crnError3.zLeftLocaUpErr = error3[5]; + this.crnError3.zLeftLocaDownErr = error3[6]; + this.crnError3.zRightLocaUpErr = error3[7]; + this.crnError3.zRightLocaDownErr = error3[8]; + this.crnError3.leftTakeNoneErr = error3[9]; + this.crnError3.rightTakeNoneErr = error3[10]; + this.crnError3.leftTakeThenLoadErr = error3[11]; + this.crnError3.rightTakeThenLoadErr = error3[12]; + this.crnError3.leftPutAndLoadErr = error3[13]; + this.crnError3.rightPutAndLoadErr = error3[14]; + this.crnError3.leftPutThenNoneErr = error3[15]; + } + + public void setError4(boolean[] error4) { + this.error4 = error4; + this.crnError4 = new CrnError4(); + this.crnError4.rightPutThenNoneErr = error4[0]; + this.crnError4.xLooseBrakeTimeout = error4[1]; + this.crnError4.yLooseBrakeTimeout = error4[2]; + this.crnError4.zLooseBrakeTimeout = error4[3]; + } + /** * 鏈�杩戜竴娆″叆鍑哄簱绫诲瀷 * I:鍏ュ簱 @@ -199,4 +427,10 @@ */ private String lastIo = "I"; + + public BasCrnp toSqlModel(BasCrnp basCrnp){ + basCrnp.setCrnErr(alarm1.longValue()); + basCrnp.setWrkNo(taskNo.intValue()); + return basCrnp; + } } -- Gitblit v1.9.1