From 10373a585e3d1d04a7eddb2e3297eeeb2c729e71 Mon Sep 17 00:00:00 2001
From: jiazx0107@163.com <jiazx0107@163.com>
Date: 星期一, 28 八月 2023 09:29:51 +0800
Subject: [PATCH] 更新MODBUS-TCP协议,调整配置
---
/dev/null | 208 -----------------------------------------
igds-protocol-modbus/src/main/java/com/ld/igds/modbus/service/HModbusService.java | 1
igds-protocol-modbus/pom.xml | 41 +++++---
igds-web/pom.xml | 3
igds-web/src/main/resources/verb-conf.properties | 4
5 files changed, 30 insertions(+), 227 deletions(-)
diff --git a/igds-protocol-modbus/pom.xml b/igds-protocol-modbus/pom.xml
index 708d3c0..150f570 100644
--- a/igds-protocol-modbus/pom.xml
+++ b/igds-protocol-modbus/pom.xml
@@ -64,21 +64,32 @@
</dependencies>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.8</source>
- <target>1.8</target>
- <compilerArguments>
- <extdirs>src\main\webapp\WEB-INF\lib</extdirs>
- </compilerArguments>
- </configuration>
- </plugin>
- </plugins>
- </build>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>${java.version}</source>
+ <target>${java.version}</target>
+ </configuration>
+ </plugin>
+ </plugins>
+
+ <resources>
+ <resource>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.js</include>
+ </includes>
+ <filtering>true</filtering>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ </resource>
+ </resources>
+ </build>
<!-- <repositories>-->
diff --git a/igds-protocol-modbus/src/main/java/com/ld/igds/modbus/service/HModbusService.java b/igds-protocol-modbus/src/main/java/com/ld/igds/modbus/service/HModbusService.java
index 216aad2..7652715 100644
--- a/igds-protocol-modbus/src/main/java/com/ld/igds/modbus/service/HModbusService.java
+++ b/igds-protocol-modbus/src/main/java/com/ld/igds/modbus/service/HModbusService.java
@@ -15,7 +15,6 @@
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
-import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
diff --git a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusConfig.java b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusConfig.java
deleted file mode 100644
index 59d269d..0000000
--- a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusConfig.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package com.ld.igds.protocol.modbus;
-
-import com.serotonin.modbus4j.ModbusFactory;
-import com.serotonin.modbus4j.ModbusMaster;
-import com.serotonin.modbus4j.exception.ModbusInitException;
-import com.serotonin.modbus4j.ip.IpParameters;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Import;
-
-import java.util.HashMap;
-
-@Configuration
-@Import(com.serotonin.modbus4j.ModbusFactory.class)
-public class ModbusConfig {
-
-
- @Bean
- public HashMap<String, ModbusMaster> contextModbusMap() {
- return new HashMap<>();
- }
-
- @Autowired
- private ModbusFactory modbusFactory;
-
- @Autowired
- @Qualifier("contextModbusMap")
- private HashMap<String, ModbusMaster> masterMap;
-
- /**
- * @Description: 閫氳繃ip鑾峰彇瀵瑰簲鐨刴odbus杩炴帴鍣�
- */
- public ModbusMaster getMaster(String ip, int port) {
- ModbusMaster modbusMaster = masterMap.get(ip);
- if (modbusMaster == null || !modbusMaster.isConnected()) {
- setMaster(ip, port);
- modbusMaster = masterMap.get(ip);
- }
- return modbusMaster;
-
- }
-
- /**
- * @Description: 璁剧疆ip瀵瑰簲鐨刴odbus杩炴帴鍣�
- */
- private void setMaster(String ip, Integer port) {
- ModbusMaster master;
- IpParameters params = new IpParameters();
- params.setHost(ip);
- params.setPort(port);
- //璁剧疆涓簍rue锛屼細瀵艰嚧TimeoutException: request=com.serotonin.modbus4j.ip.encap.EncapMessageRequest@774dfba5",
- //params.setEncapsulated(true);
- master = modbusFactory.createTcpMaster(params, false);// TCP 鍗忚
- try {
- //璁剧疆瓒呮椂鏃堕棿
- master.setTimeout(2 * 1000);
- //璁剧疆閲嶈繛娆℃暟
- master.setRetries(3);
- //鍒濆鍖�
- master.init();
- } catch (ModbusInitException e) {
- e.printStackTrace();
- }
- masterMap.put(ip, master);
- }
-}
\ No newline at end of file
diff --git a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil.java b/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil.java
deleted file mode 100644
index 416e7cb..0000000
--- a/igds-protocol-modbus/src/main/java/com/ld/igds/protocol/modbus/ModbusUtil.java
+++ /dev/null
@@ -1,208 +0,0 @@
-package com.ld.igds.protocol.modbus;
-
-import com.serotonin.modbus4j.BatchRead;
-import com.serotonin.modbus4j.BatchResults;
-import com.serotonin.modbus4j.ModbusMaster;
-import com.serotonin.modbus4j.code.DataType;
-import com.serotonin.modbus4j.exception.ModbusInitException;
-import com.serotonin.modbus4j.exception.ModbusTransportException;
-import com.serotonin.modbus4j.locator.BaseLocator;
-import com.serotonin.modbus4j.msg.ReadCoilsRequest;
-import com.serotonin.modbus4j.msg.ReadCoilsResponse;
-import com.serotonin.modbus4j.msg.ReadDiscreteInputsRequest;
-import com.serotonin.modbus4j.msg.ReadDiscreteInputsResponse;
-import com.serotonin.modbus4j.msg.ReadHoldingRegistersRequest;
-import com.serotonin.modbus4j.msg.ReadHoldingRegistersResponse;
-import com.serotonin.modbus4j.msg.ReadInputRegistersRequest;
-import com.serotonin.modbus4j.msg.ReadInputRegistersResponse;
-import com.serotonin.modbus4j.msg.WriteCoilRequest;
-import com.serotonin.modbus4j.msg.WriteCoilResponse;
-import com.serotonin.modbus4j.msg.WriteCoilsRequest;
-import com.serotonin.modbus4j.msg.WriteCoilsResponse;
-import com.serotonin.modbus4j.msg.WriteRegisterRequest;
-import com.serotonin.modbus4j.msg.WriteRegisterResponse;
-import com.serotonin.modbus4j.msg.WriteRegistersRequest;
-import com.serotonin.modbus4j.msg.WriteRegistersResponse;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-/**
- * @Desc: 宸ュ叿绫�
- * @author: Andy
- * @update-time: 2023/8/11
- */
-@Slf4j
-@Component
-public class ModbusUtil {
-
- //浠庢満榛樿鍊�
- private Integer slaveId = 1;
-
- @Autowired
- private ModbusConfig modbusConfig;
-
-
- /**
- * 璇荤嚎鍦�--01
- *
- * @param ip
- * @param port
- * @param offset
- * @param numberOfRegister
- */
- public boolean[] readStatus01(String ip, int port, int offset, int numberOfRegister) throws ModbusTransportException {
-
- ModbusMaster master = modbusConfig.getMaster(ip, port);
- ReadCoilsRequest request = new ReadCoilsRequest(slaveId, offset, numberOfRegister);
- ReadCoilsResponse response = (ReadCoilsResponse) master.send(request);
- boolean[] booleans = response.getBooleanData();
-
- return valueRegroup(numberOfRegister, booleans);
- }
-
- /**
- * @Description: 02H-璇荤鏁h緭鍏ラ噺
- * @Param: [ip, offset, numberOfRegister]
- * @return: boolean[]
- * @throws:
- */
- public boolean[] readStatus02(String ip, int port, int offset, int numberOfRegister) throws ModbusTransportException {
- ModbusMaster master = modbusConfig.getMaster(ip, port);
- ReadDiscreteInputsRequest request = new ReadDiscreteInputsRequest(slaveId, offset, numberOfRegister);
- ReadDiscreteInputsResponse response = (ReadDiscreteInputsResponse) master.send(request);
- boolean[] booleans = response.getBooleanData();
- return valueRegroup(numberOfRegister, booleans);
- }
-
- /**
- * @Description: 03H-璇讳繚鎸佸瘎瀛樺櫒
- * @Param: [ip, offset, numberOfRegister]
- * @return: short[]
- * @throws:
- */
- public short[] readStatus03(String ip, int port, int offset, int numberOfRegister) throws ModbusTransportException {
-
- ModbusMaster master = modbusConfig.getMaster(ip, port);
- ReadHoldingRegistersRequest request = new ReadHoldingRegistersRequest(slaveId, offset, numberOfRegister);
- ReadHoldingRegistersResponse response = (ReadHoldingRegistersResponse) master.send(request);
- return response.getShortData();
- }
-
- /**
- * @Description: 04H-璇昏緭鍏ュ瘎瀛樺櫒
- * @Param: [ip, offset, numberOfRegister]
- * @return: short[]
- * @throws:
- */
- public short[] readStatus04(String ip, int port, int offset, int numberOfRegister) throws ModbusTransportException {
- ModbusMaster master = modbusConfig.getMaster(ip, port);
- ReadInputRegistersRequest request = new ReadInputRegistersRequest(slaveId, offset, numberOfRegister);
- ReadInputRegistersResponse response = (ReadInputRegistersResponse) master.send(request);
- return response.getShortData();
- }
-
-
- public BatchResults<Integer> readBatch(String ip, int port) throws Exception {
- ModbusMaster master = modbusConfig.getMaster(ip, port);
-
- if (null == master) return null;
-
- return readBatch(master);
- }
-
- /**
- * 鎵归噺璇诲彇澶氫釜
- *
- * @param master
- * @throws ModbusTransportException
- */
- public BatchResults<Integer> readBatch(ModbusMaster master) throws Exception {
- BatchRead<Integer> batch = new BatchRead<>();
- batch.addLocator(0, BaseLocator.holdingRegister(1, 1, DataType.TWO_BYTE_INT_SIGNED));
- batch.addLocator(1, BaseLocator.inputStatus(1, 0));
- batch.setContiguousRequests(true);
- BatchResults<Integer> results = master.send(batch);
- log.info("batchRead:" + results.getValue(0));
- log.info("batchRead:" + results.getValue(1));
-
- return results;
- }
-
- /**
- * @Description: 鍐欏崟涓紙绾垮湀锛夊紑鍏抽噺鏁版嵁锛岀浉褰撲簬鍔熻兘鐮侊細05H-鍐欏崟涓嚎鍦�
- * @Param: [ip, writeOffset, writeValue]
- * @return: boolean
- * @throws:
- */
- public boolean writeValue05(String ip, int port, int writeOffset, boolean writeValue) throws ModbusTransportException {
-
- ModbusMaster tcpMaster = modbusConfig.getMaster(ip, port);
- WriteCoilRequest request = new WriteCoilRequest(slaveId, writeOffset, writeValue);
- WriteCoilResponse response = (WriteCoilResponse) tcpMaster.send(request);
- return !response.isException();
- }
-
- /**
- * @Description: 鍐欏涓紑鍏抽噺鏁版嵁锛堢嚎鍦堬級锛岀浉褰撲簬鍔熻兘鐮侊細0FH-鍐欏涓嚎鍦�
- * @Param: [ip, startOffset, data]
- * @return: boolean
- * @throws:
- */
- public boolean writeValues15(String ip, int port, int startOffset, boolean[] data) throws ModbusTransportException {
-
- ModbusMaster tcpMaster = modbusConfig.getMaster(ip, port);
- WriteCoilsRequest request = new WriteCoilsRequest(slaveId, startOffset, data);
- WriteCoilsResponse response = (WriteCoilsResponse) tcpMaster.send(request);
- return !response.isException();
-
- }
-
- /**
- * @Description: 鍐欏崟涓繚鎸佸瘎瀛樺櫒锛岀浉褰撲簬鍔熻兘鐮侊細06H-鍐欏崟涓繚鎸佸瘎瀛樺櫒
- * @Param: [ip, writeOffset, writeValue]
- * @return: boolean
- * @throws:
- */
- public boolean writeValue06(String ip, int port, int writeOffset, short writeValue) throws ModbusTransportException, ModbusInitException {
-
- ModbusMaster tcpMaster = modbusConfig.getMaster(ip, port);
- WriteRegisterRequest request = new WriteRegisterRequest(slaveId, writeOffset, writeValue);
- WriteRegisterResponse response = (WriteRegisterResponse) tcpMaster.send(request);
- return !response.isException();
-
- }
-
- /**
- * @Description: 鍐欏涓繚鎸佸瘎瀛樺櫒锛岀浉褰撲簬鍔熻兘鐮侊細10H-鍐欏涓繚鎸佸瘎瀛樺櫒
- * @Param: [ip, startOffset, data]
- * @return: boolean
- * @throws:
- */
- public boolean writeValues16(String ip, int port, int startOffset, short[] data) throws ModbusTransportException, ModbusInitException {
-
- ModbusMaster tcpMaster = modbusConfig.getMaster(ip, port);
- WriteRegistersRequest request = new WriteRegistersRequest(slaveId, startOffset, data);
- WriteRegistersResponse response = (WriteRegistersResponse) tcpMaster.send(request);
- return !response.isException();
- }
-
- /**
- * @Description: 杞崲宸ュ叿锛屽皢Boolean杞崲鎴�0锛�1
- * @Param: [numberOfBits, values]
- * @return: boolean[]
- * @throws:
- */
- private boolean[] valueRegroup(int numberOfBits, boolean[] values) {
- boolean[] bs = new boolean[numberOfBits];
- int temp = 1;
- for (boolean b : values) {
- bs[temp - 1] = b;
- temp++;
- if (temp > numberOfBits) {
- break;
- }
- }
- return bs;
- }
-}
\ No newline at end of file
diff --git a/igds-web/pom.xml b/igds-web/pom.xml
index 8190d3a..70316ca 100644
--- a/igds-web/pom.xml
+++ b/igds-web/pom.xml
@@ -187,7 +187,7 @@
</dependency>
- <!-- 绉佹湁鍗忚-椋庢鑷磋繙IOT銆佸埗姘満-->
+ <!-- 绉佹湁鍗忚-椋庢鑷磋繙IOT銆佸埗姘満
<dependency>
<groupId>com.ld.igds</groupId>
<artifactId>igds-protocol-iot</artifactId>
@@ -203,6 +203,7 @@
</exclusion>
</exclusions>
</dependency>
+ -->
<!-- 绉佹湁鍗忚-璐濆崥绮儏
<dependency>
diff --git a/igds-web/src/main/resources/verb-conf.properties b/igds-web/src/main/resources/verb-conf.properties
index 34cdd7e..622cf9a 100644
--- a/igds-web/src/main/resources/verb-conf.properties
+++ b/igds-web/src/main/resources/verb-conf.properties
@@ -1,7 +1,7 @@
##----\u901A\u98CE\u53C2\u6570\u914D\u7F6E----verb.mapImg.deptId.a--##
## 5000_001
-verb.mapImg.5000_001.a=default_pfc2_a.png
-verb.mapImg.5000_001.b=default_pfc2_b.png
+verb.mapImg.5000_001.a=pfc_a.png
+verb.mapImg.5000_001.b=pfc_b.png
verb.mapImg.5000_0137.a=default_qyc_a.png
verb.mapImg.5000_0137.b=default_qyc_b.png
--
Gitblit v1.9.3