👨🏫🥰🥳需要机械臂相关资源的同学可以在评论区中留言哦🤖😽🦄
指南目录📖:
🦾🌏🪐以下为正文🦾🌏🪐

第一步,我们使用下列语句👇实现五次多项式插值(使用前需安装The Robotics Toolbox for MATLAB,可直接在官网下载)
M=50;
[q, qd, qdd]=jtraj(q_0,q_final,M); #没有指定机械臂起点速度以及终点速度,默认为0
#若需要指定起点速度以及终点速度,上式改为[q, qd, qdd]=jtraj(q_0,q_final,M,v_0,v_final);
#v_0与v_final分别为起点速度以及终点速度
#q_0,q_final,M分别为起始点、终点以及插值的步数
设机械臂的自由度为N=6,所插多项式曲线表示关节空间轨迹q,关节坐标从q_0 (1xN)到q_final (1xN)的变化。该五次多项式被用于默认速度和加速度为零的边界条件,即在起点和终点处机械臂的速度与加速度均为0。
式中,q,qd与qdd均为M×N的数组,每个时间步长一行,每个关节一列。以本文为例,工作区中三者显示为:
第二步,使用下方语句得到末端执行器的位姿
T=robot2.fkine(q);
其中,T的类型为SE3,无法直接在空间中描绘
使用下方语句转换
nT=T.T;
nt可看作50个插值点的齐次变换矩阵
第三步,使用下方语句在空间中描点
plot3(squeeze(nT(1,4,:)),squeeze(nT(2,4,:)),squeeze(nT(3,4,:)));
其中squeeze()的作用是删除长度为 1 的维度,如第一个squeeze(nT(1,4,:))的作用是将nT(1,4,:)从1×1×50的数组变为1×50的数组。
最终可以得到机械臂在空间中的运动轨迹如下图所示:
最后,使用简单的plot函数得到机械臂位置、速度与加速度的图像
