zoukankan      html  css  js  c++  java
  • PSD的单位及计算方法[转]

     

    功率谱密度(PSD)的国际单位

    功率谱密度(PSD),单位为:unit^2/Hz代表单位频率上信号的能量,所以是密度谱,幅值代表频段内的有效值平方。

    如果是加速度功率谱密度,加速度的单位是m/s^2,
    那么,加速度功率谱密度的单位就是(m/s^2)^2/Hz,
    而Hz的单位是1/s,经过换算得到加速度功率谱密度的单位是m^2/s^3.

    同理,如果是位移功率谱密度,它的单位就是m^2*s,
    如果是弯矩功率谱密度,单位就是(N*m)^2*s
    位移功率谱——m^2*s
    速度功率谱——m^2/s
    加速度功率谱——m^2/s^3

    PSD计算时的步骤为
    1 对每一分段数据进行FFT变换,并求它的幅值谱
    2 对幅值谱进行平方
    将双边谱转化为单边谱??
    4 除以频率分辨率delt(f)=1/T=fs/nfft


    举个例子:
    幅值为1,频率为16Hz的正弦信号,使用1024Hz采样,2048点进行功率谱密度计算,频率分辨率为1024/2048=0.5Hz,求出的功率谱单边谱在第32根谱线处的值为1,解释为:信号FFT变换后得到的双边谱,幅值分别为0.5,平方后为0.25,转化为单边乘2为0.5,再除以频率分辨率为1。将1乘以0.5(频率分辨率),正好为该信号有效值0.707的平方。

    因为实数信号的双边幅值谱都是对称的,双边谱中包含负频率,在物理系统中是没有的,因此用单边谱就够了,这时候把负频率成分附加到相应的正频率成分,也就是在双边谱的基础上乘以2。

    另参考:matlab不同方法计算的功率谱密度幅值分析:

    pwelch的幅值是单边谱,幅值的量纲是EU^2/Hz。

    PSD是双边谱,幅值的量纲是EU^2,大小是实际功率谱密度的fs/2倍(fs是采样频率)。

    即:x(n)是一离散数据序列,采样频率为fs,fft点数为N。

           则Pwelch=2*abs(fft(x)).^2./fs./N

             Psd=abs(fft(x)).^2./N

    至此,明白了为什么ADAMS和DASP中计算出来的值差100倍的原因了!

    因为在ADAMS中的采样频率fs=3000/15=200Hz,所以,可以看出ADAMS中计算出来的应该是PSD,也就是双边功率谱密度“ ADAMS/PostProcessor creates a one-sided power spectral density. Therefore, the scaling it uses is: ”

    ADAMS帮助文件里为什么说是单边谱啊?不管那么多了,反正在ADAMS中计算得到的结果/采样频率的一般才是DASP中的幅值(Pwlch)。

  • 相关阅读:
    Java实现 LeetCode 400 第N个数字
    Java实现 LeetCode 400 第N个数字
    Java实现 LeetCode 399 除法求值
    Java实现 LeetCode 399 除法求值
    Java实现 LeetCode 399 除法求值
    Java实现 LeetCode 398 随机数索引
    Java实现 LeetCode 398 随机数索引
    Java实现 LeetCode 398 随机数索引
    linux中的cd ..和cd -命令有什么区别?
    GCC使用
  • 原文地址:https://www.cnblogs.com/xpvincent/p/9341380.html
Copyright © 2011-2022 走看看