方向盤轉(zhuǎn)向角傳感器的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:通過對(duì)方向盤轉(zhuǎn)向角傳感器的分析,設(shè)計(jì)了轉(zhuǎn)向角傳感器的數(shù)據(jù)采集系統(tǒng),并且設(shè)計(jì)了相應(yīng)的外圍輔助電路,通過ARM讀取傳感器中的數(shù)據(jù),對(duì)方向盤轉(zhuǎn)向角,方向盤轉(zhuǎn)向角速度以及轉(zhuǎn)動(dòng)方向這三個(gè)參數(shù)進(jìn)行數(shù)據(jù)采集。這些參數(shù)為汽車自適應(yīng)前照燈控制,以及助力轉(zhuǎn)向系統(tǒng)提供了方向盤轉(zhuǎn)向角相關(guān)信息,為了便于對(duì)采集到的數(shù)據(jù)進(jìn)行分析,方向盤轉(zhuǎn)向角傳感器采集到的數(shù)據(jù)通過串口送到上位機(jī)上,并且利用Matlab對(duì)采集的數(shù)據(jù)進(jìn)行分析處理。
關(guān)鍵詞:方向盤轉(zhuǎn)向角傳感器;數(shù)據(jù)采集;ARM;Matlab
自適應(yīng)前照明系統(tǒng)(AFS),是一種能適應(yīng)各種不同環(huán)境條件的智能前照燈系統(tǒng),獲得汽車在轉(zhuǎn)彎處的參數(shù),如:轉(zhuǎn)向角,角速度以及轉(zhuǎn)向,是汽車前向燈自適應(yīng)控制的前提條件。為了獲得這些參數(shù),采用了方向盤轉(zhuǎn)向角傳感器,它能測(cè)試出方向盤的轉(zhuǎn)向角,轉(zhuǎn)向角速度以及轉(zhuǎn)向三個(gè)參數(shù),這幾個(gè)參數(shù)在一定程度上能反映汽車在轉(zhuǎn)彎處的行駛狀態(tài),準(zhǔn)確地獲取這些參數(shù)具有重要意義。因而設(shè)計(jì)了基于ARM的數(shù)據(jù)采集系統(tǒng)。在這個(gè)采集系統(tǒng)中方向盤轉(zhuǎn)向角傳感器采集到的數(shù)據(jù)通過CAN總線傳送到ARM中,并對(duì)其進(jìn)行相應(yīng)數(shù)據(jù)處理。
1 方向盤轉(zhuǎn)向角傳感器數(shù)據(jù)采集系統(tǒng)的結(jié)構(gòu)框圖
方向盤轉(zhuǎn)向角傳感器數(shù)據(jù)采集系統(tǒng)包括轉(zhuǎn)向角傳感器,CAN總線和ARM微控制器三個(gè)部分。方向盤轉(zhuǎn)向角傳感器是通過CAN總線的方式傳送采集到的信號(hào),控制器采用的是ARM微處理器,系統(tǒng)具體的結(jié)構(gòu)框圖如圖1所示。
2 系統(tǒng)的硬件設(shè)計(jì)
2.1 ARM簡(jiǎn)介
ARM是指精簡(jiǎn)指令集的微處理器,具有高性能、廉價(jià)、耗能低的特點(diǎn),在各個(gè)領(lǐng)域得到了廣泛的應(yīng)用。該系統(tǒng)采用的是ARM7系列的LPC21 19微控制器,LPC2119是基于一個(gè)支持實(shí)時(shí)仿真和跟蹤的16/32位ARM7TDMI-S CPU的微控制器,并帶有128 KB嵌入的高速FLASH存儲(chǔ)器。指令支持32位的ARM模式與16位的Thumb模式。128位寬度的存儲(chǔ)器接口和獨(dú)特的加速結(jié)構(gòu)使32位代碼的ARM方式能夠在最大時(shí)鐘速率下運(yùn)行。對(duì)代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用16位Thumb模式將代碼規(guī)模降低超過30%,而性能的損失卻很小,LPC2119非常小的64腳封裝、極低的功耗、多個(gè)32位定時(shí)器、4路10位ADC、2路CAN、PWM通道、46個(gè)GPIO以及多達(dá)9個(gè)外部中斷使它們特別適用于汽車、工業(yè)控制應(yīng)用以及醫(yī)療系統(tǒng)和容錯(cuò)維護(hù)總線。由于內(nèi)置了寬范圍的串行通信接口,它們也非常適合于通信網(wǎng)關(guān)、協(xié)議轉(zhuǎn)換器以及其他各種類型的應(yīng)用。
2.2 方向盤轉(zhuǎn)向角傳感器介紹
方向盤轉(zhuǎn)向角傳感器前期安裝在轉(zhuǎn)向盤軸上,轉(zhuǎn)向軸帶動(dòng)編碼盤的轉(zhuǎn)動(dòng),在發(fā)光二極管照射下,形成或明或暗的圖案,通過感光元件轉(zhuǎn)換成相應(yīng)的電信號(hào),經(jīng)過整形濾波后得到一系列的脈沖信號(hào),通過單片機(jī)轉(zhuǎn)換為相對(duì)應(yīng)的數(shù)字信號(hào),并通過CAN控制器發(fā)送出去,能提供方向盤轉(zhuǎn)向角的絕對(duì)位置。工作電壓是12 V,數(shù)據(jù)是通過CAN發(fā)送出去的,輸出信號(hào)為方向盤轉(zhuǎn)角,方向盤的轉(zhuǎn)動(dòng)方向以及方向盤轉(zhuǎn)的轉(zhuǎn)動(dòng)角速度。
2.3 控制器的電源電路與CAN收發(fā)器電路的設(shè)計(jì)
數(shù)據(jù)采集系統(tǒng)的硬件設(shè)計(jì)包括電源的設(shè)計(jì),轉(zhuǎn)向角傳感器需要12 V電源供電,這部分由電源直接提供,LPC2119的控制器需要的5 V電源通過7805穩(wěn)壓芯片把12 V轉(zhuǎn)化為5 V,7805穩(wěn)壓芯片能夠把12 V的電壓變?yōu)? V,電容C1,C2,C3起到濾波的作用。具體電路如圖2所示。
由于LPC2219集成了CAN控制器,在此基礎(chǔ)上還必須接上一個(gè)CAN的收發(fā)器,才能正常的收發(fā)數(shù)據(jù),它實(shí)現(xiàn)的是一個(gè)電平轉(zhuǎn)換與信號(hào)差分傳送的轉(zhuǎn)換的功能。收發(fā)器采用的是PCA82C250控制器,具有差分的形式傳送數(shù)據(jù),寬范圍的共模干擾,抗電磁干擾強(qiáng)等特點(diǎn)。具體電路如圖3所示。
3 系統(tǒng)的軟件設(shè)計(jì)及調(diào)試
系統(tǒng)的軟件設(shè)計(jì)包括對(duì)轉(zhuǎn)向角傳感器接收程序的設(shè)計(jì),即CAN總線的接收程序的設(shè)計(jì)(轉(zhuǎn)向角傳感器是通過CAN接口把數(shù)據(jù)傳送出來的),以及在上位機(jī)上利用Matlab對(duì)接收來的數(shù)據(jù)進(jìn)行處理的相關(guān)程序設(shè)計(jì)。
3.1 CAN總線的接收程序設(shè)計(jì)
CAN總線是目前在汽車上應(yīng)用得最廣泛的現(xiàn)場(chǎng)總線之一,是目前發(fā)展比較成熟的總線。在各個(gè)領(lǐng)域已經(jīng)得到了廣泛的應(yīng)用,特別是在汽車領(lǐng)域,它能夠?qū)崿F(xiàn)點(diǎn)到點(diǎn)以及一點(diǎn)到多點(diǎn)的通信,能夠?qū)崿F(xiàn)系統(tǒng)數(shù)據(jù)的共享。轉(zhuǎn)向角傳感器數(shù)據(jù)輸出接口為CAN接口。LPC2219控制器中具有CAN的控制器,在這個(gè)系統(tǒng)中CAN的程序設(shè)計(jì)包括:CAN的初始化程序設(shè)計(jì),CAN接收程序的設(shè)計(jì)。CAN接收方式有查詢式接收和中斷式接收,查詢式接收方式總是不停地查詢接收標(biāo)志位,對(duì)控制器來說這是種浪費(fèi),中斷式接收方式是當(dāng)接收到數(shù)據(jù)時(shí),控制器進(jìn)行中斷,沒有接收數(shù)據(jù)的時(shí)候ARM可以執(zhí)行其他的任務(wù),該系統(tǒng)采用的是中斷式接收方式。具體流程圖如圖4所示。
ARM微控制器接收到的數(shù)據(jù)通過串口來顯示,并將其保存在txt的文檔里,便于在Matlab中處理。具體部分?jǐn)?shù)據(jù)如下所示:
接收到的信息包括:其中CAN:00表示接收的CAN通道為CAN控制器1;FIF:08表示接收的是具有8個(gè)字節(jié)的數(shù)據(jù)擴(kuò)展幀;FID表示幀的ID號(hào);Dat表示接收到的數(shù)據(jù),如果是遠(yuǎn)程幀的話,則為0。
3.2 在上位機(jī)上對(duì)方向盤轉(zhuǎn)向角傳感器接收的數(shù)據(jù)進(jìn)行處理
ARM通過CAN總線把從轉(zhuǎn)向角傳感器接收的數(shù)據(jù)通過串口送到上位機(jī)上,并且以txt的格式存儲(chǔ)在上位機(jī)上,由于Matlab具有強(qiáng)大的數(shù)據(jù)處理及可視化功能,所以在上位機(jī)上利用Matlab對(duì)接收來的數(shù)據(jù)進(jìn)行處理。由于方向盤轉(zhuǎn)向角傳感器的數(shù)據(jù)是通過CAN總線以幀的形式進(jìn)行發(fā)送的,是一串十六進(jìn)制數(shù)字,分別代表的是轉(zhuǎn)向角傳感器采集到的方向盤轉(zhuǎn)角,轉(zhuǎn)角方向以及角速度,在實(shí)際應(yīng)用中需要對(duì)這些數(shù)據(jù)進(jìn)行分割,從中提取出方向盤的轉(zhuǎn)角,轉(zhuǎn)角方向以及角速度。其相應(yīng)的轉(zhuǎn)向角方向以及轉(zhuǎn)向角顯示結(jié)果如圖5所示。
圖5中橫坐標(biāo)N是采集的數(shù)據(jù)量,取了4 000個(gè)數(shù)據(jù)點(diǎn)。以采集第一個(gè)數(shù)據(jù)的時(shí)間為0時(shí)刻,以后每個(gè)數(shù)據(jù)點(diǎn)之間的時(shí)間間隔是10.3 ms,由于數(shù)據(jù)點(diǎn)比較多,橫坐標(biāo)只取了具有代表性的數(shù)據(jù)點(diǎn)。圖中縱坐標(biāo)分別代表的是方向盤轉(zhuǎn)向角傳感器轉(zhuǎn)角的方向和大小,用藍(lán)色的點(diǎn)表示轉(zhuǎn)角的大小(采用弧度制),紅色的曲線表示轉(zhuǎn)角的方向。方向盤轉(zhuǎn)向角的方向,順時(shí)針方向用1來表示,逆時(shí)針方向用0來表示,在Matlab中通過繪圖的方式把這些數(shù)據(jù)形象的顯示出來。
4 結(jié)論
本文通過對(duì)轉(zhuǎn)向角傳感器數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì),采集到了方向盤轉(zhuǎn)向角傳感器的轉(zhuǎn)向角,轉(zhuǎn)向角速度和方向三個(gè)參數(shù),并對(duì)采集到的數(shù)據(jù)進(jìn)行了相應(yīng)處理。經(jīng)分析表明,方向盤轉(zhuǎn)向角傳感器的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)是有效的、可行的,能為汽車前向燈自適應(yīng)控制提供準(zhǔn)確的方向盤轉(zhuǎn)向角相關(guān)參數(shù)信息。