• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于單片機的電池管理系統設計

    基于單片機的電池管理系統設計

    作者: 時間:2011-11-09 來源:網絡 收藏

    2.4 模塊
    是整車與BMS之間、BMS主控制模塊和子模塊之間的信息橋梁。子模塊將采集到的單體電壓和溫度值通過CAN總線上傳給主控模塊,主控模塊通過CAN總線給子模塊下達均衡命令;主控模塊將電池參數發送給整車,整車控制器通過判斷決策能量分配。Freescale 9S12系列單片機已經集成CAN模塊MSCAN,外擴引腳CANTX和CANRX。還需要PCA82C250來作為驅動芯片,如圖7所示。

    f.JPG

    3 分布式的軟件設計
    軟件以CodeWarrior for HCS12V4.7為開發環境,采用C語言編寫,包括了主控制模塊和子模塊兩個部分的軟件設計。
    3.1 主控制模塊
    主控制模塊的任務主要有:A/D轉換與數據處理任務、整車CAN接收任務、整車CAN發送任務、系統監控任務、SOC與能量估算任務以及任務。中斷有:A/D采集中斷、定時器、CAN接收中斷。

    g.JPG
    如圖8所示,系統初始化工作完成后,軟件以模/數減法計數器的來確定系統的執行周期,計數周期為5 ms。在模/數計數器前一次程序中,選擇電壓采集通道,并查詢整車CAN接收;經5 ms在本次下溢中斷到來后,中斷服務程序進行A/D轉換的啟動,轉換完成進入A/D中斷,開啟其他任務的執行,如此循環交替進行。根據整車控制策略,CAN上的電池狀態數據每幀的刷新周期為10 ms,因此設置下溢中斷的時鐘節拍為5ms,相應地,以上所有任務的執行周期均為10 ms。
    3.2 子模塊
    子模塊的任務主要有:A/D轉換與數據處理任務、內部CAN接收任務、內部CAN發送任務、以及均衡執行任務。中斷有:A/D采集中斷、定時器下溢中斷。

    h.JPG
    如圖9所示,軟件以模/數減法計數器的下溢中斷來確定系統的執行周期,計數周期為2.5 ms。在模/數計數器前一次下溢中斷程序中,選擇電壓采集通道,并查詢內部CAN接收;經2.5 ms在本次下溢中斷到來后,中斷服務程序進行A/D轉換的啟動,轉換完成進入A/D中斷,開啟其他任務的執行,如此循環交替進行。其中,根據協議,內部CAN發送任務為保證周期為10 ms,要間隔一次A/D轉換后才啟動,其他任務執行周期則為5 ms。

    4 結論
    基于Freescale單片機的分布式,用集成A/D轉換模塊實現實時數據采集,同時均衡控制功能還解決了電池單體電壓不均衡造成的過充問題。Freescale 9S12系列單片機強大的數據處理功能,豐富的外圍接口和良好的電磁兼容性滿足了混合動力汽車電池管理的所有要求,在實際中得到了良好的效果。


    上一頁 1 2 3 4 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 酉阳| 株洲市| 平度市| 广南县| 开江县| 兴仁县| 襄汾县| 建水县| 崇文区| 南乐县| 京山县| 涿鹿县| 含山县| 建始县| 汉源县| 河池市| 且末县| 西林县| 百色市| 清流县| 吴桥县| 大方县| 绩溪县| 仁布县| 富锦市| 广丰县| 丹阳市| 南充市| 额敏县| 花莲市| 杭州市| 海淀区| 军事| 浑源县| 孟连| 香港| 清河县| 正镶白旗| 弋阳县| 灵寿县| 伊宁市|