《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DLP投影技術車載集成終端的軟件設計
基于DLP投影技術車載集成終端的軟件設計
2015年電子技術應用第6期
王 瓊,姜 棟
合肥工業大學 計算機與信息學院,安徽 合肥230009
摘要: 提出一種基于DLP投影技術的車載集成顯示終端設計方案。以嵌入式處理器S5PV210作為控制中心,采用基于DLPC300 DMD芯片的DLP投影儀,軟件設計平臺基于Linux2.6.38和QT/E4.6,在此基礎上設計并完成了軟件開發工作并在樣機上進行了模擬實驗。實驗結果表明,系統能夠圖形化實時顯示汽車行駛信息,色彩明亮,視頻圖像采集清晰,集成化顯示避免了駕駛員視線分散,提高了行車安全性。
中圖分類號: TP391.1
文獻標識碼: A
文章編號: 0258-7998(2015)06-0020-04
Software design of vehicle intergrated display system based on DLP technologies
Wang Qiong,Jiang Dong
School of Computer and Information,Hefei University of Technology,Hefei 230009,China
Abstract: A design scheme of vehicle integration display system based on digital light procession(DLP) technologies is put forward. The embedded processor S5PV210 is used as the hardware control kernel.The DLP projector based on the DLPC300 DMD is used. On the development platform of Linux2.6.38 and QT4.6, software development is designed and implemented.Finally,the simulation experiment is carried out on the prototype, the experimental results show that the system can display vehicle informations graphically in real time, which has clear image collection,avoids the events of sight scattered and improves the driving safety and comfort.
Key words : intergrated display terminal;digital light procession;embedded systems;graphical user interface

    

0 引言

    汽車儀表是汽車與駕駛員進行信息交流的窗口,也是汽車電子技術的重要內容。隨著現代汽車所使用車載電器不斷增多,如車載多媒體、行車記錄儀、空調和導航等,汽車駕駛環境在日益改善的同時,顯示的信息量也急劇增加。目前,多數汽車廠商采用在中控臺安置兩個顯示屏的方案解決信息顯示問題,即“儀表盤+中控彩色大屏”。行車時,該方案容易導致駕駛員頻繁轉移視線,造成注意力不集中,留下安全隱患。此外,傳統的機械式儀表盤存在部件磨損后誤差等級大、儀表樣式單一的缺點,而以液晶屏作為顯示終端的虛擬儀表則存在液晶屏壽命較短的缺陷。

    針對上述問題,本文提出了一種基于數字光處理(Digital Light Procession,DLP)[1]投影技術的車載集成前屏方案,將汽車行駛、行車記錄儀視頻和多媒體播放等功能集中起來,應用DLP投影技術將畫面投射到方向盤前的反射屏上,并采用界面分隔的設計方法在一幀屏幕上同時顯示不同信息畫面,實現了系統樣機的研制及模擬實驗。實驗結果表明,數字化儀表響應靈敏、畫面美觀,各功能模塊之間通過按鍵切換,交互便利。集成的顯示方法避免了駕駛員在兩個顯示屏中轉移視線,駕駛環境更為舒適,提高了行車安全性。

1 系統整體實現方案

    汽車集成顯示系統整體結構如圖1所示。為滿足系統快速處理數據和實時性的要求,選用Samsung公司的32位RISC微處理器S5PV210作為系統控制核心,內置高清晰多媒體接口線(High-Definition Multimedia Interface,HDMI)模塊,可通過HDMI接口連接DLP投影儀進行投影顯示。外圍電路包括:存儲單元256 MB DDR RAM和1 GB NAND Flash、RS-232口、CAN總線口等擴展通信接口。投影儀選用COOLUX X3S型DLP投影儀。

qrs3-t1.gif

    系統功能為:采集模塊采集各類車載信號,兩個攝像頭分別采集前、后兩個行車視頻圖像信號,處理器根據獲得的信號調整信息顯示畫面,通過HDMI接口將畫面輸送到DLP投影儀并投射在反射屏上,駕駛員通過觀察反射屏的圖像即可獲取所需信息,并通過人機交互按鍵實現菜單操作,可方便地調整和切換顯示畫面。集成顯示畫面包括汽車行駛信息、行車記錄儀、電子地圖和多媒體播放4個子功能模塊。

2 基于DLP技術的投影顯示方案

    DLP技術是指通過數字微鏡器件(Digital Micromirror Device,DMD)芯片將光強數字化以完成信息顯示的技術。DLP投影系統由光源、色輪、數字信號處理器、光學器件和DMD芯片組成。其投影原理為:當光源的光線經過聚透鏡和色輪后,被分解為R、G、B三原色投射到DMD芯片上,光線再經過DMD鏡片的反射后由投影鏡頭投影成像。

    本文通過HDMI接口將車載集成系統與DLP投影儀連接,HDMI協議數據傳輸如圖2所示,HDMI接口包含:3個用于傳輸數據的最小化傳輸差分信號(Transition Minimized Differential Signaling,TMDS)通道;1個獨立的同步時序TMDS通道,以保證數據傳輸時所需的統一時序;顯示數據通道(Display Data Channel,DDC),用于HDMI輸出端向接收端發送配置信息或讀取接收端的顯示屬性信息。

qrs3-t2.gif

    車載終端與投影儀的連接結構如圖3所示。處理器S5PV210內部的視頻編碼器產生非標準流速視頻流,經過雙時鐘FIFO緩沖器將其調整為標準流速視頻流,下一級的像素點轉換器將視頻流轉換為DLP投影儀可處理的24 bit RGB彩色圖像,最后經視頻信號同步發生器處理,把標準視頻流發送給HDMI發送器,由HDMI接收器接收后輸入給DLPC300 DMD控制器,DMD鏡片將圖像反射后由投影鏡頭投影成像。

qrs3-t3.gif

    為了使終端能夠滿足不同顯示分辨率系統,本文設計配置文件hdmi.conf并加入到根文件系統/etc目錄下。系統啟動后,后臺服務進程hdmi-service首先讀取投影儀接口分辨率參數并寫入到配置文件hdmi.conf中,隨后hdmi-service進程將hdmi.conf中的分辨率配置數據通過DDC通道發送到HDMI接收器的EDID ROM中,投影儀系統根據該數據變更顯示分辨率。用戶如要更改顯示分辨率,只需修改配置文件hdmi.conf即可完成。

    本設計將DLP微型投影儀安裝在汽車方向盤轉向軸上,將圖像投影到方向盤前的反射屏上,如圖4所示。圖4中,標號1表示DLP微型投影儀,標號2表示反射屏。

qrs3-t4.gif

3 系統軟件設計

3.1 開發環境構建與系統軟件移植

    系統軟件設計包括開發環境構建[2]、系統軟件移植和應用程序開發三部分。本文采用的開發環境為VMware Workstation虛擬機和Red Hat Linux5操作系統,在虛擬機中安裝交叉編譯工具鏈ARM-Linux-gcc4.4.3,用于完成嵌入式操作系統內核、busybox、QT/E4.6.3和車載終端應用程序的編譯;安裝QT/E4.6.3[3]庫以支持應用程序的開發;設計AD驅動jd_adc.c、人機交互按鍵驅動jd_buttons.c和HDMI驅動等驅動并加入到Linux2.6.38內核源碼樹中,配置編譯內核;設計根文件系統并在其中加入inittab、rcS和hdmi.conf等配置文件以及glibc庫、QT庫等動態鏈接庫構建車載終端應用程序的運行環境。

3.2 應用程序設計

    車載終端應用程序設計主要解決信號采集、圖形用戶界面(Graphical User Interface,GUI)實時顯示和信號與GUI實時通信3個關鍵問題。其中信號采集包括車載傳感器信號采集與攝像頭圖像信號采集。

3.2.1 車載信號的采集

    車載傳感器信號主要采集車速、發動機轉速、燃油量、冷卻液溫度、車燈信號和車身報警信號等,一般為數字脈沖信號、模擬電壓信號和開關量信號,分別引入S5PV210的tclk0(輸入頻率在0~720 Hz)和tclk1(輸入頻率在0~8 kHz)兩個引腳;模擬電壓信號引入S5PV210的AD輸入引腳adcAIN[0]和adcAIN[1],兩個AD輸入引腳電壓范圍在0~3.3 V;車燈信號接S5PV210的外部I/O引腳GPH1[4:7],車身報警信號接中斷引腳EINT[0:3]。由于采集的信號多且實時性強,為提高程序運行效率,采集模塊設計采用多線程方法,分別設計車速speedThread、發動機轉速rotateThread、燃油量oilThread、冷卻液溫度watertempThread等信號采集子線程。系統工作時,各個子線程循環采集傳感器傳來的信號。

    在信號采集線程中,為了保證實時性,設計while(1)循環持續讀取信號值。由usleep函數控制采集頻率,其功能是將線程掛起一段時間。經過反復試驗,usleep函數頻率設為10 Hz為佳,即把掛起時間設定為0.1 s。

    以車速信號的采集為例,部分代碼如下:

    void Thread::readSpeed()

    {int fd;

      char buffer[BUF_SIZE];

      fd = open(“/dev/ashspeed”,0);//打開車速設備文件

    while(1){

    …

      value = atoi(buffer);//獲取當前速度值

      emit speedChanged(value);

      //將當前速度值傳遞給時速表刷新函數

    usleep(100000);//線程掛起0.1 s

    }

3.2.2 視頻信號的采集

    本系統在車頭和車尾各安裝一個攝像頭,能同時記錄汽車前后的行車視頻圖像。本文設計行車記錄儀模塊為雙攝像頭圖像采集方案,通過界面分隔的方法使雙攝像頭采集的視頻能夠同時在一屏顯示圖像畫面。

    系統的視頻采集設備選用中星微ZC301攝像頭和泰科姆2C8型CMOS攝像頭,分別對應/dev目錄下的video0和video1設備文件。設計視頻采集程序時,基于LinuxV4l2驅動程序框架[4],視頻圖像采集通過調用v4l2_read、v4l2_ioctl和v4l2_mmap等函數實現。在進行界面分隔顯示時,通過向屏幕緩沖區中寫入前后攝像頭所采集的圖像信息以進行屏幕繪圖,實現在同一屏中同時顯示不同畫面的效果。視頻信號的采集流程如圖5所示。

qrs3-t5.gif

3.2.3 多道程序并發控制

    多道程序并行性提高了系統資源的利用率和實時性能,但也相應產生了一些問題。在行車記錄儀模塊中,事件輪詢代碼塊在執行時需要一次性完成,不允許被其它線程打斷,因此必須加入并發控制機制。

    本系統在并發控制處理中采用了互斥鎖機制,在需要保護的代碼塊執行前進行上鎖操作,代碼塊執行后進行解鎖操作,保證代碼塊執行時不被打斷。部分代碼如下:

    LockMutex(affmutex);//上鎖    

    while (PollEvent(event))

    {switch(event->type)

     { ……

     }

    }//被保護的代碼塊

    UnlockMutex(affmutex);//解鎖

3.2.4 信號與GUI界面通信

    程序運行時,GUI界面模塊需要對各采集信號作出實時響應。本系統各子線程的采集信號與界面模塊的通信使用信號(signal)-槽(slot)機制[5]實現,采集線程與界面刷新函數連接方法是:各子線程采集傳感器信號作為signal信號源,界面刷新函數作為slot槽函數。各采集子線程每隔一段時間將當前采集的信號值發送到主線程的界面刷新函數,完成界面的更新。以時速表為例,信號-槽的連接代碼如下:

    connect(&speedThread,SIGNAL(speedChanged(int)),this,SLOT(updateSpeed(int)));

3.2.5 GUI界面的設計

    數字儀表盤模塊顯示汽車行駛中的各類關鍵信息,可實現時速表、發動機轉速表、燃油表、水溫表和車燈、報警信號的實時顯示。程序設計時需解決靜態儀表繪圖和界面實時刷新兩個關鍵問題。

    考慮到駕駛員的審美習慣,設計的儀表盤沿用了傳統的指針式儀表盤[6]。使用drawRect()、drawEllipse()、drawText()等函數完成靜態儀表繪圖。為了使繪圖更加美觀、更具立體感,在渲染時加入了漸變效果,時速表渲染前后對比如圖6所示。

qrs3-t6.gif

    界面的實時刷新主要體現在儀表指針的轉動,首先根據傳感器采集的速度信號確定指針轉動角度,利用信號-槽機制將角度信息傳遞到刷新函數update()中。在update()函數中,應用rotate()函數旋轉邏輯坐標系,用drawConvexPolygon()函數完成指針的繪制[7]

    數字儀表盤模塊的啟動流程如圖7所示。

qrs3-t7.gif

    系統采用EEPROM芯片AT24C08完成行駛里程等數據的存儲,通過I2C總線完成對芯片存儲數據的修改。汽車行駛時,里程數據需要不斷更新,增加的里程數據ΔS(單位:km)與車速(單位:km/h)的關系為:

    qrs3-gs1.gif

其中,v(i)為某次采集的速度值,采集間隔為10 ms。

4 系統測試與結論

    本文設計的車載集成顯示終端將汽車儀表、電子地圖、多媒體播放和行車記錄等功能集成在一起,通過DLP投影技術將信息集中顯示在反射屏上,極大地節省了車內空間,方便駕駛員獲取信息,提高了行車安全性。測試結果如圖8所示。

qrs3-t8.gif

    測試結果表明,系統畫面顯示穩定,實時數據準確,動畫效果較好,界面切換迅速。此外,本系統提供多種通信接口,可擴展性強,具有較高的實用價值和廣闊的應用前景。

參考文獻

[1] 胡堅.DLP和LCD投影機對比分析[J].微計算機信息,2005,21(2):140-142.

[2] 韋東山.嵌入式Linux應用開發完全手冊[M].北京:人民郵電出版社,2011:240-360.

[3] 閆鋒欣,曾泉人.C++ GUI Qt4編程(第二版)[M].北京:電子工業出版社,2010:138-268.

[4] 奚海蛟,呂鐵軍.嵌入式Linux驅動程序實戰開發[M].北京:北京航空航天大學出版社,2012:1-91.

[5] 王潤民.基于嵌入式Linux的車載終端系統研究與實現[D].西安:長安大學,2013.

[6] 曹成昆,何彬.混合動力汽車真彩液晶數字儀表軟件設計[J].上海交通大學學報,2008,42(7):1081-1084.

[7] 陳新.電動汽車液晶數字儀表的設計[J].汽車工程,2013,35(3):272-276.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
在线亚洲免费| 亚洲二区在线视频| 国产一区二区精品久久| 欧美日韩国产一区二区| 久久人人爽国产| 亚洲午夜一区| 亚洲精品麻豆| 亚洲看片免费| 亚洲电影在线播放| 国产日韩欧美黄色| 欧美视频精品在线观看| 欧美国产欧美亚洲国产日韩mv天天看完整| 亚欧成人精品| 亚洲私人影吧| 亚洲伦理在线| 亚洲国语精品自产拍在线观看| 亚洲性线免费观看视频成熟| 亚洲精品一区久久久久久| 狠狠色噜噜狠狠色综合久| 国产麻豆综合| 国产精品久久久久久久久久直播| 欧美人妖另类| 男女精品网站| 久久一区二区三区四区五区| 欧美一区二区视频在线| 欧美专区在线观看一区| 亚洲欧美日韩另类| 一区二区欧美日韩视频| 亚洲美女视频| 亚洲精一区二区三区| 亚洲黄色免费电影| 亚洲国产高清在线观看视频| 欲香欲色天天天综合和网| 国产专区精品视频| 国产欧美一级| 国产日产亚洲精品系列| 国产精品亚洲а∨天堂免在线| 国产精品99免视看9| 欧美日精品一区视频| 欧美日韩亚洲网| 欧美日韩亚洲一区二区| 欧美日韩一区二区三区四区五区| 欧美日韩大片一区二区三区| 欧美人与性动交cc0o| 欧美久色视频| 欧美日韩国产bt| 欧美日韩成人在线观看| 欧美日韩视频第一区| 欧美日韩视频在线一区二区| 欧美日韩国产美| 欧美三级日韩三级国产三级| 国产精品家庭影院| 国产精品日日摸夜夜添夜夜av| 亚洲成人在线免费| 欧美精品v日韩精品v国产精品 | 欧美亚洲在线视频| 亚洲欧美网站| 久久成人免费日本黄色| 久久久午夜视频| 久久综合久久美利坚合众国| 欧美国产激情二区三区| 欧美日韩在线不卡一区| 国产精品青草久久久久福利99| 国产欧美日韩综合| 黄色成人片子| 亚洲日韩欧美视频一区| 一本色道久久综合亚洲二区三区| 亚洲在线网站| 久久精品免费电影| 一本色道久久综合亚洲精品不| 亚洲一区在线免费| 久久精品国产999大香线蕉| 免费亚洲一区| 欧美日韩国产一区二区三区| 国产精品久久久一区二区| 国产一区三区三区| 亚洲精品久久久久中文字幕欢迎你| 99这里只有久久精品视频| 亚洲专区一区二区三区| 久久精品亚洲一区二区| 99精品视频一区二区三区| 午夜久久美女| 可以看av的网站久久看| 欧美日韩另类视频| 国产亚洲美州欧州综合国| 亚洲韩国青草视频| 亚洲欧美日韩直播| 亚洲精品一区二区三区婷婷月| 午夜精品久久久久| 久久激情五月婷婷| 欧美人与性动交α欧美精品济南到| 国产精品视频一二| 亚洲国产精品视频| 亚洲一区精品视频| 亚洲国产精品成人一区二区| 亚洲一区三区电影在线观看| 久久人91精品久久久久久不卡 | 免费在线国产精品| 国产精品国产馆在线真实露脸| 国产一区二区三区网站| 亚洲欧洲在线视频| 午夜久久一区| 这里只有精品电影| 久久综合久久久| 国产精品网站在线观看| 亚洲啪啪91| 久久精品国产999大香线蕉| 亚洲在线成人| 欧美国产免费| 国产综合久久| 99精品国产在热久久| 亚洲人成7777| 久久疯狂做爰流白浆xx| 欧美午夜在线观看| 亚洲国产日韩欧美在线动漫| 欧美亚洲自偷自偷| 亚洲一区二区三区四区中文 | 欧美电影免费观看高清| 国产视频欧美| 亚洲视频电影图片偷拍一区| 日韩亚洲视频| 老牛嫩草一区二区三区日本| 国产日韩欧美中文在线播放| 一二三区精品| 日韩视频永久免费观看| 免费中文日韩| 国产亚洲毛片在线| 亚洲资源在线观看| 亚洲一区二区三区四区五区黄| 欧美精品精品一区| 在线国产精品播放| 欧美一区二区三区视频免费| 欧美亚洲视频在线看网址| 国产精品九九久久久久久久| 日韩视频免费| 夜夜爽av福利精品导航 | 欧美激情黄色片| 欧美中文在线免费| 欧美美女bbbb| 在线国产日韩| 亚洲电影下载| 久久天天躁狠狠躁夜夜av| 国产深夜精品| 欧美一级视频精品观看| 欧美影院视频| 国产精品自拍一区| 亚洲欧美精品伊人久久| 亚洲欧美日韩一区二区三区在线观看 | 亚洲视频免费在线观看| 正在播放日韩| 欧美日韩三级| 一区二区三区蜜桃网| 亚洲已满18点击进入久久| 欧美日韩国产色视频| 99精品视频免费观看| 亚洲视频精品| 国产精品扒开腿爽爽爽视频| 一区二区三区四区在线| 亚洲淫片在线视频| 国产精品视频久久久| 亚洲欧美在线一区二区| 久久国产免费| 狠狠色伊人亚洲综合成人| 亚洲国产成人tv| 美女网站久久| 91久久黄色| 亚洲网友自拍| 国产精品欧美一区二区三区奶水 | 亚洲精品午夜精品| 日韩一区二区精品在线观看| 欧美日韩在线播| 午夜欧美精品| 免费一级欧美片在线观看| 亚洲欧洲精品一区二区三区波多野1战4| 日韩视频在线播放| 国产精品久久久久久久久久三级| 午夜久久久久久| 欧美 亚欧 日韩视频在线| 亚洲韩国青草视频| 亚洲综合大片69999| 国产日产欧美a一级在线| 亚洲国产日韩综合一区| 欧美日本一区| 亚洲欧美精品| 免费不卡亚洲欧美| 亚洲欧美成人| 美腿丝袜亚洲色图| 在线视频日韩精品| 久久九九久精品国产免费直播| 在线观看三级视频欧美| 亚洲午夜成aⅴ人片| 国产日韩成人精品| 亚洲精品女av网站| 国产精品美女久久福利网站| 亚洲欧美一区二区在线观看| 久热精品视频在线免费观看| 亚洲精品欧美一区二区三区| 性色av一区二区三区在线观看| 伊人久久大香线| 亚洲图片欧洲图片av|