加速度计算速度和位移主要是积分和滤波的过程
1、加速度acc
2、对加速度进行滤波 acc_filt = lvbo(acc) ;
3、速度等于加速度的积分 sudu = jifen (acc_filt );
4、对速度进行滤波 sudu_filt = lvbo(sudu);
5、位移等于速度的积分 weiyi = jifen (sudu_filt);
6、对位移进行滤波 weiyi_filt = lvbo(weiyi);
输入acc
输出acc_filt 、sudu_filt 、weiyi_filt
滤波
输入 x 滤波前数组
输出 y 滤波后数组
过程:对x数组中的数据求和,然后除以x数组的长度,获得x数组平均值,输出y为x的每一位减去刚获得的均值
function y=lvbo(x)
sum=0
for ii=1:length(x)
sum=sum+x(ii);
end
y=x-(sum/length(x));
end
积分
输入 x 为积分前数组
输出 y 为积分后数组
过程 y为对x的求和 , 例如:
y1 = x1
y2 = x1 + x2
y3 = x1 + x2 + x3
y4 = x1 + x2 + x3 + x4
以此类推
function y=jifen(x)
y(1) = x(1);
for i=2:length(x)
y(i) = y(i-1)+x(i);
end
end