車曉波,莊汝科,劉曉建
(山東省汽車電子技術重點實驗室,山東省科學院自動化研究所,山東 濟南 250014)
車身控制器(body control module,BCM)作為車身控制系統的核心裝置之一,主要用于提高操控的方便性和乘坐的舒適性,其控制范圍涵蓋燈光、車門、雨刮、儀表等。隨著汽車電子技術的發展和車身電控單元數量的增多,BCM 承載的功能越來越復雜,如何保證BCM 控制功能的正確性和可靠性是產品開發過程中的一個難點。國外汽車廠商和機構已經對BCM 功能測試技術開展了廣泛研究,形成了如TestML、CTE 等測試用例生成工具,通過應用dSPACE、MATLAB/Simulink、Rhapsody 等控制系統開發工具進行仿真測試也取得了一些成果,形成了各自的解決方案[1-4],但是國內廠商在使用這些方案時,通常需要支付昂貴的軟硬件費用。國內機構針對BCM 功能測試也做過很多探索,對測試用例生成方法[5-7]、基于虛擬儀器的測試系統[8-10]等方面都開展過研究。目前測試手段已經擺脫了在原型車中進行的方式,半自動化、自動化的測試流程成為行業發展的趨勢。對于汽車廠家而言,通常都根據自己的車型進行BCM 功能定義,運用國外測試方案不可避免地存在著周期長、費用高、擴展難等不利因素,甚至無法直接套用國外技術。因此,掌握一種BCM 功能測試技術,對于提高汽車廠家的自主研發能力具有重要意義。
硬件在環仿真是自動化測試系統常用的技術手段之一,利用計算機運行仿真模型取代BCM 的控制流程,再將BCM 的輸出回路反饋給計算機形成一個閉環的測試系統,該方法使測試具有可重復性、外部條件可控制、可進行臨界測試和極限測試等優點。本文介紹了一種通用的BCM 硬件在環測試系統的實現過程。
BCM 工作時通過自身的I/O 接口或總線接收車內的開關信號、傳感器信號以及CAN/LIN 總線信號等,然后按照預先定義的控制邏輯,通過驅動電路實現對外圍負載的控制。BCM 功能測試的主要目的是驗證BCM 在不同操作下的響應是否達到設計要求,系統可分為硬件和軟件兩大部分,硬件部分應具備模擬實車環境為BCM 提供所需的輸入電平信號,同時對BCM 的反饋信號進行在線檢測的能力。軟件部分主要指上位機軟件,能夠模擬人工操作、機構指示和實車負載,檢測BCM 的運行狀態和行車參數,提供與BCM 設計要求相應的測試數據項。同時系統應具備操作靈活、開發周期短、系統易擴展等特點。
基于以上分析,BCM 邏輯功能測試系統將按如下思路實現。首先在計算機上開發人機操作界面和分析平臺,用于模擬人工操作和分析測試結果;其次,為計算機接入數據發生和接收裝置,將人機界面的操作轉換為控制信號發送給BCM;然后,將BCM 的輸出信號經數據接收裝置反饋給計算機形成閉合環路,用以檢驗BCM 的行為是否滿足功能需求。
BCM 功能測試系統總體結構如圖1 所示,主要包括計算機部分、數據采集設備、調理電路、電源、待測控制器等。

圖1 測試系統總體結構框圖Fig.1 Total structure block diagram of the test system
2.1.1 計算機部分
計算機部分包括工控機、數據采集板卡和顯示終端,工控機用于運行BCM 控制模型,是人機交互的主要平臺,模型采用National Instruments 公司的La bview 軟件實現,借助其數據流編程特性和Labview Real-Time 工具對嵌入式設備的支持,使系統更容易構建、修改和擴展。相對于其他工具如dSPACE、MicroAutoBox,本系統可以根據不同的任務需求,通過更換、升級板卡、增加虛擬儀器快速實現系統的升級換代。
2.1.2 數據采集設備
數據采集設備是連接計算機與待測BCM 之間的橋梁,用于傳遞來自計算機的控制命令,并接收BCM 的反饋信號。根據所處理信號類型的不同,數據采集設備包括數字I/O、模擬I/O、CAN/LIN 通訊設備等。設備與計算機之間采用插卡式連接,每一種設備是一種插卡,利用Labview 對實時操作系統和嵌入式設備的良好支持,可以在計算機上實現對數據采集設備的靈活控制,既保證了性能,又能采用不同硬件實現更多功能。
2.1.3 調理電路
調理電路用于將BCM 信號調理到板卡所能接受的范圍。如模擬、數字、脈沖電平電壓調制,信號濾波、放大調制等。例如,BCM 的有效電平通常是0~12 V,對于不能提供0~12 V 電壓信號的I/O 設備需要外接上拉/下拉電路加強驅動能力,以滿足BCM 的要求。
由于BCM 功能很多,這里不能一一列舉,下面以轉向燈測試為例對系統測試方法、BCM 信號控制進行說明。
轉向燈的行為包括單獨閃爍和雙閃兩種,就左轉向燈單獨閃爍功能而言,具體要求是:當滿足車速大于30 km/h、點火鑰匙處于ON 檔位置、危險警示信號有效,同時左轉向開關閉合時,左轉向燈單獨閃爍。
由于對BCM 的邏輯功能測試過程也是通過計算機控制BCM 輸入信號并分析反饋信號的過程,因此,測試前需要對BCM 的信號類型及其控制和測試方法進行分析。
轉向燈功能涉及4 路輸入和1 路輸出信號,均為數字信號,采用NI PCI-6515 數字采集卡作為數據采集設備,該設備提供64 通道隔離數字I/O 接口,內部具有可靠的工業24 V 邏輯閾值,外部輸出電壓在0~30 V內可調,可以完成開關量輸入輸出、脈沖信號模擬。


其中點火鑰匙、危險警示、左轉向開關信號3 路屬于開關量輸入信號,開關量信號接口電路如圖2 所示,輸入均為低電平有效,當In 引腳懸空或者為高電平時,由于12 V 電源端(P12Vcon)的存在使Out 引腳保持高電平,當In 引腳處于低電平時,Out 引腳轉為低電平。這樣計算機可以通過數字I/O 設備控制In 引腳來操縱開關的關斷。另一路車速輸入表現為方波信號,接口電路見圖2,根據車速與方波頻率的換算關系(車速=方波頻率×速度因子),可以得到波形的頻率參數,同理可以通過控制數字I/O 設備輸出一個準確的方波信號??紤]到車速是一個連續變化的值,無法在所有可能的車速條件下都進行測試,可以在臨界條件附近選取幾個離散的點如29.5 km/h,30 km/h,30.5 km/h 進行測試。左轉向燈輸出(Left_Out)為開關量信號,接口電路見圖3,Left_Out 端輸出信號將通過數字I/O設備反饋給計算機,其狀態以虛擬車燈的形式顯示出來,用于觀察和分析該項功能的完成情況。

圖4 BCM 測試軟件界面Fig.4 BCM testing software interface
系統軟件在計算機上為用戶提供了一個虛擬的操作界面(圖4),按功能可劃分為門鎖控制、外部燈光控制、雨刮控制、除霜控制、防盜報警控制及警示指示燈控制等;界面元素包括各種控制輸入的滑動開關、控制速度的旋鈕、顯示BCM 反饋信號的LED 燈以及關鍵的統計數據等。在進行測試操作之前,首先需要配置數字I/O設備端口與被測BCM 端口之間的關聯表,通過關聯表建立起兩者之間的一一對應關系。當用戶操作界面上的控件時,計算機通過驅動數字I/O 設備輸出更新的控件值到相應的BCM 端口,實現對BCM 的控制,同時BCM 的輸出狀態將在界面上以圖形的方式顯示出來。
在測試時,為了保證測試工作的準確性,應著重從以下三個方面進行考核:
(1)控制功能測試:模擬駕駛行為輸入,利用控件對BCM 對象(比如門鎖、外部燈光等)模擬操作,進行BCM 完整控制策略的驗證,通過反饋信號的狀態判斷BCM 動作是否符合預期要求;
(2)性能測試:對時間或者動作次數有要求的功能項,比如期望轉向燈正常閃爍頻率為86 次/s,需要對相關功能項進行多次測試,對響應結果的穩定性、可靠性、實時性等進行驗證;
(3)無效測試:通過手工或者自動注入方式,使被測功能項中若干輸入條件中的一個或者幾個無效,或者添加與待測功能項無關的激勵,檢測BCM 的輸出狀態變化,實現對無效功能的測試。
利用該系統對某車型BCM 邏輯功能進行了硬件在環測試,測試過程中發現的問題如表1 所示。

表1 BCM 功能測試結果(僅列出部分有問題的測試項)Table 1 BCM functional test results (Only some questioning test items listed)
被測的BCM 功能有56 項,通過測試發現其中12 項存在不同程度的邏輯問題,其中控制功能問題7 項,性能問題5 項。測試結果為產品質量的改進和提高提供了科學依據。整個測試過程均可通過計算機完成,與實車測試相比,簡化了操作,縮短了測試周期。
本系統主要用于BCM 邏輯功能測試,系統使用方便簡單,可以模擬實車環境,實現在線測試。通過適當擴展升級可以完成大型、復雜的測試任務,并且系統成本低、可靠性高,在BCM 產品以及其他電子類產品的功能測試方面具有推廣價值。
隨著BCM 集成的功能越來越復雜,對測試系統的要求也愈加嚴格。在下一步的工作中,一方面要進行完善的測試用例設計,建立測試用例生成機制,對于需要多輸入的功能項,既能剔除無效的用例提高測試效率,也能夠通過改變輸入條件的多種組合擴大測試覆蓋范圍;另一方面,要建立BCM 測試評價標準、測試規范和測試流程,使測試工作趨向規范化、標準化。
[1]BARI C′M,PETROVI C′I,PERI C′N.Neural network based sliding mode control of electronic throttle[J].Engineering Applications of Artificial Intelligence,2005,18(8):951 -96.
[2]NABI S,BALIKE M,ALLEN J,et al.An overview of hardware-in-the-loop testing systems at visteon[M].USA:SAE International,2004.
[3]HANSELMANN H.Hardware-in-the-loop simulation as a standard approach for development,customization,and production test[M].USA:SAE International,1993.
[4]LAMBERG K,RICHERT J,RASCHE R.A new environment for integrated development and management of ECU tests[M].USA:SAE International,2003.
[5]李銳,王三宏,范德全,等.OSEK 操作系統一致性測試用例的生成[J].計算機工程,2011,37(9):54 -56.
[6]崔應霞,李龍澍.基于輸入輸出關系的綜合黑盒測試方法[J].計算機工程與設計,2007,28(23):5581 -5584.
[7]李秋英,劉斌,阮鐮.灰盒測試方法在軟件可靠性測試中的應用[J].航空學報,2002,23(5):455 -458.
[8]趙永平,王啟松,李木天,等.汽車電子點火模塊檢測系統的研制[J].汽車技術,2009(10):43 -46.
[9]吳海東,郭孔輝,盧蕩.基于LabVIEW RT 的硬件在環仿真[J].汽車技術,2010(9):1 -4.
[10]王雷勇,盧燕,張天開.基于LabVIEW 的車身控制器功能測試系統設計[J].橡塑技術與裝備,2008,34(5):50 -52.