From 3614b4f694d9d40708df6477d56a40b9311ad48a Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期三, 31 一月 2024 14:50:17 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/CanadaMes
---
springboot-vue3/src/main/java/com/example/springboot/component/S7control.java | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 54 insertions(+), 3 deletions(-)
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java b/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
index a5f3e44..ce4f674 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
@@ -37,13 +37,21 @@
}
return instance;
}
-
+
/**
* 鍏抽棴瑗块棬瀛恠7閫氳杩炴帴
*/
public void CloseS7client() {
if (s7PLC == null)
s7PLC.close();
+ s7PLC.checkConnected();
+ }
+
+ /**
+ * s7閫氳杩炴帴鐘舵��
+ */
+ public boolean CheckConnected() {
+ return s7PLC.checkConnected();
}
/**
@@ -215,7 +223,15 @@
if (s7PLC==null)
return null;
// List<String> addresslist = GetAddressList(address, count, 16);
- return s7PLC.readByte(address,count);
+
+ try {
+ return s7PLC.readByte(address, count);
+ }catch (Exception e) {
+ // 澶勭悊寮傚父
+ System.out.println("璇诲彇 " + address + " 澶辫触锛�" + e.getMessage());
+ return null;
+ }
+
}
/**
@@ -271,6 +287,41 @@
return result;
}
+
+
+
+
+
+ public List<String> readStringsandword(List<String> addressList) {
+ if (s7PLC == null) {
+ return null;
+ }
+ List<String> result = new ArrayList<>();
+ for (String address : addressList) {
+ try {
+ if (address.contains("-")) {
+ address = address.substring(0, address.indexOf("-"));
+
+ byte[] bytes = s7PLC.readByte(address, 14);
+ if (bytes != null) {
+ String str = new String(bytes, StandardCharsets.UTF_8);
+ result.add(str);
+ }
+
+ } else {
+ Short value = s7PLC.readInt16(address);
+ result.add(value.toString());
+
+ }
+ } catch (Exception e) {
+ System.out.println("璇诲彇 " + address + " 澶辫触锛�" + e.getMessage());
+ result.add(null);
+ }
+ }
+
+ return result;
+ }
+
//涓嶈繛缁湴鍧�鍐欏叆Word
@@ -337,7 +388,7 @@
try {
return s7PLC.readTime(address);
} catch (Exception e) {
- e.printStackTrace();
+ System.out.println("璇诲彇 " + address + " 澶辫触锛�" + e.getMessage());
return null;
}
}
--
Gitblit v1.8.0