声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1879|回复: 1

用steval-mki062v2测得的加速度,转换成位移,请大侠们指导

[复制链接]
发表于 2011-11-4 22:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
用steval-mki062v2测得的加速度数据,见附件。如何将其转换成加速度数据,学习了本论坛里大部分关于加速度积分成位移的帖子,也学到了很多知识,但是还是不能解决我自己的问题,一次积分的速度也不对,而且为什么我的结果会出现位移减小的现象的呢?是我的数据出了问题吗?
我的matlab代码用了时域积分和频域积分两种方法,但是效果都不好,请大侠们指导!
代码如下:(画图代码未写出)
clear;
clc;
data                =load('E:\matlab_work\programmes\jiasupingtai\iNEMO_data\iNEMO2_move_400HZ.txt');
data_x              =data(:,3);
x                   =data_x;
n                   =length(data_x);      %信号长度
speed               =zeros(n,1);
distance            =zeros(n,1);
sf                  =50;      %采样频率
t                   =0:1/sf:(n-1)/sf; %时间向量
data_x              =data_x-mean(data_x,1);
for i=1:n-1;
    speed(i+1)      =speed(i)+data_x(i)/sf;
end
% data_x=data_x-mean(data_x);
% for i=1:n-2
%      speed(i+1)=speed(i)+(data_x(i)+4*data_x(i+1)+data_x(i+2))/(sf*6);
% end
speed               =speed-mean(speed,1);
for j=1:n-1
    distance(j+1)   =distance(j)+speed(j)/sf;   
end


it            =2;        %积分次数   1:求速度;2: 求位移
x             =x-mean(x);
% x             =sin(2*pi*f*t)+cos(4*pi*f*t);%输入数据 行向量
fmin          =0;      %最小截止频率
fmax          =25;     %最大截止频率,小于采样频率sf的一半
nfft          =2^nextpow2(n); %大于并最接近于2的幂次方 的长度
y             =fft(x,nfft);      %fft变换
df            =sf/nfft;         %计算频率间隔(Hz/s)
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 2==it
    y         =-a;
else                %进行一次积分的相位变化
    a1        =imag(a);
    a2        =real(a);     
    y         =a1-a2*1i;
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));     %取逆变换的实部的前n个元素并乘以变换系数为积分结果

iNEMO2_move_400HZ.txt (138.45 KB, 下载次数: 13)
我只想讲此附件里的加速度数值转换成位移信息,请大侠们知道   频域积分也行 !!!!

加速度未去均值

加速度未去均值

加速度去均值后的速度

加速度去均值后的速度

原始位移,时域积分

原始位移,时域积分



回复
分享到:

使用道具 举报

 楼主| 发表于 2011-11-5 16:56 | 显示全部楼层
期待高手!!!!如何去除重力加速度的影响 ???这也是一个很头疼的问题!!!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-29 05:19 , Processed in 0.061548 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表