一種嵌入式可視倒車裝置的方案設(shè)計(jì)
引言
目前,我國(guó)普遍采用的倒車裝置是超聲波倒車?yán)走_(dá),這種裝置雖能準(zhǔn)確測(cè)量車尾與車后障礙物的距離,但由于存在視覺盲區(qū),司機(jī)無(wú)法判斷障礙物的確切位置,更不能感知地坑或低矮障礙物。國(guó)內(nèi)外研究趨勢(shì)是在倒車?yán)走_(dá)的基礎(chǔ)上采用數(shù)字圖像處理技術(shù),利用強(qiáng)大的嵌入式處理器,開發(fā)用于檢測(cè)車后物距和監(jiān)視車后圖像的優(yōu)點(diǎn)相結(jié)合的車載可視倒車裝置。這類新型裝置的價(jià)格較高,目前僅在中高檔轎車上使用。為此,提出了基于IntelPXA270硬件平臺(tái)及嵌入式WindowsCE操作系統(tǒng)的車載可視倒車裝置。
1 系統(tǒng)結(jié)構(gòu)
本文提出的可視倒車裝置硬件電路框圖如圖1所示,主要由Intel嵌入式處理器PXA270、視頻采集、超聲波測(cè)距等電路組成。兩對(duì)超聲波換能器、信號(hào)調(diào)理電路和微控制器完成對(duì)障礙物的距離測(cè)定,并通過(guò)LIN總線發(fā)送至車內(nèi)主系統(tǒng);攝像頭采集到的視頻復(fù)合信號(hào)通過(guò)同軸電纜送至視頻解碼芯片進(jìn)行A/D轉(zhuǎn)換,并產(chǎn)生YUV422格式的視頻信號(hào)輸入PXA270的快速捕捉攝像頭接口;主系統(tǒng)處理器利用字符疊加技術(shù),在TFTLCD屏上將含有障礙物距離等參數(shù)的圖像信號(hào)播放出來(lái)。
圖1 可視倒車硬件電路圖
1.1 嵌入式處理器PXA270
本系統(tǒng)所采用的嵌入式處理器PXA270其最高主頻達(dá)624MHz,加入了WirelessMMXTM技術(shù),從而提升了多媒體處理能力,同時(shí)還加入了IntelSpeedStep動(dòng)態(tài)電源管理技術(shù),在保證CPU性能的情況下,最大限度地降低移動(dòng)設(shè)備功耗;并擁有豐富的外部接口:如AC’97控制器、LCD控制器、CIF接口、SD卡接口等。
1.2 視頻采集電路
車內(nèi)主處理器PXA270的CIF接口只能處理數(shù)字信號(hào),因此必須先將攝像頭采集到的模擬信號(hào)進(jìn)行轉(zhuǎn)換。本系統(tǒng)的視頻輸入解碼模塊使用TI公司的視頻解碼芯片TVP5150及外圍電路構(gòu)建,其主要功能是將每一路CCD攝像頭采集的標(biāo)準(zhǔn)PAL制電視模擬信號(hào)發(fā)送至視頻解碼器,完成視頻圖像的箝位及抗混疊濾波等預(yù)處理、模擬視頻信號(hào)到數(shù)字YUV4:2:2的轉(zhuǎn)換及亮度/色度、水平/垂直同步等信號(hào)的分離。解碼芯片和PXA270通過(guò)CIF接口連接,PXA270通過(guò)I2C總線訪問(wèn)TVP5150的內(nèi)部寄存器,協(xié)調(diào)處理器與解碼器之間的工作交流。
1.3 超聲波測(cè)距電路
測(cè)距電路主要由超聲波發(fā)射電路和接收電路組成,原理框圖如圖2所示。該模塊單片機(jī)選用Freescale公司的MC68HC908QL4,該芯片可靠性高、抗干擾能力強(qiáng),內(nèi)含4kB閃速存儲(chǔ)器,四通道10位A/D轉(zhuǎn)換器,并集成了LIN控制器。超聲波探測(cè)車物之間的距離,并將數(shù)據(jù)經(jīng)LIN總線傳送至車內(nèi)主處理器。由于超聲波測(cè)距只在汽車倒車時(shí)為駕駛員提供車后信息,而倒車時(shí)車速較慢,與聲速相比可認(rèn)為是靜止的,因此采用脈沖測(cè)距法,只測(cè)量超聲波在測(cè)量點(diǎn)與目標(biāo)間的往返時(shí)間計(jì)算距離較簡(jiǎn)單。
圖2 超聲波測(cè)距工作原理圖
(1)超聲波發(fā)射電路超聲波發(fā)射電路如圖3所示。當(dāng)汽車駕駛員手柄轉(zhuǎn)到倒車檔時(shí),測(cè)距電路開始工作,微控制器發(fā)出40kHz方波信號(hào),經(jīng)驅(qū)動(dòng)電路放大后,通過(guò)探頭發(fā)射出去,此時(shí)計(jì)數(shù)器開始計(jì)數(shù)。
圖3 超聲波發(fā)射電路圖
(2)超聲波接收電路超聲波接收電路如圖4所示。采用專用前置放大器CX20106,由前置放大器、限幅放大器、帶通濾波器、檢波器、積分器、整型電路組成。其中,前置放大器具有自動(dòng)增益控制功能。超聲波信號(hào)在空氣中傳播遇到障礙物后發(fā)生反射,回波經(jīng)接收探頭接收并轉(zhuǎn)換成電信號(hào),經(jīng)條理電纜,輸入到微控制器的外部中斷口,使計(jì)數(shù)器停止計(jì)數(shù),從而計(jì)算出障礙物的距離。
圖4 超聲波接收電路
1.4 LIN總線收發(fā)器接口電路設(shè)計(jì)
LIN是一種低成本的串行通訊網(wǎng)絡(luò),用于實(shí)現(xiàn)汽車中的分布式電子系統(tǒng)控制,是一種輔助的總線網(wǎng)絡(luò),在不需要CAN總線的帶寬和速度的場(chǎng)合可大大節(jié)省成本。LIN通訊是基于SCI異步串行通信的數(shù)據(jù)格式,采用單主控制器/多從設(shè)備的模式,僅使用一根12V信號(hào)總線和一個(gè)無(wú)固定時(shí)間基準(zhǔn)的節(jié)點(diǎn)同步時(shí)鐘線。TJA1020是常用的LIN主/從協(xié)議控制器和LIN總線的物理接口芯片,接口電路如圖5所示。
圖5 LIN收發(fā)器接口電路
2 軟件設(shè)計(jì)
2.1 系統(tǒng)平臺(tái)的定制
WindowsCE是微軟專門為各種嵌入式系統(tǒng)設(shè)計(jì)的一種高效、可升級(jí)的操作系統(tǒng),廣泛用于各種嵌入式產(chǎn)品。為定制該裝置的WindowsCE操作系統(tǒng),首先根據(jù)硬件配置,在PlatformBuilder開發(fā)環(huán)境中導(dǎo)入Intel提供的BSP板級(jí)支持包,并開發(fā)自己的OEM硬件適配層、組件。操作系統(tǒng)映像建立成功后,再將平臺(tái)傳輸?shù)侥繕?biāo)設(shè)備進(jìn)行測(cè)試。最后輸出軟件開發(fā)工具包,在EVC++環(huán)境中開發(fā)應(yīng)用程序,WindowsCE定制過(guò)程如圖6所示。
圖6 Windows CE操作系統(tǒng)的定制過(guò)程
2.2 攝像頭驅(qū)動(dòng)程序設(shè)計(jì)
本文述及的驅(qū)動(dòng)是在WindowsCE下實(shí)現(xiàn)的。攝像頭驅(qū)動(dòng)程序的主要任務(wù)是控制視頻數(shù)據(jù)在硬件中流動(dòng),并為攝像頭應(yīng)用程序提供標(biāo)準(zhǔn)接口。為簡(jiǎn)化編程難度,考慮到CIF接口的工作方式比較獨(dú)立,采用類型為流接口驅(qū)動(dòng)的單片驅(qū)動(dòng)程序模型:即為每一個(gè)流接口驅(qū)動(dòng)創(chuàng)建一個(gè)包含驅(qū)動(dòng)程序的入口點(diǎn)動(dòng)態(tài)鏈接庫(kù),實(shí)現(xiàn)文件I/O和電源管理函數(shù)交給內(nèi)核使用。攝像頭驅(qū)動(dòng)程序的流程圖如圖7所示,其工作內(nèi)容如下:
圖7 攝像頭視頻數(shù)據(jù)傳輸流程圖
(1)負(fù)責(zé)通過(guò)I2C總線查詢攝像頭解碼器的信息,調(diào)節(jié)攝像頭解碼器的設(shè)置;
(2)建立和控制DMA傳輸通道,通過(guò)DMA方式將CIF接口中的3個(gè)FIFO內(nèi)的數(shù)據(jù)信息傳送到內(nèi)存中,從而實(shí)現(xiàn)快速高質(zhì)量的數(shù)據(jù)傳送;
(3)提供可以給應(yīng)用程序使用的接口。
2.3 超聲波測(cè)距軟件設(shè)計(jì)
超聲波測(cè)距軟件主要包括測(cè)距及數(shù)據(jù)發(fā)送,其流程圖如圖8所示。
圖8 超聲波測(cè)距流程圖
3 結(jié)論
軟硬件聯(lián)合調(diào)試成功后,在實(shí)際車輛上進(jìn)行了倒車試驗(yàn)。攝像頭實(shí)際捕捉到的視頻信號(hào)在LCD上的顯示結(jié)果如圖9所示。圖9中數(shù)字為超聲波測(cè)距數(shù)據(jù)。試驗(yàn)表明,該系統(tǒng)運(yùn)行可靠,倒車時(shí)不但能清晰實(shí)時(shí)顯示車后全景,而且還能準(zhǔn)確測(cè)量汽車與車后障礙物之間的距離,基本達(dá)到了設(shè)計(jì)要求。
圖9 可視倒車裝置在LCD上的視頻捕獲窗口