From eb890124f507df1d1e4eb36f00afb22a05754acd Mon Sep 17 00:00:00 2001 From: whyclj <1525436766@qq.com> Date: 星期二, 15 九月 2020 08:56:50 +0800 Subject: [PATCH] 修改 --- Motor_MonitorServer/src/com/modbus/data/MyModbusMaster.java | 38 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 38 insertions(+), 0 deletions(-) diff --git a/Motor_MonitorServer/src/com/modbus/data/MyModbusMaster.java b/Motor_MonitorServer/src/com/modbus/data/MyModbusMaster.java index 343cad3..3b1c97b 100644 --- a/Motor_MonitorServer/src/com/modbus/data/MyModbusMaster.java +++ b/Motor_MonitorServer/src/com/modbus/data/MyModbusMaster.java @@ -1,6 +1,9 @@ package com.modbus.data; +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.ip.IpParameters; public class MyModbusMaster { @@ -125,4 +128,39 @@ return "MyModbusMaster [SLAVEID_DEFAULT=" + SLAVEID_DEFAULT + ", master=" + master + ", errcount=" + errcount + ", target_ip=" + target_ip + ", slaveId=" + slaveId + "]"; } + + + public static void main(String[] args) { + MyModbusMaster master = new MyModbusMaster("192.168.2.22", 2); + //float t1 = MyModbusUtils.readShortToFloat(MyModbusUtils.readHoldingRegister(1119, DataType.TWO_BYTE_INT_SIGNED, master)); + BatchRead<Integer> batch = new BatchRead<Integer>(); + batch.addLocator(0,MyModbusUtils.createBaseLocator(58, DataType.TWO_BYTE_INT_SIGNED, master)); //加载功率给定 58 + batch.addLocator(1,MyModbusUtils.createBaseLocator(364, DataType.TWO_BYTE_INT_SIGNED, master)); //加载转矩给定 364 + batch.addLocator(2,MyModbusUtils.createBaseLocator(366, DataType.TWO_BYTE_INT_UNSIGNED_SWAPPED, master)); //加载电机转速限制 366 + batch.addLocator(3,MyModbusUtils.createBaseLocator(367, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机转矩限制 367 + batch.addLocator(4,MyModbusUtils.createBaseLocator(505, DataType.TWO_BYTE_INT_UNSIGNED, master)); //加载步长 505 + batch.addLocator(5,MyModbusUtils.createBaseLocator(1006, DataType.TWO_BYTE_INT_UNSIGNED, master)); //加载电机水冷进水风温1006 + batch.addLocator(6,MyModbusUtils.createBaseLocator(1008, DataType.TWO_BYTE_INT_UNSIGNED, master)); //加载电机水冷出水风温1008 + batch.addLocator(7,MyModbusUtils.createBaseLocator(1096, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机电流 1096 + batch.addLocator(8,MyModbusUtils.createBaseLocator(1099, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机功率 1099 + batch.addLocator(9,MyModbusUtils.createBaseLocator(1101, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机转速 1101 + batch.addLocator(10,MyModbusUtils.createBaseLocator(1103, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机电压 1103 +// batch.addLocator(11,MyModbusUtils.createBaseLocator(1119, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机绕组温度1 1119 +// batch.addLocator(12,MyModbusUtils.createBaseLocator(1120, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机绕组温度2 1120 +// batch.addLocator(13,MyModbusUtils.createBaseLocator(1121, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机绕组温度3 1121 +// batch.addLocator(14,MyModbusUtils.createBaseLocator(1122, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机轴承温度1 1122 +// batch.addLocator(15,MyModbusUtils.createBaseLocator(1123, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机轴承温度2 1123 +// batch.addLocator(16,MyModbusUtils.createBaseLocator(1250, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机出口温度 1250 +// batch.addLocator(17,MyModbusUtils.createBaseLocator(1124, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机进口温度 1124 + batch.addLocator(18,MyModbusUtils.createBaseLocator(1251, DataType.TWO_BYTE_INT_SIGNED, master)); //加载电机转矩 1251 + batch.addLocator(19,MyModbusUtils.createBaseLocator(5680, master)); //加载电机启动 5680 + batch.addLocator(20,MyModbusUtils.createBaseLocator(5681, master)); //加载电机停机 5681 + batch.addLocator(21,MyModbusUtils.createBaseLocator(8000, master)); //加载 8000 + batch.addLocator(22,MyModbusUtils.createBaseLocator(8001, master)); //减载 8001 + batch.addLocator(23,MyModbusUtils.createBaseLocator(8040, master)); //手动加载 8040 + batch.addLocator(24,MyModbusUtils.createBaseLocator(16005, master)); //加载电机紧停 16005 + batch.addLocator(25,MyModbusUtils.createBaseLocator(17082, master)); //加载电机风机状态 17082 + BatchResults<Integer> res = MyModbusUtils.readMutilRegisters(batch, master); + System.out.println(res.getValue(0)); + } } -- Gitblit v1.9.1