ZengTao
2024-02-23 9102806e784fff6ebbd8773f2f07f8e5768de702
springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning1.java
@@ -18,7 +18,16 @@
public class PlcPositioning1 extends Thread {
    // 用于存储应用程序的配置信息
    private Configuration config;
    // 创建一个自定义的 S7 控制器消息处理器对象
    MessageHandler customS7Control = new MessageHandler();
    public PlcPositioning1() throws IOException {
        config = new Configuration("config.properties");
    }
    @Override
    public void run() {
        while (this != null) {
@@ -32,18 +41,26 @@
            // System.out.println(stt);
            //存片格  出片格读取
          List<Short> arraylist = S7control.getinstance().ReadWord("DB100.42", 33);
            String address = config.getProperty("PlcPositioning1.address");
          List<Short> arraylist = S7control.getinstance().ReadWord(address, 33);
//            System.out.println(arraylist);
//            Short[] values1 = {1,1,1, 1,2, 3, 4, 5, 6, 7, 8, 9, 10,11, 12,13,14,15,16,17,18,19,20,11, 12,13,14,15,16,17,18,19,20 };
//            List<Short> arraylist = new ArrayList<>(Arrays.asList(values1));
            List<Short> arraylist5 = S7control.getinstance().ReadWord("DB106.0", 1);
            List<Short> arraylist6 = S7control.getinstance().ReadWord("DB106.12", 1);
            List<Short> arraylist7 = S7control.getinstance().ReadWord("DB106.40", 1);
            List<Short> arraylist8 = S7control.getinstance().ReadWord("DB106.50", 1);
            arraylist5.addAll(arraylist6);
            arraylist5.addAll(arraylist7);
            arraylist5.addAll(arraylist8);
            JSONObject jsonObject = new JSONObject();
            jsonObject.append("params", arraylist);
            jsonObject.append("shishi1", arraylist5);
//            WebSocketServer sendwServer = WebSocketServer.sessionMap.get("Positioning1");
@@ -60,7 +77,7 @@
                    if (webserver != null) {
                        List<String> messages = webserver.getMessages();
                        //存片格  出片格地址
                        String addressList3 = "DB100.42";
                        if (!messages.isEmpty()) {
                            // 将最后一个消息转换为 short 类型的列表
@@ -90,8 +107,8 @@
                            // 写入存片格  出片格位置设定数据
                            if (!mergedList.isEmpty()) {
                                S7control.getinstance().WriteWord(addressList3, mergedList);
                                System.out.println("messageValue:" + mergedList + " written to PLC at address " + addressList3);
                                S7control.getinstance().WriteWord(address, mergedList);
                                System.out.println("messageValue:" + mergedList + " written to PLC at address " + address);
                            }
                            // 清空消息列表