中文字幕无码日韩视频无码三区

一種實時嵌入式3d數字儀表構造方法

文檔序號:6444090閱讀:423來源:國知局
專利名稱:一種實時嵌入式3d數字儀表構造方法
一種實時嵌入式3D數字儀表構造方法技術領域
本發明屬于計算機嵌入式軟件領域,具體涉及一種實時嵌入式3D數字儀表構造方法。
背景技術
目前最常見的汽車儀表大多數采用機電式組合儀表,隨著儀表板上顯示的信息不斷增加,造成組合儀表表盤面積不斷增大,而實際應用中現有的機電式組合汽車儀表的儀表盤展示能力有限,無法滿足不斷增加的車輛各項信息處理、展示的需要。綜合儀表集成多種功能是車用儀表發展的趨勢之一,現有車用組合儀表功能單一,大多只能顯示基本的諸如發動機轉速、車輛時速等基本狀態信息,而追加其它附加功能極為困難;此外現有儀表顯示的用戶界面表現形式較為單一,無法用軟件方式展示3D效果;而借助于模具實現3D的展示效果,成本高,更新周期長。
另外,從開發角度講,現有機電儀表組合儀表的研發周期長,不易快速開發,更新升級較為困難,定型生產后,小版本的升級較為困難,版本升級的周期較長。發明內容
鑒于現有技術的缺陷,本發明目的在于提供一種實時嵌入式3D數字儀表構造方法,其特征在于包括如下步驟
以RTEMS操作系統為系統核心,在RTEMS操作系統之上定制符合OpenGL ESl. 0、 2.0規范的3D圖形引擎;
建立一組符合OpenGL ESl. 0,2.0規范、可運行在RTEMS操作系統上的數字儀表基本構件,并用XML對這些構件的名稱、類別、基本參數類型,基本參數值域進行描述,把這些構件組合形成數字儀表構件庫;
以QT為基礎定制與RTEMS和3D基礎運行環境相適應的QT Embedded開發支撐工且.Z、 9
采用所述QT Embedded開發支撐工具從所述的儀表構件庫中選擇已有的儀表基本構件組成新的數字儀表應用;
在所述QT Embedded開發支撐工具中編譯所組成的新的數字儀表應用,并生成目標系統的鏡像文件;
將鏡像文件下載到目標硬件平臺,進而構造實時嵌入式3D數字儀表實例。
本發明所述的實時嵌入式3D數字儀表構造方法中所述QT Embedded開發支撐工具可以實現對該所述數字儀表基本構件庫的中的基本儀表構件進行增加、刪除、修改操作, 并可以選擇數字儀表基本構件組合形成新的數字儀表應用。
本發明的嵌入式實時3D數字儀表軟件解決方案提供了一套數字儀表的基礎運行環境,同時提供一套與之配套的開發與部署工具,以實現數字儀表應用的快速開發與部署。

圖1為本發明實時嵌入式3D數字儀表構造方法的主要構成示意圖2是本發明實時嵌入式3D數字儀表開發過程示意圖3是本發明實時嵌入式3D數字儀表應用層次結構示意圖。
具體實施方式
下面結合附圖對本發明實時嵌入式3D數字儀表構造方法的具體過程進行詳細描述。
RTEMS,即實時多處理器系統(Real Time Executive for Multiprocessor Systems),是一個開源的實時嵌入操作系統RTOS。它最早用于美國國防系統,早期的名稱為實時導彈系統(Real Time Executive for Missile Systems),后來改名為實時軍用系統 (Real Time Executive for Military Systems),現在由OAR公司負責版本的升級與維護。 目前無論是航空航天、軍工,還是民用領域RTEMS都有著極為廣泛的應用。具體內容可以參見://www. rtems. com。
OpenGL ES (OpenGL for Embedded Systems)是 OpenGL三維圖形 API 的子集,針對手機、PDA和游戲主機等嵌入式設備而設計。該API由Khronos集團定義推廣,Khronos是一個圖形軟硬件行業協會,該協會主要關注圖形和多媒體方面的開放標準。OpenGL-ES是免授權費的,跨平臺的,功能完善的2D和3D圖形應用程序接口 API,主要針對多種嵌入式系統專門設計-包括控制臺、移動電話、手持設備、家電設備和汽車。它由精心定義的桌面OpenGL 子集組成,創造了軟件與圖形加速間靈活強大的底層交互接口。OpenGLES包含浮點運算和定點運算系統描述以及EGL針對便攜設備的本地視窗系統規范。OpenGL ES 1.X面向功能固定的硬件所設計并提供加速支持、圖形質量及性能標準。OpenGLES 2. X則提供包括遮蓋器技術在內的全可編程3D圖形算法。具體內容可以參見//WWW. khronos. cn/0
本發明方案由RTEMS操作系統、符合OpenGL ESl. 0,2. 0規范的3D圖形引擎構成的基礎運行時環境;以QT Embedded為基礎定制與RTEMS和3D圖形引擎基礎運行時環境的開發支撐工具;以及采用開發支撐工具研發具體的數字綜合儀表應用并部署到具體的硬件環境上運行的全過程等系列軟件組件與實施方法構成。
本發明的技術方案具體如下構建嵌入式實時的3D基礎運行時環境。以RTEMS 操作系統為基礎,在RTEMS操作系統之上建立符合OpenGL ESl. 0,2. 0規范的3D圖形引擎,由此構成基礎運行時環境。其中RTEMS操作系統需要依據具體的硬件環境定制相應的BSP,BSP (Board Support Package)即板級支持包,是介于主板硬件和操縱系統之間的一層軟件,主要目的是為了使操作系統能夠更好的運行于硬件主板之上,不同的操縱系統、 不同的硬件需要不同的BSP ;定制的OpenGL ES圖形引擎,需要依據EGL1. X規范,在RTEMS 操作系統上定制,使其可以在RTEMS操作系統上運行。其中EGL即本地平臺接口,是介于諸如OpenGL ES或OpenVG的Khronos渲染API與底層本地平臺窗口系統的接口。它被用于處理圖形管理、表面/緩沖捆綁、渲染同步及支援使用其他Khronos API進行的高效、加速、混合模式2D和3D渲染。;以QT Embedded為基礎,定制目標操作系統為RTEMS的專用 QTEmbedded,在專用的QT Embedded中,調用針對RTEMS與目標處理器的GNU工具鏈,包括 GCC、⑶B、Binutils等。其中QT Embedded為諾基亞公司研發的開源集成開發環境,在此基礎上針對目標處理器、RTEMS操作系統定制形成專用版。GNU Compiler Collection,簡稱 GCC,是GNU項目下的編譯工具,是GNU工具鏈的核心部件,支持包括UNIX,Linux,Mac OS在內的多種操作系統。GNU Debugger,簡稱⑶B,是GNU工具鏈中的調試工具。⑶B具備各種調試功能,能針對程序的運行進行追蹤與警告,使用⑶B的使用者可以監控及修改程序的內部變量值,甚至監控與修改獨立于主程序運行之外,獨立調用。GNU Binary Utilities, 又叫binutils,是一套二進制工具,用于處理多種格式的目標代碼文件,常配合gcc,make 和gdb等編譯、調試工具使用;
研發定制一組符合OpenGL ESl. 0,2. 0規范、可運行在RTEMS操作系統上的數字儀表基本構件,并用XML對這些構件的名稱、類別、基本參數類型,基本參數值域等進行描述, 把這些構件組合形成數字儀表構件庫;在所述的專用QT Embedded工具實現對該構件庫的中的儀表構件進行增加、刪除、修改等維護操作,并可以挑選這些儀表組合形成新的數字儀表應用;
該方案的具體儀表應用開發,遵循以下流程
1)準備針對目標處理器的工具鏈。在GNU工具鏈的基礎上,重新編譯定制,生成針對如ARM、X86、PPC等不同目標處理器的以RTEMS為目標操作系統的工具鏈,并在QT Embedded專用版中配置好。本步驟在同一硬件、同一操作系統版本中,只定制一次。
2)在QT Embedded專用版中,從所述的儀表庫中選擇已有的儀表構件組成新儀表應用或在QT的設計界面設計一個新的儀表應用;
3)在QT Embedded專用版中編譯儀表應用,并生成目標系統的鏡像文件;
4)將鏡像文件下載到目標硬件平臺。
本發明的創新點在于以下幾方面
1、本發明的具體基本功能子系統由數字儀表基礎運行平臺、數字儀表構件庫與相應QT Embedded專用版開發配置工具等幾部分組成,形成了 RTEMS操作系統上的完整的3D 應用的開發與部署、運行系列環境,并由以QT Embedded專用版為具體實例的開發工具,以此定制具體的數字儀表應用;
2、本發明在RTEMS嵌入式實時操作系統上,定制了符合OpenGL ES1.0、2.0規范的 3D圖形引擎,使得RTEMS操作系統可以支持3D應用程序;
3、本發明構建了一組符合OpenGL ESl. 0,2. 0規范的在RTEMS操作系統上運行的儀表構件,并形成了儀表構件庫,使得RTEMS上的儀表應用開發可以復用儀表庫的構件,減少了儀表應用開發的工作量,縮短了開發周期;
4、本發明定制的數字儀表應用可以3D的圖形用戶界面展示車輛的各項狀態,并通過軟件切換界面的形式,在不換硬件的情況下,增加了儀表可展示的信息數量;
5、本發明可以在不更換硬件的情況,利用所定制的開發工具,通過軟件升級的形式實現不同的版本的數字儀表。
下面結合附圖和具體實施方式
對本發明作進一步說明
圖1中,列出了本方案的基本構成組件,1為數字儀表硬件,它包括了主控的CPU, CAN控制器與其它外圍設備;
2為RTEMS操作系統,包括內核,驅動程序,API等;
3為符合Open GL ESl. 0,2. 0規范的圖形引擎;
4為數字儀表應用,由6開發配置工具從5構件庫中選擇構件組合或開發而成;
5為數字儀表的構件庫,負責管理儀表構件;
6為本方案的開發配置工具,實現儀表應用的開發,包括代碼的編輯,編譯,調試, 下載等。
圖1中,1,2,3,4為儀表應用具體實現的層次結構形態;
5,9為本方案中可復用的部分,在開發階段由6調用;
6,由7,8兩部分構成,形成本方案中的開發配置工具。
圖2中,描述了本方案應用開發實例的開發部署的具體實現過程。
1)開發硬件。自主開發具體儀表應用的硬件,即下位機;
2)準備開發工具。在上位機,先執行1定制工具鏈,并在^!T Embedded專用版中配置好工具鏈;
3)儀表應用開發。利用5QT Embedded專用版進行2儀表應用程序的開發,包括界面的設計、C/C++代碼的編寫。在開發過程中,可以復用6儀表構件庫中的儀表構件以減少開發工作量,縮短開發工期,也可以直接采用QT Embedded專用版編碼實現。
4)編譯與調試部署。在QT Embedded專用版中,調用定制的GNU工具鏈進行編譯、 調試,即調用GCC進行編譯,調用GDB進行調試,調用Binutils進行鏈接與鏡像文件生成, 然后下載到下位機上,即完成對儀表應用的部署。
5)儀表應用運行。完成第4步以后,給下位機上電,下位機即自動加載儀表應用儀表,即4儀表應用開始運行。
以上各步驟中,硬件開發為相對獨立的一個開發階段;第2至第4步,為軟件開發階段,該階段由開發人員在上位機完成;第5步為儀表應用運行階段,可以集成的汽車平臺或其它目標平臺后運行。
圖3中,描述了本方案的具體儀表應用在部署后的層次結構。
其中1為儀表硬件;
2為定制的RTEMS操作系統;
3為定制的在RTEMS上運行的符合OpenGL ESl. 0,2. 0規范的3D引擎;
4為具體的儀表應用。
系統在上電后,將自動加載RTEMS操作系統以及儀表應用等軟件。
硬件層的CAN控制器從車用CAN網絡中采集各項狀態數據;
RTEMS操作系統層的CAN驅動負責對硬件層的CAN控制器訪問、操作,將CAN控制器采集到的數據轉送到儀表應用層;
儀表應用層應用程序將CAN數據包進行分析得到不同類型的需求顯示的數據,不同類型的顯示數據通過應用程序調用3D引擎進行處理得到最終需要顯示的數據;
儀表應用程序將最終需要顯示的數據轉發給操作系統層的LCD驅動,LCD驅動將數據送給IXD顯示屏顯示。
以上過程,即完成了從車用CAN網絡采集數據、數據分析、3D數據合成以及顯示的過程。
最后應當說明的是以上實施例僅用以說明本發明的技術方案而非對其限制;盡管參照較佳實施例對本發明進行了詳細的說明,所屬領域的普通技術人員應當理解依然可以對本發明的具體實施方式
進行修改或者對部分技術特征進行等同替換;而不脫離本發明技術方案的精神,其均應涵蓋在本發明請求保護的技術方案范圍當中。
權利要求
1.一種實時嵌入式3D數字儀表構造方法,其特征在于包括如下步驟以RTEMS操作系統為系統核心,在RTEMS操作系統之上定制符合OpenGL ESI. 0、2. 0規范的3D圖形引擎;建立一組符合OpenGL ESl. 0,2.0規范、可運行在RTEMS操作系統上的數字儀表基本構件,并用XML對這些構件的名稱、類別、基本參數類型,基本參數值域進行描述,把這些構件組合形成數字儀表構件庫;以QT為基礎定制與RTEMS和3D基礎運行環境相適應的QT Embedded開發支撐工具;采用所述QT Embedded開發支撐工具從所述的儀表構件庫中選擇已有的儀表基本構件組成新的數字儀表應用;在所述QT Embedded開發支撐工具中編譯所組成的新的數字儀表應用,并生成目標系統的鏡像文件;將鏡像文件下載到目標硬件平臺,進而構造實時嵌入式3D數字儀表實例。
2.根據權利要求1所述的實時嵌入式3D數字儀表構造方法,其特征在于通過所述QT Embedded開發支撐工具實現對該所述數字儀表基本構件庫的中的基本儀表構件進行增加、 刪除、修改操作,并可以選擇數字儀表基本構件組合形成新的數字儀表應用。
全文摘要
一種實時嵌入式3D數字儀表構造方法,其以實時嵌入式RTEMS操作系統為基礎,在RTEMS操作系統基礎上構建3D圖形引擎并形成基礎運行環境,運行數字儀表應用;以專門定制后的QT Embedded版為開發配置工具,復用數字儀表構件庫中的構件,實現軟件方式的數字3D儀表應用的快速開發定制與升級。在同一硬件平臺,可以更易于實現具體儀表軟件應用的多版本定制與升級等。應用本方案,可以降低數字儀表應用開發人員的開發難度,縮短儀表應用產品的開發周期;應用本方案所定制的具體儀表應用與傳統的機電式汽車儀表相比,具有顯示風格美觀多樣,更好的3D視覺效果;可通過軟件界面切換的方式顯示更多車輛狀態信息。
文檔編號G06F9/44GK102541559SQ20111045043
公開日2012年7月4日 申請日期2011年12月30日 優先權日2011年12月30日
發明者劉立宇, 張克賓, 張弦, 李彥峰, 李紹杰, 潘遠明, 王棟, 賀春妮, 賈曉博 申請人:中科方德軟件有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1