From 73fd9aecc97d33f51ae7fe0350f3423cf8fd824f Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 10 二月 2025 08:11:31 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 117 ++++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 92 insertions(+), 25 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index d5299ac..db5ca80 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -10,6 +10,8 @@
import com.core.common.SpringUtils;
import com.core.exception.CoolException;
import com.zy.asrs.entity.BasDevp;
+import com.zy.asrs.entity.RgvOneSign;
+import com.zy.asrs.mapper.RgvOneSignMapper;
import com.zy.asrs.service.BasDevpService;
import com.zy.core.DevpThread;
import com.zy.core.News;
@@ -45,6 +47,8 @@
private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>();
public boolean charge0; //璇锋眰鍏呯數
public boolean charge1; //璇锋眰鍏呯數
+ private short weight464;
+ private String matnr464;
private short heartBeatVal = 1;
public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{
add(100);add(101);add(102);add(103);add(104);add(105);add(106);add(107);
@@ -347,6 +351,31 @@
}
}
}
+ } else if (slave.getId()==1){
+ try{
+ OperateResultExOne<byte[]> resultSignOne = siemensS7Net.Read("DB293.106", (short) (16));
+
+ int smallEmpty = siemensS7Net.getByteTransform().TransInt16(resultSignOne.Content, 0);// 灏忔枡绌烘墭
+ int bigEmpty = siemensS7Net.getByteTransform().TransInt16(resultSignOne.Content, 2);// 澶ф枡绌烘墭
+ int smallTurn = siemensS7Net.getByteTransform().TransInt16(resultSignOne.Content, 4);// 灏忔枡缈昏浆
+ int bigTurn = siemensS7Net.getByteTransform().TransInt16(resultSignOne.Content, 6);// 澶ф枡缈昏浆
+// int LineUp131 = siemensS7Net.getByteTransform().TransInt16(resultSignOne.Content, 8);// 131鎺掗槦
+// int LineUp126 = siemensS7Net.getByteTransform().TransInt16(resultSignOne.Content, 10);// 126鎺掗槦
+// int LineUp312 = siemensS7Net.getByteTransform().TransInt16(resultSignOne.Content, 12);// 312鎺掗槦
+// int LineUp310 = siemensS7Net.getByteTransform().TransInt16(resultSignOne.Content, 14);// 310鎺掗槦
+
+ updateRgvOneSign("smallEmpty",smallEmpty);
+ updateRgvOneSign("bigEmpty",bigEmpty);
+ updateRgvOneSign("smallTurn",smallTurn);
+ updateRgvOneSign("bigTurn",bigTurn);
+// updateRgvOneSign("LineUp131",LineUp131);
+// updateRgvOneSign("LineUp126",LineUp126);
+// updateRgvOneSign("LineUp312",LineUp312);
+// updateRgvOneSign("LineUp310",LineUp310);
+
+ } catch (Exception e){
+ log.error("璇诲彇杈撻�佺嚎鏁伴噺鏍囪鍑虹幇寮傚父锛�"+e);
+ }
}
@@ -388,6 +417,18 @@
}
}
}
+
+ try{
+ OperateResultExOne<byte[]> resultW464 = siemensS7Net.Read("DB100.1874", (short) 2);
+ weight464 = siemensS7Net.getByteTransform().TransInt16(resultW464.Content, 0);// 閲嶉噺464
+ OperateResultExOne<byte[]> resultM464 = siemensS7Net.Read("DB100.1882", (short) 16);
+ matnr464 = siemensS7Net.getByteTransform().TransString(resultM464.Content, 0,16, "UTF-8");
+ matnr464 = matnr464.replaceAll("\\s+", "");
+ } catch (Exception e){
+ log.error("璇诲彇464绔欑偣淇℃伅澶辫触");
+ weight464 = 0;
+ matnr464 = "";
+ }
}
// //RGV灏忚溅
@@ -413,7 +454,14 @@
List<BasDevp> basDevps = new ArrayList<>();
for (Integer siteId : staNos) {
StaProtocol staProtocol = station.get(siteId);
- basDevps.add(staProtocol.toSqlModel());
+ if (siteId == 464){
+ BasDevp basDevp = staProtocol.toSqlModel();
+ basDevp.setGrossWt(Double.valueOf(weight464));
+ basDevp.setDecDesc(matnr464);
+ basDevps.add(basDevp);
+ } else {
+ basDevps.add(staProtocol.toSqlModel());
+ }
}
try{
@@ -619,7 +667,7 @@
do {
try{
if(!result1.IsSuccess){
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�1 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
@@ -631,14 +679,14 @@
if (status == 1){
break;
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�2 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
continue;
}
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�3 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
@@ -663,7 +711,7 @@
do {
try{
if(!result2.IsSuccess){
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�4 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV1, resultS2);
Thread.sleep(100);
@@ -676,14 +724,14 @@
if (status == resultS2){
break;
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�5 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV1, resultS2);
Thread.sleep(100);
writeCount++;
continue;
}
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�6 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV1, resultS2);
Thread.sleep(100);
writeCount++;
@@ -765,7 +813,7 @@
do {
try{
if(!result1.IsSuccess){
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�7 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
@@ -778,14 +826,14 @@
if (statusR1 == resultS1){
break;
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�8 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
continue;
}
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�9 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
@@ -804,7 +852,7 @@
do {
try{
if(!result2.IsSuccess){
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�10 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV1, resultS2);
Thread.sleep(100);
writeCount++;
@@ -817,7 +865,7 @@
if (statusR1 == resultS2){
break;
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�11 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV1, resultS2);
Thread.sleep(100);
@@ -825,7 +873,7 @@
continue;
}
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�12 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV1, resultS2);
Thread.sleep(100);
writeCount++;
@@ -882,7 +930,7 @@
do {
try{
if(!result1.IsSuccess){
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�13 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
@@ -894,14 +942,14 @@
if (transInt16 == resultS1){
break;
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�14 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
continue;
}
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�15 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result1 = siemensS7Net.Write(resultV1, resultS1);
Thread.sleep(100);
writeCount++;
@@ -917,7 +965,7 @@
do {
try{
if(!result2.IsSuccess){
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�16 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV2, resultS1);
Thread.sleep(100);
writeCount++;
@@ -929,14 +977,14 @@
if (transInt16 == resultS1){
break;
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�17 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV2, resultS1);
Thread.sleep(100);
writeCount++;
continue;
}
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
+ log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔�18 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(staProtocol),writeCount);
result2 = siemensS7Net.Write(resultV2, resultS1);
Thread.sleep(100);
writeCount++;
@@ -978,33 +1026,33 @@
do {
try{
if(!result.IsSuccess){
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount);
+ log.error("鍐欏叆澶ф枡绠辫緭閫佺嚎椤跺崌涓嬮檷淇″彿澶辫触锛岄噸鏂颁笅鍙戜换鍔�19 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount);
result = siemensS7Net.Write(resultV1, true);
Thread.sleep(100);
writeCount++;
continue;
}
- OperateResultExOne<byte[]> resultRead1 = siemensS7Net.Read("resultV1", (short) 1);
+ OperateResultExOne<byte[]> resultRead1 = siemensS7Net.Read("DB500.0", (byte) 1);
if (resultRead1.IsSuccess) {
boolean[] status = siemensS7Net.getByteTransform().TransBool(resultRead1.Content, 0, 1);
if (status[devNo-1]){
break;
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount);
+ log.error("鍐欏叆澶ф枡绠辫緭閫佺嚎椤跺崌涓嬮檷淇″彿澶辫触锛岄噸鏂颁笅鍙戜换鍔�20 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount);
result = siemensS7Net.Write(resultV1, true);
Thread.sleep(100);
writeCount++;
continue;
}
} else {
- log.error("鍐欏叆RGV鏁版嵁澶辫触锛岄噸鏂颁笅鍙戜换鍔� 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount);
+ log.error("鍐欏叆澶ф枡绠辫緭閫佺嚎椤跺崌涓嬮檷淇″彿澶辫触锛岄噸鏂颁笅鍙戜换鍔�21 鍐欏叆鐩存帴澶辫触 ===>> [id:{}],{},[鍐欏叆娆℃暟:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount);
result = siemensS7Net.Write(resultV1, true);
Thread.sleep(100);
writeCount++;
continue;
}
}catch (Exception e){
- log.error("鍐欏叆鏁版嵁鍚庡洖璇诲嚭閿�,寮傚父锛�"+e);
+ log.error("鍐欏叆澶ф枡绠辫緭閫佺嚎椤跺崌涓嬮檷淇″彿鍥炶鍑洪敊,寮傚父锛�"+e);
}
writeCount++;
} while (writeCount<6);
@@ -1040,13 +1088,32 @@
* 璁剧疆鍏ュ簱鏍囪
*/
@Override
- public void setPakMk(Integer siteId, boolean pakMk) {
+ public void setPakMk(Integer siteId, boolean pakMk,Integer i) {
StaProtocol staProtocol = station.get(siteId);
if (null != staProtocol) {
+ log.info("閿佸畾鍏ュ簱鏍囪锛岀珯鐐瑰彿={};pakMk={};鏃堕棿={};鏍囪={}",siteId,pakMk,new Date(),i);
staProtocol.setPakMk(pakMk);
}
}
+ public void updateRgvOneSign(String signType,Integer oneSign){
+ RgvOneSignMapper rgvOneSignMapper = SpringUtils.getBean(RgvOneSignMapper.class);
+
+ try{
+ RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign(signType);
+ if (!Cools.isEmpty(rgvOneSign)){
+ rgvOneSign.setRgvOneSign(oneSign);
+ rgvOneSignMapper.updateById(rgvOneSign);
+ }
+ } catch (Exception e){
+ RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign(signType);
+ if (!Cools.isEmpty(rgvOneSign)){
+ rgvOneSign.setRgvOneSign(999);
+ rgvOneSignMapper.updateById(rgvOneSign);
+ }
+ }
+ }
+
@Override
public void close() {
siemensS7Net.ConnectClose();
--
Gitblit v1.9.1