锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

加速度转换成位移的matlab代码及说明

时间:2022-10-06 03:00:00 加速度传感器3023a2h20na位移传感器位移传感器永久

加速度转换为位移matlab代码及说明》由会员分享,可在线阅读,更多相关加速度转换为位移matlab请在人文库网上搜索代码及说明(5页收藏版)。

1.将加速度转换为位移matlab代码和说明从测量的加速度离散数据转换为位移数据一般不直接在时域进行积分处理,而是从时域转换为频域,然后转换为时域获得位移结果。相关matlab处理王济先生的处理程序方法matlab振动信号处理中的应用程序如下:%频域积分%clear; clc; close all hidden%fni=input(频域积分-输入数据文件名:s);fid=fopen(fni,r);sf=fscanf(fid,%f,1);%采样频率fmin=fscanf(fid,%f,1);%最小截止频率;fmax=fscanf(fid,%f,1);%最大截止频率c=fs。

2、canf(fid,%f,1)%单位变换系数;it=fscanf(fid,%f,1);%积分次数sx=fscanf(fid,%s,1);标记%横向坐标轴sy1=fscanf(fid,%s,1);标记%纵向坐标轴输入单位sy2=fscanf(fid,%s,1);标记%纵向坐标轴输出单位fno=fscanf(fid,%s,1)%输出数据文件名称x=fscanf(fid,%f,1,inf);输入数据存成行向量status=fclose(fid);n=length(x);%建立时间向量t=0:1/sf:(n-1)/sf;最接近n的2%以上的幂次数为FFT长度nfft=2nextpow2(n);。

3、?T变换y=fft(x,nfft);%计算频率间隔(Hz/s)df=sf/nfft;%计算指定频带对应频率数组的下标ni=round(fmin/df 1);na=round(fmax/df 1)(rad/s)dw=2*pi*df;%建立正离散圆频率向量w1=0:dw:2*pi*(0.5*sf-df);构建负离散圆的频率向量w2=2*pi*(0.5*sf-df):-dw:0;%将正负圆频率向量组合成向量w=w1,w2;以积分次数为指数,建立圆频变量向量w=w.it;%变换积分的频域a=zeros(1,nfft); a(2:nfft-1) =y(2:nfft-。

4、1)./w(2:nfft-1);if it = 2y=-a; 二次积分的相位变换%elsea1=imag(a); a2=real(a); y=a1-a2*i; %进行积分相位变换enda=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); %IFFT变换%取逆变换的实n个元素乘以单位变换系数作为积分结果y=real(y(1:n)*c;subplot(2,1,1); plot(t,x); xla。

5、bel(sx); ylabel(sy1); grid on; %画几分钱的时程曲线图形subplot(2,1,2); plot(t,y); xlabel(sx); ylabel(sy2); grid on; 绘制积分后的时程曲线图形%打开文件输出积分后的数据fid=fopen(fno,w);for k=1:n, fprintf(fid,%f n,y(k); endstatus=fclose(fid);程序使用说明:操作程序会显示 频域积分-输入数据文件名:在之后写出输入数据文件的完整文件名(包括扩展名,例如data.txt)必须需要数据文件matlab在工作空间路径下,必须满足数据文件。

6.以下格式要求:采样频率下限截止频率上限截止频率单位变换系数积分阶数(加速度变位移为2,变速度为1)(s)加速度(g)位移(mm)out.txt具体加速度数据(返回或空间隔离)如下图所示:只有满足此格式的数据文件才能正常处理,并注意单位变换系数和坐标,如果按照书中的例子,以g为单位位移位mm单位变换系数应为9.8*1000=9800;加速度单位为每二次方秒米mm位移单位是1*1000=1000;如果m是位移单位,单位变换系数应为1。要注意单位变换系数的选取和自己设定的坐标单位有关。需要注意的是,单位变换系数的选择与自己设置的坐标单位有关。如果数据是一维数据,则振动加速度值可以直接。

7.连接并使用程序,但如果测量的原始结果与我一样,则需要修改程序以对应振动加速度的时间,并将读取数据的代码修改为读取的x数组,以分离加速度数据和时间数据。取代原来的加速度x和时间t。我修改后的程序如下,以前除了直接写在程序中的数据部分外,不需要输入,而测量数据的时间对应于相应的加速度,m为位移单位m/s2为加速度单位,单位变换系数为1。程序如下:注:如果您直接复制程序,请注意中英文输入法的切换,导致程序字符出现问题matlab只需在英文输入状态下更改单引号即可。%%频域域积分%%clear; clc; close all hidden%fni=input(频域积分-输入数据文件名:s);f。

8、id=fopen(fni,r);sf=12000%采样频率fmin=0.最小截止频率为1%fmax=最大截止频率6000%c=1%单位变换系数it=2%积分次数sx=时间(s);标注%横向坐标轴sy1=加速度(m/s2);标记%纵向坐标轴输入单位sy2=位移(m);垂直坐标轴输出单位标注%out.txt;%输出数据文件名x=fscanf(fid,%f,1,inf);输入数据存成行向量%加速时间数据分离for i=1:1:(length(x)/2)%时间数据t(i) = x(2*i-1);%加速度数据xx(i) = x(2*i);endstatus=fclose(fid);n=lengt。

9、h(xx);最接近n的2%以上的幂次数为FFT长度nfft=2nextpow2(n);?T变换y=fft(xx,nfft);%计算频率间隔(Hz/s)df=sf/nfft;%计算指定频带对应频率数组的下标ni=round(fmin/df 1);na=round(fmax/df 1)(rad/s)dw=2*pi*df;%建立正离散圆频率向量w1=0:dw:2*pi*(0.5*sf-df);构建负离散圆的频率向量w2=2*pi*(0.5*sf-df):-dw:0;%将正负圆频率向量组合成一个向量w=w1,w2;以积分次数为指数,建立圆频变量向量w=w.it;%进行积。

10、分频域变换a=zeros(1,nfft); a(2:nfft-1) =y(2:nfft-1)./w(2:nfft-1);if it = 2y=-a; 二次积分的相位变换%elsea1=imag(a); a2=real(a); y=a1-a2*i; %进行积分相位变换enda=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); %IFFT变换%取逆变换的实n个元素乘以单位变换系数作为积分结果y=real(y(1:n)*c;subplot(2,1,1); plot(t,xx); xlabel(sx); ylabel(sy1); grid on; %画几分钱的时程曲线图形subplot(2,1,2); plot(t,y); xlabel(sx); ylabel(sy2); grid on; 绘制积分后的时程曲线图形%打开文件输出积分后的数据fid=fopen(fno,w);for k=1:n, fprintf(fid,%f n,y(k); endstatus=fclose(fid。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章