From 572a655759f4f8fcfce2c89db491dd837327527a Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期一, 03 十一月 2025 09:54:09 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 334 +++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 246 insertions(+), 88 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index afbcd87..e0a32ce 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);
@@ -130,10 +134,13 @@
add(696);add(697);add(698);add(699);
}};
+ private boolean connectDev = false;
+
+
/**
* 鏉$爜鏁伴噺
*/
- private int barcodeSize = 9;
+ private int barcodeSize = 5;
/**
* 鍏ュ嚭搴撴ā寮�
@@ -163,12 +170,88 @@
}
}
+
+ /**
+ * 鍒濆鍖栫珯鐐圭姸鎬�
+ */
+ private void initSite() {
+ try{
+ ArrayList<Integer> staNos = getStaNo();
+ // 绔欑偣缂栧彿
+ for (Integer siteId : staNos) {
+ StaProtocol staProtocol = station.get(siteId);
+ if (null == staProtocol) {
+ staProtocol = new StaProtocol();
+ staProtocol.setSiteId(siteId);
+ station.put(siteId, staProtocol);
+ }
+ staProtocol.setSiteId(siteId);
+ staProtocol.setWorkNo(0); // ID
+ staProtocol.setAutoing(false); // 鑷姩
+ staProtocol.setLoading(false); // 鏈夌墿
+ staProtocol.setInEnable(false); // 鍙叆
+ staProtocol.setOutEnable(false); // 鍙嚭
+ staProtocol.setEmptyMk(false); // 绌烘澘淇″彿
+ staProtocol.setStaNo(0); // 鐩爣绔�
+
+ if (!staProtocol.isPakMk() && !staProtocol.isLoading()) {
+ staProtocol.setPakMk(true);
+ }
+ }
+ } catch (Exception e){
+ try{
+ log.error(e.getMessage());
+ } catch (Exception e1){
+
+ }
+ log.error("鍒濆鍖栫珯鐐圭姸鎬佸紓甯�");
+ }
+ }
+
@Override
@SuppressWarnings("InfiniteLoopStatement")
public void run() {
- connect();
+ connectDev = connect();
+ while(!connectDev){
+ try {
+ connectDev = this.connect();
+ Thread.sleep(100);
+ } catch (Exception e){
+
+ }
+ }
+
+ // 鍚姩绾跨▼鑷姩閲嶈繛
+ new Thread(this::devConnect).start();
+ new Thread(this::readStatusDev).start();
+ new Thread(this::writeStatusDev).start();
+ }
+
+ private void devConnect() {
while (true) {
try {
+ Thread.sleep(1000);
+
+ if(!connectDev){
+ try {
+ connectDev = this.connect();
+ Thread.sleep(100);
+ } catch (Exception e){
+
+ }
+ }
+ } catch (Exception e) {
+ log.info("dev杩炴帴澶辫触 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
+ initSite();
+// e.printStackTrace();
+ }
+ }
+ }
+
+ private void writeStatusDev() {
+ while (true) {
+ try {
+ Thread.sleep(50);
int step = 1;
Task task = MessageQueue.poll(SlaveType.Devp, slave.getId());
if (task != null) {
@@ -177,7 +260,7 @@
switch (step) {
// 璇绘暟鎹�
case 1:
- read();
+// read();
break;
// 鍐欐暟鎹� ID+鐩爣绔�
case 2:
@@ -216,10 +299,34 @@
// heartbeat();
Thread.sleep(400);
} catch (Exception e) {
- e.printStackTrace();
+// e.printStackTrace();
+ try{
+ log.error("dev鍐欑嚎绋嬪紓甯�"+e.getMessage());
+
+ } catch (Exception e1){
+
+ }
+ log.error("DEV鏁版嵁鍐欏叆绾跨▼寮傚父锛侊紒锛� ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
+
}
}
+
+ }
+
+ private void readStatusDev() {
+ while (true) {
+ try {
+ Thread.sleep(50);
+ read();
+
+ } catch (Exception e) {
+ log.error("Dev鏁版嵁璇诲彇绾跨▼寮傚父锛侊紒锛� ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
+ initSite();
+ }
+
+ }
+
}
@Override
@@ -318,6 +425,7 @@
staProtocol.setEndRow(siemensS7Net.getByteTransform().TransInt16(resultRgv2.Content, 0)); // 灏忚溅鐩爣浣�
staProtocol.setNowRow(siemensS7Net.getByteTransform().TransInt16(resultRgv.Content, 2)); // 褰撳墠浣嶇疆
+// staProtocol.setNowRow((short)2); // 褰撳墠浣嶇疆
boolean[] status = siemensS7Net.getByteTransform().TransBool(resultRgv.Content, 4, 1);
staProtocol.setRGV1(status[0]); // 灏忚溅鏃犺揣绌洪棽
@@ -346,6 +454,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);
+ }
}
@@ -353,11 +486,15 @@
Thread.sleep(200);
OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.2440",(short)(barcodeSize*8));
if (result2.IsSuccess) {
- int[] staNosRgv = {281,292,173,214,120,100,101,102,103};
-
- for (int i = 0; i < barcodeSize; i++) { //1:281 2:292 3:174(173) 4:214 5:120
+ int[] staNosRgv = new int[]{281,292,173,214,120};
+ if (slave.getId()==2){
+ staNosRgv = new int[]{453,460,518,532,607};
+ }
+ for (int i = 0; i < barcodeSize; i++) {
+ //1:281 2:292 3:174(173) 4:214 5:120
+ //6:453 7:460 8:508 9:534 10:611
String barcode = siemensS7Net.getByteTransform().TransString(result2.Content,i*8,8, "UTF-8");
- BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, i + 1);
+ BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, (i + 1+((slave.getId()-1)*5)));
if(!Cools.isEmpty(barcodeThread) && !barcodeThread.getBarcode().equals(barcode)) {
Integer siteId = staNosRgv[i]; // 绔欑偣缂栧彿
StaProtocol staProtocol = station.get(siteId);
@@ -370,19 +507,46 @@
}
}
- //RGV灏忚溅
- Thread.sleep(200);
- OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB100.160",(short)2);
- if (result3.IsSuccess) {
- Integer siteId = 2000;
- StaProtocol staProtocol = station.get(siteId);
- if (null == staProtocol) {
- staProtocol = new StaProtocol();
- staProtocol.setSiteId(siteId);
- station.put(siteId, staProtocol);
+ if (slave.getId()==2){
+ OperateResultExOne<byte[]> result464 = siemensS7Net.Read("DB101.3720",(short)(8));
+ if (result464.IsSuccess) {
+ String barcode = siemensS7Net.getByteTransform().TransString(result464.Content,0,8, "UTF-8");
+ BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, 11);
+ if(!Cools.isEmpty(barcodeThread) && !barcodeThread.getBarcode().equals(barcode)) {
+ StaProtocol staProtocol = station.get(464);
+ if (null != staProtocol) {
+ staProtocol.setBarcode(barcode);
+ barcodeThread.setBarcode(barcode);
+ }
+ }
}
- staProtocol.setNearbySta(String.valueOf(siemensS7Net.getByteTransform().TransInt16(result3.Content, 0)));
+
+ 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灏忚溅
+// Thread.sleep(200);
+// OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB100.160",(short)2);
+// if (result3.IsSuccess) {
+// Integer siteId = 2000;
+// StaProtocol staProtocol = station.get(siteId);
+// if (null == staProtocol) {
+// staProtocol = new StaProtocol();
+// staProtocol.setSiteId(siteId);
+// station.put(siteId, staProtocol);
+// }
+// staProtocol.setNearbySta(String.valueOf(siemensS7Net.getByteTransform().TransInt16(result3.Content, 0)));
+// }
if (result.IsSuccess) {
@@ -393,12 +557,23 @@
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());
+ }
}
- BasDevpService basDevpService = SpringUtils.getBean(BasDevpService.class);
- if (null != basDevpService && !basDevpService.updateBatchById(basDevps)) {
- throw new Exception("鏇存柊鏁版嵁搴撴暟鎹け璐�");
+ try{
+ BasDevpService basDevpService = SpringUtils.getBean(BasDevpService.class);
+ if (null != basDevpService && !basDevpService.updateBatchById(basDevps)) {
+ throw new Exception("鏇存柊鏁版嵁搴撴暟鎹け璐�");
+ }
+ } catch (Exception e){
+ log.error("鏇存柊鏁版嵁搴撴暟鎹け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
}
} catch (Exception e) {
e.printStackTrace();
@@ -466,26 +641,8 @@
Integer siteId = staProtocol.getSiteId();
Integer index =0;
switch (siteId){
- case 118:
+ case 607:
index=0;
- break;
- case 119:
- index=1;
- break;
- case 120:
- index=2;
- break;
- case 121:
- index=3;
- break;
- case 131:
- index=4;
- break;
- case 135:
- index=5;
- break;
- case 147:
- index=6;
break;
default:
return;
@@ -495,7 +652,7 @@
//浠诲姟涓嬪彂娆℃暟
int writeCount = 0;
do {
- write = siemensS7Net.Write("DB100.600." + index, true); // 浠诲姟瀹屾垚
+ write = siemensS7Net.Write("DB100.1872", (short) 1); // 浠诲姟瀹屾垚
if(write.IsSuccess){
writeCount=6;
}else {
@@ -524,26 +681,8 @@
Integer siteId = staProtocol.getSiteId();
Integer index =0;
switch (siteId){
- case 118:
+ case 607:
index=0;
- break;
- case 119:
- index=1;
- break;
- case 120:
- index=2;
- break;
- case 121:
- index=3;
- break;
- case 131:
- index=4;
- break;
- case 135:
- index=5;
- break;
- case 147:
- index=6;
break;
default:
return;
@@ -553,10 +692,10 @@
//浠诲姟涓嬪彂娆℃暟
int writeCount = 0;
do {
- write = siemensS7Net.Write("DB100.600." + index, false); // 浠诲姟瀹屾垚澶嶄綅
+ write = siemensS7Net.Write("DB100.1872", (short) 0); // 浠诲姟瀹屾垚澶嶄綅
if(write.IsSuccess){
writeCount=6;
- }else {
+ } else {
writeCount++;
log.error("鍐欏叆杈撻�佺嚎鍛戒护鍚庤鍙栧け璐ャ�傝緭閫佺嚎plc缂栧彿={}锛岀珯鐐规暟鎹�={},鍐欏叆娆℃暟={}", slave.getId(), JSON.toJSON(staProtocol), writeCount);
}
@@ -631,7 +770,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++;
@@ -643,14 +782,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++;
@@ -675,7 +814,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);
@@ -688,14 +827,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++;
@@ -777,7 +916,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++;
@@ -790,14 +929,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++;
@@ -816,7 +955,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++;
@@ -829,7 +968,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);
@@ -837,7 +976,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++;
@@ -894,7 +1033,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++;
@@ -906,14 +1045,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++;
@@ -929,7 +1068,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++;
@@ -941,14 +1080,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++;
@@ -990,33 +1129,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);
@@ -1052,13 +1191,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