Administrator
2021-05-29 21b1eb8f60cd89da341fc5c4c56c1361d9b82c48
修改
1个文件已修改
21 ■■■■■ 已修改文件
BattFBS9600XSP2/src/com/dev/fbs9600/FBS9600_State.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattFBS9600XSP2/src/com/dev/fbs9600/FBS9600_State.java
@@ -115,7 +115,7 @@
        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));        //纹波电流峰值                                
@@ -131,7 +131,7 @@
            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;
@@ -257,9 +257,9 @@
        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));            //功率温度告警状态                        
@@ -272,7 +272,7 @@
        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;
    }
@@ -285,9 +285,9 @@
            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);                            //'功率温度告警状态',
@@ -300,9 +300,14 @@
            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);
    }
}