鉅大LARGE | 點擊量:826次 | 2020年02月04日
基于混沌理論的微弱信號檢測的DSP實現
摘要:針對數字信號處理器(DSp)系統集成度高、速度快、功耗低、適合大量數據實時處理的特點,從應用的角度研究基于混少不了理論的微弱信號檢測原理;深入討論其應用于DSp的實用化,構建一個優化的TMS320C6203為核心的真實系統,實時實現基于混沌方法的微北信號檢測。
引言
在實際的數據采集和信號處理系統中,由于信號的幅值較小,測量時又受到信號端、傳輸器件及變換器件等本身存在的本底噪聲的影響,表現出的總體效果是有用信號被大量的噪聲和干擾所淹沒。如何檢測這種強噪聲干擾情況下的微弱信號,是信號處理中的重要研究內容。許多科研工作者已提出了一些有效的處理方法,如基于高增益的寬帶波束形成的微弱信號檢測方法及微弱信號的相干檢測法等,但都存在靈敏度不高或適應性不強的問題?;煦缦到y對小信號的敏感性及對噪聲的強免疫力,使它在微弱信號檢測中的應用潛力很大。
DSp以其高度的集成度,極快的處理速度,較低的功耗,能滿足實時性的要求等在信號處理中占據了重要的地位。本文構建了一優化的DSp實驗系統,把基于混沌理論的微弱信號檢測真正應用于實際的系統中。實驗表明,此系統能很好地實現微弱信號的檢測及其特性的測量,具有較高的精度和廣泛的應用前景。
1基于混沌理論檢測微弱信號的原理
改進Duffing方程的具體形式為:
其中fcos(wτ)為周期策動力,k為阻尼比,-x+x3為非線性恢復力。
理論研究表明,當k取某一固定值,f從0逐漸增加到臨界值Fd時,系統狀態從周期1內軌運動轉變為混沌運動;進一步增加超過閾值Fc,系統以外加周期力的頻率進行大尺度的周期振蕩。取f=F0,F0稍大于Fc,當用小幅度的、與周期策動力頻率相近的周期信號以及白噪聲對改進的Duffing振子進行攝動時,系統將時而處于大尺度周期運動狀態,時而處于混沌運動狀態,從而出現陣發性混沌現象。通過觀測混沌系統相軌跡變化,可知待檢信號中是否含有周期信號,調節周期策動力的值改變系統的狀態可以求得信號的由于上述原因值。在陣發性混沌歷程中,當ω·Δω(Δω為相對頻差)很小時系統對策動力的緩慢變化能夠很好地響應,因此周期和混沌的出現是涇渭分明的。在微小頻差的影響下,系統以周期T=2π/ω·ωΔ進行混沌運動。根據系統處于周期運動狀態時速度等間隔地通過零點,而系統處于混沌狀態時速度過零點的時間間隔不定,可通過比較速度過零點的時間間隔有無規律,判斷系統是處于大尺度周期運動狀態還是處于混沌狀態。若從某一時刻tx開始速度值在某一容差δ范圍內過零點的時間間隔基本相同,可以認為系統從tx開始進入大尺度周期運動狀態,從而得到每個周期內系統進行大尺度周期運動狀態的起始時刻。相減取平均,得陣發混沌運動的周期T,這樣即可求得弱信號的頻率值。
2系統設計
系統由A/D轉換器、數據緩存單元(FIFO)、DSp和USp2.0接口電路以及相應的電源轉換電路、Flash程序保存單元等組成,基本框圖如圖1所示。
基于實際信號采樣時間的要求,為滿足數據的處理時間、系統數據傳輸的需要,并考慮到芯片的價格、供貨周期、應用情況等其它因素,系統中A/D、DSp、FIFO、USB分別選用TI公司的ADS5422、TMS320C6203B,IDT公司的IDT70V024以及Cypress公司的CY7C68013。
外界輸入信號經A/D采樣后,采集到的數據先保存在FIFO中,數據采集結束后DSp從FIFO中讀取數據開始信號處理。信號處理的算法已編成程序保存在外部的Flash芯片上,供DSp上電讀程序到其內部RAM單元,全速運行程序。信號處理后的數據通過USB2.0接口依次傳送到主機方,把數據數值存儲在pC機內,以便進行相應的數值分析,實時顯示檢測結果并繪制相應的圖形,如顯示有無信號。若有,進一步顯示所檢測到的微弱信號的幅值、頻率等。
3信號處理算法程序流程
基于混沌理論檢測微弱信號的信號處理算法流程如圖2(a)所示。大致分為三個功能模塊,包括:判斷有無角頻率為ω的微弱信號,求微弱信號的幅值和信號的頻率。求微弱信號的具體流程如圖2(b)所示。
圖2(b)中,輸入為式(1)的解y,輸出為微弱信號的頻率。
4信號處理程序算法的優化
按照CCS(CodecomposerStudio,代碼設計套件)環境下支持的優化C的方法編程,實現任務的功能后,考慮到C編譯器產生的代碼不會使用到一些特殊、高效的DSp指令,而線性匯編則使用DSp的匯編指令。同時不必考慮指令的并進運行情況、指令的延時和寄存器的使用,對代碼進行多方面的優化,包括:將能夠并行執行的指令并行執行;處理軟件流水線中的流水線等待問題;分配寄存器的使用;為指令分配功能單元等。因此,對于程序中耗時比較大的部分可以利用線性匯編語言進一步優化。采用C語言和匯編語言的混合編程,既保證程序的結構化和可讀性,又保證應用的實時性,以滿足系統對實時性和代碼長度的要求。例如,對于應用改進的Euler方法求系統輸出的前三點值的C代碼(h,k,f,a為已知系統參數):
voidEuler(float*x,float*y){
inti;
floatt1,t2,t11,t22;
for(i=0;i<3;i++){
t1=h*y[i]+x[i];
t11=h*((-k)*y[i]+x[i]-powf(x[i],3)+f*Xf[i]+a*s[i]+Zs[i]+y[i];
t2=h*t11+x[i];
t22=y[i]+h*((-k)*t11+t1-powf(t1,3)+f*Xf[i+1]+a*s[i+1]+Zs[i+1]);
x[i+1]=(t1+t2)/2;
y[i+1]=(t11+t22)/2;
}
}
相應的線性匯編程序見網站www.dpj.com.cn。
優化前,在CCS上測得的C程序段消耗時鐘周期為39763個,而優化后的線性匯編所消耗時鐘周期為3879個,效率顯著提高。
5結果分析與結論
設定系統參數使pC顯示系統相軌跡是臨界狀態,然后依次加入外界輸入信號。
①加入純噪聲信號。當只有白噪聲Zs并入系統時,不論怎么調節Duffing陣子的參數ω,從時間圖像上觀測發現系統始終處于混沌狀態,如圖3所示??梢娫肼曤m然強烈,但是吸引子仍能將相點束縛在軌道內。說明混沌系統對噪聲具有強免疫力。
②加入混有噪聲的待測周期信號。將信號y(t)=Asin(ω0t)+randn并入系統,A、ω0分別為待測信號由于幅值及角頻率,取A=0.005,ω0=600.5rad/s,randn是均勻分布在(-1,1)之間的均值為0的白噪聲。由于混沌系統對周期信號非常敏感,當ω以公比0.03增大到ω0附近,即ω=ω1=597.03rad/s和ω=ω2=614.94rad/s時,從時間圖像上可以觀測到有規律的陣發混沌現象,如圖4所示。根據系統陣發混沌運動的周期T,可由ω±(2π/T)求微弱信號的角頻率。求得微弱信號角頻率為601.737rad/s,與實際值600.5rad/s相比,誤差非常小,精度比較高。這證明了,運用此DSp系統可以較好地檢測出微弱信號及其相關特性,具有廣泛的應用前景。
技術專區慕展上,世強帶來的SiC、GaN、三電平讓你的效率直達最high點如何利用二級輸出濾波器防止開關電源噪聲陶瓷垂直貼裝封裝(CVMp)的焊接注意事項及布局DC-DC轉換器的平均小信號數學建模及環路補償設計常用基準穩壓電源產生辦法有哪些?