許燕
摘要:以往的汽車儀表系統(tǒng)內(nèi)部都是由機(jī)械指針構(gòu)成,因此在使用時(shí)容易出現(xiàn)信息顯示不全的問題,無法滿足實(shí)際使用的需求。因此設(shè)計(jì)出更具智能感和實(shí)際使用性地電動(dòng)汽車儀表系統(tǒng)就顯得尤為重要。本文所提到的是一種以嵌入式系統(tǒng)為主要構(gòu)成,以數(shù)字液晶顯示屏為顯示器的汽車儀表系統(tǒng)。該系統(tǒng)將微處理器作為中心控制部分,日常工作是收集電動(dòng)汽車的基本信息,例如電池溫度和行駛速度等數(shù)據(jù)都會(huì)被很好的采集和保存,并借助數(shù)字液晶顯示屏進(jìn)行數(shù)據(jù)播放。并對(duì)其進(jìn)行了實(shí)際測(cè)試,證明其擁有更加優(yōu)秀的顯示效果和可操作性。
關(guān)鍵詞:stm32;電動(dòng)汽車儀表系統(tǒng);設(shè)計(jì)關(guān)鍵技術(shù)
0 ?引言
近年來,電子技術(shù)得到了突飛猛進(jìn)的發(fā)展,其中傳感器和元器件的快速發(fā)展,也為電動(dòng)汽車儀表系統(tǒng)的發(fā)展提供了相當(dāng)大的助力。以前大部分電動(dòng)汽車儀表系統(tǒng)都是由兩部分構(gòu)成,即插接顯示屏和量程顯示屏,配備數(shù)字液晶顯示屏的極少,只在進(jìn)行展示的概念車上出現(xiàn)過。近年來,數(shù)字液晶顯示屏的制作技術(shù)越發(fā)完善,價(jià)格也有所下降,搭配嵌入式系統(tǒng)的開發(fā),為基于stm32是電動(dòng)汽車儀表系統(tǒng)設(shè)計(jì)提供了基礎(chǔ)保障。相較于傳統(tǒng)汽車,駕駛?cè)藛T在駕駛電動(dòng)汽車時(shí)往往需要更多的輔助信息,這就要求電動(dòng)汽車的儀表系統(tǒng)功能必須具有全面性,且安放的位置要適當(dāng),駕駛員獲取路況和駕駛信息時(shí)更加方便。液晶顯示屏的研發(fā)為該項(xiàng)技術(shù)的發(fā)展提供了基礎(chǔ)保障,也是該系統(tǒng)中應(yīng)用的一種關(guān)鍵技術(shù)。
1 ?硬件設(shè)計(jì)及關(guān)鍵技術(shù)
1.1 stm32的簡(jiǎn)介
Stm32是一種微型控制器,主要應(yīng)用于電動(dòng)汽車的儀表系統(tǒng)設(shè)計(jì)之中。因其擁有16位性能和諸多輔助功能,因此近年來得到了廣泛地應(yīng)用。其主要功能和工作性質(zhì)如下:
①stm32的工作頻率為32MHz,內(nèi)核選用的則是HCS12 CPU,確保其可以滿足工作需要。
②程序和數(shù)據(jù)的閃存功率分別設(shè)定為32kB和4kB,其中程序閃存卡擁有ECC功能,可對(duì)錯(cuò)誤的校正碼進(jìn)行識(shí)別。
③配備LCD控制器,可完成多段式工作,最多可完成40*4段字符的讀取工作。
④內(nèi)部配備步進(jìn)電機(jī)控制器,主要用于對(duì)電機(jī)失速進(jìn)行檢測(cè),確保其在發(fā)生故障時(shí)可以及時(shí)地被發(fā)現(xiàn)。
⑤16位定時(shí)器,該模塊的工作內(nèi)容是對(duì)產(chǎn)生的16位數(shù)據(jù)進(jìn)行捕捉和比對(duì),以此來完成脈沖累積。
⑥多功能ADC模塊,其8通道特性更具工作效率。
⑦SPI模塊,可起到連接作用,確保其他模塊之間可以相互通信。
1.2 系統(tǒng)結(jié)構(gòu)
基于stm32的電動(dòng)汽車儀表系統(tǒng)主要由六部分構(gòu)成,分別為總線接口、信號(hào)收集器、步進(jìn)電機(jī)控制器、LCD控制器、LED顯示器和報(bào)警系統(tǒng)。其集體結(jié)構(gòu)如圖1所示。
從硬件結(jié)構(gòu)圖中我們可以看出,其具體構(gòu)造是專門為電動(dòng)汽車儀表應(yīng)用而選取的。以步進(jìn)電機(jī)舉例,4個(gè)步進(jìn)電機(jī)組可以完成電動(dòng)汽車行駛車速、電機(jī)運(yùn)行功率、電流量以及電壓的指針指示工作。LCD控制器則是負(fù)責(zé)總里程數(shù)和故障信息的顯示,方便駕駛者進(jìn)行觀察和掌握數(shù)據(jù),產(chǎn)生的數(shù)據(jù)借助CAN總線進(jìn)行獲取和收集。
1.3 CAN總線模塊
相較于其他種類的總線,CAN總線模塊更具靈活性和穩(wěn)定性,因此被廣泛地應(yīng)用到了電動(dòng)汽車儀表系統(tǒng)的設(shè)計(jì)之中。該系統(tǒng)中應(yīng)用的CAN總線模塊由位處理器、總控制器和信息收發(fā)器構(gòu)成??偩€模塊可以借助控制單元來完成對(duì)分系統(tǒng)的控制,各個(gè)分系統(tǒng)之間的數(shù)據(jù)傳輸可獨(dú)立完成,互不影響,與此同時(shí),各分系統(tǒng)中的數(shù)據(jù)傳送頻率各不相同,這一特性可以充分地提升CAN總線模塊的工作效率。本系統(tǒng)中應(yīng)用到的CAN總線模塊是由TI公司研發(fā)并生產(chǎn)的,型號(hào)為VP230。使用時(shí)可以將VDD接口連接電源,電壓強(qiáng)度為3.3V,VSS接口接地確保使用安全性。
1.4 步進(jìn)電機(jī)模塊
步進(jìn)電機(jī)模塊的主要工作內(nèi)容是向駕駛員提供車輛行駛速度和電機(jī)轉(zhuǎn)速兩項(xiàng)數(shù)據(jù),駕駛員通過指針運(yùn)動(dòng)軌跡的變化來判定數(shù)值,其運(yùn)行穩(wěn)定與否也直接影響到了電動(dòng)汽車儀表系統(tǒng)的運(yùn)轉(zhuǎn)。該系統(tǒng)中選用的步進(jìn)電機(jī)型號(hào)為VID29,與之配合的驅(qū)動(dòng)芯片型號(hào)為VID66-06。在固定脈沖值的沖擊下,步進(jìn)電機(jī)運(yùn)行速度可達(dá)600°/s。
1.5 LCD液晶顯示器
本文提到的電動(dòng)汽車儀表系統(tǒng)中選,3.2寸LCD液晶顯示屏性能優(yōu)渥,型號(hào)為IL9320,分辨率為240*320。因其自身帶有262144中色彩芯片,所以色彩顯示度可達(dá)到16位真彩。源極和柵極的驅(qū)動(dòng)路數(shù)可分別達(dá)到720和320,且自帶內(nèi)存容量,存儲(chǔ)量高達(dá)172800字節(jié)。在儀表系統(tǒng)運(yùn)行時(shí),微控制器可以借助FSMC接口來啟動(dòng)ILI9320控制器。DMA在使用時(shí)無需借助CPU的幫助,可以直接完成各存儲(chǔ)器之間的數(shù)據(jù)傳送,這一特性也極大地減少了CPU的工作量,可以留有更多地資源來確保其他程序正常進(jìn)行。LCD液晶顯示器可以幫助駕駛員更加清楚地獲取汽車在運(yùn)行過程中產(chǎn)生的參數(shù),圖表的顯示形式更具直觀性。產(chǎn)生的參數(shù)會(huì)通過串口直接在液晶顯示器上展示出來。
2 ?軟件設(shè)計(jì)及關(guān)鍵技術(shù)
2.1 軟件流程設(shè)計(jì)
因?yàn)樵撾妱?dòng)汽車儀表系統(tǒng)中沒有操作系統(tǒng),因此該軟件設(shè)計(jì)中融入了循環(huán)功能,其中主循環(huán)體負(fù)責(zé)的是主體工作,中斷功能對(duì)應(yīng)的則是驅(qū)動(dòng)管理方面。
2.2 CAN總線模塊
CAN總線在進(jìn)行數(shù)據(jù)傳送時(shí),回挑選優(yōu)先級(jí)別高的數(shù)據(jù)先行傳送,而數(shù)據(jù)的優(yōu)先級(jí)等級(jí)主要受標(biāo)識(shí)符和發(fā)送順序決定。根據(jù)CAN總線的工作要求,當(dāng)確保接受數(shù)據(jù)之后,標(biāo)識(shí)符會(huì)對(duì)所接受的數(shù)據(jù)進(jìn)行一定的過濾和篩選,只有通過過濾標(biāo)準(zhǔn)的數(shù)據(jù)才可被判定為有效數(shù)據(jù)。在進(jìn)行程序設(shè)定時(shí),波特率的選擇是要被特別關(guān)注的,在選取了適當(dāng)?shù)夭ㄌ芈屎螅到y(tǒng)中的CAN總線模塊才可以用于個(gè)模塊間的數(shù)據(jù)傳輸。在正式使用之前,需要對(duì)CAN總線模塊進(jìn)行初始化,其中包含CAN寄存器和波特率等多項(xiàng)數(shù)值的初始化,早初始化完成后,CAN總線模塊才能開始正常的運(yùn)行和工作。
2.3 步進(jìn)電機(jī)模塊
在電動(dòng)汽車儀表系統(tǒng)運(yùn)行時(shí),車輛的行使速度和發(fā)動(dòng)機(jī)的轉(zhuǎn)動(dòng)頻率都是通過指針的轉(zhuǎn)動(dòng)幅度來表示的,通電后,電流會(huì)對(duì)步進(jìn)電機(jī)提供持續(xù)穩(wěn)定的脈沖,來確保指針可以正常轉(zhuǎn)動(dòng),所以也可以通過記錄指針的轉(zhuǎn)動(dòng)速度來判定其所接收的脈沖數(shù)值。需要注意的是,在電動(dòng)汽車儀表系統(tǒng)啟停時(shí)受其慣性較大的影響,并不能接受頻率高的脈沖,因此要進(jìn)行適當(dāng)?shù)乜刂坪脱訒r(shí),以此來防止數(shù)據(jù)丟失和電機(jī)的正常運(yùn)行。電動(dòng)汽車儀表盤車速表達(dá)值最高為240km/h,羅盤可轉(zhuǎn)動(dòng)角度為260°,通過計(jì)算我們可以得出,1km/h相對(duì)的是13/12°,驅(qū)動(dòng)脈沖數(shù)為13,其關(guān)系圖如表1所示。
2.4 儀表盤圖形顯示界面
作為一款圖形支持軟件,GUI的安裝方式為嵌入式,可為L(zhǎng)CD提供接口,可以提升該應(yīng)用的工作效率。GUI因其較高的適用性,無論是使用在單任務(wù)或多任務(wù)應(yīng)用中都十分合適,可匹配專用或?qū)崟r(shí)的操作軟件,使用時(shí)不受控制器尺寸的影響。GUI軟件在設(shè)計(jì)過程中采用的是模塊化的行使,具有層次豐富的有點(diǎn)。以其中的驅(qū)動(dòng)程序?yàn)槔?,可以完成?duì)LCD內(nèi)部的訪問。因?yàn)镚UI內(nèi)部的程序均有C語言設(shè)計(jì)而成,所以其實(shí)用性非常強(qiáng),幾乎可以匹配市面上所有常用的CPU。因GUI內(nèi)部配備了顏色管理器,所以無論是黑白或彩色的LCD程序都可以選擇該GUI進(jìn)行輔助。與此同時(shí)還附帶了相應(yīng)的窗口管理器和圖形庫,該圖形庫具有可拓展性,在應(yīng)用的RAM較小時(shí),仍可實(shí)現(xiàn)窗口顯示。需要注意的是GUI軟件只能完成圖形界面的設(shè)計(jì)工作,該設(shè)計(jì)工作只限于軟件設(shè)計(jì),所以該系統(tǒng)只能在計(jì)算機(jī)上完成仿真實(shí)驗(yàn)。若想在硬件上也完成仿真實(shí)驗(yàn),則需要借助STM32開發(fā)板,以此來完成整個(gè)電動(dòng)汽車儀表系統(tǒng)的優(yōu)化工作。其具體流程圖如圖2所示。
3 ?結(jié)束語
該電動(dòng)汽車儀表系統(tǒng)選用stm32F103ZET6作為主要控制器,將LCE顯示器與指針進(jìn)行組合,可以更加直觀地為駕駛員顯示車輛行駛速度、水箱溫度、電機(jī)轉(zhuǎn)速等運(yùn)行參數(shù),還可借助CAN總線完成不同模塊的通信工作。由于該儀表系統(tǒng)運(yùn)用的是嵌入式的安裝方式,所以還可以將GPS或其他影音娛樂軟件嵌入其中,為駕駛者在行車時(shí)帶來更多地便利和娛樂。因此該電動(dòng)汽車儀表系統(tǒng)因其較強(qiáng)的實(shí)用性和多樣性具有良好的發(fā)展前景。
參考文獻(xiàn):
[1]羅峰.孫澤昌.汽車CAN總線系統(tǒng)原理、設(shè)計(jì)與應(yīng)用[J].北京:電子工業(yè)出版社,2011.
[2]閆哲銘,王建,王啟慧.基于Luminary LM3S8962的汽車數(shù)字儀表系統(tǒng)設(shè)計(jì)[J].汽車工程,2010.
[3]喻金錢,喻斌.STM32系列ARM Cortex-M3核微控制器開發(fā)與應(yīng)用[J].清華大學(xué)出版社,2011.