LabVIEW的信號處理方法
有兩個同頻率的正弦信號,想測試它們的頻率和相位差。有三種方法:過零檢測法、相關(guān)分析法、頻譜分析法。
哪種方法最好編程和精度最高?用軟件來完成的話,對信號要做什么處理?
直接是在數(shù)采卡采集范圍內(nèi)的正弦信號就行?做的思路是不是先采集兩路信號過來,然后再用各種函數(shù)進行分析?
A:
相位差式扭矩傳感器的信號測量,都是用程序處理的,而且結(jié)果都還不錯
兩種方法:
一種是直接將正弦信號采集進來,然后利用labview的相位分析控件求得相位差,這種方法的缺點是在高速旋轉(zhuǎn)時需要極高的采樣率,通常我們一塊6025的AI只能用來采這兩路信號。
另一種方法是在外圍用數(shù)字電路將兩路信號整定成方波,然后用門將表示相位差的方波做出來,然后用計數(shù)器口的脈寬測試功能求出具體相位差。
Q:
四川誠邦NJ型扭矩傳感器。轉(zhuǎn)速不高,最高1150轉(zhuǎn),而且我常用的是
如果要用計數(shù)器的話,用幾個?我的卡只有兩個計數(shù)器。
A:
如果是直接采的話采樣率肯定越高越好
不過可以估算:0到90度對應(yīng)量程M
n=轉(zhuǎn)速rpm*每轉(zhuǎn)輸出脈沖/60
假設(shè)采樣率
直采的兩路信號分別用Waveform
如果采用外部先處理的話也很簡單,先把兩路信號通過過零檢測芯片。
整為兩路方波信號,然后通過一個或非邏輯將兩路方波信號的相位差處理出來,成為一路方波信號,信號的高電平代表相位差,整個周期當(dāng)然是360度了,然后用一路ctr口即可測試出這路信號的高電平脈寬和整周期寬度,從而可以得到相位差的角度表示。
2006528141661.rar
想測試一個10MHz的信號接入電容的前后波形的相位差,通過20M的信號發(fā)生器和數(shù)字化儀能測試出來嗎?
20M的信號發(fā)生器的速率是指每點的更新率,也就是說如果你要生成一個sine信號(每周期1000個點),那么你生成的sine的頻率為20KHz。所以你要得到一個10MHz的sine信號,最好用200MHz的發(fā)生器生成,比如NI
再用100MHz(5122)或200MHz(5124)的數(shù)字化儀來采就可以了(每個設(shè)備正好有2個同步采集的通道)。
數(shù)字濾波控件的taps
數(shù)字濾波控件的taps是
FIR
是濾波器傳遞函數(shù)的階數(shù),
濾波
對采集到的數(shù)據(jù)進行濾波。采集到的數(shù)據(jù)都是二維數(shù)組,與數(shù)字濾波節(jié)點連接時告知source和sink類型不同,sink是waveform
可是二維數(shù)組如何才能變成waveform?
波形數(shù)據(jù)類型是一個簇,cluster,你可以先研究一下你的二維數(shù)組,把你需要處理的那組數(shù)先取出來,可以用數(shù)組里的函數(shù)。
把這個一位數(shù)組組合成一個cluster,
做倒譜根據(jù)的是先求功率譜,再取對數(shù),然后進行傅立葉反變換,可圖上顯示是一個平底鍋底部的線條。
各位高手,誰做過,可否討論討論代碼,或者發(fā)來程序圖片看一下,我不肯定自己正確與否。
PS:我測的是一條頻率為5幅值為10的正弦波。
你倒譜計算步驟應(yīng)該是對的,可能是參數(shù)設(shè)置的問題,建議參考一下現(xiàn)代信號分析的書
LabVIEW中暫時還沒有直接計算倒譜的工具函數(shù)
LabVIEW的高級信號處理工具包(Advanced
在這個工具包的子工具包(時間序列分析)中關(guān)于倒譜有下面幾個VI:
TSA
TSA
TSA
duty
關(guān)于duty
用LabVIEW如何decode
有個Express
評論