主要内容

trapveltraj

生成具有梯形速度剖面的轨迹

描述

例子

qdqddtSamples) = trapveltraj (路点numSamples通过一组遵循梯形速度剖面的输入路径点生成轨迹。函数输出给定时间样本下的位置、速度和加速度,tSamples,根据指定的样本数量,numSamples.函数也返回分段多项式关于时间的多项式轨迹的形式。

qdqddtSamples) = trapveltraj (路点numSamples名称,值使用名称,值对参数。

例子

全部折叠

使用trapveltraj函数与给定的二维函数集xy锚点。

WPTS = [0 45 15 90 45;90 45 -45 15 90];

计算给定样本数(501)的轨迹。函数输出轨迹位置()、速度(qd)、加速度(qdd),时间向量(tvec)和多项式系数()的多项式,该多项式利用梯形速度来实现路径点。

(q, qd、qdd tvec, pp) = trapveltraj (wpt, 501);

画出轨迹x -而且y-位置和每个路径点之间的梯形速度剖面。

Subplot (2,1,1) plot(tvec, q) xlabel(“t”) ylabel (“职位”)传说(“X”“Y”) subplot(2,1,2) plot(tvec, qd)“t”) ylabel (“速度”)传说(“X”“Y”

图中包含2个轴对象。坐标轴对象1包含2个line类型的对象。这些对象表示X, y。坐标轴对象2包含2个line类型的对象。这些对象代表X, Y。

也可以在二维平面上验证实际位置。画出单独的行向量和路径点为x -而且y -的位置。

图绘制(q (1:), q (2:)“- b”wpt (:), wpt (2:)”或“

图中包含一个axes对象。坐标轴对象包含两个line类型的对象。

输入参数

全部折叠

为轨迹的路径点,指定为n——- - - - - -p矩阵,n轨迹的维度和p是路径点的数量。

例子:[1 4 4 3 -2 0;0 1 2 4 3 1]

数据类型:|

输出轨迹中的样本数,指定为正整数。

数据类型:|

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。

在R2021a之前,名称和值之间用逗号隔开,并括起来的名字在报价。

例子:“PeakVelocity”,5

请注意

由于梯形速度剖面的性质,您最多只能设置以下参数中的两个。

剖面段的峰值速度,指定为逗号分隔的对,由“PeakVelocity”标量,向量或矩阵。这个峰值速度是在梯形速度剖面中达到的最高速度。

一个标量值被应用到轨迹的所有元素和所有路径点之间。一个n-element vector应用于所有路径点之间轨迹的每个元素。一个n————(p-1)矩阵应用于每个路径点的轨迹的每个元素。

数据类型:|

速度曲线的加速度,用逗号分隔的对表示“加速”标量,向量或矩阵。这个加速度定义了恒定加速度从零速度到PeakVelocity价值。

一个标量值被应用到轨迹的所有元素和所有路径点之间。一个n-element vector应用于所有路径点之间轨迹的每个元素。一个n————(p-1)矩阵应用于每个路径点的轨迹的每个元素。

数据类型:|

的持续时间p-1轨迹段,指定为逗号分隔的对,由“EndTime”标量,向量或矩阵。

一个标量值被应用到轨迹的所有元素和所有路径点之间。一个n-element vector应用于所有路径点之间轨迹的每个元素。一个n————(p-1)矩阵应用于每个路径点的轨迹的每个元素。

数据类型:|

速度剖面加速阶段的持续时间,用逗号分隔的对表示“AccelTime”标量,向量或矩阵。

一个标量值被应用到轨迹的所有元素和所有路径点之间。一个n-element vector应用于所有路径点之间轨迹的每个元素。一个n————(p-1)矩阵应用于每个路径点的轨迹的每个元素。

数据类型:|

输出参数

全部折叠

轨迹在给定时间的位置采样tSamples,返回n——- - - - - -矩阵,n是轨迹的维度,和等于numSamples

数据类型:|

轨迹的速度在给定时间采样tSamples,返回n——- - - - - -矩阵,n是轨迹的维度,和等于numSamples

数据类型:|

轨迹在给定时间的加速度采样tSamples,返回n——- - - - - -矩阵,n是轨迹的维度,和等于numSamples

数据类型:|

轨迹的时间样本,返回为元向量。输出的位置,,速度,qd和加速度,qdd在这些时间间隔内采样。

例子:0:0.01:10

数据类型:|

分段多项式,作为结构的单元格数组返回,定义分段轨迹的每个部分的多项式。如果轨迹的所有元素共享相同的断点,则单元阵列是一个单一的分段多项式结构。否则,单元格数组为n元素,它们对应于每个不同的轨迹元素(维度)。每个结构都包含以下字段:

  • 形式“页”

  • 休息时间p分段轨迹变换形式时的-元素向量。p是路径点的数量。

  • 系数np1)——-订单求多项式的系数。np-1)是轨迹的维数乘以.每组nRows定义了描述每个变量轨迹的多项式的系数。

  • p1。中断次数减1。

  • 订单:多项式的次数+ 1。例如,三次多项式的阶数是4。

  • 昏暗的n.控制点位置的尺寸。

你可以建立你自己的分段多项式mkpp,或对多项式在指定时间用ppval

分段多项式,作为定义分段轨迹每一段的多项式的结构返回。你可以建立你自己的分段多项式mkpp,或对多项式在指定时间用ppval.该结构包含以下字段:

  • 形式“页”

  • 休息时间p分段轨迹变换形式时的-元素向量。p是路径点的数量。

  • 系数np1)——-订单求多项式的系数。np-1)是轨迹的维数乘以.每组nRows定义了描述每个变量轨迹的多项式的系数。

  • p1。中断次数减1。

  • 订单:多项式的次数+ 1。例如,三次多项式的阶数是4。

  • 昏暗的n.控制点位置的尺寸。

参考文献

[1]林奇,凯文M.和弗兰克C.帕克。现代机器人:力学、计划与控制.剑桥:剑桥大学出版社,2017。

[2] Spong, Mark W., Seth Hutchinson, M. Vidyasagar。机器人建模与控制.约翰·威利父子公司,2006年。

扩展功能

C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。

版本历史

介绍了R2019a

Baidu
map