劉子英, 張 靖, 李中奇, 汪嬌嬌
(華東交通大學(xué) 電氣與自動(dòng)化工程學(xué)院,江西 南昌 330013)
抬頭顯示系統(tǒng)(head up display,HUD)又叫平視顯示系統(tǒng)[1],最初是應(yīng)用在戰(zhàn)斗機(jī)上的輔助作戰(zhàn)瞄準(zhǔn)鏡[2],采用光學(xué)反射原理,將目標(biāo)定位打點(diǎn)在駕駛艙正前方的組合玻璃上,飛行員通過這塊組合玻璃就可以知道是否瞄準(zhǔn)了攻擊目標(biāo),后來這項(xiàng)技術(shù)被引入到了汽車上,輔助司機(jī)駕駛。
有研究表明,列車駕駛過程中,司機(jī)的絕大部分視覺資源都投入到前方眺望上,90 %的注視時(shí)間都用于前方路線情況和列車信號(hào)燈等視覺刺激源的觀察上[3],列車運(yùn)行過程中,司機(jī)需要時(shí)刻注意車內(nèi)各種儀表、顯示器、車外情況。目前在司機(jī)室操控臺(tái)前方布置有ATP顯示器、TCMS顯示器、CIR顯示器、接近預(yù)警顯示屏、雙針壓力表、控制電壓表、BP壓力表等一些主要顯示器供司機(jī)觀察列車運(yùn)行的信息,然而司機(jī)需要頻繁低頭觀察顯示器和表盤上的信息,容易忽略前方的路況信息,形成安全隱患。此外,列車在運(yùn)行過程中,司機(jī)的視野會(huì)隨著速度的增加而逐漸縮小并集中,產(chǎn)生一種視覺隧道現(xiàn)象[4],這也會(huì)使得司機(jī)忽略掉一些重要的信息。由于目前還沒有將抬頭顯示系統(tǒng)應(yīng)用到列車司機(jī)駕駛室中,關(guān)于抬頭顯示系統(tǒng)在鐵路上的相關(guān)研究也比較少[5],而隨著鐵路不斷發(fā)展,對(duì)列車的運(yùn)行安全有了更高的要求,這也給司機(jī)駕駛提出了更高的挑戰(zhàn)。文獻(xiàn)[5]中提出了一種基于平視顯示系統(tǒng)的高速列車操作輔助方法,HUD在不同的駕駛階段顯示當(dāng)前任務(wù)所需要的輔助器件信息,并組織實(shí)施了人因?qū)嶒?yàn)來驗(yàn)證過分相時(shí)司機(jī)無需低頭既可查看相關(guān)的信息,但是并未對(duì)用于列車上的抬頭顯示系統(tǒng)結(jié)構(gòu)進(jìn)行設(shè)計(jì)。文獻(xiàn)[6]提出了采用AT89C51單片機(jī)作為車載抬頭顯示系統(tǒng)核心進(jìn)行硬件設(shè)計(jì)[6],但是AT89C51單片機(jī)的數(shù)據(jù)處理速度相對(duì)比較慢,對(duì)于高速行駛的列車來說,無法滿足實(shí)時(shí)處理采集到的數(shù)據(jù)。文獻(xiàn)[7]中采用DLP投影技術(shù)來設(shè)計(jì)汽車抬頭顯示系統(tǒng)[7],但是數(shù)碼光路處理器DLP存在“彩虹效應(yīng)”的缺陷,容易使人分心,而且成本較高。
本文針對(duì)上述問題設(shè)計(jì)了一種適用于列車的抬頭顯示系統(tǒng),以STM32作為主控制器,以列車CAN總線為例,采用透射式高溫多晶硅LCD作為像源對(duì)列車抬頭顯示系統(tǒng)進(jìn)行了設(shè)計(jì),采用計(jì)算機(jī)上的上位機(jī)隨機(jī)生成的速度信息發(fā)送到抬頭顯示系統(tǒng)上顯示,驗(yàn)證了本設(shè)計(jì)的可行性和實(shí)時(shí)性。
列車的抬頭顯示系統(tǒng)主要由信息處理及像源控制模塊、像源模塊、光學(xué)投影模塊(反射鏡、中繼面、合成器)、電源電路組成。信息處理及像源控制模塊通過列車總線獲取列車運(yùn)行時(shí)的信息,并提取出列車司機(jī)需要的重要信息,然后對(duì)這些信息進(jìn)行分析處理,以字符、圖像的形式發(fā)送至像源模塊上顯示,像源模塊的背光源經(jīng)準(zhǔn)直透鏡準(zhǔn)直后照射在液晶屏上,將液晶屏上的圖像信息轉(zhuǎn)換為平行光信號(hào)投射在反射鏡上,由反射鏡將像源上的平行光信號(hào)反射到中繼成像面上進(jìn)行成像,中繼成像面將反射鏡發(fā)射來的圖像進(jìn)行放大并矯正像差后將圖像信息反射到合成器上,再經(jīng)合成器反射進(jìn)入人眼,司機(jī)透過合成器即可查看到疊加在車外環(huán)境的行車信息的虛像。列車司機(jī)在保持平視前方的狀態(tài)下就能夠同時(shí)查看列車前方的環(huán)境和列車運(yùn)行時(shí)的一些重要信息。圖1為列車抬頭顯示系統(tǒng)的架構(gòu)圖。
圖1 列車抬頭顯示系統(tǒng)架構(gòu)
2.1.1 像源選取
現(xiàn)有投影顯示技術(shù)主要有陰極射線管CRT、液晶顯示器件LCD、硅基液晶LCOS、數(shù)碼光路處理器DLP等,但是陰極射線管CRT的驅(qū)動(dòng)電源電壓高、鏡像尺寸大、對(duì)磁場(chǎng)敏感;硅基液晶LCOS的對(duì)比度底、黑色上再現(xiàn)性不理想;數(shù)碼光路處理器DLP的核心部件DMD數(shù)字微鏡和小體積光源集成度高、成品率底;而LCD液晶屏具有技術(shù)發(fā)展成熟、體積較小、制造工藝簡(jiǎn)單、對(duì)比度高、色彩豐富、性能穩(wěn)定的優(yōu)點(diǎn)[8],因此,本設(shè)計(jì)采用了薄膜晶體管液晶顯示器TFT-LCD作為抬頭顯示系統(tǒng)的像源。
2.1.2 像源模塊設(shè)計(jì)
像源模塊主要由背光源、準(zhǔn)直透鏡、液晶屏組成。由電源電路驅(qū)動(dòng)背光源,背光源經(jīng)準(zhǔn)直透鏡組準(zhǔn)直后均勻照射在液晶屏上,將液晶屏上的信息轉(zhuǎn)換為平行光信號(hào),該平行光信號(hào)投影到反射鏡上。
液晶屏的選擇綜合考慮了像源要求,如色彩豐富度、尺寸大小、對(duì)比度、透光率、分辨率等方面因素,選用TFT-LCD為SONY公司的1.8寸(1 in=2.54 cm)屏 (LCX028AMT),顯示分辨率為1 280×1 024。LCX028AMT的透光率可達(dá)27 %,只需調(diào)整合適的背光源亮度即可使它的亮度達(dá)到理想狀態(tài)。
2.1.3 背光源設(shè)計(jì)
背光源是為液晶屏提供光照的光源,將其置于液晶屏的背后,通過照射液晶屏中被驅(qū)動(dòng)的液晶顯示單元,將液晶屏中的圖像顯示出來。目前廣泛使用的背光源主要有發(fā)光二極管和冷陰熒光燈管,冷陰熒光燈管發(fā)光效率低,發(fā)光二極管發(fā)光效率高,因此選用發(fā)光二極管(LED)作為像源的背光源。
抬頭顯示系統(tǒng)的信息處理及顯示控制模塊設(shè)計(jì)主要包含主控電路設(shè)計(jì)、CAN總線解碼器設(shè)計(jì)、像源驅(qū)動(dòng)電路設(shè)計(jì)。
2.2.1 主控電路設(shè)計(jì)
主控電路的任務(wù)是接收數(shù)據(jù)解碼器解析的列車運(yùn)行信息,并將該信息處理后顯示在液晶屏上。本設(shè)計(jì)采用帶有CAN接口的STM32F103RCT6為主控芯片。其優(yōu)點(diǎn)在于STM32F103RCT6采用了Cortex M3作為內(nèi)核,提供了豐富的增強(qiáng)I/O端口和聯(lián)接到兩條APB總線的外設(shè),自帶512 K字節(jié) FLASH,并外擴(kuò)16 M字節(jié)SPIFLASH,滿足大數(shù)據(jù)存儲(chǔ)需求。工作頻率可以達(dá)到72 MHz[9]。
基于STM32的主控電路原理圖如圖2所示。主要由復(fù)位電路、調(diào)試測(cè)試電路、掉電數(shù)據(jù)保存電路等組成。
圖2 主控電路原理
復(fù)位電路:用于復(fù)位STM32F103RCT6芯片,利用RC電路具有延時(shí)功能,采用了一個(gè)電阻和一個(gè)電容,當(dāng)不考慮流入RESET端的電流,則該電路為一階RC電路。當(dāng)RESET有兩個(gè)機(jī)器周期的時(shí)間是高電平時(shí),系統(tǒng)即可被復(fù)位。
調(diào)試測(cè)試電路:STM32支持 JTAG 和 SWD 兩種調(diào)試接口。因?yàn)镾WD 只需要2根線就可以下載并調(diào)試代碼,因此本設(shè)計(jì)選擇使用SWD接口進(jìn)行硬件調(diào)試。
掉電數(shù)據(jù)保存電路:用于掉電數(shù)據(jù)保存。該芯片直接掛在STM32的IO口上,用于存儲(chǔ)重要數(shù)據(jù)。
2.2.2 CAN總線解碼器設(shè)計(jì)
本文以CAN總線為例設(shè)計(jì)抬頭顯示系統(tǒng),采用CAN總線解碼器對(duì)列車總線上的信息進(jìn)行提取傳輸?shù)街骺仉娐?主控電路控制液晶屏顯示相應(yīng)的列車運(yùn)行信息。
CAN總線解碼器主要由獨(dú)立的CAN控制器SJA1000[10]和CAN總線收發(fā)器組成。通過CAN總線解碼器將列車司機(jī)需要的重要信息按照CAN總線通信協(xié)議傳送至抬頭顯示系統(tǒng)的信息處理器進(jìn)行分析處理。當(dāng)STM32F103RCT6初始接收時(shí),接口管理邏輯會(huì)使CAN核心模塊從緩沖器讀CAN報(bào)文;通過內(nèi)部的可編程的濾波器能確定STM32F103RCT6要接收哪些報(bào)文;由內(nèi)部的接收FIFO存儲(chǔ)所有收到的報(bào)文,最多能存儲(chǔ)32個(gè)報(bào)文。圖3為CAN總線解碼器電路原理圖。
圖3 CAN解碼器電路
CAN收發(fā)器作為數(shù)據(jù)交換的接口,連接在CAN控制器和列車CAN總線之間,其本質(zhì)就是實(shí)現(xiàn)總線差動(dòng)電平向數(shù)字邏輯電平的轉(zhuǎn)換。本設(shè)計(jì)的CAN收發(fā)器采用PCA82C250 CAN收發(fā)器。PCA82C250是CAN協(xié)議控制器和物理總線的接口[11]。為CAN控制器提供一個(gè)差動(dòng)接收的能力。
收發(fā)器的IO端口CANH和CANL分別連接列車CAN總線的CANH和CANL,接收CANH和CANL上的數(shù)據(jù),并通過發(fā)送數(shù)據(jù)端TXD將采集到的列車CAN總線上的數(shù)據(jù)傳輸給SJA1000,SJA1000將處理過的數(shù)據(jù)發(fā)送給STM32F103RCT6。當(dāng)CAN收發(fā)器工作在高速模式下時(shí),出級(jí)的晶體管快速實(shí)現(xiàn)打開、關(guān)閉,當(dāng)它處于待機(jī)工作模式下時(shí),發(fā)送器關(guān)閉,接收器轉(zhuǎn)至低電流,VCC和GND接電源和接地的端口之間采用電容相連。
2.2.3 像源驅(qū)動(dòng)電路設(shè)計(jì)
采用2片數(shù)據(jù)驅(qū)動(dòng)器CXA7004R來作為L(zhǎng)CX028AMT的驅(qū)動(dòng)器,接收STM32控制器發(fā)送來的12位數(shù)字輸入信號(hào),CXA7004R對(duì)這12位數(shù)字信號(hào)轉(zhuǎn)化為6個(gè)相位的模擬信號(hào)輸出。CXA7004R支持點(diǎn)和線反轉(zhuǎn)驅(qū)動(dòng)方式;最高支持SXGA信號(hào);VCOM電壓產(chǎn)生電路;預(yù)充脈沖波形發(fā)生器[12]??梢栽贑XA7004R中產(chǎn)生預(yù)充脈沖波,但是該預(yù)充脈沖波不可以對(duì)液晶屏直接進(jìn)行驅(qū)動(dòng),所以需要在液晶屏和CXA7004R之間加上一個(gè)緩沖器,采用LT1206緩沖器作為CXA7004R的緩沖;另外還將CXA7004R產(chǎn)生的VCOM電壓來驅(qū)動(dòng)液晶屏。像源驅(qū)動(dòng)電路原理圖如圖4所示。
圖4 像源驅(qū)動(dòng)電路
設(shè)計(jì)所用到的電源電壓有15,5,3.3 V等不同級(jí)別的電壓,因此針對(duì)不同的電壓需求設(shè)計(jì)相應(yīng)的電壓源。其中,采用15 V電源為像源驅(qū)動(dòng)電路供電,5 V電源為CAN解碼器、背光源供電,3.3 V電源為主控電路供電。
由于列車上各部分電氣采用的電壓源不相同,本設(shè)計(jì)針對(duì)現(xiàn)有列車上常用在操控臺(tái)上的電壓進(jìn)行轉(zhuǎn)換,對(duì)列車操控臺(tái)上的24 V直流電源電壓進(jìn)行降壓設(shè)計(jì)處理。通過降壓斬波電路將24 V電壓降壓至15 V后,通過三端穩(wěn)壓電源分別對(duì)降壓斬波電路得到的15 V電壓進(jìn)行穩(wěn)壓處理,并將15 V電壓降至5 V和3.3 V進(jìn)行供電。圖5為抬頭顯示器系統(tǒng)電源電路。
圖5 抬頭顯示器系統(tǒng)電源電路
軟件設(shè)計(jì)主要包括系統(tǒng)主程序設(shè)計(jì)、CAN控制器接收數(shù)據(jù)程序設(shè)計(jì)和顯示程序設(shè)計(jì)。
系統(tǒng)主程序設(shè)計(jì):系統(tǒng)初始化后即開始判斷接收標(biāo)志位,若標(biāo)志位無效,則繼續(xù)判斷接收標(biāo)志位,若標(biāo)志位有效時(shí),則清除接收標(biāo)志位,啟動(dòng)CAN控制器接收程序,并對(duì)接收到的數(shù)據(jù)進(jìn)行處理,最后將處理過的信息顯示在 LCD屏上,由于主控芯片需要實(shí)時(shí)接收CAN控制器傳來的數(shù)據(jù)信息并處理后顯示,所以系統(tǒng)主程序應(yīng)該循環(huán)接收并處理CAN控制器傳來的數(shù)據(jù)信息。
CAN控制器接收數(shù)據(jù)程序設(shè)計(jì):CAN控制器一開始就要讀消息對(duì)象,并對(duì)讀取到的消息對(duì)象進(jìn)行錯(cuò)誤中斷判斷,當(dāng)有錯(cuò)誤中斷時(shí),對(duì)錯(cuò)誤中斷進(jìn)行處理;當(dāng)沒有錯(cuò)誤中斷時(shí),將消息對(duì)象存入接收緩沖區(qū)進(jìn)行預(yù)處理,然后釋放接收緩沖區(qū),再判斷接收緩沖區(qū)狀態(tài)是否為“空”,當(dāng)接收緩沖區(qū)狀態(tài)為空時(shí),即結(jié)束該程序,否則返回到繼續(xù)讀取消息對(duì)象。
顯示程序設(shè)計(jì):TM32控制器需要控制液晶屏顯示信息時(shí),向CXA7004R發(fā)送12位數(shù)字輸入信號(hào),控制LT1206緩沖器對(duì)CXA7004R進(jìn)行緩沖后驅(qū)動(dòng)液晶屏,同時(shí)控制CXA7004R產(chǎn)生的VCOM電壓直接驅(qū)動(dòng)液晶屏。
為了測(cè)試列車抬頭顯示系統(tǒng)的可行性,采用計(jì)算機(jī)模擬列車的中央處理器隨機(jī)生成的速度信息發(fā)送到列車抬頭顯示系統(tǒng)上顯示,模擬司機(jī)駕駛時(shí)的動(dòng)作,啟動(dòng)列車時(shí),先按下“停止按鈕Z”,不斷采集列車的速度,需要前進(jìn)時(shí),按下“前進(jìn)按鈕R”,前進(jìn)的速度信息傳輸?shù)絃CD上顯示“列車速度信息SP:”,同時(shí)液晶屏左上半部分的三角形隨著列車速度值在填充,填充面積越大,表明列車前進(jìn)速度越高,反之越低,需要列車后退時(shí),必須得列車停速度為0,且按下“停止按鈕Z”后,才能按“后退按鈕A”,后退的速度信息傳輸?shù)絃CD上顯示“列車速度信息SP:”,同時(shí)液晶屏左下半部分的三角形隨著列車速度值在填充,填充面積越大,表明列車后退速度越高,反之越低。結(jié)果表明列車抬頭顯示
系統(tǒng)所顯示的速度信息能與計(jì)算機(jī)生成的隨機(jī)速度信息同步,表明了該方案實(shí)時(shí)性較好,具有可行性。
設(shè)計(jì)了用于列車的抬頭顯示系統(tǒng),將司機(jī)需要的一些重要信息投影在前擋玻璃前方,司機(jī)無需低頭查看表盤或顯示屏,即可觀察當(dāng)前列車運(yùn)行的一些重要信息,有效地消除了因?yàn)榈皖^而產(chǎn)生的視覺盲區(qū)。采用透射式投影顯示技術(shù)LCD作為抬頭顯示系統(tǒng)的投影裝置;以列車CAN總線為例,采用STM32F103RCT6為控制器內(nèi)核,選用SONY公司的1.8寸屏 (LCX028AMT)作為像源,對(duì)系統(tǒng)進(jìn)行了硬件設(shè)計(jì)和軟件設(shè)計(jì)。通過計(jì)算機(jī)仿真軟件模擬實(shí)驗(yàn)向列車抬頭顯示系統(tǒng)發(fā)送信息,結(jié)果表明,所設(shè)計(jì)的列車抬頭顯示系統(tǒng)的可行性和實(shí)時(shí)性較好。