From 29ccba30133dec6ec0516c0782da5fe7d046848d Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期四, 16 十月 2025 10:00:14 +0800
Subject: [PATCH] wcs功能完善
---
src/main/java/com/zy/core/thread/SiemensCrnThread.java | 56 ++++++++++++++++++++++----------------------------------
1 files changed, 22 insertions(+), 34 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index 72d74e7..462bde0 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -111,14 +111,14 @@
}
crnProtocol.setMode((short) -1);
// crnProtocol.setTaskNo((short)0);
- crnProtocol.setStatus((short)-1);
- crnProtocol.setBay((short)0);
- crnProtocol.setLevel((short)0);
+ crnProtocol.setStatus((short) -1);
+ crnProtocol.setBay((short) 0);
+ crnProtocol.setLevel((short) 0);
crnProtocol.setForkPos((short) -1);
crnProtocol.setLiftPos((short) -1);
- crnProtocol.setWalkPos((short)0);
- crnProtocol.setLoaded((short)0);
- crnProtocol.setAlarm((short)0);
+ crnProtocol.setWalkPos((short) 0);
+ crnProtocol.setLoaded((short) 0);
+ crnProtocol.setAlarm((short) 0);
crnProtocol.setxSpeed((short) 0);
crnProtocol.setySpeed((short) 0);
crnProtocol.setzSpeed((short) 0);
@@ -126,17 +126,17 @@
crnProtocol.setyDistance((short) 0);
crnProtocol.setxDuration((short) 0);
crnProtocol.setyDuration((short) 0);
- try{
+ try {
// 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴�
BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class);
BasCrnp basCrnp = new BasCrnp();
- basCrnp.setCrnErr(crnProtocol.getAlarm()==null?0:crnProtocol.getAlarm().longValue());
+ basCrnp.setCrnErr(crnProtocol.getAlarm() == null ? 0 : crnProtocol.getAlarm().longValue());
basCrnp.setCrnNo(slave.getId());
- basCrnp.setCrnSts((int)crnProtocol.getMode());
- if (!basCrnpService.updateById(crnProtocol.toSqlModel(basCrnp))){
- News.error("MelsecCrn"+" - 4"+" - 鍫嗗灈鏈簆lc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
+ basCrnp.setCrnSts((int) crnProtocol.getMode());
+ if (!basCrnpService.updateById(crnProtocol.toSqlModel(basCrnp))) {
+ News.error("MelsecCrn" + " - 4" + " - 鍫嗗灈鏈簆lc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
}
- } catch (Exception e){
+ } catch (Exception e) {
}
}
@@ -198,6 +198,7 @@
// 澶嶄綅淇″彿
if (!Cools.isEmpty(crnProtocol.getStatusType()) && crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) {
+ News.info("{}鍙峰爢鍨涙満锛屾敹鍒颁换鍔}瀹屾垚淇″彿",crnProtocol.getCrnNo(),crnProtocol.getTaskNo());
if (resetFlag) {
if(crnProtocol.getTaskNo()==9999){
backHpFlag = false;
@@ -231,15 +232,6 @@
OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆戣鍙栧爢鍨涙満plc鐘舵�佷俊鎭け璐� ===>> [id:{1}] [ip:{2}] [port:{3}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));
News.error("SiemensCrn"+" - 5"+" - 璇诲彇鍫嗗灈鏈簆lc鐘舵�佷俊鎭け璐� ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
initCrn();
- }
- }
-
- private void convertRow(CrnCommand crnCommand) {
- if (crnCommand.getSourcePosX() != null && crnCommand.getSourcePosX() != 0) {
- crnCommand.setSourcePosX((short) (crnCommand.getSourcePosX() - ((slave.getId() - 1) * 4)));
- }
- if (crnCommand.getDestinationPosX() != null && crnCommand.getDestinationPosX() != 0) {
- crnCommand.setDestinationPosX((short) (crnCommand.getDestinationPosX() - ((slave.getId() - 1) * 4)));
}
}
@@ -277,9 +269,9 @@
}catch (Exception e){
News.error("鍫嗗灈鏈哄懡浠ゅ湴鍧�鍐欏叆鍚庡洖璇诲嚭閿�");
}
-// convertRow(command);
+
command.setCrnNo(slave.getId());
-// short[] array = new short[10];
+
short[] array = new short[10];
array[0] = command.getAckFinish(); // 浠诲姟瀹屾垚纭浣�
array[1] = command.getTaskNo(); // 浠诲姟鍙�
@@ -293,14 +285,10 @@
array[9] = command.getCommand();
// array[10] = 0; //澶囩敤1
-// boolean[] array2 = new boolean[1];
-// array2[0] = command.isTraySize();
OperateResult result = siemensNet.Write("DB100.0", array);
-// OperateResult result2 = siemensNet.Write("DB100.22", array2);
News.info("鍫嗗灈鏈哄懡浠や笅鍙慬id:{}] >>>>> {}", slave.getId(), array);
-// if(!result.IsSuccess || !result2.IsSuccess){
- if(!result.IsSuccess){
+ if (!result.IsSuccess) {
News.error("鍐欏叆鍫嗗灈鏈簆lc鏁版嵁澶辫触锛岄噸鏂版坊鍔犱换鍔″埌闃熷垪 ===>> [id:{}],{}", slave.getId(), JSON.toJSON(command));
MessageQueue.offer(SlaveType.Crn, slave.getId(), new Task(2, command));
Thread.sleep(100);
@@ -383,6 +371,11 @@
}
}while (writeCount2<5);
}
+ } else {
+ BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class);
+ BasCrnp basCrnp = basCrnpService.selectById(slave.getId());
+ basCrnp.setModiTime(new Date());
+ basCrnpService.updateById(basCrnp);
}
try {
@@ -408,7 +401,7 @@
bean.insert(basCrnOpt);
} catch (Exception ignore) {}
- if (result != null && result.IsSuccess) {
+ if (result.IsSuccess) {
this.readStatus();
News.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)));
@@ -419,11 +412,6 @@
return false;
}
}
-
- public void requestStop() {
- isRunning = false;
- }
-
@Override
public void close() {
--
Gitblit v1.9.1