基于PC104的陀螺儀動(dòng)態(tài)測試系統設計
0 引 言
陀螺儀是平臺穩定系統的敏感測量元件,它敏感臺體的角運動(dòng)信號,通過(guò)平臺伺服回路,建立平臺的穩定基準。因此陀螺儀的性能直接影響到平臺穩定系統的性能,對嚴格測試其動(dòng)態(tài)性能指標具有重要的意義。
傳統的測試設備和手段復雜且效率低,為了便于對陀螺儀進(jìn)行機內測試,改善測量效果,運用當今主要工業(yè)控制計算機技術(shù)——嵌入式PC/104總線(xiàn)結構來(lái)搭建測試系統,其獨特的堆??偩€(xiàn)擴展方式,可使其具有體積小、功耗低、可靠性高等特點(diǎn);其次,利用美國NI公司開(kāi)發(fā)的虛擬儀器LabVIEW,為開(kāi)發(fā)平臺設計軟件,使其人機界面友好、功能強大、開(kāi)發(fā)效率高、可維護性強,且測試精度和可靠性能得到充分保證。
1 測試系統硬件組成
該測試系統由PC/104工控計算機、DMM-32-AT多功能數據采集卡、信號調理模塊組成。其測試系統組成框圖如圖1所示。
(1)PC/104工控計算機。采用DIGITAL-LOG-IC AG公司的MSMP3SEV,它是一個(gè)基于PC/104(ISA總線(xiàn))和PC104/Plus(PCI總線(xiàn))的高可靠ALL-IN-ONE CPU模塊,主板主要集成了最大256 MB內存、256 KB二級高速緩存、2個(gè)RS 232C 串口、1個(gè)LPT1并口、EIED硬盤(pán)接口、標準軟盤(pán)接口、CRT顯示器接口、平板顯示器接口、鼠標接口、1個(gè)USB接口、看門(mén)狗計數/定時(shí)電路等。
(2)DMM-32-AT多功能數據采集卡。4路12位D/A模擬輸出,16位差分或32位單端16位模擬輸入,24路數字I/O端口,最高采樣速率為200 Mb/s。該多功能采集卡主要用于激勵信號的產(chǎn)生,測試信號的采集以及控制信號的產(chǎn)生。
(3)信號調理模塊。主要是將計算機給定的電壓控制信號變換為電壓或電流信號,對動(dòng)態(tài)測試的激勵信號進(jìn)行整形、放大、濾波,以及對測試信號進(jìn)行濾波,再由數據采集卡進(jìn)行采集和處理。
系統的工作原理為:由PC/104控制,通過(guò)DMM-32-AT的D/A端口產(chǎn)生測試信號,經(jīng)過(guò)調理,對陀螺儀力矩器施加指令電流信號,以模擬陀螺儀輸入軸的角運動(dòng),使力矩器產(chǎn)生一個(gè)力矩,引起陀螺儀自轉軸發(fā)生偏轉。這時(shí)信號器輸出一個(gè)電壓,經(jīng)放大器后轉換成一個(gè)電流輸入到力矩器,使力矩器內原來(lái)外加電流減小到零,使轉子自轉軸處于平衡狀態(tài)。通過(guò)信號調理模塊對信號器上的電壓進(jìn)行變換,由A/D采樣模塊進(jìn)行采樣,輸入到PC/104工控機,系統再對采集數據進(jìn)行處理、判斷和顯示。這整個(gè)過(guò)程是由程序控制自動(dòng)完成的。
2 軟件設計
陀螺儀的動(dòng)態(tài)測試軟件采用LabVIEW軟件進(jìn)行設計,LabVIEW不僅是軟件開(kāi)發(fā)環(huán)境,而且是一個(gè)編程軟件,它是一種適合應用于任何編程任務(wù),具有擴展函數庫的通用編程語(yǔ)言。它定義了數據模型、結構類(lèi)型和模塊調用語(yǔ)法規則等編程語(yǔ)言的基本要素,在功能完整性和應用靈活性上不亞于任何高級語(yǔ)言。Lab- VIEW提供了豐富的數據采集、分析和存儲庫函數以及包括DAQ,GPIB,PXI,VXI,RS 232在內的各種儀器通信總線(xiàn)標準的所有功能函數。但是LabVIEW所提供的功能僅能驅動(dòng)NI公司支持的數據采集卡,DMM-32-AT是第三方數據采集模塊,它需要用戶(hù)自己設計開(kāi)發(fā)驅動(dòng)程序。
2.1 DMM-32-AT驅動(dòng)程序的實(shí)現
LabVlEW提供了對外部代碼調用的接口庫函數。其中,調用庫函數(Call Library Function,CLF)節點(diǎn)使得用戶(hù)可以方便地調用標準共享庫和自定義庫函數。在此,設計的數據采集系統就是通過(guò)LabVIEW提供的。CLF實(shí)現對動(dòng)態(tài)連接庫(Dynamic Link Library,DLL)調用的方法.完成對第三方數據采集模塊的驅動(dòng),實(shí)現LabVIEW與普通數據采集模塊的結合。
使用VC++生成一個(gè)dmm32driver.dll的動(dòng)態(tài)鏈接庫,通過(guò)CLF節點(diǎn)對其調用,以實(shí)現該數據采集卡的驅動(dòng),該程序實(shí)現的主要源代碼為:
需要注意的是,在頭文件中加入extcode.h,以便在DLL程序中使用LabVIEW中的數據類(lèi)型,避免在傳遞參數和返回值時(shí)沖突。其次,需要在導出的函數原型前添加_declspec(dllexport)關(guān)鍵字,指出函數的出口。由此,可從一個(gè)動(dòng)態(tài)鏈接庫文件中輸出數據、函數、類(lèi)以及類(lèi)成員函數而不需要.def文件。
2.2 數據采集流程
該測試系統采用如圖2所示的單線(xiàn)程循環(huán)軟件架構。采用單線(xiàn)程結構可以保證每個(gè)任務(wù)在一次數據采集循環(huán)中都能得到有效執行,既能滿(mǎn)足數據的實(shí)時(shí)采集,又能保證數據的完整存儲,增強了測試的可靠性。與此同時(shí),采用單線(xiàn)程結構也簡(jiǎn)化了流程控制,避免了多線(xiàn)程結構中各個(gè)任務(wù)之間的調度與控制的復雜問(wèn)題。
評論