From e6f7bba9aa14c8ff3fc154ccd5a26eb3c3f3d6f9 Mon Sep 17 00:00:00 2001
From: zhangyong <517047165@qq.com>
Date: 星期日, 17 九月 2023 16:10:26 +0800
Subject: [PATCH] 增加PLC读写Byte类型数据
---
springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java | 110 +++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 75 insertions(+), 35 deletions(-)
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java
index f4daa38..131cd1b 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java
@@ -1,67 +1,107 @@
package com.example.springboot.component;
+import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
-import javax.websocket.Session;
+import org.springframework.beans.factory.annotation.Autowired;
-import com.example.springboot.controller.SpianController;
+import com.example.springboot.service.JdbcConnections;
+import com.example.springboot.service.SpianService;
+import com.example.springboot.entity.Glass;
import com.example.springboot.mapper.AlarmMapper;
-
-import cn.hutool.json.JSONArray;
-import cn.hutool.json.JSONObject;
+import com.example.springboot.mapper.SpianMapper;
public class PlcHold extends Thread {
private AlarmMapper alarmMapper;
+ @Autowired
+ private JdbcConnections jdbcConnections;
+ private SpianMapper spianMapper;
+ private SpianService spianService;
+
@Override
public void run() {
+
while (this != null) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
+ // \\ TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ spianService = WebSocketServer.applicationContext.getBean(SpianService.class);
+ spianMapper = WebSocketServer.applicationContext.getBean(SpianMapper.class);
+ jdbcConnections = WebSocketServer.applicationContext.getBean(JdbcConnections.class);
+
+ // 鏍规嵁鐜荤拑id鑾峰彇璁㈠崟鍙�
+ try {
+ Glass glass = jdbcConnections.selectGlass(112);
+
+ // System.out.println(glass.getOrderId());
+ } catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
- List<Boolean> bitlist = S7control.getinstance().ReadBits("DB2.0.0", 100);
- List<Short> paramlist = S7control.getinstance().ReadWord("DB100.6", 1);
-
- //鍒ゆ柇杩涚墖璇锋眰
- // List<Short> datas1List=S7control.getinstance().ReadWord("DB106.24", 1);
- // List<Short> datas1ListState=S7control.getinstance().ReadWord("DB106.8", 1);
- SpianController spianController=new SpianController();
- List<Short> datas1List1=new ArrayList<>();
- List<Short> datas1List2=new ArrayList<>();
- datas1List1.add((short)1);
- datas1List2.add((short)0);
- //鑾峰彇prc杩涚墖璇锋眰鏁版嵁
- boolean exist = datas1List1.contains((short)1);
- boolean exist1 = datas1List2.contains((short)0);
- //杩涚墖璇锋眰涓�1鏃�
- if(exist=true){
- //褰撹繘鐗囪溅绌洪棽鏃�
- if(exist=true){
- List<Short> datas1ListID=S7control.getinstance().ReadWord("DB106.26", 13);
- //鑾峰彇鐜荤拑id
- for(Short list1:datas1ListID)
- spianController.selectAll(list1);
+ // spianService.selectout("11");
+
+ // 鍒ゆ柇杩涚墖璇锋眰
+ List<Short> datas1List = S7control.getinstance().ReadWord("DB106.24", 1);
+ List<Short> datas1ListState = S7control.getinstance().ReadWord("DB106.8", 1);
+
+
+ if (datas1List != null && datas1ListState != null) {
+ // 鑾峰彇prc杩涚墖璇锋眰鏁版嵁
+ boolean exist = datas1List.contains((short) 1);
+ // 鑾峰彇杩涚墖杞︾姸鎬�
+ boolean exist1 = datas1ListState.contains((short) 0);
+ String glassid="";
+ // 杩涚墖璇锋眰涓�1鏃�
+ if (exist = true) {
+ // 褰撹繘鐗囪溅绌洪棽鏃�
+ if (exist1 = true) {
+ // 鑾峰彇杩涚墖id
+ List<Short> datas1ListID = S7control.getinstance().ReadWord("DB106.26", 13);
+ if (datas1ListID != null) {
+ // 鑾峰彇鐜荤拑id
+ for (Short list1 : datas1ListID) {
+ glassid=glassid.concat(list1.toString());
+
+ }
+ spianService.selectAll(Short.parseShort(glassid));
+ }
+
+ }
+ // System.out.println(exist);
}
- //System.out.println(exist);
+ }
+
+ //spianService.selectAll((short) 111);
+
+ List<Short> outlist = S7control.getinstance().ReadWord("DB106.20", 1); // 鍑虹墖杞︾姸鎬�
+ //List<Short> outlist2 = S7control.getinstance().ReadWord("DB106.20", 1); // 鍑虹墖浠诲姟瀹屾垚
+
+
+ if (outlist != null) {
+ // 鍒ゆ柇鎸夎鍗曞嚭鐗�
+ boolean outstate = outlist.contains((short) 0);
+
+ if (outstate = true) { // 鍑虹墖杞︾姸鎬佺┖闂叉椂
+ String orderid = spianMapper.SelectOrderout();
+ if (orderid != null) {
+ spianService.selectout(orderid);
+ }
+ }
}
- //鑾峰彇杩涚墖id
- // List<Short> datas1ListID=S7control.getinstance().ReadWord("DB106.26", 13);
-
-
-
-
-
+
// 鏌ヨ鏁版嵁搴�
// 鎺ㄩ�佸埌鍓嶇
}
}
+
}
--
Gitblit v1.8.0