0
点赞
收藏
分享

微信扫一扫

matlab机器人工具箱的使用(3)

绪风 2022-04-13 阅读 75
matlab

学习目标:

matlab机器人工具箱的使用(3)

学习内容:

1、 工具箱常用函数 (串联机械臂,示教,绘制,正运动学,逆运动学)

学习记录:

  • SerialLink
    串联机械臂的(串联机器人)
  • teach
    示教GUI
  • plot
    可以给定相应的参数,给定1*n的矩阵[]。n为机械臂所含关节的个数。
    例如:
    给[0,0,0,0,0,0]六自由度机械臂在初始位置。
    如果给定m*n的矩阵[]。那么就可以运行一个动画。
    plot中还有很多个性化设置。可以自己设置。
  • plot3d
    可以展示3维的机械臂模型。真实的机械臂模型。
  • fkine
    正向运动学求解函数。
q0=[pi/2 pi/2 0 0 0];
T=Five_dof.fkine(q0);
>> jixiebi_sd_5
>> q0=[pi/2 pi/2 0 0 0];
T=Five_dof.fkine(q0);
>> T
 

T = 
         0         1         0         0
        -1         0         0    -0.645
         0         0         1     1.181
         0         0         0         1
>> 

得到前两个关节是pi/2的情况下的变换矩阵。(其中jixiebi_sd_5为机械臂模型,代码放在文章最后。)

  • ikine
  • ikcon
  • ikine3
  • ikine6s
  • ikine_sym
  • ikinem
  • ikunc
    这些都是逆运动学。
%因为是5轴机械臂欠约束所以加一个mask。将不太重要的一个自由度置为0
%ikunc不需要考虑这些
q1=Five_dof.ikine(T,'mask',[1 1 1 1 1 0]);
q2=Five_dof.ikunc(T);
>> q1=Five_dof.ikine(T,'mask',[1 1 1 1 1 0]);
q2=Five_dof.ikunc(T);
>> q1

q1 =

    1.5708    1.5708   -0.0000    0.0000         0

>> q2

q2 =

    1.5708    1.5708    0.0000    0.0000   -0.0000

>> 

jixiebi_sd_5机械臂模型:

%standard DH
L(1)=Link('revolute','d',0.216,'a',0,'alpha',pi/2);
L(2)=Link('revolute','d',0,'a',0.5,'alpha',0,'offset',pi/2);
L(3)=Link('revolute','d',0,'a',sqrt(0.145^2+0.42746^2),'alpha',0,'offset',-atan(427.46/145));
L(4)=Link('revolute','d',0,'a',0,'alpha',pi/2,'offset',atan(427.46/145));
L(5)=Link('revolute','d',0.258,'a',0,'alpha',0);
Five_dof = SerialLink(L,'name','5-dof');
Five_dof.base=transl(0,0,0.28);
Five_dof.teach

举报

相关推荐

0 条评论