陳曉飛,賈 勇,秦健勇
(新疆工程學院 信息工程學院,烏魯木齊 830023)
引擎的作用是提供汽車所需的動力,其性能的好壞直接影響到汽車是否安全可靠,發生在汽車上的各種大大小小的事故許多都是因為引擎故障[1]。頻譜也就是常說的頻率信號,是一種特殊的信號,在工業生產中廣泛存在,它不僅具備非常強的抗干擾能力,在進行測試的時候也不需要進行A/D轉換,且傳輸方便。現有的測試系統主要是模擬量的采集,尚未出現頻率測試系統開發案例。隨著人們對汽車動力性能、安全性、經濟性和環保性能的要求越來越高,對發動機頻率的要求也越來越高,發動機頻率的測試項目也越來越多[2-3]。內燃機頻率測試是內燃機研制與生產過程中必不可少的一個環節,研制高效的內燃機頻率測試系統對內燃機的研制與生產至關重要[4-5]。
數據挖掘目前已成為研究人工智能和數據庫的熱點領域,主要由人工智能、機器學習、可視化等技術組成[6-7]。數據挖掘主要是對每條數據進行分析,從龐大的數據庫資源中尋找具有規律的技術,大致分為數據的準備、規律的發現和規律的表達3個階段。“數據準備”指從相關數據源中選擇有用的數據,并將其整合到用來進行數據挖掘的數據集當中;“規則查找”指通過某種方法找出存在于數據集的規則;“規則表示”指盡最大化可能采用客戶能夠理解的方式方法中找出規則。其中,關聯分析、聚類分析、分類分析、異常分析、特殊群體分析和演化分析是數據挖掘的主要任務。
在此基礎上,本文應用數據挖掘技術,設計了一種發動機頻率測試系統,該系統能夠有效提高測量的精度和便攜性。
引擎測試系統的組成為數據采集板、圖形界面和相應的數據處理軟件。下位機數據采集模塊具有對傳感器信號進行調整和采集,并將數據從下位機傳送到上位機的功能。下層數據采集模塊由上位機軟件完成不同參數的配置。基礎微處理器根據主機驅動模擬開關配置不同類型的傳感器,采集通道參數。試驗過程中,主機軟件根據不同傳感器的不同特性,選擇合理的數據處理算法,并對監測數據進行誤差補償,繪制并顯示出邊緣曲線,保存所需數據[8-9]。圖1給出了發動機頻率測試系統的總體結構。

圖1 發動機頻率測試系統的總體結構圖
如圖1所示,發動機頻率測試系統總體結構主要由采集模塊、CAN總線網絡、采集終端、傳感器及電源組成。CAN總線網絡可實現發動機頻率測試系統各節點自由通信,通過采集終端及傳感器得到待測數據,通過電源保證系統穩定運行。
發動機頻率測試系統硬件模塊由數據采集模塊、傳感器信號調理電路、A/D轉換電路及單片機、CAN通訊電路組成。系統硬件由上、下位機兩部分組成:下位機負責對調度和采集各模塊數據、對數據進行預先處理并做到同步發送;上位機的主要作用是實現發送指令,接收事實數據,并對其進行相應的處理、顯示[10-11]。基于數據挖掘的發動機頻率測試系統硬件結構如圖2所示。

圖2 基于數據挖掘的發動機頻率測試系統硬件
從圖2可以看出,NI9401是一種雙向數字輸出模塊,它共有8條通道。本文利用 FPGA,配置I/O,結合高性能LabIVIEWFPGA開發平臺,實現高速計數器的定制化,系統硬件具有1 000 Vrms的瞬時隔離電壓,每一個信道都能兼容5 V/TTL信號,在 I/O信道與背板之間有1 000 Vrms的瞬時隔離電壓。
主機選用筆記本電腦運算,CRIO數據采集系統的配置通過以太網接口實現,讀取測試數據,并做出相應的存儲和人機交互,該系統采用 LabVIEFPGA模塊配置NI9401高速計數器,完成6個信道的開發[12-13]。
采集模塊的主要包括:信號調理電路,A/D轉換電路。在發動機測試過程中,信號調理電路會把發動機各傳感器的輸出信號轉換成標準的0~5 V信號,輸出到 A/D轉換電路,采用C8051F040單片機實現中心控制,實現數據通訊[14]。
本文提出了一種新型的熱電偶信號調理電路,它采用高阻運算放大器,將弱信號放大到0~5 V標準信號。Pt100用于測量環境溫度,其信號調節電路由0.mA恒流源電路和相應的信號放大電路組成[15]。電壓信號調理電路由0~5 V增加驅動能力時所需要的緩沖及濾波電路組成,在0~5 V調理電路的基礎上,可以增加一個分壓電路,實現模擬信號的隔離。傳感器信號調理電路示意圖如圖3所示。

圖3 傳感器信號調理電路
本系統選擇ads8344為 A/D轉換芯片。作為一種16位AD轉換器,ads8344具有高速、低功耗的特點。其功率由2.7~5伏特單相電源提供,最大采樣率為100 kHz,信噪比為84 dB。可以設置8路模擬量輸入通道,實現對終端輸入或差分輸入的保持和自采樣。利用串行接口實現了單片機之間的數據交換。當ads8344進行模數轉換時,它的基準電壓是+5 V,由基準電壓芯片isl21009所提供。圖4為模數轉換電路示意圖。

圖4 模數轉換電路
在單片機C8051F040中有基于 Bosch規范的 CAN控制器2.0 A與2.0 B,單片機并不包括與之對應的物理層驅動電路,在CAN總線連接時,需要增加 CAN總線收發器來實現與之對應的物理層驅動功能。CTM8251A是一個普遍應用的 CAN收發器芯片,其中包含了CAN隔離和 CAN收發裝置,能夠把 CAN控制器的邏輯電平變為 CAN總線的差分電平,同時可達到 DC2-500 V的隔離效果。CAN通訊線路如圖5所示。

圖5 CAN通訊線路
本系統使用LabVIEW作為軟件開發平臺,LabVIEW在操作界面制作、數據庫使用、儀器程序程控等維度具有明顯的優勢,測試序列管理軟件帶來了一個模塊化的方式,來快速制作測控系統。該測試序列管理軟件結構清晰,有很高程度的模塊化功能,開發方便、操作簡便、維護簡單。同時,該軟件適用于NI LabVIEW、LabWindows/CVI、MeasurementStudio及微軟 VisualBasi等當下主流測試編程環境。Host.vi主要程序由虛擬儀器 LabVIEW開發,運行在主機上,利用以太網實現指令發送,數據接收,數據處理以及數據顯示。
基于數據挖掘的發動機頻率測試系統選擇 TestStand當作測試管理軟件,使用 LabVIEW編寫測試序列,將 TestStand與 LabVIEW結合起來。基于數據挖掘的發動機頻率測試系統軟件能夠很好地實現測試步驟操作、顯示和以及保存測試結果等。基于數據挖掘的發動機頻率測試系統軟件流程圖如圖6所示。

圖6 基于數據挖掘的發動機頻率測試系統軟件流程
如圖6所示,采用數據挖掘算法對發動機頻率進行采集并聚類,將測試的頻率數據與發動機額定頻率對比,如果采集頻率大于額定頻率,則通過CAN通信程序從設備中反饋數據傳輸對象,再通過HT通信將數據傳輸至系統硬件中,用來準確判斷發動機頻率是否處于正常范圍內。
發動機把輸入信號的收集標本存儲在對應存儲器中,作為查表操作的數據基礎,測試系統需要與對應的通訊方法查詢存儲器中的信號的收集標本,CCP為 CAN總線的 ECU校準協議規范,通過 CAN報文的展現出來,同時兼容11位標準消息幀與29位擴展消息幀,CCP協議的依靠 CAN消息的兩個方面來實現:命令接收對象(CRO)及數據傳輸對象(DTO),從設備接收到主設備發送的 CRO后,必須對 DTO進行反饋。CAN通信組態模塊程序如圖7所示。

圖7 CAN通信組態模塊程序
設置CAN網絡,分別設置 CAN網絡接口名、波特率、數據大小等;接著設置 CAN對象,配置 CAN對象名,發送及接收 ID,通信種類等等;開啟 CAN后,以 CCP協議消息傳輸格式發送及讀取數據,退出程序時關閉 CAN。
使用主機的 LabVIEW RT模塊開發 RTOS主程序,產生可執行文件并設置在實時控制器上,利用讀取顯示控件及緩沖區數據,對其進行處理,將處理的數據用以太網總線發送到主機,達到采集數據、預處理及與主機的通信的目的。RT主程序是測試系統的關鍵,確保主機 Host.vi和及FPGA.vi的通信得以順利完成,
為了驗證本文提出的基于數據挖掘的發動機頻率測試系統的可靠性與穩定性,與傳統系統進行實驗對比,分別檢測系統的檢測率和虛警率。設定實驗參數如表1所示。

表1 實驗參數
根據上述參數,選擇本文提出的基于數據挖掘的發動機頻率測試系統與傳統的基于CRIO的發動機頻率測試系統、基于虛擬儀器的發動機頻率測試系統進行對比實驗。
實驗步驟如下:
1)統計所有的發動機頻率測試數據,將全部數據中的80%提取出來作為正常數據,通過機器學習實現數據訓練;
2)提取剩余的20%數據,通過異常檢測提取監測數據;
3)使用3種系統對數據集進行測試,測試次數共7次,每次選取的訓練數據不同,得到的檢測數據也不同。
根據上述實驗步驟獲得3種系統在五次測試過程中的檢測率和虛警概率,得到的數據檢測率實驗結果如圖8所示。

圖8 數據檢測率實驗結果
對圖8中的檢測結果進行統計,得到平均值,統計結果如表2所示。

表2 數據檢測率統計結果
根據實驗結果可知,本文提出的基于數據挖掘的發動機頻率測試系統對于數據的檢測率高于傳統系統。雖然設定高級檢測處理機制能夠提高檢測率,但是由于檢測過程十分復雜,所以傳統的檢測系統僅依靠高級檢測機制檢測能力較差。本文提出的數據挖掘的發動機頻率測試系統能夠對數據深入分析,確定發動機的檢測率,從而提高準確率。
虛警概率實驗結果如圖9所示。

圖9 虛警概率實驗結果
統計圖9的虛警概率結果,得到的平均值如表3所示。

表3 虛警概率統計結果
根據上述實驗結果可知,本文設計的基于數據挖掘的發動機頻率測試系統對發動機頻率測試時間較短,且產生的虛警率很低,很少出現誤報,而傳統的系統由于受到測量范圍的限制,所以頻率測量過程很容易出現誤差,在精準度和實時性上都難以滿足發動機提出的要求。
本文設計的基于數據挖掘的發動機頻率測試系統以底層數據為支撐,系統硬件能夠在短時間內實現數據采集、數據顯示和輸出測試功能,軟件通過誤差抑制和補償,有效降低熱電偶的數據采集誤差,實驗結果分析表明,測量誤差可以控制在±0.5 ℃以內,在精度上達到設計要求。系統內部的上位機能夠有效降低模塊化設計的復雜性,確保測試系統的后續改進工作。綜上所述,本文設計的基于數據挖掘的發動機頻率測試系統測試能力優于目前的發動機頻率測試系統測試能力,測試效果更好,實用性更高,值得大力推廣與使用。
本文以數據挖掘技術為基礎,采用 LabVIEW開發 PFGA單元軟件、RT單元軟件與主機軟件,達到發動機高、低壓轉子轉速的測量。實驗結果顯示,該頻率測試系統能夠有效地檢測出發動機的高、低壓轉速,具有體積小、重量輕、測試精度高的特點,達到了發動機測試現場的便攜和測試精度要求。