采用DSP的實時震動信號分析處理系統(tǒng)設(shè)計原理
3.2 程序流程
圖4為系統(tǒng)軟件主程序流程。首先對系統(tǒng)初始化,看門狗定時復(fù)位,啟動A/D轉(zhuǎn)換器采集數(shù)據(jù),主程序進(jìn)入死循環(huán);當(dāng)A/D轉(zhuǎn)換器轉(zhuǎn)換完畢,進(jìn)入中斷子程序,讀取數(shù)據(jù),并將數(shù)據(jù)存人數(shù)組進(jìn)行數(shù)據(jù)的處理和緩存。
主程序先初始化系統(tǒng)控制寄存器,初始化PIE向量表禁止和清除所有CPU中斷,采用TMS320F2812片內(nèi)集成的A/D轉(zhuǎn)換器采集數(shù)據(jù)。程序首先對 A/D轉(zhuǎn)換器初始化,用DSP內(nèi)的EVA事件管理器產(chǎn)生SEQ1A/D轉(zhuǎn)換啟動信號,首先設(shè)置T1比較值為0x0080,設(shè)置周期寄存器為0xFFFF使能事件管理器A的EVASOC,使能定時器1比較遞增計數(shù)模式,DSP事件管理器EVA的配置程序如下:
EVA為SEQ1產(chǎn)生ADC SOC信號后,開始對通道1轉(zhuǎn)換,轉(zhuǎn)換結(jié)束后,A/D轉(zhuǎn)換產(chǎn)生中斷信號并調(diào)用中斷處理程序讀取ADCRESULTO中的值存人數(shù)組。當(dāng)采滿512個點后將程序跳轉(zhuǎn)到數(shù)據(jù)處理程序,調(diào)用FIR和FFT子程序,其中DSP A/D轉(zhuǎn)換器初始化程序代碼為:
DSP整個系統(tǒng)軟件采用C語言和匯編語言混合編程,中斷函數(shù)模塊用匯編語言,可提高程序的效率,F(xiàn)FT和FIR數(shù)字濾波運算主體用混編語言編寫,可從TI網(wǎng)站下載。
實驗結(jié)果
為了檢驗系統(tǒng)的實際應(yīng)用能力,將該系統(tǒng)在震動臺上進(jìn)行實驗,將3028型傳感器固定在激震臺上,用激震臺分別模擬坦克、卡車和人員3種震動信號,這3種信號各取20組用于該系統(tǒng)實驗,根據(jù)實驗輸出信號判斷識別的正確率,在震動臺達(dá)到穩(wěn)定后DSP的解算時間均小于1 s。DSP解算識別結(jié)果如表1所示。
由實驗結(jié)果看出,該系統(tǒng)能夠?qū)δ繕?biāo)的識別起到一定的輔助分析作用,系統(tǒng)解算時間均小于1 s,達(dá)到實時分析要求,系統(tǒng)能夠較好分析人員產(chǎn)生的震動信號,而對坦克和車輛產(chǎn)生的震動信號分析結(jié)果較差,這主要是由于坦克和車輛產(chǎn)生的震動信號特征較為相似,單純從震動信號的頻率和強度區(qū)分難度較大;另外由于震動臺是磁激勵式的,對外有較強的電磁輻射,會對整個系統(tǒng)產(chǎn)生干擾,因此,后續(xù)實驗需采取屏蔽電磁干擾的措施,震動信號分析算法還需進(jìn)一步提高。
評論