From b0cd8e56e79637407ff32bd559eab896101d887c Mon Sep 17 00:00:00 2001 From: wang <3597712270@qq.com> Date: 星期三, 03 四月 2024 16:44:28 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes --- CacheGlassModule/src/main/java/com/mes/service/CacheGlassService/Logic.java | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 107 insertions(+), 10 deletions(-) diff --git a/CacheGlassModule/src/main/java/com/mes/service/CacheGlassService/Logic.java b/CacheGlassModule/src/main/java/com/mes/service/CacheGlassService/Logic.java index eb7da04..f239f84 100644 --- a/CacheGlassModule/src/main/java/com/mes/service/CacheGlassService/Logic.java +++ b/CacheGlassModule/src/main/java/com/mes/service/CacheGlassService/Logic.java @@ -1,10 +1,16 @@ package com.mes.service.CacheGlassService; +import java.util.List; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.mes.common.PlcTools.S7control; +import com.mes.entity.EdgStorageCageDetails; import com.mes.entity.GlassInfo; +import com.mes.entity.TaskCache; +import com.mes.entity.device.PLCAutoMes; +import com.mes.entity.device.PlcParameterObject; import com.mes.mapper.SelectInfo; @@ -12,11 +18,12 @@ public class Logic { @Autowired private SelectInfo selectInfo; - //璇嗗埆閫昏緫 + //璇嗗埆閫昏緫 涓嶄氦浜� public void identify(String Number){ //鏌ヨ浠诲姟 - // PlcParameterObject plcmes=PLCAutoMes.PlcMesObject; - // S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1); + PlcParameterObject plcmes=PLCAutoMes.PlcMesObject; + S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1); + String s=S7control.getinstance().ReadWord("DB14.26", 1).get(0)+""; boolean isexist=isExist(Number); if (isexist) { //瀛樺湪閫昏緫 1.娣诲姞淇℃伅 2.鍥炲PLC瀛樺湪 @@ -26,22 +33,111 @@ //S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 2); } } + //鐞嗙墖 + public void Process(){ + String Result=S7control.getinstance().ReadWord("DB14.0", 1).get(0)+""; + String Number=S7control.getinstance().ReadWord("DB14.2", 1).get(0)+""; + if(Result=="1"){//杩涚墖璇锋眰 + processInto(Number); + }else if(Result=="2"){//鍑虹墖璇锋眰 + processOut(); + }else if(Result=="3"){//杩涘嚭鐗囪姹� + if (!processOut()) { //鍏堝嚭鍚庤繘 + processInto(Number); + } + } + } //鐞嗙墖 杩� - public void process(String imagePath){ + public boolean processInto(String Number){ //鏌ヨ娑堟伅闃熷垪閲岀殑鐜荤拑 - + GlassInfo GlassInfo=selectInfo.SelectGlassId(Number); + PlcParameterObject plcmes=PLCAutoMes.PlcMesObject; + if(GlassInfo!=null){//瀛樺湪姝ょ幓鐠冪紪鍙� + //鍚岄挗鍖栫増鍥惧唴鐨勬爡鏍煎彿 + List<EdgStorageCageDetails> list=selectInfo.SelectIsExistIntoCache(GlassInfo.getTemperinglayoutid(),GlassInfo.getTemperingfeedsequence(),GlassInfo.getWidth()); + //绌烘爡鏍煎彿 + if (list.size()==0) { + list=selectInfo.SelectCacheLeisure(); + } + //灏忎簬姝ょ幓鐠冮挗鍖栫増鍥惧簭鍙风殑鏍呮牸鍙� + if(list.size()==0){ + list=selectInfo.SelectIsExistIntoCache(GlassInfo.getTemperinglayoutid(),GlassInfo.getWidth()); + } + if(list.size()>0){ + //瀛樺湪绌烘牸 + //1.鐢熸垚浠诲姟锛� 璧峰浣嶇疆0 缁撴潫浣嶇疆this.slot 浠诲姟绫诲瀷 1 锛堣繘鐗囦换鍔★級 + //2.鍥炲 1杩涚墖 + EdgStorageCageDetails item=list.get(0); + selectInfo.insertCacheTask(GlassInfo.getId()+"","0",item.getSlot()+"","1"); + S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1); + return true; + } + + }else{ + // ID缂栧彿涓嶅瓨鍦� 涓嶅鐞�/鍥炲PLC 杩涜鎶ヨ鎻愮ず + } //杩斿洖缁撴灉 + return false; } //鐞嗙墖 鍑� - public void processOut(String imagePath){ + public boolean processOut(){ //鏌ヨ浠诲姟 - + String A09=S7control.getinstance().ReadWord("DB14.56", 1).get(0)+""; + String A10=S7control.getinstance().ReadWord("DB14.58", 1).get(0)+""; + PlcParameterObject plcmes=PLCAutoMes.PlcMesObject; + List<EdgStorageCageDetails> list=selectInfo.SelectCacheOut(); + boolean isOut=true;//鍏朵粬鎯呭喌鏉′欢 濡傦細鍚庣画璁惧鏁呴殰绂佹鐞嗙墖鍑虹墖 绛� + if (list.size()>0&&isOut) { + EdgStorageCageDetails item=list.get(0); + if(A09=="0"&&A10=="1"){ + //鍑哄埌 A09 + selectInfo.insertCacheTask(item.getGlassid()+"","0","09","2"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "1"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); + return true; + }else if(A09=="1"&&A10=="0"){ + //鍑哄埌 A10 + selectInfo.insertCacheTask(item.getGlassid()+"","0","10","2"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "2"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); + return true; + }else if(A09=="0"&&A10=="0"){ + //閮藉厑璁� A09/A10 涓婁竴鐗囨槸鍚﹀拰姝ょ墖鐜荤拑灏哄灏哄鐩稿悓 + String endcell="09"; + String SendEndcell="1"; + boolean If_=false; + GlassInfo glassInfo09= selectInfo.SelectLastOutCacheInfo("09"); + GlassInfo glassInfo10= selectInfo.SelectLastOutCacheInfo("10"); + if(glassInfo10!=null&&glassInfo10.getWidth()==item.getWidth()&&glassInfo10.getHeight()==item.getHeight()){ + endcell="10"; + SendEndcell="2"; + }else if(glassInfo10!=null&&If_){ + //鍏朵粬鏉′欢 + } + selectInfo.insertCacheTask(item.getGlassid()+"","0",endcell,"2"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), SendEndcell); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); + return true; + } + } //杩斿洖缁撴灉 + return false; } - //纾ㄨ竟 - public void processMb(String imagePath){ - //鏌ヨ浠诲姟 + //纾ㄨ竟 涓嶄氦浜� 鐞嗙墖鍜岀(杈规満鑷繁浜や簰 + public void processMb(String Number){ + //鏌ヨ浠诲姟 + GlassInfo GlassInfo=selectInfo.SelectGlassId(Number); + PlcParameterObject plcmes=PLCAutoMes.PlcMesObject; + if(GlassInfo!=null){ + //鍙戦�佷换鍔� ID 闀� 瀹� 鍘� 鍊掕 宸ヨ壓鍔熻兘绛� + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.22").getAddress(),"N10000"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.24").getAddress(), "1000"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.26").getAddress(),"800"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(),"60"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.30").getAddress(), "2"); + S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1"); + } //杩斿洖缁撴灉 } @@ -63,6 +159,7 @@ } return true;//杩斿洖 瀛樺湪 } + //鏄惁瀛樺湪姝ょ紪鍙风幓鐠� public boolean isExist(String Number){ //鏌ヨ鏄惁瀛樺湪 -- Gitblit v1.8.0