當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于嵌入式Linux與QT的汽車虛擬儀表設(shè)計

摘要:為了簡化汽車內(nèi)部控制系統(tǒng),降低汽車制造成本,提高人車交互界面的友好度,設(shè)計并實(shí)現(xiàn)了一種新型的汽車虛擬儀表。采用以ARM處理器S3C6410為核心的硬件平臺和以嵌入式Linux系統(tǒng)為核心的軟件平臺,并在此基礎(chǔ)上采用開放源代碼的圖形界面庫QT開發(fā)儀表終端應(yīng)用程序。經(jīng)試驗(yàn)驗(yàn)證,虛擬儀表系統(tǒng)具有成本較低、界面友好、反應(yīng)靈敏等特點(diǎn),并在跨平臺性、可擴(kuò)展性等方面得到了顯著改善。
關(guān)鍵詞:汽車;虛擬儀表;嵌入式Linux;QT;ARM

0 引言
    儀表作為汽車整個系統(tǒng)中十分重要的部分,是提高汽車綜合性能的重要方面之一。隨著計算機(jī)軟硬件技術(shù)、總線技術(shù)、電子技術(shù)等的快速發(fā)展,控制系統(tǒng)臃腫、接線布線復(fù)雜、占用空間大的傳統(tǒng)電磁機(jī)械儀表漸漸被淘汰,虛擬儀表正以傳統(tǒng)機(jī)械儀表無法比擬的速度迅猛發(fā)展。目前虛擬儀表通常包括純數(shù)字儀表和虛擬儀表盤儀表2種:純數(shù)字儀表成本較低,但功能和界面比較簡單,滿足不了一般駕駛員的需求;而現(xiàn)有的虛擬儀表盤儀表雖然功能和界面比較豐富,但又存在著開發(fā)成本高、可移植性和可重繪性差、可擴(kuò)展性不足等缺點(diǎn),不利于大范圍的推廣與應(yīng)用。
    針對傳統(tǒng)儀表和現(xiàn)有儀表存在的不足,本文提出了一種新型的車載虛擬儀表設(shè)計方案,采用ARM處理器S3C6410為核心的硬件平臺和以嵌入式Linux系統(tǒng)為核心的軟件平臺,并在此基礎(chǔ)上采用開放源代碼的圖形界面庫QT開發(fā)儀表終端應(yīng)用程序。該虛擬儀表可讀性好,讀數(shù)精度高,在可移植性、可維護(hù)性和成本方面都得到了良好的改善,具有較大的科研價值和商業(yè)使用價值。

1 系統(tǒng)總體設(shè)計
    本文所介紹的車載虛擬儀表的基本設(shè)計思想是將汽車上安裝的各種傳感器采集到的數(shù)據(jù)進(jìn)行智能化的處理,然后在運(yùn)行于嵌入式Linux系統(tǒng)的使用QT設(shè)計的虛擬儀表盤上進(jìn)行顯示,以便于監(jiān)測汽車各系統(tǒng)的工作狀況,如剩余油量、當(dāng)前車速、行駛里程等,并在某狀態(tài)出現(xiàn)異?;虼嬖谖kU時向駕駛員提示報警。
    如圖1所示,本車載虛擬儀表系統(tǒng)的設(shè)計總體由3個部分組成:


    (1)信號采集:對汽車上安裝的的各種傳感器采集的速度、剩余油量等汽車狀態(tài)信息,經(jīng)過處理轉(zhuǎn)換后,將其轉(zhuǎn)換為計算機(jī)可以識別的數(shù)字量;
    (2)數(shù)據(jù)處理:將“信號采集”過程傳輸來的數(shù)據(jù)進(jìn)行必要的處理,將有用的數(shù)據(jù)保存,以便于顯示和報警,本過程主要由嵌入式處理器完成;
    (3)人機(jī)交互:將“數(shù)據(jù)處理”過程處理完成的數(shù)據(jù),在使用QT設(shè)計的虛擬儀表盤上動態(tài)顯示,主要顯示內(nèi)容有:當(dāng)前速度、燃油箱的存油量、時間日期、行駛里程、報警燈等;在某項(xiàng)狀態(tài)出現(xiàn)異常時,通過報警模塊向駕駛員提示報警。

2 虛擬儀表硬件設(shè)計
    虛擬儀表的硬件結(jié)構(gòu)圖如圖2所示。虛擬儀表的核心處理器采用ARM1176JZF-S核的S3C6410芯片,其主頻最高可達(dá)到667 MHz,內(nèi)部繼承了強(qiáng)大的多媒體處理單元,帶有3D圖形硬件加速器,并支持2D圖形圖像的平滑縮放等操作,有利于為用戶提供高靈敏度的汽車狀態(tài)動態(tài)顯示;外接256MB SDRAM和2GBNANDFLASH;串口連接信號轉(zhuǎn)換處理模塊,轉(zhuǎn)換處理模塊內(nèi)部集成CAN-RS232轉(zhuǎn)換器及24位的A/D轉(zhuǎn)換器LTC2414,接收相關(guān)傳感器采集的各種汽車狀態(tài)信號,并經(jīng)過處理后,將處理完成的數(shù)據(jù)上傳至處理器;外接LCD模塊采用8寸TFT液晶顯示屏,處理器內(nèi)部集成的LCD控制器信號線經(jīng)過驅(qū)動電路后即可連接LCD模塊,為虛擬儀表顯示提供了硬件平臺;外接由語音芯片組成的報警模塊,在必要的時候可以由處理器驅(qū)動報警模塊以語音的形式向駕駛員提示報警。

[!--empirenews.page--]

3 虛擬儀表軟件設(shè)計
    本系統(tǒng)采用嵌入式Linux作為操作系統(tǒng),在Linux平臺下編寫虛擬儀表的驅(qū)動程序和應(yīng)用程序,采用QT/embedded設(shè)計虛擬儀表軟面板。應(yīng)用程序的主要功能有,當(dāng)接收到各個經(jīng)轉(zhuǎn)換處理的傳感器采集到的信號后,將其有用的數(shù)據(jù)提取并加以存儲,然后調(diào)用儀表顯示程序,將需要顯示的內(nèi)容顯示到不同的虛擬儀表盤中,同時并行判斷各項(xiàng)參數(shù)是否正常,若出現(xiàn)異常則調(diào)用語音報警程序和顯示程序提示報警。虛擬儀表軟件結(jié)構(gòu)圖如圖3所示。虛擬儀表軟件開發(fā)主要有2個內(nèi)容:開發(fā)環(huán)境的搭建、虛擬儀表應(yīng)用程序的設(shè)計。


3.1 開發(fā)環(huán)境的搭建
    為了開發(fā)滿足功能的應(yīng)用程序,本文采用的軟件開發(fā)環(huán)境是Vmware WorkStation 7虛擬機(jī)和Fedora 13操作系統(tǒng),在此環(huán)境中安裝交叉編譯器AlRM-linux-gcc 4.5.1,用來完成包含相關(guān)驅(qū)動程序的虛擬儀表系統(tǒng)內(nèi)核、QT庫和應(yīng)用程序的編譯;編譯安裝QT/Embedded庫,用來支持虛擬儀表人機(jī)交互界面程序的開發(fā)并生成虛擬儀表系統(tǒng)中需要的QT庫文件;編譯Tslib觸摸屏庫,為虛擬儀表系統(tǒng)添加觸摸屏支持;在Fedora13系統(tǒng)中安裝QT Creator軟件,用于完成虛擬儀表系統(tǒng)應(yīng)用程序的開發(fā);移植嵌入式設(shè)備的系統(tǒng)引導(dǎo)程序U-boot;編寫硬件平臺相關(guān)驅(qū)動,然后裁剪編譯Linux2.6.10內(nèi)核并在其中加載已編譯的相關(guān)驅(qū)動;制作硬件平臺需要的根文件系統(tǒng),在其中移植已配置、編譯過的tslib庫和QT/Embedded庫。
3.2 應(yīng)用程序開發(fā)
    本虛擬儀表系統(tǒng)的的應(yīng)用程序基于QT/Embedded平臺,使用QT的輕量級集成開發(fā)環(huán)境QT Creator完成開發(fā),最后在已搭建的開發(fā)環(huán)境中編譯生成可執(zhí)行二進(jìn)制文件,并將其移植到硬件平臺中的文件系統(tǒng)中進(jìn)行測試。


    虛擬儀表系統(tǒng)應(yīng)用程序的主要工作流程如圖4所示,在系統(tǒng)上電后,應(yīng)用程序開始運(yùn)行,要實(shí)現(xiàn)汽車虛擬儀表系統(tǒng)的功能,應(yīng)用程序需要完成虛擬儀表面板和后臺處理程序的開發(fā):
3.2.1 虛擬儀表面板的繪制
    虛擬儀表面板主要將汽車的一些基本狀態(tài)在LCD上通過表盤和數(shù)字直觀、動態(tài)的顯示出來,本設(shè)計中采用速度、油量、電池電量、時間日期、安全帶、安全氣囊、行駛里程等狀態(tài)。
    為了提高本虛擬儀表的可擴(kuò)展性和可維護(hù)性,在本設(shè)計中,為每種具體的虛擬儀表對象定義一個抽象類。下面即以儀表盤類(QMeter)為例介紹本系統(tǒng)中虛擬儀器面板的繪制。
    在需要顯示的各種狀態(tài)中,速度和油量通常以儀表盤形式顯示,虛擬儀表模塊中的虛擬儀表盤采用QT的二維圖形引擎的基礎(chǔ)類QPainter開發(fā)。QPainter具有豐富的圖形圖像繪制函數(shù),并支持反走樣、漸變填充、像素混合、線性變換等特性,利用這些函數(shù)完成儀表盤的繪制。
    [!--empirenews.page--]
3.2.2 后臺處理程序
    后臺處理程序主要將系統(tǒng)下層采集的數(shù)據(jù)進(jìn)行分析處理,將有用的數(shù)據(jù)傳送至虛擬儀表面板顯示,實(shí)現(xiàn)虛擬儀表的動態(tài)顯示,同時以多線程的方式不斷檢測汽車各項(xiàng)狀態(tài),當(dāng)某項(xiàng)狀態(tài)出現(xiàn)異?;虼嬖谖kU時驅(qū)動LCD和語音芯片向駕駛員報警,其中異常狀態(tài)有超速、存油量過低、電池電量過低等。下面以報警子程序?yàn)槔v解后臺處理子程序。
    報警子程序在后臺處理程序中新建一個線程,通過多線程的方式以輪詢的方式查詢各個傳感器的狀態(tài),當(dāng)發(fā)現(xiàn)某個狀態(tài)存在危險時,驅(qū)動語音芯片發(fā)出相應(yīng)的報警信息。其定義如下:

    通過調(diào)用QObject對象的connect函數(shù),將報警線程的sendData信號與主線程的槽函數(shù)Deal()關(guān)聯(lián),當(dāng)報警偵聽線程發(fā)射信號時,主線程槽函數(shù)及時被調(diào)用,驅(qū)動報警。

4 應(yīng)用程序示例
    將裁剪、編譯過的內(nèi)核與制作的帶QT庫的文件系統(tǒng)燒寫到開發(fā)板。在開發(fā)環(huán)境內(nèi)交叉編譯編寫的應(yīng)用程序,得到可執(zhí)行二進(jìn)制文件,將此文件移植到開發(fā)板,即可實(shí)現(xiàn)應(yīng)用程序的發(fā)布。重新開機(jī),運(yùn)行應(yīng)用程序即顯示虛擬儀表界面,如圖5所示。


    通過汽車上的各種傳感器采集數(shù)據(jù),通過控制器和高速CAN總線傳送到S3C6410硬件平臺解析,應(yīng)用程序得到解析后的數(shù)據(jù)后,即可動態(tài)的顯示當(dāng)前車輛的各種狀態(tài)及報警情況。

5 結(jié)語
    本文設(shè)計的汽車虛擬儀表,具有優(yōu)良的跨平臺性能;該設(shè)計方案使得儀表信息量增大,操作簡單,易于維護(hù),界面友好;采用開放源碼設(shè)計,使得本系統(tǒng)開發(fā)成本降低;使用雙緩沖技術(shù)消除了儀表顯示頁面的閃爍;采用多線程技術(shù),使處理、顯示與報警同時進(jìn)行,提高了系統(tǒng)的實(shí)時性與靈敏度;將具體的虛擬儀表對象定義為抽象類,增強(qiáng)了虛擬儀表的擴(kuò)展性。經(jīng)實(shí)驗(yàn)測試,本虛擬儀表系統(tǒng)的所有功能模塊均能正常運(yùn)行,該系統(tǒng)的應(yīng)用將對降低汽車的成本,縮短汽車儀表系統(tǒng)的研發(fā)周期,提供高友好度的人機(jī)界面具有重要的意義。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉