From 1eee1c2af23940a6c2af5b519b65bdd1e7b4ac49 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期二, 02 九月 2025 14:17:29 +0800
Subject: [PATCH] 去除多于代码,取消许可证校验
---
src/main/java/com/zy/core/thread/RgvThread.java | 49 +++++++++++++++++++++++++++++++++++++++----------
1 files changed, 39 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index 5323b82..0e23b35 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -8,15 +8,14 @@
import com.core.common.DateUtils;
import com.core.common.SpringUtils;
import com.zy.asrs.entity.BasRgv;
+import com.zy.asrs.entity.BasRgvErrLog;
import com.zy.asrs.entity.BasRgvOpt;
+import com.zy.asrs.service.BasRgvErrLogService;
import com.zy.asrs.service.BasRgvOptService;
import com.zy.asrs.service.BasRgvService;
-import com.zy.asrs.utils.NumUtils;
-import com.zy.asrs.utils.RouteUtils;
import com.zy.core.ThreadHandler;
import com.zy.core.cache.MessageQueue;
import com.zy.core.cache.OutputQueue;
-import com.zy.core.enums.RgvStatusType;
import com.zy.core.enums.RgvTaskModeType;
import com.zy.core.enums.SlaveType;
import com.zy.core.model.RgvSlave;
@@ -27,7 +26,10 @@
import lombok.extern.slf4j.Slf4j;
import java.text.MessageFormat;
+import java.util.ArrayList;
import java.util.Date;
+import java.util.HashSet;
+import java.util.List;
/**
* RGV绾跨▼
@@ -48,6 +50,7 @@
* 宸ヤ綅2澶嶄綅淇″彿
*/
private boolean resetFlag2 = false;
+ private boolean alarmChangeSign = false;
public RgvThread(RgvSlave slave) {
this.slave = slave;
@@ -105,6 +108,7 @@
if (null == rgvProtocol) {
rgvProtocol = new RgvProtocol();
}
+ rgvProtocol.setRgvNo(slave.getId());
rgvProtocol.setMode((short) -1);
rgvProtocol.setStatus((short)-1);
rgvProtocol.setTaskNo1((short)0);
@@ -147,7 +151,9 @@
private void readStatus(){
try {
OperateResultExOne<byte[]> result = siemensNet.Read("DB100.0", (short) 20);
- OperateResultExOne<byte[]> resultV = siemensNet.Read("DB20.16", (short) 2);
+// OperateResultExOne<byte[]> resultV = siemensNet.Read("DB20.16", (short) 2);
+// OperateResultExOne<byte[]> resultE = siemensNet.Read("DB20.26", (short) 2);
+ OperateResultExOne<byte[]> resultError = siemensNet.Read("DB13.0", (short) 13);
if (result.IsSuccess) {
if (null == rgvProtocol) {
rgvProtocol = new RgvProtocol();
@@ -162,8 +168,23 @@
rgvProtocol.setStatus(siemensNet.getByteTransform().TransInt16(result.Content, 12));
rgvProtocol.setxSpeed(siemensNet.getByteTransform().TransInt16(result.Content, 14));
rgvProtocol.setRgvPos(siemensNet.getByteTransform().TransUInt32(result.Content, 16));
- rgvProtocol.setInstantaneousSpeed(Double.valueOf(siemensNet.getByteTransform().TransInt16(resultV.Content, 0)));
+// rgvProtocol.setInstantaneousSpeed((double) siemensNet.getByteTransform().TransInt16(resultV.Content, 0));
+// rgvProtocol.setEndStaM(siemensNet.getByteTransform().TransInt16(resultE.Content, 0));
// rgvProtocol.setRgvPos((long)NumUtils.GetRandomIntInRange(1737000));
+
+ boolean[] statusAlarmList = siemensNet.getByteTransform().TransBool(resultError.Content, 0, 13);
+ int alarmCount = 0;
+ List<Integer> alarmList = new ArrayList<>();
+ for (boolean alarmSign : statusAlarmList){
+ alarmCount++;
+ if (alarmSign){
+ alarmList.add(alarmCount);
+ }
+ }
+ alarmChangeSign = new HashSet<>(alarmList).equals(new HashSet<>(rgvProtocol.getAlarmList()));
+ rgvProtocol.setAlarmList(alarmList);
+
+
OutputQueue.RGV.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId()));
try {
@@ -172,9 +193,18 @@
BasRgv basRgv = new BasRgv();
basRgv.setRgvNo(slave.getId());
basRgv.setRgvSts((int)rgvProtocol.getMode());
- basRgv.setLoaded2(rgvProtocol.getLoaded2().intValue());
+// basRgv.setLoaded2(rgvProtocol.getLoaded2().intValue());
if (!basRgvService.updateById(rgvProtocol.toSqlModel(basRgv))){
log.error("RGV plc鏁版嵁搴撴洿鏂板け璐� ===>> [id:{}] [ip:{}] [port:{}] [rack:{}] [slot:{}]", slave.getId(), slave.getIp(), slave.getPort(), slave.getRack(), slave.getSlot());
+ }
+ try{
+ if (!alarmChangeSign && !alarmList.isEmpty()){
+ BasRgvErrLogService basRgvErrLogService = SpringUtils.getBean(BasRgvErrLogService.class);
+ BasRgvErrLog basRgvErrLog = new BasRgvErrLog(rgvProtocol.getAlarmList(), rgvProtocol.getTaskNo1(), rgvProtocol.getRgvNo());
+ basRgvErrLogService.insert(basRgvErrLog);
+ }
+ } catch (Exception e){
+ log.error("RGV寮傚父淇℃伅淇濆瓨澶辫触锛侊紒");
}
} catch (Exception ignore) {
@@ -214,9 +244,7 @@
array[4] = command.getTaskNo1();
OperateResult result = siemensNet.Write("DB24.0", array);
-
if (command.getAckFinish1().equals((short)0)) {
- Thread.sleep(100L);
result = siemensNet.Write("DB24.10.0", true);
} else {
siemensNet.Write("DB24.10.1", true);
@@ -243,7 +271,7 @@
} catch (Exception ignore) {}
if (result != null && result.IsSuccess) {
- Thread.sleep(200);
+ Thread.sleep(400);
this.readStatus();
log.info("RGV 宸ヤ綅1鍛戒护涓嬪彂[id:{}] >>>>> {}", slave.getId(), JSON.toJSONString(command));
OutputQueue.RGV.offer(MessageFormat.format("銆恵0}銆慬id:{1}] >>>>> 宸ヤ綅1鍛戒护涓嬪彂锛� {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSONString(command)));
@@ -277,7 +305,8 @@
Thread.sleep(100L);
result = siemensNet.Write("DB24.10.0", true);
} else {
- siemensNet.Write("DB24.10.1", true);
+ result = siemensNet.Write("DB24.10.1", true);
+ log.info("浠诲姟瀹屾垚鍚庡浣嶆竻闄gv淇℃伅锛氬皬杞﹀彿锛歿}锛宎ck:{}", command.getRgvNo(),command.getAckFinish1());
}
try {
--
Gitblit v1.9.1