陀螺数据卡尔曼滤波MATLAB程序 200

有一组陀螺数据,我也建立了AR(3)模型,现在想用MATLAB仿真进行卡尔曼滤波,谁能提供一下MATLAB程序供参考,万分感谢!!!!!... 有一组陀螺数据,我也建立了AR(3)模型,现在想用MATLAB仿真进行卡尔曼滤波,谁能提供一下MATLAB程序供参考,万分感谢!!!!! 展开
 我来答
若以下回答无法解决问题,邀请你更新回答
冷血残日
2016-04-29 · TA获得超过2205个赞
知道大有可为答主
回答量:2889
采纳率:14%
帮助的人:855万
展开全部
MATLAB参考程序
1. 绘制连续系统零极点图程序
function [p,q]=sjdt(A,B)
%A:系统函数分母多项式系数向量
%B:系统函数分子多项式系数向量
%p:函数返回的系统函数极点位置行向量
%q:函数返回的系统函数零点位置行向量
p=roots(A); %求系统极点
q=roots(B);; %求系统零点
p=p'; %将极点列向量转置为行向量 q=q'; %将零点列向量转置为行向量 x=max(abs([p q])); %确定纵坐标范围 x=x+0.1;
y=x; %确定横坐标范围 clf
hold on
axis([-x x -y y]); %确定坐标轴显示范围 axis('square')
plot([-x x],[0 0]) %画横坐标轴 plot([0 0],[-y y]) %画纵坐标轴 plot(real(p),imag(p),'x') %画极点
plot(real(q),imag(q),'o') %画零点
title('连续系统零极点图') %标注标题
text(0.2,x-0.2,'虚轴')
text(y-0.2,0.2,'实轴')
2.根据连续系统零极点分布绘制系统频率响应曲线程序
function splxy(f1,f2,k,p,q)
%f1、f2:绘制频率响应曲线的频率范围(即频率起始和终止点,单位为赫兹) %p、q:系统函数极点和零点位置行向量
%k:绘制频率响应曲线的频率取样间隔
p=p';
q=q';
f=f1:k:f2; %定义绘制系统频率响应曲线的频率范围 w=f*(2*pi);
y=i*w;
n=length(p);
m=length(q);
if n==0 %如果系统无极点 yq=ones(m,1)*y;
vq=yq-q*ones(1,length(w));
bj=abs(vq);
ai=1;
elseif m==0 %如果系统无零点 yp=ones(n,1)*y;
vp=yp-p*ones(1,length(w));
ai=abs(vp);
bj=1;
else
yp=ones(n,1)*y;
yq=ones(m,1)*y;
vp=yp-p*ones(1,length(w));
vq=yq-q*ones(1,length(w));
ai=abs(vp);
bj=abs(vq);
end
Hw=prod(bj,1)./prod(ai,1);
plot(f,Hw);
title('连续系统幅频响应曲线')
xlabel('频率w(单位:赫兹)')
ylabel('F(jw)')
3. 绘制离散系统零极点图程序
function ljdt(A,B)
p=roots(A); %求系统极点
q=roots(B); %求系统零点
p=p'; %将极点列向量转置为行向量 q=q'; %将零点列向量转置为行向量 x=max(abs([p q 1])); %确定纵坐标范围
x=x+0.1;
y=x; %确定横坐标范围 clf
hold on
axis([-x x -y y]) %确定坐标轴显示范围 w=0:pi/300:2*pi;
t=exp(i*w);
plot(t) %画单位园
axis('square')
plot([-x x],[0 0]) %画横坐标轴
plot([0 0],[-y y]) %画纵坐标轴
text(0.1,x,'jIm[z]')
text(y,1/10,'Re[z]')
plot(real(p),imag(p),'x') %画极点
plot(real(q),imag(q),'o') %画零点
title('pole-zero diagram for discrete system') %标注标题
hold off
4.根据离散系统零极点分布绘制系统频率响应曲线程序
function dplxy(k,r,A,B)
p=roots(A); %求极点
q=roots(B); %求零点
figure(1)
ljdt(A,B) %画零极点图
w=0:l*pi/k:r*pi;
y=exp(i*w); %定义单位圆上的k个频率等分点 N=length(p); %求极点个数
M=length(q); %求零点个数
yp=ones(N,1)*y; %定义行数为极点个数的单位圆向量 yq=ones(M,1)*y; %定义行数为零点个数的单位圆向量 vp=yp-p*ones(1,k+1); %定义极点到单位圆上各点的向量 vq=yq-q*ones(1,k+1); %定义零点到单位圆上各点的向量
Ai=abs(vp); %求出极点到单位圆上各点的向量的模 Bj=abs(vq); %求出零点到单位圆上各点的向量的模 Ci=angle(vp); %求出极点到单位圆上各点的向量的相角 Dj=angle(vq); %求出零点到单位圆上各点的向量的相角 fai=sum(Dj,1)-sum(Ci,1); %求系统相频响应
H=prod(Bj,1)./prod(Ai,1); %求系统幅频响应
figure(2)
plot(w,H); %绘制幅频特性曲线
title('离散系统幅频特性曲线')
xlabel('角频率')
ylabel('幅度')
figure(3)
plot(w,fai)
title('离散系统的相频特性曲线')
xlabel('角频率')
ylabel('相位')
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
felixli0318
2015-12-12 · TA获得超过360个赞
知道小有建树答主
回答量:207
采纳率:100%
帮助的人:91.9万
展开全部
我正好现在在做。。。你莫非也是交大的。。。。
追问
我给你发了个私信,私下请教你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式