From 7a23bac143166768c577411d68b256fdf85c8bb5 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期一, 27 五月 2024 14:43:33 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java | 83 ++++++++++++++++++++++++----------------- 1 files changed, 49 insertions(+), 34 deletions(-) diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java index 4110f80..a019c7c 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java @@ -39,6 +39,7 @@ try { //鑾峰彇鏄惁鏈変笂鐗囪姹� String loadRequest = plcParameterObject.getPlcParameter("loadRequest").getValue(); + String mesToPlc = plcParameterObject.getPlcParameter("MesToPlc").getValue(); //鍒ゆ柇寮�濮嬩笂鐗囩殑宸ョ▼鍙� Engineering engineering = engineeringService.selectInitiate(1); if ("1".equals(loadRequest) && engineering != null) { @@ -51,34 +52,18 @@ int workId = upwork.getWorkstationId();//宸ヤ綅id double width = upwork.getPatternWidth();//瀹藉害 double height = upwork.getPatternHeight();//楂樺害 - S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("WorkId").getAddress(), workId); - S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("GlassWidth").getAddress(), (long) width); - S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("GlassHeight").getAddress(), (long) height); - S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("MesToPlc").getAddress(), 1); + S7object.getinstance().plccontrol.writeWord(plcParameterObject.getPlcParameter("WorkId").getAddress(), (short) workId); + S7object.getinstance().plccontrol.writeWord(plcParameterObject.getPlcParameter("GlassWidth").getAddress(), (short) width); + S7object.getinstance().plccontrol.writeWord(plcParameterObject.getPlcParameter("GlassHeight").getAddress(), (short) height); + S7object.getinstance().plccontrol.writeWord(plcParameterObject.getPlcParameter("MesToPlc").getAddress(), (short) 1); //鏇存敼涓婄墖琛ㄧ姸鎬� upPattenUsageService.updateUpPattenUsageState(upPattenUsage, workId); } } - //鑾峰彇鏄惁鏈夋眹鎶� - String loadStatus = plcParameterObject.getPlcParameter("PlcStatus").getValue(); - if (loadStatus != null) { - log.info(loadStatus); - if ("1".equals(loadStatus)) { - log.info("鏀跺埌姹囨姤浠诲姟瀹屾垚"); - S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("MesToPlcStatus").getAddress(), 1); - } else if ("2".equals(loadStatus)) { - log.info("鏀跺埌姹囨姤鏈畬鎴愪换鍔�"); - //鍑忓皯宸ヤ綅鏁伴噺,鎭㈠浠诲姟鐘舵�� - overTask(loadStatus,0); - } else if ("3".equals(loadStatus)) { - log.info("鏀跺埌姹囨姤鐜荤拑鐮存崯"); - overTask(loadStatus,0); - } else if("0".equals(loadStatus)){ - log.info("鏀跺埌姹囨姤娓�0鐘舵��"); - //鍑忓皯宸ヤ綅鏁伴噺,瀹屾垚浠诲姟鐘舵�� - overTask(loadStatus,1); - } + if ("1".equals(mesToPlc) && "0".equals(loadRequest)) { + //璇锋眰瀛椾负闆舵椂锛屼换鍔″瓧娓呴浂 + S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("MesToPlc").getAddress(), 0); } //鎵ц鍚庝紤鐪�300姣 //Thread.sleep(300); @@ -86,16 +71,46 @@ e.printStackTrace(); } } - public void overTask(String loadStatus,int state) throws InterruptedException { - UpPattenUsage upPattenUsage = upPattenUsageService.selectOverTask(); - if (upPattenUsage != null) { - log.info("鏀跺埌姹囨姤娓厈}鐘舵��",loadStatus); - //鍑忓皯宸ヤ綅鏁伴噺 - upWorkstationService.reduceWorkstationNumber(upPattenUsage.getState()); - //瀹屾垚涓婄墖琛ㄧ姸鎬� - upPattenUsageService.updateUpPattenUsageState(upPattenUsage, 100); - S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("MesToPlcStatus").getAddress(), 0); - } - } + + @Scheduled(fixedDelay = 300) + public void plcLoadGlassReport() { + //鑾峰彇鏄惁鏈夋眹鎶� + String loadStatus = plcParameterObject.getPlcParameter("PlcStatus").getValue(); + if (loadStatus != null) { + log.info(loadStatus); + switch (loadStatus) { + case "1": + log.info("鏀跺埌姹囨姤浠诲姟瀹屾垚"); + S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("MesToPlcStatus").getAddress(), 1); + break; + case "2": + log.info("鏀跺埌姹囨姤鏈畬鎴愪换鍔�"); + //鍑忓皯宸ヤ綅鏁伴噺,鎭㈠浠诲姟鐘舵�� + overTask(loadStatus, 0); + break; + case "3": + log.info("鏀跺埌姹囨姤鐜荤拑鐮存崯"); + overTask(loadStatus, 0); + break; + case "0": + log.info("鏀跺埌姹囨姤娓�0鐘舵��"); + //鍑忓皯宸ヤ綅鏁伴噺,瀹屾垚浠诲姟鐘舵�� + overTask(loadStatus, 100); + break; + } + } + } + + public void overTask(String loadStatus, int state) { + UpPattenUsage upPattenUsage = upPattenUsageService.selectOverTask(); + if (upPattenUsage != null) { + log.info("鏀跺埌姹囨姤娓厈}鐘舵��", loadStatus); + //鍑忓皯宸ヤ綅鏁伴噺 + upWorkstationService.reduceWorkstationNumber(upPattenUsage.getState()); + //瀹屾垚涓婄墖琛ㄧ姸鎬� + upPattenUsageService.updateUpPattenUsageState(upPattenUsage, state); + S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("MesToPlcStatus").getAddress(), 0); + } + } } \ No newline at end of file -- Gitblit v1.8.0