From c3204d686fbf8a64dd7fa4dcbb48c0a075df06e0 Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期二, 05 十二月 2023 08:06:19 +0800
Subject: [PATCH] 更新电气管理界面
---
CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue | 16 +
springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition2.java | 10 +
CanadaMes-ui/src/views/Electrical/Positioning2.vue | 2
CanadaMes-ui/src/views/home/index.vue | 19 +
springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java | 23 +
CanadaMes-ui/src/views/Electrical/Sign.vue | 2
springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning1.java | 5
springboot-vue3/src/main/java/com/example/springboot/component/S7control.java | 12 +
CanadaMes-ui/src/views/Electrical/ManualonePosition.vue | 19 +
CanadaMes-ui/src/views/Electrical/Parameter2.vue | 48 ++++
CanadaMes-ui/src/views/Electrical/State.vue | 2
springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning2.java | 5
springboot-vue3/src/main/java/com/example/springboot/component/PlcServoManualone.java | 165 +++++++++++++++-
CanadaMes-ui/src/lang/locales/zh-CN.json | 1
CanadaMes-ui/src/views/Electrical/Positioning1.vue | 2
springboot-vue3/src/main/java/com/example/springboot/component/Plcstate.java | 1
CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue | 2
CanadaMes-ui/src/views/Electrical/alarm.vue | 2
CanadaMes-ui/src/views/Electrical/Action.vue | 2
CanadaMes-ui/src/lang/locales/en-US.json | 6
CanadaMes-ui/src/views/Electrical/ManualJog.vue | 2
CanadaMes-ui/src/views/Electrical/Parameter1.vue | 2
CanadaMes-ui/src/views/Electrical/ServoManualone.vue | 181 +++++++++++++++--
springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition.java | 20 ++
24 files changed, 465 insertions(+), 84 deletions(-)
diff --git a/CanadaMes-ui/src/lang/locales/en-US.json b/CanadaMes-ui/src/lang/locales/en-US.json
index a7667ae..0030697 100644
--- a/CanadaMes-ui/src/lang/locales/en-US.json
+++ b/CanadaMes-ui/src/lang/locales/en-US.json
@@ -1,4 +1,6 @@
{
+
+ "ip": "192.168.10.21",
"systemTitle": "Login System",
"usernamePlaceholder": "Please enter username",
"passwordPlaceholder": "Please enter password",
@@ -437,14 +439,14 @@
"B01鎵嬪姩鏍煎瓙": "B01 Target grid(Manual)",
"B01瀹氫綅閫熷害": "B01 TRAVEL POS Velocity manual",
"B01褰撳墠鏍煎瓙": "B01 Current Grid",
- "B01鍚姩": "Start",
+ "B01鍚姩": "B01 Start",
"澶嶄綅": "Reset",
"鍥為浂": "Zero",
"鏈洖闆�": "NotZero",
"B02鎵嬪姩鏍煎瓙": "B02 Target grid(Manual)",
"B02瀹氫綅閫熷害": "B02 TRAVEL POS Velocity manual",
"B02褰撳墠鏍煎瓙": "B02 Current Grid",
- "B02鍚姩": "Start",
+ "B02鍚姩": "B02 Start",
"澶嶄綅": "Reset",
"A01瀹炴椂浣嶇疆": "A01 tavel Actual Position",
"A02瀹炴椂浣嶇疆": "A02 tavel Actual Position",
diff --git a/CanadaMes-ui/src/lang/locales/zh-CN.json b/CanadaMes-ui/src/lang/locales/zh-CN.json
index 8bdbb90..28dcca4 100644
--- a/CanadaMes-ui/src/lang/locales/zh-CN.json
+++ b/CanadaMes-ui/src/lang/locales/zh-CN.json
@@ -1,4 +1,5 @@
{
+ "ip": "192.168.10.21",
"systemTitle": "鐧诲綍绯荤粺",
"usernamePlaceholder": "璇疯緭鍏ョ敤鎴峰悕",
"passwordPlaceholder": "璇疯緭鍏ュ瘑鐮�",
diff --git a/CanadaMes-ui/src/views/Electrical/Action.vue b/CanadaMes-ui/src/views/Electrical/Action.vue
index 6fbb39c..e3d2757 100644
--- a/CanadaMes-ui/src/views/Electrical/Action.vue
+++ b/CanadaMes-ui/src/views/Electrical/Action.vue
@@ -138,7 +138,7 @@
} else {
//console.log("鎮ㄧ殑娴忚鍣ㄦ敮鎸乄ebSocket");
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
socket = null;
diff --git a/CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue b/CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue
index 102ca3c..92aba7b 100644
--- a/CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue
+++ b/CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue
@@ -136,7 +136,7 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
diff --git a/CanadaMes-ui/src/views/Electrical/ManualJog.vue b/CanadaMes-ui/src/views/Electrical/ManualJog.vue
index 8596ab7..11e6754 100644
--- a/CanadaMes-ui/src/views/Electrical/ManualJog.vue
+++ b/CanadaMes-ui/src/views/Electrical/ManualJog.vue
@@ -139,7 +139,7 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
diff --git a/CanadaMes-ui/src/views/Electrical/ManualonePosition.vue b/CanadaMes-ui/src/views/Electrical/ManualonePosition.vue
index c09e846..a99e44e 100644
--- a/CanadaMes-ui/src/views/Electrical/ManualonePosition.vue
+++ b/CanadaMes-ui/src/views/Electrical/ManualonePosition.vue
@@ -59,12 +59,12 @@
<div v-for="(item, itemIndex) in dataGroup" :key="itemIndex">
<el-button v-if="item.button && language === 'en-US' && item.state != 0" :name="item.button.name"
v-model="item.button.value"
- :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'NotZero' && item.button.value === 0 }"
+ :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'NotZero' && item.button.value === 0,'greenbutton': item.button.name !== 'NotZero' && item.button.name !== 'Fault' && item.button.value === 1 }"
@click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{
item.button.name }}</el-button>
<el-button v-if="item.button && language === 'zh-CN' && item.state != 0" :name="item.button.name"
v-model="item.button.value"
- :class="{ 'action-button': true, 'error-button': item.button.name === '鏁呴殰' && item.button.value === 1, 'error-button2': item.button.name === '鏈洖闆�' && item.button.value === 0 }"
+ :class="{ 'action-button': true, 'error-button': item.button.name === '鏁呴殰' && item.button.value === 1, 'error-button2': item.button.name === '鏈洖闆�' && item.button.value === 0,'greenbutton': item.button.name !== '鏈洖闆�' && item.button.name !== '鏁呴殰' && item.button.value === 1 }"
@click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{
item.button.name }}</el-button>
</div>
@@ -112,7 +112,13 @@
updateButtonValue (dataGroup, itemIndex) {
// 灏嗗綋鍓嶆寜閽殑鍊艰涓�1
- this.$set(dataGroup[itemIndex].button, 'value', 1);
+ if (dataGroup[itemIndex].button.value === 0) {
+ // 濡傛灉褰撳墠鎸夐挳鐨勫�兼槸 0锛屽皢鍏惰涓� 1
+ this.$set(dataGroup[itemIndex].button, 'value', 1);
+ } else {
+ // 鍚﹀垯灏嗗叾璁句负 0
+ this.$set(dataGroup[itemIndex].button, 'value', 0);
+ }
@@ -305,8 +311,7 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
-
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
socket = null;
@@ -482,4 +487,8 @@
.error-button2 {
background-color: red;
}
+.greenbutton{
+
+ background-color: green;
+}
</style>
\ No newline at end of file
diff --git a/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue b/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
index 50d9f61..076b1cb 100644
--- a/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
+++ b/CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
@@ -58,11 +58,11 @@
<div class="button-row" style="display: flex; justify-content: space-between;">
<div v-for="(item, itemIndex) in dataGroup" :key="itemIndex">
<el-button v-if="item.button && language === 'en-US'" :name="item.button.name" v-model="item.button.value"
- :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'NotZero' && item.button.value === 0 }"
+ :class="{ 'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1, 'error-button2': item.button.name === 'NotZero' && item.button.value === 0,'greenbutton': item.button.name !== 'NotZero' && item.button.name !== 'Fault' && item.button.value === 1 }"
@click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{
item.button.name }}</el-button>
<el-button v-if="item.button && language === 'zh-CN'" :name="item.button.name" v-model="item.button.value"
- :class="{ 'action-button': true, 'error-button': item.button.name === '鏁呴殰' && item.button.value === 1, 'error-button2': item.button.name === '鏈洖闆�' && item.button.value === 0 }"
+ :class="{ 'action-button': true, 'error-button': item.button.name === '鏁呴殰' && item.button.value === 1, 'error-button2': item.button.name === '鏈洖闆�' && item.button.value === 0,'greenbutton': item.button.name !== '鏈洖闆�' && item.button.name !== '鏁呴殰' && item.button.value === 1 }"
@click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{
item.button.name }}</el-button>
</div>
@@ -110,12 +110,12 @@
updateButtonValue (dataGroup, itemIndex) {
// 灏嗗綋鍓嶆寜閽殑鍊艰涓�1
- if (dataGroup[itemIndex].button.value === 1) {
+ if (dataGroup[itemIndex].button.value === 0) {
// 濡傛灉褰撳墠鎸夐挳鐨勫�兼槸 0锛屽皢鍏惰涓� 1
- this.$set(dataGroup[itemIndex].button, 'value', 0);
+ this.$set(dataGroup[itemIndex].button, 'value', 1);
} else {
// 鍚﹀垯灏嗗叾璁句负 0
- this.$set(dataGroup[itemIndex].button, 'value', 1);
+ this.$set(dataGroup[itemIndex].button, 'value', 0);
}
@@ -249,7 +249,7 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
@@ -422,4 +422,8 @@
.error-button2 {
background-color: red;
}
+.greenbutton{
+
+background-color: green;
+}
</style>
\ No newline at end of file
diff --git a/CanadaMes-ui/src/views/Electrical/Parameter1.vue b/CanadaMes-ui/src/views/Electrical/Parameter1.vue
index 3cad049..27d8f9a 100644
--- a/CanadaMes-ui/src/views/Electrical/Parameter1.vue
+++ b/CanadaMes-ui/src/views/Electrical/Parameter1.vue
@@ -133,7 +133,7 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
diff --git a/CanadaMes-ui/src/views/Electrical/Parameter2.vue b/CanadaMes-ui/src/views/Electrical/Parameter2.vue
index bfb3046..695107d 100644
--- a/CanadaMes-ui/src/views/Electrical/Parameter2.vue
+++ b/CanadaMes-ui/src/views/Electrical/Parameter2.vue
@@ -53,12 +53,12 @@
<div v-for="(item, itemIndex) in dataGroup" :key="itemIndex">
<el-button v-if="item.button && language==='en-US'" :name="item.button.name" v-model="item.button.value" class="action-button"
@click="updateButtonValue(dataGroup, itemIndex);submitDataToBackend(item.button.name)"
- :class="{ 'green-button': (item.button.value === 0 && item.button.name !== 'Clear ID' ) ,'red-button': item.button.value === 2 && (item.button.name !== 'Clear ID' ) ,'yellow-button': item.button.value === 1 && (item.button.name !== 'Clear ID' ) }">{{ item.button.name }}</el-button>
+ :class="{ 'green-button': (item.button.value === 0 && item.button.name !== 'Clear ID' ) ,'red-button': item.button.value === 2 && (item.button.name !== 'Clear ID' ) ,'yellow-button': item.button.value === 1 && (item.button.name !== 'Clear ID' ),'id': item.button.value === 1 && (item.button.name == 'Clear ID' ) }">{{ item.button.name }}</el-button>
<el-button v-if="item.button && language==='zh-CN'" :name="item.button.name" v-model="item.button.value" class="action-button"
@click="updateButtonValue(dataGroup, itemIndex);submitDataToBackend(item.button.name)"
- :class="{ 'green-button': (item.button.value === 0 && item.button.name !== '娓呴櫎ID' ) ,'red-button': item.button.value === 2 && (item.button.name !== '娓呴櫎ID' ) ,'yellow-button': item.button.value === 1 && (item.button.name !== '娓呴櫎ID' ) }">{{ item.button.name }}</el-button>
+ :class="{ 'green-button': (item.button.value === 0 && item.button.name !== '娓呴櫎ID' ) ,'red-button': item.button.value === 2 && (item.button.name !== '娓呴櫎ID' ) ,'yellow-button': item.button.value === 1 && (item.button.name !== '娓呴櫎ID' ),'id': item.button.value === 1 && (item.button.name == '娓呴櫎ID' ) }">{{ item.button.name }}</el-button>
</div>
</div>
@@ -85,6 +85,7 @@
<script>
import LanguageMixin from '../../lang/LanguageMixin'
import data from '../../configuration/parameter2'
+ import { throttle } from 'lodash';
let socket;
// window.onload=function(){
@@ -142,12 +143,12 @@
},
updateButtonValue(dataGroup, itemIndex) {
- if (dataGroup[itemIndex].button.value === 1) {
+ if (dataGroup[itemIndex].button.value === 0) {
// 濡傛灉褰撳墠鎸夐挳鐨勫�兼槸 0锛屽皢鍏惰涓� 1
- this.$set(dataGroup[itemIndex].button, 'value', 0);
+ this.$set(dataGroup[itemIndex].button, 'value', 1);
} else {
// 鍚﹀垯灏嗗叾璁句负 0
- this.$set(dataGroup[itemIndex].button, 'value', 1);
+ this.$set(dataGroup[itemIndex].button, 'value', 0);
}
},
submitDataToBackend(currentButtonName) {
@@ -187,7 +188,7 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
@@ -218,6 +219,14 @@
// const xiaoche = obj.params[3];
// console.log(obj);
+
+
+
+ const handleMouseMove = throttle(function(event) {
+ const inputBox = document.querySelectorAll('.action-button');
+ const target = event.target;
+
+ if (inputBox && Array.from(inputBox).every(box => !box.contains(target))) {
//娓呴櫎id
for (let i = 0; i < jsonData2.length; i++) {
let arr = jsonData2[i];
@@ -276,6 +285,23 @@
}
+//鏀瑰彉鐘舵�佹枃瀛�
+for (let i = 0; i < jsonData2.length; i++) {
+ let arr = jsonData2[i];
+ for (let j = 0; j < arr.length; j++) {
+ let obj = arr[j];
+ if (obj.type === '4' && obj.button.value===1) {
+ if ( obj.button.name.includes("鐘舵��")&& this.language==="zh-CN") {
+ obj.button.name =obj.button.name.replace("鎵嬪姩","鑷姩") ;
+ }
+ if ( obj.button.name.includes("Status")) {
+ obj.button.name =obj.button.name.replace("Manual","Auto") ;
+ }
+ }
+
+
+}
+}
//鎵弿鏋壂鐮佺殑ID
jsonData2.forEach((item) => {
@@ -316,9 +342,11 @@
-
+ }
// console.log(jsonData2);
-
+}, 50);
+
+document.addEventListener('mouseover', handleMouseMove);
};
@@ -399,5 +427,9 @@
.yellow-button{
background-color: blue;
}
+.id{
+
+ background-color: green;
+}
</style>
\ No newline at end of file
diff --git a/CanadaMes-ui/src/views/Electrical/Positioning1.vue b/CanadaMes-ui/src/views/Electrical/Positioning1.vue
index 7b0840d..68caa1e 100644
--- a/CanadaMes-ui/src/views/Electrical/Positioning1.vue
+++ b/CanadaMes-ui/src/views/Electrical/Positioning1.vue
@@ -135,7 +135,7 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
diff --git a/CanadaMes-ui/src/views/Electrical/Positioning2.vue b/CanadaMes-ui/src/views/Electrical/Positioning2.vue
index c5bcfb8..889be3b 100644
--- a/CanadaMes-ui/src/views/Electrical/Positioning2.vue
+++ b/CanadaMes-ui/src/views/Electrical/Positioning2.vue
@@ -131,7 +131,7 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
diff --git a/CanadaMes-ui/src/views/Electrical/ServoManualone.vue b/CanadaMes-ui/src/views/Electrical/ServoManualone.vue
index 9d37abe..4512f87 100644
--- a/CanadaMes-ui/src/views/Electrical/ServoManualone.vue
+++ b/CanadaMes-ui/src/views/Electrical/ServoManualone.vue
@@ -56,8 +56,8 @@
</el-row>
<div class="button-row" style="display: flex; justify-content: space-between;">
<div v-for="(item, itemIndex) in dataGroup" :key="itemIndex">
- <el-button v-if="item.button && language === 'en-US' " :name="item.button.name" v-model="item.button.value" :class="{'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1,'error-button2': item.button.name === 'NotZero' && item.button.value === 0}" @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ item.button.name }}</el-button>
- <el-button v-if="item.button && language === 'zh-CN' " :name="item.button.name" v-model="item.button.value" :class="{'action-button': true, 'error-button': item.button.name === '鏁呴殰' && item.button.value === 1,'error-button2': item.button.name === '鏈洖闆�' && item.button.value === 0}" @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ item.button.name }}</el-button>
+ <el-button v-if="item.button && language === 'en-US' " :name="item.button.name" v-model="item.button.value" :class="{'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1,'error-button2': item.button.name === 'NotZero' && item.button.value === 0,'fuwei': item.button.name === 'Reset' && item.button.value === 1,'qidong': item.button.name === 'A01 Semi-Auto' && item.button.value === 1,'qidong2': item.button.name === 'A02 Semi-Auto' && item.button.value === 1}" @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ item.button.name }}</el-button>
+ <el-button v-if="item.button && language === 'zh-CN' " :name="item.button.name" v-model="item.button.value" :class="{'action-button': true, 'error-button': item.button.name === '鏁呴殰' && item.button.value === 1,'error-button2': item.button.name === '鏈洖闆�' && item.button.value === 0,'fuwei': item.button.name === '澶嶄綅' && item.button.value === 1,'qidong': item.button.name === 'A01鍗婅嚜鍔�' && item.button.value === 1,'qidong2': item.button.name === 'A02鍗婅嚜鍔�' && item.button.value === 1 }" @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ item.button.name }}</el-button>
</div>
</div>
</el-card>
@@ -77,11 +77,13 @@
export default {
name: "ServoManualone",
mixins: [LanguageMixin],
-
+
data() {
return {
jsonData: data ,
language:this.$i18n.locale,
+zhi:"1",
+zhi2:"1"
// 鍔犺浇鏁翠釜data.json鏂囦欢浣滀负jsonData
}
},
@@ -110,15 +112,13 @@
updateButtonValue(dataGroup, itemIndex) {
- // 灏嗗綋鍓嶆寜閽殑鍊艰涓�1
- this.$set(dataGroup[itemIndex].button, 'value', 1);
-
- // 灏嗗叾浠栨寜閽殑鍊艰涓�0
- // dataGroup.forEach((item, index) => {
- // if (index !== itemIndex && item.button) {
- // this.$set(item.button, 'value', 0);
- // }
- // });
+ if (dataGroup[itemIndex].button.value === 1) {
+ // 濡傛灉褰撳墠鎸夐挳鐨勫�兼槸 0锛屽皢鍏惰涓� 1
+ this.$set(dataGroup[itemIndex].button, 'value', 0);
+ } else {
+ // 鍚﹀垯灏嗗叾璁句负 0
+ this.$set(dataGroup[itemIndex].button, 'value', 1);
+ }
},
submitDataToBackend(currentButtonName) {
if (currentButtonName === 'A01鍗婅嚜鍔ㄥ惎鍔�' ||currentButtonName === 'A01 Semi-Auto Start') {
@@ -148,7 +148,8 @@
data.push(values);
}
-data.push([]);
+data.push([],[], [],);
+
const jsonObject = { data };
@@ -174,7 +175,7 @@
}
data2.unshift([]);
-data2.push([], [], []);
+data2.push([], []);
for (let i = 1; i < 2; i++) {
const inputData = this.jsonData[i].filter(item => item.type === '0' && item.read == 8888).map(item => {
@@ -184,9 +185,9 @@
const values2 = inputData.map(item => item.value);
data2.push(values2);
+ data2.push([], [],[], []);
}
-
const jsonObject = { data:data2 };
@@ -212,6 +213,7 @@
// 鍦� data2 鏁扮粍鍓嶉潰娣诲姞涓や釜绌烘暟缁�
data2.unshift([], []);
+ data2.push([], [], [], [], []);
// 鍒涘缓 jsonObject2 瀵硅薄锛屽苟娣诲姞 data2 灞炴��
const jsonObject2 = { data: data2 };
@@ -220,9 +222,9 @@
const jsonString2 = JSON.stringify(jsonObject2);
console.log('鎵�鏈塗ype涓�0鐨剉alue:', jsonString2);
socket?.send(jsonString2);
- setTimeout(()=>
- window.location.reload(),2000
- )
+ // setTimeout(()=>
+ // window.location.reload(),2000
+ // )
}
@@ -239,17 +241,18 @@
// 鍦� data3 鏁扮粍鍓嶉潰娣诲姞涓や釜绌烘暟缁�
data3.unshift([], [], []);
+ data3.push([], [], [], []);
- // 鍒涘缓 jsonObject2 瀵硅薄锛屽苟娣诲姞 data3 灞炴��
+ // 鍒涘缓 jsonObject3 瀵硅薄锛屽苟娣诲姞 data3 灞炴��
const jsonObject3 = { data: data3 };
// 鎻愪氦鏁版嵁鍒板悗绔�
const jsonString3 = JSON.stringify(jsonObject3);
console.log('鍥為浂:', jsonString3);
socket?.send(jsonString3);
- setTimeout(()=>
- window.location.reload(),2000
- )
+ // setTimeout(()=>
+ // window.location.reload(),2000
+ // )
}
@@ -257,19 +260,123 @@
if (currentButtonName === 'A01鍗婅嚜鍔�' || currentButtonName === 'A01 Semi-Auto' ) {
const elements = document.getElementsByClassName('special-class');
+ const data = [];
+
for (let i = 0; i < elements.length; i++) {
if (elements[i].style.display === 'none') {
elements[i].style.display = ''; // 鏄剧ず鍏冪礌
+ this.zhi=1;
+ // if(this.jsonData[0].button.name==='A01鍗婅嚜鍔�' || this.jsonData[0].button.name === 'A01 Semi-Auto'){
+ // this.jsonData[0].button.value=1
+ // }
+
+
+ for (let i = 0; i < this.jsonData.length; i++) {
+ let arr = this.jsonData[i];
+ for (let j = 0; j < arr.length; j++) {
+ let obj2 = arr[j];
+ if (obj2.button && (obj2.button.name === "A01鍗婅嚜鍔�" || obj2.button.name === "A01 Semi-Auto")) {
+ obj2.button.value = 1;
+ // console.log(obj2.button.value)
+ }
+ }
+
+
+ }
+ }else{
+ elements[i].style.display = 'none';
+ this.zhi=0;
+ // if(this.jsonData[0].button.name==='A01鍗婅嚜鍔�' || this.jsonData[0].button.name === 'A01 Semi-Auto'){
+ // this.jsonData[0].button.value=0
+ // }
+
+ for (let i = 0; i < this.jsonData.length; i++) {
+ let arr = this.jsonData[i];
+ for (let j = 0; j < arr.length; j++) {
+ let obj2 = arr[j];
+ if (obj2.button && (obj2.button.name === "A01鍗婅嚜鍔�" || obj2.button.name === "A01 Semi-Auto")) {
+ obj2.button.value = 0;
+ // console.log(obj2.button.value)
+ }
+ }
+
+
+ }
}
}
+
+
+
+ data.push([this.zhi]);
+
+ data.unshift([],[],[],[],[],[]);
+data.push([]);
+
+
+
+
+const jsonObject = { data };
+
+// 鎻愪氦鏁版嵁鍒板悗绔�
+const jsonString = JSON.stringify(jsonObject);
+console.log('鎵�鏈塗ype涓�0鐨剉alue:', jsonString);
+socket?.send(jsonString);
+
}
+
+
+
if (currentButtonName === 'A02鍗婅嚜鍔�' || currentButtonName === 'A02 Semi-Auto' ) {
const elements = document.getElementsByClassName('special-class2');
+
+ const data = [];
for (let i = 0; i < elements.length; i++) {
if (elements[i].style.display === 'none') {
elements[i].style.display = ''; // 鏄剧ず鍏冪礌
+ this.zhi2=1;
+ for (let i = 0; i < this.jsonData.length; i++) {
+ let arr = this.jsonData[i];
+ for (let j = 0; j < arr.length; j++) {
+ let obj2 = arr[j];
+ if (obj2.button && (obj2.button.name === "A02鍗婅嚜鍔�" || obj2.button.name === "A02 Semi-Auto")) {
+ obj2.button.value = 1;
+ // console.log(obj2.button.value)
+ }
+ }
+
+
+ }
+
+ }else{
+ elements[i].style.display = 'none';
+ this.zhi2=0;
+ for (let i = 0; i < this.jsonData.length; i++) {
+ let arr = this.jsonData[i];
+ for (let j = 0; j < arr.length; j++) {
+ let obj2 = arr[j];
+ if (obj2.button && (obj2.button.name === "A02鍗婅嚜鍔�" || obj2.button.name === "A02 Semi-Auto")) {
+ obj2.button.value = 0;
+ // console.log(obj2.button.value)
+ }
+ }
+
+
+ }
}
}
+
+ data.push([this.zhi2]);
+
+ data.unshift([],[],[],[],[],[],[]);
+
+
+const jsonObject = { data };
+
+// 鎻愪氦鏁版嵁鍒板悗绔�
+const jsonString = JSON.stringify(jsonObject);
+console.log('鎵�鏈塗ype涓�0鐨剉alue:', jsonString);
+socket?.send(jsonString);
+
}
@@ -285,7 +392,8 @@
if (typeof WebSocket === "undefined") {
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+
+ let socketUrl = "ws://" +this.$t('ip')+ ":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
@@ -333,7 +441,21 @@
let obj2 = arr[j];
if (obj2.button && (obj2.button.name === "鏁呴殰" || obj2.button.name === "Fault")) {
obj2.button.value = obj.guzhang[0][i];
- // console.log(obj2.button.value)
+ // console.log(obj2.button.value)
+ }
+ }
+
+
+}
+
+
+for (let i = 0; i < jsonData2.length; i++) {
+ let arr = jsonData2[i];
+ for (let j = 0; j < arr.length; j++) {
+ let obj2 = arr[j];
+ if (obj2.button && (obj2.button.name === "澶嶄綅" || obj2.button.name === "Reset")) {
+ obj2.button.value = obj.fuwei[0][i];
+ // console.log(obj2.button.value)
}
}
@@ -459,6 +581,17 @@
.error-button2 {
background-color: red;
}
+.fuwei {
+ background-color: green;
+}
+
+.qidong {
+ background-color: green;
+}
+
+.qidong2 {
+ background-color: green;
+}
</style>
\ No newline at end of file
diff --git a/CanadaMes-ui/src/views/Electrical/Sign.vue b/CanadaMes-ui/src/views/Electrical/Sign.vue
index 4ee28d3..21c22be 100644
--- a/CanadaMes-ui/src/views/Electrical/Sign.vue
+++ b/CanadaMes-ui/src/views/Electrical/Sign.vue
@@ -99,7 +99,7 @@
} else {
//console.log("鎮ㄧ殑娴忚鍣ㄦ敮鎸乄ebSocket");
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
socket = null;
diff --git a/CanadaMes-ui/src/views/Electrical/State.vue b/CanadaMes-ui/src/views/Electrical/State.vue
index fa4dd52..1e25515 100644
--- a/CanadaMes-ui/src/views/Electrical/State.vue
+++ b/CanadaMes-ui/src/views/Electrical/State.vue
@@ -97,7 +97,7 @@
} else {
//console.log("鎮ㄧ殑娴忚鍣ㄦ敮鎸乄ebSocket");
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
socket = null;
diff --git a/CanadaMes-ui/src/views/Electrical/alarm.vue b/CanadaMes-ui/src/views/Electrical/alarm.vue
index 93d48b6..4800d63 100644
--- a/CanadaMes-ui/src/views/Electrical/alarm.vue
+++ b/CanadaMes-ui/src/views/Electrical/alarm.vue
@@ -178,7 +178,7 @@
} else {
//console.log("鎮ㄧ殑娴忚鍣ㄦ敮鎸乄ebSocket");
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
socket = null;
diff --git a/CanadaMes-ui/src/views/home/index.vue b/CanadaMes-ui/src/views/home/index.vue
index 77116c1..4005110 100644
--- a/CanadaMes-ui/src/views/home/index.vue
+++ b/CanadaMes-ui/src/views/home/index.vue
@@ -795,7 +795,7 @@
console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔WebSocket");
} else {
//console.log("鎮ㄧ殑娴忚鍣ㄦ敮鎸乄ebSocket");
- let socketUrl = "ws://" + "localhost:8888" + "/springboot-vue3/api/talk/" + viewname;
+ let socketUrl = "ws://" + this.$t('ip')+":8888" + "/springboot-vue3/api/talk/" + viewname;
if (socket != null) {
socket.close();
socket = null;
@@ -853,7 +853,6 @@
}
if (obj.form3 != null && obj.form3 != "" && obj.state[0] == 1) {
this.form3 = obj.form3[0];
-
} else {
this.form3 = {};
}
@@ -1561,19 +1560,22 @@
//鍒ゆ柇鐜荤拑鏄惁瓒呭嚭鑼冨洿
Sizerange(Glass) {
if ((Glass.glassheight < 380 || Glass.glasswidth < 390 || Glass.glassheight > 1810 || Glass.glasswidth > 2760) || (Glass.glassheight < 390 || Glass.glasswidth < 380 || Glass.glassheight > 2760 || Glass.glasswidth > 1810)) {
- if (this.disabled == false) {
+ // if (this.disabled == false) {
this.disabled = true;
- this.$message.error(this.$t('The glass size is not within the range'));
+ // this.$message.error(this.$t('The glass size is not within the range'));
this.$alert(this.$t('The glass size is not within the range'), this.$t('confirm'), {
confirmButtonText: this.$t('Yes'),
+ type:'info',
callback: action => {
this.$message({
type: 'info',
- message: `action: ${action}`
- });
+ action: action
+ }).then(
+ this.DeleteBarcodeGlass()
+ );
}
});
- }
+ // }
// this.$message(this.$t('The glass size is not within the range'), this.$t('confirm'), {
// // confirmwidth: 7000,
// // height: 8000,
@@ -1592,6 +1594,9 @@
} else {
this.disabled1 = false;
}
+ },
+ DeleteBarcodeGlass(){
+ this.form5={};
}
}
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition.java
index 87a5c68..0f643e0 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition.java
@@ -234,6 +234,11 @@
}
if (!sValue.isEmpty()) {
S7control.getinstance().WriteWord(waddresses1, sValue);
+ List<String> A01start = new ArrayList<>();
+ A01start.add("DB101.2.2");
+ Boolean[] a01values7 = { true};
+ List<Boolean> a01startval = new ArrayList<>(Arrays.asList(a01values7));
+ S7control.getinstance().WriteBit(A01start, a01startval);
System.out.println("Values " + sValue + " written to PLC at address " + waddresses1);
}
}
@@ -259,6 +264,11 @@
}
if (!sValue2.isEmpty()) {
S7control.getinstance().WriteWord(waddresses2, sValue2);
+ List<String> A02start = new ArrayList<>();
+ A02start.add("DB101.2.3");
+ Boolean[] a02values7 = { true};
+ List<Boolean> a01startval = new ArrayList<>(Arrays.asList(a02values7));
+ S7control.getinstance().WriteBit(A02start, a01startval);
System.out.println("Values " + sValue2 + " written to PLC at address " + waddresses2);
}
}
@@ -283,6 +293,11 @@
}
if (!sValue2.isEmpty()) {
S7control.getinstance().WriteWord(waddresses3, sValue2);
+ List<String> B01start = new ArrayList<>();
+ B01start.add("DB101.2.4");
+ Boolean[]B01values7 = { true};
+ List<Boolean> B01startval = new ArrayList<>(Arrays.asList(B01values7));
+ S7control.getinstance().WriteBit(B01start, B01startval);
System.out.println("Values " + sValue2 + " written to PLC at address " + waddresses3);
}
}
@@ -307,6 +322,11 @@
}
if (!sValue2.isEmpty()) {
S7control.getinstance().WriteWord(waddresses4, sValue2);
+ List<String> B02start = new ArrayList<>();
+ B02start.add("DB101.2.5");
+ Boolean[] B02values7 = { true};
+ List<Boolean> B02startval = new ArrayList<>(Arrays.asList(B02values7));
+ S7control.getinstance().WriteBit(B02start, B02startval);
System.out.println("Values " + sValue2 + " written to PLC at address " + waddresses4);
}
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition2.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition2.java
index 5d8051d..61e8c6f 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition2.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcManualonePosition2.java
@@ -186,6 +186,11 @@
}
if (!sValue.isEmpty()) {
S7control.getinstance().WriteWord(waddresses1, sValue);
+ List<String> A01start = new ArrayList<>();
+ A01start.add("DB101.2.0");
+ Boolean[] a01values7 = { true};
+ List<Boolean> a01startval = new ArrayList<>(Arrays.asList(a01values7));
+ S7control.getinstance().WriteBit(A01start, a01startval);
System.out.println("Values " + sValue + " written to PLC at address " + waddresses1);
}
}
@@ -210,6 +215,11 @@
}
if (!sValue2.isEmpty()) {
S7control.getinstance().WriteWord(waddresses2, sValue2);
+ List<String> A02start = new ArrayList<>();
+ A02start.add("DB101.2.1");
+ Boolean[] a02values7 = { true};
+ List<Boolean> a01startval = new ArrayList<>(Arrays.asList(a02values7));
+ S7control.getinstance().WriteBit(A02start, a01startval);
System.out.println("Values " + sValue2 + " written to PLC at address " + waddresses2);
}
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java
index 6f18c01..81522f1 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java
+++ b/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,13 +62,13 @@
public void run() {
while (this != null) {
try {
- Thread.sleep(500);
+ Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
-
+ // 鎵嬪姩鐘舵�佸湴鍧�
List<String> addressList1 = new ArrayList<>();
addressList1.add("DB103.44");//D01
@@ -86,7 +87,7 @@
List<String> paramlist = S7control.getinstance().readStrings(addressList1);
-
+ //娓呴櫎ID鍦板潃
List<String> addresses = new ArrayList<>();
addresses.add("DB103.0");
addresses.add("DB103.2");
@@ -100,6 +101,8 @@
addresses.add("DB103.6");
List<Short> data = S7control.getinstance().readWords(addresses);
+
+ //id
List<String> addressList0 = new ArrayList<>();
addressList0.add("DB101.9.2");
@@ -127,9 +130,17 @@
addresses4.add("DB103.56");
addresses4.add("DB103.60");
- List<Short> data4 = S7control.getinstance().readWords(addresses4);
+ 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 = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1};
@@ -206,7 +217,7 @@
}
// 灏嗗竷灏斿垪琛ㄥ啓鍏� PLC
- S7control.getinstance().WriteBit(addressList, messageBooleans);
+// S7control.getinstance().WriteBit(addressList, messageBooleans);
System.out.println("messageValues锛�" + messageBooleans);
System.out.println("addressList锛�" + addressList);
// 娓呯┖娑堟伅鍒楄〃
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning1.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning1.java
index 8c2ef38..4af6e13 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning1.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning1.java
@@ -79,6 +79,7 @@
// Integer Plccount = this.count;
// System.out.println(stt);
+ //瀛樼墖鏍� 鍑虹墖鏍艰鍙�
List<Short> arraylist = S7control.getinstance().ReadWord("DB100.42", 23);
// System.out.println(arraylist);
// Short[] 瀛樼墖 = { 1 };
@@ -105,7 +106,7 @@
WebSocketServer webSocketServer = WebSocketServer.sessionMap.get("Positioning1");
if (webSocketServer != null) {
List<String> messages = webSocketServer.getMessages();
-
+ //瀛樼墖鏍� 鍑虹墖鏍煎湴鍧�
String addressList3 = "DB100.42";
if (!messages.isEmpty()) {
@@ -134,7 +135,7 @@
}
- // 鍐欏叆绗瑈i涓湴鍧�
+ // 鍐欏叆瀛樼墖鏍� 鍑虹墖鏍间綅缃瀹氭暟鎹�
if (!mergedList.isEmpty()) {
S7control.getinstance().WriteWord(addressList3, mergedList);
System.out.println("messageValue锛�" + mergedList + " written to PLC at address " + addressList3);
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning2.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning2.java
index 9b72c6f..9eb5e92 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning2.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcPositioning2.java
@@ -72,6 +72,7 @@
// Integer Plccount = this.count;
// System.out.println(stt);
+ //B01鏍间綅缃� 鍦板潃璇诲彇
List<Short> arraylist = S7control.getinstance().ReadWord("DB100.88", 10);
// Short[] values1 = { 1,2, 3, 4, 5 , 11, 12,13,14,15};
@@ -93,7 +94,7 @@
WebSocketServer webSocketServer = WebSocketServer.sessionMap.get("Positioning2");
if (webSocketServer != null) {
List<String> messages = webSocketServer.getMessages();
-
+ //B01 B02 鍦板潃
String addressList3 = "DB100.88";
if (!messages.isEmpty()) {
@@ -122,7 +123,7 @@
}
- // 鍐欏叆绗瑈i涓湴鍧�
+ // 鍐欏叆b01 b02鍦板潃
if (!mergedList.isEmpty()) {
S7control.getinstance().WriteWord(addressList3, mergedList);
System.out.println("messageValue锛�" + mergedList + " written to PLC at address " + addressList3);
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcServoManualone.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcServoManualone.java
index 465dfe3..21ab755 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcServoManualone.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcServoManualone.java
@@ -79,7 +79,7 @@
e.printStackTrace();
}
-
+//A01缁勫悎涓湴鍧�琛ㄩ泦鍚�
List<String> addresses = new ArrayList<>();
addresses.add("DB103.32");
addresses.add("DB100.144");
@@ -95,7 +95,7 @@
// int insertIndex = 2;
// insertDataToList(arraylist, rangeAddress, insertIndex);
-
+//A02缁勫悎涓湴鍧�琛ㄩ泦鍚�
List<String> addresses2 = new ArrayList<>();
addresses2.add("DB103.26");
addresses2.add("DB100.188");
@@ -108,16 +108,23 @@
// int insertIndex2 = 4;
// insertDataToList(arraylist2, rangeAddress2, insertIndex2);
// System.out.println(arraylist2);
+
+ //A01缈昏浆鍦板潃
List<String> addresses3 = new ArrayList<>();
addresses3.add("DB103.42");
List<Short> arraylist3 = S7control.getinstance().readWords(addresses3);
+
+ //A02缈昏浆鍦板潃
List<String> addresses4 = new ArrayList<>();
addresses4.add("DB103.46");
List<Short> arraylist4 = S7control.getinstance().readWords(addresses4);
-
+ //B01缁勫悎涓湴鍧�
List<Short> arraylist5 = S7control.getinstance().ReadWord("DB103.27", 2);
+ //B02缁勫悎鍦板潃
List<Short> arraylist6 = S7control.getinstance().ReadWord("DB103.29", 2);
+
+ // 鎵�鏈夋晠闅滄寜閽湴鍧�
List<String> addresses7 = new ArrayList<>();
addresses7.add("DB104.1.4");
addresses7.add("DB104.1.5");
@@ -127,13 +134,32 @@
addresses7.add("DB104.1.7");
List<Boolean> arraylist7 = S7control.getinstance().readBits(addresses7);
-
+// 鎵�鏈夋晠闅滄寜閽浆鎹负1鍜�0
short[] params2 = new short[arraylist7.size()];
for (int i = 0; i < arraylist7.size(); i++) {
boolean value = arraylist7.get(i);
params2[i] = value ? (short) 1 : (short) 0;
}
+
+ // 鎵�鏈夊浣嶆寜閽湴鍧�
+ List<String> Reset = new ArrayList<>();
+ Reset.add("DB101.4.0");
+ Reset.add("DB101.4.3");
+ Reset.add("DB101.3.6");
+ Reset.add("DB101.4.1");
+ Reset.add("DB101.4.4");
+ Reset.add("DB101.4.6");
+ List<Boolean> Reset1 = S7control.getinstance().readBits(Reset);
+
+// 鎵�鏈夋晠闅滄寜閽浆鎹负1鍜�0
+ short[] rReset = new short[Reset1.size()];
+ for (int i = 0; i < Reset1.size(); i++) {
+ boolean value = Reset1.get(i);
+ rReset[i] = value ? (short) 1 : (short) 0;
+ }
+
+ // 鎵�鏈夋湭鍥為浂鎸夐挳鍦板潃
List<String> addresses8 = new ArrayList<>();
addresses8.add("DB104.9.0");
addresses8.add("DB104.9.1");
@@ -148,8 +174,9 @@
params[i] = value ? (short) 1 : (short) 0;
}
-
+ // 杩涚墖id鍦板潃
StringBuilder queueid1 = queGlassid("DB100.148", 14);
+ // 瀛樼墖id鍦板潃
StringBuilder queueid2 = queGlassid("DB100.162", 14);
@@ -200,6 +227,7 @@
jsonObject.append("weihuiling", params);
jsonObject.append("jinpianid", queueid1);
jsonObject.append("qupianid", queueid2);
+ jsonObject.append("fuwei", rReset);
@@ -211,6 +239,7 @@
WebSocketServer webSocketServer = WebSocketServer.sessionMap.get("ServoManualone");
if (webSocketServer != null) {
List<String> messages = webSocketServer.getMessages();
+ // A01缁勫悎鍦板潃
List<String> waddresses1 = new ArrayList<>();
waddresses1.add("DB103.32");
waddresses1.add("DB100.144");
@@ -220,6 +249,7 @@
waddresses1.add("DB100.180");
waddresses1.add("DB100.182");
+ // A02缁勫悎鍦板潃
List<String> waddresses2 = new ArrayList<>();
waddresses2.add("DB103.26");
waddresses2.add("DB100.188");
@@ -227,6 +257,8 @@
waddresses2.add("DB100.146");
// waddresses2.add("DB100.162-175");
+
+ // 澶嶄綅鎸夐挳鍦板潃
List<String> waddresses3 = new ArrayList<>();
waddresses3.add("DB101.4.0");
waddresses3.add("DB101.4.3");
@@ -235,14 +267,12 @@
waddresses3.add("DB101.4.4");
waddresses3.add("DB101.4.6");
-
+ //鍥為浂鎸夐挳鍦板潃
List<String> waddresses4 = new ArrayList<>();
waddresses4.add("DB101.3.7");
waddresses4.add("DB101.4.2");
waddresses4.add("DB101.4.5");
waddresses4.add("DB101.4.7");
-
-
String waddresses5="DB100.148";
@@ -262,8 +292,8 @@
- // 鍐欏叆绗竴涓湴鍧�
- if (messageArray.getJSONArray(0).size() > 0) {
+ // 鍐欏叆AO1缁勫悎
+ if (messageArray.getJSONArray(0).size() > 0 ) {
JSONArray jsonArray = messageArray.getJSONArray(0);
List<Short> sValue = new ArrayList<>();
for (int i = 0; i < jsonArray.size(); i++) {
@@ -281,11 +311,21 @@
}
}
if (!sValue.isEmpty()) {
+
+
+
S7control.getinstance().WriteWord(waddresses1, sValue);
+ List<String> A01start = new ArrayList<>();
+ A01start.add("DB101.5.0");
+ Boolean[] a01values7 = { true};
+ List<Boolean> a01startval = new ArrayList<>(Arrays.asList(a01values7));
+ S7control.getinstance().WriteBit(A01start, a01startval);
System.out.println("Values " + sValue + " written to PLC at address " + waddresses1);
}
}
+
+ //// 鍐欏叆AO2缁勫悎
if (messageArray.getJSONArray(1).size() > 0) {
JSONArray jsonArray2 = messageArray.getJSONArray(1);
List<Short> sValue2 = new ArrayList<>();
@@ -305,12 +345,17 @@
}
if (!sValue2.isEmpty()) {
S7control.getinstance().WriteWord(waddresses2, sValue2);
+ List<String> A02start = new ArrayList<>();
+ A02start.add("DB101.5.1");
+ Boolean[] a02values7 = {true};
+ List<Boolean> a02startval = new ArrayList<>(Arrays.asList(a02values7));
+ S7control.getinstance().WriteBit(A02start, a02startval);
System.out.println("Values " + sValue2 + " written to PLC at address " + waddresses2);
}
}
-
+ // 澶嶄綅鎸夐挳鍐欏叆
if (messageArray.getJSONArray(2).size() > 0) {
JSONArray jsonArray3 = messageArray.getJSONArray(2);
List<Boolean> sValue3 = new ArrayList<>();
@@ -334,7 +379,7 @@
}
}
-
+ //鍥為浂鎸夐挳鍐欏叆
if (messageArray.getJSONArray(3).size() > 0) {
JSONArray jsonArray4 = messageArray.getJSONArray(3);
List<Boolean> sValue4 = new ArrayList<>();
@@ -358,6 +403,9 @@
}
}
+
+
+ //杩涚墖ID鍐欏叆
if (messageArray.getJSONArray(4).size() > 0) {
// JSONArray jsonArray5 = messageArray.getJSONArray(4);
String jsonArray5 = String.valueOf(messageArray.getJSONArray(4));
@@ -368,7 +416,7 @@
System.out.println("Values " + jsonArray5 + " written to PLC at address " + waddresses5);
}
}
-
+ // 瀛樼墖ID鍐欏叆
if (messageArray.getJSONArray(5).size() > 0) {
JSONArray jsonArray6 = messageArray.getJSONArray(5);
@@ -378,6 +426,97 @@
System.out.println("Values " + value2 + " written to PLC at address " + waddresses6);
}
}
+ if (messageArray.getJSONArray(6).size() > 0) {
+ JSONArray jsonArray4 = messageArray.getJSONArray(6);
+ List<Boolean> sValueb4 = new ArrayList<>();
+ for (int i = 0; i < jsonArray4.size(); i++) {
+ Object value = jsonArray4.get(i);
+ if (value != null && !value.toString().equals("null")) {
+ try {
+ String cleanedValue = value.toString().replaceAll("[^0-9-]", "");
+ boolean val = "1".equals(cleanedValue.trim());
+ sValueb4.add(val);
+ System.out.println("messageValue: " + Arrays.asList(val) + " added to the list");
+ } catch (NumberFormatException e) {
+ // 濡傛灉鏃犳硶瑙f瀽涓� boolean 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒�
+ System.err.println("Could not parse value: " + value);
+ }
+ }
+ }
+ if (!sValueb4.isEmpty()) {
+
+ List<String> A01Bstart = new ArrayList<>();
+ A01Bstart.add("DB101.11.0");
+// Boolean[] a01values7 = {true};
+// List<Boolean> a01Bstartval = new ArrayList<>(Arrays.asList(a01values7));
+ S7control.getinstance().WriteBit(A01Bstart, sValueb4);
+ System.out.println("Values " + sValueb4 + " written to PLC at address " + A01Bstart);
+ }
+ }
+
+
+
+
+
+ if (messageArray.getJSONArray(7).size() > 0) {
+ JSONArray jsonArray4 = messageArray.getJSONArray(7);
+ List<Boolean> sValueb5 = new ArrayList<>();
+ for (int i = 0; i < jsonArray4.size(); i++) {
+ Object value = jsonArray4.get(i);
+ if (value != null && !value.toString().equals("null")) {
+ try {
+ String cleanedValue = value.toString().replaceAll("[^0-9-]", "");
+ boolean val = "1".equals(cleanedValue.trim());
+ sValueb5.add(val);
+ System.out.println("messageValue: " + Arrays.asList(val) + " added to the list");
+ } catch (NumberFormatException e) {
+ // 濡傛灉鏃犳硶瑙f瀽涓� boolean 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒�
+ System.err.println("Could not parse value: " + value);
+ }
+ }
+ }
+ if (!sValueb5.isEmpty()) {
+
+ List<String> A02Bstart = new ArrayList<>();
+ A02Bstart.add("DB101.11.1");
+// Boolean[] a01values7 = {true};
+// List<Boolean> a01Bstartval = new ArrayList<>(Arrays.asList(a01values7));
+ S7control.getinstance().WriteBit(A02Bstart, sValueb5);
+ System.out.println("Values " + sValueb5 + " written to PLC at address " + A02Bstart);
+ }
+ }
+
+
+
+
+
+// if (messageArray.getJSONArray(6).size() > 0) {
+// JSONArray jsonArray6 = messageArray.getJSONArray(6);
+//
+// if (!jsonArray6.isEmpty()) {
+// String value2 = (String) jsonArray6.get(0);
+// List<String> A01Bstart = new ArrayList<>();
+// A01Bstart.add("DB101.11.0");
+// Boolean[] a01values7 = {true};
+// List<Boolean> a01Bstartval = new ArrayList<>(Arrays.asList(a01values7));
+// S7control.getinstance().WriteBit(A01Bstart, a01Bstartval);
+// System.out.println("Values " + value2 + " written to PLC at address " + waddresses6);
+// }
+// }
+
+// if (messageArray.getJSONArray(7).size() > 0) {
+// JSONArray jsonArray6 = messageArray.getJSONArray(7);
+//
+// if (!jsonArray6.isEmpty()) {
+// String value2 = (String) jsonArray6.get(0);
+// List<String> A02Bstart = new ArrayList<>();
+// A02Bstart.add("DB101.11.1");
+// Boolean[] a02values7 = {true};
+// List<Boolean> a02Bstartval = new ArrayList<>(Arrays.asList(a02values7));
+// S7control.getinstance().WriteBit(A02Bstart, a02Bstartval);
+// System.out.println("Values " + value2 + " written to PLC at address " + waddresses6);
+// }
+// }
// 娓呯┖娑堟伅鍒楄〃
webSocketServer.clearMessages();
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/Plcstate.java b/springboot-vue3/src/main/java/com/example/springboot/component/Plcstate.java
index f644903..c62f94f 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/Plcstate.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/Plcstate.java
@@ -70,6 +70,7 @@
// Integer Plccount = this.count;
// System.out.println(PlcAddress);
+ //璇诲彇鐘舵�佹暟鎹�
List<Short> plclist = S7control.getinstance().ReadWord("DB103.0", 44);
// Short[] values = { 0, 1, 1, 0, 1, 0, 1, 0,
// 1, 0, };
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 0b6b94b..226f0b0 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
@@ -3,6 +3,7 @@
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.nio.charset.StandardCharsets;
+import java.sql.Time;
import java.util.ArrayList;
import java.util.List;
@@ -279,6 +280,9 @@
}
}
}
+
+
+
public void outmesid(String data, String addr) {
// System.out.println("outmesid: " + data);
@@ -313,6 +317,12 @@
return data;
}
+ public Long readtime(String address) {
+ if (s7PLC==null)
+ return null;
+ return s7PLC.readTime(address);
+ }
+
private int extractAddressNumber(String address) {
String numberStr = address.replaceAll("\\D+", ""); // 浣跨敤姝e垯琛ㄨ揪寮忔彁鍙栨暟瀛楅儴鍒�
return Integer.parseInt(numberStr);
@@ -332,6 +342,8 @@
List<String> addresslist = GetAddressList(address, count, 1);
return s7PLC.readBoolean(addresslist);
}
+
+
private List<String> GetAddressList(String address, int count, int addedbit) {
List<String> addresslist = new ArrayList<String>();
--
Gitblit v1.8.0