From 1577c2e2874c1fad9ac684356bf0e568c3015045 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期三, 27 十一月 2024 09:46:15 +0800 Subject: [PATCH] 1、大理片笼新增进笼规则,计算本工程下所有玻璃的虚拟格子信息,按照虚拟格子,匹配笼内的实际格子,进笼之后查看格子是否有到齐的,执行调度任务 2、卧理修改任务执行顺序,移除捕获异常操作 3、不覆盖原有逻辑,新增opc任务,避免任务重复执行报错 --- 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