李璘+孫金泉

廣西柳工機械股份有限公司
【摘 要】本文分析了國內工程機械控制器測試現狀,介紹了硬件在環原理,以此引出IEC61131-3標準,提出了基于IEC61131的工程機械硬件在環測試平臺,以及該平臺能解決的問題。然后詳細介紹了平臺的構成,最后為工程機械控制器硬件在環測試平臺的搭建指明了發展方向。
【關鍵詞】IEC61131;硬件在環;測試
1.引言
隨著國內工程機械廠家電控技術的進步與發展,越來越多的廠家開始自己開發整機控制器和核心零部件的控制器,這都需要經過大量的測試。保證其控制功能的正確性和可靠性是產品開發過程中的一個難點。
國外廠商和機構已對控制器功能測試技術開展了廣泛研究,形成了如TestML、CTE等測試用例生成工具,通過應用dSPACEMATLAB/Simulink Rhapsody等控制系統開發工具進行仿真測試也取得了一些成果,形成了各自的解決方案,但是國內廠商在使用這些方案時,通常需要支付昂貴的軟硬件費用。目前測試手段已經擺脫了在原型車中進行的方式,半自動化自動化的測試流程成為行業發展的趨勢。
對廠家而言,要根據自己的機型進行控制器功能定義,運用國外測試方案存在周期長費用高擴展難等不利因素,有時直接套用國外技術。因此,掌握一種控制器功能測試技術,對提高廠家的自主研發能力具有重要意義。
硬件在環仿真(HIL)是自動化測試系統常用的技術手段之一,利用計算機運行仿真模型取代控制器的控制流程,再將控制器的輸出回路反饋給計算機形成一個閉環的測試系統,該方法使測試具有可重復性。外部條件可控制、可進行臨界測試和極限測試等優點。
使用HIL需要一個仿真控制器,用于產生測試用例需要的信號,同時接收待測ECU的信號。目前大部分硬件在環編寫測試的方式有多種,例如代碼式(腳本語言)、框圖式或表格式。但是測試用例編寫的工作量非常大而且非常復雜,甚至超過了待測控制器本身的軟件編寫工作,單靠某種測試用例編寫方式已經無法滿足目前需求。因此需要簡易與靈活的方式相結合的方式進行測試用例的編寫。
IEC 61131-3是目前唯一的關于工業控制編程語言的國際標準,利用它的語言進行HIL控制器開發的測試用例的編寫,又可在線觀察測試用例變量。對自行進行控制器設計和測試的廠家,本身就使用IEC61131的語言來編程,因此使用它進行控制器的測試并非難事。
本文介紹了一種基于IEC61131的工程機械控制器硬件在環測試平臺的實現過程。
2.測試平臺構成
硬件在環測試平臺的構成如圖1所示。
待測控制器運行時接收各種開關和傳感器信號,進行運算后輸出控制信號(如控制電磁閥、繼電器或電機的信號)。仿真測試平臺發出待測控制器需要接收的開關和傳感器信號,并接收控制器輸出的控制信號,判斷控制器的反饋是否正確,并將測試結果發送給PC上安裝的試驗管理軟件。試驗管理軟件用于在測試中接收測試結果、觀察中間變量以及生成測試報告。61131編程系統用于測試樣例的編寫和機器模型的輸入,還可以進行測試用例的調試。可編程電源用于為控制器和仿真控制器供電,其輸出電壓是可編程的。可編程負載是仿真控制根據測試用例的配置編程的負載,可以編程為繼電器、電磁閥、電機等負載,也可以用真實負載替換。也可以不使用可編程負載,而是使用負載模型(或機器模型)。
以下對各部分設計進行詳細介紹。
2.1仿真控制器
2.1.1傳感器信號發生電路。
仿真控制器由傳感器信號發生電路、信號采集電路和MCU中運行的測試樣例與負載(機器)模型組成。
傳感器信號發生電路可以模擬開關型、電阻型、電流型、電壓型、脈沖型和正弦信號的輸出。
在整機上開關型信號有兩種:接地/懸空,VCC/懸空,其中VCC為蓄電池電壓(12V或24V)。仿真控制器的MCU運行測試用例程序,測試用例程序通過MCU的I2C總線將指令發送給CPLD,CPLD根據指令控制端口為高電平、低電平或懸空位置。驅動芯片將CPLD輸出的電平轉換成能驅動繼電器的電平,實現開關信號的輸出。
電阻型信號實現:測試用例程序通過SPI控制模擬開關芯片控制所接入的電阻大小,實現電阻型信號的輸出。
電壓型、電流型和正弦波信號的實現:測試用例程序通過SPI控制DAC(數模轉換器)芯片將指令轉換為0~5V電壓,并通過CPLD控制模擬開關接通需要輸出的信號通道。
脈沖型信號實現:MCU通過輸出PWM來控制脈沖信號的占空比和頻率,并控制可編程電源來控制脈沖信號的峰值。
2.1.2信號采集電路。
信號采集電路是采集待測控制器發出的控制信號,例如開關控制信號、電磁閥控制信號。信號采集電路將信號采集后,根據測試樣例,將執行結果與預期結果進行比較,將運行結果發送到試驗管理軟件。
PWM信號可以直接輸入仿真控制器,也可以輸入可編程負載。前者的優點在于可以將PWM信號的占空比通過公式轉換為控電流再輸入控制對象模型,仿真速度較快;后者的優點在于直接將電流輸入仿真控制器,更真實的模擬控制對象的響應。
2.1.3仿真控制器的MCU。
仿真控制器的MCU采用高速信號處理器,如TI的TMS320系列、Freescale的MCP55x系列或Infineon的Tricore系列處理器均能滿足系統設計要求。
MCU的底層硬件和驅動程序提供豐富的資源和接口,用戶可以直接使用這些資源在支持IEC61131的編程系統上進行測試樣例的編寫。編寫的方式非常靈活,復雜的樣例可以使用ST語言編寫,簡單的樣例使用SFC、FB或FBD框圖式語言編寫。
MCU中的機器模型(或負載模型、控制對象模型)是封裝好的功能塊,用戶只要修改參數后直接調用即可。
2.1.4 CPLD/FPGA。
與MCU連接的CPLD是MCU功能的擴展,用于采集和控制低速的IO信號,發送采集結果和接受MCU的控制指令。Altera的MAX II系列、Lattice的MachXO3和Xilinx的XA Spartan系列的CPLD或FPGA均能滿足系統設計要求。用戶使用編程系統可以對CPLD的輸入和輸出進行配置。
2.2可編程電源
可編程電源為待測控制器和仿真控制器提供電源。提供給待測控制器的電源分2種,可編程為12V系統和24V系統,最大可以輸出40V,用于測試待測控制器的電源耐受力。提供給仿真控制的電源分為數字供電和驅動供電。數字供電電壓低功率小;驅動供電功率大,電壓可由9V調節到36V,用于測試待測控制器的端口電壓耐受力。可編程電源的電壓調節由試驗管理軟件配置。
2.3可編程負載
可編程負載可以讓用戶選擇負載的類型:小燈、電磁閥或繼電器等。用戶也可以接入真實負載進行測試。
2.4試驗管理軟件
試驗管理軟件可通過設備的DLL文件與設備通信,進行設備配置,并可讀寫試驗配置,并導出試驗結果生成試驗報告。
3.展望
基于IEC61131的HIL測試平臺仍處于發展階段,各部件功能趨于向整合方面發展,這一方面可以降低測試的總成本,另一方面對部件的控制融合提出了更高要求,也為測試系統帶來新的機遇與挑戰。
參考文獻:
[1] 劉德利.基于HIL的汽車電氣功能測試系統設計[J].汽車電器,2017.1,28-30.
[2] 董艷艷.Hil在汽車整車測試及開發系統中的應用[J].科技風,2016年第16期,33-35.
作者簡介:
李璘(1981—),女,廣西柳工機械股份有限公司研究總院高級主管工程師,研究方向為:工程機械電控系統開發。