导航系统仿真:惯性导航系统仿真_(17).惯性导航系统仿真实验与案例分析.docxVIP

导航系统仿真:惯性导航系统仿真_(17).惯性导航系统仿真实验与案例分析.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

PAGE1

PAGE1

惯性导航系统仿真实验与案例分析

在上一节中,我们介绍了惯性导航系统的基本原理和组成。本节将深入探讨惯性导航系统的仿真实验与案例分析,通过具体的实验和案例来验证和理解惯性导航系统的性能和特点。我们将使用MATLAB作为仿真工具,介绍如何构建惯性导航系统的仿真模型,并通过实际数据进行验证。

1.惯性导航系统的仿真模型构建

1.1仿真模型概述

惯性导航系统(InertialNavigationSystem,INS)的仿真模型主要用于模拟惯性传感器(加速度计和陀螺仪)的输出,并通过这些输出数据计算出导航参数(位置、速度、姿态等)。仿真模型的构建需要考虑传感器的误差模型、导航方程以及环境因素的影响。

1.2传感器误差模型

1.2.1加速度计误差模型

加速度计的误差主要包括偏置误差、比例因子误差、随机漂移和噪声。这些误差可以通过以下方程进行建模:

a

am

at

ka

ba

na

1.2.2陀螺仪误差模型

陀螺仪的误差主要包括偏置误差、比例因子误差、随机漂移和噪声。这些误差可以通过以下方程进行建模:

ω

ωm

ωt

kg

bg

ng

1.3导航方程

惯性导航系统的导航方程主要包括姿态更新方程、速度更新方程和位置更新方程。这些方程可以通过以下公式表示:

1.3.1姿态更新方程

C

Cb

ωi

ωi

1.3.2速度更新方程

v

ve

fb

fc

ge

1.3.3位置更新方程

r

re

1.4仿真环境设置

在MATLAB中,我们可以使用Simulink来构建惯性导航系统的仿真模型。首先,需要设置仿真环境和参数。

1.4.1初始化参数

%初始化参数

dt=0.01;%仿真步长

T=100;%仿真时间

N=T/dt;%仿真步数

%真实轨迹参数

lat0=40;%初始纬度

lon0=116;%初始经度

h0=0;%初始高度

v0=[0;0;0];%初始速度

phi0=[0;0;0];%初始姿态

%传感器误差参数

ka=0.01;%加速度计比例因子误差

ba=[0.01;0.02;0.03];%加速度计偏置误差

na_std=0.001;%加速度计噪声标准差

kg=0.005;%陀螺仪比例因子误差

bg=[0.001;0.002;0.003];%陀螺仪偏置误差

ng_std=0.0001;%陀螺仪噪声标准差

1.5仿真模型构建

1.5.1姿态更新模块

姿态更新模块主要负责根据陀螺仪的测量值更新姿态矩阵。在Simulink中,可以使用MATLABFunction模块来实现。

functionC_b_e=update_attitude(C_b_e,omega_ib_b,dt)

%UPDATE_ATTITUDE姿态更新函数

%输入:

%C_b_e:当前的姿态矩阵

%omega_ib_b:陀螺仪测量值

%dt:仿真步长

%输出:

%C_b_e:更新后的位置矩阵

omega_ie_e=[0;0;7.2921159e-5];%地球自转角速度

omega_ib_b_corrected=(1+kg)*omega_ib_b+bg+ng_std*randn(3,1);%陀螺仪测量值修正

omega_ie_b=C_b_e*omega_ie_e;%转换到机体坐标系

omega_b=omega_ib_b_corrected-omega_ie_b;%体内角速度

%计算姿态更新矩阵

C_b_e_dot=C_b_e*skew(omega_b);

C_b_e=C_b_e+C_b_e_dot*dt;

C_b_e=C_b_e/norm(C_b_e);%归一化

end

functionskew=skew(v)

%SKEW生成反对称矩阵

%输入:

%v:3x1向量

%输出:

%skew:3x3反对称矩阵

skew=[0,-v(3),v(2);

v(3),0,-v(1);

-v(2),v(1),0];

end

1.5.2速度更新模块

速度更新模块主要负责根据加速度计的测量值更新速度。同样,可以使用MATLABFunction模块来实现。

functionv_e=update_velocity(C_b_e,f_b,v_e,dt)

%UPDATE_VELOCITY速度更新函数

%输入:

%C_b_e:姿态矩阵

%

您可能关注的文档

文档评论(0)

找工业软件教程找老陈 + 关注
实名认证
服务提供商

寻找教程;翻译教程;题库提供;教程发布;计算机技术答疑;行业分析报告提供;

1亿VIP精品文档

相关文档