From 7f16849cfa9362d32eaaf323c71350351f13b689 Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期四, 11 九月 2025 08:51:15 +0800
Subject: [PATCH] 添加看板库位库存接口
---
JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java | 29 +++++++++++++++++------------
1 files changed, 17 insertions(+), 12 deletions(-)
diff --git a/JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java b/JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java
index 335a30a..9ce74b3 100644
--- a/JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java
+++ b/JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java
@@ -2,23 +2,18 @@
import com.mes.tools.HexConversion;
import com.mes.utils.HexUtil;
-import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
-import java.net.UnknownHostException;
-import java.text.SimpleDateFormat;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
-import static com.mes.tools.HexConversion.*;
+import static com.mes.tools.HexConversion.intToBytesDesc;
@Component
@Slf4j
@@ -43,12 +38,19 @@
}
}
//杩炴帴
- public void connect(){
+ public boolean connect() {
try {
- this.socket=new Socket(Ip,Port);
- this.socket.setSoTimeout(1000);
- }catch (Exception e) {
- log.info("The IP address of the host cannot be determined:{}",e.getMessage());
+ if (this.socket != null && !this.socket.isClosed()) {
+ this.socket.close();
+ }
+ this.socket = new Socket(Ip, Port);
+ this.socket.setSoTimeout(300);
+ log.info("PLC杩炴帴鎴愬姛");
+ return true;
+ } catch (Exception e) {
+ log.error("PLC杩炴帴澶辫触", e);
+ this.socket = null;
+ return false;
}
}
//鍏抽棴杩炴帴
@@ -102,7 +104,10 @@
bit[0]=Byte.parseByte(fontBitString[plcParameter.getAddressLength()]);
plcParameter.setReadByte(bit);
}else{
- plcParameter.setReadByte(Arrays.copyOfRange(content,plcParameter.getAddressStart(),(plcParameter.getAddressStart()+plcParameter.getAddressLength())));
+ String plcAddressBegin = plcAgreement.plcAddressBegin;
+ Integer addressIndex = plcParameter.getAddressStart();
+ int address = addressIndex -HexUtil.hexToInt(plcAddressBegin)*2;
+ plcParameter.setReadByte(Arrays.copyOfRange(content,address,(address+plcParameter.getAddressLength())));
}
}
return true;
--
Gitblit v1.8.0