From 2f367eea0033c59e3739c6821e86b3a34af49ebb Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期一, 03 六月 2024 08:27:42 +0800 Subject: [PATCH] fixbug:玻璃种类过多导致机系统异常 --- hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/S7object.java | 29 +++++++++++++++++++++++++++-- 1 files changed, 27 insertions(+), 2 deletions(-) diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/S7object.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/S7object.java index 2929123..f63bc63 100644 --- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/S7object.java +++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/common/S7object.java @@ -1,24 +1,32 @@ package com.mes.common; import com.github.xingshuangs.iot.protocol.s7.enums.EPlcType; +import com.mes.device.PlcParameterObject; +import com.mes.tools.InitUtil; import com.mes.tools.S7control; + /** * @Author : zhoush * @Date: 2024/4/9 15:13 * @Description: */ -public class S7object { +public class S7object extends Thread { public S7control plccontrol; // PLC閫氳绫诲疄渚� private EPlcType plcType = EPlcType.S1200; // 瑗块棬瀛怭LC绫诲瀷 - private String ip = "192.168.10.1"; // plc ip鍦板潃 + private String ip = "192.168.10.11"; // plc ip鍦板潃 private int port = 102; // plc 绔彛鍙� + + public PlcParameterObject PlcMesObject; private static volatile S7object instance = null; private S7object() { if (plccontrol == null) { plccontrol = new S7control(plcType, ip, port, 0, 0); + String PlcLoadGlass = System.getProperty("user.dir") + "/JsonFile/PlcCacheGlass.json"; +// String PlcLoadGlass=S7object.class.getResource("/JsonFile/PlcCacheGlass.json").getPath(); + PlcMesObject = InitUtil.initword(PlcLoadGlass); } } @@ -33,4 +41,21 @@ } return instance; } + + @Override + public void run() { + while (this != null) { + try { + Thread.sleep(100); + + } catch (InterruptedException e) { + e.printStackTrace(); + } + + byte[] getplcvlues = plccontrol.readByte(PlcMesObject.getPlcAddressBegin(), PlcMesObject.getPlcAddressLength()); + if (getplcvlues != null) { + PlcMesObject.setPlcParameterList(getplcvlues); + } + } + } } -- Gitblit v1.8.0