From 2c7661d0bca739a9b403cdd420d2b91eb77470e6 Mon Sep 17 00:00:00 2001 From: admin <15939171744@163.com> Date: 星期一, 29 四月 2024 19:48:32 +0800 Subject: [PATCH] - --- jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java | 54 ++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 34 insertions(+), 20 deletions(-) diff --git a/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java b/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java index 57e3805..2824bdc 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java +++ b/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java @@ -34,11 +34,19 @@ public SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - //鑷姩宸ヤ綅 - public List<String> automaticList = Arrays.asList("OP300","OP280", "OP320", "OP340", "OP350", "OP360","OP370", "OP390", "OP470", "OP530", "OP540"); + //鏂拌嚜鍔ㄥ伐绔� + public List<String> automaticList = Arrays.asList("OP280", "OP300A","OP300B", "OP320A","OP320B", "OP340A","OP340B", "OP350A","OP350B", "OP360","OP365","OP370", "OP390", "OP470"); - //閲囬泦妯$粍宸ヤ綅 - public List<String> moduleCodeList = Arrays.asList("OP300","OP310", "OP320", "OP340", "OP350", "OP330"); + //閲囬泦妯$粍宸ヤ綅 ModuleCode + public List<String> moduleCodeList = Arrays.asList("OP300A","OP300B","OP320A","OP320B","OP340A","OP340B","OP365", "OP350A", "OP350B", "OP330"); + + //鍖哄垎妯$粍鍨嬪彿宸ヤ綅 + public List<String> distinguishingModules = Arrays.asList("OP300","OP310", "OP340", "OP350", "OP330"); + + + //鍖哄垎pack鍨嬪彿鐨勫伐浣� + public List<String> packIdList = Arrays.asList("OP280","OP360","OP390","OP470"); + //绌虹殑 public List<String> nullList = Arrays.asList("OP250","OP260"); @@ -104,24 +112,32 @@ // } //鑷姩宸ヤ綅 - //plc缁欐垜浠竴涓猵ack鐮侊紝鎷縫ack鐮佹牎楠屽嚭鍨嬪彿 - if(moduleCodeList.stream().anyMatch(s -> s.equals(device))){ - //璇绘ā缁勭爜 - String moduleCode = miloService.readFromOpcUa(thoroughfare + "." + device + ".ModuleCode").getValue().toString(); - String productTye = thoroughfare + "." + device + ".ProductType"; - if(null!=moduleCode && moduleCode.length() == 24){ - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(productTye).value(Integer.valueOf(moduleCode.substring(7,8))).build()); - //杩涚珯淇濆瓨鏁版嵁 -// inSaveDate(thoroughfare,device) + if(automaticList.stream().anyMatch(s -> s.equals(device))){ + //plc缁欐垜浠竴涓ā缁勭爜锛屾嬁妯$粍鐮佹牎楠屽嚭鍨嬪彿 + if(distinguishingModules.stream().anyMatch(s -> s.equals(device))) { + //璇绘ā缁勭爜 +// String moduleCode = miloService.readFromOpcUa(thoroughfare + "." + device + ".ModuleCode").getValue().toString(); +// String productTye = thoroughfare + "." + device + ".ProductType"; +// if (null != moduleCode && moduleCode.length() == 24) { +// miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(productTye).value(Integer.valueOf(moduleCode.substring(7, 8))).build()); +// //杩涚珯淇濆瓨鏁版嵁 +//// inSaveDate(thoroughfare,device) +// //璁板綍鏁版嵁瀹屾垚 +// String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone"; +// +// miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(11).build()); +// +// +// //璇锋眰宸ュ崟 +// } else { +// miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(12).build()); +// } + }else { + //pack 濡傛灉鍖哄垎鍨嬪彿鐨勮瘽灏辫澶勭悊 //璁板綍鏁版嵁瀹屾垚 String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone"; miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(11).build()); - - - //璇锋眰宸ュ崟 - }else { - miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(12).build()); } }else { //鎵嬪姩宸ヤ綅澶勭悊閫昏緫 @@ -209,8 +225,6 @@ String workOrderNo = ""; String productCode = ""; //2銆佷繚瀛樿繃绔欓噰闆嗘暟鎹� -// String workOrderNo = miloService.readFromOpcUa(thoroughfare + "." + device + "." + "WorkOrderNumber").getValue().toString(); -// String productCode = miloService.readFromOpcUa(thoroughfare + "." + device + "." + "ProductType").getValue().toString(); Object orderNumberObject = miloService.readFromOpcUa(thoroughfare + "." + device + "." + "WorkOrderNumber").getValue(); if(orderNumberObject!=null){ workOrderNo = orderNumberObject.toString(); -- Gitblit v1.9.3