- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
matlab加速度转化为位移,matlab数值积分实现加速度、速
度、位移的转换(时域频域积。。。
对此可以⽤滤波的⽅法⼤的趋势项去掉。
测试的代码如下
%测试积分对正弦信号的作⽤
clc
clear
closeall
%%原始正弦信号
ts=0.001;
fs=1/ts;
t=0:ts:1000*ts;
f=50;
dis=sin(2*pi*f*t);%位移
vel=2*pi*f.*cos(2*pi*f*t);%速度
acc=-(2*pi*f).^2.*sin(2*pi*f*t);%加速度
%多个正弦波的测试
%f1=400;
%dis1=sin(2*pi*f1*t);%位移
%vel1=2*pi*f1.*cos(2*pi*f1*t);%速度
%acc1=-(2*pi*f1).^2.*sin(2*pi*f1*t);%加速度
%dis=dis+dis1;
%vel=vel+vel1;
%acc=acc+acc1;
%
结:频域积分正常恢复信号,时域积分恢复加⼊的⾼频信息有误差
%加噪声测试
acc=acc+(2*pi*f).^2*0.2*randn(size(acc));
%结:噪声会使积分结果产⽣⼤的趋势项
figure
ax(1)=subplot(311);
plot(t,dis),title(位移)
ax(2)=subplot(312);
plot(t,vel),title(速度)
ax(3)=subplot(313);
plot(t,acc),title(加速度)
linkaxes(ax,x);
%由加速度信号积分算位移
[disint,velint]=IntFcn(acc,t,ts,2);
axes(ax(2));holdon
plot(t,velint,r),legend({原始信号,
恢复信号})
axes(ax(1));hold
on
plot(t,disint,r),legend({原始信号,恢复信号})
%%测试积分算⼦的频率特性
n=30;
amp=zeros(n,1);
f=[5:3040:10:480];
figure
fori=1:length(f)
fi=f(i);
acc=-(2*pi*fi).^2.*sin(2*pi*fi*t);%加速度
[disint,velint]=IntFcn(acc,t,ts,2);%积分算位移
amp(i)=sqrt(sum(disint.^2))/sqrt(sum(dis.^2));
plot(t,disint)
drawnow
%pause
end
close
figure
plot(f,amp)
title(位移积分的频率特性曲线)
xlabel(f)
ylabel(单位正弦波的积分位移幅值)
以上代码中使⽤IntFcn函数实现积分,它是封装之后的函数,可以实现时域积分和频域积分,其代码如下
%
积分操作由加速度求位移,可选时域积分和频域积分
function[disint,velint]=IntFcn(acc,t,ts,flag)
ifflag==1
%时域积分
[disint,velint]=IntFcn_Time(t,acc);
velenergy=sqrt(sum(velint.^2));
velint=detrend(velint);
velreenergy=sqrt(sum(velint.^2));
velint=
velint/velreenergy*velenergy;disenergy=sqrt(sum(disint.^2));
disint=detrend(disint);
disreenergy=sqrt(sum(disint.^2));
disint=disint/disreenergy*disenergy;%
此操作是为了弥补去趋势时能量的损失
%去除位移中的⼆次项
p=polyfit(t,disint,2);
disint=disint-polyval(p,t);
else
%频域积分
velin
您可能关注的文档
最近下载
- 河南省洛阳涧西区2022—2023学年七年级下学期期中考试语文试卷.docx VIP
- 2024年全国高考数学真题分类(函数与导数)汇编(附答案).pdf
- 奥维互动地图在线路勘测中地应用.docx
- 河南省洛阳市涧西区2023-2024学年七年级下学期期中考试语文试卷(含答案).pdf VIP
- 中国盐业集团有限公司招聘笔试题库2022.pdf
- 2023年福建考评员考试答案.docx VIP
- 英语中考短语大全.doc VIP
- 2024《企业盈利能力分析的国内外文献综述》2400字.docx VIP
- 蓝碳生态系统碳汇计量监测技术规程.pdf VIP
- 2025年开封文化艺术职业学院单招职业适应性测试题库及答案一套.docx VIP
文档评论(0)