waypointTrajectory
航路点轨迹发生器
描述
的waypointTrajectory
系统对象™使用指定的路径点生成轨迹。当您创建System对象时,您可以选择指定每个路径点的到达时间、速度和方向。看到算法欲知详情。
从路径点生成轨迹:
创建
waypointTrajectory
对象并设置其属性。像调用函数一样调用该对象。
有关系统对象如何工作的详细信息,请参见什么是系统对象?.
创建
描述
返回一个System对象,轨迹
= waypointTrajectory轨迹
,它会根据默认的固定路径点生成一个轨迹。
指定了轨迹
= waypointTrajectory (路点
,TimeOfArrival
)路点
生成的轨迹穿过TimeOfArrival
在每个航路点。
设置每个创建参数或属性轨迹
= waypointTrajectory (路点
,TimeOfArrival
,名称,值
)的名字
到指定的价值
.未指定的属性和创建参数具有默认值或推断值。
例子:轨迹= waypointTrajectory([10,10,0;20,20,0;20,20,10],[0,0.5,10])
创建一个路径点轨迹系统对象,轨迹
,从航路点开始[10 10 0]
,然后穿过[0] 20日20日
0.5秒后(20、20、10)
10秒钟后。
创建参数
创建参数是在创建System对象期间设置的属性,以后不能修改。如果没有显式设置创建参数值,则会推断出属性值。
如果指定任何创建参数,则必须同时指定路点而且TimeOfArrival创建参数。你可以指定路点
而且TimeOfArrival
作为纯值参数或名-值对。
属性
除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放
功能解锁它们。
如果属性为可调,您可以随时更改其值。
有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计.
SampleRate
- - - - - -轨迹采样率(Hz)
One hundred.
(默认)|积极的标量
以Hz为单位的轨迹采样率,指定为正标量。
可调:是的
数据类型:双
SamplesPerFrame
- - - - - -每个输出帧的样本数
1
(默认)|正标量整数
每个输出帧的采样数,指定为正标量整数。
可调:是的
数据类型:双
路点
- - - - - -导航坐标系中的位置(m)
N3矩阵
导航坐标系统中的位置,以米为单位,指定为N3矩阵。矩阵的列分别对应于第一轴、第二轴和第三轴。矩阵的行,N,对应于单独的路点。
提示
要让轨迹在特定的路径点等待,只需在连续的两行中重复路径点坐标。
依赖关系
属性的有效值也必须设置TimeOfArrival财产。
数据类型:双
TimeOfArrival
- - - - - -每个路点的时间
N-非负递增数的元素列向量
到达每个航路点的时间,以秒为单位,用N-element列向量。的第一个元素TimeOfArrival
必须0
.样本的数量,N,必须与定义的样本(行)数相同路点
.
依赖关系
属性的有效值也必须设置路点财产。
数据类型:双
速度
- - - - - -导航坐标系中各航路点速度(m/s)
N3矩阵
导航坐标系中每个航路点的速度,以米每秒为单位,表示为N3矩阵。矩阵的列分别对应于第一轴、第二轴和第三轴。样本的数量,N,必须与定义的样本(行)数相同路点
.
如果速度被指定为非零值,物体自动计算轨迹的过程。如果速度被指定为零,物体从相邻的路径点推断出轨迹的轨迹。
依赖关系
属性的有效值也必须设置路点而且TimeOfArrival属性。
数据类型:双
课程
- - - - - -水平运动方向(度)
N-元实向量
移动的水平方向,用N-element以度为单位的实向量。样本的数量,N,必须与定义的样本(行)数相同路点
.如果既不速度
也不课程
指定,则从路径点推断航向。
依赖关系
要设置此属性,请使用速度属性不能在对象创建中指定。
数据类型:双
水平速度
- - - - - -各航路点地速(m/s)
N-元实向量
每个航路点的地面速度,指定为N-element实向量,单位为m/s。如果未指定属性,则从路径点推断该属性。样本的数量,N,必须与定义的样本(行)数相同路点
.
若要呈现向前运动,请指定正地面速度值。
若要呈现向后运动,请指定负地面速度值。
要渲染反向运动,将正地速值和负地速值用零地速值分开。
依赖关系
要设置此属性,请使用速度属性不能在对象创建时指定。
数据类型:双
ClimbRate
- - - - - -各航路点爬升率(m/s)
N-元实向量
每个航路点的爬升率,指定为N-element以度为单位的实向量。样本的数量,N,必须与定义的样本(行)数相同路点
.如果既不速度
也不课程
,则从路径点推断爬升率。
依赖关系
要设置此属性,请使用速度属性不能在对象创建时指定。
数据类型:双
取向
- - - - - -每个路点的定位
N-元四元数列向量|3-by-3-by -N实数数组
每个航路点的方向,指定为N元四元数
列向量或3 × 3 × -N实数数组。每一个四元数
一定要有一个规范的1
.每个3 × 3旋转矩阵必须是标准正交矩阵。四元数或旋转矩阵的个数,N,必须与定义的样本(行)数相同路点
.
如果取向
是由四元数指定的,底层类必须是双
.
依赖关系
属性的有效值也必须设置路点而且TimeOfArrival属性。
数据类型:双
AutoPitch
- - - - - -将俯仰角与运动方向对齐
假
(默认)|真正的
AutoBank
- - - - - -调整滚转角度以抵消向心力
假
(默认)|真正的
ReferenceFrame
- - - - - -轨迹参考系
NED的
(默认)|“ENU表示”
轨迹的参考系,指定为NED的
(North-East-Down)或“ENU表示”
(East-North-Up)。
使用
输出参数
位置
-在局部导航坐标系中的位置(m)
米3矩阵
取向
-在局部导航坐标系中定位
米-元素四元数列向量| 3乘3乘-米真正的数组
在本地导航坐标系中的方向,返回为米1四元数
列向量或者3 × 3 ×米真正的数组。
每个四元数或3乘3旋转矩阵是从局部导航坐标系到当前体坐标系的一帧旋转。
米由SamplesPerFrame财产。
数据类型:双
速度
-局部导航坐标系速度(m/s)
米3矩阵
加速度
-局部导航坐标系加速度(m/s)2)
米3矩阵
angularVelocity
-局部导航坐标系中的角速度(rad/s)
米3矩阵
对象的功能
要使用对象函数,请将System对象指定为第一个输入参数。例如,释放system对象的系统资源obj
,使用这种语法:
发行版(obj)
特定于waypointTrajectory
waypointInfo |
获取路点信息表 |
lookupPose |
获取一定时间的姿态信息 |
扰动 |
定义在物体上的扰动 |
扰乱 |
对物体施加扰动 |
例子
创建默认的waypointTrajectory
轨迹= waypoint弹道
轨迹= waypointTrajectory with properties: SampleRate: 100 SamplesPerFrame: 1 Waypoints: [2x3 double] TimeOfArrival: [2x1 double] velocity: [2x3 double] Course: [2x1 double] GroundSpeed: [2x1 double] ClimbRate: [2x1 double] Orientation: [2x1四元数]AutoPitch: 0 AutoBank: 0 ReferenceFrame: 'NED'
通过呼叫检查默认的路径点和到达时间waypointInfo
.默认情况下,路径点指示一秒钟的静止位置。
waypointInfo(轨迹)
ans =2×2表TimeOfArrival锚点 _____________ ___________ 0 0 0 0 1 0 0 0
创建方形轨迹
创建一个方形轨迹,并检查路径点约束、采样率和生成的轨迹之间的关系。
通过定义正方形的顶点来创建一个正方形轨迹。在每个路径点上定义指向运动方向的方向。指定1hz采样率并使用默认值SamplesPerFrame
为1。
路点= [0,0,0;...初始位置0 1 0;...1 1 0;...1 0 0;...0, 0, 0);最终位置Toa = 0:4;%到达时间方向=四元数([0,0,0;...45 0 0;...135年,0,0;...225年,0,0;...0, 0, 0),...“eulerd”,“ZYX股票”,“帧”);轨迹(路径点,...“TimeOfArrival”toa,...“定位”取向,...“SampleRate”1);
创建一个图形并绘制平台的初始位置。
图(1)情节(锚点(1,- 1),锚点(1、2)," b *’)标题(“位置”)轴([-1,2,-1,2]广场包含(“X”) ylabel (“Y”网格)在持有在
在循环中,步进轨迹以输出当前位置和当前方向。绘制当前位置并记录方向。使用暂停
模拟实时处理。
orientationLog = 0 (toa(end)*轨迹。SampleRate 1“四元数”);Count = 1;而~isDone(轨迹)[currentPosition,orientationLog(count)] =轨迹();currentPosition的情节(currentPosition (1), (2),“波”) pause(trajectory.SamplesPerFrame/trajectory.SampleRate) count = count + 1;结束持有从
将方向四元数转换为欧拉角以便于解释,然后绘制随时间变化的方向图。
图(2)eulerAngles = eulerd([orientation(1);orientationLog],“ZYX股票”,“帧”);情节(toa, eulerAngles (: 1),“柯”,...toa, eulerAngles (:, 2),“bd”,...toa, eulerAngles (:, 3),“r”。);标题(“随时间变化的取向”)传说('绕z轴旋转',“绕y轴旋转”,“绕x轴旋转”)包含(的时间(秒)) ylabel (的旋转(度)网格)在
到目前为止,轨迹对象只输出了在构造过程中指定的路径点。若要在路径点之间进行插值,请将采样速率增加到比路径点到达时间更快的速率。设置轨迹
采样率为100hz并调用重置
.
轨迹。SampleRate= 100; reset(trajectory)
创建一个图形并绘制平台的初始位置。在循环中,步进轨迹以输出当前位置和当前方向。绘制当前位置并记录方向。使用暂停
模拟实时处理。
图(1)情节(锚点(1,- 1),锚点(1、2)," b *’)标题(“位置”)轴([-1,2,-1,2]广场包含(“X”) ylabel (“Y”网格)在持有在orientationLog = 0 (toa(end)*轨迹。SampleRate 1“四元数”);Count = 1;而~isDone(轨迹)[currentPosition,orientationLog(count)] =轨迹();currentPosition的情节(currentPosition (1), (2),“波”) pause(trajectory.SamplesPerFrame/trajectory.SampleRate) count = count + 1;结束持有从
现在轨迹输出呈圆形。这是因为waypointTrajectory
系统对象™在插值时最大限度地减少加速度和角速度,从而在大多数情况下产生更平滑、更真实的运动。
将方向四元数转换为欧拉角以便于解释,然后绘制随时间变化的方向图。方向也被插入。
图(2)eulerAngles = eulerd([orientation(1);orientationLog],“ZYX股票”,“帧”);t = 0:1/trajectory.SampleRate:4;情节(t, eulerAngles (: 1),“柯”,...t, eulerAngles (:, 2),“bd”,...t, eulerAngles (:, 3),“r”。);标题(“随时间变化的取向”)传说('绕z轴旋转',“绕y轴旋转”,“绕x轴旋转”)包含(的时间(秒)) ylabel (的旋转(度)网格)在
的waypointTrajectory
算法通过插值路径点来创造一个平滑的轨迹。为了回到方形轨迹,提供更多的路径点,特别是在急剧变化的周围。要跟踪相应的时间、路径点和方向,请在单个矩阵中指定所有的轨迹信息。
%时间,路点,方向轨迹信息= [0,0,0,0,0,0,0,0;...初始位置0.1,0, 0.1,0, 0,0;...0.9,0, 0.9,0, 0,0;...1,0,1,0,45,0,0;...1.1, 0.1, 1,0,90,0,0;...1.9, 0.9, 1,0,90,0,0;...2,1,1,0,135,0,0;...2.1, 1,0.9, 0,180,0,0;...2.9, 1,0.1, 0,180,0,0;...3,1,0,0,225,0,0;...3.1, 0.9, 0,0,270,0,0;...3.9, 0.1, 0,0,270,0,0;...4,0,0,0, 0,270,0,0];最终位置轨迹= waypointTrajectory(轨迹信息(:,2:4),...“TimeOfArrival”trajectoryInfo (: 1),...“定位”四元数(trajectoryInfo(:, 5:结束),“eulerd”,“ZYX股票”,“帧”),...“SampleRate”, 100);
创建一个图形并绘制平台的初始位置。在循环中,步进轨迹以输出当前位置和当前方向。绘制当前位置并记录方向。使用暂停
模拟实时处理。
图(1)情节(锚点(1,- 1),锚点(1、2)," b *’)标题(“位置”)轴([-1,2,-1,2]广场包含(“X”) ylabel (“Y”网格)在持有在orientationLog = 0 (toa(end)*轨迹。SampleRate 1“四元数”);Count = 1;而~isDone(轨迹)[currentPosition,orientationLog(count)] =轨迹();currentPosition的情节(currentPosition (1), (2),“波”) pause(trajectory.SamplesPerFrame/trajectory.SampleRate) count = count+1;结束持有从
轨迹输出现在看起来更像正方形,特别是在带有路径点的顶点周围。
将方向四元数转换为欧拉角以便于解释,然后绘制随时间变化的方向图。
图(2)eulerAngles = eulerd([orientation(1);orientationLog],“ZYX股票”,“帧”);t = 0:1/trajectory.SampleRate:4;eulerAngles = plot(t,eulerAngles(:,1),“柯”,...t, eulerAngles (:, 2),“bd”,...t, eulerAngles (:, 3),“r”。);标题(“随时间变化的取向”)传说('绕z轴旋转',...“绕y轴旋转”,...“绕x轴旋转”,...“位置”,“西南”)包含(的时间(秒)) ylabel (的旋转(度)网格)在
创建弧线轨迹
方法创建圆弧轨迹waypointTrajectory
系统对象™。waypointTrajectory
创建通过指定路径点的路径,使加速度和角速度最小化。创建弧线轨迹后,将轨迹限制在预设的范围内。
创建弧形轨迹
定义一个由路径点、到达时间和弧线轨迹方向组成的约束矩阵。生成的轨迹在指定的时间以指定的方向通过路径点。的waypointTrajectory
系统对象需要使用四元数或旋转矩阵指定方向。属性时,将保存在约束矩阵中的欧拉角转换为四元数取向
财产。
到达,航路点,方向约束= [0,20,20,0,90,0,0;3、50、20、0、90、0、0;4,58,15.5, 0,162,0,0;5.5, 59.5,0,0 180,0,0];轨迹= waypointTrajectory(constraints(:,2:4),...“TimeOfArrival”约束(:1),...“定位”四元数(约束(:,前书5章7节)“eulerd”,“ZYX股票”,“帧”));
调用waypointInfo
在轨迹
返回包含指定约束的表。创建属性路点
,TimeOfArrival
,取向
是表中的变量。该表便于作图时标引。
tInfo = waypointInfo(轨迹)
tInfo = 4x3表TimeOfArrival Waypoints Orientation _____________ ____________________ ________________ 0 20 20 0 {1x1四元数}3 50 20 0 {1x1四元数}4 58 15.5 0 {1x1四元数}5.5 59.5 0 0 {1x1四元数}
轨迹对象在每次调用时输出当前位置、速度、加速度和角速度。调用轨迹
在循环中,画出随时间变化的位置。缓存其他输出。
图(1)情节(tInfo.Waypoints (1, 1), tInfo.Waypoints(1、2)," b *’)标题(“位置”xlabel([20,65,0,25])“北”) ylabel (“东”网格)在Daspect([11 1 1])保持在(tInfo.TimeOfArrival(end)*trajectory.SampleRate,1,“四元数”);vel = 0 (tInfo.TimeOfArrival(end)*trajectory.SampleRate,3);Acc = vel;angVel = vel;Count = 1;而~isDone(轨迹)[pos,orient(计数),vel(计数,:),acc(计数,:),angVel(计数,:)]=轨迹();情节(pos pos (1), (2),“波”) pause(trajectory.SamplesPerFrame/trajectory.SampleRate) count = count + 1;结束
检查方向,速度,加速度,角速度随时间的变化。的waypointTrajectory
系统对象™通过指定的限制来创建路径,以最小化加速度和角速度。
图(2)timeVector = 0:(1/trajectory.SampleRate): tininfo . timeofarrival (end);eulerAngles = eulerd([tininfo . orientation {1};orient],“ZYX股票”,“帧”);情节(timeVector eulerAngles (: 1),...timeVector eulerAngles (:, 2),...timeVector eulerAngles (:, 3));标题(“随时间变化的取向”)传说('绕z轴旋转',...“绕y轴旋转”,...“绕x轴旋转”,...“位置”,“西南”)包含(的时间(秒)) ylabel (的旋转(度)网格)在图(3)图(timeVector(2:结束),或者(:1),...timeVector(2:结束),或者(:,2),...timeVector(2:结束),或者(:,3));标题(“速度随时间”)传说(“北”,“东”,“下来”)包含(的时间(秒)) ylabel (“速度(米/秒)”网格)在图(4)情节(timeVector(2:结束)、acc (: 1),...timeVector(2:结束)、acc (:, 2),...timeVector(2:结束)、acc (:, 3));标题(“随时间加速”)传说(“北”,“东”,“下来”,“位置”,“西南”)包含(的时间(秒)) ylabel (“加速度(m / s ^ 2)”网格)在图(5)图(timeVector(2:结束),angVel (: 1),...timeVector(2:结束),angVel (:, 2),...timeVector(2:结束),angVel (:, 3));标题(角速度除以时间)传说(“北”,“东”,“下来”)包含(的时间(秒)) ylabel (角速度(rad/s)网格)在
将弧线轨迹限制在预设范围内
您可以指定额外的路径点来创建给定边界内的轨迹。为弧轨迹创建上界和下界。
图(1)xUpperBound =[(20:50)”,50 + 10 *罪(0:0.1:π/ 2);60 * 1(11日1)];yUpperBound =[20.5 . *的(31日1);10.5 + 10 * cos(0:0.1:π/ 2);(10:1:0)');xLowerBound =[(20:49)”;50 + 9 *罪(0:0.1:π/ 2);59 * 1(11日1)];yLowerBound =[19.5 . *的(30、1);10.5 + 9 * cos(0:0.1:π/ 2);(10:1:0)');情节(xUpperBound yUpperBound,“r”,“线宽”2);情节(xLowerBound yLowerBound,“r”,“线宽”, 2)
要在边界内创建轨迹,请添加额外的路径点。创建一个新的waypointTrajectory
系统对象™,然后在循环中调用它以绘制生成的轨迹。对象的方向、速度、加速度和角速度输出轨迹
对象。
%时间,路点,方向约束= [0,20,20,0,90,0,0;1.5, 35,20, 0,90,0,0;2.5 45,20,0, 90,0,0;3、50、20、0、90、0、0;3.3, 53,19.5, 0,108,0,0;3.6, 55.5,18.25,0, 126,0,0;3.9, 57.5,16, 0,144,0,0;4.2, 59,14,0, 162,0,0;4.5, 59.5,10,0 180,0,0;5,59.5,5,0 180,0,0; 5.5, 59.5,0,0 180,0,0]; trajectory = waypointTrajectory(constraints(:,2:4),...“TimeOfArrival”约束(:1),...“定位”四元数(约束(:,前书5章7节)“eulerd”,“ZYX股票”,“帧”));tInfo = waypointInfo(轨迹);图(1)情节(tInfo.Waypoints (1, 1), tInfo.Waypoints(1、2)," b *’) count = 1;而~isDone(轨迹)[pos,orient(计数),vel(计数,:),acc(计数,:),angVel(计数,:)]=轨迹();情节(pos pos (1), (2),“gd”) pause(trajectory.SamplesPerFrame/trajectory.SampleRate) count = count + 1;结束
生成的轨迹现在符合指定的边界。可视化生成的轨迹的方向、速度、加速度和角速度。
图(2)timeVector = 0:(1/trajectory.SampleRate): tininfo . timeofarrival (end);eulerAngles = eulerd(orient,“ZYX股票”,“帧”);情节(timeVector(2:结束),eulerAngles (: 1),...timeVector(2:结束),eulerAngles (:, 2),...timeVector(2:结束),eulerAngles (:, 3));标题(“随时间变化的取向”)传说('绕z轴旋转',...“绕y轴旋转”,...“绕x轴旋转”,...“位置”,“西南”)包含(的时间(秒)) ylabel (的旋转(度)网格)在图(3)图(timeVector(2:结束),或者(:1),...timeVector(2:结束),或者(:,2),...timeVector(2:结束),或者(:,3));标题(“速度随时间”)传说(“北”,“东”,“下来”)包含(的时间(秒)) ylabel (“速度(米/秒)”网格)在图(4)情节(timeVector(2:结束)、acc (: 1),...timeVector(2:结束)、acc (:, 2),...timeVector(2:结束)、acc (:, 3));标题(“随时间加速”)传说(“北”,“东”,“下来”)包含(的时间(秒)) ylabel (“加速度(m / s ^ 2)”网格)在图(5)图(timeVector(2:结束),angVel (: 1),...timeVector(2:结束),angVel (:, 2),...timeVector(2:结束),angVel (:, 3));标题(角速度除以时间)传说(“北”,“东”,“下来”)包含(的时间(秒)) ylabel (角速度(rad/s)网格)在
注意,虽然生成的轨迹现在符合空间边界,但轨迹的加速度和角速度有些不稳定。这是由于过度指定路径点。
生成跑道轨迹使用waypointTrajectory
考虑一个跑道轨迹,如下所示。
轨迹的四个角点分别为(0,0,0),(20,0,0),(20,5,0)和(0,5,0),单位为米。因此,指定循环的路径点为:
WPS = [0 0 0;20 0 0;20 50 0;0 5 0;0 0 0];
假设轨迹的速度为2m /s,则5个路径点的速度为:
Vels = [2 0 0;2 0 0;-2 0 0;-2 0 0;2 0 0];
5个航路点到达时间为:
T = cumsum([0 20/2 5*pi/2/2 20/2 5*pi/2/2]');
5个路径点处的轨迹方向为:
eulerAngs = [0 0 0;0 0 0;180 0 0;180 0 0;0 0 0];%角度。将欧拉角转换为四元数。quats =四元数“eulerd”,“ZYX股票”,“帧”);
为平滑轨迹线,指定采样率为100。
Fs = 100;
构建waypointTrajectory
.
traj = waypointTrajectory(wps,“SampleRate”fs,...“速度”或者,...“TimeOfArrival”t...“定位”、皮疹);
采样并绘制轨迹。
[pos, orient, vel, acc, angvel] = traj();I = 1;spf = traj.SamplesPerFrame;而~isDone(traj) idx = (i+1):(i+spf);[pos (idx:),东方(idx:)...Vel (idx,:), acc(idx,:), angvel(idx,:))] = traj();I = I +spf;结束
画出轨迹和指定的航路点。
情节(pos (: 1), pos (:, 2), wps (: 1), wps (:, 2),“- o”)包含(“X (m)”) ylabel (“Y (m)”) zlabel (“Z (m)”)({传奇“轨迹”,“锚点”})轴平等的
算法
的waypointTrajectory
系统对象定义了平滑地通过路径点的轨迹。轨迹通过插值连接路径点,该插值假设在轨迹参考系中表示的重力方向是常数。一般来说,你可以使用waypointTrajectory
模拟数百公里范围内的平台或车辆轨迹。
轨迹的平面路径x-y平面投影)由分段的环状曲线组成。两个连续路径点之间的曲线曲率随路径点之间的曲线长度线性变化。路径在每个航路点处的切线方向被选择以尽量减少曲率中的不连续,除非路径通过课程
属性或隐式地通过速度
财产。一旦路径建立,该对象使用三次赫米特插值来计算车辆在整个路径上的位置,作为时间和行进的平面距离的函数。
法向分量(z-分量)的轨迹随后被选择以满足形状保持分段样条(PCHIP),除非通过显式指定爬升率ClimbRate
属性的第三列速度
财产。根据所选的爬升率选择符号ReferenceFrame
:
当选择“ENU”参考系时,指定正爬升率将导致值的增加z.
当选择“NED”参考系时,指定正爬升率将导致值的递减z.
你可以通过两种主要方式来定义车辆的方向:
如果
取向
属性,则对象使用分段三次、四元数样条来计算沿路径的方向作为时间的函数。如果
取向
属性未指定,则车辆的偏航始终与路径对齐。滚动和俯仰然后由控制AutoBank
而且AutoPitch
属性值。AutoBank
AutoPitch
描述 假
假
车辆始终保持水平(俯仰和横滚为零)。这通常用于大型船舶。 假
真正的
车辆的俯仰与路径对齐,其滚转始终为零。这通常用于地面车辆。 真正的
假
车辆的俯仰和侧倾的选择是局部的z-轴与净加速度(包括重力)对齐。这通常用于旋翼飞行器。 真正的
真正的
车辆横摇的选择使其局部横断面与净加速度(包括重力)对齐。车辆俯仰与路径对齐。这通常用于两轮车辆和固定翼飞机。
扩展功能
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
版本历史
R2019b引入R2022b:指定路径点轨迹的等待和反向运动
属性指定等待和反向运动waypointTrajectory
系统对象。
方法时,只需在连续两行中重复航路点坐标,即可让轨迹在特定的航路点上等待
路点
财产。为了呈现反向运动,将正(向前)和负(向后)地速值在
水平速度
财产。
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。