Robotic ToolBox逆解教程

机器人工具箱使用大致分为三步:
【Robotic ToolBox逆解教程】一、构件模型;二、规划轨迹及使用逆解函数;三、图形输出。

一、建立机器人数学模型(连杆机构),如下:

>> l1=Link([0 0 0 pi/2]);
l2=Link([0 0 0.4318 0]);
l3=Link([-pi/2 0.1505 0.02032 -pi/2]);
l4=Link([0 0.4318 0 pi/2]);
l5=Link([0 0 0 -pi/2]);
l6=Link([0 0 0 0]);
pm560=SerialLink([l1 l2 l3 l4 l5 l6]);
其中Link([θ d a α])里的θ表示两个连杆的夹角,d表示z方向的长度(z为选转轴),a为连杆的长度即x方向的长度(参考的坐标为杆首段坐标即前一杆尾端坐标。每个杆的两端放置一个笛卡尔坐标,通过坐标变换实现求解。)。α为杆两端两个坐标的夹角(主要指两个选择轴z的夹角)。
机器人的正解如下:

机器人逆解的如下:其中ikine6s与ikine函数解不一样。但是再正解后结果是一样的?。



二、下面为逆解过程:即从坐标点~~~各关节角度值的过程。

>>t=0:0.2:2;
>> T2=transl(0.4521,0,0.4318);
>> T=ctraj(T1,T2,length(t));
>> Q=pm560.ikine6s(T);
>> pm560.plot(Q)%显示机器人三维图动画过程。
>> tranimate(T)%动画演示坐标系自初始点运动到目标点的过程

三、演示如何画图:

>> s(1)=subplot(3,2,1); %一共分三行,每行两个,现在画出第一行第一个。
>> plot(t,Q(:,1))%画出对应时间t的关节角度变化,Q(:,1)表示一个关节角度值。
>> xlabel(s(1),'times')%为图表添加横坐标。
>> ylabel(s(1),'关节1')
>> s(2)=subplot(3,2,2);
plot(t,Q(:,2))
xlabel(s(2),'times')
ylabel(s(2),'关节2')
。。。。。。。
最终六个关节角度如下图:

    推荐阅读