From e150f2c426fe2bdfd86be1fe0c27215efaacdc83 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期二, 16 十二月 2025 09:09:05 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 84 ++++++++++++++--------------
src/main/java/com/zy/core/MainProcess.java | 49 +++++++---------
2 files changed, 63 insertions(+), 70 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index b94ec5b..8669c14 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2970,7 +2970,7 @@
//濡傛灉绔欑偣鍙嚭绂佺敤锛屽垯涓嶇敓鎴愮┖鐩樺嚭搴撲换鍔�
switch (site){
case 1108:staProtocol = devpThread.getStation().get(site - 2);break;
- case 2031:staProtocol = devpThread2.getStation().get(site);break;
+ case 2031:staProtocol = devpThread2.getStation().get(site + 1);break;
}
if (staProtocol == null) {
return;
@@ -4455,34 +4455,34 @@
}
//閬嶅巻rgv鍏ュ簱鍙栬揣绔欑偣
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, rgvStn.getDevpPlcId());
- StaProtocol staProtocol = devpThread.getStation().get(rgvStn.getStaNo2()); //鍊掓暟绗簩涓�
+ StaProtocol staProtocol = devpThread.getStation().get(rgvStn.getStaNo2()==1043?1044:1103); //鍊掓暟绗簩涓�
StaProtocol staProtocol2 = null; //杩炵画鍙栬揣浠诲姟绔欑偣
RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, (int) rgvProtocol.getRgvNo());
- WrkMastSta wrkMastSta3 = null;//杩炲彇涓や釜
- Integer staNo = null; //涓庤皟搴�
- switch (rgvStn.getStaNo2()){
- case 1043: staNo = 1044;break;
- case 1104: staNo = 1103;break;
- }
- if(staNo != null ){
- staProtocol2 = devpThread.getStation().get(staNo);
- if (staProtocol2 == null) {
- News.infoNoLog(" - Rgv鍏ュ簱绔欎俊鎭�(staProtocol!=null缁х画鎵ц)锛歴taProtocol=" + staProtocol);
- continue;
- } else {
- staProtocol2 = staProtocol2.clone();
- }
- BasDevp staDetl2 = basDevpService.selectById(rgvStn.getStaNo2());
- if (staDetl2 == null) {
- News.error(" - 鍏ュ簱 ===>>Rgv绔欑偣鍦ㄦ暟鎹簱涓嶅瓨鍦�, 绔欑偣缂栧彿={}", rgvStn.getStaNo());
- continue;
- }
- if((staProtocol.getWorkNo()>9999 && staProtocol2.getWorkNo()>9999) || (staProtocol.getWorkNo()<10000 && staProtocol2.getWorkNo()<10000)){
- //褰撹繛缁彇璐х珯鐐逛负鐩稿悓绫诲瀷鏃舵墠鑳借繛缁彇
- wrkMastSta3 = wrkMastStaMapper.selectByWrkNo(staProtocol2.getWorkNo());
- }
-
- }
+// WrkMastSta wrkMastSta3 = null;//杩炲彇涓や釜
+// Integer staNo = null; //涓庤皟搴�
+// switch (rgvStn.getStaNo2()){
+// case 1043: staNo = 1044;break;
+// case 1104: staNo = 1103;break;
+// }
+// if(staNo != null ){
+// staProtocol2 = devpThread.getStation().get(staNo);
+// if (staProtocol2 == null) {
+// News.infoNoLog(" - Rgv鍏ュ簱绔欎俊鎭�(staProtocol!=null缁х画鎵ц)锛歴taProtocol=" + staProtocol);
+// continue;
+// } else {
+// staProtocol2 = staProtocol2.clone();
+// }
+// BasDevp staDetl2 = basDevpService.selectById(rgvStn.getStaNo2());
+// if (staDetl2 == null) {
+// News.error(" - 鍏ュ簱 ===>>Rgv绔欑偣鍦ㄦ暟鎹簱涓嶅瓨鍦�, 绔欑偣缂栧彿={}", rgvStn.getStaNo());
+// continue;
+// }
+// if((staProtocol.getWorkNo()>9999 && staProtocol2.getWorkNo()>9999) || (staProtocol.getWorkNo()<10000 && staProtocol2.getWorkNo()<10000)){
+// //褰撹繛缁彇璐х珯鐐逛负鐩稿悓绫诲瀷鏃舵墠鑳借繛缁彇
+// wrkMastSta3 = wrkMastStaMapper.selectByWrkNo(staProtocol2.getWorkNo());
+// }
+//
+// }
if(rgvProtocol.getTaskNo2() > 9999 && staProtocol.getWorkNo() < 10000){
continue;
}
@@ -4543,21 +4543,21 @@
sign = rgvTakeFullAll(basRgvMap.getRgvNo(), wrkMastSta); //鍛戒护涓嬪彂
if (sign){
- if(wrkMastSta3 != null ){
- List<WrkMastSta> wrkMastStaPaking = wrkMastStaService.selectPakingWrk(wrkMastSta3.getStaStart());
- if(wrkMastStaPaking.size() < 1 && !wrkMastSta3.getWrkNo().equals(wrkMastSta.getWrkNo())){//宸叉湁鏍囪涓嶅啀鏍囪
- wrkMastSta3.setMk(1);
- basRgv.setPakAll("0");
- basRgvService.updateById(basRgv);
-
- try{
- wrkMastStaMapper.updateById(wrkMastSta3);
- log.error("閿佸畾鐩搁殧绔欑偣浠诲姟");
- }catch (Exception e){
- log.error("閿佸畾鐩搁殧绔欑偣浠诲姟澶辫触");
- }
- }
- }
+// if(wrkMastSta3 != null ){
+// List<WrkMastSta> wrkMastStaPaking = wrkMastStaService.selectPakingWrk(wrkMastSta3.getStaStart());
+// if(wrkMastStaPaking.size() < 1 && !wrkMastSta3.getWrkNo().equals(wrkMastSta.getWrkNo())){//宸叉湁鏍囪涓嶅啀鏍囪
+// wrkMastSta3.setMk(1);
+// basRgv.setPakAll("0");
+// basRgvService.updateById(basRgv);
+//
+// try{
+// wrkMastStaMapper.updateById(wrkMastSta3);
+// log.error("閿佸畾鐩搁殧绔欑偣浠诲姟");
+// }catch (Exception e){
+// log.error("閿佸畾鐩搁殧绔欑偣浠诲姟澶辫触");
+// }
+// }
+// }
basRgv.setPakOut("0");//鍑哄簱涓嶅厑璁�
basRgvService.updateById(basRgv);
rgvThread.setPaking(false);//浠诲姟涓嬪彂閿佸畾
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 30150c6..61d0842 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -26,9 +26,9 @@
private Thread thread;
private Thread armThread;
private Thread agvThread;
+ private Thread rgvTread;
// 棰戠巼
private int i = 0;
- private int k = 0;
private int q = 0;
private boolean rgcWrk = true;
@@ -44,36 +44,32 @@
agvThread = new Thread(this::agvDispatch);
agvThread.start();
+
+ rgvTread = new Thread(this::rgvDispatch);
+ rgvTread.start();
}
private void crnAndDevRun() {
while (!Thread.currentThread().isInterrupted()) {
try {
-
// 闂撮殧
Thread.sleep(1000);
-
// 绯荤粺杩愯鐘舵�佸垽鏂�
if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
continue;
}
-
// 婕旂ず
// mainService.crnDemoOfLocMove1();
//鍒锋柊RGV鍦板浘
mainService.refreshRgvMap();
-
// 鍏ュ嚭搴撴ā寮忓垏鎹㈠嚱鏁�
// mainService.ioConvert();
-
// 鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱
mainService.stnToCrnStnPick(3);
// mainService.stnToCrnStnPick2();
-
// 鍏ュ簱 ===>> 鍏ュ簱绔欏埌鍫嗗灈鏈虹珯锛屾牴鎹潯鐮佹壂鎻忕敓鎴愬叆搴撳伐浣滄。
mainService.generateStoreWrkFile(1); // 缁勬墭
// mainService.generateStoreWrkFile0(2); // WMS鍏ュ簱
Thread.sleep(50);
-
// 鍑哄簱 ===>> 鍫嗗灈鏈哄嚭搴撶珯鍒板嚭搴撶珯
mainService.crnStnToOutStn(4);
// 鍏ュ嚭搴� ===>> 鍫嗗灈鏈哄叆鍑哄簱浣滀笟涓嬪彂
@@ -92,9 +88,7 @@
mainService.ledReset();
//鍫嗗灈鏈鸿鎺ヤ换鍔$敓鎴�
mainService.connectWrk(10);
-
// mainService.outOfDevp(11);
-
if (i>10){
//绌烘墭鐩樿嚜鍔ㄥ嚭搴�
mainService.autoEmptyOut();
@@ -108,28 +102,27 @@
}
q++;
i++;
-
- /////////////////////////////////////RGV璋冨害/////////////////////////////////////
- k++;
-
- // RGV ===>> 灏忚溅浠诲姟浣滀笟涓嬪彂
- try{
- //RGV灏忚溅鍑哄叆搴撳彇璐т笅鍙�
- mainService.rgvIoExecute(11);
- if(k > 2){
- mainService.rgvOutExecute();
- k = 0;
- }
- }catch (Exception e){
- e.printStackTrace();
- log.error("RGV ===>> 灏忚溅浠诲姟浣滀笟涓嬪彂寮傚父"+e);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ private void rgvDispatch() {
+ while (!Thread.currentThread().isInterrupted()) {
+ try {
+ // 闂撮殧
+ Thread.sleep(400);
+ // 绯荤粺杩愯鐘舵�佸垽鏂�
+ if (!SystemProperties.WCS_RUNNING_STATUS.get()) {
+ continue;
}
-// //瀹屾垚灏忚溅浠诲姟
- mainService.rgvTaskComplete();
-
+ mainService.rgvIoExecute(11);//鍙栬揣
+ mainService.rgvOutExecute();//鏀捐揣
+ mainService.rgvTaskComplete();//浠诲姟瀹屾垚
} catch (Exception e) {
e.printStackTrace();
+ log.error("RGV ===>> 灏忚溅浠诲姟浣滀笟涓嬪彂寮傚父"+e);
}
}
}
--
Gitblit v1.9.1