From b4ff04d7dd22f0e48bf386cd422e885aef08fed7 Mon Sep 17 00:00:00 2001 From: ZengTao <2773468879@qq.com> Date: 星期四, 22 五月 2025 15:03:10 +0800 Subject: [PATCH] OPC通讯修改为S7通讯 --- hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java | 46 +++++++++++++++++++++++++++++++++++----------- 1 files changed, 35 insertions(+), 11 deletions(-) diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java index e1b9d7e..579f3b1 100644 --- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java +++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/OpcNGTemperingTask.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.github.xingshuangs.iot.protocol.s7.serializer.S7Serializer; import com.kangaroohy.milo.model.ReadWriteEntity; import com.kangaroohy.milo.service.MiloService; import com.mes.common.config.Const; @@ -9,11 +10,13 @@ import com.mes.pp.entity.OptimizeHeatLayout; import com.mes.pp.service.OptimizeHeatDetailService; import com.mes.pp.service.OptimizeHeatLayoutService; +import com.mes.s7.entity.S7DataGHOne; import com.mes.temperingglass.entity.TemperingGlassInfo; import com.mes.temperingglass.service.TemperingGlassInfoService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @@ -37,6 +40,10 @@ @Autowired private OptimizeHeatDetailService optimizeHeatDetailService; + @Autowired + @Qualifier("s7SerializerGHOne") + private S7Serializer s7SerializerGHOne; + /** * 鎽嗙墖鍙拌姹傝繘鐗囬�昏緫澶勭悊 * fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級 @@ -44,23 +51,37 @@ */ @Scheduled(fixedDelay = 1000) public void requestTemperingTask() throws Exception { - ReadWriteEntity requestInTempering = miloService.readFromOpcUa("GH1S7.GH1S7.requestInTempering");//璇锋眰杩涚墖 - ReadWriteEntity requestTemperingId = miloService.readFromOpcUa("GH1S7.GH1S7.requestTemperingId");//璇锋眰杩涚墖 鐐夊彿ID - Integer request = Integer.parseInt(requestInTempering.getValue().toString()); - Integer id = Integer.parseInt(requestTemperingId.getValue().toString()); + S7DataGHOne s7DataGHOne=s7SerializerGHOne.read(S7DataGHOne.class); +// ReadWriteEntity requestInTempering = miloService.readFromOpcUa("GH1S7.GH1S7.requestInTempering");//璇锋眰杩涚墖 +// ReadWriteEntity requestTemperingId = miloService.readFromOpcUa("GH1S7.GH1S7.requestTemperingId");//璇锋眰杩涚墖 鐐夊彿ID +// Integer request = Integer.parseInt(requestInTempering.getValue().toString()); +// Integer id = Integer.parseInt(requestTemperingId.getValue().toString()); + Integer request = (int)s7DataGHOne.getRequestInTempering(); + Integer id = (int)s7DataGHOne.getRequestTemperingId(); if (request == 0) { - miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 0));//鍏佽閫佺墖娓呴浂 +// miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 0));//鍏佽閫佺墖娓呴浂 + s7SerializerGHOne.write( + S7DataGHOne.builder().responseInTempering((short)0).build() + ); } else { if (id == 0){ log.info("鐐夊彿涓嶈兘涓�0"); return; } - ReadWriteEntity placedNumber = miloService.readFromOpcUa("GH1S7.GH1S7.placedNumber");//宸叉憜鐗囨暟閲� +// ReadWriteEntity placedNumber = miloService.readFromOpcUa("GH1S7.GH1S7.placedNumber");//宸叉憜鐗囨暟閲� + String placedNumber = s7DataGHOne.getPlacedNumber().toString();//宸叉憜鐗囨暟閲� List<TemperingGlassInfo> glassList = temperingAgoService.selectGlassInfoById(id); - if (Integer.parseInt(placedNumber.getValue().toString()) == glassList.size()) { - miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 1));//鍐欏叆鍏佽閫佺墖 +// if (Integer.parseInt(placedNumber.getValue().toString()) == glassList.size()) { + if (Integer.parseInt(placedNumber) == glassList.size()) { +// miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 1));//鍐欏叆鍏佽閫佺墖 + s7SerializerGHOne.write( + S7DataGHOne.builder().responseInTempering((short)1).build() + ); } else { - miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 2));//涓嶆弧瓒宠繘鐐夋潯浠� +// miloService.writeToOpcUa(generateReadWriteEntity("GH1S7.GH1S7.responseInTempering", 2));//涓嶆弧瓒宠繘鐐夋潯浠� + s7SerializerGHOne.write( + S7DataGHOne.builder().responseInTempering((short)2).build() + ); } } } @@ -72,8 +93,11 @@ */ @Scheduled(fixedDelay = 1000) public void loadTemperingTask() throws Exception { - ReadWriteEntity loadTemperingId = miloService.readFromOpcUa("GH1S7.GH1S7.loadTemperingId");//杩涚墖瀹屾垚 鐐夊彿ID - getNewTemperingID(Integer.parseInt(loadTemperingId.getValue().toString()));//杩涚墖瀹屾垚 涓嬪彂鍙傛暟 + S7DataGHOne s7DataGHOne=s7SerializerGHOne.read(S7DataGHOne.class); +// ReadWriteEntity loadTemperingId = miloService.readFromOpcUa("GH1S7.GH1S7.loadTemperingId");//杩涚墖瀹屾垚 鐐夊彿ID +// getNewTemperingID(Integer.parseInt(loadTemperingId.getValue().toString()));//杩涚墖瀹屾垚 涓嬪彂鍙傛暟 + String loadTemperingId=s7DataGHOne.getLoadTemperingId().toString();//杩涚墖瀹屾垚 鐐夊彿ID + getNewTemperingID(Integer.parseInt(loadTemperingId));//杩涚墖瀹屾垚 涓嬪彂鍙傛暟 } /** * 鏇存柊閽㈠寲灏忕墖琛ㄥ唴鐨勭幓鐠冪姸鎬� -- Gitblit v1.8.0