From 8e1419f1638175151f11d1943a937a4d8a205575 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 11 八月 2020 10:34:21 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 55 +++++++++++++++++++++------
src/main/java/com/zy/common/Main.java | 8 ++--
src/main/java/com/zy/core/model/command/CrnCommand.java | 3 -
3 files changed, 46 insertions(+), 20 deletions(-)
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 f409a1f..59d1504 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -8,10 +8,7 @@
import com.zy.asrs.entity.*;
import com.zy.asrs.mapper.WaitPakinMapper;
import com.zy.asrs.mapper.WrkMastMapper;
-import com.zy.asrs.service.BasCrnpService;
-import com.zy.asrs.service.LocMastService;
-import com.zy.asrs.service.StaDescService;
-import com.zy.asrs.service.WrkDetlService;
+import com.zy.asrs.service.*;
import com.zy.common.model.StartupDto;
import com.zy.core.cache.MessageQueue;
import com.zy.core.cache.SlaveConnection;
@@ -60,6 +57,8 @@
private StaDescService staDescService;
@Autowired
private BasCrnpService basCrnpService;
+ @Autowired
+ private BasDevpService basDevpService;
@Autowired
private JdbcTemplate jdbcTemplate;
@@ -342,9 +341,13 @@
// 鑾峰彇鍫嗗灈鏈哄叆搴撶珯淇℃伅
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId());
StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo());
-
- // todo:luxiaotao
- if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0) {
+ // 鏌ヨ绔欑偣璇︾粏淇℃伅
+ BasDevp staDetl = basDevpService.selectById(crnStn.getStaNo());
+ if (staDetl == null) {
+ log.error("鍏ュ簱搴� ===>> 鍫嗗灈鏈虹珯鐐瑰湪鏁版嵁搴撲笉瀛樺湪, 绔欑偣缂栧彿={}", crnStn.getStaNo());
+ continue;
+ }
+ if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0 && staDetl.getCanining().equals("Y")) {
flag = true;
}
if (!flag) {
@@ -363,14 +366,13 @@
continue;
}
if (!locMast.getLocSts().equals("S") && !locMast.getLocSts().equals("Q")) {
- log.error("搴撲綅鐘舵�佷笉绗﹀悎--鐘舵��, 搴撲綅鍙�={}锛屽簱浣嶇姸鎬�={}", wrkMast.getLocNo(), locMast.getLocSts());
+ log.error("鍏ュ簱鎿嶄綔搴撲綅鐘舵�佷笉绗﹀悎--鐘舵��, 搴撲綅鍙�={}锛屽簱浣嶇姸鎬�={}", wrkMast.getLocNo(), locMast.getLocSts());
continue;
}
// 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
// CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, slave.getId());
// CrnProtocol crnProtocol = crnThread.getCrnProtocol();
-
CrnCommand crnCommand = new CrnCommand();
crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙�
crnCommand.setDestinationPosX(locMast.getRow1().shortValue()); // 鎺�
@@ -387,17 +389,44 @@
*/
private void locToCrnStn(CrnSlave slave){
for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) {
- // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅
- DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId());
- StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo());
-
// 鑾峰彇宸ヤ綔鐘舵�佷负11锛堢敓鎴愬嚭搴揑D锛夌殑鍑哄簱宸ヤ綔妗�
WrkMast wrkMast = wrkMastMapper.selectPakOutStep1(slave.getId());
if (wrkMast == null) {
continue;
}
+ // 宸ヤ綔妗g姸鎬佸垽鏂�
+ if (wrkMast.getIoType() < 100 || wrkMast.getSourceStaNo() == null){
+ log.error("鏌ヨ宸ヤ綔妗f暟鎹笉绗﹀悎鏉′欢--鍏ュ嚭绫诲瀷/绔欑偣, 宸ヤ綔鍙�={}锛屾簮搴撲綅={}锛屽叆鍑虹被鍨�={}", wrkMast.getWrkNo(), wrkMast.getSourceLocNo(), wrkMast.getIoType());
+ continue;
+ }
+ // 鑾峰彇婧愬簱浣嶄俊鎭�
+ LocMast sourceSta = locMastService.selectById(wrkMast.getSourceLocNo());
+ if (!sourceSta.getLocSts().equals("R") &&!sourceSta.getLocSts().equals("P")) {
+ log.error("鍑哄簱鎿嶄綔搴撲綅鐘舵�佷笉绗﹀悎--鐘舵��, 搴撲綅鍙�={}锛屽簱浣嶇姸鎬�={}", wrkMast.getLocNo(), sourceSta.getLocSts());
+ continue;
+ }
+ // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅
+ DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId());
+ StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo());
+ // 鏌ヨ绔欑偣璇︾粏淇℃伅
+ BasDevp staDetl = basDevpService.selectById(crnStn.getStaNo());
+ if (staDetl == null) {
+ log.error("鍑哄簱 ===>> 鍫嗗灈鏈虹珯鐐瑰湪鏁版嵁搴撲笉瀛樺湪, 绔欑偣缂栧彿={}", crnStn.getStaNo());
+ continue;
+ }
+ // 鍒ゆ柇鍫嗗灈鏈哄嚭搴撶珯鐘舵��
+ if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting().equals("Y")
+ && staProtocol.getWorkNo() == 0) {
+ // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
+ CrnCommand crnCommand = new CrnCommand();
+ crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙�
+ crnCommand.setAckFinish((short) 1); // 浠诲姟瀹屾垚纭浣�
+ if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task<>(2, crnCommand))) {
+ log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand));
+ }
+ }
}
}
diff --git a/src/main/java/com/zy/common/Main.java b/src/main/java/com/zy/common/Main.java
index 9ef3457..c158631 100644
--- a/src/main/java/com/zy/common/Main.java
+++ b/src/main/java/com/zy/common/Main.java
@@ -56,8 +56,8 @@
public static void main(String[] args) {
- SiemensS7Net siemens_net = new SiemensS7Net(SiemensPLCS.S1200,"192.168.2.125");
- siemens_net.setSlot((byte) 1);
+ SiemensS7Net siemens_net = new SiemensS7Net(SiemensPLCS.S300,"192.168.6.1");
+ siemens_net.setSlot((byte) 2);
siemens_net.setRack((byte) 0);
OperateResult connect = siemens_net.ConnectServer();
if(connect.IsSuccess){
@@ -69,7 +69,7 @@
siemens_net.ConnectClose();
short[] array = new short[] {9999,20,31,40,50};
- OperateResult db100 = siemens_net.Write("DB100.0", array);
+ OperateResult db100 = siemens_net.Write("DB8.18", array);
if (db100.IsSuccess) {
System.out.println("鍐欏叆鎴愬姛");
} else {
@@ -78,7 +78,7 @@
// OperateResultExOne<Short> shortOperateResultExOne = siemens_net.ReadInt16("DB100.2");
// System.out.println(shortOperateResultExOne.Content);
- OperateResultExOne<byte[]> read = siemens_net.Read("DB100.0", (short) 10);
+ OperateResultExOne<byte[]> read = siemens_net.Read("DB8.18", (short) 10);
if (read.IsSuccess) {
// for (int i = 0; i<10; i=i+2) {
// System.out.println(siemens_net.getByteTransform().TransInt16(read.Content, i));
diff --git a/src/main/java/com/zy/core/model/command/CrnCommand.java b/src/main/java/com/zy/core/model/command/CrnCommand.java
index b031fb3..3b89cb4 100644
--- a/src/main/java/com/zy/core/model/command/CrnCommand.java
+++ b/src/main/java/com/zy/core/model/command/CrnCommand.java
@@ -12,9 +12,6 @@
// 鍫嗗灈鏈哄彿
private Integer crnNo;
- // 浠诲姟涓嬪彂纭浣�
- private Short stb;
-
// 浠诲姟瀹屾垚纭浣�
private Short ackFinish;
--
Gitblit v1.9.1