張涌萍
摘 要:該文介紹了線性內插算法計算電池放電容量的編程技術,并給出了具體的實現代碼,利用該算法用戶可以方便估算電池容量。
關鍵詞:線性內插算法 電池容量 實現代碼
中圖分類號:TN86 文獻標識碼:A 文章編號:1674-098X(2014)03(b)-0008-02
已知某曲線函數的多個點,通過相鄰兩點求得線性函數,通過線性函數計算曲線的任意點,這個算法就是線性內插算法。
在電池管理中,需要通過對電池電流的積分運算來估算電池容量,但是不同的放電電流放出相同的電量時,電池實際容量的減少并不相同。一般情況下,設計人員會按不同的放電電流提供10個放電時間參數供用戶設置。這時需要用線性內插算法將這10個離散的點連續化以便按不同的放電電流估算電池容量。
本算法適用于上述情況和其他需要線性內插算法的場合。
1 設計方案
放電電流和放電時間的關系如(圖1)所示,在ACU監控模塊中通過10個參數(BT_PUB_DISCH_TIME01,BT_PUB_DISCH_TIME02,BT_PUB_DISCH_TIME03,BT_PUB_DISCH_TIME04, BT_PUB_DISCH_TIME05,BT_PUB_DISCH_TIME06,BT_PUB_DISCH_TIME07,BT_PUB_DISCH_TIME08, BT_PUB_DISCH_TIME09,BT_PUB_DISCH_TIME10)表示,這10個參數分別代表電池以0.1/0.2/0.3/0.4/0.5/0.6/ 0.7/0.8/0.9/1.0 C10放電時的放電時間,其中單位是C10(10小時放電率),可理解為額定容量。
現在需要根據已知條件,通過實際的放電電流和額定容量,求得容量計算所需的系數。
容量計算的公式是:
1.1 放電曲線存入數組
1.2 使用線性內插算法取得容量系數
以上算法的目的在于獲取計算電池放電容量所需的一個系數,當電池放電電流大于0.1C10小于1.0C10時,使用線性內插算法獲取相應的值。
但值得注意的時,當電池放電電流小于0.1C10時,函數則返回0.1C10電流所對應的值,當電池放電電流大于1.0C10時,函數則返回1.0 C10電流所對應的值。
2 結語
該文將線性內插算法應用于電池放電容量的計算中,并給出了具體的實現代碼,本文的算法不但可以估算電池容量,還適用于其他需要線性內插算法的場合。
參考文獻
[1] 王敬華,林萍,張清國.C語言程序設計教程[M].北京:清華大學出版社,2009.
[2] 修志剛,張慧康,李海林,等.UPS電池容量計算方法[J].現代建筑電氣,2013(11).
[3] 李練兵,崔志強,杜仲剛,等.鋰電池組可用剩余容量計算方法的研究[J].電池工業,2010(5).endprint
摘 要:該文介紹了線性內插算法計算電池放電容量的編程技術,并給出了具體的實現代碼,利用該算法用戶可以方便估算電池容量。
關鍵詞:線性內插算法 電池容量 實現代碼
中圖分類號:TN86 文獻標識碼:A 文章編號:1674-098X(2014)03(b)-0008-02
已知某曲線函數的多個點,通過相鄰兩點求得線性函數,通過線性函數計算曲線的任意點,這個算法就是線性內插算法。
在電池管理中,需要通過對電池電流的積分運算來估算電池容量,但是不同的放電電流放出相同的電量時,電池實際容量的減少并不相同。一般情況下,設計人員會按不同的放電電流提供10個放電時間參數供用戶設置。這時需要用線性內插算法將這10個離散的點連續化以便按不同的放電電流估算電池容量。
本算法適用于上述情況和其他需要線性內插算法的場合。
1 設計方案
放電電流和放電時間的關系如(圖1)所示,在ACU監控模塊中通過10個參數(BT_PUB_DISCH_TIME01,BT_PUB_DISCH_TIME02,BT_PUB_DISCH_TIME03,BT_PUB_DISCH_TIME04, BT_PUB_DISCH_TIME05,BT_PUB_DISCH_TIME06,BT_PUB_DISCH_TIME07,BT_PUB_DISCH_TIME08, BT_PUB_DISCH_TIME09,BT_PUB_DISCH_TIME10)表示,這10個參數分別代表電池以0.1/0.2/0.3/0.4/0.5/0.6/ 0.7/0.8/0.9/1.0 C10放電時的放電時間,其中單位是C10(10小時放電率),可理解為額定容量。
現在需要根據已知條件,通過實際的放電電流和額定容量,求得容量計算所需的系數。
容量計算的公式是:
1.1 放電曲線存入數組
1.2 使用線性內插算法取得容量系數
以上算法的目的在于獲取計算電池放電容量所需的一個系數,當電池放電電流大于0.1C10小于1.0C10時,使用線性內插算法獲取相應的值。
但值得注意的時,當電池放電電流小于0.1C10時,函數則返回0.1C10電流所對應的值,當電池放電電流大于1.0C10時,函數則返回1.0 C10電流所對應的值。
2 結語
該文將線性內插算法應用于電池放電容量的計算中,并給出了具體的實現代碼,本文的算法不但可以估算電池容量,還適用于其他需要線性內插算法的場合。
參考文獻
[1] 王敬華,林萍,張清國.C語言程序設計教程[M].北京:清華大學出版社,2009.
[2] 修志剛,張慧康,李海林,等.UPS電池容量計算方法[J].現代建筑電氣,2013(11).
[3] 李練兵,崔志強,杜仲剛,等.鋰電池組可用剩余容量計算方法的研究[J].電池工業,2010(5).endprint
摘 要:該文介紹了線性內插算法計算電池放電容量的編程技術,并給出了具體的實現代碼,利用該算法用戶可以方便估算電池容量。
關鍵詞:線性內插算法 電池容量 實現代碼
中圖分類號:TN86 文獻標識碼:A 文章編號:1674-098X(2014)03(b)-0008-02
已知某曲線函數的多個點,通過相鄰兩點求得線性函數,通過線性函數計算曲線的任意點,這個算法就是線性內插算法。
在電池管理中,需要通過對電池電流的積分運算來估算電池容量,但是不同的放電電流放出相同的電量時,電池實際容量的減少并不相同。一般情況下,設計人員會按不同的放電電流提供10個放電時間參數供用戶設置。這時需要用線性內插算法將這10個離散的點連續化以便按不同的放電電流估算電池容量。
本算法適用于上述情況和其他需要線性內插算法的場合。
1 設計方案
放電電流和放電時間的關系如(圖1)所示,在ACU監控模塊中通過10個參數(BT_PUB_DISCH_TIME01,BT_PUB_DISCH_TIME02,BT_PUB_DISCH_TIME03,BT_PUB_DISCH_TIME04, BT_PUB_DISCH_TIME05,BT_PUB_DISCH_TIME06,BT_PUB_DISCH_TIME07,BT_PUB_DISCH_TIME08, BT_PUB_DISCH_TIME09,BT_PUB_DISCH_TIME10)表示,這10個參數分別代表電池以0.1/0.2/0.3/0.4/0.5/0.6/ 0.7/0.8/0.9/1.0 C10放電時的放電時間,其中單位是C10(10小時放電率),可理解為額定容量。
現在需要根據已知條件,通過實際的放電電流和額定容量,求得容量計算所需的系數。
容量計算的公式是:
1.1 放電曲線存入數組
1.2 使用線性內插算法取得容量系數
以上算法的目的在于獲取計算電池放電容量所需的一個系數,當電池放電電流大于0.1C10小于1.0C10時,使用線性內插算法獲取相應的值。
但值得注意的時,當電池放電電流小于0.1C10時,函數則返回0.1C10電流所對應的值,當電池放電電流大于1.0C10時,函數則返回1.0 C10電流所對應的值。
2 結語
該文將線性內插算法應用于電池放電容量的計算中,并給出了具體的實現代碼,本文的算法不但可以估算電池容量,還適用于其他需要線性內插算法的場合。
參考文獻
[1] 王敬華,林萍,張清國.C語言程序設計教程[M].北京:清華大學出版社,2009.
[2] 修志剛,張慧康,李海林,等.UPS電池容量計算方法[J].現代建筑電氣,2013(11).
[3] 李練兵,崔志強,杜仲剛,等.鋰電池組可用剩余容量計算方法的研究[J].電池工業,2010(5).endprint