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





