From 2cc17d26486c9e4d4db6157497589c52dd7f0dc2 Mon Sep 17 00:00:00 2001
From: 18516761980 <4761516tqsxp>
Date: 星期四, 17 三月 2022 13:50:04 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/model/protocol/StaProtocol.java | 3 +
src/main/java/com/zy/asrs/entity/BasDevp.java | 2
src/main/java/com/zy/core/thread/MelsecCrnThread.java | 84 +++++++++++++++++++++------
src/main/java/com/zy/core/thread/SiemensDevpThread.java | 45 +++++++++++++-
src/main/resources/application.yml | 4
5 files changed, 111 insertions(+), 27 deletions(-)
diff --git a/src/main/java/com/zy/asrs/entity/BasDevp.java b/src/main/java/com/zy/asrs/entity/BasDevp.java
index 388c3e2..1e3d022 100644
--- a/src/main/java/com/zy/asrs/entity/BasDevp.java
+++ b/src/main/java/com/zy/asrs/entity/BasDevp.java
@@ -129,7 +129,7 @@
@ApiModelProperty(value= "鏉″舰鐮�")
private String barcode;
- @ApiModelProperty(value= "")
+ @ApiModelProperty(value= "鍏ュ簱鏆傚瓨鏁�")
@TableField("in_qty")
private Integer inQty;
diff --git a/src/main/java/com/zy/core/model/protocol/StaProtocol.java b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
index 2290116..e42e540 100644
--- a/src/main/java/com/zy/core/model/protocol/StaProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/StaProtocol.java
@@ -49,6 +49,8 @@
// 閿佸畾鏍囪
private boolean pakMk = true;
+ // 鍏ュ簱鏆傚瓨鏁�
+ private Short inQty;
public BasDevp toSqlModel(){
BasDevp basDevp = new BasDevp();
@@ -62,6 +64,7 @@
basDevp.setLocType2((short) 0); // 瀹界獎绫诲瀷{0:鏈煡,1:绐勫簱浣�,2:瀹藉簱浣峿
basDevp.setLocType3((short) 0); // 杞婚噸绫诲瀷{0:鏈煡,1:杞诲簱浣�,2:閲嶅簱浣峿
basDevp.setLocType1(high != low && low ? (short) 1 : (short) 2);
+ basDevp.setInQty(inQty !=null ?(int)inQty : 0);
return basDevp;
}
diff --git a/src/main/java/com/zy/core/thread/MelsecCrnThread.java b/src/main/java/com/zy/core/thread/MelsecCrnThread.java
index 1680a88..73e1d1b 100644
--- a/src/main/java/com/zy/core/thread/MelsecCrnThread.java
+++ b/src/main/java/com/zy/core/thread/MelsecCrnThread.java
@@ -229,29 +229,73 @@
log.error("鍫嗗灈鏈哄啓鍏ュ懡浠や负绌�");
return false;
}
- command.setCrnNo(slave.getId());
- short[] array = new short[10];
- array[0] = command.getAckFinish();
- array[1] = command.getTaskNo();
- array[2] = command.getTaskMode();
- array[3] = command.getSourcePosX();
- array[4] = command.getSourcePosY();
- array[5] = command.getSourcePosZ();
- array[6] = command.getDestinationPosX();
- array[7] = command.getDestinationPosY();
- array[8] = command.getDestinationPosZ();
- array[9] = command.getCommand();
- OperateResult result = melsecMcNet.Write("D0", array);
- try {
- Thread.sleep(200);
+ OperateResult result = null;
+ try{
+ Integer exeCount=0;
+ do{
+ command.setCrnNo(slave.getId());
+ short[] array = new short[10];
+ array[0] = command.getAckFinish();
+ array[1] = command.getTaskNo();
+ array[2] = command.getTaskMode();
+ array[3] = command.getSourcePosX();
+ array[4] = command.getSourcePosY();
+ array[5] = command.getSourcePosZ();
+ array[6] = command.getDestinationPosX();
+ array[7] = command.getDestinationPosY();
+ array[8] = command.getDestinationPosZ();
+ array[9] = command.getCommand();
+ result = melsecMcNet.Write("D0", array);
+ if(result.IsSuccess) {
+ if (command.getAckFinish() == 0) {
+ short commandFinish = 1;
+ result = melsecMcNet.Write("D9", commandFinish);
+ if(result.IsSuccess){
+ //鍐欎换鍔$‘璁よ繑鍥炴垚鍔熷悗锛屾煡璇㈢‘璁や竴娆�
+ Thread.sleep(200);
+ OperateResultExOne<byte[]> result1 = melsecMcNet.Read("D9", (short)2);
+ if(result1.IsSuccess){
+ short commandVal = melsecMcNet.getByteTransform().TransInt16(result1.Content,2);
+ if(commandVal==1){
+ break;
+ } else {
+ exeCount++;
+ }
+ } else{
+ exeCount++;
+ }
+ }else{
+ exeCount++;
+ }
+ }
+ }else{
+ exeCount++;
+ }
+ Thread.sleep(200);
+ }while(exeCount>3);
}catch (Exception e){
+
}
- if (command.getAckFinish() == 0) {
- short commandFinish = 1;
- result = melsecMcNet.Write("D9", commandFinish);
- }
+// command.setCrnNo(slave.getId());
+// short[] array = new short[10];
+// array[0] = command.getAckFinish();
+// array[1] = command.getTaskNo();
+// array[2] = command.getTaskMode();
+// array[3] = command.getSourcePosX();
+// array[4] = command.getSourcePosY();
+// array[5] = command.getSourcePosZ();
+// array[6] = command.getDestinationPosX();
+// array[7] = command.getDestinationPosY();
+// array[8] = command.getDestinationPosZ();
+// array[9] = command.getCommand();
+// OperateResult result = melsecMcNet.Write("D0", array);
+//
+// if (command.getAckFinish() == 0) {
+// short commandFinish = 1;
+// result = melsecMcNet.Write("D9", commandFinish);
+// }
try {
// 鏃ュ織璁板綍
@@ -276,7 +320,7 @@
bean.insert(basCrnOpt);
} catch (Exception ignore) {}
- if (result.IsSuccess) {
+ if (result != null && result.IsSuccess) {
log.info("鍫嗗灈鏈哄懡浠や笅鍙慬id:{}] >>>>> {}", slave.getId(), JSON.toJSON(command));
OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] >>>>> 鍛戒护涓嬪彂锛� {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSON(command)));
return true;
diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
index 17a3e4a..803a751 100644
--- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -118,7 +118,7 @@
// updateIoMode();
OperateResultExOne<byte[]> result = siemensS7Net.Read("DB100.0", (short) 186);
if (result.IsSuccess) {
- for (int i = 0; i < 83; i++) {
+ for (int i = 0; i < 93; i++) {
Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
StaProtocol staProtocol = station.get(siteId);
if (null == staProtocol) {
@@ -132,7 +132,7 @@
Thread.sleep(200);
OperateResultExOne<byte[]> result0 = siemensS7Net.Read("DB101.0", (short) 186);
if (result0.IsSuccess) {
- for (int i = 0; i < 83; i++) {
+ for (int i = 0; i < 93; i++) {
Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
StaProtocol staProtocol = station.get(siteId);
if (null == staProtocol) {
@@ -146,7 +146,7 @@
Thread.sleep(200);
OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB102.0", (short) 186);
if (result1.IsSuccess) {
- for (int i = 0; i < 83; i++) {
+ for (int i = 0; i < 93; i++) {
Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
boolean[] status = siemensS7Net.getByteTransform().TransBool(result1.Content, i*2, 1);
StaProtocol staProtocol = station.get(siteId);
@@ -162,6 +162,41 @@
if (!staProtocol.isPakMk() && !staProtocol.isLoading()) {
staProtocol.setPakMk(true);
}
+ }
+ }
+
+ Thread.sleep(200);
+ OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB300.0", (short) 10);
+ if (result3.IsSuccess) {
+// Integer siteId = staNos.get(i); // 绔欑偣缂栧彿
+ Integer siteId = 0;
+ for (int i = 0; i < 5; i++) {
+ switch (i){
+ case 0:
+ siteId = 100;
+ break;
+ case 1:
+ siteId = 102;
+ break;
+ case 2:
+ siteId = 104;
+ break;
+ case 3:
+ siteId = 106;
+ break;
+ case 4:
+ siteId = 108;
+ break;
+ }
+ StaProtocol staProtocol = station.get(siteId);
+ if (null == staProtocol) {
+ staProtocol = new StaProtocol();
+ staProtocol.setSiteId(siteId);
+ station.put(siteId, staProtocol);
+ }
+ short value = siemensS7Net.getByteTransform().TransInt16(result3.Content, i*2);
+ staProtocol.setInQty(value); // 鍏ュ簱鏆傚瓨鏁�
+ String str="";
}
}
@@ -181,11 +216,13 @@
StaProtocol staProtocol = station.get(siteId);
basDevps.add(staProtocol.toSqlModel());
}
+
BasDevpService basDevpService = SpringUtils.getBean(BasDevpService.class);
- if (!basDevpService.updateBatchById(basDevps)) {
+ if (null != basDevpService && !basDevpService.updateBatchById(basDevps)) {
throw new Exception("鏇存柊鏁版嵁搴撴暟鎹け璐�");
}
} catch (Exception e) {
+ e.printStackTrace();
OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆戞洿鏂版暟鎹簱鏁版嵁澶辫触 ===>> [id:{1}] [ip:{2}] [port:{3}] [rack:{4}] [slot:{5}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot()));
log.error("鏇存柊鏁版嵁搴撴暟鎹け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index e2b441a..b688f73 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -11,8 +11,8 @@
# url: jdbc:sqlserver://47.97.1.152:51433;databasename=xgmasrs
# username: sa
# password: Zoneyung@zy56$
-# url: jdbc:sqlserver://10.10.10.238:1433;databasename=xgmasrs
- url: jdbc:sqlserver://localhost:1433;databasename=xgmasrs
+ url: jdbc:sqlserver://10.10.10.238:1433;databasename=xgmasrs
+# url: jdbc:sqlserver://localhost:1433;databasename=xgmasrs
username: sa
password: sa@123
mvc:
--
Gitblit v1.9.1