wu
2023-12-06 afbddf62e45bce6fd9428cddec36382c75cee53a
springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java
@@ -7,6 +7,7 @@
import java.io.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class PlcParameter2 extends Thread {
@@ -61,39 +62,111 @@
  public void run() {
    while (this != null) {
      try {
        Thread.sleep(500);
        Thread.sleep(1000);
      } catch (InterruptedException e) {
        e.printStackTrace();
      }
//      this.readValue();
//      String PlcAddress = this.name;
//      Integer Plccount = this.count;
      // System.out.println(stt);
      // List<Short> arraylist = S7control.getinstance().ReadWord("DB100.0", 12);
      // List<Short> state = S7control.getinstance().ReadWord("DB103.0", 10);
     //  手动状态地址
      List<String> addressList1 = new ArrayList<>();
      Boolean[] values = { false, true, true, true, true, true, true, true, true,
              true};
      List<Boolean> paramlist = new ArrayList<>(Arrays.asList(values));
      Short[] values1 = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1};
      List<Short> arraylist = new ArrayList<>(Arrays.asList(values1));
      addressList1.add("DB103.44");//D01
      addressList1.add("DB103.58");//D02
      addressList1.add("DB103.72");//D03
      addressList1.add("DB103.86");//D04
      addressList1.add("DB103.100");//D05
      addressList1.add("DB103.114");//D06
      addressList1.add("DB103.128");//A01
      addressList1.add("DB103.142");//A01 2
      addressList1.add("DB103.156");//A02
      addressList1.add("DB103.184");//B01
      addressList1.add("DB103.212");//B02
      Short[] values2 = { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 };
      List<Short> state = new ArrayList<>(Arrays.asList(values2));
      List<String> paramlist = S7control.getinstance().readStrings(addressList1);
   //清除ID地址
      List<String> addresses = new ArrayList<>();
      addresses.add("DB103.0");
      addresses.add("DB103.2");
      addresses.add("DB103.12");
      addresses.add("DB103.14");
      addresses.add("DB103.16");
      addresses.add("DB103.18");
      addresses.add("DB103.8");
      addresses.add("DB103.10");
      addresses.add("DB103.4");
      addresses.add("DB103.6");
      List<Short> data = S7control.getinstance().readWords(addresses);
      //id
      List<String> addressList0 = new ArrayList<>();
      addressList0.add("DB101.9.2");
      addressList0.add("DB101.9.3");
      addressList0.add("DB101.9.4");
      addressList0.add("DB101.9.5");
      addressList0.add("DB101.9.6");
      addressList0.add("DB101.9.7");
      addressList0.add("DB101.10.0");
      addressList0.add("DB101.10.1");
      addressList0.add("DB101.10.2");
      addressList0.add("DB101.10.3");
     // 扫码枪
      List<Boolean> data2 = S7control.getinstance().readBits(addressList0);
      List<String> addressList3 = new ArrayList<>();
      addressList3.add("DB103.256");
      addressList3.add("DB103.270");
      List<String> data3 = S7control.getinstance().readStrings(addressList3);
// A01 A02 B01 B02
      List<String> addresses4 = new ArrayList<>();
      addresses4.add("DB103.52");
      addresses4.add("DB103.54");
      addresses4.add("DB103.56");
      addresses4.add("DB103.60");
    List<Short> data4 = S7control.getinstance().readWords(addresses4);
//      List<Long> TIME2 = Collections.singletonList(S7control.getinstance().readtime("DB100.194"));
//      System.out.println("addressList:" + TIME2);
      //
//      String[] values6 = { ".x1 ","x2 ","x3",";;x4","x5","x6","x7","x8","x9","x10","x11"};
//      List<String> paramlist = new ArrayList<>(Arrays.asList(values6));
//      Short[] values1 = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1};
//     List<Short> data = new ArrayList<>(Arrays.asList(values1));
//      Boolean[] value4 = { false, false, false, false, false, false, false, false, false,
//              false};
//     List<Boolean> data2 = new ArrayList<>(Arrays.asList(value4));
//      String[] values3 = { ".x11 ","x21 "};
//      List<String> data3 = new ArrayList<>(Arrays.asList(values3));
//      Short[] values4 = { 2,2,3,4};
//      List<Short> data4 = new ArrayList<>(Arrays.asList(values4));
//
//
      JSONObject jsonObject = new JSONObject();
      short[] params = new short[paramlist.size()];
      for (int i = 0; i < paramlist.size(); i++) {
        boolean value = paramlist.get(i);
      short[] params = new short[data2.size()];
      for (int i = 0; i < data2.size(); i++) {
        boolean value = data2.get(i);
        params[i] = value ? (short) 1 : (short) 0;
      }
      // new short[]{1,1, 1, 1, 1, 1, 2, 33, 2,3, 4, 5}
      // new short[]{0,0, 0, 0, 0, 0, 0, 0, 0, 0}
      jsonObject.append("params", params);
      jsonObject.append("params", arraylist);
      jsonObject.append("params", state);
      jsonObject.append("params", paramlist);
      jsonObject.append("params", data);
      jsonObject.append("params", data3);
      jsonObject.append("params", data4);
      WebSocketServer sendwServer = WebSocketServer.sessionMap.get("Parameter2");
      if (sendwServer != null) {
@@ -104,8 +177,20 @@
      if (webSocketServer != null) {
        List<String> messages = webSocketServer.getMessages();
        List<String> addressList = new ArrayList<>();
        String addressList = "DB2.0.0";
        addressList.add("DB101.9.2");
        addressList.add("DB101.9.3");
        addressList.add("DB101.9.4");
        addressList.add("DB101.9.5");
        addressList.add("DB101.9.6");
        addressList.add("DB101.9.7");
        addressList.add("DB101.10.0");
        addressList.add("DB101.10.1");
        addressList.add("DB101.10.2");
        addressList.add("DB101.10.3");
        if (!messages.isEmpty()) {
          // 将最后一个消息转换为整数类型的列表
@@ -132,7 +217,7 @@
          }
          // 将布尔列表写入 PLC
//          S7control.getinstance().WriteBit(addressList, messageBooleans);
    S7control.getinstance().WriteBit(addressList, messageBooleans);
          System.out.println("messageValues:" + messageBooleans);
          System.out.println("addressList:" + addressList);
          // 清空消息列表