DELL
2024-12-19 d48ed9746c9235e043216f229873df7282bf8293
整合充放电数据中的每一笔数据
5个文件已修改
83 ■■■■■ 已修改文件
src/main/java/com/whyc/bts/BTS_BattData.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/bts/BTS_ChargeData.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/bts/BTS_DisChargeData.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/bts/BTS_FbsData.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/bts/BTS_TestTime.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/bts/BTS_BattData.java
@@ -1,4 +1,30 @@
package com.whyc.bts;
/**
 * 历史数据每一笔充放电数据
 */
public class BTS_BattData {
    public int dataType;                                    //测试类型
    public BTS_TestTime testTime = new BTS_TestTime();      //测试时长
    public int monCount = 1;        //单体数量
    public double onlineVol;        //在线电压
    public double groupVol;            //组端电压
    public int battState;            //充放电状态     3   5   9
    public double battCurr;            //电池组电流
    public double battCap;            //电池组容量
    public double battTemp;         //电池组温度
    public int monMAX_num;            //最大单体编号
    public int monMIN_num;            //最低按单体编号
    public double monvolMAX;        //最大单体电压
    public double monvolMIN;        //最低单体电压
    public double[] monVol;         //单体电压
    public BTS_BattData(int monCount){
        monVol = new double[monCount];
        this.monCount = monCount;
    }
}
src/main/java/com/whyc/bts/BTS_ChargeData.java
@@ -28,13 +28,13 @@
    public BTS_ChargeParam chargeParam;                //充电参数
    public BTS_ChargeState charState;                //充电状态
    
    public List<BTS_FbsData> fbsDatas;                //每次记录的单体数据
    public List<BTS_BattData> fbsDatas;                //每次记录的单体数据
    
    public BTS_ChargeData() {
        battParam = new BTS_BattParam();
        chargeParam = new BTS_ChargeParam();
        charState = new BTS_ChargeState();
        fbsDatas = new ArrayList<BTS_FbsData>();
        fbsDatas = new ArrayList<BTS_BattData>();
    }
    
    /**
@@ -88,7 +88,7 @@
                            //System.out.println(ComFn.bytesToHexString(databuf, databuf.length));
                            BTS_FbsData fbsData = new BTS_FbsData();
                            if(fbsData.putByteBuffer(bf, 0, 0)) {
                                fbsDatas.add(fbsData);
                                fbsDatas.add(fbsData.createBattData(battParam.EachGroupBattCount,charState.TestGroupNum));
                            }
                        }
                    }
src/main/java/com/whyc/bts/BTS_DisChargeData.java
@@ -27,13 +27,13 @@
    public BTS_DischargeParam dischargeParam;        //核容参数
    public BTS_CapState capState;                    //容量参数
    
    public List<BTS_FbsData> fbsDatas;                //每次记录的单体数据
    public List<BTS_BattData> fbsDatas;                //每次记录的单体数据
    
    public BTS_DisChargeData() {
        battParam = new BTS_BattParam();
        dischargeParam = new BTS_DischargeParam();
        capState = new BTS_CapState();
        fbsDatas = new ArrayList<BTS_FbsData>();
        fbsDatas = new ArrayList<BTS_BattData>();
    }
    
@@ -90,7 +90,7 @@
                            //System.out.println(ComFn.bytesToHexString(databuf, databuf.length));
                            BTS_FbsData fbsData = new BTS_FbsData();
                            if(fbsData.putByteBuffer(bf, 0, 0)) {
                                fbsDatas.add(fbsData);
                                fbsDatas.add(fbsData.createBattData(battParam.EachGroupBattCount,capState.TestGroupNum));
                            }
                        }
                    }
src/main/java/com/whyc/bts/BTS_FbsData.java
@@ -73,6 +73,42 @@
        
        return obj;
    }
    /**
     *
     * @param monCount 单体数量
     * @param testGroupNum    被测电池组号
     * @return
     */
    public BTS_BattData createBattData(int monCount,int testGroupNum){
        BTS_BattData battData = new BTS_BattData(monCount);
        if(testGroupNum > 0 && testGroupNum <= BTS_ComBase.BattGroupCountMax){
            testGroupNum = testGroupNum - 1;
        }else{
            testGroupNum = 0;
        }
        battData.dataType = this.dataType[0];                                    //测试类型
        battData.testTime = this.testTime.clone();      //测试时长
        battData.monCount = monCount;        //单体数量
        battData.onlineVol = this.onlinevol[testGroupNum];        //在线电压
        battData.groupVol = this.groupvol[testGroupNum];            //组端电压
        battData.battState = this.battstate[testGroupNum];            //充放电状态     3   5   9
        battData.battCurr = this.battcurr[testGroupNum];            //电池组电流
        battData.battCap = this.battcap[testGroupNum];            //电池组容量
        battData.battTemp = this.batttemp[testGroupNum];         //电池组温度
        battData.monMAX_num = this.monMAX_num[testGroupNum];            //最大单体编号
        battData.monMIN_num = this.monMIN_num[testGroupNum];            //最低按单体编号
        battData.monvolMAX = this.monvolMAX[testGroupNum];        //最大单体电压
        battData.monvolMIN = this.monvolMIN[testGroupNum];        //最低单体电压
        int idx = 0;
        for (int k = testGroupNum*monCount;k<(testGroupNum+1)*monCount && k < this.vol.length;k++){
            battData.monVol[idx++] = this.vol[k];
        }
        return battData;
    }
    
    public boolean putByteBuffer(byte[] data, int dev_type, int soft_ver)
    {
src/main/java/com/whyc/bts/BTS_TestTime.java
@@ -37,6 +37,15 @@
        }
        //System.out.println("this.testTime:"+this.testTime);
    }
    public BTS_TestTime clone(){
        BTS_TestTime bts_test = new BTS_TestTime();
        bts_test.hour = hour;
        bts_test.minute = minute;
        bts_test.second = second;
        bts_test.testTime = testTime;            //时分秒
    }
    
    public ByteBuffer getBytes()
    {