matlab振动加速度算轴心轨迹,请大家帮忙调试一下程序,振动加速度转换为位移。谢谢!...

数据在附件中,采集的是发动机在1900rpm时的某点振动信号,根据程序运行出来的结果不大对,请大家帮我看看,谢谢!

程序如下:

clear;

load top6

C=C(1:10240);

fni=C;

i=(-1)^0.5;

sf=10240;

fmin=1;

fmax=5120;

c=1;

it=2;

x=fni';

n=length(x);

t=0:1/sf:(n-1)/sf;

nfft=2^nextpow2(n);

y=fft(x,nfft);

df=sf/nfft;

ni=round(fmin/df+1);

na=round(fmax/df+1);

dw=2*pi*df;

w1=0:dw:2*pi*0.5*sf;

w2=-2*pi*(0.5*sf-df):dw:-dw;

w=[w1,w2];

w=w.^it;

a=zeros(1,nfft);

a(2:nfft-1)=y(2:nfft-1)./w(2:nfft-1);

if it == 2

y=-a;

else

a1=imag(a); a2=real(a); y=a1-a2*i;

end

a=zeros(1,nfft);

a(ni:na)=y(ni:na);

a(nfft-na+1:nfft-ni+1)=y(nfft-na+1:nfft-ni+1);

y=ifft(a,nfft);

y=real(y(1:n))*c;

a=y;

subplot(2,1,1);

plot(t,a);

xlabel('时间(s)');

ylabel('位移(m)');

11.jpg

(17.43 KB, 下载次数: 22)

2015-2-6 10:33 上传

442a53943febe9465fc072b4fbe10813.gif

b2a5a3e0dcc7d508e00275fe42fce1b5.gif

结果图形

b2a79512cfadc31e697723a7beca5e34.png

11.jpg

(17.43 KB, 下载次数: 10)

2015-2-6 10:33 上传

442a53943febe9465fc072b4fbe10813.gif

b2a5a3e0dcc7d508e00275fe42fce1b5.gif

e9eeecbc0c7069258b23026112860f66.png

16ae97300fb26d5150aca66cd3888cb6.gif

2015-2-6 10:32 上传

点击文件名下载附件

829.17 KB, 下载次数: 423

数据文件

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算轴心轨迹,需要先确定振动加速度的数学模型。假设有一个振动系统,其振动加速度可以用以下方程描述: a = A*cos(w*t + phi) 其中,a是振动加速度,A是振幅,w是角频率,t是时间,phi是相位差。 接下来,需要考虑振动系统的几何形状和运动状态。假设振动系统是一个旋转的刚体,其轴心在原点,且振动加速度的方向与某一固定方向(例如x轴)相同。此时,可以用以下方程描述轴心的运动: x = R*cos(theta) y = R*sin(theta) 其中,x和y是轴心的坐标,R是轴心到原点的距离,theta是轴心的旋转角度。 将振动加速度的方程代入轴心运动的方程中,得到: x'' = A*cos(w*t + phi)*sin(theta) y'' = A*cos(w*t + phi)*cos(theta) 其中,x''和y''分别表示轴心加速度在x轴和y轴上的分量。 根据牛顿第二定律,轴心加速度与作用在轴心上的合力成正比,即: x'' = Fx/m y'' = Fy/m 其中,Fx和Fy分别表示作用在轴心上的合力在x轴和y轴上的分量,m是轴心的质量。 将上述方程联立,得到: Fx = m*A*cos(w*t + phi)*sin(theta) Fy = m*A*cos(w*t + phi)*cos(theta) 这两个方程描述了作用在轴心上的合力在x轴和y轴上的分量,它们随时间的变化而变化。因此,可以用MATLAB的ode45函数求解这个微分方程组,得到轴心的运动轨迹。具体方法如下: 1. 定义微分方程组 function [dxdt] = axis_ode(t,x,A,w,phi,m) dxdt = zeros(2,1); dxdt(1) = x(2); dxdt(2) = m*A*cos(w*t + phi)*sin(x(1)); dxdt(3) = x(4); dxdt(4) = m*A*cos(w*t + phi)*cos(x(1)); 2. 定义初始条件和时间范围 x0 = [0;0;pi/4;0]; tspan = [0 10]; 3. 调用ode45函数求解微分方程组 [t,x] = ode45(@(t,x) axis_ode(t,x,A,w,phi,m), tspan, x0); 4. 绘制轴心轨迹 plot(x(:,1),x(:,3),'-'); % x(:,1)表示x轴坐标,x(:,3)表示y轴坐标 轴心轨迹的形状和大小取决于振动系统的参数(振幅、角频率、相位差等)和几何形状(轴心距离原点的距离、轴心的初始位置等)。通过调整这些参数,可以得到不同形状的轴心轨迹

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值