本發明涉及測試技術領域,特別涉及一種脈沖信號檢測系統,還涉及一種脈沖信號檢測方法。
背景技術:
隨著電子技術的發展,脈沖信號已廣泛應用于通信、雷達等領域,并且現代信號分析儀內部數字存儲器容量更大,能夠捕獲更長時間的脈沖信號,捕獲數據中將會存在由成千上萬脈沖組成的脈沖序列,脈沖序列中每個脈沖的脈寬、峰值功率、相位等信息可能都不相同,需要對多個脈沖進行各種參數的測量,進行脈沖的對比分析,以及考察分析脈沖之間的變化等。而要進行脈沖信號脈內等各種參數的測量分析,就必須要準確知道連續脈沖序列中每個脈沖信號所在時間軸上的位置區間,才能提取出時間區間內的脈沖采樣數據進行特征參數的測量分析。
因此,脈沖信號的檢測是非常重要的,它是脈沖信號參數正確測量分析的基本前提。由于脈沖信號非常復雜,通常會有振鈴、下垂、載波泄露、上升下降時間不一致、脈沖之間的幅度多變如凹陷,以及各種噪聲毛刺等影響,實現對于各種復雜脈沖的準確無誤檢測是一件非常困難的事情。
現有脈沖信號檢測方法的算法復雜度較高,運算量較大,導致測量時間較長、無法滿足實際工程中的實時檢測要求,而且也無法對指定功率和時間特征條件的脈沖信號進行檢測分析,此類方法具有局限性。
技術實現要素:
為解決上述現有技術中的不足,本發明提出一種脈沖信號檢測系統及方法,提供了多種閾值類型,能夠快速準確地檢測出脈沖信號,并能夠篩選檢測指定功率和時間特征條件的脈沖信號。
本發明的技術方案是這樣實現的:
一種脈沖信號檢測系統,包括:預處理單元、閾值檢測單元和條件篩選單元;
信號預處理單元包含三個部分,分別為包絡檢波模塊、信噪比估計模塊和平滑濾波模塊;包絡檢波模塊實現對輸入信號的包絡幅度計算,計算得到的信號包絡幅度數據作為后續處理的數據;信噪比估計模塊實現對信號的包絡檢波數據進行信號和噪聲之間比值的估計,并將信噪比量值作為后續執行統計和濾波處理的判斷條件;平滑濾波模塊實現對信號包絡檢波數據進行移動多點平均處理;
閾值檢測單元包含兩個部分,分別為閾值計算模塊和邊沿檢測模塊;閾值計算模塊實現對經過預處理后的信號包絡數據進行閾值計算,根據閾值類型,建立合適的檢測閾值;邊沿檢測模塊實現對脈沖信號中每個脈沖過渡邊沿的檢測,利用閾值條件完成邊沿過渡點的判斷,并保存所有過渡邊沿時間上的位置信息;
條件篩選單元包含四個部分,分別為噪聲毛刺消除模塊、幅度缺口消除模塊、功率條件篩選模塊和時間條件篩選模塊;噪聲毛刺消除模塊實現對邊沿信息中噪聲毛刺的判斷和消除;幅度缺口消除模塊實現對脈沖內部幅度凹陷的判斷和消除;功率條件篩選模塊實現只對滿足功率條件的脈沖信號進行檢測,以達到對指定功率特性的脈沖的檢測分析;時間條件篩選模塊實現對滿足給定脈寬時間、關閉時間的脈沖的檢測,以達到對指定時間特性的脈沖的檢測分析。
基于上述系統,本發明還提出了一種脈沖信號檢測方法,包括以下步驟:
步驟(1):包絡檢波:對輸入信號進行包絡檢波,求取信號的幅度;
步驟(2):信噪比估計:根據脈沖信號的包絡檢波數據,計算信號和噪聲之間的比值,估計出脈沖信號的信噪比,記錄為S1,該信噪比量值S1將用于決定后續平滑濾波的執行條件;
步驟(3):平滑濾波:通過移動平均平滑濾波器來進行平滑濾波,根據如下公式,把每個數據點及兩側各n個數據點的數據平均值作為平滑濾波器的輸出結果,并保存經過平滑濾波后的脈沖信號包絡數據;當數據點一側的點數不夠n個時,則該側點數按實際能夠取到的點數計算;
其中i=1,2,3,...,Nsample,Nsample為采樣數據長度;
步驟(4):閾值計算:實現各種閾值類型下的閾值計算,具體閾值類型有絕對閾值、相對閾值和自動閾值;
步驟(5):邊沿檢測:閾值確定以后,根據脈沖信號包絡幅度數據,由閾值Levelthresh來檢測脈沖信號的上升沿和下降沿位置;
步驟(6):噪聲毛刺消除:計算每個脈沖的上升沿和下降沿之間的采樣數據個數為Npulse,當Npulse小于K1時,將該脈沖記錄為毛刺,并從脈沖邊沿信息表中去除對應的邊沿信息;以此類推,遍歷所有脈沖邊沿信息,去除所有可能的噪聲毛刺,保存去除噪聲毛刺后的脈沖邊沿信息;
步驟(7):幅度缺口消除:計算每個脈沖的下降沿和下一個相鄰脈沖的上升沿之間的采樣數據個數為Noff,當Noff小于K2時,將該下降沿和上升沿記錄為幅度缺口的邊沿,并從脈沖邊沿信息表中去除對應的邊沿信息;以此類推,遍歷所有脈沖邊沿信息,去除所有可能的幅度缺口,保存去除幅度缺口后的脈沖邊沿信息;
步驟(8):功率條件篩選:經過之前的步驟后,獲得了準確的脈沖邊沿信息,根據實際測試中功率電平的要求,對每個脈沖的功率特性進行判斷,假設功率電平限制條件為Levellimit,將每個脈沖邊沿之間的功率電平記錄為Level[i],i=1,2,3...,Np,Np為脈沖邊沿之間的數據點個數;當Level[i]>Levellimit時,記錄此脈沖邊沿,以此類推,判斷所有脈沖,并保存滿足功率電平限定條件的脈沖邊沿信息,完成對指定功率電平的脈沖的檢測分析;
步驟(9):時間條件篩選:實現對滿足給定脈寬時間、關閉時間條件的脈沖的檢測。
可選地,對于正交采樣得到的信號IQ數據,通過下式計算信號包絡幅度:
其中,Av(i)為第i個數據點對應的包絡檢波幅度,單位為V;i=1,2,3,...,Nsample,Nsample為采樣數據長度。
可選地,當信噪比量值S1大于12dB時,不執行平滑濾波處理,直接進行步驟(4);當信號信噪比量值S1小于12dB時,對信號執行步驟(3)平滑濾波處理。
可選地,所述步驟(5)中,判斷脈沖邊沿上連續3個采樣數據點的幅度變化趨勢,三個采樣點的幅度分別記錄為A1、A2和A3,如果A1小于或等于閾值Levelthresh,A2和A3均大于閾值Levelthresh,并且A3>A2>A1,則將該邊沿記錄為上升沿;如果A3小于或等于閾值Levelthresh,A1和A2均大于閾值,并且A3<A2<A1,則將該邊沿記錄為下降沿;以此類推,檢測出所有符合閾值條件的脈沖邊沿,并保存脈沖邊沿信息。
可選地,所述步驟(6)中,K1取值為大于3的整數。
可選地,所述步驟(7)中,K2取值為大于3的整數。
可選地,所述步驟(9)中,設定脈寬最小值為PWmin,脈寬最大值為PWmax,關閉時間最小值為OffTIMEmin;計算檢測到的脈沖寬度和關閉時間,并分別記錄為PW[i]和OFFT[i],i=1,2,3...N,N為脈沖個數;對每個脈沖寬度PW[i]進行判斷,當脈沖寬度PW[i]>=PWmin并且PW[i]<=PWmax時,保存此脈沖邊沿信息,否則,去除此脈沖的邊沿信息;對每個脈沖關閉時間OFFT[i]進行判斷,當OFFT[i]>=OffTIMEmin時,保存此邊沿信息,否則,去除此邊沿信息,以此類推,判斷所有脈沖的時間條件,并保存滿足時間條件的脈沖邊沿信息,完成對指定時間特性的脈沖的檢測分析。
本發明的有益效果是:
(1)提供了多種閾值類型,能夠快速準確地檢測出脈沖信號;
(2)能夠篩選檢測指定功率和時間特征條件的脈沖信號。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明一種脈沖信號檢測系統的控制框圖;
圖2為本發明一種脈沖信號檢測方法的流程圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
目前脈沖信號檢測方法的算法復雜度較高,計算量較大,不能夠滿足信號分析儀實時檢測的應用需求,同時也無法實現對指定特征條件的脈沖信號進行篩選檢測。
因此針對這些問題,本發明設計了一種脈沖檢測系統及方法,提供了多種閾值類型,能夠快速準確地檢測出脈沖信號,并能夠篩選檢測指定功率和時間特征條件的脈沖信號。
如圖1所示,本發明的脈沖信號檢測系統包括:預處理單元1、閾值檢測單元2和條件篩選單元3。
信號預處理單元1包含有三個部分,分別為包絡檢波模塊、信噪比估計模塊和平滑濾波模塊。包絡檢波模塊實現對輸入信號的包絡幅度計算,計算得到的信號包絡幅度數據作為后續處理的數據。信噪比估計模塊實現對信號的包絡檢波數據進行信號和噪聲之間比值的估計,并將信噪比量值作為后續執行統計和濾波處理的判斷條件。平滑濾波模塊實現對信號包絡檢波數據進行移動多點平均處理,以提高信號的信噪比,達到對低信噪比脈沖信號的檢測能力。
閾值檢測單元2包含有兩個部分,分別為閾值計算模塊和邊沿檢測模塊。閾值計算模塊實現對經過預處理后的信號包絡數據進行閾值計算,根據閾值類型,建立合適的檢測閾值。邊沿檢測模塊實現對脈沖信號中每個脈沖過渡邊沿的檢測,利用閾值條件完成邊沿過渡點的判斷,并保存所有過渡邊沿時間上的位置信息。
條件篩選單元3包含有四個部分,分別為噪聲毛刺消除模塊、幅度缺口消除模塊、功率條件篩選模塊和時間條件篩選模塊。噪聲毛刺消除模塊實現對邊沿信息中噪聲毛刺的判斷和消除,通過此處理來減少將噪聲毛刺誤判為脈沖的情況。幅度缺口消除模塊實現對脈沖內部幅度凹陷的判斷和消除,以減少將幅度缺口邊沿誤判為脈沖邊沿的情況。功率條件篩選模塊實現只對滿足功率條件的脈沖信號進行檢測,以達到對指定特定功率特性的脈沖的檢測分析。時間條件篩選模塊實現對滿足給定脈寬時間、關閉時間等條件的脈沖的檢測,以達到對指定特定時間特性的脈沖的檢測分析。
基于上述脈沖信號檢測系統,本發明還提出了一種脈沖信號檢測方法,檢測流程如圖2所示,具體包括以下步驟:
步驟1:包絡檢波。
對輸入信號進行包絡檢波,求取信號的幅度。對于正交采樣得到的信號IQ數據,可通過下式計算信號包絡幅度:
其中Av(i)為第i個數據點對應的包絡檢波幅度,單位為V;i=1,2,3,...,Nsample,Nsample為采樣數據長度。
步驟2:信噪比估計。
根據脈沖信號的包絡檢波數據,計算信號和噪聲之間的比值,估計出脈沖信號的信噪比,記錄為S1。為了提高檢測效率,該信噪比量值S1將用于決定后續平滑濾波的執行條件。當信噪比量值S1大于12dB時,不執行平滑濾波處理,直接進行步驟4,以提高檢測效率;當信號信噪比量值S1小于12dB時,對信號執行步驟3平滑濾波處理,以提高檢測準確度。
步驟3:平滑濾波。
通過移動平均平滑濾波器來進行平滑濾波,根據如下公式,把每個數據點及兩側各n個數據點的數據平均值作為平滑濾波器的輸出結果,并保存經過平滑濾波后的脈沖信號包絡數據。當數據點一側的點數不夠n個時,則該側點數按實際能夠取到的點數計算。在實際檢測中,為了減小平滑濾波對短脈沖的影響,n取值5。
其中i=1,2,3,...,Nsample,Nsample為采樣數據長度。
步驟4:閾值計算。
閾值計算步驟實現各種閾值類型下的閾值計算,具體閾值類型有絕對閾值、相對閾值和自動閾值。脈沖邊沿檢測的檢測閾值記錄為Levelthresh,閾值電平單位可為V、dB和dBm。
絕對閾值:直接設置閾值電平的絕對值,記錄為Levelabs,則脈沖檢測閾值Levelthresh=Levelabs。以功率電平絕對單位dBm為例,如設定Levelabs=-25.0dBm,則實際的檢測閾值Levelthresh=-25.0dBm。
相對閾值:閾值以相對值的形式設置,記錄為Levelrel。該類型包括了峰值電平參考和噪聲電平參考兩種相對參考方式,具體如下:
峰值電平參考:以脈沖信號包絡幅度的最大值(峰值電平)作為參考,并根據此峰值電平值計算出實際使用的檢測閾值。在實際檢測過程中,根據脈沖信號包絡數據,查找幅度數據最大值,并記錄為Levelpeak,則檢測閾值Levelthresh=(Levelpeak+Levelrel)。以功率電平相對值單位dB為例,比如相對閾值Levelrel設置為-10dB;而脈沖包絡最大值Levelpeak為-10dBm,則實際計算后的檢測閾值Levelthresh為-20dBm。
噪聲電平參考:以脈沖信號噪聲電平為參考,并根據此噪聲電平值計算出實際使用的檢測閾值。在實際檢測過程中,根據脈沖信號包絡數據,利用統計方法估計出噪聲信號電平,并記錄為Levelnoise,則檢測閾值Levelthresh=(Levelnoise+Levelrel)。以功率電平相對值單位dB為例,比如相對閾值Levelrel設置為30dB;而脈沖信號噪聲電平Levelnoise為-80dBm,則實際計算后的檢測閾值Levelthresh為-50dBm。
自動閾值:統計脈沖信號包絡幅度數據,采用幅度分辨率為0.01V,查找出包絡數據最大值Amax和最小值Amin,將幅度數據分成Nhist個統計區間,則統計區間為Nhist=取整[(Amax-Amin)/0.01],Nhist取值限定為100到1000之間的整數。統計區間數越大,則幅度統計精度越高,但也會花費更多的統計時間。為兼顧統計精度和時間,可將統計區間數Nhist固定為200。幅度直方圖統計完成后,根據直方圖統計特性,采用密度分布眾數法獲得脈沖信號包絡數據的頂值Atop和底值Abase,并由此計算出脈沖信號的幅值信息(Atop-Abase)。根據脈沖幅度信息來建立合適的檢測閾值,Levelthresh=(Atop-Abase)*X,其中X取值在0.1~0.9之間。
步驟5:邊沿檢測。
閾值確定以后,根據脈沖信號包絡幅度數據,由閾值Levelthresh來檢測脈沖信號的上升沿和下降沿位置。判斷脈沖邊沿上連續3個采樣數據點的幅度變化趨勢,三個采樣點的幅度分別記錄為A1、A2和A3,如果A1小于或等于閾值Levelthresh,A2和A3均大于閾值Levelthresh,并且A3>A2>A1,則將該邊沿記錄為上升沿;如果A3小于或等于閾值Levelthresh,A1和A2均大于閾值,并且A3<A2<A1,則將該邊沿記錄為下降沿;以此類推,檢測出所有符合閾值條件的脈沖邊沿,并保存脈沖邊沿信息。
步驟6:噪聲毛刺消除。
對于由噪聲引起的尖銳起伏構成的毛刺,大于檢測閾值的毛刺會被誤判為有用脈沖,因此要對步驟5得到的脈沖邊沿信息進行毛刺消除。計算每個脈沖的上升沿和下降沿之間的采樣數據個數為Npulse,對于噪聲引起的毛刺,毛刺的兩個邊沿間多個連續采樣點同時大于閾值的概率相對于真正脈沖來說是很低的,因此通過判斷Npulse是否小于一定的點數K1,可以達到消除毛刺的目的。K1取值為大于3的整數,默認K1=5。即Npulse<5,當脈沖上升沿和下降沿之間的采樣點數小于5個點時,將該脈沖記錄為毛刺,并從脈沖邊沿信息表中去除對應的邊沿信息;以此類推,遍歷所有脈沖邊沿信息,去除所有可能的噪聲毛刺,保存去除噪聲毛刺后的脈沖邊沿信息。
步驟7:幅度缺口消除。
對脈沖內部由幅度尖銳的起伏構成缺口,當缺口邊沿小于檢測閾值時會被誤判為脈沖的邊沿,從而導致脈沖邊沿檢測不正確,因此要對需要步驟6得到的脈沖邊沿信息進行進一步的幅度缺口消除處理。計算每個脈沖的下降沿和下一個相鄰脈沖的上升沿之間的采樣數據個數為Noff,對于由幅度起伏引起的缺口,缺口的兩個邊沿間多個連續采樣點同時小于閾值的概率相對于真正脈沖來說是很低的,因此通過判斷Noff是否小于一定的點數K2,可以達到消除缺口的目的。K2取值為大于3的整數,默認K2=5,即Noff<5,當脈沖下降沿和上升沿之間的采樣點數小于5個點時,將該下降沿和上升沿記錄為幅度缺口的邊沿,并從脈沖邊沿信息表中去除對應的邊沿信息;以此類推,遍歷所有脈沖邊沿信息,去除所有可能的幅度缺口,保存去除幅度缺口后的脈沖邊沿信息。
步驟8:功率條件篩選。
經過之前的步驟后,獲得了準確的脈沖邊沿信息。根據實際測試中功率電平的要求,對每個脈沖的功率特性進行判斷,假設功率電平限制條件為Levellimit,將每個脈沖邊沿之間的功率電平記錄為Level[i],i=1,2,3...,Np,Np為脈沖邊沿之間的數據點個數;當Level[i]>Levellimit時,記錄此脈沖邊沿,以此類推,判斷所有脈沖,并保存滿足功率電平限定條件的脈沖邊沿信息,完成對指定功率電平的脈沖的檢測分析。
步驟9:時間條件篩選。
時間條件篩選部分實現對滿足給定脈寬時間、關閉時間等條件的脈沖的檢測。設定脈寬最小值為PWmin,脈寬最大值為PWmax,關閉時間最小值為OffTIMEmin。計算檢測到的脈沖寬度和關閉時間,并分別記錄為PW[i]和OFFT[i],i=1,2,3...N,N為脈沖個數。對每個脈沖寬度PW[i]進行判斷,當脈沖寬度PW[i]>=PWmin并且PW[i]<=PWmax時,保存此脈沖邊沿信息,否則,去除此脈沖的邊沿信息。對每個脈沖關閉時間OFFT[i]進行判斷,當OFFT[i]>=OffTIMEmin時,保存此邊沿信息,否則,去除此邊沿信息。以此類推,判斷所有脈沖的時間條件,并保存滿足時間條件的脈沖邊沿信息,完成對指定時間特性的脈沖的檢測分析。
以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。