import N_TO_10H from './N_TO_10H';
|
|
/**
|
* 获取剩余容量/实际容量
|
*
|
* @param {[Number]} STDAH 标称容量
|
* @param {[Number]} HourRate 放电小时率
|
* @param {[Number]} SumAH 测试容量
|
* @param {[Number]} MaxMonomerVol 单体电压最大值
|
* @param {[Number]} MonomerVol 单体电压最大值
|
* @param {[Number]} MonomerVolType 电池标称电压
|
* @param {[Number]} CapType 容量类型(定值是常量)(1:实际容量,0剩余容量)
|
*
|
* @return {[Number]} [return description]
|
*/
|
function GetMonomerCap(STDAH, HourRate, SumAH, MaxMonomerVol, MonomerVol, MonomerVolType, CapType) {
|
if ((MaxMonomerVol - MonomerVolType * 0.9) <= 0)
|
return 0;
|
if (SumAH < 0)
|
SumAH *= (-1);
|
let tmp_cap;
|
tmp_cap = MonomerVol - MonomerVolType * 0.9;
|
tmp_cap *= (STDAH - SumAH * N_TO_10H(HourRate));
|
let dt_vol = MaxMonomerVol - MonomerVolType * 0.9;
|
if (dt_vol < 0.01)
|
dt_vol = 0.01;
|
tmp_cap = tmp_cap / dt_vol;
|
if (tmp_cap < 0)
|
tmp_cap = 0;
|
|
if (CapType == 0)
|
return tmp_cap;
|
else if (CapType == 1)
|
return (tmp_cap + SumAH * N_TO_10H(HourRate));
|
else
|
return ((tmp_cap + SumAH * N_TO_10H(HourRate)) * 100 / STDAH);
|
}
|
|
export default GetMonomerCap;
|