| | |
| | | this.hour = ComBase.changeByteToInt(bf.get()); |
| | | this.minute = ComBase.changeByteToInt(bf.get()); |
| | | this.second = ComBase.changeByteToInt(bf.get()); |
| | | System.out.println(year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second); |
| | | //System.out.println(year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second); |
| | | } |
| | | |
| | | public Date getFBODateTime() { |
| | | Calendar c = Calendar.getInstance(); |
| | | c.set(2000+year, month, day, hour, minute, second); |
| | | //System.out.println("测试开始时间"+Com.getDateTimeFormat(c.getTime(),Com.DTF_YMDhms)); |
| | | ////System.out.println("测试开始时间"+Com.getDateTimeFormat(c.getTime(),Com.DTF_YMDhms)); |
| | | return c.getTime(); |
| | | //return Com.get_DT_FromStr(year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second, Com.DTF_YMDhms); |
| | | } |
| | |
| | | |
| | | public void setDataInf(byte[] buf,FboDataHeadStop fboHeadStop) { |
| | | if(buf.length < BYTE_LEN) { |
| | | System.out.println("头部数据长度异常"); |
| | | //System.out.println("头部数据长度异常"); |
| | | return; |
| | | } |
| | | ByteBuffer bf = ByteBuffer.allocate(buf.length); |
| | |
| | | batt_std_cte = (float) ComBase.changeShortToInt(bf.getShort())/10; //标称电导 2 |
| | | batt_mon_num = ComBase.changeShortToInt(bf.getShort()); //单体数量 1 |
| | | batt_mon_vol = (float) ComBase.changeShortToInt(bf.getShort())/10; //单体电压 0.1 2 =100 |
| | | //System.out.println("单体电压:"+batt_mon_vol); |
| | | TestStartTime.setDateTime(bf);; //放电开始的时间 6 |
| | | testStartTime = TestStartTime.getFBODateTime(); |
| | | Device = ComBase.changeShortToInt(bf.getShort()); //仪表类型 未使用 1 |
| | | //System.out.println("仪表类型:"+getDeviceType(Device)); |
| | | DataVersion = ComBase.changeShortToInt(bf.getShort()); //数据版本 1 |
| | | DataType = ComBase.changeByteToInt(bf.get()); //数据类型;0xFD表示放电,0xFC表示充电 1 |
| | | HourRate = ComBase.changeByteToInt(bf.get()); //小时率 未使用 1 |
| | |
| | | MVLLimitCount = ComBase.changeShortToInt(bf.getShort()); //单体下限个数 未使用 2 |
| | | for(int i=0;i<module_mon_num.length;i++) { |
| | | module_mon_num[i] = ComBase.changeShortToInt(bf.getShort()); //每个组压模块单体节数 目前只用5个 20 |
| | | //System.out.println((i+1)+":单体数目:"+module_mon_num[i]); |
| | | } |
| | | GrpVol_H_Limit = (float) ComBase.changeShortToFloat(bf.getShort())/10; //组端电压上限 2 |
| | | GrpVol_L_Limit = (float) ComBase.changeShortToFloat(bf.getShort())/10; //组端电压下限 2 |
| | |
| | | for(int i =0;i<StandBy.length;i++) { |
| | | StandBy[i] = ComBase.changeShortToInt(bf.getShort()); //保留备用 20 179 |
| | | } |
| | | //System.out.println(this); |
| | | |
| | | |
| | | fboHeadStop.setFboStopData(bf); |
| | | //System.out.println("avg_curr:"+avg_curr); |
| | | //realcap = BattCapFactory.GetMonomerCap(STDCap,HourRate, TestCap, SMaxVol[0], MonomerVol, SMinVol[0], BattCapFactory.CapType_Real); |
| | | } |
| | | |
| | | |
| | | private void checkBattBrand() { |
| | | byte[] batt_brand_tmp = new byte[batt_brand_len]; |
| | | System.arraycopy(this.batt_brand, 0, batt_brand_tmp, 0, batt_brand_tmp.length); |
| | | //System.arraycopy(this.batt_brand, 0, batt_brand_tmp, 0, batt_brand_tmp.length); |
| | | this.battBrandStr = new String(batt_brand_tmp); |
| | | //System.out.println(this.battBrandStr); |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | public void checkBattName() { |
| | | byte[] batt = new byte[battname_len]; |
| | | System.arraycopy(this.battname, 0, batt, 0, batt.length); |
| | | //System.arraycopy(this.battname, 0, batt, 0, batt.length); |
| | | this.battNameStr = new String(batt); |
| | | //System.out.println(this.battNameStr); |
| | | } |
| | | |
| | | public void checkBattDate() { |
| | | byte[] date = new byte[batt_date_len]; |
| | | System.arraycopy(this.batt_date, 0, date, 0, date.length); |
| | | //System.arraycopy(this.batt_date, 0, date, 0, date.length); |
| | | this.batt_date_str = new String(date); |
| | | //System.out.println(this.batt_date_str); |
| | | } |
| | | |
| | | public String getDeviceType(int device) { |