AnyMath 文档

EngeePhased.Platform

页面进行中。

平台运动。

库::`[医]工程师` 座:: Motion Platform

资料描述

该*EngeePhased。平台*系统对象模拟空间中一个或多个平台的平移运动。 平台可以是目标,例如,汽车或飞机,以及声纳或雷达发射器和接收器。 该模型假设平台在仿真的每一步都以恒定的速度或恒定的加速度向前移动。 位置和速度始终在全局坐标系中设置。

要模拟移动平台,请执行以下步骤:

  1. 创建*EngeePhased。Platform*对象并设置其属性。

  2. 用参数调用对象,就好像它是一个函数一样。

若要了解有关如何使用系统对象的详细信息,请参阅 AnyMath系统对象.

语法

创造

  • sPlat=分阶段。平台() -使用默认属性值创建移动平台对象。

  • sPlat=分阶段。平台(名称=值) -创建一个具有指定属性的移动平台对象作为一对 名称=值,在哪里 姓名 -物业的名称,以及 价值 -适当的值。 您可以指定多个对 «名称-值» 对的顺序并不重要。 未指定的属性保留其默认值。

使用

  • Pos,Vel=sPlat(T) -返回平台的当前位置*Pos*和速度*Vel*。 然后它更新位置和速度。 当为属性*MotionModel*值集 "速度",并为属性*VelocitySource*-value "财产",位置根据公式更新 Pos=Pos+T,其中*T*是当前步骤的经过时间(以秒为单位)。 当为属性*MotionModel*值集 "加速",并且对于属性*AccelerationSource*-value "财产",位置和速度根据方程更新 Pos=Pos+Vel*T+1/2*AclT^2 和 Vel=Vel+Acl*T,其中*T*是当前步骤的经过时间(以秒为单位)。

  • Pos,Vel=sPlat(T,V) -返回平台的当前位置*Pos*和速度*Vel*。 位置根据公式进行更新 Pos=Pos+T,其中*T*是当前步骤的经过时间(以秒为单位)。 此语法适用于属性*MotionModel*值集 "速度",并为属性*VelocitySource*-value "输入端口".

  • Pos,Vel =sPlat(T,A)-返回平台的当前位置*Pos*和速度*Vel*。 位置根据公式进行更新 Pos=Pos+Vel*T+1/2*AclT^2 和 Vel=Vel+Acl*T,其中*T*是当前步骤的经过时间(以秒为单位)。 此语法适用于属性*MotionModel*值集 "加速",并且对于属性*AccelerationSource*-value "输入端口".

  • Pos,Vel,Laxes=sPlat(_) -还返回平台*拉克西斯*的方向轴的方向。 此语法适用于属性*OrientationAxesOutputPort*值集 真的.

争论

输入参数

T — 时间步长

+ 标量,标量

Details

的时间步长,设置为实标量。

测量单位为秒。

V — 平台速度

+ 实矩阵是3乘N

Details

平台的速度,设置为实矩阵 上 ,在哪里 -模拟平台的数量。

测量单位为米每秒。

依赖关系

若要使用此参数,请将属性设置为*MotionModel*value "速度",并为属性*VelocitySource*-value "输入端口".

一个 — 平台加速

+ 实矩阵是3乘N

Details

平台的加速度,定义为实矩阵 上 ,在哪里 -模拟平台的数量。

测量单位为米每秒。

依赖关系

若要使用此参数,请将属性设置为*MotionModel*value "加速",并且对于属性*AccelerationSource*-value "输入端口".

输出参数

Pos — 平台的当前位置

+ 实向量是3乘1列 | 实矩阵是3乘N

Details

平台的当前位置,作为大小的实数列向量返回 上 的形式 [x,y,z] 或大小的实矩阵 上 ,在哪里 -模拟平台的数量。 每列都有表单 [x,y,z]. 测量单位为米。

Vel — 当前平台速度

+ 实向量是3乘1列 | 实矩阵是3乘N

Details

平台的当前速度,作为大小的实列向量返回 上 的形式 [vx,vy,vz] 或大小的实矩阵 上 ,在哪里 -模拟平台的数量。 每列都有表单 [vx,vy,vz]. 测量单位为m/s。

拉克西斯 — 平台方向轴

+ 真正的数组是3乘3乘N

Details

平台的当前方向轴,作为真实数组返回 上 上 ,其中N是模拟平台的数量。 每个子矩阵 上 是正交矩阵。

平台的当前轴围绕平台轨迹的矢量法线旋转。

依赖关系

若要使用此参数,请将属性设置为*OrientationAxesOutputPort*value 真的.

特征

# MotionModel — 对象的运动模型
String

Details

对象的运动模型,设置为 "速度" (默认情况下), "加速" 或 "习惯":

  • "速度" -平台在模拟的每一步以恒定的速度沿着轨迹移动。

  • "加速" -平台在模拟的每个步骤中沿着具有恒定加速度的轨迹移动。

  • "习惯" -平台的运动根据参数*[Property:customtrajector]*指定的运动轨迹的点序列发生。 为了获得每个时间步的位置和速度,对象沿着轨迹的点进行分段三次插值。

# InitialPosition — 平台的初始位置
Vector / matrix of real numbers

Details

以米为单位的平台初始位置,设为矩阵 上 ,其中每列表示形式中平台的初始位置 [x,y,z]. 电话号码 -平台数量。

默认值 — [0.0, 0.0, 0.0].

# OrientationAxesOutputPort — 方向轴的输出
Logical

Details

将此属性设置为 真的 通过输出参数*Laxes*获得平台方向的瞬时轴。

默认值 — 错误.

# AzimuthScanRate — 方位角扫描速度
Scalar / vector / matrix of real numbers

Details

的方位角扫描速度,设为矢量 上 ,在哪里 -平台数量。

矢量中的每个条目表示各自平台的方位扫描速率。

默认值 — 10.

测量单位是度/秒。

依赖关系

要使用此属性,请设置*ScanMode*值 "通告" 或 "部门".

# InitialVelocity — 平台的初始速度
Vector / matrix of real numbers

Details

平台的初始速度,单位为m/s,设为矩阵 上 ,其中每列表示形式中的平台的初始速度 [vx,vy,vz]. 电话号码 -平台数量。

默认值 — [0.0, 0.0, 0.0].

依赖关系

若要使用此属性,请将属性设置为*VelocitySource*或*AccelerationSource*value "输入端口".

# Acceleration — 当前加速度
Vector / matrix of real numbers

Details

以m/s2为单位的电流加速度,作为矩阵给出 上 其中每列表示形式中的加速度 [ax,ay,az]. 电话号码 -平台数量。

默认值 — [0.0, 0.0, 0.0].

依赖关系

若要使用此属性,请设置*MotionModel*值 "加速" 而对于*AccelerationSource*-值 "财产".

# Velocity — 当前平台速度
Vector / matrix of real numbers

Details

平台的当前速度(以m/s为单位),设置为矩阵 上 ,其中每列表示形式中的平台的初始速度 [vx,vy,vz]. 电话号码 -平台数量。

默认值 — [0.0, 0.0, 0.0].

依赖关系

若要使用此属性,请设置*MotionModel*值 "速度" 而对于*VelocitySource*-value "财产".

# VelocitySource — 速度数据的来源
String

Details

此属性仅在设置值中的*MotionModel*时使用 "速度". 在这种情况下,有必要为模型提供速度数据。 指定为速度数据源 "财产" (默认情况下)或 "输入端口".

# InitialOrientationAxes — 平台的初始方向
Two-dimensional / three-dimensional matrix of real numbers

Details

定义初始局部的三个轴 平台的坐标系,设为矩阵 上 上 . 矩阵的每一列表示局部坐标系的一个轴。 所有三个轴必须正交。

默认值 — [1.0 0.0 0.0; 0.0 1.0 0.0; 0.0 0.0 1.0].

# AzimuthSpan — 方位角扫描角度范围
Matrix of real numbers

Details

方位角扫描角度范围,设为矩阵 在2,在哪里 -平台数量。

矩阵的每一行以形式定义相应平台的扫描范围 [ScanAngleLowerBound ScanAngleHigherBound]. 默认值为 [−60 60].

测量单位是度。

依赖关系

要使用此属性,请设置*ScanMode*值 "部门".

# AccelerationSource — 加速度数据源
String

Details

此属性仅在设置值中的*MotionModel*时使用 "加速". 在这种情况下,必须为模型提供加速度数据。 指定为加速度数据源 "财产" (默认情况下)或 "输入端口".

# CustomTrajectory — 点的运动轨迹
Two-dimensional / three-dimensional matrix of real numbers

Details

运动轨迹的点,定义为实矩阵 上 或数组 上 上 ,在哪里 -点数, -平台数量。 意义 — 4 或 7.

如果 同样 4,则第一列表示测量平台位置的时间点。 列与 2 由 4 -这些是坐标位置的测量 , 和 . 基于位置测量确定速度。

如果 同样 7,则列c 5 由 7 矩阵表示沿轴的速度测量值 , 和 .

时间单位是秒,位置单位是米,速度单位是米每秒。

默认值 — [0 0 0 0 0 0 0; 1 0 0 0 0 0 0].

依赖关系

若要使用此属性,请设置*MotionModel*值 "习惯".

# InitialScanAngle — 平台的初始扫描角度
Scalar / vector / matrix of real numbers

Details

平台的初始扫描角度,设为矢量 上 ,在哪里 -平台数量。

扫描发生在平台的局部坐标系中。 参数*InitialOrientationAxes*设置初始局部坐标系。 在模拟开始时,由参数*InitialOrientationAxes*指定的方向轴按*InitialScanAngle*参数中指定的角度旋转。 默认值为零。 测量单位是度。

默认值 — 0.

依赖关系

要使用此属性,请设置*ScanMode*值 "通告" 或 "部门".

# ScanMode — 机械扫描模式
String

Details

平台的机械扫描模式,设置为 "没有" (默认情况下), "通告" 或 "部门":

  • "通告" -平台持续顺时针扫描 360 沿平台的方位轴的方位角方向的度数。

  • "部门" -平台在参数*AzimuthSpan*指定的范围内沿平台方向的轴沿方位角方向顺时针扫描。 当扫描平台到达范围边界时,扫描改变方向并返回到另一个扫描边界。 扫描在平台的方向轴内进行。

方法

所有系统对象通用

步!::运行系统对象运算算法 释放!::允许更改系统对象属性的值 重置!::重置系统对象的内部状态

此外

平台定位

Details

平台具有与其相关联的局部坐标系,由三个正交轴矢量定义。 每次调用此对象时,速度矢量的方向和大小都会发生变化。 当平台作弯曲运动时,局部坐标系的轴的取向随着平台的运动而旋转。 改变速度矢量的方向确定旋转矩阵。 然后使用相同的旋转矩阵来旋转局部坐标系。 当速度矢量保持恒定方向时,旋转矩阵为单位矩阵。 使用*InitialOrientationAxes*设置局部坐标系的初始方向。 当指定多个平台时,每个平台独立旋转。