[問題] 離散訊號求power spectral density已回收

看板MATLAB作者 (宿舍蟑螂又肥又大)時間16年前 (2009/06/07 18:13), 編輯推噓2(206)
留言8則, 2人參與, 最新討論串1/1
小弟目前想把我經由simulink得到並已存入Workspace中振動的離散訊號 由time domain的訊號去求出他的power spectral density(PSD) 此訊號在time domain中為一個50001*1的矩陣(sample time=0.001 執行50秒) 此訊號存在Workspace中的名稱為ddXh 以下為我的m file clear close all clc parameter; load parameter1285 vehicle1=readfis('vehicle1'); tf = 50 ; sim('passive',[0 tf]); (passive為simulink檔名) Fs = 1000; % Sampling frequency L = length(t); % Length of signal NFFT = 2^nextpow2(L); % Next power of 2 from length of y [Pxy,f]=pwelch(ddXh,[],[],NFFT,Fs); plot(f,Pxy) 請問我這樣轉出來的就是ddXh的PSD嗎? 但結果Pxy的單位好像是dB/Hz 請問這樣轉換出來單位只能是dB/Hz嗎? 請各位高手提點小弟一下 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.118.199.89

06/07 19:45, , 1F
你的sample數以經大過sampling rate10倍了,可以直接
06/07 19:45, 1F

06/07 19:46, , 2F
用FFT就可以了(其實不需要這麼多倍)
06/07 19:46, 2F

06/07 19:47, , 3F
此外,你此時的pwelch輸出不是dB,你要自己取log
06/07 19:47, 3F

06/07 22:27, , 4F
請問那我的參數該怎麼設定? 另外直接用FFT是什麼意思呢?
06/07 22:27, 4F

06/07 22:29, , 5F
我發覺我的Fs改變~那我PSD的Y軸大小也會改變~這樣我不知
06/07 22:29, 5F

06/07 22:29, , 6F
到該取多少
06/07 22:29, 6F

06/08 00:02, , 7F
你去翻一下書吧,FFT會轉出啥,DSP的課本寫的很清楚吧
06/08 00:02, 7F

06/08 00:03, , 8F
好歹你也是118大學的,這應該自己動手不難吧
06/08 00:03, 8F
文章代碼(AID): #1AAvBdzJ (MATLAB)
文章代碼(AID): #1AAvBdzJ (MATLAB)