韓 淼,王莉莉,吳龍翔,方有成,葛樹威,尹天博
(哈爾濱理工大學 計算機科學與技術學院,哈爾濱150080)
近幾十年來,隨著電子技術的迅猛發展,各行各業都開始提倡機電一體化。汽車產業根據市場需要產生了各種車載電子產品。據國外專家預測,未來3~5年內汽車上裝用的車載系統成本將占汽車整體成本的25%以上。車載系統的主要功能不僅是監控行車過程中提供車速等各項指標,以及行車過程中的安全,同時還具有實時導航等人性化服務,為駕駛員提供方便。車載系統的開發過程中一直采用人工測試,其存在周期較長、結果受主觀因素影響、單元測試耦合度低等問題。針對這些問題,本文設計了自動化測試平臺,該平臺通過信號發生和采集器、機械仿生結構以及視覺檢測技術,有效地減少人工操作,降低主觀因素影響,提供更客觀準確的測試結果,縮短開發工程師解決問題周期,提供更科學的統計報告,提高項目管理水平和設計質量[1-2]。
隨著嵌入式系統處理器性能提升,以及4G/WIFI/藍牙等無線網絡廣泛應用,國內外汽車電子產品智能化不斷發展,不僅提升了駕駛主動和被動安全,同時給駕乘人員帶來良好的用戶體驗。但是,隨著汽車電子產品功能不斷增加的同時,產品功能測試保障手段卻并沒有同步發展,還停留在傳統人工測試階段,僅能通過增加測試人員數量和延長測試時間,來保障產品功能穩定。雖然增加測試人數和延長測試時間,短期內可以保障產品基本功能正常,但是并不能保障產品的長期可靠性運行[3-4]。另外,人工測試僅能定性保證產品功能正常,不能定量保證產品的可靠性,所以有必要通過自動化檢測平臺,快速準確、定量客觀的對產品功能進行測量分析,確保產品投入市場后的可靠運行。
車載電子系統主要分為2大類產品:一類為無人機交互界面的信號采集和處理的控制器,如發動機控制器、車門控制器等;另一類為具有人機交互界面的信號采集和處理控制器,如組合儀表、車載導航、空調控制器等。
無人機交互類產品,主要功能為信號采集、信號處理和信號執行。該類產品的測試系統相對簡單,只需按時序提供信號,在規定范圍內確認信號是否執行。而有人機交互類產品的測試系統相對復雜,是在無人機交互類產品基礎上增加人機交互操作和操作響應,主要通過機械執行結構和視覺檢測方式來確定產品可靠性。
車載電子產品的性能指標主要體現在信號采集、信號處理、信號執行、用戶操作識別、用戶操作反饋等方面的時效性和準確性。其它功能類模塊可依據國標要求進行定量檢測,如數字收音機性能應符合國標《GB/T 26775-2011車載音視頻系統通用技術條件》的要求等。
智能自動化檢測系統分為3個部分組成,如圖1所示。

圖1 系統架構示意圖Fig.1 Structure of application
(1)信號發生器和采集器。信號發生器和采集器主要用于模擬產生車身的各類實時模擬信號(如水溫、燃油、CVBS等模擬信號)和數字信號(如CAN報文、LIN報文、LVDS等數字信號),同時接收待測車載電子產品發送的模擬信號(如DC 12V輸出、音頻等模擬信號)和數字信號(如CAN報文、觸摸屏數字坐標等)。
(2)人機視覺交互執行控制機構。人機視覺交互執行控制機構主要用于模擬駕乘人員對待測產品的操作(如拔插U盤、觸摸或者滑動觸摸屏),以及驗證待測產品對駕乘人員操作的執行結果(如待測產品是否識別到U盤拔插事件、待測產品是否執行用戶對觸摸屏觸摸或滑動的操作)。
(3)上位機應用軟件。上位機應用軟件主要用于控制(1)、(2)部分的執行時序,測量結果數據庫存儲以及測量結果的可視化統計分析。
為簡化系統描述本系統將第(1)、(2)部分合并,簡稱為“轉換器”。
電氣接口設計基本原則是:滿足現有車載產品各類信號的輸出和輸入,并具有一定可擴展性,便于檢測系統隨著待測產品復雜度提高后的功能迭代而升級[5]。為兼容各類待測產品,提高檢測工裝復用性,降低檢測成本,本檢測平臺電氣接口采用螺柱矩陣化設計,不僅提供高工裝復用性,同時降低檢測工裝的硬件投入。電氣接口設計如圖2所示。

圖2 電氣結構設計實物圖Fig.2 Design of electrical structure
圖2中,每一個銅柱代表一個電氣接口與信號邏輯控制器電氣連接,插座與待測產品電氣連接。當測量不同類型車載電子產品時,只需要更換過渡線和重新定義螺柱電氣定義,即可完成待測產品的切換。本電氣接口設計具有便捷、高效、低成本的優勢。
本著通信接口具有通用性和可擴展性的設計原則,當產品功能復雜度提高時,僅需擴展協議數據內容即可;當產品功能模塊增加時,僅需擴展消息ID即可,盡可能不改變軟件建構,只對局部功能模塊進行完善。通信協議格式如圖3所示。

圖3 通信協議數據格式Fig.3 Communication protocol data format
其中,“起始幀”字段表示系統進入檢測模式;“ID”字段表示不同類型產品;“數據長度”字段表示本次通信的數據長度,便于各個系統確認數據完整性;“消息ID”字段表示各個功能編號;“數據內容”字段表示一次通信協議中的數據內容,數據內容為控制指令或者數據源;“校驗”字段采用單字節異或校驗,用于判斷本條協議的準確性。
交互接口工業設計分為2部分,一部分為機械手結構,用于模擬駕乘人員對待測產品的操作;另一部分為視頻采集結構,用于識別待測產品的液晶顯示界面狀態。交互接口工業設計示意如圖4所示。

圖4 交互接口工業設計示意圖Fig.4 Interactive interface industrial design sketch
圖4中,“機械手”結構主要用于模擬駕乘人員的三類手指操作,分別對應駕乘過程中對待測產品的手指操作。如開關機、拔插U盤、觸摸屏等操作;“視頻采集結構”實時采集液晶屏幕顯示內容,與機械手按時序先后進行圖像解析。當機械手執行完操作后,在設定檢測周期內,通過視頻采集液晶屏顯示狀態,來判斷機械手操作是否得到待檢品的實時響應[6]。為保證機械結構運動軌跡準確和視頻采集圖像參考基準,需設計專用的、具有限位功能的檢測支架,用于機械限位操作和視頻采集參考點。限位檢測支架如圖5所示。

圖5 限位檢測支架實物效果圖Fig.5 Physical effect diagram of limit detection bracket
因檢測系統需利用計算機外圍硬件進行數據交互,因此檢測系統的上位機軟件采用C/S(Client/Server)架構開發。待檢測產品為系統的客戶端,該自動測試平臺作為服務器端,轉換器在二者之間用于轉換各類不同產品和不同功能的數據格式。后臺應用采用MySQL數據庫存儲檢測結果數據。服務器端采用JavaFX編寫,負責檢測指令下發、檢測數據采集、檢測數據存儲以及可視化分析報表。
檢測數據模塊為本檢測平臺的核心業務,由檢測數據和數據分析2部分組成。
檢測數據過程如圖6所示。下位機即待檢品,通過轉換器與測試平臺正確通信握手連接后,待測數據由上位機發給待測產品,途中經由轉換器映射到待檢品對應的測試項目上。每條通信報文均含有待測產品唯一性編號,因此上位機可通過唯一性編號,區分同時檢測的多組待檢品的檢測狀態。不同產品對應不同檢測數據模塊,但協議框架相同,便于增加、修改檢測數據模塊。

圖6 檢測數據過程流程圖Fig.6 Flow chart of detection data process
待測產品按轉換器發送的檢測指令進行響應,如有反饋結果則通過通信協議反饋給上位機應用程序;如無反饋結果,則需要借助視覺檢測來判定待測產品狀態是否正確。視覺檢測結果也通過通信協議反饋給上位機應用程序。上位機檢測程序根據反饋的檢測結果與數據庫中的標準數據進行對比,檢測結果實時顯示并存儲到數據庫。
檢測數據存儲模塊包含對檢測結果數據的存數據操作和取數據操作2個步驟。
4.3.1 存數據操作
每一輪檢測均由上位機發起,每一輪待檢品反饋回的協議數據作為結果數據存入到MySQL數據庫中。存入數據格式如圖7所示。每一輪測試結果是一行,各字段從左至右與平臺中顯示各檢測項目的檢測順序一一對應,結果分為“1”和“0”2種狀態?!?”代表結果正確或者符合范圍,“0”代表結果錯誤、超出范圍或者超時無應答。通過“0”和“1”兩態來描述產品檢測狀態,可有效針對不同的檢測群體。
黑盒測試工程師和生產檢測人員僅關心檢測結果,而不關心不合格項目原因,僅通過簡單顏色或文字提示即可完成業務范圍內工作;白盒測試工程師和開發工程師需要定量確認不合格項目,在“0”狀態下查詢判定邏輯,即可知失敗的具體原因。
如果同一臺產品經過多輪測試,可通過檢測時間戳來區分每輪的檢測狀態,如圖7所示。

圖7 數據庫中表格式Fig.7 Table Form in Database
4.3.2 取數據操作
進行結果分析時,將多輪檢測的冗余數據過濾后,生成結果顯示模塊中的內容,操作者也可自定義字段和時間范圍來選擇要查看的檢測數據。
結果顯示模塊由實時顯示檢測結果、可視化圖表和出錯分析報告3部分構成。
將待測信息以表格形式顯示在本平臺中,表格中顯示各待測項的順序就是該平臺檢測時的順序,若沒有該檢測項則會自動跳過該行,表格中詳細顯示了序號、測試項目、檢測結果等測試項目,部分測試項目如圖8所示。

圖8 測試項目圖表Fig.8 Test Item Chart
實時檢測過程會動態顯示在上位機界面中,通過顏色加上文字提示,醒目表示待檢品的檢測結果。測試結果正確則顯示“正?!弊謽硬@示綠色;檢測結果與預期值不符或超出測試范圍則顯示“錯誤”字樣并顯示紅色;若檢測項數據不完整或檢測異常則顯示“需判定”字樣并顯示黃色;若無該待測項則自動跳過并顯示藍色。不同顏色區別檢測結果使測試過程直觀,并且可根據檢測到的位置隨時調整。檢測過程是可控的,若某一項的檢測結果影響后面的檢測項可以隨時停止,避免做出冗余的檢測,也可以跳過不合格項目,先進行整體檢測。
檢測數據過程完成后,該平臺將數據庫中的結果取出,并將其以可視化形式顯示在屏幕上。以數據可視化的柱狀圖為例說明:圖中包含各項檢測指標的對錯個數,其中橫坐標以上代表該待測項目測試結果正確的個數,橫坐標以下則代表錯誤個數,顯示順序從左到右與檢測順序一一對應。鼠標移動到某一列就會顯示出該列所代表測試項的全稱,每隔6列會在橫坐標顯示該列所代表的測試項目名稱,方便測試人員根據測試順序找到目標測試項。柱狀圖使結果以統計的形式更加直觀的顯示給待測人員,方便檢測人員觀察。柱狀圖如圖9所示。

圖9 數據柱狀圖展示Fig.9 Data Histogram Display
根據測試結果形成客觀的測試分析報告,用文字簡潔客觀的指出出錯項的對錯率和所有可能產生的原因,使結果分析不再完全靠測試人員主觀判斷,并且會結合每一輪檢測中所有出錯項產生的原因給出一個整體性的分析,使結果分析更加具體全面。以測試分析報告中的缺陷分布統計圖為例說明,如圖10所示,可直觀看出各個功能模塊在檢測過程中缺陷的次數和缺陷數量排序。

圖10 檢測分析餅圖報告Fig.10 Detection and analysis report pie chart report
制造業能力是一個國家綜合實力的體現,智能化檢測是制造業的核心關鍵工藝工序。本系統以嵌入式車載系統綜合檢測為基礎研究,搭建一套完整的智能自動化檢測平臺,對待測車載系統產品的功能和性能進行定性和定量檢測?;诒鞠到y可逐步應用于其他傳統、新興制造業行業。智能化自動化檢測不僅為企業帶來經濟效益,同時也提升產品性能質量,有利于中國制造高附加值產品走向世界。