whyclj
2020-09-15 eb890124f507df1d1e4eb36f00afb22a05754acd
修改
2个文件已修改
40 ■■■■■ 已修改文件
Motor_MonitorServer/config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Motor_MonitorServer/src/com/modbus/data/MyModbusMaster.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Motor_MonitorServer/config.xml
@@ -2,7 +2,7 @@
<root>
  <mysql_ramdb_recreate_en>false</mysql_ramdb_recreate_en>
  <mysql_server_ip>118.89.139.230</mysql_server_ip>
  <mysql_server_ip>127.0.0.1</mysql_server_ip>
  <!--SOURCE_BATTDATA_TYPE_FBSDEV = 0-->
  <!--SOURCE_BATTDATA_TYPE_SQLSERVER = 1-->
  <!--SOURCE_BATTDATA_TYPE_C_INTERFACE = 2-->
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));
    }
}