MSP430單片機(jī)為核心的電子汽車限速器的設(shè)計方案
為了滿足上述功能需求,限速器的核心本設(shè)計選用具有強(qiáng)大功能的MSP430F169單片機(jī),其內(nèi)置有高速的12位ADC和DAC,能單片實(shí)現(xiàn)限速器的功能,無須再擴(kuò)展外部模塊,即可提高系統(tǒng)運(yùn)行的可靠性,降低系統(tǒng)成本,非常符合限速器的功能需求。
實(shí)現(xiàn)限速器功能的主要模塊分析如下:
(1)信號處理單元
油門踏板傳感器實(shí)際上是一個角度傳感器,可提取瞬間油門踏板的位置信號,并將其轉(zhuǎn)化為電壓信號傳遞給發(fā)動機(jī)控制器。以磁阻式油門踏板傳感器為例,為了將角度變化轉(zhuǎn)化為電壓信號,磁阻元件往往做在同一塊基片上接成三端式結(jié)構(gòu),且在片上一定高度處放一半圓形的磁鋼,其結(jié)構(gòu)如圖5所示。當(dāng)主軸帶動磁鋼旋轉(zhuǎn)時,磁阻元件MR1、MR2的電阻值隨通過它們的磁通量Φ的變化而變化,從而有電壓信號從兩個磁阻元件中點(diǎn)輸出,經(jīng)過后面信號處理電路對此輸出的電壓信號進(jìn)行放大。通過調(diào)節(jié)后級放大電路的放大倍數(shù),可以得到所需要的、大小合適的電壓信號,其等效電路如圖6所示[1]。
根據(jù)油門踏板傳感器的工作原理,限速器信號處理原理圖如圖7所示[2]。踏板傳感器輸出的電壓信號經(jīng)過運(yùn)算放大器降低輸出阻抗,然后輸入到MSP430F169的ADC輸入腳A3,利用MSP430F169內(nèi)部的12位ADC完成模數(shù)轉(zhuǎn)換,實(shí)現(xiàn)模擬信號的采集。限速器將踏板傳感器的電信號采集后,用IIR濾波算法對其進(jìn)行濾波,進(jìn)行自學(xué)習(xí)算法計算、處理后,得到汽車行駛速度Vx,并與設(shè)定的限速值Vm比較,以比較的結(jié)果決定輸出模擬信號輸出的大小。輸出信號通過MSP430F169的D/A輸出引腳DAC0輸出,利用MSP430F169內(nèi)部的12位DAC實(shí)現(xiàn)數(shù)模轉(zhuǎn)換,并通過運(yùn)算放大器提升輸出模擬信號的驅(qū)動能力。
(2)語音報警單元
語音報警原理圖如圖8所示。為了保證行駛的安全性和平穩(wěn)性,必須在汽車停止?fàn)顟B(tài)下才能啟動限速器或關(guān)閉限速器,因此配有語音報警器,以起到有效的提醒作用。該限速器使用帶功放的ML22865語音芯片,其芯片的SCL、SDA、(CBUSYB)腳分別接至MSP430F169的I/O口P5.2~P5.4,報警器的SPM、SPP腳接揚(yáng)聲器。
(3)數(shù)據(jù)存儲單元
限速器的數(shù)據(jù)存儲原理圖如圖9所示。限速器要能設(shè)定速度上限值,以及提供給自學(xué)習(xí)算法所需的大量的存儲空間,因此必須具備數(shù)據(jù)存儲功能,本設(shè)計使用24LC512存儲器。
(4)鍵盤和顯示單元
利用MSP430F169的P3.4~P3.7實(shí)現(xiàn)4個獨(dú)立按鍵,功能分別為限速器開關(guān)鍵、數(shù)值增加鍵、數(shù)值減少鍵以及確認(rèn)鍵。顯示單元使用4個8段數(shù)碼管顯示,顯示4位的限速值。顯示數(shù)據(jù)通過MSP430F169的P1口提供。MSP430F169的P2.0~P2.3口作為數(shù)碼管的控制口,為了節(jié)省能耗,數(shù)碼管只有在按下鍵盤時才點(diǎn)亮,當(dāng)30 s內(nèi)不再操作鍵盤時數(shù)碼管熄滅。
3 限速器的軟件設(shè)計
限速器的軟件設(shè)計流程圖如圖10所示。為了保證行駛的安全性和平穩(wěn)性,必須在汽車停止?fàn)顟B(tài)下才能啟動或關(guān)閉限速器。限速器工作過程如下:通過按鍵中斷程序判斷是否有啟動或關(guān)閉限速器的按鍵,如果有按鍵信號,限速器根據(jù)主程序采集的踏板傳感器電信號,判斷是否有油門踏板動作,如果有踩下油門踏板,語音報警,此操作無效;如果無踏板動作,再次提醒是否處于行駛狀態(tài),并且設(shè)置5 s延時,并再次按下該按鍵,才能將限速器開啟或關(guān)閉。如果判斷是關(guān)閉限速器按鍵,則關(guān)閉限速器,并設(shè)置關(guān)閉狀態(tài),且將該狀態(tài)信息傳遞給主程序;如果是啟動限速器,則開啟限速器工作,并設(shè)置開機(jī)狀態(tài),且將該狀態(tài)信息傳遞給主程序。在主程序循環(huán)中,首先采集踏板傳感器信號并通過IIR濾波判斷是否有踏板動作并將該信息反饋給鍵盤中斷程序,然后判斷是否有設(shè)置速度上限值按鍵。如果有,則設(shè)置相應(yīng)的速度值Vm,并存儲在存儲器中;如果沒有,則讀入踏板傳感器的電信號A/D值Ux,Ux通過自學(xué)習(xí)算法得出行駛速度值Vx。Vx與Vm比較,如果VxVm,則Vy=Vx,通過D/A輸出Ux作為ECU的輸入信號;如果Vx≥Vm,則Vy=Vm,將設(shè)定的限速值Vm換算成對應(yīng)的傳感器電信號Um,通過D/A輸出Um作為ECU的輸入信號。
評論