基于PCI-E的慣組高速數據采集系統設計與實現
Design and implementation of high-speed data acquisition system for inertial measurement unit based on PCI express bus
本文引用地址:http://www.ex-cimer.com/article/201903/399035.htm宋仔標,崔洪亮,高倩,劉寧
(火箭軍士官學校,山東 青州 262500)
摘要:慣組數據的采集是進行慣組標定及導航姿態解算的基礎,其數據采集精度對慣組的標定和導航精度有重要的影響。提出了一套基于PCI-E總線的慣性測量組合數據高速采集與處理系統,基于研華PCIE-1751板卡設計并實現了系統的硬件組成,在VC#平臺下通過相應的數據采集控件實現了數據的高速定時采集,通過卡爾曼濾波方法對環境噪聲進行消除,在VC#平臺下進行DirectX的3D開發,直觀展示慣組當前姿態。實驗表明該系統具有直觀、高效、實時及強大的數據處理與顯示等優點。
關鍵詞:PCI-E總線;慣性測量組合;數據采集;卡爾曼濾波
基金項目:軍內科研預研基金資助項目(編號不公開)
0 引言
慣性導航為自主式導航技術,通過慣性測量組合(陀螺儀和加速度表)的測量輸出,利用牛頓定律計算出載體當前時刻的速度、位置和姿態。慣性導航不依賴外界信息,也不向外界輻射任何能量,能夠自主地、隱蔽地進行連續的三維定向和三維定位,被廣泛應用于航天、航空、航海等領域[1] 。實現慣性導航需要慣組提供載體的比力和姿態信息,而這些信息可以被加速度計和陀螺儀敏感到,因此加速度計和陀螺儀的精度在很大程度上決定著慣性導航的精度。提高慣組的精度,一方面可通過提高慣組器件的制造精度,另一方面則可通過提高慣性器件誤差模型的精度和標定精度。為了保證導航精確,在實驗室對慣性器件進行精確誤差模型的標定非常必要。要進行慣組的標定,首先需要對慣組輸出的多數高速數據進行實時準確地采集,另外在采集到的數據中不可避免地會摻雜各種實驗室環境噪聲[2] ?;谝陨峡紤],設計并實現了一套基于PCI Express總線的慣組高速數據采集系統,利用PCI-E型總線高寬帶的特點,能滿足慣組高速數據輸出的實時采集,在系統中通過卡爾曼濾波平滑噪聲的優點對環境噪聲進行有效濾除,另外,為更直觀地顯示當前慣組的輸出和當前姿態,通過三維模型實時跟蹤慣組的轉動。
1 系統總體設計
本系統由硬件部分和軟件部分組成。
硬件部分用于控制慣組的加電和產生敏感信號。通過設計控制回路,自動完成慣組的加溫、配電,并設計輔助電路,完成慣組的加溫、通電運行等狀態監控。為構建慣組動力學環境,設計了三軸轉臺,通過三軸轉臺帶動慣組轉動,模擬導彈在空間姿態變化,通過施加激勵產生角速率和視加速度輸出,產生各自由度上的敏感信號,使慣組在加電工作狀態能夠調整姿態。設計了信號匹配電路,實現慣組輸出和數據采集卡輸入之間的電平匹配和隔離。軟件部分主要實現慣組輸出數據的采集,實驗室環境噪聲的濾除、姿態解算、多路輸出數據的動態顯示,以及慣組姿態對三維模型的控制等功能。
2 硬件設計
本系統硬件由UPS電源、信號控制箱、慣組本體、三軸轉臺、信號匹配箱、多路數據采集卡、工控機及顯示器組成。硬件連接圖如圖1所示。
2.1 PCI-E總線高速數據采集卡
數據采集卡主要用于對慣組輸出的多路數據進行實時采集,為滿足慣組數據的高速需求,本系統中采用總線的數據采集卡。PCI Express是新一代的總線接口,由英特爾公司提出并由多家業界主導公司起草技術規范。該總線采用點對點串行連接,相比PCI及更早期的計算機總線的共享并行架構,每個設備都有自己的專用連接,不需要向整個總線請求帶寬,可以把數據傳輸率提高到一個很高的頻率,達到PCI所不能提供的高帶寬[3] 。
本系統選用研華PCIE-1751型板卡。PCIE-1751是一款采用通用PCI Express總線的48路DI/O和3路計數器卡。它提供了48路并行數字量輸入/輸出以及3個計數器。板卡采用高密度SCSI 68針接口,易于連接現場設備且連接穩定、可靠。PCIE-1751的其它2個特性使其在工業設置方面更具有實用性優勢。如果用戶將跳線JP1設置為啟用此特性,則系統被熱啟動后(電源未關閉),PCIE-1751能夠保持I/O接口的設置和輸出值;否則,端口設置和輸出值將恢復為默認狀態,或者切換到其它跳線設置的狀態。
的另一實用特性是它支持濕接點和干接點,因而更容易連接其他設備。
板卡計數器0、1和2為用戶提供了六種選擇:、One shot、、、和Pulse modulation。本系統中設置為模式。
2.2 信號控制箱
控制箱是一個集電源變換(220 V交流電轉換成慣組、繼電器、數字電路、加溫電路、顯示電路所需的直流電壓)、指令控制、配電控制、顯示監控等功能于一體的設備。上位機通電進行數據采集前,按程序完成慣組配電(加溫、陀螺啟動等),使慣組正常工作。
控制箱主要完成慣組的程序配電和狀態監控,慣組正常工作必須先加溫、啟動陀螺、接通功放回路,有指標和時間控制要求。為此,設計相應控制電路完成慣組加溫控制與監控、陀螺啟動與監控以及功放回路接通與監控等關鍵配電環節管理。硬件控制回路主要包括程控裝置設計、接口電路設計、繼電器控制回路設計、狀態監控與顯示電路設計等。為提高溫控精度,溫控電路對本體采用模擬式多點溫控,使溫度精度控制在±2 ℃之間;對重要部件,如縱向加速度計則采用二級溫控,使溫控精度控制在±0.5 ℃度之間。
本系統設計和完成的信號控制箱如圖2所示。
2.3 三軸轉臺
三軸轉臺是本系統關鍵設備之一,用來安裝慣組本體及產生慣性測量組合動力學環境,使慣組在加電工作狀態可以通過轉臺調整姿態,模擬運載體在空間的姿態角度和角速率變化,產生各自由度上的敏感信號。因此三軸轉臺需要一定精度和運轉平滑性以及一定的負載能力,同時對加工材料提出了較高要求,關鍵部件采用銅鋁材料,減少對測試的干擾。
三軸轉臺由底座、平臺、航向圓齒輪、航向搖把、傾斜半圓蝸輪、傾斜搖把套筒、俯仰半圓蝸輪、俯仰搖把套筒、刻度盤(航向、傾斜、俯仰)、水準器可調支座、鎖緊支腿等部件組成。航向搖把在底座上直接與航向圓齒輪嚙合,傾斜和俯仰共用一個搖把,都通過搖把套筒上的蝸桿與各自的半圓蝸輪相嚙合。平臺裝在俯仰半圓蝸輪上。T形槽用來安裝控制儀移動托盤或慣性組合裝置支架。
使用轉臺時,必須用壓板將三軸轉臺固定在穩定的基座上,并用三個可調支座鎖緊支腿和水準器進行水平調整[4] 。
三軸轉臺主要技術參數為:三軸轉臺各軸轉動范圍:航向±170 °、傾斜、俯仰±35 °;平臺外部尺寸mm、T形槽間距75 mm、最大載重負荷30 kg。
2.4 其他
?。?)UPS電源:為慣組和全系統正常工作提供不間斷電源,根據實際需求,選用UPS電源為艾默生,該UPS電源功率3 kW。
?。?)信號匹配箱:主要用于慣組輸出的脈沖信號與數據采集卡之間的電平轉換與隔離。因此在設計信號匹配箱時,需考慮以下三點因素:慣組輸出與數據采集卡輸入之間的電平匹配;輸入與輸出之間信號的干擾,本系統采用光耦隔離方式;慣組的高速輸出。綜上考慮,設計和完成的信號匹配箱內部結構如圖3所示。
?。?)工控機:定制研華IPC-610H型工控機。該工控機配置CPU為P4(主頻3.0 G)、內存為4 G,并確保有足夠的PCI Express插槽以滿足多路數據采集的需求。
3 軟件設計
在搭建硬件平臺的基礎上,通過軟件設計實現數據的采集、預處理、姿態解算、采集數據的曲線顯示和運載體三維模型的姿態控制等功能。本系統硬件平臺為研華工控機,軟件開發平臺為XP,開發環境為VC#2010和DirectX 3D。
在程序設計中,為保證數據的連續采集,達 到 不 丟 脈 沖 的 目的,在軟件設計時引入多線程技術,線程1用于數據的實時采集、處理和顯示,線程2用于三維運載體模 型 的 渲 染 。 軟 件流程設計圖如圖4所示。
設計的系統主界面如圖5所示。
3.1 數據采集
采集系統在VC#環境下進行開發,有兩種方法可以實現VC#基礎上的數據采集:DAQ控件和研華提供的動態庫函數編程。在本系統設計中,通過DAQ控件進行數據采集。
參照安裝手冊,完成數據采集卡的安裝,在進行實際數據采集之前,先通過YB1602H數字合成函數信號發生器對數據采集卡進行測試,測試合格后再用于慣組數據的采集。
3.2 數據處理
慣組標定的好壞將直接影響慣性測量組合的輸出精度。一般采用分立標定法標定陀螺常值漂移和加速度計零偏,即利用轉臺提供水平和方位基準,將地球自轉角速度和重力加速度作為參考輸入,并與陀螺儀和加速度計的輸出進行比較,采用最小二乘法標定陀螺常值漂移和加速度計零偏。分立標定實驗時直接利用陀螺與加速度計輸出進行比較,器件噪聲以及環境干擾都會影響標定效果。因此,帶誤差的標定值帶來的標定誤差會殘留在初始對準階段,進而造成姿態誤差。因此對直接從慣性測量組合輸出的信號必須經過一定的處理,才能進行標定。針對上述問題,利用卡爾曼濾波所具有的平滑噪聲的特性對陀螺和加速度計輸出進行預處理,濾除對準環境中干擾噪聲的影響[5] 。
3.3 姿態解算
姿態解算主要是完成坐標系的變換,即將測得的加速度和角速率轉換到導航坐標系下,同時計算出飛行器的姿態、速度和位置。目前常用的姿態解算算法有歐拉角法、方向余弦法和四元數法。由于歐拉角法求解時,方程中存在奇點,所以不能用于全姿態飛行器上。方向余弦法雖然可以全姿態解算,但是由于計算量大,所以也不能用于導彈姿態實時解算。本系統采用四元數法進行導航計算。四元數的概念是1843年由哈密頓首先提出的,為現代數學中的內容之一。近些年來,隨著控制理論、慣性技術、計算技術的發展,為了更簡便地描述剛體的角運動,設計控制系統,廣泛采用了四元數這個數學工具,用它來描述剛體角運動的3個歐拉角參數在設計控制系統時的不足。該算法無奇點,計算量小,可實時解算 [6] 。
3.4.1 數據顯示
和三維模型渲染數據的實時顯示為了直觀地顯示慣組輸出的多路信號,通過數據曲線的方式將多路信號在程序界面進行動態顯示。在程序主界面中劃出動態顯示區域,每個區域顯示1路信號,由網格曲線和數據曲線組成。由于程序界面大小的限制,每組只動態繪制最近采樣的300個數據。如圖5中上部分所示。
另外,為了方便對采集到的數據進行分析處理,在進行數據采樣時,每采樣一次便將采集到的數據作為一組保存在測試界面的文本框中。通過和saveFileDialog控件實現打開歷史數據和保存當前測試數據的功能。每一次測試結束后,需要將當前測試的數據進行保存,通過點擊“保存數據”調用控件,將文本框的數據以txt的格式保存到本地磁盤,該文本文件記錄了采樣的次數及每次采樣的數據,方便以后通過MATLAB等軟件進行數據分析和處理。為查看歷史數據,通過點擊“歷史數據”按鈕調用openFileDialog控件,將存儲在本地磁盤的歷史數據打開在文本框中顯示。如圖5中下部分所示。
3.4.2 三維模型渲染
為了直觀地顯示當前慣組在三軸轉臺上的姿態,在程序界面上通過三維模型動畫實時跟蹤慣組的轉動。本系統通過在VC#下進行DirectX的3D開發,實現三維模型的渲染。
是一套用于創建游戲和多媒體程序的底層應用程序接口,其支持高性能的二維和三維圖形顯示、聲音以及輸入等。在導入模型到程序之前,首先需要利用3DMAX軟件制作一個三維模型,然后通過插件將三維模型的.max文件導出為DirectX 3D可用的.X文件。在進入數據采集界面時,通過自設計的LoadMesh()函數將導彈模型的.X文件導入到程序界面中的控件上,此時在控件所在的區域上能出現靜止且位置為初始位置的運載體三維模型。開始采樣后,啟動線程2,每20 ms讀取一次當前慣組的姿態角信息,以控制三維模型的旋轉變化。
4 小結
本系統能對實驗室環境下慣組輸出的高速數據進行實時準確地采集,對采集到的數據能方便存儲,利于后續的分析處理,具有可靠性高、直觀、高效、實時及強大的數據處理與顯示等優點。如要用于野外,則需考慮對慣組輸出信號的奇異值進行相應處理,為下一步需要完善的地方做準備。
參考文獻
[1] 鄧正?。畱T性導航原理[M].哈爾濱工業大學出版社.1994:117~136.
[2] Titterton D H, Weston J L. Strapdown inertial navigation technology [M]. London: Peter Peregrinus Ltd, 2004: 148-173.
[3] Anderson D, Shanley T. PCI Express System Architecture. Addison-Wesley Professional.2004.
[4] 李強.三軸仿真轉臺設計及動力學研究[D].哈爾濱工程大學,2007.
[5] FOO P H, NG G W. Combining the interacting multiple model method with particle filters for maneuvering target tracking [J]. IET Radar, Sonar and Navigation, 2011, 5(3): 234-255.
[6] 張榮輝,賈宏光,陳濤,等.基于四元數法的捷聯式慣性導航系統的姿態解算[J].光學精密儀器,2008,16(10):1963-1970.
作者簡介:
宋仔標(1980—),男,湖北潛江人,博士,主要研究方向:測試與控制等方面的研究。
本文來源于科技期刊《電子產品世界》2019年第4期第49頁,歡迎您寫論文時引用,并注明出處
評論