关于PSINS运动轨迹仿真模块的理解和思考

本篇博客主要是对严恭敏老师PSINS工具箱中的轨迹仿真模块的一些阅读、理解和思考,同时也包含了一些疑问。运动轨迹仿真模块主要是输出载体的位置、姿态、速度,以及仿真生成惯性传感器信息的模块。一般做导航算法仿真验证的时候,都需要利用该模块生成传感器信息,验证算法的正确性和有效性。

坐标系定义

在PSINS中部分定义如下:

  • 载体坐标系(b): 右前上(RFU)
  • 地理坐标系(导航系n):东北天(ENU)
  • 姿态/欧拉角向量: att=[俯仰pitch;横滚roll;方位yaw],俯仰角范围-pi2 ~ pi/2,机头朝上为正;横滚范围-pi ~ pi,右倾为正;方位角范围-pi ~ pi,注意北偏西为正

飞行轨迹设计

1. 飞行轨迹类型

参考严恭敏老师《捷联惯导算法与组合导航原理》的第8章或者readme.doc的第10.8节可知,PSINS轨迹仿真中包含的运动类型有:

在这里插入图片描述

2. 相关代码

在demo/test_SINS_trj.m是一个轨迹仿真的例子。

(1) test_SINS_trj.m
  • 在该文件中调用trjsegement函数对航迹进行了分段仿真
  • 调用trjsimu函数生成姿态、速度、位置以及惯性器件信息
    在这里插入图片描述
(2) trjsegement.m

该文件根据输出的航迹类型,持续时间,前向加速度,姿态变化率生成seg.wat。其中seg.wat中包含持续时间、机头前向速度、姿态变化率以及“t frame”中的加速度。

对于向心加速度这部分的计算,以及后面推算导航系下的加速度,我不太确定PSINS这部分计算的正确性,而且我感觉不引入t frame对我来说更容易理解,具体会在后面的思考中解释。

手册中对t frame相关的描述如下:

在这里插入图片描述

相关代码如下:

在这里插入图片描述

(3) trjsimu.m

手册中包含了计算惯性器件信息(陀螺仪输出、加速度计输出)的公式,对照公式看代码会比较容易理解。

手册中的相关描述:
在这里插入图片描述

相关代码:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

疑问与思考

我主要不太明白的地方有两个:

  1. damping是在做什么?
  2. 计算导航系加速度an = Cnt*at (注释第7条)的方法是否正确?

-------------2022.11.08更新-----------------------
对于疑问1,最近对damping有一些理解,所以进行了疑问1的更新。
考虑一种情况:

  • t-1时刻加速:wat1中 w(t-1)=0, a(t-1)=1m/s^2, v(t-1)=0
  • t时刻减速:wat1中 w(t)=0, a(t)=-1m/s^2, v(t)=1*dt m/s;
  • t+1时刻匀速:wat1中 w(t+1)=0, a(t+1)=0, v(t+1)=0;

按照代码51-59行的计算方式,t+1时刻,如果damping=0,那么当前时刻等上一时刻的速度vn1=vn=1*dt m/s, an=0。但是显然实际上t+1时刻我们希望的是速度为0,没有damping继续减速就做不到让速度为0。damping实质是在匀速段,在上一时刻的速度基础上,让它逐步加速或者减速到我们期望的匀速速度。

---------------原内容-------------------------
对于疑问2,我认为比较正确的方法是:

  • 首先计算欧拉旋转矩阵,然后计算Wnbb — 机体相对导航系的角速率在机体系下的投影
    在这里插入图片描述
  • 叉乘计算向心力,并计算地理系加速度acceN (acceB只有机头方向有加速度,其他两个方向为0)
    在这里插入图片描述

由于b系和t系y轴重合(机头前向),而且对于机体而言,只有前向有速度,因此PSINS中的算法则相当于:
在这里插入图片描述
用matlab计算试了试,在姿态角都不为0,且机体有速度,并且航向变化率不为0的情况下,这两种方法给出的结果是不太一致的。我没有做详细的公式推导,但是从计算结果来看,两种计算方法应该是不等价的。

  • 8
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
### 回答1: 卫星运动轨迹的Simulink仿真是指使用Simulink软件来模拟和模拟卫星在空间中的运动轨迹。Simulink是一种功能强大的建模和仿真软件,可以帮助工程师和科学家进行各种系统的建模、仿真和分析。 在卫星运动轨迹仿真中,可以使用Simulink来建立卫星的运动方程和动力学模型。该动力学模型可以基于牛顿定律和万有引力定律建立,考虑到卫星的质量、速度、加速度和引力等因素。通过建立合适的模型参数和初始条件,Simulink可以计算出卫星在给定时间和空间中的位置和速度。 为了进行卫星运动轨迹仿真,首先需要定义模型中的各个元件。这包括卫星的质量、地球的质量和半径、卫星的轨道高度和初始速度等。然后,可以使用Simulink中的数学运算块来计算卫星在各个时间步长上的位置和速度。 在仿真过程中,可以根据需要进行参数和初始条件的更改,以评估不同情况下卫星运动轨迹的变化。同时,Simulink还提供了丰富的数据可视化功能,可以帮助用户直观地展示卫星的运动轨迹,以及与其他因素如地球自转和太阳引力的关系。 总之,通过Simulink的仿真功能,可以方便地进行卫星运动轨迹的建模和仿真。这对于卫星设计、轨道规划和任务控制等领域非常重要,可以在理论上验证各种假设和分析,并为实际任务的实施提供指导。 ### 回答2: 卫星运动轨迹的Simulink仿真是一种使用Simulink软件进行卫星运动轨迹模拟的方法。Simulink是一种基于模块化建模和可视化的软件工具,常用于系统建模、仿真和控制设计。 在卫星运动轨迹仿真中,我们可以使用Simulink的基本模块和功能来建立卫星的运动模型。首先,我们可以使用Math Operations模块来计算卫星的加速度、速度和位置,根据牛顿运动定律和万有引力定律进行模拟。然后,我们可以使用Integrator模块来对加速度进行积分,得到速度和位置的变化。同时,我们还可以加入其他模块,如Constant模块来设置初始条件和模拟过程中的外部力或干扰。 在建立完卫星运动模型后,我们可以使用Simulink的仿真器来运行仿真仿真器会根据模型中设置的时间步长和仿真时长,根据模型中定义的运动方程进行计算和模拟。在仿真过程中,我们可以观察卫星随时间的变化,例如位置、速度和加速度的曲线图或三维显示。我们还可以通过改变模型中的参数,如初始位置和速度、外部力等,来观察卫星轨道的变化和相应的运动特性。 总之,卫星运动轨迹的Simulink仿真是一种使用Simulink软件建立和模拟卫星运动模型的方法,可以帮助我们更好地理解卫星的运动轨迹和相关特性。这种仿真方法可以在理论研究、控制设计和飞行轨道规划等领域中起到重要的作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值