主要内容

简单变质量6DOF(四元数)

实现简单变质量的六自由度运动方程的四元数表示

  • 库:
  • 航空航天模块/运动方程/ 6自由度

  • 简单变质量6DOF(四元数)块

描述

简单变质量6DOF(四元数)实现了六自由度简单变质量运动方程的四元数表示。

有关坐标系统和平移动力学的描述,请参阅简单变质量6DOF(欧拉角)块。Aerospace Blockset™使用使用标量优先约定定义的四元数。有关四元数向量变化率的积分的更多信息,请参见算法

限制

该物体假定所施加的力作用于物体的重心。

港口

输入

全部展开

应用的力,指定为一个三元素向量。

数据类型:

应用矩,指定为一个三元素向量。

数据类型:

一种或多种质量变化率(吸积为正,烧蚀为负),指定为标量。

数据类型:

一个或多个相对速度,指定为一个三元素矢量,在此速度下,质量以固定的身体轴向物体吸积或从物体上剥离

依赖关系

要启用该端口,请选择包括质量流量相对速度

数据类型:

输出

全部展开

平面地球参考系中的速度,返回为一个三元素矢量。

数据类型:

在平面地球参考系中的位置,返回为一个三元素矢量。

数据类型:

欧拉旋转角度[滚转,俯仰,偏航],返回为三个元素矢量,以弧度表示。

数据类型:

从平面地球轴到固定体轴的坐标转换,返回为一个3 × 3矩阵。

数据类型:

在固定坐标系中的速度,以三元素向量的形式返回。

数据类型:

固定轴上的角速率,返回为一个三元素矢量,单位为每秒弧度。

数据类型:

固定轴上的角加速度,返回为一个三元素矢量,单位为弧度/秒的平方。

数据类型:

相对于身体坐标系的固定轴上的加速度,返回为一个三元素向量。

数据类型:

油箱状态,返回为:

  • 1-油箱满了。

  • 0-油箱没满也没空。

  • -1-油箱空了。

数据类型:

相对于惯性系(平面地球)的固定轴上的加速度,返回为一个三元矢量。你通常把这个信号连接到加速度计上。

依赖关系

该端口仅在包括惯性加速度复选框被选中。

数据类型:

参数

全部展开

主要

输入输出单元,指定为度量(MKS)英语(速度(ft/s)),或英语(速度单位:kts)

单位 部队 时刻 加速度 速度 位置 质量 惯性
度量(MKS) 牛顿 牛顿米 米每秒平方 米/秒 公斤 公斤平方米
英语(速度(ft/s)) 英镑 尺磅 英尺每秒平方 英尺/秒 鼻涕虫 蛞蝓平方英尺
英语(速度单位:kts) 英镑 尺磅 英尺每秒平方 鼻涕虫 蛞蝓平方英尺

编程使用

块参数:单位
类型:特征向量
价值观:度量(MKS)|英语(速度(ft/s))|英语(速度单位:kts)
默认值:度量(MKS)

质量类型,根据下表指定。

简单的变量选择符合内的运动方程算法

编程使用

块参数:mtype
类型:特征向量
价值观:固定|简单的变量|自定义变量
默认值:简单的变量

运动表示方程,具体如下表所示。

表示 描述

四元数

在运动方程中使用四元数。

欧拉角

在运动方程中使用欧拉角。

四元数选择符合内的运动方程算法

编程使用

块参数:代表
类型:特征向量
价值观:欧拉角|四元数
默认值:“欧拉角”

物体在地球平面参照系中的初始位置,指定为一个三元矢量。

编程使用

块参数:xme_0
类型:特征向量
价值观:' (0 0 0) '|三元素向量
默认值:' (0 0 0) '

在身体固定坐标系中,身体轴上的初始速度,指定为一个三元素矢量。

编程使用

块参数:Vm_0
类型:特征向量
价值观:' (0 0 0) '|三元素向量
默认值:' (0 0 0) '

初始欧拉方向角[滚转,俯仰,偏航],指定为三个元素矢量,以弧度表示。欧拉旋转角度是指物体与东北下(NED)坐标系之间的角度。

编程使用

块参数:eul_0
类型:特征向量
价值观:' (0 0 0) '|三元素向量
默认值:' (0 0 0) '

相对于NED帧的初始身体固定角速率,指定为一个三元素矢量,单位为每秒弧度。

编程使用

块参数:pm_0
类型:特征向量
价值观:' (0 0 0) '|三元素向量
默认值:' (0 0 0) '

刚体的初始质量,指定为双标量。

编程使用

块参数:mass_0
类型:特征向量
价值观:“1.0”|双标量
默认值:“1.0”

物体的空质量,指定为双标量。

编程使用

块参数:mass_e
类型:特征向量
价值观:双标量
默认值:“0.5”

物体的全部质量,指定为双标量。

编程使用

块参数:mass_f
类型:特征向量
价值观:双标量
默认值:“2.0”

物体空惯性的惯性张量矩阵,指定为3 × 3矩阵。

编程使用

块参数:inertia_e
类型:特征向量
价值观:“眼(3)”| 3×3矩阵
默认值:“眼(3)”

物体的完全惯性的惯性张量矩阵,指定为3 × 3矩阵。

编程使用

块参数:inertia_f
类型:特征向量
价值观:“眼睛2 *(3)”| 3×3矩阵
默认值:“眼睛2 *(3)”

增益以保持四元数向量的范数等于1.0,指定为双标量。

编程使用

块参数:k_quat
类型:特征向量
价值观:1.0|双标量
默认值:1.0

选中此复选框可添加质量流量相对速度端口。这是质量被吸积或烧蚀的相对速度。

编程使用

块参数:vre_flag
类型:特征向量
价值观:|
默认值:

选中此复选框可添加惯性加速端口。

依赖关系

要启用一个端口,选择该参数。

编程使用

块参数:abi_flag
类型:特征向量
价值观:“关闭”|“上”
默认值:

状态属性

为每个状态分配一个唯一的名称。在线性化过程中,可以使用状态名而不是块路径。

  • 若要将名称分配给单个状态,请在引号之间输入唯一名称,例如:“速度”

  • 要为多个州指定名称,请输入一个用大括号括起来的逗号分隔的列表,例如:{' a ', ' b ', ' c '}.每个名称必须唯一。

  • 如果参数为空(' '),没有指定名称。

  • 状态名称仅应用于带有name参数的选定块。

  • 州的数目必须在州名的数目中平均分配。

  • 可以指定比状态更少的名称,但不能指定比状态更多的名称。

    例如,您可以在具有四种状态的系统中指定两个名称。第一个名字适用于前两个州,第二个名字适用于后两个州。

  • 在MATLAB中使用变量分配状态名®工作区,输入不带引号的变量。变量可以是字符向量、单元格数组或结构。

位置状态名,由大括号包围的逗号分隔列表指定。

编程使用

块参数:xme_statename
类型:特征向量
价值观:''用大括号括起来的|逗号分隔的列表
默认值:''

速度状态名称,指定为用大括号括起来的逗号分隔列表。

编程使用

块参数:Vm_statename
类型:特征向量
价值观:''用大括号括起来的|逗号分隔的列表
默认值:''

四元数向量表示名称,指定为由大括号包围的逗号分隔列表。

编程使用

块参数:quat_statename
类型:特征向量
价值观:''用大括号括起来的|逗号分隔的列表
默认值:''

身体旋转速率状态名,指定用大括号括起来的逗号分隔列表。

编程使用

块参数:pm_statename
类型:特征向量
价值观:''用大括号括起来的|逗号分隔的列表
默认值:''

质量状态名,指定为字符向量。

编程使用

块参数:mass_statename
类型:特征向量
价值观:''|特征向量
默认值:''

算法

四元数向量变化率的积分方程如下。的增益K当ε变为非零时,将四元数状态向量的范数驱动到1.0。您必须小心地选择这个增益的值,因为较大的值会提高范数中误差的衰减率,但由于引入了快速动力学,也会减慢模拟的速度。四元数向量中一个元素的大小误差平均地分布在所有元素中,可能会增加状态向量中的误差。

˙ 0 ˙ 1 ˙ 2 ˙ 3. 1 2 0 p r p 0 r r 0 p r p 0 0 1 2 3. + K ε 0 1 2 3. ε 1 0 2 + 1 2 + 3. 2 + 4 2

参考文献

[1]史蒂文斯,布莱恩和弗兰克刘易斯。飞机控制与仿真.2版。霍博肯,新泽西州:约翰威利父子,2003。

彼得·H·齐普菲尔航空航天飞行器动力学建模与仿真.第二版。莱斯顿,弗吉尼亚州:AIAA教育系列,2007。

扩展功能

C / c++代码生成
使用Simulink®Coder™生成C和c++代码。金宝app

介绍了R2006a