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

本文介绍了如何使用MATLAB机器人工具箱进行正运动学计算,详细解析了从关节变量到末端位姿的转换过程,包括位置和姿态描述、旋转变换矩阵、平移坐标变换及总齐次变换矩阵的概念。通过代码示例展示了如何利用工具箱求解机器人末端坐标系相对于基坐标系的变换矩阵。

学习目标:

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

学习内容:

1、运动学正解

学习记录:

机器人正运动学:给定各关节变量,就可以计算机器人末端的位姿。也就是说:当给定机器人所有关节和机械臂参数后,可以计算出各个相邻关节之间的位姿矩阵,将矩阵连乘得到机械臂末端相对于基坐标系的变换矩阵。

1.位置描述。
在直角坐标系A中,空间任意一点P的位置表示为:
在这里插入图片描述
2.姿态描述。
坐标系B相对于坐标系A的方位:
在这里插入图片描述

3.旋转变换:
在这里插入图片描述

绕x轴旋转的变换矩阵为:
在这里插入图片描述
绕y轴旋转的变换矩阵为:
在这里插入图片描述
绕z轴旋转的变换矩阵为:
在这里插入图片描述
4.平移坐标变换
在这里插入图片描述

5.总齐次变换矩阵

因为所有的运动都是对于当前坐标系所以都是右乘。得到
在这里插入图片描述

在这里插入图片描述
则机械臂末端的坐标系到机器人基座坐标系的总齐次变换矩阵为:
在这里插入图片描述
代码实现用机器人工具箱:

%standard DH 课本6R
L(1)=Link('revolute','d',0.504,'a',0.17,'alpha',pi/2);
L(2)=Link('revolute','d',0,'a',0.78,'alpha',0,'offset',pi/2);
L(3)=Link('revolute','d',0,'a',0.14,'alpha',pi/2);
L(4)=Link('revolute','d',1.06,'a',0,'alpha',pi/2,'offset',pi);
L(5)=Link('revolute','d',0,'a',0,'alpha',pi/2,'offset',pi);
L(6)=Link('revolute','d',0.125,'a',0,'alpha',0);
Six_dof = SerialLink(L,'name','6/-dof');
%Five_dof.base=transl(0,0,0.28);

%关节限制
L(1).qlim=[-180,180]/180*pi;
L(2).qlim=[-145,65]/180*pi;
L(3).qlim=[-65,220]/180*pi;
L(4).qlim=[-180,180]/180*pi;
L(5).qlim=[-135,135]/180*pi;
L(6).qlim=[-360,360]/180*pi;

Six_dof.teach

%正运动学求解
theta_0=[0,0,0,pi,pi,0];        %每个关节的角度
theta_1=[0,-pi/4,0,pi,pi,0];    %每个关节的角度
T0=Six_dof.fkine(theta_0);      %正运动学求解theta_0的总变换矩阵T0
T1=Six_dof.fkine(theta_1);      %正运动学求解theta_1的总变换矩阵T1
%看theta_0时的位姿
figure (1)
set(gca,'View',[50,20]);      %设定视野方向角和俯仰角
Six_dof.plot(theta_0);
hold on
%看theta_1时的位姿
figure (3)
set(gca,'View',[50,20]);     %设定视野方向角和俯仰角
Six_dof.plot(theta_1);
 

可以得到位姿的变换矩阵:

>> T0
 

T0 = 
         0         0        -1     1.105
         0         1         0         0
         1         0         0     1.424
         0         0         0         1
>> T1
 

T1 = 
    0.7071         0   -0.7071     1.482
         0         1         0         0
    0.7071         0    0.7071    0.4934
         0         0         0         1
>> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值