吳 帥,廖建平,肖述晗,任海燕
(北京長(zhǎng)城計(jì)量測(cè)試技術(shù)研究所,北京 100095)
加速度計(jì)和陀螺儀是慣性導(dǎo)航系統(tǒng)的重要器件,在航空、航天、航海等領(lǐng)域得到廣泛應(yīng)用[1]。高精度的光學(xué)陀螺儀輸出脈沖信號(hào),已實(shí)現(xiàn)了陀螺信號(hào)的數(shù)字化;而高精度的加速度計(jì),例如石英撓性加速度計(jì)、懸絲擺式加速度計(jì),輸出模擬電流信號(hào)[2-3],需通過(guò)數(shù)字轉(zhuǎn)換后才能提供給導(dǎo)航計(jì)算機(jī)進(jìn)行導(dǎo)航解算[4-5]。
現(xiàn)代武器裝備對(duì)慣性導(dǎo)航系統(tǒng)要求小型化、低成本、高精度[6]。I/F(電流/頻率)變換電路基于電荷平衡原理,通過(guò)電流積分方式可抑制轉(zhuǎn)化過(guò)程中的噪聲與外部干擾[7-8],但此類(lèi)模數(shù)轉(zhuǎn)換的原理決定了運(yùn)行過(guò)程中不可避免存在發(fā)熱的問(wèn)題,且電路設(shè)計(jì)難度大,影響因素較多。采用模擬數(shù)字轉(zhuǎn)換器(Analog to Digital Converter,ADC)芯片的模數(shù)轉(zhuǎn)換電路具有體積小、功耗低、采樣速率高的優(yōu)點(diǎn),在模擬信號(hào)采集中得到較多的應(yīng)用[9]。Dong等學(xué)者利用高速率采樣的12位ADC芯片實(shí)現(xiàn)了模數(shù)轉(zhuǎn)換,在高速轉(zhuǎn)換過(guò)程中實(shí)現(xiàn)了8.7位的無(wú)誤差數(shù)據(jù)位,但該方法不適用于高精度的慣性加速度計(jì)傳感器[10]。劉琴等學(xué)者使用24位ADC芯片進(jìn)行一種石英撓性加速度計(jì)的信號(hào)采集,但其研究?jī)?nèi)容側(cè)重對(duì)整體慣性導(dǎo)航系統(tǒng)的導(dǎo)航性能驗(yàn)證,對(duì)于數(shù)字化過(guò)程中信號(hào)噪聲的分析較少[11]。
本文采用高分辨率的ADC芯片設(shè)計(jì)了以ARM為處理器的加速度計(jì)信號(hào)數(shù)字化系統(tǒng),同時(shí)對(duì)ADC數(shù)字化過(guò)程中的電路噪聲問(wèn)題進(jìn)行分析,并設(shè)計(jì)一種自適應(yīng)Kalman濾波器對(duì)采樣過(guò)程中的Gauss噪聲進(jìn)行濾除,實(shí)現(xiàn)了對(duì)加速度信號(hào)的高精度模數(shù)轉(zhuǎn)換。
加速度計(jì)信號(hào)數(shù)字化設(shè)計(jì)的基本原理是對(duì)加速度計(jì)輸出模擬電流的高精度采集,系統(tǒng)需滿足加速度計(jì)輸出電流的量程,且要求轉(zhuǎn)換系統(tǒng)的線性度優(yōu)于加速度計(jì)本身線性度指標(biāo)。
數(shù)字化系統(tǒng)需實(shí)現(xiàn)對(duì)加速度信號(hào)高速率采集、濾波、輸出的功能,硬件電路系統(tǒng)由加速度計(jì)、系統(tǒng)電源、信號(hào)采集、處理器解算、數(shù)據(jù)傳輸部分組成,其結(jié)構(gòu)如圖1所示。
圖1 加速度信號(hào)數(shù)字化系統(tǒng)結(jié)構(gòu)圖Fig.1 Structure diagram of acceleration signal digitization system
系統(tǒng)電源為數(shù)字化系統(tǒng)各部分提供供電電壓和基準(zhǔn)電壓;加速度計(jì)輸出電流信號(hào);電流信號(hào)采集部分對(duì)輸入信號(hào)進(jìn)行I/V變換和差分調(diào)理,得到差分電壓信號(hào);模數(shù)轉(zhuǎn)化部分將差分電壓信號(hào)轉(zhuǎn)化,得到數(shù)字信號(hào);ARM處理器通過(guò)SPI串行接口連接ADC芯片讀取原始數(shù)字量信息,并對(duì)其進(jìn)行濾波、量化、打包、傳輸。本文工作內(nèi)容包括:數(shù)字化系統(tǒng)的電路模塊設(shè)計(jì)和算法設(shè)計(jì)。
數(shù)字化電路系統(tǒng)由外部提供±15V和+5V的電壓,兩路電源分別提供給模擬部分和數(shù)字部分。在供電模塊設(shè)計(jì)上,針對(duì)不同電子元器件的工作電壓要求,設(shè)計(jì)了不同的穩(wěn)壓電路,如圖2所示。
圖2 供電模塊結(jié)構(gòu)圖Fig.2 Structure diagram of power supply module
在模擬電路中,±15V電源為加速度計(jì)供電;通過(guò)LMxx系列芯片產(chǎn)生±5V電源為信號(hào)采集部分的I/V轉(zhuǎn)化電路和差分調(diào)理電路供電;通過(guò)TPS73xx、TPS72xx系列芯片提供ADC芯片所需的±2.5V供電電源;額外需要高精度±2.5V電源為ADC芯片提供基準(zhǔn)電壓,該部分中選擇REF50xx系列芯片進(jìn)行設(shè)計(jì),并應(yīng)用芯片的微調(diào)與降噪引腳設(shè)計(jì)可調(diào)整回路,在電路焊接裝配過(guò)程中,測(cè)量并準(zhǔn)確修正基準(zhǔn)電壓。
在數(shù)字電路中,+5V電源轉(zhuǎn)換為3.3V電源分別為ARM處理器、RS-422通信芯片以及ADC芯片的數(shù)字電源供電。
加速度計(jì)輸出信號(hào)為模擬電流信號(hào),而ADC芯片的輸入端為差分電壓輸入。因此,設(shè)計(jì)電流信號(hào)采集電路將加速度計(jì)輸出的單端電流信號(hào)Iin轉(zhuǎn)化為差分電壓信號(hào)Vout+和Vout-,分別設(shè)計(jì)了I/V轉(zhuǎn)換器電路和差分調(diào)理電路處理模擬電流信號(hào)。
I/V轉(zhuǎn)換電路選擇高精度電阻器對(duì)電流信號(hào)采樣,并通過(guò)電壓跟隨器與后端模塊阻抗匹配。運(yùn)算放大器選擇OPA228,該元器件具有低噪聲、低漂移的優(yōu)點(diǎn),可滿足高精度輸入信號(hào)的處理需要,并保證其穩(wěn)定性。加速度計(jì)輸出電流信號(hào)Iin經(jīng)過(guò)I/V轉(zhuǎn)換電路可得到單端電壓信號(hào)Vin。差分調(diào)理電路可將單端電壓信號(hào)轉(zhuǎn)化為與公共端壓差對(duì)稱(chēng)的差分電壓信號(hào),同時(shí)有效抑制電路中存在的共模噪聲。采用THS4131差分運(yùn)算放大器進(jìn)行設(shè)計(jì),電壓Vin通過(guò)差分調(diào)理電路得到差分電壓信號(hào)Vout+和Vout-,并連接到ADC芯片的輸入端,電路原理圖如圖3所示。
圖3 電流信號(hào)采集電路圖Fig.3 Circuit diagram of current signal acquisition
ADC芯片為數(shù)字化電路設(shè)計(jì)的核心器件之一,選擇32位高精度ADC芯片進(jìn)行設(shè)計(jì),器件內(nèi)部包含低噪聲可編程增益放大器、穩(wěn)定性調(diào)制器、數(shù)字濾波器,具有體積小、工作溫度范圍大的優(yōu)點(diǎn)。根據(jù)其性能指標(biāo),考慮芯片本身存在的熱噪聲,在1000SPS采樣速率下,信噪比可達(dá)121dB,無(wú)噪聲位數(shù)達(dá)到21位,滿足設(shè)計(jì)高精度加速度計(jì)的信號(hào)采集要求。
該部分電路中設(shè)計(jì)了高精度的參考電壓,以滿足對(duì)輸入信號(hào)高精度轉(zhuǎn)換的需要。同時(shí),在參考電壓引腳的輸入端設(shè)計(jì)了低通濾波器,以避免高頻噪聲的干擾。數(shù)字邏輯端口通過(guò)SPI串行通信方式與ARM處理器連接,實(shí)現(xiàn)高速率傳輸。
在電路PCB設(shè)計(jì)過(guò)程中,需考慮模數(shù)地、數(shù)字地分割的問(wèn)題。根據(jù)ADC芯片管腳類(lèi)型,在電路板的 “地平面層”將模擬地與數(shù)字地分隔,降低數(shù)字電路的高頻噪聲對(duì)模擬電路的信號(hào)干擾,從而保障模數(shù)轉(zhuǎn)換過(guò)程的穩(wěn)定性和準(zhǔn)確性。模擬端差分電壓信號(hào)輸入還采用Schottky二極管來(lái)限制輸入電壓,保證輸入信號(hào)不超過(guò)ADC的量程。
本文采用STM32F429作為處理器,實(shí)現(xiàn)數(shù)字信號(hào)的采集、濾波、傳輸。STM32F429系列ARM處理器的主頻達(dá)到180MHz,其具有SPI、USART外設(shè)并且可以使用DMA訪問(wèn),STM32F429內(nèi)部的程序流程圖如圖4所示。ARM處理器啟動(dòng)后進(jìn)行系統(tǒng)初始化,包括SPI初始化(用于讀取ADC芯片數(shù)據(jù))、USART初始化(用于 RS-422傳輸)、DMA初始化(提高處理器效率)和時(shí)鐘初始化(用于定時(shí)采集、輸出)。
圖4 處理器程序流程圖Fig.4 Flowchart of processor program
初始化后進(jìn)入循環(huán),ARM處理器在數(shù)字化系統(tǒng)中設(shè)置中斷周期為1ms,中斷函數(shù)中應(yīng)用SPI串行通信讀取ADC芯片的數(shù)字信息,并使用Kalman濾波器對(duì)采集信息進(jìn)行濾波處理,最后將處理后的數(shù)字信息打包通過(guò)DMA自動(dòng)發(fā)送,提高處理器效率。
數(shù)據(jù)發(fā)送端與ADM3076芯片連接,芯片可以將串口發(fā)送形式的數(shù)據(jù)轉(zhuǎn)化為RS-422形式傳輸?shù)缴弦患?jí)系統(tǒng),滿足設(shè)計(jì)方案的要求。
根據(jù)ADC芯片手冊(cè),在1000SPS采樣速率情況下,ADC芯片內(nèi)部噪聲為1.19μV。在實(shí)際電路中,電路板布線存在的信號(hào)干擾不可忽視,信號(hào)采集電路的運(yùn)算放大器、差分放大器在運(yùn)行中還存在熱噪聲。因此,本文對(duì)ADC芯片采集的原始數(shù)據(jù)及噪聲進(jìn)行了分析,根據(jù)其特性設(shè)計(jì)了一種自適應(yīng)Kalman濾波器,以降低噪聲、提高數(shù)據(jù)精度。
按照系統(tǒng)結(jié)構(gòu)設(shè)計(jì)完成電路板并對(duì)加速度計(jì)輸出信號(hào)進(jìn)行采集試驗(yàn),分別采集空載狀態(tài)下和1g輸入狀態(tài)下的ADC數(shù)據(jù)。將ADC差分輸入端短接,獲取空載狀態(tài)下的采集數(shù)據(jù);將加速度計(jì)靜止放置于與地基相連的大理石臺(tái)面,獲取加速度計(jì)1g輸出的采集數(shù)據(jù)。繪制兩種狀態(tài)下的時(shí)域曲線圖,如圖5所示。
由圖5可知,在空載狀態(tài)下,電路板輸出數(shù)字量曲線的離散性較小,其整體方差為1.4×10-9;1g負(fù)載狀態(tài)下,輸入電流信號(hào)與采集電路中的噪聲耦合,導(dǎo)致ADC輸入噪聲較大,數(shù)據(jù)方差為3.6 ×10-7。
圖5 空載與1g輸入狀態(tài)下的時(shí)域曲線Fig.5 Time domain curves under no-load and 1g input state
如圖6所示,對(duì)1g輸入狀態(tài)下的數(shù)據(jù)概率密度分布以及頻域特性進(jìn)行分析,其數(shù)據(jù)的分布滿足正態(tài)分布特性,其頻域在各個(gè)頻段均有分量。因此,判斷ADC采集過(guò)程中的主要噪聲為Gauss噪聲,設(shè)計(jì)一種自適應(yīng)二階Kalman濾波器對(duì)其進(jìn)行降噪處理。
圖6 原始信號(hào)概率密度分布與頻域特性曲線圖Fig.6 Probability density distribution and frequency domain characteristic curves of original signal
Kalman濾波器是一種時(shí)域狀態(tài)下的實(shí)時(shí)濾波算法,根據(jù)線性系統(tǒng)中的過(guò)程噪聲與觀測(cè)噪聲,得到系統(tǒng)狀態(tài)的最優(yōu)估計(jì)。本文設(shè)計(jì)的Kalman濾波器方程[12]如下
式(1)中,Q為過(guò)程噪聲的協(xié)方差矩陣,R為觀測(cè)噪聲的協(xié)方差矩陣,兩種噪聲矩陣的選擇與賦值會(huì)影響濾波器的效率以及噪聲抑制效果。
為了得到良好的濾波效果,狀態(tài)變量在選擇中代入加速度的一次微分項(xiàng),狀態(tài)變量表達(dá)式為
觀測(cè)量為每一個(gè)通道的加速度信號(hào)輸出值,記為 yi(i=1,2,3)。
該設(shè)計(jì)通過(guò)設(shè)置時(shí)間窗存儲(chǔ)、分析原始數(shù)據(jù),對(duì)窗內(nèi)數(shù)據(jù)進(jìn)行線性擬合,計(jì)算在時(shí)間窗內(nèi)的數(shù)據(jù)與擬合曲線的均方根,根據(jù)該數(shù)據(jù)線性度對(duì)Q進(jìn)行更新,從而實(shí)現(xiàn)在非靜止?fàn)顟B(tài)下加速度計(jì)輸出數(shù)字的濾波。Q包含三個(gè)通道的二階過(guò)程噪聲參數(shù)
式(8)、 式(9)中,n為采樣窗口的長(zhǎng)度,c和c·為狀態(tài)變量和狀態(tài)變量微分值擬合曲線在采樣窗口內(nèi)某時(shí)刻的值。
觀測(cè)矩陣R的取值與系統(tǒng)觀測(cè)量的離散性相關(guān),多次進(jìn)行穩(wěn)態(tài)試驗(yàn)對(duì)系統(tǒng)的觀測(cè)值求取協(xié)方差。通過(guò)對(duì)過(guò)程噪聲中誤差比例參數(shù)fi和f′i的調(diào)整,可以實(shí)現(xiàn)在系統(tǒng)中對(duì)原始數(shù)據(jù)的高效濾波。
圖7 濾波前后的時(shí)域與頻域曲線Fig.7 Time domain and frequency domain curves before and after filtering
時(shí)域曲線中的濾波數(shù)據(jù)相比于原始數(shù)據(jù),其離散程度小,濾波后加速度計(jì)1g輸出的數(shù)據(jù)擾動(dòng)偏差小于10-4g;頻域曲線中,濾波后的數(shù)據(jù)在各頻段的幅值都得到抑制,濾波后整體數(shù)據(jù)方差為6.1×10-9。對(duì)比結(jié)果表明,Kalman濾波器在該系統(tǒng)中能有效抑制信號(hào)采集過(guò)程中的Gauss噪聲,提高系統(tǒng)模數(shù)轉(zhuǎn)換的精度。
該系統(tǒng)用于某型號(hào)懸絲擺式加速度計(jì)輸出信號(hào)的轉(zhuǎn)換試驗(yàn),加速度計(jì)量程為-50g~+50g,對(duì)應(yīng)輸出電流為-16mA~+16mA,標(biāo)度因數(shù)為0.32mA/g。系統(tǒng)性能試驗(yàn)首先通過(guò)離心試驗(yàn),驗(yàn)證數(shù)字化系統(tǒng)的線性度指標(biāo)[13-14]。
按照離心試驗(yàn)要求對(duì)加速度計(jì)輸入-50g~+50g加速度,離心試驗(yàn)下升程與回程均對(duì)該系統(tǒng)輸出的RS-422信號(hào)進(jìn)行接收,并將數(shù)字量轉(zhuǎn)化為100Ω采樣電阻對(duì)應(yīng)電壓值,試驗(yàn)結(jié)果如表1所示。
表1 離心試驗(yàn)結(jié)果Table 1 Results of centrifugal test
由表1可知,基于Kalman濾波器的加速度計(jì)信號(hào)數(shù)字化系統(tǒng)在-50g~+50g范圍內(nèi)進(jìn)行離心試驗(yàn),得到正向離心試驗(yàn)的數(shù)字量線性度為9.6×10-5,負(fù)向離心試驗(yàn)的數(shù)字量線性度為1.8×10-5,滿足線性度優(yōu)于導(dǎo)航系統(tǒng)的技術(shù)指標(biāo)要求,該設(shè)計(jì)可滿足加速度計(jì)數(shù)字化系統(tǒng)要求。
對(duì)Kalman濾波器算法進(jìn)行動(dòng)態(tài)驗(yàn)證,將加速度計(jì)連接到電路板上,隨機(jī)擺動(dòng)加速度計(jì),驗(yàn)證文中所用濾波器是否會(huì)對(duì)動(dòng)態(tài)信號(hào)造成滯后、衰減、失真等干擾。如圖8所示,原始數(shù)據(jù)與濾波數(shù)據(jù)基本重合。為觀察穩(wěn)態(tài)和動(dòng)態(tài)情況下的數(shù)據(jù),展開(kāi)圖中的a點(diǎn)與b點(diǎn),如圖9所示。
圖8 隨機(jī)運(yùn)動(dòng)濾波前后的時(shí)域曲線Fig.8 Time domain curves of random motion before and after filtering
圖9 隨機(jī)運(yùn)動(dòng)的曲線細(xì)節(jié)Fig.9 Curve details of random motion
在靜態(tài)情況下,濾波器能夠有效降低Gauss噪聲干擾,抑制數(shù)據(jù)波動(dòng),濾波前時(shí)間窗內(nèi)數(shù)據(jù)方差為1.8×10-3,濾波后數(shù)據(jù)方差為1.6×10-6;在動(dòng)態(tài)情況下,濾波數(shù)據(jù)不會(huì)使原始信號(hào)發(fā)生衰減、失真的情況。該設(shè)計(jì)可以滿足加速度計(jì)數(shù)字化系統(tǒng)要求。
本文進(jìn)行了基于Kalman濾波器的加速度計(jì)信號(hào)數(shù)字化系統(tǒng)的研究,采用ADC芯片、ARM處理器等設(shè)計(jì)了硬件電路,提出了一種自適應(yīng)Kalman濾波器算法并對(duì)信號(hào)采集的Gauss噪聲濾波處理,實(shí)現(xiàn)了對(duì)加速度信號(hào)進(jìn)行高精度數(shù)字化采集與輸出。通過(guò)試驗(yàn)驗(yàn)證,在靜態(tài)情況下,該數(shù)字化系統(tǒng)可有效抑制Gauss噪聲;在動(dòng)態(tài)情況下,輸出的加速度數(shù)據(jù)無(wú)信號(hào)衰減、滯后、失真的情況,能滿足系統(tǒng)響應(yīng)要求。該系統(tǒng)應(yīng)用于某型號(hào)懸絲擺式加速度計(jì),在加速度計(jì)輸入范圍內(nèi),系統(tǒng)的模數(shù)轉(zhuǎn)化線性度滿足技術(shù)指標(biāo)要求,實(shí)現(xiàn)了慣導(dǎo)系統(tǒng)加速度測(cè)量的高精度、數(shù)字化、小型化。