| | |
| | | BatchRead<Integer> batch = new BatchRead<Integer>();
|
| | | batch.addLocator(0,MyModbusUtils.createBaseLocator(0x0003+offset,DataType.TWO_BYTE_INT_UNSIGNED, master)); //模块状态:0-正常采集 1-内阻测试 2-单体编号
|
| | | batch.addLocator(1,MyModbusUtils.createBaseLocator(0x0004+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //组端电压
|
| | | batch.addLocator(2,MyModbusUtils.createBaseLocator(0x0006+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //组端电流 |
| | | batch.addLocator(2,MyModbusUtils.createBaseLocator(0x0006+offset, DataType.TWO_BYTE_INT_SIGNED, master)); //组端电流 |
| | | batch.addLocator(3,MyModbusUtils.createBaseLocator(0x0007+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //蓄电池状态
|
| | | batch.addLocator(4,MyModbusUtils.createBaseLocator(0x000A+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //纹波电流均值
|
| | | batch.addLocator(5,MyModbusUtils.createBaseLocator(0x000B+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //纹波电流峰值
|
| | |
| | | dev_works[index] = res.getIntValue(0);
|
| | | dev_groupvols[index] = ((float)res.getIntValue(1))/10;
|
| | | battData_RT.mTestData.updateGroupVolFrom_FBSDev(dev_groupvols[index]);
|
| | | float battcurr = ((float)res.getIntValue(2))/10;
|
| | | float battcurr = ((short)res.getValue(2))/10;
|
| | | int battstate = res.getIntValue(3);
|
| | | if (1 == battstate) {
|
| | | battcurr *= -1.0F;
|
| | |
| | | BatchRead<Integer> batch = new BatchRead<Integer>();
|
| | | batch.addLocator(0,MyModbusUtils.createBaseLocator(0x0ABE+offset,DataType.TWO_BYTE_INT_UNSIGNED, master)); //环境温度
|
| | | batch.addLocator(1,MyModbusUtils.createBaseLocator(0x0ABF+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //功率温度
|
| | | batch.addLocator(2,MyModbusUtils.createBaseLocator(0x0AC0+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //剩余容量 |
| | | batch.addLocator(2,MyModbusUtils.createBaseLocator(0x0AC0+offset, DataType.TWO_BYTE_INT_SIGNED, master)); //剩余容量 |
| | | batch.addLocator(3,MyModbusUtils.createBaseLocator(0x0AC1+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //自定义遥测量数量
|
| | | batch.addLocator(4,MyModbusUtils.createBaseLocator(0x0AC2+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //电池总容量 |
| | | batch.addLocator(4,MyModbusUtils.createBaseLocator(0x0AC2+offset, DataType.TWO_BYTE_INT_SIGNED, master)); //电池总容量 |
| | | batch.addLocator(5,MyModbusUtils.createBaseLocator(0x0AC3+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //电池循环次数
|
| | | batch.addLocator(6,MyModbusUtils.createBaseLocator(0x0AC4+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //环境温度告警状态
|
| | | batch.addLocator(7,MyModbusUtils.createBaseLocator(0x0AC5+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //功率温度告警状态
|
| | |
| | | batch.addLocator(14,MyModbusUtils.createBaseLocator(0x0ACC+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //电流事件代码
|
| | | batch.addLocator(15,MyModbusUtils.createBaseLocator(0x0ACD+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //FET状态代码
|
| | | batch.addLocator(16,MyModbusUtils.createBaseLocator(0x0ACE+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //均衡状态代码
|
| | | batch.addLocator(17,MyModbusUtils.createBaseLocator(0x0ACF+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //系统状态代码 |
| | | //batch.addLocator(17,MyModbusUtils.createBaseLocator(0x0ACF+offset, DataType.TWO_BYTE_INT_UNSIGNED, master)); //系统状态代码 |
| | |
|
| | | return batch;
|
| | | }
|
| | |
| | | FBS9600_Lithium_Data data = lidata[index];
|
| | | data.envir_tmp = ((float)res.getIntValue(0)-100)/10; //'环境温度',
|
| | | data.power_tmp = ((float)res.getIntValue(1)-100)/10; //'功率温度',
|
| | | data.rest_cap = ((float)res.getIntValue(2))/100; //'剩余容量',
|
| | | data.rest_cap = (short)res.getValue(4); //'剩余容量',
|
| | | data.remote_control_count = res.getIntValue(3); //'自定义遥控数量',
|
| | | data.batt_total_cap = (float)res.getIntValue(4); //'电池总容量',
|
| | | data.batt_total_cap = (short)res.getValue(4); //'电池总容量',
|
| | | data.batt_cycles = res.getIntValue(5); //'电池循环次数',
|
| | | data.evir_tmp_alm_state = res.getIntValue(6); //'环境温度告警状态',
|
| | | data.power_tmp_alm_state = res.getIntValue(7); //'功率温度告警状态',
|
| | |
| | | data.curr_event_code = res.getIntValue(14); //'电流事件代码',
|
| | | data.fet_state_code = res.getIntValue(15); //'FET状态代码',
|
| | | data.junheng_state_code = res.getIntValue(16); //'均衡状态代码',
|
| | | data.sys_state_code = (int)res.getValue(17); //'系统状态代码',
|
| | | //data.sys_state_code = (int)res.getValue(17); //'系统状态代码',
|
| | | return true;
|
| | | }
|
| | | return false;
|
| | | }
|
| | | |
| | | public static void main(String[] args) {
|
| | | short ff = 12;
|
| | | System.out.println((float)ff);
|
| | | }
|
| | | } |