夏露露 許化龍 田鵬飛
摘 要:陀螺儀是慣性平臺上的重要組件,其動態特性直接影響到平臺運行時的性能,需要對陀螺儀的動態性能進行測試。在此采用PC/104總線組建了高可靠、高精度的陀螺動態測試系統。針對DMM[CD*2]32[CD*2]AT為非NI數據采集卡,采用CLF節點調用動態鏈接庫的方法,實現了對數據采集卡的驅動;通過虛擬儀器技術和LabVIEW編程,實現了對測試數據的采集和處理。該系統與傳統測試設備相比,效率更高,可靠性更好,結果更準確。
關鍵詞:PC/104總線;陀螺儀;動態測試;LabVIEW
中圖分類號:TP206.1
0 引 言
陀螺儀是平臺穩定系統的敏感測量元件,它敏感臺體的角運動信號,通過平臺伺服回路,建立平臺的穩定基準。因此陀螺儀的性能直接影響到平臺穩定系統的性能,對嚴格測試其動態性能指標具有重要的意義。
傳統的測試設備和手段復雜且效率低,為了便于對陀螺儀進行機內測試,改善測量效果,運用當今主要工業控制計算機技術——嵌入式PC/104總線結構來搭建測試系統,其獨特的堆棧總線擴展方式,可使其具有體積小、功耗低、可靠性高等特點;其次,利用美國NI公司開發的虛擬儀器LabVIEW,為開發平臺設計軟件,使其人機界面友好、功能強大、開發效率高、可維護性強,且測試精度和可靠性能得到充分保證。
1 測試系統硬件組成
該測試系統由PC/104工控計算機、DMM[CD*2]32[CD*2]AT多功能數據采集卡、信號調理模塊組成。其測試系統組成框圖如圖1所示。
(1)PC/104 工控計算機。采用DIGITAL[CD*2]LOGIC AG公司的MSMP3SEV,它是一個基于PC/104(ISA總線)和PC104/Plus (PCI總線)的高可靠ALL[CD*2]IN[CD*2]ONE CPU模塊,主板主要集成了最大256 MB內存、256 KB二級高速緩存、2個RS 232C串口、1個LPTl并口、EIED硬盤接口、標準軟盤接口、CRT顯示器接口、平板顯示器接口、鼠標接口、1個USB接口、看門狗計數/定時電路等。
[JP2](2)DMM[CD*2]32[CD*2]AT多功能數據采集卡。4路12位狣/A模擬輸出,16位差分或32位單端16位模擬輸入,24路數字I/O端口,最高采樣速率[3]為200 Mb/s。該多功能采集卡主要用于激勵信號的產生,測試信[LM]號的采集以及控制信號的產生。
(3) 信號調理模塊。主要是將計算機給定的電壓控制信號變換為電壓或電流信號,對動態測試的激勵信號進行整形、放大、濾波,以及對測試信號進行濾波,再由數據采集卡進行采集和處理。
系統的工作原理為:由PC/104控制,通過DMM[CD*2]32[CD*2]AT的D/A端口產生測試信號,經過調理,對陀螺儀力矩器施加指令電流信號,以模擬陀螺儀輸入軸的角運動,使力矩器產生一個力矩,引起陀螺儀自轉軸發生偏轉。這時信號器輸出一個電壓,經放大器后轉換成┮桓霆電流輸入到力矩器,使力矩器內原來外加電流減小到零,使轉子自轉軸處于平衡狀態。通過信號調理模塊對信號器上的電壓進行變換,由A/D采樣模塊進行采樣,輸入到PC/104工控機,系統再對采集數據進行處理、判斷和顯示。這整個過程是由程序控制自動完成的。
2 軟件設計
陀螺儀的動態測試軟件采用LabVIEW軟件進行設計, LabVIEW不僅是軟件開發環境,而且是一個編程軟件,它是一種適合應用于任何編程任務,具有擴展函數庫的通用編程語言[4]。它定義了數據模型、結構類型和模塊調用語法規則等編程語言的基本要素,在功能完整性和應用靈活性上不亞于任何高級語言。LabVIEW提供了豐富的數據采集、分析和存儲庫函數以及包括DAQ,GPIB,PXI,VXI,RS 232在內的各種儀器通信總線標準的所有功能函數。但是LabVIEW所提供的功能僅能驅動NI公司支持的數據采集卡,DMM[CD*2]32[CD*2]AT是第三方數據采集模塊,它需要用戶自己設計開發驅動程序[5]。
[BT3]2.1 DMM[CD*2]32[CD*2]AT驅動程序的實現
LabVIEW提供了對外部代碼調用的接口庫函數。其中,調用庫函數(Call Library Function,CLF)節點使得用戶可以方便地調用標準共享庫和自定義庫函數[6]。在此,設計的數據采集系統就是通過LabVIEW提供的。CLF實現對動態連接庫(Dynamic Link ㎜ibrary,狣LL)調用的方法,完成對第三方數據采集模塊的驅動,實現LabVIEW與普通數據采集模塊的結合[7]。
使用VC++生成一個dmm32driver.dll的動態鏈接庫,通過CLF節點對其調用,以實現該數據采集卡的驅動[8],該程序實現的主要源代碼為:
需要注意的是,在頭文件中加入extcode.h,以便在DLL程序中使用LabVIEW中的數據類型,避免在傳遞參數和返回值時沖突。其次,需要在導出的函數原型前添加_declspec(dllexport)關鍵字,指出函數的出口。由此,可從一個動態鏈接庫文件中輸出數據、函數、類以及類成員函數而不需要.def文件[9]。
[BT3]2.2 數據采集流程
該測試系統采用如圖2所示的單線程循環軟件架構。采用單線程結構可以保證每個任務在一次數據采集循環中都能得到有效執行,既能滿足數據的實時采集,又能保證數據的完整存儲,增強了測試的可靠性。與此同時,采用單線程結構也簡化了流程控制,避免了多線程結構中各個任務之間的調度與控制的復雜問題。
[BT3]2.3 系統程序設計
虛擬測試系統的主要功能是實時接收數據采集卡采集的數據,進行數據處理(如濾波,FFT變換等)、數據存儲和數據實時顯示[10]。操作者根據數據判斷測試指標是否合格。
程序設計的數據采集過程為:在開始數據采集后,DAQ卡不斷地采集數據,并將它們存貯在指定的緩沖區中;然后LabVIEW每隔一段時間,將一批數據送入計算機進行處理。如果緩沖區存放已滿,DAQ卡就會又重新從內存起始地址寫入新數據,覆蓋原來的數據。這個過程一直持續,直到采集到了指定數目的數據點,或者中止采集過程。程序方框圖如圖3所示。在對陀螺輸出信號進行測量時,采用了多次采樣取平均值的方法,以減小誤差。
3 結 語
在此,提出一種基于PC/104的陀螺儀動態測試系統,并分析該測控系統的軟/硬件基本構成。在系統組建過程中,由于利用了可靠的PC/104工控機和數據采集卡,以及高性能的虛擬儀器編程軟件,使得系統組建效率高,性能可靠,而且可以方便地對測試結果進行判斷,簡單易用。
參 考 文 獻
[1]何洪文,胡昌華,呂瑛潔,等,基于VXI總線的陀螺儀動態測試技術研究[J].電子測量與儀器學報,2004(增刊):280[CD*2]284.
[2]PC/104 Embedded Consortium,PC/104 Specification Version2.5 [EB/OL].http://www.pc104.org,2003.
[3]DIAMOND[CD*2]MM[CD*2]32[CD*2]AT 16[CD*2]Bit Analog I/O PC/104 Module with Auto[CD*2]calibration User Manual V2.64 [Z].
[4]候國屏.LabVIEW7.1編程與虛擬儀器設計[M].北京:清華大學出版社,2005.
[5]譚營,許化龍,吳琳.基于PC/104的數據采集系統設計[J].微計算機信息,2007,23(2):78[CD*2]79.
[6]戴新.數據采集卡在LabVIEW中的驅動方法[J].計算機應用與軟件,2008,25(3):156[CD*2]158.
[7]陶以政,潘振星.怎樣在LabVIEW中調用Win32動態鏈接庫[J].計算機應用,2000,20(6):73[CD*2]74.
[8]王丹民.LabVIEW下基于DLL的數據采集應用[J].控制工程,2002,9(3):68[CD*2]70.
[9]楊樂平,李海濤,趙勇,等.LabVIEW高級程序設計[M].北京:清華大學出版社,2003.
[10]高聰杰,李松巖,徐赫.基于LabVIEW的信號輸出與數據采集系統[M].微計算機信息,2008,24(1):135[CD*2]136.