From cdcda32802aabe65fc6d20fb06907998b3bb9a61 Mon Sep 17 00:00:00 2001 From: LSH Date: 星期二, 25 七月 2023 16:25:41 +0800 Subject: [PATCH] #码垛位自动补充空板:驱动拆盘机输出托盘实装 --- src/main/java/com/zy/asrs/entity/WaitPakin.java | 3 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 79 ++++++++++++++++++++++++++ src/main/java/com/zy/asrs/entity/WrkDetl.java | 1 src/main/java/com/zy/asrs/entity/WrkMast.java | 3 + src/main/java/com/zy/asrs/mapper/WrkMastMapper.java | 26 ++++++++ src/main/resources/mapper/WrkMastMapper.xml | 14 ++++ src/main/java/com/zy/core/MainProcess.java | 45 +++++++++----- 7 files changed, 149 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/zy/asrs/entity/WaitPakin.java b/src/main/java/com/zy/asrs/entity/WaitPakin.java index a18b5bf..5eca9e3 100644 --- a/src/main/java/com/zy/asrs/entity/WaitPakin.java +++ b/src/main/java/com/zy/asrs/entity/WaitPakin.java @@ -61,7 +61,8 @@ /** * 浠撳簱鍙� - */ + * 寰愬伐姹変簯涓婇ザ姹熼摐锛氭湪绠辩被鍨� + * */ @ApiModelProperty(value= "鍝侀」鏁�") private String brand; diff --git a/src/main/java/com/zy/asrs/entity/WrkDetl.java b/src/main/java/com/zy/asrs/entity/WrkDetl.java index 05c9703..9b092bb 100644 --- a/src/main/java/com/zy/asrs/entity/WrkDetl.java +++ b/src/main/java/com/zy/asrs/entity/WrkDetl.java @@ -224,6 +224,7 @@ /** * 瑕佹眰妫�楠� 1: 鏄� 0: 鍚� + * 寰愬伐姹変簯鎷嗗灈鏍囪 0: 鏈媶锛堥粯璁わ級 1: 宸叉媶 */ @ApiModelProperty(value= "瑕佹眰妫�楠� 1: 鏄� 0: 鍚� ") private Integer inspect; diff --git a/src/main/java/com/zy/asrs/entity/WrkMast.java b/src/main/java/com/zy/asrs/entity/WrkMast.java index 0000091..69eb8d2 100644 --- a/src/main/java/com/zy/asrs/entity/WrkMast.java +++ b/src/main/java/com/zy/asrs/entity/WrkMast.java @@ -74,6 +74,9 @@ @TableField("rgv_no") private Integer rgvNo; + /** + * 寰愬伐姹変簯鎷嗗灈鏍囪 0: 鏈媶 1: 宸叉媶 2:宸插鐞嗗彲涓嬩竴姝ワ紙杞巻鍙叉。锛� + */ @ApiModelProperty(value= "") @TableField("sheet_no") private String sheetNo; diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java index dad8f44..69829aa 100644 --- a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java +++ b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java @@ -174,7 +174,10 @@ */ List<WrkMast> selectRgvOutWorking(@Param("rgvNo")Integer rgvNo); - /*================================================RGV浠诲姟缁戝畾鐩稿叧 ==================================================*/ + /*..............................寰愬伐姹変簯..............浠ヤ笅.............涓婇ザ姹熼摐..............................*/ + /*...............................Created by Monkey D. Luffy on 2023.07.19................................*/ + + /*=========================================== RGV浠诲姟缁戝畾鐩稿叧 ========================================*/ /** * 鑾峰彇绛夊緟缁戝畾RGV鐨勪换鍔� @@ -219,5 +222,24 @@ WrkMast selectRgvOutSteNo(@Param("rgvNo")Integer rgvNo); - /*================================================RGV浠诲姟缁戝畾鐩稿叧 ==================================================*/ + /*=========================================== RGV浠诲姟缁戝畾鐩稿叧 ========================================*/ + + /*=========================================== 鑷姩琛ョ┖鏉跨浉鍏� ========================================*/ + + /** + * 鏌ユ壘鏄惁瀛樺湪鍑哄簱宸ヤ綔涓瓑寰匯GV鎼繍鐨勪换鍔� + */ + List<WrkMast> selectDischargingMachineOutputTray(); + + + int selectConfigCount10468N(); + // update Config -- Y + @Update("update sys_config set value='Y' where 1=1 and id=10468 and value = 'N'") + int updateConfig10468Y(); + /*=========================================== 鑷姩琛ョ┖鏉跨浉鍏� ========================================*/ + + + + + /*..............................涓婇ザ姹熼摐..............浠ヤ笂.............寰愬伐姹変簯..............................*/ } 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 ca57d80..b497b51 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -586,6 +586,8 @@ for (WrkMast wrkMast : wrkMasts) { //鐩爣绔� Integer staNo = wrkMast.getStaNo(); + //婧愮珯 + Integer sourceStaNo = wrkMast.getSourceStaNo(); //閫氳繃鐩爣绔欐悳绱gv鍙� Integer rgvNo = this.searchRgvNo(staNo); if (rgvNo == null) {//鏈壘鍒板彲鐢ㄧ殑rgv @@ -3258,4 +3260,81 @@ } } } + + /** + * 鍏朵粬 ===>> 鐮佸灈浣嶈嚜鍔ㄨˉ鍏呯┖鏉匡細椹卞姩鎷嗙洏鏈鸿緭鍑烘墭鐩� + */ + public synchronized void dischargingMachineOutputTray() { + try { + List<WrkMast> wrkMasts = wrkMastMapper.selectDischargingMachineOutputTray(); + if (Cools.isEmpty(wrkMasts) || wrkMasts.size()>3){ + return; + } + + // 鑾峰彇鍏ュ簱绔欎俊鎭� + SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1); + StaProtocol staProtocol = devpThread.getStation().get(213); + if (staProtocol == null) { + log.error("鐮佸灈浣嶈嚜鍔ㄨˉ鍏呯┖鏉匡細椹卞姩鎷嗙洏鏈鸿緭鍑烘墭鐩橈紝浠诲姟涓嬪彂澶辫触锛岀珯鐐规煡璇㈠け璐�"); + return; + } else { + staProtocol = staProtocol.clone(); + } + + if (!staProtocol.isLoading()){ + log.info("鐮佸灈浣嶈嚜鍔ㄨˉ鍏呯┖鏉匡細椹卞姩鎷嗙洏鏈鸿緭鍑烘墭鐩橈紝浠诲姟涓嬪彂澶辫触锛岀珯鐐规棤鐗╋紝姝e湪鑷姩璋冨嚭绌烘澘锛�"); + int i = wrkMastMapper.selectConfigCount10468N(); + if (i==1){ + wrkMastMapper.updateConfig10468Y(); + } + return; + }else { + int i = wrkMastMapper.selectConfigCount10468N(); + if (i==0){ + return; + } + } + + // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢 + if (staProtocol.isAutoing() && staProtocol.getWorkNo() == 0 && staProtocol.isPakMk()) { + staProtocol.setWorkNo((short)9999); + staProtocol.setStaNo((short)214); + devpThread.setPakMk(staProtocol.getSiteId(), false); + boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol)); + if (!result) { + throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触==>鐮佸灈浣嶈嚜鍔ㄨˉ鍏呯┖鏉匡細椹卞姩鎷嗙洏鏈鸿緭鍑烘墭鐩橈紒"); + } + log.info("鐮佸灈浣嶈嚜鍔ㄨˉ鍏呯┖鏉匡細椹卞姩鎷嗙洏鏈鸿緭鍑烘墭鐩橈紝浠诲姟涓嬪彂鎴愬姛锛氬伐浣滃彿9999銆佺洰鏍囩珯214锛�"); + }else { + log.error("鐮佸灈浣嶈嚜鍔ㄨˉ鍏呯┖鏉匡細椹卞姩鎷嗙洏鏈鸿緭鍑烘墭鐩橈紝浠诲姟涓嬪彂澶辫触锛岀珯鐐圭姸鎬佷笉绗﹀悎锛�"); + } + }catch (Exception e){ + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } + } + + /** + * 鍏朵粬 ===>> 鎷嗙洏鏈哄绌烘澘鎵爜锛岄┍鍔ㄦ墭鐩樺悜鐮佸灈浣嶏紝涓嶅叆搴� + */ + public synchronized void scanBarcodeEmptyBoard() { + try { + + }catch (Exception e){ + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } + } + + /** + * 鍏朵粬 ===>> 鐮佸灈瀹屾垚椹卞姩鎵樼洏涓嬩竴姝ユ壂鐮佸叆搴� + */ + public synchronized void stackingCompletionDriveTray() { + try { + + }catch (Exception e){ + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } + } } diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java index bb4baec..9918d03 100644 --- a/src/main/java/com/zy/core/MainProcess.java +++ b/src/main/java/com/zy/core/MainProcess.java @@ -63,18 +63,19 @@ // 鍏ュ簱 ===>> 鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣� mainService.storeFinished(); - ///////////////////////RGV璋冨害///////////////////////////////////// - //缁戝畾灏忚溅鏂规硶 - mainService.rgvBindSte(); - // 鍏ュ嚭搴� ===>> RGV鍏ュ嚭搴撲綔涓氫笅鍙� - mainService.rgvIoExecute(); - // RGV鍏ュ簱 ===>> 鏍规嵁RGV瀹屾垚淇″彿,鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣� - mainService.rgvFinished(); + /////////////////////////////////////RGV璋冨害///////////////////////////////////// + +// //缁戝畾灏忚溅鏂规硶 +// mainService.rgvBindSte(); +// // 鍏ュ嚭搴� ===>> RGV鍏ュ嚭搴撲綔涓氫笅鍙� +// mainService.rgvIoExecute(); +// // RGV鍏ュ簱 ===>> 鏍规嵁RGV瀹屾垚淇″彿,鎵ц瀵瑰伐浣滄。鐨勫畬鎴愭搷浣� +// mainService.rgvFinished(); // // 鍏ュ嚭搴� ===>> RGV鍑哄簱绔欏埌绯荤粺鍏ュ嚭搴撶珯 // mainService.rgvDestStnToCrnStn(); // // 鍑哄簱 ===>> RGV鍑哄簱绔欏埌绯荤粺鍑哄簱绔� // mainService.rgvOutDStnToOutStn(); - ////////////////////////////////////////////////////////////////// + /////////////////////////////////////RGV璋冨害///////////////////////////////////// // 寮傚父淇℃伅璁板綍 mainService.recErr(); @@ -85,19 +86,29 @@ // 鍏朵粬 ===>> LED鏄剧ず鍣ㄥ浣嶏紝鏄剧ず榛樿淇℃伅 mainService.ledReset(); - mainService.outOfDevp(); +// mainService.outOfDevp(); - //绌烘墭鐩樿嚜鍔ㄥ嚭搴� - mainService.autoEmptyOut(); +// //绌烘墭鐩樿嚜鍔ㄥ嚭搴� +// mainService.autoEmptyOut(); // //绌烘墭鐩樿嚜鍔ㄥ叆搴� // mainService.autoEmptyIn(); - // 鍏朵粬 ===>> 鍏ュ嚭搴撴ā寮忓垏鎹� - i++; - if (i > 1) { - mainService.ioConvert(); - i = 0; - } +// // 鍏朵粬 ===>> 鍏ュ嚭搴撴ā寮忓垏鎹� +// i++; +// if (i > 1) { +// mainService.ioConvert(); +// i = 0; +// } + + //鐮佸灈浣嶈嚜鍔ㄨˉ鍏呯┖鏉匡細椹卞姩鎷嗙洏鏈鸿緭鍑烘墭鐩� + mainService.dischargingMachineOutputTray(); + + //鎷嗙洏鏈哄绌烘澘鎵爜锛岄┍鍔ㄦ墭鐩樺悜鐮佸灈浣嶏紝涓嶅叆搴� + mainService.scanBarcodeEmptyBoard(); + + //鐮佸灈瀹屾垚椹卞姩鎵樼洏涓嬩竴姝ユ壂鐮佸叆搴� + mainService.stackingCompletionDriveTray(); + } catch (Exception e) { e.printStackTrace(); diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml index ae4b2c5..66bfd2b 100644 --- a/src/main/resources/mapper/WrkMastMapper.xml +++ b/src/main/resources/mapper/WrkMastMapper.xml @@ -243,7 +243,7 @@ <select id="selectWaitBindRGV" resultMap="BaseResultMap"> select * from dbo.asr_wrk_mast where 1=1 - and wrk_sts in (2,22) + and wrk_sts in (2,14) and rgv_no is null </select> @@ -264,7 +264,7 @@ </select> <select id="selectRgvInSteNo" resultMap="BaseResultMap"> - select top 1 * from dbo.asr_wrk_mast where 1=1 and wrk_sts =12 and rgv_no=#{rgvNo} + select top 1 * from dbo.asr_wrk_mast where 1=1 and wrk_sts =14 and rgv_no=#{rgvNo} <if test="rgvNo == 1"> order by rgv_dsta_no </if> @@ -284,5 +284,15 @@ </select> <!-- ==============================================RGV浠诲姟缁戝畾鐩稿叧 ============================================== --> + <!-- ==============================================鑷姩琛ョ┖鏉跨浉鍏� ============================================== --> + <select id="selectConfigCount10468N" resultMap="BaseResultMap"> + select * from dbo.asr_wrk_mast where 1=1 and io_type = 201 + </select> + + <select id="selectExistInEmpty" resultType="java.lang.Integer"> + SELECT COUNT(1) FROM dbo.sys_config Where 1=1 and id=10468 and value = 'N' + </select> + + <!-- ==============================================鑷姩琛ョ┖鏉跨浉鍏� ============================================== --> </mapper> -- Gitblit v1.9.1