From 3d2a161ca245484a3162b439cadf348b2f3a75fa Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期三, 23 四月 2025 15:06:37 +0800 Subject: [PATCH] 初始化 --- src/main/java/com/zy/core/thread/MelsecCrnThread.java | 39 +++++++++++++++++++++++---------------- 1 files changed, 23 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/zy/core/thread/MelsecCrnThread.java b/src/main/java/com/zy/core/thread/MelsecCrnThread.java index 3df19a6..84ed59e 100644 --- a/src/main/java/com/zy/core/thread/MelsecCrnThread.java +++ b/src/main/java/com/zy/core/thread/MelsecCrnThread.java @@ -24,7 +24,6 @@ import com.zy.core.model.protocol.CrnProtocol; import lombok.Data; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import java.text.MessageFormat; import java.util.Date; @@ -42,6 +41,11 @@ private CrnProtocol crnProtocol; private short heartBeatVal = 1; private boolean resetFlag = false; + + /** + * 鍫嗗灈鏈烘槸鍚﹀湪鍥炲師鐐硅繍鍔ㄤ腑鏍囪 + */ + private boolean backHpFlag = false; public MelsecCrnThread(CrnSlave slave) { this.slave = slave; @@ -120,13 +124,13 @@ crnProtocol.setWalkPos((short)0); crnProtocol.setLoaded((short)0); crnProtocol.setAlarm((short)0); - crnProtocol.setXSpeed(0F); - crnProtocol.setYSpeed(0F); - crnProtocol.setZSpeed(0F); - crnProtocol.setXDistance(0F); - crnProtocol.setYDistance(0F); - crnProtocol.setXDuration(0F); - crnProtocol.setYDuration(0F); + crnProtocol.setxSpeed((short)0); + crnProtocol.setySpeed((short)0); + crnProtocol.setzSpeed((short)0); + crnProtocol.setxDistance((short)0); + crnProtocol.setyDistance((short)0); + crnProtocol.setxDuration((short)0); + crnProtocol.setyDuration((short)0); } @Override @@ -177,13 +181,13 @@ crnProtocol.setTemp2(melsecMcNet.getByteTransform().TransInt16(result.Content, 22)); crnProtocol.setTemp3(melsecMcNet.getByteTransform().TransInt16(result.Content, 24)); crnProtocol.setTemp4(melsecMcNet.getByteTransform().TransInt16(result.Content, 26)); - crnProtocol.setXSpeed(melsecMcNet.getByteTransform().TransSingle(result.Content, 28)); - crnProtocol.setYSpeed(melsecMcNet.getByteTransform().TransSingle(result.Content, 32)); - crnProtocol.setZSpeed(melsecMcNet.getByteTransform().TransSingle(result.Content, 36)); - crnProtocol.setXDistance(melsecMcNet.getByteTransform().TransSingle(result.Content, 40)); - crnProtocol.setYDistance(melsecMcNet.getByteTransform().TransSingle(result.Content, 44)); - crnProtocol.setXDuration(melsecMcNet.getByteTransform().TransSingle(result.Content, 48)); - crnProtocol.setYDuration(melsecMcNet.getByteTransform().TransSingle(result.Content, 52)); + crnProtocol.setxSpeed(melsecMcNet.getByteTransform().TransInt16(result.Content, 28)); + crnProtocol.setySpeed(melsecMcNet.getByteTransform().TransInt16(result.Content, 32)); + crnProtocol.setzSpeed(melsecMcNet.getByteTransform().TransInt16(result.Content, 36)); + crnProtocol.setxDistance(melsecMcNet.getByteTransform().TransInt16(result.Content, 40)); + crnProtocol.setyDistance(melsecMcNet.getByteTransform().TransInt16(result.Content, 44)); + crnProtocol.setxDuration(melsecMcNet.getByteTransform().TransInt16(result.Content, 48)); + crnProtocol.setyDuration(melsecMcNet.getByteTransform().TransInt16(result.Content, 52)); OutputQueue.CRN.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), slave.getId())); @@ -191,6 +195,9 @@ if (crnProtocol.getStatusType().equals(CrnStatusType.WAITING)) { log.error("-------------------------------------------绗竴姝ャ�乕鍫嗗灈鏈哄彿锛歿}][宸ヤ綔鍙凤細{}]==>> 鐘舵�佷负90锛岀瓑寰呯‘璁わ紒锛�",slave.getId(),crnProtocol.getTaskNo()); if (resetFlag) { + if(crnProtocol.getTaskNo()==9999){ + backHpFlag = false; + } CrnCommand crnCommand = new CrnCommand(); crnCommand.setAckFinish((short)1); if (write(crnCommand)) { @@ -348,7 +355,7 @@ } OperateResult write = melsecMcNet.Write("D10", heartBeatVal); if (!write.IsSuccess) { - log.error("杈撻�佺嚎plc缂栧彿={} 蹇冭烦澶辫触", slave.getId()); + log.error("鍫嗗灈鏈簆lc蹇冭烦閫氳澶辫触 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort()); } } -- Gitblit v1.9.1