From 0ae7648dae40c6b7efa15e276099da7a9213ad37 Mon Sep 17 00:00:00 2001 From: lty <876263681@qq.com> Date: 星期二, 23 九月 2025 22:13:13 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/model/protocol/RgvProtocol.java | 203 ++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 170 insertions(+), 33 deletions(-) diff --git a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java index 1dffde9..da1eedd 100644 --- a/src/main/java/com/zy/core/model/protocol/RgvProtocol.java +++ b/src/main/java/com/zy/core/model/protocol/RgvProtocol.java @@ -5,6 +5,7 @@ import com.zy.core.enums.RgvStatusType; import lombok.Data; +import javax.swing.*; import java.util.HashMap; import java.util.Map; @@ -14,7 +15,7 @@ @Data public class RgvProtocol implements Cloneable{ - private Integer RgvNo; + private short RgvNo; /** * 1 = 鎵嬪姩妯″紡 @@ -25,13 +26,29 @@ public RgvModeType modeType; + private transient Long loadingStartTime; + /** - * RGV褰撳墠鐘舵�� + * 鎵ц浼樺厛绾� + * 0:涓嶅垽鏂� + * 1锛氬伐浣�1鍏堟墽琛� + * 2锛氬伐浣�2鍏堟墽琛� + */ + public Short wrkTaskPri; + + public Short wrkTaskMove1; + + public Short wrkTaskMove2; + + + /** + * RGV褰撳墠鐘舵�佸伐浣�1 * 0锛氱┖闂诧紝鏃犱换鍔� * 1锛氫綔涓氫腑 * 2锛氭姤璀� */ public Short status; + /** * 鐘舵�佹灇涓� @@ -41,7 +58,7 @@ /** * 宸ヤ綅1浠诲姟鍙� */ - public Short taskNo1 = 0; + public Integer taskNo1 = 0; /** * RGV宸ヤ綅1褰撳墠鐘舵�� @@ -60,12 +77,18 @@ /** * 宸ヤ綅1鏈夌墿 */ - public Short loaded1; + public Boolean loaded1; /** * RGV褰撳墠浣嶇疆 */ - public Short RgvPos; + public Integer RgvPos; + + /** + * RGV褰撳墠鐩殑浣嶇疆 + */ + public Integer RgvPosDestination; + /** * 璧拌鍦ㄥ畾浣� @@ -74,30 +97,102 @@ */ public Short walkPos; + /** + * 鎬ュ仠 + */ + public Boolean err1; + + /** + * 鏈夌墿鏃犺祫鏂� + */ + public Boolean err2; + + /** + * 鏈夎祫鏂欐棤鐗� + */ + public Boolean err3; + + /** + * 鍛戒护閿欒璧拌鑱旇皟鍐茬獊 + */ + public Boolean err4; + + /** + * 鐩爣涓鸿秴杩囪璧版瀬闄� + */ + public Boolean err5; + + /** + * 鍙橀鍣ㄥ紓甯� + */ + public Boolean err6; + + /** + * 鍏夌數寮傚父 + */ + public Boolean err7; + ////////////////////// 宸ヤ綅2瀹氫箟 ////////////////////////////////////////////////// + /** + * 宸ヤ綅2浠诲姟鍙� + */ + public Integer taskNo2 = 0; + + /** + * RGV宸ヤ綅2褰撳墠鐘舵�� + * 0锛氱┖闂诧紝鏃犱换鍔� + * 11锛氬彇璐т腑 + * 12锛氭斁璐т腑 + * 10锛氫换鍔″畬鎴愮瓑寰匴CS纭 + */ + public Short status2; + + /** + * 鐘舵�佹灇涓� + */ + public RgvStatusType statusType2; + + /** + * 宸ヤ綅2鏈夌墿 + */ + public Boolean loaded2; + // /** -// * 宸ヤ綅2浠诲姟鍙� +// * 鎬ュ仠 // */ -// public Short taskNo2 = 0; +// public Boolean err21; // // /** -// * RGV宸ヤ綅2褰撳墠鐘舵�� -// * 0锛氱┖闂诧紝鏃犱换鍔� -// * 11锛氬彇璐т腑 -// * 12锛氭斁璐т腑 -// * 10锛氫换鍔″畬鎴愮瓑寰匴CS纭 +// * 鏈夌墿鏃犺祫鏂� // */ -// public Short status2; +// public Boolean err22; // // /** -// * 鐘舵�佹灇涓� +// * 鏈夎祫鏂欐棤鐗� // */ -// public RgvStatusType statusType2; +// public Boolean err23; // // /** -// * 宸ヤ綅2鏈夌墿 +// * 鍛戒护閿欒璧拌鑱旇皟鍐茬獊 // */ -// public Short loaded2; +// public Boolean err24; +// +// /** +// * 鐩爣涓鸿秴杩囪璧版瀬闄� +// */ +// public Boolean err25; +// +// /** +// * 鍙橀鍣ㄥ紓甯� +// */ +// public Boolean err26; +// +// /** +// * 鍏夌數寮傚父 +// */ +// public Boolean err27; + + /////////////////////////////////////////////////////////////////////////////////////// /** @@ -165,15 +260,24 @@ this.status1 = RgvStatusType.get(type1).id.shortValue(); } -// public void setStatus2(Short status2){ -// this.status2 = status2; -// this.statusType2 = RgvStatusType.get(status2); -// } -// -// public void setStatus2(RgvStatusType type2){ -// this.statusType2 = type2; -// this.status2 = RgvStatusType.get(type2).id.shortValue(); -// } + public void setStatus2(Short status2){ + this.status2 = status2; + this.statusType2 = RgvStatusType.get(status2); + } + + public void setStatus2(RgvStatusType type2){ + this.statusType2 = type2; + this.status2 = RgvStatusType.get(type2).id.shortValue(); + } + + public boolean isLoaded1ing() { + return Boolean.TRUE.equals(this.loaded1); + } + + public boolean isLoaded2ing() { + return Boolean.TRUE.equals(this.loaded2); + } + /** * 鏈�杩戜竴娆″叆鍑哄簱绫诲瀷 @@ -188,7 +292,7 @@ basRgv.setRgvErr(alarm.longValue()); } basRgv.setWrkNo1(taskNo1.intValue()); -// basRgv.setWrkNo2(taskNo2.intValue()); + basRgv.setWrkNo2(taskNo2.intValue()); return basRgv; } @@ -207,17 +311,50 @@ public Integer getRgvPosI(){ //闇�瑕佹牴鎹幇鍦烘敼閫� 鏍规嵁璇诲埌鐨勫�艰幏鍙栧搴旂珯鐐逛綅缃� Map<Short,Integer> map = new HashMap<>(); - map.put((short) 1,100);map.put((short) 2,101); - map.put((short) 3,106);map.put((short) 4,107); - map.put((short) 5,112);map.put((short) 6,113); - map.put((short) 7,119);map.put((short) 8,124); - map.put((short) 9,149);map.put((short) 10,153); - map.put((short) 11,157);map.put((short) 12,161); + map.put((short) 1,1004);map.put((short) 2,1007); + map.put((short) 3,1010);map.put((short) 4,1014); + map.put((short) 5,1018);map.put((short) 6,1021); + map.put((short) 7,1024); map.put((short) 8,1028); + map.put((short) 9,1031);map.put((short) 10,1035); + map.put((short) 11,2003);map.put((short) 12,2006); + map.put((short) 13,2009);map.put((short) 14,2012); + map.put((short) 15,2015);map.put((short) 16,2018); + map.put((short) 17,2021);map.put((short) 18,2024); + map.put((short) 19,2027);map.put((short) 20,2030); if (RgvPos==null) return 0; return map.get(RgvPos); } + public Integer getRgvPosI2() { + if (RgvPos == null) return 0; + + // key: 绔欑偣鍙� value: 鍩哄噯鐗╃悊浣嶇疆 + Map<Integer, Integer> posMap = new HashMap<>(); + posMap.put(1004, 6534); + posMap.put(1007, 33634); + posMap.put(1010, 75174); + posMap.put(1014, 102124); + posMap.put(1018, 138224); + posMap.put(1021, 178034); + posMap.put(1024, 219684); + posMap.put(1028, 246724); + posMap.put(1031, 288194); + posMap.put(1035, 315204); + int tolerance = 50; // 鍏佽璇樊鑼冨洿 + + for (Map.Entry<Integer, Integer> entry : posMap.entrySet()) { + int site = entry.getKey(); + int basePos = entry.getValue(); + if (Math.abs(RgvPos - basePos) <= tolerance) { + return site; + } + } + + return 0; // 娌″尮閰嶅埌绔欑偣 + } + + @Override public RgvProtocol clone() { try { -- Gitblit v1.9.1