馬 超,羅文廣,陳 劍,蘇 鑫
(1.桂林電子科技大學電子工程與自動化學院,廣西桂林 541004;2.廣西工學院電子信息與控制工程系,廣西柳州 545006;3.柳州華航電器有限公司研發(fā)2部,廣西柳州 545006)
基于嵌入式Qtopia汽車BCM自動檢測系統(tǒng)設計
馬 超1,羅文廣2,陳 劍3,蘇 鑫1
(1.桂林電子科技大學電子工程與自動化學院,廣西桂林 541004;2.廣西工學院電子信息與控制工程系,廣西柳州 545006;3.柳州華航電器有限公司研發(fā)2部,廣西柳州 545006)
汽車BCM在車身功能控制系統(tǒng)中起著舉足輕重的作用,因此汽車BCM出廠前的功能檢測一直得到企業(yè)和消費者的高度重視。目前多數(shù)企業(yè)仍使用人工測試的方法,而本次自動檢測系統(tǒng)是采用三星公司的S3C2440作為核心控制器,在嵌入式Linux系統(tǒng)下使用Qtopia應用開發(fā)平臺搭建控制界面添加檢測控制程序,通過接口板連接汽車BCM從而實現(xiàn)自動檢測功能。
汽車BCM;嵌入式Liunx;Qtopia;自動檢測
隨著汽車行業(yè)的快速發(fā)展,越來越多的車身電子設備得到應用。汽車BCM上的節(jié)點和連線也越來越多,導致了汽車BCM功能檢測變得更加復雜。
隨著生活水平的提高,人們對汽車功能的舒適性和安全性也提出了更高的要求。汽車BCM模塊控制著汽車上的絕大部分自動化功能,主要包括汽車的燈光、電動車窗、中央門鎖、防盜報警、電動后視鏡、電動座椅、雨刮器、安全氣囊等。在安裝使用BCM前企業(yè)就需要對汽車BCM進行全功能檢測。由于器件繁多,傳統(tǒng)的人工檢測方法工人需要根據(jù)各個功能模塊采用手動方式逐個進行測試,測試效率低,可靠性差。自動檢測系統(tǒng)用于生產檢測后不僅可以大幅降低BCM檢測儀的體積和成本,而且BCM的檢測效率也可提高4~6倍。投入使用后可為公司減少設備投資、節(jié)省人力,帶來更大經濟效益。
圖1 汽車BCM實物圖
汽車BCM檢測時,工人通過各種開關按鍵讓BCM在模擬負載環(huán)境下,測試各個功能模塊是否存在故障。而這些開關信號可通過程序中的高低電平來代替,這給自動化測試創(chuàng)造了可行條件。該自動檢測系統(tǒng)開始工作時,中央控制器通過接口板向汽車BCM發(fā)送測試信號,然后BCM做出響應驅動接口板上的負載,再將檢測結果傳輸?shù)狡聊徊@示。如果BCM一切功能正常,液晶顯示屏就會顯示BCM良好。而檢測過程中如果某一部分功能出現(xiàn)故障,則檢測系統(tǒng)立即停止檢測,并將故障部位顯示在液晶屏幕上提示檢測人員。另外基于嵌入式系統(tǒng)下通過Qtopia可以較為容易地開發(fā)觸摸屏控制界面,這樣工人就可以直觀地通過簡單的操作來實現(xiàn)汽車BCM功能的自動化檢測。
軟件部分是在嵌入式Redhat9Linux操作系統(tǒng)下設計的,使用Linux-2.6.30.4版本內核、EABI_4.3.3_EmbedSky交叉編譯工具。
開發(fā)板中缺少uboot開機無法啟動,要將編寫好的uboot通過Jtag分別燒寫到開發(fā)板的Nor Flash和Nand Flash存儲器中,即可從Nor Flash或者NandFlash啟動。
下載并解壓系統(tǒng)源碼到PCLinux的/opt/EmbedSky/中,解壓命令為#tar xvfj linux-2.6.30.4tar.bz2-C/opt/EmbedSky/,再進入內核源碼通過修改Makefile文件中的“ARCH?=(SUBARCH)”和“CROSS_COMPILE?=”分別為“ARCH=arm”和“CROSS_COMPILE=arm-linux-”從而添加系統(tǒng)對ARM的支持。使用命令:#make menuconfig打開配置菜單界面,如圖2所示。
圖2 Linux系統(tǒng)內核配置菜單界面
按要求配置完成以后通過命令:#make zImage進行編譯后生成zImage鏡像,最后將其燒寫到開發(fā)板中。
打開配置單,在配置單中增加對yaffs的支持。
對各項配置好以后保存為.config然后編譯出鏡像來。
Qtopia是Trolltech公司為采用嵌入式Linux操作系統(tǒng)的消費電子設備而開發(fā)的綜合應用平臺,Qtopia包含完整的應用層、靈活的用戶界面、窗口操作系統(tǒng)、應用程序啟動程序以及開發(fā)框架[2]。
本系統(tǒng)檢測設計時首先是在PC機上設計、修改、調試、編譯通過以后再燒錄到開發(fā)板的。首先解壓安裝交叉編譯器EABI_4.3.3_EmbedSky.tar.bz2,然后使用#source/etc/profile命令使其生效。接著編譯PC版本的Qtopia-2.2.0,打開PC機的Linux終端然后在終端輸入執(zhí)行命令:./x86-qtopia-2.2.0-kongquerorbuild,之后就開始編譯QT。等編譯完成后在終端里輸入命令#./test-x86就打開了Qtopia的仿真界面,如圖3所示。
圖3 Qtopia仿真界面
隨后編譯ARM版本的Qtopia接著制作Qtopia2.2.0的文件系統(tǒng)后就可以進行QT應用程序的開發(fā)。
首先設置環(huán)境變量,然后建立QT的項目文件后啟動Qtdesigner開始根據(jù)實際需要設計控制界面。在設計過程中需要注意QT信號和槽的對應關系,設計完成后保存為*.ui工程文件。通過uic軟件把建立好的工程轉換成源代碼,再添加通用的文件main.cpp文件,使用tmake中的progen軟件生成pro文件,從上面得到的pro文件再生成Makefile文件,然后制作啟動器、桌面圖標,在*.cpp文件中加入本設計系統(tǒng)對汽車BCM自動檢測的控制程序,最后進行編譯和仿真。在ARM環(huán)境下編譯完成后將“/opt/EmbenSky/Qte/arm -qtopia/qtopia/image/opt/Qtopia/bin/”目錄下的應用程序和在這個目錄“Qte/arm-qtopia/qtopia/image/opt/Qtopia/pics/”下的桌面圖標以及“Qte/arm -qtopia/qtopia/image/opt/Qtopia/apps/EmbedSky”目錄下的啟動器分別放到開發(fā)板文件系統(tǒng)對應的目錄下,編譯鏡像文件燒錄到開發(fā)板,最后重新啟動開發(fā)板后就可正常運行了。圖4為本設計系統(tǒng)的觸摸屏控制界面。
圖4 檢測系統(tǒng)的觸摸屏控制界面
綜合考慮經濟和性能等方面的因素,硬件控制部分本檢測系統(tǒng)選擇使用天嵌公司的TQ2440系列嵌入式開發(fā)板,核心板部分原理圖如圖5所示。核心板模塊是S3C2440,S3C2440是三星公司推出的一款功能強大,功耗低的ARM9嵌入式CPU,應用范圍廣泛。主頻400 MHz,觸摸屏使用次數(shù)可達到10萬次。
圖5 S3C2440核心板部分控制原理圖
圖6 串口電路原理圖
為實現(xiàn)分析控制器與汽車BCM的連接和信號上下傳輸,根據(jù)實際應用情況,系統(tǒng)設計了接口電路板。由于汽車BCM上的元器件和輸入輸出端口較多,而控制開發(fā)板的IO口較少,所以接口板起到一個橋梁作用。系統(tǒng)采用74hc573來擴展應用端口,另外接口板上還設計了大量的負載,比如LED燈、蜂鳴器、大功率電阻等。出于自動檢測系統(tǒng)的通用性考慮,接口板上還預留了一些輸入輸出端口作為以后開發(fā)擴展使用。整個接口板元器件繁多、布線難度相對比較大,其原理如圖7所示。
圖7 檢測系統(tǒng)接口板原理圖
隨著汽車安全性和舒適性的提高,進而促進了汽車BCM生產行業(yè)的發(fā)展,所以具有高效、準確、廉價性能的汽車BCM自動檢測系統(tǒng)的設計是發(fā)展趨勢。
設計是在嵌入式Linux操作系統(tǒng)下,通過Qtopia搭建控制界面而完成的一套自動檢測系統(tǒng)。其特點是功能強大、功耗低、成本小,并且易于開發(fā)新的控制系統(tǒng),升級空間比較大,今后可以根據(jù)需要進一步完善測試功能。汽車BCM故障檢測系統(tǒng)也將朝著更方便、準確、通用的方向發(fā)展。
[1]孔勁松.汽車儀表自動測試儀的研究與開發(fā)[D].大連:大連理工大學,2002.
[2]張永.基于ARM9的嵌入式Linux開發(fā)平臺構建與應用[D].天津:天津師范大學,2006.
[3]韋東山.嵌入式Linux應用開發(fā)完全手冊[M].北京:人民郵電出版社,2008.
[4]梁柱華,顧新.嵌入式Linux實時性的研究[J].電子科技,2005,18(11):59 -62,66.
[5]鄭洪剛.基于ARM9和Linux操作系統(tǒng)的嵌入式應用開發(fā)[D].西安:西安科技大學,2007.
[6]辛照華,田玉敏.嵌入式Linux系統(tǒng)的設計與實現(xiàn)[J].電子科技,2008,21(5):77-79.
Design of the Car's BCM Automatic Test System Based on Embedded Qtopia
MA Chao1,LUO Wenguang2,CHEN Jian3,SU Xin1
(1.School of Electronic Engineering and Robotization,Gulin University of Electronic Technology,Gulin 541004,China;2.Department of Electronic Information and Control Engineering,Guangxi University of Technology,Liuzhou 545006,China;3.No.2 Research Department,Huahang Electric Equipment Co.,Ltd,Liuzhou 545006,China)
The car's BCM plays a pivotal role in the body function control system.Therefore,both the enterprise and the consumer attach great importance to the detection of car's BCM before they leave the factory.Most of current enterprises still use manual testing methods.This test system uses samsung's S3C2440 as the core controller,uses the Qtopia application development platform control interface under the embedded Linux system to add a testing and control program,and realizes automatic detection through the interface board which connects car's BCM.
car BCM;ARM Linux;Qtopia;automatic detection
TP273
A
1007-7820(2012)06-027-04
2011-12-23
馬超(1986—),男,碩士研究生。研究方向:信號處理與信息集成系統(tǒng)。羅文廣(1967—),男,教授,碩士生導師。研究方向:自動檢測技術,智能控制。陳劍(1976—),男,工程師。研究方向:汽車電子。蘇鑫(1984—),男,碩士研究生。研究方向:光電檢測。