我目前正在尝试在Octave中为机器人末端执行器创建3D轨迹。
末端效应器应该访问一组3D点X = [x_1 ,..., x_n]
,其中x_i = [xcoord_i; ycoord_i; zcoord_i]
。简单的线性插值会导致机器人运动不平稳。因此,我想生成一个 3D-spline 曲线,在我的参考点之间生成N个3D点。对于这种任务(documentation)存在Matlab实现。你能否告诉我如何在 Octave 中解决这类问题?
答案 0 :(得分:2)
您可以使用X(2,:)
在X(3,:)
,interp1
和t = 1:n;
ti = 0:0.01:n;
xi = interp1(t, X(1,:), ti, "spline");
yi = interp1(t, X(2,:), ti, "spline");
zi = interp1(t, X(3,:), ti, "spline");
Xi = [xi; yi; zi];
上进行三次一维样条插值,相关
https://www.gnu.org/software/octave/doc/interpreter/One_002ddimensional-Interpolation.html
这应该有效:
t
当然,您应该根据自己的需要调整ti
和prepareForSegue
。