From 6daf900a09adcca981f620744bf89851654d88e0 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期二, 05 八月 2025 09:58:08 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/MainProcess.java | 118 +++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 78 insertions(+), 40 deletions(-) diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java index 489211f..e748408 100644 --- a/src/main/java/com/zy/core/MainProcess.java +++ b/src/main/java/com/zy/core/MainProcess.java @@ -1,10 +1,12 @@ package com.zy.core; +import com.zy.asrs.service.impl.ForkMainServiceImpl; import com.zy.asrs.service.impl.MainServiceImpl; import com.zy.core.properties.SystemProperties; import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import javax.annotation.PreDestroy; @@ -18,8 +20,12 @@ @Component public class MainProcess { + @Value("${deviceExecuteConfig.liftType}") + private String liftType; @Autowired private MainServiceImpl mainService; + @Autowired + private ForkMainServiceImpl forkMainService; // 鎵�灞炵嚎绋� private Thread thread; // 棰戠巼 @@ -29,6 +35,14 @@ * =====>> 寮�濮嬪伐浣� */ public void start(){ + if(liftType.equals("ForkLift")){ + initForkMain(); + }else { + initMain(); + } + } + + private void initMain() { thread = new Thread(() -> { while (!Thread.currentThread().isInterrupted()) { try { @@ -41,59 +55,83 @@ continue; } - // 鍏ュ簱 ===>> 鍏ュ簱绔欏埌鍫嗗灈鏈虹珯锛屾牴鎹潯鐮佹壂鎻忕敓鎴愬叆搴撳伐浣滄。 - mainService.generateStoreWrkFile(); // 缁勬墭 -// mainService.generateStoreWrkFile0(); // WMS鍏ュ簱 - - // 闂撮殧 - Thread.sleep(500); - //鍒濆鍖栧疄鏃跺湴鍥� mainService.initRealtimeBasMap(); - // 鎷f枡銆佸苟鏉垮啀鍏ュ簱 - mainService.stnToCrnStnPick(); - // 鎷f枡銆佸苟鏉垮啀鍏ュ簱(325銆�331銆�333銆�339) - mainService.stnToCrnStnPick2(); - // 鐩樼偣鍐嶅叆搴� - mainService.stnToCrnStnPlate(); + // 鍏ュ簱 ===>> 鍥涘悜绌挎杞﹀叆搴撲綔涓氫笅鍙� mainService.shuttleInExecute(); // 鍑哄簱 ===>> 鍥涘悜绌挎杞﹀嚭搴撲綔涓氫笅鍙� mainService.shuttleOutExecute(); - //鍥涘悜绌挎杞︿换鍔″畬鎴� - mainService.shuttleFinished(); - //鎻愬崌鏈轰换鍔� - mainService.liftIoExecute(); - //鎻愬崌鏈轰换鍔″畬鎴� - mainService.liftFinished(); - //搴撲綅绉昏浆 - mainService.locToLocExecute(); - //鎵ц灏忚溅绉诲簱浠诲姟 +// //鍥涘悜绌挎杞︿换鍔″畬鎴� +// mainService.shuttleFinished(); + //鎵ц绉诲簱浠诲姟 + mainService.shuttleLocMoveExecute(); + //璐у弶鎻愬崌鏈轰换鍔� + mainService.forkLiftIoExecute(); + //璐у弶鎻愬崌鏈轰换鍔″畬鎴� + mainService.forkLiftFinished(); + //鎵ц灏忚溅绉诲姩浠诲姟 mainService.shuttleMoveExecute(); // 寮傚父淇℃伅璁板綍 mainService.recErr(); - // 鍏ュ簱 ===>> 绌烘爤鏉垮垵濮嬪寲鍏ュ簱,鍙夎溅鍏ュ簱绔欐斁璐� - mainService.storeEmptyPlt(); - // AGV琛ヨ揣 => 鐢熸垚鍏ュ簱閫氱煡妗� - mainService.robotGenerateAgvTask(); - // AGV琛ヨ揣(鏈烘鑷傛嫞鏂�) - mainService.agvRestockByRobot(); - // AGV琛ヨ揣(閫氱煡AGV鍙栬揣) - mainService.agvRestockInto(); - // AGV琛ヨ揣(鎮寕绾块�氱煡AGV鍙栬揣) - mainService.agvRestockIntoByHangingWire(); - // 300绔欐嫞鏂� - mainService.pick300(); - // 鍑哄簱 ===>> 宸ヤ綔妗d俊鎭啓鍏ed鏄剧ず鍣� - mainService.ledExecute(); - // 鍏朵粬 ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅 - mainService.ledReset(); // 绌挎杞� ===>> 灏忚溅鐢甸噺妫�娴嬪厖鐢� mainService.loopShuttleCharge(); mainService.executeShuttleCharge(); - //鎵弿璁惧PakMk鏍囪鏄惁瓒呮椂 - mainService.scanDevicePakMk(); + //鑷姩鍒囨崲鍑哄叆搴撴ā寮� + mainService.autoSwitchForkLiftIOMode(); + + // 闂撮殧 + Thread.sleep(200); + } catch (Exception e) { + e.printStackTrace(); + } + } + }); + thread.start(); + } + + private void initForkMain() { + thread = new Thread(() -> { + while (!Thread.currentThread().isInterrupted()) { + try { + + // 闂撮殧 + Thread.sleep(300); + + // 绯荤粺杩愯鐘舵�佸垽鏂� + if (!SystemProperties.WCS_RUNNING_STATUS.get()) { + continue; + } + + //鍒濆鍖栧疄鏃跺湴鍥� + forkMainService.initRealtimeBasMap(); + + //鍑哄簱浠诲姟棰勮皟搴︽彁鍗囨満 + forkMainService.outTaskPreviewDispatchForkLift(); + + // 鍏ュ簱 ===>> 鍥涘悜绌挎杞﹀叆搴撲綔涓氫笅鍙� + forkMainService.shuttleInExecute(); + // 鍑哄簱 ===>> 鍥涘悜绌挎杞﹀嚭搴撲綔涓氫笅鍙� + forkMainService.shuttleOutExecute(); +// //鍥涘悜绌挎杞︿换鍔″畬鎴� +// mainService.shuttleFinished(); + //鎵ц绉诲簱浠诲姟 + forkMainService.shuttleLocMoveExecute(); + //璐у弶鎻愬崌鏈轰换鍔� + forkMainService.forkLiftIoExecute(); + //璐у弶鎻愬崌鏈轰换鍔″畬鎴� + forkMainService.forkLiftFinished(); + //鎵ц灏忚溅绉诲姩浠诲姟 + forkMainService.shuttleMoveExecute(); + // 寮傚父淇℃伅璁板綍 + forkMainService.recErr(); + // 绌挎杞� ===>> 灏忚溅鐢甸噺妫�娴嬪厖鐢� + forkMainService.loopShuttleCharge(); + forkMainService.executeShuttleCharge(); + + //鑷姩鍒囨崲鍑哄叆搴撴ā寮� + forkMainService.autoSwitchForkLiftIOMode(); // 闂撮殧 Thread.sleep(200); -- Gitblit v1.9.1