PT与PVT路径规划
本文介绍位置-时间(PT)和位置-速度-时间(PVT)路径插值算法。下面包含了两种算法的优缺点。
PT和PVT算法将一系列的点-时间对写入到控制卡中,在每个采样创建一个实时的位置。PVT插值类型还需要附加每个点上的速度。一个点可以有多个维度。
在PT模式下:
PT算法计算出一个合适的速度曲线。PT算法保证控制卡的轨迹计算符合每一个已知的点和时间,达到这一条件所需的分段速度只需由该分段的位置和时间的差分就可以计算出来。
什么时候适用PT算法?
PT算法非常适用于密集点或低速。这是一个非常简单的算法,只需要很少的计算,运算速度很快。由上图可以看到,这里的速度跃变都是理想情况的突变,没有加速度的加入,因而如果点之间的距离太远,运动将很粗糙,存在较大的误差。最好将点间距保持在几个样本内。默认采样率为500微秒。
在PVT模式下:
在保证PT的同时,这个算法还保证在对应的时间,对应的位置达到对应的速度。这个计算源自标准运动学方程,具体原理不详述。
简单的PVT示例例如,可以使用三个位置、速度和时间点的列表生成梯形速度轮廓运动:
值得注意的是,PVT算法不关心非特征点的位置、速度和时间情况,而只保证特征点满足需要,因而点之间的轮廓(v-t图像)可能不是期望的,这与PVT路径的计算有关。
例如,考虑上面PVT轮廓(梯形)图中的简单三点梯形轮廓。如果点0和1处的速度太小,轮廓将拉伸以覆盖适当的距离;如果点0和1处的速度太大,轮廓将缩小以覆盖适当的距离。
什么时候适用PVT算法?
PVT算法非常适合于平滑和闭合路径控制。这些点可以间隔得非常近或非常远。对于复杂路径部分,点应紧密间隔。对于简单路径部分,点可以间隔很远。PVT几乎可以处理任何点列表,最困难的部分是确定每个点的适当速度。
测试用例:
使用三种类型的点时间序列(步进、锯齿形和八角形)来评估PT/PVT算法创建的路径。大多数高阶(多项式)插值算法比具有直线和锐角的截面更适合于描述路径的连续曲线截面。
当路径不太适合高阶多项式时,步长和Z字形路径测试确定算法的性能。八边形路径测试算法在给定圆周围少量(8)点的情况下对路径的圆形截面进行插值的效果。
先看步进模式:(左边为PT,右边为PVT,从上到下分别为位置,速度,加速度表示)
可以看到PT的路径是连续的,但速度、加速度都是瞬间的,因而要求两点在时间上非常接近或速度非常低。而PVT位置和速度是连续的,加速度不是。
再看锯齿形:
可以看到PT运动非常适合于由直线和锐角组成的路径。PVT路径往往比PT路径平滑得多,但需要在每个提供的点处提供每个轴的速度。这会增加应用程序的复杂性,因为每个点的速度通常难以确定。
最后是八角形:
同样,PT路径由简单的直线组成。径向误差是从插值路径到中心的距离与通过点的圆半径之间的差,最大误差在点之间的中间。而PVT路径则接近于一个圆了,这在PT中可能需要更大量的点才能近似。