充放电一体机FGCD通信程序【二期初版】
Administrator
2022-02-11 06cc6a688030171d1bff4453c76bc216dbde09e1
2.当前的组端电压修改为当前选中那一组的组端电压,未选中电池组时设置为0
11个文件已修改
175 ■■■■ 已修改文件
BattMonitor_FGCD-A059NT/bin/.gitignore 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/battmonitor/data/BattData_RT.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/battmonitor/data/BattData_RT_SQL.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/battmonitor/data_store/InsertDataToMysql_Task_SQL.java 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/batttest/BattResStorePro_Thread.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/comm/FGCD_SocketClient_Thread.java 53 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/comm/FGCD_SocketClient_Thread_SQL.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/data/FGCD_OnlineInfo.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/data/FGCD_SysState.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/data/FGCD_VCData.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FGCD-A059NT/bin/.gitignore
@@ -1,5 +1,28 @@
/aopalliance-1.0.jar
/c3p0-0.9.5.jar
/c3p0-oracle-thin-extras-0.9.5.jar
/c3p0.properties
/com/
/dom4j-1.6.1.jar
/ftplet-api-1.0.6.jar
/ftpserver-core-1.0.6.jar
/jcl-over-slf4j-1.5.2.jar
/jconn3.jar
/jxl.jar
/log4j-1.2.14.jar
/log4j-api-2.13.3.jar
/log4j-core-2.13.3.jar
/log4j.properties
/main/
/mchange-commons-java-0.2.9.jar
/mchange-commons.properties
/mchange-log.properties
/mina-core-2.0.4.jar
/mysql-connector-java-5.1.30-bin.jar
/poi-3.10.1-20140818.jar
/slf4j-api-1.5.2.jar
/slf4j-log4j12-1.5.2.jar
/spring-beans-2.5.5.jar
/spring-context-2.5.5.jar
/spring-core-2.5.5.jar
/sqljdbc4.jar
BattMonitor_FGCD-A059NT/config.xml
@@ -2,7 +2,7 @@
<root>
  <mysql_ramdb_recreate_en>false</mysql_ramdb_recreate_en>
  <mysql_server_ip>127.0.0.1</mysql_server_ip>
  <mysql_server_ip>192.168.10.79</mysql_server_ip>
  <!--SOURCE_BATTDATA_TYPE_FBSDEV = 0-->
  <!--SOURCE_BATTDATA_TYPE_SQLSERVER = 1-->
  <!--SOURCE_BATTDATA_TYPE_C_INTERFACE = 2-->
BattMonitor_FGCD-A059NT/src/com/battmonitor/data/BattData_RT.java
@@ -79,6 +79,8 @@
    private float mDataHistoryNewLevel = (float) 0.01;
    private int mTestDataRecordCountMax = 10000;
    
    private int a059_num = 1;        //上一次数据来源
    public boolean aescode_en = true;
    private Logger logger;
    
@@ -644,6 +646,12 @@
        return have_zero_vol;
    }
    
    public int getA059_num() {
        return a059_num;
    }
    public void setA059_num(int a059_num) {
        this.a059_num = a059_num;
    }
    private void initTestData(byte test_type)
    {
        int count = 1;
BattMonitor_FGCD-A059NT/src/com/battmonitor/data/BattData_RT_SQL.java
@@ -96,10 +96,10 @@
                    + " SET "
                    + " rec_datetime='" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms) + "',"
                    + " batt_count=" + bd_rt.MonCount + ","
                    + " online_vol=" + bd_rt.getOnlineVol() + ","
                    + " group_vol=" + bd_rt.getGroupVol() + ","
                    + " online_vol=" + String.format("%1.2f",bd_rt.getOnlineVol()) + ","
                    + " group_vol=" + String.format("%1.2f",bd_rt.getGroupVol()) + ","
                    + " group_tmp=" + bd_rt.getGroupTmp() + ","
                    + " group_curr=" + bd_rt.getTestCurr() + ","
                    + " group_curr=" + String.format("%1.2f",bd_rt.getTestCurr()) + ","
                    + " batt_state=" + bd_rt.getBattState() + ","
                    + " batt_test_type=" + bd_rt.getBattTestType() + ","
                    + " test_loadertype=" + bd_rt.mTestData.getLoaderType() + ","
@@ -110,6 +110,7 @@
                    + " batt_test_cap=" + bd_rt.getTestCap() + ","
                    + " batt_real_cap=" + bd_rt.getBattRealCap() + ","
                    + " batt_rest_cap=" +  bd_rt.getBattRestCap() + ","
                    + " a059_num=" +  bd_rt.getA059_num() + ","
                    + " batt_rest_power1_time=" + bd_rt.getBattRestTime()
                    + " WHERE BattGroupId=" + bd_rt.BattGroupId;
            
BattMonitor_FGCD-A059NT/src/com/battmonitor/data_store/InsertDataToMysql_Task_SQL.java
@@ -170,9 +170,9 @@
                            + "'" + tmp_test_data.getStartTestTimeString() + "', "
                            + "'" + tmp_test_data.getRecordTimeString() + "', "
                            + tmp_test_data.testTimeLong + ", "
                            + tmp_test_data.onlineVol + ", "
                            + tmp_test_data.groupVol + ", "
                            + tmp_test_data.testCurr + ", "
                            + String.format("%1.2f", tmp_test_data.onlineVol) + ", "
                            + String.format("%1.2f", tmp_test_data.groupVol) + ", "
                            + String.format("%1.2f", tmp_test_data.testCurr) + ", "
                            + tmp_test_data.testCap + ", "
                            + (n+1) + ", "
                            + rt_data.get_al_MonVol_History(n) + ", "
@@ -238,7 +238,7 @@
                            + "test_starttime, "
                            + "record_time, "
                            + "test_timelong, "
                            //+ "online_vol, "
                            + "online_vol, "
                            + "group_vol, "
                            + "test_curr, "
                            + "test_cap, "
@@ -256,9 +256,9 @@
                                + "'" + tmp_test_data.getStartTestTimeString() + "', "
                                + "'" + tmp_test_data.getRecordTimeString() + "', "
                                + tmp_test_data.testTimeLong + ", "
                                //+ tmp_test_data.onlineVol + ", "
                                + tmp_test_data.groupVol + ", "
                                + tmp_test_data.testCurr + ", "
                                + String.format("%1.2f", tmp_test_data.onlineVol) + ", "
                                + String.format("%1.2f", tmp_test_data.groupVol) + ", "
                                + String.format("%1.2f", tmp_test_data.testCurr) + ", "
                                + tmp_test_data.testCap + ", "
                                + (n+1) + ", "
                                + tmp_mon_vol.get(n).monVol + ")";
@@ -281,9 +281,9 @@
                    + "record_num=" + (tmp_test_data.recordNum + 1) + ", "
                    + "record_time='" + tmp_test_data.getRecordTimeString() + "', "
                    + "test_timelong=" + tmp_test_data.testTimeLong + ", "
                    //+ "online_vol=" + tmp_test_data.onlineVol + ", "
                    + "group_vol=" + tmp_test_data.groupVol + ", "
                    + "test_curr=" + tmp_test_data.getAvgTestCurr()/*.testCurrAbsMax*/ + ", "
                    + "online_vol=" + String.format("%1.2f", tmp_test_data.onlineVol) + ", "
                    + "group_vol=" + String.format("%1.2f", tmp_test_data.groupVol) + ", "
                    + "test_curr=" + String.format("%1.2f", tmp_test_data.getAvgTestCurr())/*.testCurrAbsMax*/ + ", "
                    + "test_cap=" + tmp_test_data.testCap + " "
                    + " WHERE "
                    + " BattGroupId=" + rt_data.BattGroupId
@@ -453,8 +453,8 @@
                    + "'" + tmp_test_data.getRecordTimeString() + "', "
                    + tmp_test_data.testTimeLong + ", "
                    + tmp_test_data.test_stoptype + ", "
                    + tmp_test_data.groupVol + ", "
                    + tmp_test_data.testCurr + ", "
                    + String.format("%1.2f", tmp_test_data.groupVol) + ", "
                    + String.format("%1.2f", tmp_test_data.testCurr) + ", "
                    + tmp_test_data.testCap + ", "
                    + rt_data.mMaxMonNum + ", "
                    + rt_data.mMaxMonVol + ", "
@@ -481,8 +481,8 @@
                    + "record_time='" + tmp_test_data.getRecordTimeString() + "', "
                    + "test_timelong=" + tmp_test_data.testTimeLong + ", "
                    + "test_stoptype=" + tmp_test_data.test_stoptype + ", "
                    + "group_vol=" + tmp_test_data.groupVol + ", "
                    + "test_curr=" + tmp_test_data.testCurrAbsMax + ", "
                    + "group_vol=" + String.format("%1.2f", tmp_test_data.groupVol) + ", "
                    + "test_curr=" + String.format("%1.2f", tmp_test_data.testCurrAbsMax) + ", "
                    + "test_cap=" + tmp_test_data.testCap + ", "
                    + "max_monnum=" + rt_data.mMaxMonNum + ", "
                    + "max_monvol=" + rt_data.mMaxMonVol + ", "
BattMonitor_FGCD-A059NT/src/com/batttest/BattResStorePro_Thread.java
@@ -254,7 +254,7 @@
                sql.sqlMysqlExecute(sql_str);
            }
            
            int mtest_record_count = 0;//sql.getBattTestRecordCountNew(data_rt.BattGroupId, Sql_Mysql.BattResDataInf_Table);
            int mtest_record_count = sql.getBattTestRecordCountNew(data_rt.BattGroupId, Sql_Mysql.BattResDataInf_Table);
            
            for(int c=0; c<3; c++)
            {
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/comm/FGCD_SocketClient_Thread.java
@@ -264,6 +264,8 @@
                    if(FGCD_ComBase.CMD_SetNowBatt == m_StatAndParam.op_cmd) {
                        FGCD_BattTestParam tmp_set_pm = testParam.clone();
                        FGCD_SocketClient_Thread_SQL.queryFbs9100SetParamBydev_id(m_ConnPool, m_StatAndParam, tmp_set_pm);
                        logger.debug("dev_id:开始切换电池组"+m_StatAndParam.dev_id+"\t切换电池组号:" + tmp_set_pm.groupCount);
                        if(FGCD_ComBase.WORK_STATE_STOPPED == sysState.dev_workstate) {
                            SocketComm(FGCD_ComBase.CMD_SETNOWWORKBATT, tmp_set_pm.groupCount);
                            
@@ -271,8 +273,8 @@
                            isOnlineMode = true;
                            readMonData = true;
                            readCharData = true;
                            logger.debug("dev_id:"+m_StatAndParam.dev_id+"\t切换电池组号:" + tmp_set_pm.groupCount);
                        }else {
                            logger.debug("dev_id:"+m_StatAndParam.dev_id+"\t 设备正在工作无法,切换电池组号:" + tmp_set_pm.groupCount);                        
                        }
@@ -594,7 +596,7 @@
                Date d1 = new Date();
                int rx_read_time_out = 0;
                //int rx_len = 0;
                //System.out.println("数据长度" + plain_tx_t.length + "\t发送数据:" + ComFn.bytesToHexString(plain_tx_t, plain_tx_t.length));
                System.out.println("数据长度" + plain_tx_t.length + "\t发送数据:" + ComFn.bytesToHexString(plain_tx_t, plain_tx_t.length));
                out.write(plain_tx_t);
                out.flush();
                sysState.makeDevCommDataFlowSum(plain_tx_t.length);
@@ -637,7 +639,7 @@
                
                sysState.makeDevCommDataFlowSum(cipher_buf.length);
                
                //System.err.println("数据长度"+cipher_buf.length+"\t返回数据:"+ ComFn.bytesToHexString(cipher_buf, cipher_buf.length));
                System.err.println("数据长度"+cipher_buf.length+"\t返回数据:"+ ComFn.bytesToHexString(cipher_buf, cipher_buf.length));
                //Log.e(TAG, "SocketComm: "+ComFn.bytesToHexString(plain_buf, plain_buf.length));
                if(true == getDataFromCommBuf(cipher_buf)) {
                    res_t = true; 
@@ -761,7 +763,7 @@
            else if(FGCD_ComBase.CMD_CHANGEBATT == m_FBS_Cmd.CMD) {
                if(FGCD_ComBase.RETURN_SUCCESS == m_FBS_Cmd.RecState) {
                    isSuccess = true;
                    //logger.info(TAG, "getDataFromCommBuf: 切换电池组成功");
                    logger.info(TAG, "getDataFromCommBuf: 切换电池组成功");
                }
            }
@@ -777,7 +779,8 @@
            //---------------------  获取单体数据    ----------------------------------------------
            else if(FGCD_ComBase.CMD_GETBATTDATA == m_FBS_Cmd.CMD) {
                //System.out.println("获取单体数据");
                if(vc_data.putByteBuffer(bf, m_FBS_Cmd.ByteLen-m_FBS_Cmd.BYTE_LEN)) {
                //if(vc_data.putByteBuffer(bf, m_FBS_Cmd.ByteLen-m_FBS_Cmd.BYTE_LEN)) {
                if(vc_data.putByteBuffer(bf, m_FBS_Cmd.getDb1()*256+m_FBS_Cmd.Db2)) {
                    readMonData_lock = m_FBS_Cmd.Db3;
                    //System.out.println("单体数据返回:"+readMonData_lock);
                    if(m_FBS_Cmd.Db3 == 2) {
@@ -858,6 +861,7 @@
                    //读取当前设备的停止原因和当前工作状态
                    sysState.dev_captest_stop_type = m_FBS_Cmd.Alarm;
                    sysState.dev_workstate = m_FBS_Cmd.WorkState;
                    sysState.checkTestCurr();
                    sysState.hhstate = m_FBS_Cmd.Db2;        //活化状态
                    for(int i=0;i<sysState.montmps.length;i++) {
                        vc_data.tmp[i] = sysState.montmps[i];
@@ -1024,14 +1028,14 @@
    
    
    /*********************************************************************************************/
    /*private void getFBS9100MonVolData(FGCD_VCData vc_data, FGCD_SysState sys_state)
    private void getFBS9100MonVolData(FGCD_VCData vc_data, FGCD_SysState sys_state)
    {
        boolean fbsdev_statchange_record_tag = false;
        int mon_index = 0;
        int batt_index_now = onlineInfo.currBattNum-1;        //当前电池组号 0->电池组1  1->电池组2
        for(int n=0; n<FBS9100_ComBase.BattGroupCountMax; n++) {
            if(null != m_RTData[n]) {
                if(batt_index_now == n) {
                if(onlineInfo.currBattNum > 0) {
                    mon_index = batt_index_now * m_RTData[n].MonCount;
                    //--------------------- 先读取单体电压 ---------------------------------------//
                    try {
                        for(int index=0; index<m_RTData[n].al_MonVol.size(); index++) {
@@ -1040,37 +1044,35 @@
                            }
                            
                            m_RTData[n].al_MonVol.get(index).monVol = (float) vc_data.vol[mon_index];
                            m_RTData[n].al_MonVol.get(index).monTmp = (float) vc_data.tmp[mon_index];
                            m_RTData[n].al_MonVol.get(index).monTmp = (float) vc_data.tmp[index];
                            mon_index++;
                        }
                    } catch (Exception e) {
                        logger.error(e.toString(), e);
                    }
                    m_RTData[n].setA059_num(onlineInfo.currBattNum);
                }
                int now_test_type = FGCD_ComBase.TestType_NULL;
                int test_stoptype = -1;
                //记录停止原因时数据处理
                if(sys_state.dev_captest_stop_type >= 0x80) {
                if(sys_state.dev_captest_stop_type >= 0x80) {
                    test_stoptype = sys_state.dev_captest_stop_type - 0x80;        //更新当前的停止原因                    
                }else {
                    test_stoptype = sys_state.dev_captest_stop_type;
                }
                //System.out.println("停止原因:"+m_RTData[n].mTestData.test_stoptype);
                double test_curr = sys_state.chargeCurr;
                int now_dev_workstate = 0;
                if(FGCD_ComBase.WORK_STATE_DISTEST == sys_state.dev_workstate ||
                    (FGCD_ComBase.WORK_STATE_STOPDIS == sys_state.dev_workstate)){
                    //vc_data.battcurr[n] = (-1)*Math.abs(vc_data.battcurr[n]);
                    //System.out.println("vc_data.battcurr[n]:"+vc_data.battcurr[n]);
                    test_curr = (-1)*Math.abs(test_curr);
                    now_test_type = FGCD_ComBase.TestType_CAP;
                }else if(FGCD_ComBase.WORK_STATE_CHARTEST == sys_state.dev_workstate ||
                        FGCD_ComBase.WORK_STATE_STOPCHAR == sys_state.dev_workstate    ){
                    //vc_data.battcurr[n] = Math.abs(vc_data.battcurr[n]);
                    //System.out.println("vc_data.battcurr[n]:"+vc_data.battcurr[n]);
                    now_test_type = FGCD_ComBase.TestType_Charge;
                    test_curr = Math.abs(test_curr);
                }
                now_dev_workstate = sys_state.dev_workstate;
                if(sys_state.hhstate > 0) {
@@ -1094,29 +1096,25 @@
                //--------------------- 如果软件版本大于35,在线电压和组端电压保留2位小数-------//
                //m_RTData[n].mTestData.updateGroupTempFrom_FBSDev((float)(vc_data.batttemp[n]));
                m_RTData[n].mTestData.updateOnlineVolFrom_FBSDev((float)(sysState.on_online_vol));
                if(batt_index_now == n) {
                    m_RTData[n].mTestData.updateGroupVolFrom_FBSDev((float)(sysState.tatalVol));
                }else {
                    m_RTData[n].mTestData.updateGroupVolFrom_FBSDev((float)(vc_data.groupvol[n]));
                }
                //m_RTData[n].mTestData.updateGroupVolFrom_FBSDev((float)(sysState.tatalVol));
                m_RTData[n].mTestData.updateGroupVolFrom_FBSDev((float)(onlineInfo.getGroupVol()));             //更新电池组组端电压
                m_RTData[n].mTestData.updateCurrFrom_FBSDev((float)sys_state.chargeCurr);
                //---------------------------------------------------------------------------//
                //--------------------- 接着读取电流 -----------------------------------------//
                if(batt_index_now == n) {
                    //当前电池组
                    m_RTData[n].mTestData.updateCurrFrom_FBSDev((float)test_curr);
                }
                //--------------------- 接着更新当前时间 -----------------------------------------//
                m_RTData[n].mTestData.updateNewDataRCTime(new Date());
                //---------------------------------------------------------------------------//
                //---------------------------------------------------------------------------//
                m_RTData[n].mTestData.updateGroupNumFrom_FBSDev(onlineInfo.currBattNum);    //更新当前电池组号
                //--------------------- 先更新单体数据,再更新电池状态数据 ----------------------//
                m_RTData[n].updata_BattRtData_To_RamDb();
                m_RTData[n].updata_BattRtSate_To_RamDb();
                //---------------------------------------------------------------------------//
            }
        }
    }*/
    }
    
    private void getFBS9100MonVolData(FGCD_VCData vc_data, FGCD_SysState sys_state)
    /*private void getFBS9100MonVolData(FGCD_VCData vc_data, FGCD_SysState sys_state)
    {
        boolean fbsdev_statchange_record_tag = false;
        int mon_index = 0;
@@ -1201,12 +1199,13 @@
                //---------------------------------------------------------------------------//
            }
        }
    }
    }*/
    
    public static void main(String[] args) {
        byte[] b = new byte[]{0x46 ,0x47, 0x43 ,0x44,0x2D ,0x41 ,0x30 ,0x35 ,0x39 ,0x58 ,0x54 ,0x20 ,0x50 ,0x72 ,0x6F ,0x2C ,0x56 ,0x31 ,0x2E ,0x38 ,0x2E ,0x30 ,0x2E ,0x38 ,0x2C ,0x31 ,0x3A ,0x49 ,0x44 ,0x43 ,0x45 ,0x2D ,0x50 ,0x72 ,0x6F ,0x2D ,0x38 ,0x4B ,0x57 ,0x2D ,0x56 ,0x33 ,0x2E ,0x30 ,0x31 ,0x2E ,0x31 ,0x39 ,0x20 };
        try {
            System.out.println(new String(b,"utf-8"));
            System.out.println(String.format("%1.2f", 9999.5555));
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/comm/FGCD_SocketClient_Thread_SQL.java
@@ -1273,10 +1273,14 @@
                    /***
                     * 2022-01-17新增在线模块信息
                     */
                    + "dev_conresist=" + m_pm.onlineInfo.batt1_vol + ", "                //电池组1电压
                    + "dev_conresist1=" + m_pm.onlineInfo.batt2_vol + ", "                //电池组2电压
                    + "dev_conresist=" + String.format("%1.2f", m_pm.onlineInfo.batt1_vol) + ", "                //电池组1电压
                    + "dev_conresist1=" +String.format("%1.2f",  m_pm.onlineInfo.batt2_vol) + ", "                //电池组2电压
                    + "dev_onlinevollow=" + m_pm.onlineInfo.currBattNum + ", "            //当前电池组号    0->未设置;1->电池组1;2->电池组2
                    + "dev_station_poff_cnt=" + m_pm.onlineInfo.endoscopeState + " ";    //内窥镜状态  0->停止显示  1->开始显示
                    + "dev_station_poff_cnt=" + m_pm.onlineInfo.endoscopeState + ", "    //内窥镜状态  0->停止显示  1->开始显示
                    + "a059_group_vol1=" + String.format("%1.2f", m_pm.onlineInfo.batt1_vol) + ", "                //电池组1组端电压
                    + "a059_group_vol2=" + String.format("%1.2f", m_pm.onlineInfo.batt2_vol) + ", "                //电池组2组端电压
                    + "a059_group_curr1=" + String.format("%1.2f", m_pm.sysState.getNowCurr(m_pm.onlineInfo.currBattNum, 1)) + ", "    //电池组1组端电流
                    + "a059_group_curr2=" + String.format("%1.2f", m_pm.sysState.getNowCurr(m_pm.onlineInfo.currBattNum, 2));    //电池组2组端电流
    
            String sql_str_update = "UPDATE " + sql_str_base + " WHERE dev_id=" + m_pm.dev_id;
            sql.sqlMysqlExecute(sql_str_update);
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/data/FGCD_OnlineInfo.java
@@ -34,6 +34,23 @@
        return true;
    }
    /**
     * 获取当前选中电池组的组端电压
     * @return
     */
    public double getGroupVol() {
        double tmp_groupvol = 0;
        if(this.currBattNum > 0) {
            switch(this.currBattNum) {
                case 0:tmp_groupvol = 0;break;
                case 1:tmp_groupvol = batt1_vol;break;
                case 2:tmp_groupvol = batt2_vol;break;
            }
        }
        return tmp_groupvol;
    }
    @Override
    public String toString() {
        return "FGCD_OnlineInfo [BYTE_LEN=" + BYTE_LEN + ", batt1_vol=" + batt1_vol + ", batt2_vol=" + batt2_vol
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/data/FGCD_SysState.java
@@ -161,6 +161,15 @@
        }
        return true;
    }
    public double getNowCurr(int nowCurrIdx,int batt_idx) {
        double curr = 0;
        if(nowCurrIdx == batt_idx) {
            curr = chargeCurr;
        }
        return curr;
    }
    public void addErrorCount() {
        this.dev_errcommcount ++;
@@ -184,4 +193,16 @@
                + chargeCurr + ", testCap=" + testCap + ", maxVolNum=" + maxVolNum + ", maxVol=" + maxVol
                + ", minVolNum=" + minVolNum + ", minVol=" + minVol + "]";
    }
    /**
     * 校验当前电流
     */
    public void checkTestCurr() {
        double test_curr = Math.abs(this.chargeCurr);
        if(FGCD_ComBase.WORK_STATE_STOPDIS == this.dev_workstate ||
            FGCD_ComBase.WORK_STATE_DISTEST == this.dev_workstate) {
            test_curr = (-1) * test_curr;
        }
        this.chargeCurr = test_curr;
    }
}
BattMonitor_FGCD-A059NT/src/com/dev/fgcd/data/FGCD_VCData.java
@@ -75,7 +75,7 @@
    }
    
    public boolean putByteBuffer(ByteBuffer bf,int BYTECOUNT) {
        int monsum = (BYTECOUNT - 32)/2;
        int monsum = BYTECOUNT;
        if(monsum <= 0) {
            return false;
        }
@@ -109,7 +109,7 @@
        for(int i=0;i<monsum;i++) {
            vol[i] = FGCD_ComBase.changeShortToDouble(tmpbuf.getShort())/1000;
        }
        //System.err.println(Arrays.toString(battcurr));
        //System.err.println(monsum+"==="+Arrays.toString(vol));
        return true;
    }