Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
Z
zhmes-agecal
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
耿迪迪
zhmes-agecal
Commits
2650274c
Commit
2650274c
authored
Sep 16, 2025
by
wanghao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1 批量读取 设备层状态
parent
8c80e1ab
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
17 additions
and
10 deletions
+17
-10
Modbus4jUtils.java
...ain/java/com/zehong/system/modbus/util/Modbus4jUtils.java
+17
-10
No files found.
zhmes-agecal-system/src/main/java/com/zehong/system/modbus/util/Modbus4jUtils.java
View file @
2650274c
...
@@ -404,19 +404,26 @@ public class Modbus4jUtils {
...
@@ -404,19 +404,26 @@ public class Modbus4jUtils {
*/
*/
public
static
Map
<
Integer
,
Object
>
batchReadAgingCabinetStatus
(
ModbusMaster
master
,
List
<
Integer
>
registerOffsets
)
throws
ModbusInitException
,
ModbusTransportException
,
ErrorResponseException
{
public
static
Map
<
Integer
,
Object
>
batchReadAgingCabinetStatus
(
ModbusMaster
master
,
List
<
Integer
>
registerOffsets
)
throws
ModbusInitException
,
ModbusTransportException
,
ErrorResponseException
{
BatchRead
<
Integer
>
batch
=
new
BatchRead
<
Integer
>();
// 把设备集成到一个交换机上后 这个批量读取 不管用了。。
for
(
Integer
registerOffset
:
registerOffsets
)
{
// BatchRead<Integer> batch = new BatchRead<Integer>();
batch
.
addLocator
(
registerOffset
,
BaseLocator
.
inputStatus
(
1
,
registerOffset
));
// for (Integer registerOffset : registerOffsets) {
}
// batch.addLocator(registerOffset, BaseLocator.inputStatus(1, registerOffset));
// }
// 非连续地址也支持
//
batch
.
setContiguousRequests
(
true
);
// // 非连续地址也支持
// batch.setContiguousRequests(true);
BatchResults
<
Integer
>
send
=
master
.
send
(
batch
);
//
//
// BatchResults<Integer> send = master.send(batch);
// Map<Integer, Object> result = new HashMap<>();
// for (Integer registerOffset : registerOffsets) {
// result.put(registerOffset, send.getValue(registerOffset));
// }
// return result;
Map
<
Integer
,
Object
>
result
=
new
HashMap
<>();
Map
<
Integer
,
Object
>
result
=
new
HashMap
<>();
for
(
Integer
registerOffset
:
registerOffsets
)
{
for
(
Integer
registerOffset
:
registerOffsets
)
{
result
.
put
(
registerOffset
,
send
.
getValue
(
registerOffset
));
Boolean
aBoolean
=
Modbus4jUtils
.
readCoilStatus
(
master
,
1
,
registerOffset
);
result
.
put
(
registerOffset
,
aBoolean
);
}
}
return
result
;
return
result
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment