用b样条曲线生成多项式轨迹
主要用到的语句是:
[q,qd,qdd,pp] = bsplinepolytraj(controlPoints,tInterval,tSamples)
生成一个落在由controlPoints定义的控制多边形中的分段三次b样条轨迹。
轨迹是在tInterval中给定的开始和结束时间之间均匀采样的。
该函数返回在输入时间样本tSamples处的位置、速度和加速度。
该函数还返回关于时间的多项式轨迹的分段多项式形式。
对于给定的一组二维xy控制点使用bsplinepolytraj函数。b样条使用这些控制点在多边形内创建一个轨迹。同时给出了路径点的时间点。
cpts = [1 4 4 3 -2 0; 0 1 2 4 3 1]; tpts = [0 5];
计算b样条轨迹:
该函数输出轨迹位置(q)、速度(qd)、加速度(qdd)、时间矢量(tvec)和使用梯形速度实现路径点的多项式系数(pp)
tvec = 0:0.01:5; [q, qd, qdd, pp] = bsplinepolytraj(cpts,tpts,tvec);
轨迹可视化:
figure plot(cpts(1,:),cpts(2,:),'xb-') hold all plot(q(1,:), q(2,:)) xlabel('X') ylabel('Y') hold off