请问:如何计算振动烈度?
采集的是加速度信号,怎么计算烈度呢?理论上可以先对加速度积分得到速度,后fft变换得其幅值,再用公式计算烈度。关于积分,有时域和频域积分两种方法,其中时域积分涉及初速度问题;好像前面有人提出问题说频域积分会有一个常数存在;具体该怎么做呢?
有没有大侠亲自做过振动烈度计算啊?能否详细指点一下,当然有算法供参考是最好不过的了:)
这里先谢过各位了,我的邮箱是fanokay@sina.com。。。 振动烈度,各行业有各行业的标准。
地震烈度好像以加速度为准,机械设备则以速度为准分类。
加速度积分一次得速度,再积分一次得振幅。时间足够长了,积分初始值都取另。
请看我的程序及数据
附件中是我的一组数据,有效格式是.mat,上传附件不支持该格式文件……请各位注意更改后缀名!我的程序有什么问题吗?为什么积分求得的速度是递减的呢?
clear;
load ('E:\Poject\1439.mat');
a_data = Data(:,1)';
n = length(a_data);
dt = 1/SampleFrequency;
t = (0:n-1)*dt;
figure;
plot(t,a_data);
title('原始加速度信号')
ylabel('Mag (m/s^2)');
xlabel('Time (s)');
%%%%%%%时域积分
V(1)=0;
for i=2:n-1
V(i)=V(i-1)+(a_data(i-1)+4*a_data(i)+a_data(i+1))/6*dt; %%%%%%辛普森算法
end
V(n)=V(n-1);
figure;
plot(t,V);
title('由加速度信号辛普森算法时域积分得速度信号')
ylabel('Vm/s');
xlabel('Time (s)');
%%%%%%%%对速度FFT变换
V_fft = abs(fft(V))*2/n;
V_f = (0:n-1)*SampleFrequency/n;
figure;
plot(V_f(1:n/2+1),V_fft(1:n/2+1)); %单边频谱
title('速度FFT变换');
ylabel('V (m/s)');
xlabel('Frequency (f/Hz)');
%%%%%%%%%求振动烈度
Vliedu = sqrt(sum(V_fft.^2)/2)
正在尝试中
我也有这个需求,正在尝试方案 请问做出振动烈度的计算了吗,能不能看一下? fanokay 发表于 2008-8-21 19:29附件中是我的一组数据,有效格式是.mat,上传附件不支持该格式文件……请各位注意更改后缀名!
我的程序有 ...
我后来发现速度值FFT变换后,求烈度,轴承达到了1.34左右,但是齿轮达到209.9865,太不可思议了,为什么相差那么大?不知道你遇到没有?另外我看到文献,用加速度求烈度值比你所写的要复杂得多。 fanokay 发表于 2008-8-21 19:29
附件中是我的一组数据,有效格式是.mat,上传附件不支持该格式文件……请各位注意更改后缀名!
我的程序有 ...
时隔多年,不知道楼主还研不研究?
页:
[1]