From 4453cdecbc6e7a925ae76e3223418654f1cf0b18 Mon Sep 17 00:00:00 2001 From: taisheng <taisheng@qq.com> Date: 星期二, 22 四月 2025 16:01:15 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java | 41 ++++++++++++++++++++++++++++------------- 1 files changed, 28 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java b/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java index 29d5f64..3ee487a 100644 --- a/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java +++ b/src/main/java/com/zy/core/thread/impl/LfdZyForkLiftSlaveThread.java @@ -30,10 +30,7 @@ import lombok.extern.slf4j.Slf4j; import java.text.MessageFormat; -import java.util.ArrayList; -import java.util.Base64; -import java.util.Date; -import java.util.List; +import java.util.*; @Slf4j @SuppressWarnings("all") @@ -90,7 +87,7 @@ } read(); - Thread.sleep(200); + Thread.sleep(300); execute(); } catch (Exception e) { e.printStackTrace(); @@ -135,10 +132,6 @@ try { //鑾峰彇鎻愬崌鏈烘暟鎹� OperateResultExOne<byte[]> result1 = this.masterThread.read(this.slave.getId(), "status"); - if (result1 == null) { - OutputQueue.FORKLIFT.offer(MessageFormat.format("銆恵0}銆憑1}璇诲彇璐у弶鎻愬崌鏈虹姸鎬佷俊鎭け璐�", DateUtils.convert(new Date()), slave.getId())); - } - SiemensS7Net siemensS7Net = this.masterThread.getSiemensS7Net(); if (result1.IsSuccess) { if (null == forkLiftProtocol) { @@ -175,7 +168,7 @@ OutputQueue.FORKLIFT.offer(MessageFormat.format("銆恵0}銆憑1}璇诲彇璐у弶鎻愬崌鏈虹姸鎬佷俊鎭け璐�", DateUtils.convert(new Date()), slave.getId())); } - OperateResultExOne<byte[]> result2 = this.masterThread.read(this.slave.getId(), "staStatus"); + OperateResultExOne<byte[]> result2 = this.masterThread.read(this.slave.getId(), "staStatusTray"); if (result2.IsSuccess) { for (int i = 0; i < this.slave.getSta().size(); i++) { ForkLiftSlave.Sta sta = this.slave.getSta().get(i); @@ -183,10 +176,23 @@ continue; } + short val = siemensS7Net.getByteTransform().TransInt16(result2.Content, i * 2); ForkLiftStaProtocol forkLiftStaProtocol = forkLiftStaProtocols.get(i); - boolean[] status1 = siemensS7Net.getByteTransform().TransBool(result2.Content, i * 2, 2); - forkLiftStaProtocol.setHasTray(status1[0]); - forkLiftStaProtocol.setHasCar(status1[1]); + forkLiftStaProtocol.setHasTray(val == 1); + } + } + + OperateResultExOne<byte[]> result3 = this.masterThread.read(this.slave.getId(), "staStatusCar"); + if (result3.IsSuccess) { + for (int i = 0; i < this.slave.getSta().size(); i++) { + ForkLiftSlave.Sta sta = this.slave.getSta().get(i); + if (forkLiftStaProtocols.isEmpty()) { + continue; + } + + short val = siemensS7Net.getByteTransform().TransInt16(result3.Content, i * 2); + ForkLiftStaProtocol forkLiftStaProtocol = forkLiftStaProtocols.get(i); + forkLiftStaProtocol.setHasCar(val == 1); } } @@ -202,6 +208,15 @@ deviceDataLog.setCreateTime(new Date()); deviceDataLogService.insert(deviceDataLog); + //淇濆瓨鏁版嵁璁板綍 + DeviceDataLog deviceDataLog2 = new DeviceDataLog(); + deviceDataLog2.setOriginData(Base64.getEncoder().encodeToString(result2.Content)); + deviceDataLog2.setWcsData(JSON.toJSONString(forkLiftStaProtocols)); + deviceDataLog2.setType("forkLiftStaProtocols"); + deviceDataLog2.setDeviceNo(forkLiftProtocol.getLiftNo()); + deviceDataLog2.setCreateTime(new Date()); + deviceDataLogService.insert(deviceDataLog2); + //鏇存柊閲囬泦鏃堕棿 forkLiftProtocol.setDeviceDataLog(System.currentTimeMillis()); } -- Gitblit v1.9.1