ARM嵌入式汽車(chē)節能控制系統的設計
圖5 RS-232C與處理器的通信接口電路
系統軟件設計
在本系統中,主程序是整個(gè)程序的核心,擔負著(zhù)系統的運行、控制的主要任務(wù),需要對其控制流程進(jìn)行仔細考慮,以完成所需的控制要求。
在程序開(kāi)始時(shí),首先對系統進(jìn)行初步的初始化。之后,采集各種數據并判斷數據是否正常,如果正常,則顯示數據并等待中斷,根據中斷轉向相應的中斷服務(wù)子程序。如果數據不正常,則通過(guò)報警來(lái)提示用戶(hù)檢查數據,直到數據正常才執行其他程序。如果一切正常,且沒(méi)有剎車(chē)和啟動(dòng)等控制,則可以與其他設備進(jìn)行通信等操作。具體的流程見(jiàn)圖6所示?! ?
圖6 系統總程序流程圖
系統的抗干擾設計
要達到良好的系統控制效果需要在系統設計中非常注意它的抗干擾性和可靠性。本系統由于采用高速ARM作為核心處理器,它的高頻信號不僅容易受到干擾,而且也會(huì )成為系統的干擾源,因此有必要對整個(gè)系統,特別是ARM部分的抗干擾及保護做更多的處理。
硬件部分,控制系統的電源及功率驅動(dòng)部分抗干擾措施主要就是從防和抗兩方面入手。其總原則是:抑制或消除干擾源;切斷干擾對系統的耦合通道;降低系統對干擾信號的敏感性??垢蓴_設計的具體措施包括:隔離、接地、屏蔽、濾波等常用方法。
軟件部分,本系統的軟件主要采用了以下幾種軟件抗干擾設計:
軟件陷阱法
測試系統在遇到外界干擾時(shí),往往會(huì )導致運行程序進(jìn)入程序存儲器的空白區(即無(wú)指令區),這種現象叫做程序"跑飛"。于是在各子程序之間、各功能模塊之間和所有空白處,都寫(xiě)上連續3個(gè)空操作指令(nop),后接一無(wú)條件轉移指令,一旦程序跑飛到這些區域,就會(huì )自動(dòng)返回執行正常程序。
程序的冗余設計
在程序存儲器的空白區域,寫(xiě)入一些重要的數據表和程序作為備份,以便系統程序被破壞時(shí)仍有備份參數和程序維持系統正常工作。由于TMS320LF2407A的數據存儲以數據頁(yè)為基準,如果對不同數據頁(yè)的數據進(jìn)行操作而不指定相應的數據頁(yè),會(huì )導致程序跑飛。因此需要對程序未使用滿(mǎn)的數據頁(yè)進(jìn)行填充,防止數據頁(yè)混亂導致的系統誤操作。
加裝了能量回收再利用裝置后,當汽車(chē)在加速或重新起動(dòng)初期,可以利用存儲的高壓氣體驅動(dòng)汽車(chē),不需要燃料,可以較少汽車(chē)尾氣對環(huán)境的污染。因此,該裝置不僅可以節約能源,而且有利于環(huán)保。
評論