999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于i.MX6Q和OpenGL ES的汽車虛擬儀表的設計

2017-06-24 13:25:48李睿琦牛新環王征宇姚堯
河北工業大學學報 2017年2期
關鍵詞:界面程序汽車

李睿琦,牛新環,王征宇,姚堯

(1.河北工業大學天津市電子材料與器件重點實驗室,天津300130;2.天津大學電氣與自動化工程學院,天津300072;3.天津市計量監督檢測研究院,天津300192)

基于i.MX6Q和OpenGL ES的汽車虛擬儀表的設計

李睿琦1,牛新環1,王征宇2,姚堯3

(1.河北工業大學天津市電子材料與器件重點實驗室,天津300130;2.天津大學電氣與自動化工程學院,天津300072;3.天津市計量監督檢測研究院,天津300192)

該新型汽車虛擬儀表,以恩智浦開發的i.MX6Q為核心處理器搭建硬件開發平臺,降低了汽車儀表的開發成本,提升了GPU利用率,創建多線程程序,減小了物理空間.同時,以Linux系統構建軟件開發環境,利用OpenGL ES對儀表系統進行設定VBO操作,3DS模型轉換等圖形界面開發,提高了人機交互界面的友好性.本文設計的新型虛擬儀表系統針對嵌入式系統相對較低的計算和圖形處理能力、相對較小的存儲空間、相對較低的顯示分辨率等特點進行適應性改造,具有跨平臺性、低成本,界面顯示精美、可擴展性良好等優點.

虛擬儀表;i.MX6Q;OpenGL ES;3DS;圖形界面開發

0 引言

汽車儀表作為提供汽車行駛過程中各項重要參數的人機交互界面[1],駕駛員能夠通過儀表準確實時的獲取汽車各系統部件的運行狀態,通過有效的人機信息交互,保證了汽車的安全平穩運行,因此汽車儀表在汽車的整個系統中占據了重要的地位[2].傳統機械儀表通過指針和刻度來實現必要的表盤顯示信息,但其占用空間較大、儀表功能可靠性差,已經遠遠不能滿足現代汽車高速發展的要求[3].汽車儀表經歷了第1代機械式儀表,第2代電氣式儀表,第3代模擬電路電子式儀表,現在正在向第四代全數字汽車儀表邁進[4].隨著嵌入式系統及計算機軟件系統的高速發展,具備指示精度高、界面數字化和智能化的虛擬儀表正在迅猛發展[5].但同時,現有的虛擬儀表也存在著可移植性較差、開發生產成本高、二次開發性較低以及顯示界面功能單一等缺點,這些在一定程度上限制了其技術創新,阻礙了虛擬儀表的應用推廣[6].

針對以上提出的儀表功能的不足之處,本文設計了一種基于Linux系統下以i.MX6Q為硬件運行平臺,并采用OpenGL ES圖形開發應用程序對虛擬儀表進行3D虛擬界面的繪制開發.此虛擬儀表具備可移植性高、表盤顯示功能完善、儀表界面精美等優點.同時其對顯卡的GPU利用率較高,運行流暢,具有很高的商業和應用價值.

1 i.MX6Q硬件運行平臺

i.MX6Q是基于Cortex-A9內核架構的可擴展多核處理器[7],Cortex-A9架構的高效處理能力與尖端的3D和2D圖形處理器相結合,帶有四個著色器,其出色的3D圖形引擎,能夠高效的提供每秒2億個三角形的生成能力[8].i.MX6Q有3個GPU,GC2000可以支持OpenGL ES3.0和OpenVG1.1,GC335可以實現Open-VG1.1,GC320完成2D拼接.多個GPU,使得顯卡減少了對CPU的依賴,增加了工作效率,而且這款處理器可以支持2D、3D矢量圖形加速,解決了滑動卡、動畫不流暢、圖片處理速度慢的問題,具有強大的運算能力和視頻處理能力.同時開發板上擴出的各種調試串口能夠為片上定制Linux系統提供有效的硬件支持[9].

2 Linux開發環境平臺搭建

本文采用VMware虛擬機和Ubuntu操作系統,同時在此開發環境下安裝交叉編譯器ARM-linux-gcc 4.5.1,用來完成相關驅動程序的儀表應用程序以及圖形庫和系統內核的編譯.移植嵌入式設備的系統引導程序U-boot,進行硬件平臺相關驅動的編寫[10];裁剪編譯Linux內核,并在其中加載已編譯好的相關驅動[11].

3 基于OpenGL ES的汽車虛擬儀表界面開發

OpenGL ES作為一種跨平臺、跨編程語言的軟件接口,其可為軟件與圖形加速器之間提供功能強大且靈活的底層交互途徑.良好的可移植性也使得OpenGL ES廣泛應用于3D圖形界面的開發[12].本文設計的汽車虛擬儀表就是以OpenGL ES進行圖形界面開發,其流程主要包括著色器綁定,設定VBO、VAO,深度測試,面剔除,3DS模型處理以及多線程程序.虛擬儀表界面開發流程圖如圖1所示.

圖1 虛擬儀表界面開發流程圖Fig.1 The flow chart of virtual instrument interface development

3.1 OpenGL ES處理提升GPU性能

著色器是運行在GPU上的程序,頂點著色器的輸出經過圖元裝配和光柵化后進入片段著色器,成為片段著色器的輸入,通過綁定著色器進行后期的圖形渲染;在導入3D汽車模型時,通過深度測試使OpenGL ES決定覆蓋像素與否;通過面剔除處理,忽略被物體前部遮擋的部分,不進行渲染.以上流程在未使用緩沖區渲染時,每一個頂點數據都需從CPU給GPU發送一次,數據量巨大且循環次數過多,導致渲染效率降低,GPU占用帶寬大,直接造成了程序運行的卡頓.通過設定VAO、VBO,利用緩沖區對象管理其在GPU中對應的內存,以此儲存大批的頂點屬性.在圖形繪制時可以直接從GPU的內存中讀取出大批頂點信息和繪制順序,大大加快了圖形的繪制速度,使得GPU性能得到極大的提升.

3.2 3DS模型處理

3.2.1 建模流程

利用OpenGL ES繪制復雜的三維模型,工作量和難度較大.隨著3D圖形技術的發展,越來越多的3D建模軟件應運而生,這些建模軟件雖然操作簡便,但卻對模型難以進行交互控制.因此,本文使用的3D模型數據需要利用Deep Exploration軟件將3DS模型文件轉化為OpenGL ES可以理解的cpp數據文件,再對其進行交互和控制操作.OpenGL ES繪圖流程如圖2所示.

圖2 簡化的OpenGL ES繪圖流水線Fig.2 The simple drawing pipeline of OpenGL ES

3.2.2 模型的幾何變換及透視投影

在顯示屏上的某個位置繪制出基本圖元,往往不能滿足用戶對于界面顯示的需求,所以,本文在繪制出基本圖元的基礎上,通過對圖形的平移、旋轉等幾何變換,顯著提高了界面顯示的多樣性,也提高了圖形程序的開發率.在OpenGL ES圖形學中,用esTranslate、esRotate兩個函數對建立起來的模型進行平移、旋轉操作,這實際上是矩陣變換的過程,之后通過調用OpenGL ES中矩陣函數esMatrixMultiply來調用這兩個函數,進而實現對模型的平移、旋轉.

透視投影與人眼觀看現實世界所得到的景象很相近,因此透視投影更具有立體感和真實感.整個投影過程分為兩個部分,第1部分是投影到近剪裁平面的過程,第2部分是由近剪裁平面縮放的過程.假設立椎體內1點在近剪裁平面上的投影是經過縮放后的最終坐標設為設所求的投影矩陣為M,根據矩陣乘法可知,如下等式成立:透視投影示意圖如圖3所示.圖3中遠裁剪平面距離原點距離為f,近裁剪平面距離原點距離為n.

圖3 透視投影示意圖Fig.3 The schematic diagram of perspective projection

圖4 xoz平面示意圖Fig.4 The schematic diagram of xoz

3.3 多線程程序

為了模擬實際車載系統,本文設計了包括攝像頭線程、按鍵線程、串口線程等多個同步運行的子程序.提升了虛擬儀表的功能多樣性,減小了實際的物理空間.如圖5所示,攝像頭線程在汽車拐彎時,通過前后視鏡之間攝像頭的切換,對圖像視頻進行采集處理,然后將處理結果反饋到顯示屏上以供駕駛員實時了解車體周邊路況;按鍵線程作為一種消息中斷模式,在行車過程中可以用來控制如視頻窗口切換、方向燈亮滅以及其他車載娛樂信息機制;串口線程中,輸入包括儀表盤的兩個指針,即車輛速度與轉速,在輸入數據時,在相應的數據后加“L”即代表傳入數據為左側指針數據,flag_rs_data置0,左側指針進行旋轉(速度0~265 km/h).在相應的數據后加“R”即代表傳入數據為右側指針數據flag_rs_data置1,此時右側指針進行旋轉(轉速0~7.5 1 000 r/min).超出范圍時,輸入儀表將會把數據視為錯誤信息不予顯示.

圖5 攝像頭采集圖像視頻流程圖Fig.5 The flow chart of camera capture video image

4 試驗結果及數據分析

本文設計的虛擬儀表系統在基于i.MX6Q處理器的開發板上運行效果如圖6所示.該虛擬儀表盤界面顯示精美,儀表功能完善,同時在開發板上運行流暢.在控制板子的終端中,以root的身份輸入export VIV_PROFILE=1即可在程序目錄下生成VPD文件格式的性能數據文件.用Vivante VAnalyzer軟件對數據文件進行讀取即可得到性能分析曲線如圖7所示.同時本文運行一個OpenGL ES3.0的范例作為對比,對比程序為一球型的玻璃體對環境貼圖的反射效果程序,利用了3D紋理,屬于比較復雜的范例程序.導出它的運行數據性能曲線如圖8所示.

圖6 基于i.MX6Q虛擬儀表界面Fig.6 The automobile virtual instrument interface on i.MX6Q

Chart1中,紅線為Frame time(幀周期),綠線為Driver time(驅動器周期).

Chart2中,藍線為GPU cycle(GPU周期),灰線為GPU idle cycle(GPU空閑周期).

由于數據量較大,可根據性能曲線總結各參數的主要變化范圍如表1所示.

表1 性能曲線各參數變化范圍Tab.1 Variation range of parameters of performance curve

對比程序的主要參數變化范圍如表2所示.

表2 對比程序各參數主要變化范圍Tab.2 Variation range of parameters of contrast system

通過以上系統設計界面的展示以及與較復雜范例程序的運行數據對比,使用OpenGL ES進行汽車虛擬儀表的設計優勢較多,本程序的平均幀率為40幀左右,基本符合人眼對于流暢運行的最低要求,不會有卡頓感和跳幀感.本設計中對著色器的利用率為90%左右,利用率較高,在3DMAX汽車模型運行階段,GPU的利用率較高,達到了60%~80%,運行流暢,說明程序中對于復雜操作簡化的優化效果較好.

圖7 本系統程序運行的性能曲線Fig.7 Performance curve of the system program

圖8 對比程序的運行性能曲線Fig.8 Performance curve of the contrast program

5 結論

本汽車虛擬儀表系統以i.MX6Q核心處理器開發板為硬件平臺,包括了串口程序,按鍵程序和視頻程序,對于底層驅動的調用較多,驅動利用率較高.設計中包含有較為復雜的3DMAX汽車模型以及數據量較大的視頻窗口顯示,利用OpenGL ES對圖形界面進行開發,同時通過VBO、VAO,將眾多的操作簡化為GPU中著色器的簡單重復運算,減少了對CPU的占用,提高了GPU的利用率,程序運行較為流暢.本設計開發的汽車虛擬儀表對于減少儀表開發成本,降低儀表研發復雜度,提高儀表界面人性化顯示等方面具有重要的意義.

[1]鄭孟.電動汽車的發展趨勢分析[J].科技資訊,2013,27:74-75.

[2]Kang J T,Gan YD,QuaIl Q Q.The method of developing viaual instrument platform[J].Automous Decentralized Systems,2010:64-67.

[3]金有娟.基于虛擬儀器技術的汽車儀表盤設計[J].機械研究與應用,2012,122(6):135-137.

[4]王興,秦齊.車載平視顯示技術[J].電光與控制,2014,21(1):55-58.

[5]劉寶義.淺談自動化儀表與控制系統[J].科技論壇,2014,32:125.

[6]Zhao X J,Su H X.Remote monitor and control system based on ARM9 and CAN bus[J].Computer Engineer,2013,36(5):231-233.

[7]Koppanalil J,Yeung G,O’Driscoll D,et al.A 1.6GHZ dual-core ARM Cortex A9 implementat-ion on a low power high metal gate 32nm process[C]// International Symposium on VLSI Desig-n,Automation and Test.IEEE,2011:1-4.

[8]Freescale Semiconductor.i.MX6 Dual/6Quad Applications Processor Reference Manual[Z].2014.

[9]Freescale Semiconductor.i.MX6 Dual/6Quad Applications Processor Reference for Industrial Products[Z].2014.

[10]溫尚書,陳剛,馮利美.在實踐中學嵌入式Linux應用程序開發[M].北京:電子工業出版社,2012.

[11]聶和平.基于ARM9的嵌入式Linux系統移植與驅動開發[D].南京:南京郵電大學,2013:6-33.

[12]徐青松.智能車載設備嵌入式操作系統裁剪研究[D].長沙:長沙理工大學,2013:17-37.

[責任編輯 代俊秋]

Design of automobile virtual instrument based on i.MX6Q and OpenGL ES

LI Ruiqi1,NIU Xinhuan1,WANG Zhengyu2,YAO Yao3
(1.Tianjin Key Laboratory of Electronic Materials and Devices,Hebei University of Technology,Tianjin 300130,China;2.School of Electrical and Automation Engineering,Tianjin University,Tianjin 300072,China;3.Tianjin Metrology Supervision and Testing Research Institute,Tianjin 300192,China)

A new type of virtual instrument was designed in this paper.The board was developed by NXP,using i.MX6Q as the core processor of hardware platform.It can reduce the development cost of the automobile instrument and improve the GPU utilization,create a multi-threaded program can reduce physical space.At the same time,basing on Linux system as a software development platform,OpenGL ES was used for virtual instrument graphic interface development which involved set the VBO and the 3DS model conversion.It can enhance the friendliness of user interface.This kind of new virtual instrument system has the advantages of cross-platform,low cost,elegant interface,good scalability,etc.In view of the embedded system has a low computing and graphics processing power,smaller storage space,lower display resolution.

virtual instrument;i.MX6Q;OpenGL ES;3DS;graphical interface development

TP391

A

1007-2373(2017)02-0001-05

10.14081/j.cnki.hgdxb.2017.02.001

2016-12-13

國家02重大專項(2016ZX02301003-004-007);天津市自然科學基金(16JCYBJC16100);天津市科技計劃項目(10ZCKFGX01300)

李睿琦(1989-),女,碩士研究生.通訊作者:牛新環(1973-),女,教授.

猜你喜歡
界面程序汽車
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
汽車的“出賣”
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
人機交互界面發展趨勢研究
汽車們的喜怒哀樂
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 国产二级毛片| 精品国产污污免费网站| 国产视频久久久久| 亚洲天堂日韩在线| 久久精品日日躁夜夜躁欧美| 亚洲天堂精品视频| 国产视频一区二区在线观看| 日韩在线影院| 中文天堂在线视频| 91国内在线观看| 国产无码精品在线播放| 亚洲美女久久| 国产丝袜精品| 国产日韩精品欧美一区灰| 四虎永久免费地址| 天天躁夜夜躁狠狠躁躁88| 久久婷婷五月综合色一区二区| 欧美区国产区| 国产网站免费看| 日本黄色a视频| 国产福利拍拍拍| 亚洲 日韩 激情 无码 中出| 国产成人av大片在线播放| 日本爱爱精品一区二区| 国产黄网永久免费| 亚洲色欲色欲www在线观看| 欧美在线综合视频| 在线观看欧美精品二区| 免费Aⅴ片在线观看蜜芽Tⅴ | 亚洲欧洲自拍拍偷午夜色无码| 国产18在线| 青青操视频在线| 国产区在线观看视频| 精品欧美一区二区三区在线| 欧美影院久久| 91系列在线观看| 91成人免费观看在线观看| 人人妻人人澡人人爽欧美一区 | 久久这里只有精品23| 日韩欧美中文亚洲高清在线| 91青青在线视频| 无遮挡国产高潮视频免费观看| 无码高清专区| 乱人伦中文视频在线观看免费| AV在线麻免费观看网站| 奇米精品一区二区三区在线观看| 亚洲天堂视频在线观看| 在线观看国产黄色| 人妻丰满熟妇啪啪| 久久情精品国产品免费| 在线免费无码视频| 91尤物国产尤物福利在线| 欧美一级在线看| 秋霞一区二区三区| 国产91av在线| 精品国产一区91在线| 成人免费一级片| 久久亚洲中文字幕精品一区| 国产成人91精品| 国产女人18毛片水真多1| 日韩欧美在线观看| 欧美日韩国产高清一区二区三区| 欧美第一页在线| 99热线精品大全在线观看| 婷婷亚洲天堂| 欧美色图第一页| 欧美亚洲激情| 久久香蕉国产线看精品| 五月天在线网站| 玖玖精品在线| 亚洲av无码人妻| 欧美.成人.综合在线| 久久综合丝袜长腿丝袜| AV色爱天堂网| 91无码人妻精品一区二区蜜桃| 五月激情婷婷综合| 999精品视频在线| 91视频首页| 午夜限制老子影院888| 亚洲自偷自拍另类小说| 久草视频中文| 欧美日韩另类在线|