劉強+段富海+蘭雪



摘 要: 針對某型號直升機4個通道的舵機,使用PXI系統和LabVIEW編程語言建立了一套自動加載測試系統。該系統可以實現加載電機和舵機控制信號的產生、加載扭矩的閉環控制、多通道連續數據采集、測試數據的實時顯示和存儲以及報表打印等功能。詳細介紹了硬件結構、軟件設計及控制功能的具體實現。實際測試結果表明,系統在保證測試精度的同時,大大提高了測試效率。
關鍵詞: 舵機; LabVIEW; PXI; 自動測試; 數據采集
中圖分類號: TN912.202?34 文獻標識碼: A 文章編號: 1004?373X(2015)14?0113?03
直升機舵機是控制直升機姿態、航向和高度的執行機構,通過對其轉角、轉速和轉向進行精準控制,帶動直升機尾槳和旋翼槳葉偏轉,完成對直升機的飛行控制。舵機性能對直升機飛行控制有著直接影響,因此對舵機性能指標進行嚴格的測試具有重要意義。傳統的手動加載測試儀器繁雜,且不能實現任意力矩函數加載,測試過程中的不當操作容易產生很大的偏差。利用PXI平臺配套相應的數據采集卡和專用扭矩傳感器,能夠很方便地搭建基于LabVIEW虛擬儀器技術的測試系統。
虛擬儀器技術利用高性能的模塊化硬件結合高效靈活的軟件完成測試任務,與傳統測試系統相比,它縮短了研發周期,效率更高,靈活性更強,便于系統升級,其核心思想是用軟件來實現硬件的功能。NI公司推出的圖形化開發環境LabVIEW為用戶提供了很多功能強大的控件,利用它們用戶可以搭建出界面友好、功能完備的專業測試平臺。
1 硬件結構
考慮測試系統測試成本、測試精度要求和開發速度等各方面因素,選用阿爾泰公司PXI機箱、PXI控制器和兩塊多功能數據采集卡作為控制和測量平臺,由三相交流伺服電機、伺服驅動器、扭矩傳感器、編碼器構成自動加載系統,整個測試系統的組成結構如圖1所示。
圖1 系統結構圖
1.1 PXI系統
PXI系統由PXI?7683控制器和PXIC?7306機箱組成,機箱為6槽3U結構,除了控制器外,還可以插接5塊采集卡,即插即用,擴展方便。PXI總線是在PCI總線內核技術基礎上增加了成熟的技術規范和要求形成的,與VXI總線相比,成本較低,與GPIB總線相比則有更高的傳輸速度,適用于有實時性要求高的中小型測試系統[1]。采用LabVIEW的編程環境,預裝了Windows 7.0圖形視窗操作系統。
1.2 數據采集卡
采集卡的作用主要是進行信號采集和控制信號的輸出。舵機的正反轉和內部離合器開關需要5路繼電器,舵機電流、離合器電流以及扭矩數據采集需要3路A/D轉換,對伺服電機的控制以及伺服狀態監測則需要多路數字量輸入和輸出。考慮到以上因素,最終選擇了PXI9606和PXI2307兩塊采集卡,前者主要用于模擬量采集和數字量輸出以及定時計數,后者主要用于繼電器輸出和數字量輸入。
1.3 加載電機
電動加載常用的加載電機是力矩電機和伺服電機。力矩電機能輸出很大力矩,但是體積大,轉動慣量大,影響加載的準確性;而伺服電機一般采用空心杯形轉子,轉動慣量小,響應速度快[2]。系統選用了安川的交流伺服電機,能夠滿足測試最大20 N·m的扭矩加載要求。配套的伺服驅動器接收來自采集卡的模擬量信號,間接控制伺服電機的扭矩輸出,輸出扭矩與采集卡輸出電壓成正比。此外,驅動器輸出編碼器的三相脈沖信號,經過采集卡采集后可用以判斷位移和轉向。
2 軟件設計
按照軟件的設計要求,在每一個功能模塊的軟件設計過程中,按照模塊化和層次化的設計原則,根據自頂向下的設計方式,將整個軟件分成若干模塊,每個模塊用一個或多個子VI去實現,這樣可以很好地利用LabVIEW的子函數進行單獨調試這一優勢,大大提高軟件的設計效率,同時方便代碼重用和功能擴展。軟件功能模塊結構如圖2所示。
圖2 軟件結構圖
2.1 系統設置模塊的設計
系統設置的主要操作是讀/寫ini文件。由于4個通道舵機性能參數的標稱值是不一樣的,在軟件啟動后,會提示用戶對舵機和測試項進行選擇,軟件會根據選擇結果讀取相應的配置文件,作為對最終測試結果的判斷依據。此外,用戶還可以在軟件中修改起始文件,以適應舵機性能參數的調整。圖3為讀取起始文件的部分代碼。
圖3 讀ini文件程序框圖
2.2 打印操作模塊設計
不像數據采集和儀器控制,LabVIEW自帶的報表操作和數據打印并不是很強大,并且很多時候需要設計特定風格的報表,針對上述問題采用Active X控件。Active X控件是Active X組件的一個分類,是一個標準的用戶接口元素,具有“.OCX”文件擴展名或者可插入對象的文件,能夠快速地把面板和對話框組裝起來。用報表編輯器編輯出符合一定規范的報表,然后將其加載到主面板Report X控件中,在程序中可以通過調用控件的屬性節點對報表進行動態修改,并且能很方便地實現打印的設置、預覽等操作。需要注意的是,在使用Report X控件時需要用regsvr32命令對控件進行裝載,裝載后就可以生成FP文件和相關驅動代碼[1]。圖4為主界面中報表加載效果。
圖4 報表加載效果
2.3 試驗監視模塊設計
通過調用動態鏈接庫文件,使用廠家提供的驅動函數能夠方便快捷地實現數據采集。在這個模塊中,通過2塊數據采集卡,實時監測測試過程中的關鍵數據以及開關量的狀態,使用戶對測試過程有一個整體把控。模擬量采集使用多通道連續采集的方式,只要調用抽取一維數組函數就能將多個通道的數據分離出來,再分別送到顯示控件。
2.4 試驗控制模塊設計
試驗控制模塊主要用于控制測試的啟動和停止以及舵機和加載電機控制信號的產生。在測試過程中,在控制設備運轉的同時,還要進行數據采集,這樣才能保證數據的實時性,因此多線程是必須的。LabVIEW數據流的編譯方式使它實現多線程非常方便,但是如果不能合理利用,會浪費很多系統資源。利用LabVIEW的通知技術可以高效地控制線程的運行,使暫時不用的循環處于等待狀態,而不是空跑,這就避免無休止循環監測和監測周期過快或過慢導致的數據重復或丟失,減少計算機資源浪費[3]。對于舵機控制主要是正反轉和轉角。PXI2307提供16路繼電器隔離開關量輸出,利用其中4路即可實現舵機正/反轉。控制轉角時,利用PXI9606的計數器工作方式0,在舵機開始運轉之前,給計數器裝入角度對應脈沖數,然后啟動舵機,在計數器計數到0時會產生一個中斷,當PXI2307檢測到中斷產生時,改變繼電器的狀態使舵機停轉,從而達到控制舵機位移目的。伺服電機的扭矩控制是整個測試系統的重點,由于多余轉動慣量和電機隨動產生的反電動勢引起的多余力矩,如果使用開環控制必定存在穩態誤差,當外界出現干擾時,系統無法自動調整,呈現發散,因此必須加入矯正環節。LabVIEW為用戶提供了一個外掛的PID工具包,利用它用戶可以直觀方便地進行數字PID控制器設計。由于在測試過程中,扭矩設定值會發生階躍,為了防止微分作用帶來的輸出值大幅度變化,同時保證系統的響應速度,在PID子VI中采用微分先行PID算法,即對測量值進行微分。圖5為加入PID控制器的扭矩輸出程序框圖。
圖5 扭矩控制程序框圖
為了進一步驗證系統的調節效果并對PID參數進行初步整定,應用LabVIEW的控制設計與仿真模塊對系統進行仿真。由于舵機的轉速非常低,為了簡化建模忽略其對扭矩輸入的反饋作用,得到其閉環系統為二階系統[4]。設定仿真步長為0.001 s,在連續改變扭矩的設定值時得到的系統響應如圖6所示。由圖6得,穩態誤差[ess]為0,調整時間[ts]約為0.2 s,超調量[Mp]=[6.46-66.46]=7.1%,這些指標基本符合系統要求。
3 信號的濾波
在測試過程中,外界的干擾和儀器的偶然跳動可能使測量結果出現不合理的波動點,可能會影響軟件對最終測試結果的判定,特別是對舵機微動開關狀態檢測和編碼器脈沖的計數,一個電平跳變就可能改變測試結果。因此,硬件上可以在輸入和地之間接小電容以濾除高頻噪聲,軟件上可以使用LabVIEW濾波器進行數字濾波[5]。要注意的是對于編碼器的方波信號進行濾波會對波形造成一定影響,且濾波器階數越高,過渡帶就越陡,方波變形就越大,因為方波中也是有高頻分量的,因此最好選用一階低通濾波器[5]。
圖6 系統仿真(橫坐標為采樣點數)
4 結 語
基于LabVIEW的舵機虛擬測試系統,利用“軟件即是硬件”的技術方法,不僅實現了傳統儀器的各項功能,而且大大提高了測量的自動化程度和整個系統靈活性。在舵機和測試要求改變的情況下,只要對測試軟件做適當修改就可快速實現系統升級;同時,在前面板上操作可借助控件鎖定功能,避免不當操作造成的物理損壞。LabVIEW已不再是一個只用來做測試的軟件,本文設計的測試系統在滿足基本測試任務的基礎上,利用其控制設計和仿真功能,對系統進行優化,縮短開發時間,真正做到高效利用計算機的硬件資源來搭建功能完備的測試系統。
參考文獻
[1] 王建新,隋美麗.LabWindows/CVI虛擬儀器測試技術及工程應用[M].北京:化學工業出版社,2011.
[2] 劉德強.旋轉電動舵機加載系統的研究[D].哈爾濱:哈爾濱工業大學,2009.
[3] 陳錫輝,張銀鴻.LabVIEW 8.2程序設計從入門到精通[M].北京:清華大學出版社,2007.
[4] 李育明.直升機并聯舵機自動測試系統設計[D].哈爾濱:哈爾濱工業大學,2012.
[5] 譚營.基于LabVIEW的舵機測試系統設計[D].西安:第二炮兵工程學院,2007.
[6] 陶小亮,牛振.LabWindows/CVI多線程技術在舵機測試軟件中的應用[J].中國測試,2011(1):81-83.