From 16787b096c6aec16195a85f0a1c4666679e8f32f Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 11 一月 2021 13:34:38 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/SiemensCrnThread.java | 75 +++++++++++++++++++++++++++++++++++++
src/main/java/com/zy/asrs/controller/ConsoleController.java | 2
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 4 +-
src/main/java/com/zy/core/enums/CrnLiftPosType.java | 1
src/main/java/com/zy/asrs/controller/CrnController.java | 6 --
src/main/java/com/zy/core/model/protocol/CrnProtocol.java | 10 ++--
src/main/resources/application.yml | 12 +++---
7 files changed, 90 insertions(+), 20 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/ConsoleController.java b/src/main/java/com/zy/asrs/controller/ConsoleController.java
index 4349ee5..b4d1309 100644
--- a/src/main/java/com/zy/asrs/controller/ConsoleController.java
+++ b/src/main/java/com/zy/asrs/controller/ConsoleController.java
@@ -129,7 +129,7 @@
/**
* 鍫嗗灈鏈虹姸鎬佸垽鏂�
*/
- if ((crn.getId() == 1 && crnProtocol.getAlarm1() > 0) || (crn.getId() == 2 && crnProtocol.getAlarm1() > 1000)) {
+ if (crn.getId() == 1 && crnProtocol.getAlarm1() > 0) {
vo.setCrnStatus(CrnStatusType.MACHINE_ERROR);
} else {
if (crnProtocol.getTaskNo()>0) {
diff --git a/src/main/java/com/zy/asrs/controller/CrnController.java b/src/main/java/com/zy/asrs/controller/CrnController.java
index 29f65a1..03eb364 100644
--- a/src/main/java/com/zy/asrs/controller/CrnController.java
+++ b/src/main/java/com/zy/asrs/controller/CrnController.java
@@ -129,11 +129,7 @@
vo.setXLocation(crnProtocol.getWalkPos() == 1?"鏄�":"鍚�"); // 璧拌瀹氫綅
vo.setYLocation(crnProtocol.getLiftPosType().equals(CrnLiftPosType.NONE)?"鍚�":"鏄�"); // 鍗囬檷瀹氫綅
// vo.setStop(crnProtocol.getCrnError1().controlStop||crnProtocol.getCrnError1().mainStop||crnProtocol.getCrnError1().remoteStop?"鏄�":"鍚�"); // 鎬ュ仠
- if (vo.getCrnNo() == 2) {
- vo.setWarnCode(String.valueOf(crnProtocol.getAlarm1()-1000)); // 寮傚父鐮�
- } else {
- vo.setWarnCode(String.valueOf(crnProtocol.getAlarm1())); // 寮傚父鐮�
- }
+ vo.setWarnCode(String.valueOf(crnProtocol.getAlarm1())); // 寮傚父鐮�
}
return R.ok().add(list);
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index e491427..2f6c7bd 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -755,7 +755,7 @@
if (wrkMast == null) {
continue;
}
- BasCrnError crnError = basCrnErrorMapper.selectById(crn.getId()==2?(crnProtocol.getAlarm1()+1000):crnProtocol.getAlarm1());
+ BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm1());
String errName = crnError==null? String.valueOf(crnProtocol.getAlarm1()):crnError.getErrName();
BasErrLog basErrLog = new BasErrLog(
null, // 缂栧彿
@@ -802,7 +802,7 @@
if (crnProtocol.getAlarm1() != null && crnProtocol.getAlarm1() > 0) {
// 璁板綍鏂板紓甯�
if (latest == null || (latest.getErrCode() != crnProtocol.getAlarm1().intValue())) {
- BasCrnError crnError = basCrnErrorMapper.selectById(crn.getId()==2?(crnProtocol.getAlarm1()+1000):crnProtocol.getAlarm1());
+ BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm1());
String errName = crnError==null? String.valueOf(crnProtocol.getAlarm1()):crnError.getErrName();
BasErrLog basErrLog = new BasErrLog(
null, // 缂栧彿
diff --git a/src/main/java/com/zy/core/enums/CrnLiftPosType.java b/src/main/java/com/zy/core/enums/CrnLiftPosType.java
index ad16280..62bbf5e 100644
--- a/src/main/java/com/zy/core/enums/CrnLiftPosType.java
+++ b/src/main/java/com/zy/core/enums/CrnLiftPosType.java
@@ -7,6 +7,7 @@
DOWN(2, "鍗曚几浣嶄綆浣�"), // 涓嬪畾浣�
UP(1, "鍗曚几浣嶉珮浣�"), // 涓婂畾浣�
NONE(0, "涓嶅湪瀹氫綅"), // 涓嶅湪瀹氫綅
+ ERROR(-1, "鏈煡"), // 涓嶅湪瀹氫綅
;
public Integer id;
diff --git a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
index 761a91a..2110fc1 100644
--- a/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
+++ b/src/main/java/com/zy/core/model/protocol/CrnProtocol.java
@@ -185,25 +185,25 @@
* 1 = 璐у弶鍦ㄥ乏渚�
* 2 = 璐у弶鍦ㄥ彸渚�
*/
- public Short forkPos;
+ public Short forkPos = -1;
- public CrnForkPosType forkPosType;
+ public CrnForkPosType forkPosType = CrnForkPosType.NONE;
/**
* 褰撳墠杞借揣鍙颁綅缃�
* 0 = 涓嬪畾浣�
* 1 = 涓婂畾浣�
*/
- public Short liftPos;
+ public Short liftPos = -1;
- public CrnLiftPosType liftPosType;
+ public CrnLiftPosType liftPosType = CrnLiftPosType.ERROR;
/**
* 璧拌鍦ㄥ畾浣�
* 0 = 鍦ㄥ畾浣�
* 1 = 涓嶅湪瀹氫綅
*/
- public Short walkPos;
+ public Short walkPos = 0;
/**
* 鎷ㄦ寚浣嶇疆
diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index 7c603e2..fb5bced 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -114,7 +114,7 @@
* 璇诲彇鐘舵��
*/
private void readStatus(){
- OperateResultExOne<byte[]> result = siemensNet.Read("DB11.2", (short) 90);
+ OperateResultExOne<byte[]> result = siemensNet.Read("DB11.2", (short) 104);
if (result.IsSuccess) {
if (null == crnProtocol) {
crnProtocol = new CrnProtocol();
@@ -160,6 +160,19 @@
crnProtocol.setDoubleLow(bool3[5]);
crnProtocol.setPlatformHigh(bool3[6]);
crnProtocol.setPlatformLow(bool3[7]);
+ boolean[] bool4 = siemensNet.getByteTransform().TransBool(result.Content, 64, 1); // 66
+ crnProtocol.setLoaded((short) (bool4[4]?1:0)); // 鏈夌墿
+
+ // 閫熷害
+ crnProtocol.setXSpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 22)); // 24
+ crnProtocol.setYSpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 24)); // 26
+ crnProtocol.setZSpeed((float) siemensNet.getByteTransform().TransInt16(result.Content, 26)); // 28
+ // 绱閲岀▼銆佹椂闀�
+ crnProtocol.setXDuration((float) siemensNet.getByteTransform().TransInt32(result.Content, 88)); // 90
+ crnProtocol.setYDistance((float) siemensNet.getByteTransform().TransInt32(result.Content, 92)); // 94
+ crnProtocol.setXDuration((float) siemensNet.getByteTransform().TransInt32(result.Content, 96)); // 98
+ crnProtocol.setYDuration((float) siemensNet.getByteTransform().TransInt32(result.Content, 100)); // 102
+
// 澧炲己
if (crnProtocol.getForkHome()) {
crnProtocol.setForkPos(CrnForkPosType.HOME);
@@ -230,6 +243,66 @@
log.error("鍫嗗灈鏈哄啓鍏ュ懡浠や负绌�");
return false;
}
+ if (command.getTaskNo() == 0) {
+ command.setTaskNo((short) 9999);
+ }
+ // 浠g悊
+ switch (command.getSourcePosX()) {
+ case 1:
+ command.setSourcePosX((short) 4);
+ break;
+ case 2:
+ command.setSourcePosX((short) 3);
+ break;
+ case 3:
+ command.setSourcePosX((short) 2);
+ break;
+ case 4:
+ command.setSourcePosX((short) 1);
+ break;
+ case 5:
+ command.setSourcePosX((short) 4);
+ break;
+ case 6:
+ command.setSourcePosX((short) 3);
+ break;
+ case 7:
+ command.setSourcePosX((short) 2);
+ break;
+ case 8:
+ command.setSourcePosX((short) 1);
+ break;
+ default:
+ log.info("{}鍙峰爢鍨涙満涓嬫柟鍛戒护閿欒锛屾簮鎺掞細{}", command.getCrnNo(), command.getSourcePosX());
+ }
+ switch (command.getDestinationPosX()) {
+ case 1:
+ command.setDestinationPosX((short) 4);
+ break;
+ case 2:
+ command.setDestinationPosX((short) 3);
+ break;
+ case 3:
+ command.setDestinationPosX((short) 2);
+ break;
+ case 4:
+ command.setDestinationPosX((short) 1);
+ break;
+ case 5:
+ command.setDestinationPosX((short) 4);
+ break;
+ case 6:
+ command.setDestinationPosX((short) 3);
+ break;
+ case 7:
+ command.setDestinationPosX((short) 2);
+ break;
+ case 8:
+ command.setDestinationPosX((short) 1);
+ break;
+ default:
+ log.info("{}鍙峰爢鍨涙満涓嬫柟鍛戒护閿欒锛岀洰鏍囨帓锛歿}", command.getCrnNo(), command.getSourcePosX());
+ }
command.setCrnNo(slave.getId());
short[] array = new short[9];
if (!command.getTaskModeType().equals(CrnTaskModeType.CLEAR)) {
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 5318701..d287af3 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -44,10 +44,10 @@
# 鍫嗗灈鏈�1
crn[0]:
id: 1
- ip: 192.168.6.9
- port: 102
+ ip: 192.168.0.20
+ port: 2000
rack: 0
- slot: 0
+ slot: 1
# 鍋忕Щ閲忥紝褰撳爢鍨涙満绔欑偣鍒楀彿=1鏃讹紝鍋忕Щ閲�=2
offset: 2
# 鍫嗗灈鏈哄叆搴撶珯鐐�
@@ -67,10 +67,10 @@
# 鍫嗗灈鏈�2
crn[1]:
id: 2
- ip: 192.168.6.20
- port: 6000
+ ip: 192.168.0.10
+ port: 2000
rack: 0
- slot: 0
+ slot: 1
# 鍋忕Щ閲忥紝褰撳爢鍨涙満绔欑偣鍒楀彿=1鏃讹紝鍋忕Щ閲�=2
offset: 2
# 鍫嗗灈鏈哄叆搴撶珯鐐�
--
Gitblit v1.9.1