基于PC/104的陀螺儀動態測試系統設計
(3)信號調理模塊。主要是將計算機給定的電壓控制信號變換為電壓或電流信號,對動態測試的激勵信號進行整形、放大、濾波,以及對測試信號進行濾波,再由數據采集卡進行采集和處理。
系統的工作原理為:由PC/104控制,通過DMM-32-AT的D/A端口產生測試信號,經過調理,對陀螺儀力矩器施加指令電流信號,以模擬陀螺儀輸入軸的角運動,使力矩器產生一個力矩,引起陀螺儀自轉軸發生偏轉。這時信號器輸出一個電壓,經放大器后轉換成一個電流輸入到力矩器,使力矩器內原來外加電流減小到零,使轉子自轉軸處于平衡狀態。通過信號調理模塊對信號器上的電壓進行變換,由A/D采樣模塊進行采樣,輸入到PC/104工控機,系統再對采集數據進行處理、判斷和顯示。這整個過程是由程序控制自動完成的。本文引用地址:http://www.104case.com/article/195564.htm
2 軟件設計
陀螺儀的動態測試軟件采用LabVIEW軟件進行設計,LabVIEW不僅是軟件開發環境,而且是一個編程軟件,它是一種適合應用于任何編程任務,具有擴展函數庫的通用編程語言。它定義了數據模型、結構類型和模塊調用語法規則等編程語言的基本要素,在功能完整性和應用靈活性上不亞于任何高級語言。Lab-VIEW提供了豐富的數據采集、分析和存儲庫函數以及包括DAQ,GPIB,PXI,VXI,RS 232在內的各種儀器通信總線標準的所有功能函數。但是LabVIEW所提供的功能僅能驅動NI公司支持的數據采集卡,DMM-32-AT是第三方數據采集模塊,它需要用戶自己設計開發驅動程序。
2.1 DMM-32-AT驅動程序的實現
LabVlEW提供了對外部代碼調用的接口庫函數。其中,調用庫函數(Call Library Function,CLF)節點使得用戶可以方便地調用標準共享庫和自定義庫函數。在此,設計的數據采集系統就是通過LabVIEW提供的。CLF實現對動態連接庫(Dynamic Link Library,DLL)調用的方法.完成對第三方數據采集模塊的驅動,實現LabVIEW與普通數據采集模塊的結合。
使用VC++生成一個dmm32driver.dll的動態鏈接庫,通過CLF節點對其調用,以實現該數據采集卡的驅動,該程序實現的主要源代碼為:
需要注意的是,在頭文件中加入extcode.h,以便在DLL程序中使用LabVIEW中的數據類型,避免在傳遞參數和返回值時沖突。其次,需要在導出的函數原型前添加_declspec(dllexport)關鍵字,指出函數的出口。由此,可從一個動態鏈接庫文件中輸出數據、函數、類以及類成員函數而不需要.def文件。
評論