From f9163b89a69f20289eb5bec62d31ecc7e43988f1 Mon Sep 17 00:00:00 2001 From: wuyouming666 <2265557248@qq.com> Date: 星期五, 12 一月 2024 15:59:07 +0800 Subject: [PATCH] 增加工电气管理工程师调试权限 ,参数DB区Json文件 --- springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter1Review.java | 209 ++++++++++++++++++++++++++------------------------- 1 files changed, 107 insertions(+), 102 deletions(-) diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter1Review.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter1Review.java index ab4ee3c..f3737e1 100644 --- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter1Review.java +++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter1Review.java @@ -40,11 +40,12 @@ } return instance; } + PlcParameterObject plcParameterObject = new PlcParameterObject();//璇B鍖烘暟鎹疄渚� - private void init() { + private void init() { try { - String jsonfilename= PlcParameter1Review.class.getResource("/JsonFile/PlcParameter.json").getFile(); + String jsonfilename = PlcParameter1Review.class.getResource("/JsonFile/PlcParameter.json").getFile(); FileReader fileReader = new FileReader(jsonfilename); BufferedReader bufferedReader = new BufferedReader(fileReader); @@ -55,27 +56,27 @@ content.append(line); } - bufferedReader.close(); + bufferedReader.close(); fileReader.close(); - + JSONObject jsonfileobj = new JSONObject(content.toString()); JSONArray jsonArray = jsonfileobj.getJSONArray("parameteInfor"); - plcParameterObject.setPlcAddressBegin(jsonfileobj.getStr("plcAddressBegin"));//璁剧疆璧峰浣嶅湴鍧� - plcParameterObject.setPlcAddressLength(Integer.valueOf(jsonfileobj.getStr("plcAddressLenght")));//璁剧疆鍦板潃闀垮害 - + plcParameterObject.setPlcAddressBegin(jsonfileobj.getStr("plcAddressBegin"));//璁剧疆璧峰浣嶅湴鍧� + plcParameterObject.setPlcAddressLength(Integer.valueOf(jsonfileobj.getStr("plcAddressLenght")));//璁剧疆鍦板潃闀垮害 + for (int i = 0; i < jsonArray.size(); i++) { - JSONObject parameterObj = jsonArray.getJSONObject(i); - + JSONObject parameterObj = jsonArray.getJSONObject(i); + PlcParameterInfo plcParameterInfo = new PlcParameterInfo(jsonfileobj.getStr("plcAddressBegin")); //鍙傛暟瀹炰緥 - String codeid=parameterObj.getStr("codeId"); + String codeid = parameterObj.getStr("codeId"); plcParameterInfo.setCodeId(codeid); plcParameterInfo.setAddressIndex(Integer.valueOf(parameterObj.getStr("addressIndex"))); plcParameterInfo.setRatio(Integer.valueOf(parameterObj.getStr("ratio"))); - plcParameterInfo.setAddressLength(Integer.valueOf(parameterObj.getStr("addressLenght"))); - plcParameterInfo.setUnit(parameterObj.getStr("unit")); + plcParameterInfo.setAddressLength(Integer.valueOf(parameterObj.getStr("addressLenght"))); + plcParameterInfo.setUnit(parameterObj.getStr("unit")); plcParameterObject.addPlcParameter(plcParameterInfo); - } + } System.out.println(""); } catch (IOException e) { e.printStackTrace(); @@ -92,122 +93,126 @@ } catch (InterruptedException e) { e.printStackTrace(); } - byte[] getplcvlues=S7control.getinstance().ReadByte(plcParameterObject.getPlcAddressBegin(),plcParameterObject.getPlcAddressLength()); + byte[] getplcvlues = S7control.getinstance().ReadByte(plcParameterObject.getPlcAddressBegin(), plcParameterObject.getPlcAddressLength()); plcParameterObject.setPlcParameterList(getplcvlues); - int index=plcParameterObject.getPlcParameter("conveyorVelocity(AutoFAST)").getAddressIndex(); - S7control.getinstance().WriteWord(plcParameterObject.getPlcParameter("conveyorVelocity(AutoFAST)").getAddress(index), (short)100); - + int index = plcParameterObject.getPlcParameter("conveyorVelocity(AutoFAST)").getAddressIndex(); + S7control.getinstance().WriteWord(plcParameterObject.getPlcParameter("conveyorVelocity(AutoFAST)").getAddress(index), (short) 100); + List<String> addresses = new ArrayList<>(); addresses.add("conveyorVelocity(AutoFAST)"); addresses.add("conveyorVelocity(AutoSLOW)"); addresses.add("conveyorVelocity(Manual)"); addresses.add("A01A02TURNJOGVelocity"); - addresses.add("A01A02TRAVELJOGVelocity"); - + addresses.add("A01A02TRAVELJOGVelocity"); + plcParameterObject.getPlcParameterValues(addresses); - - JSONObject jsonObject = new JSONObject(); - + + JSONObject jsonObject = new JSONObject(); + jsonObject.append("params", plcParameterObject.getPlcParameterValues(addresses)); jsonObject.append("fanzhuan", plcParameterObject.getPlcParameter("conveyorVelocity(AutoFAST)").getValue()); jsonObject.append("xiaoche", plcParameterObject.getPlcParameter("").getValue()); - WebSocketServer sendwServer = WebSocketServer.sessionMap.get("Parameter1"); + ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("Parameter1"); if (sendwServer != null) { - sendwServer.sendMessage(jsonObject.toString()); - } + for (WebSocketServer webserver : sendwServer) { - WebSocketServer webSocketServer = WebSocketServer.sessionMap.get("Parameter1"); - if (webSocketServer != null) { - List<String> messages = webSocketServer.getMessages(); - List<String> waddresses1 = new ArrayList<>(); - waddresses1.add("DB100.0"); - waddresses1.add("DB100.2"); - waddresses1.add("DB100.4"); - waddresses1.add("DB100.6"); - waddresses1.add("DB100.26"); - waddresses1.add("DB100.28"); - waddresses1.add("DB100.30"); - waddresses1.add("DB100.32"); - waddresses1.add("DB100.34"); - waddresses1.add("DB100.36"); - waddresses1.add("DB100.38"); - waddresses1.add("DB100.40"); + webserver.sendMessage(jsonObject.toString()); - String addressList2 = "DB100.8"; - String addressList3 = "DB100.12"; - if (!messages.isEmpty()) { - // 灏嗘渶鍚庝竴涓秷鎭浆鎹负 short 绫诲瀷鐨勫垪琛� - String lastMessage = messages.get(messages.size() - 1); - // System.out.println("lastMessage锛�" + lastMessage); - JSONArray messageArray = new JSONArray(lastMessage); + if (webserver != null) { - // 鏁村悎绗� 1 鍒� 3 涓暟缁勫苟鍘绘帀 null 鍏冪礌 - List<Short> mergedList = new ArrayList<>(); - for (int i = 0; i < 3; i++) { - JSONArray sublist = messageArray.getJSONArray(i); - for (int j = 0; j < sublist.size(); j++) { - Object value = sublist.get(j); - if (value != null && !value.toString().equals("null")) { - try { - String cleanedValue = value.toString().replaceAll("[^0-9-]", ""); - short sValue = Short.parseShort(cleanedValue.trim()); - mergedList.add(sValue); - } catch (NumberFormatException e) { - // 濡傛灉鏃犳硶瑙f瀽涓� short 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒� - System.err.println("Could not parse value: " + value); + List<String> messages = webserver.getMessages(); + List<String> waddresses1 = new ArrayList<>(); + waddresses1.add("DB100.0"); + waddresses1.add("DB100.2"); + waddresses1.add("DB100.4"); + waddresses1.add("DB100.6"); + waddresses1.add("DB100.26"); + waddresses1.add("DB100.28"); + waddresses1.add("DB100.30"); + waddresses1.add("DB100.32"); + waddresses1.add("DB100.34"); + waddresses1.add("DB100.36"); + waddresses1.add("DB100.38"); + waddresses1.add("DB100.40"); + + String addressList2 = "DB100.8"; + String addressList3 = "DB100.12"; + + if (!messages.isEmpty()) { + // 灏嗘渶鍚庝竴涓秷鎭浆鎹负 short 绫诲瀷鐨勫垪琛� + String lastMessage = messages.get(messages.size() - 1); + // System.out.println("lastMessage锛�" + lastMessage); + JSONArray messageArray = new JSONArray(lastMessage); + + // 鏁村悎绗� 1 鍒� 3 涓暟缁勫苟鍘绘帀 null 鍏冪礌 + List<Short> mergedList = new ArrayList<>(); + for (int i = 0; i < 3; i++) { + JSONArray sublist = messageArray.getJSONArray(i); + for (int j = 0; j < sublist.size(); j++) { + Object value = sublist.get(j); + if (value != null && !value.toString().equals("null")) { + try { + String cleanedValue = value.toString().replaceAll("[^0-9-]", ""); + short sValue = Short.parseShort(cleanedValue.trim()); + mergedList.add(sValue); + } catch (NumberFormatException e) { + // 濡傛灉鏃犳硶瑙f瀽涓� short 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒� + System.err.println("Could not parse value: " + value); + } + } } } - } - } - // 鍐欏叆绗竴涓湴鍧� - if (messageArray.getJSONArray(3).size() > 0) { - Object value = messageArray.getJSONArray(3).get(0); - if (value != null && !value.toString().equals("null")) { - try { - String cleanedValue = value.toString().replaceAll("[^0-9-]", ""); - short sValue = Short.parseShort(cleanedValue.trim()); - S7control.getinstance().WriteWord(addressList2, Arrays.asList(sValue)); - System.out - .println("messageValue锛�" + Arrays.asList(sValue) + " written to PLC at address " + addressList2); - } catch (NumberFormatException e) { - // 濡傛灉鏃犳硶瑙f瀽涓� short 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒� - System.err.println("Could not parse value: " + value); + // 鍐欏叆绗竴涓湴鍧� + if (messageArray.getJSONArray(3).size() > 0) { + Object value = messageArray.getJSONArray(3).get(0); + if (value != null && !value.toString().equals("null")) { + try { + String cleanedValue = value.toString().replaceAll("[^0-9-]", ""); + short sValue = Short.parseShort(cleanedValue.trim()); + S7control.getinstance().WriteWord(addressList2, Arrays.asList(sValue)); + System.out + .println("messageValue锛�" + Arrays.asList(sValue) + " written to PLC at address " + addressList2); + } catch (NumberFormatException e) { + // 濡傛灉鏃犳硶瑙f瀽涓� short 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒� + System.err.println("Could not parse value: " + value); + } + } } - } - } - // 鍐欏叆绗簩涓湴鍧� - if (messageArray.getJSONArray(4).size() > 0) { - Object value = messageArray.getJSONArray(4).get(0); - if (value != null && !value.toString().equals("null")) { - try { - String cleanedValue = value.toString().replaceAll("[^0-9-]", ""); - short sValue = Short.parseShort(cleanedValue.trim()); - S7control.getinstance().WriteWord(addressList3, Arrays.asList(sValue)); - System.out - .println("messageValue锛�" + Arrays.asList(sValue) + " written to PLC at address " + addressList3); - } catch (NumberFormatException e) { - // 濡傛灉鏃犳硶瑙f瀽涓� short 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒� - System.err.println("Could not parse value: " + value); + // 鍐欏叆绗簩涓湴鍧� + if (messageArray.getJSONArray(4).size() > 0) { + Object value = messageArray.getJSONArray(4).get(0); + if (value != null && !value.toString().equals("null")) { + try { + String cleanedValue = value.toString().replaceAll("[^0-9-]", ""); + short sValue = Short.parseShort(cleanedValue.trim()); + S7control.getinstance().WriteWord(addressList3, Arrays.asList(sValue)); + System.out + .println("messageValue锛�" + Arrays.asList(sValue) + " written to PLC at address " + addressList3); + } catch (NumberFormatException e) { + // 濡傛灉鏃犳硶瑙f瀽涓� short 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒� + System.err.println("Could not parse value: " + value); + } + } } + + // 鍐欏叆绗笁涓湴鍧� + if (!mergedList.isEmpty()) { + S7control.getinstance().WriteWord(waddresses1, mergedList); + System.out.println("messageValue锛�" + mergedList + " written to PLC at address " + waddresses1); + } + + // 娓呯┖娑堟伅鍒楄〃 + webserver.clearMessages(); } } - // 鍐欏叆绗笁涓湴鍧� - if (!mergedList.isEmpty()) { - S7control.getinstance().WriteWord(waddresses1, mergedList); - System.out.println("messageValue锛�" + mergedList + " written to PLC at address " + waddresses1); - } - - // 娓呯┖娑堟伅鍒楄〃 - webSocketServer.clearMessages(); } - } - } } } + -- Gitblit v1.8.0