From 3b42d4d488cc983469e3729ff7f48c2d50c59b52 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 19 九月 2022 12:43:19 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/SteThread.java | 22 +++++++----
src/main/java/com/zy/asrs/controller/SteController.java | 6 +++
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 36 +++++++++++++++++
src/main/java/com/zy/core/enums/SteTaskModeType.java | 8 ++--
4 files changed, 59 insertions(+), 13 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/SteController.java b/src/main/java/com/zy/asrs/controller/SteController.java
index bbc2b37..8d9ec7d 100644
--- a/src/main/java/com/zy/asrs/controller/SteController.java
+++ b/src/main/java/com/zy/asrs/controller/SteController.java
@@ -191,6 +191,12 @@
throw new CoolException("鏈嶅姟鍣ㄩ敊璇�");
}
}
+ SteCommand steCommand = new SteCommand();
+ steCommand.setTaskNo(vo.getWorkNo());
+ if (MessageQueue.offer(SlaveType.Ste, vo.getSteNo(), new Task(2, steCommand))) {
+ } else {
+ throw new CoolException("鍛戒护涓嬪彂澶辫触");
+ }
basSte.setPakMk(vo.getPakMk());
basSte.setWrkNo(vo.getWorkNo());
basSte.setCrnNo(vo.getCrnNo());
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 d74a735..1cb922a 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -541,7 +541,7 @@
if (steNo != null) {
// 灏忚溅琛岃蛋鍒板爢鍨涙満寰呮惉绉荤偣
if (wrkMast.getWrkSts() == 2L && wrkMast.getSteNo() == null) {
- this.letCarBeReady(wrkMast, steNo, wrkMast.getLocNo());
+ this.letCarBeWaiting(wrkMast, steNo, wrkMast.getLocNo());
}
// 鍫嗗灈鏈哄皢璐ф斁鑷冲皬杞︿笂 3.灏忚溅寰呮惉锛堝皬杞︿笉鐢ㄦ惉杩愶紝宸茬粡鍦ㄥ綋鍓嶇粍搴撲綅锛� / 6.灏忚溅寰呭叆 ===>> 7.鍚婅溅鍏ュ簱涓�
if (wrkMast.getWrkSts() == 3L || wrkMast.getWrkSts() == 6L) {
@@ -806,6 +806,40 @@
}
/**
+ * 璁╁皬杞︿粠 杩滅偣 ====>> 寰呮満
+ * 绛夊緟鍫嗗灈鏈烘惉杩�
+ */
+ public void letCarBeWaiting(WrkMast wrkMast, Integer steNo, String locNo) {
+ // 鑾峰彇绌挎杞︿俊鎭�
+ SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, steNo);
+ SteProtocol steProtocol = steThread.getSteProtocol();
+ if (steProtocol == null) { return; }
+ if (steProtocol.isIdle()) {
+
+ // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
+ SteCommand steCommand = new SteCommand();
+ steCommand.setSteNo(steNo); // 绌挎杞︾紪鍙�
+ steCommand.setTaskNo(9999); // 宸ヤ綔鍙�
+ steCommand.setTaskMode(SteTaskModeType.findWaiting(steProtocol.getRow().intValue())); // 浠诲姟妯″紡: 鍘昏繎鐐� 绛夊緟鍫嗗灈鏈哄弶鍙�
+
+ steCommand.setRow(Utils.getGroupRow(steProtocol.getRow().intValue()).shortValue());
+ steCommand.setBay(steProtocol.getBay());
+ steCommand.setLev(steProtocol.getLev());
+
+ if (!MessageQueue.offer(SlaveType.Ste, steNo, new Task(2, steCommand))) {
+ log.error("绌挎杞﹀懡浠や笅鍙戝け璐ワ紝绌挎杞﹀彿={}锛屼换鍔℃暟鎹�={}", steNo, JSON.toJSON(steCommand));
+ } else {
+ // 淇敼宸ヤ綔妗g姸鎬� 缁戝畾绌挎杞�
+ wrkMast.setSteNo(steNo);
+ wrkMast.setModiTime(new Date());
+ if (wrkMastMapper.updateById(wrkMast) == 0) {
+ log.error("淇敼宸ヤ綔妗g姸鎬� 缁戝畾绌挎杞� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
+ }
+ }
+ }
+ }
+
+ /**
* 璁╁皬杞︿粠 杩滅偣 ====>> 绉诲姩鍒拌繎鐐�
* 绛夊緟鍫嗗灈鏈烘惉杩�
*/
diff --git a/src/main/java/com/zy/core/enums/SteTaskModeType.java b/src/main/java/com/zy/core/enums/SteTaskModeType.java
index 3facf5d..55bf278 100644
--- a/src/main/java/com/zy/core/enums/SteTaskModeType.java
+++ b/src/main/java/com/zy/core/enums/SteTaskModeType.java
@@ -60,11 +60,11 @@
case 3:
case 11:
case 18:
- return SteTaskModeType.IN_LEFT; // 鍙�
+ return SteTaskModeType.IN_RIGHT; // 鍙�
case 4:
case 12:
case 19:
- return SteTaskModeType.IN_RIGHT; // 宸�
+ return SteTaskModeType.IN_LEFT; // 宸�
default:
throw new CoolException("瑙f瀽绌挎杞﹀師鐐瑰畾浣嶅け璐�");
}
@@ -191,7 +191,7 @@
case 16:
case 17:
case 18:
- return SteTaskModeType.WAITING_LEFT;
+ return SteTaskModeType.WAITING_RIGHT;
case 4:
case 5:
case 6:
@@ -202,7 +202,7 @@
case 19:
case 20:
case 21:
- return SteTaskModeType.WAITING_RIGHT;
+ return SteTaskModeType.WAITING_LEFT;
default:
throw new CoolException("瑙f瀽绌挎杞﹀師鐐瑰畾浣嶅け璐�");
}
diff --git a/src/main/java/com/zy/core/thread/SteThread.java b/src/main/java/com/zy/core/thread/SteThread.java
index 8188d03..d02a3f3 100644
--- a/src/main/java/com/zy/core/thread/SteThread.java
+++ b/src/main/java/com/zy/core/thread/SteThread.java
@@ -220,16 +220,15 @@
OperateResult result = null;
// 寮�濮嬩换鍔�
if (!command.getComplete()) {
-
+ // 1.浠诲姟鍙�
+ OperateResult result0 = siemensS7Net.Write("V998", command.getTaskNo().shortValue());
+ try {
+ Thread.sleep(200);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
// 浣滀笟
if (command.getTaskMode() != 0) {
- // 1.浠诲姟鍙�
- OperateResult result0 = siemensS7Net.Write("V998", command.getTaskNo().shortValue());
- try {
- Thread.sleep(200);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
// 2.浣滀笟
OperateResult result1 = siemensS7Net.Write("V1000", command.getTaskMode());
// 3.纭寮�濮嬩换鍔�
@@ -259,6 +258,7 @@
// 浠诲姟瀹屾垚
} else {
+ siemensS7Net.Write("V1000",(short) 0);
result = siemensS7Net.Write("V2000.1", true);
}
@@ -367,6 +367,12 @@
}
}
+// public void modifyPos(int wrkNo, int row, int bay, int lev) {
+// BasSteService service = SpringUtils.getBean(BasSteService.class);
+// if (!service.updatePos(wrkNo,this.slave.getId(), row, bay, lev)) {
+// log.error("鏇存柊{}鍙风┛姊溅瀹氫綅澶辫触 ===>> 鎺掞細銆恵}銆�, 鍒楋細銆恵}銆戯紝灞傦細銆恵}銆�", this.slave.getId(), row, bay, lev);
+// }
+// }
/******************************************************************************************/
/**************************************** 娴嬭瘯涓撶敤 *****************************************/
--
Gitblit v1.9.1