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
系统对象。
方法时,只需在连续两行中重复航路点坐标,即可让轨迹在特定的航路点上等待
路点
财产。为了呈现反向运动,将正(向前)和负(向后)地速值在
水平速度
财产。
Abrir比如
Tiene una versión modificada de este ejemplo。¿Desea abrir este ejemplo con sus modificaciones?
MATLAB突击队
Ha hecho clic en unenlace que对应一个este commando de MATLAB:
弹射突击队introduciéndolo en la ventana de commandos de MATLAB。Los navegadores web no permission comandos de MATLAB。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。