机器人操作臂正向运动学

目录

一、机器人连杆参数和关节变量

1.连杆的描述参数

2.中间连杆连接的描述参数

3.D-H参数

二、正向运动学方程求解

1.连杆坐标系

2.用连杆坐标系规定连杆参数

3.连杆坐标系建立步骤:

 4.连杆变换


一、机器人连杆参数和关节变量

在轨迹规划时,人们感兴趣的是操纵臂末端执行器相对固定坐标系的空间位置和姿态描述,这可以用4X4齐次变换矩阵来描述。正向运动学就是根据关节变量来求解末端执行器相对于原点坐标系的位姿。因为机器人由多个构建通过运动关节连接而成,所以要建立运动学方程,首先要建立连杆自身的参数,以及描述相邻两杆连接关系的参数

1.连杆的描述参数

为了运动学建模的目的,一个连杆需要用两个参数来确定,这两个参数规定了连杆上空间两条轴线的相对位置,即两条轴线之间的距离以及旋转角度

我们定义:

连杆长度为 a_{i-1} ,表示连接两条轴线的公垂线长度

扭转角为 \alpha _{i-1} ,表示轴线 i-1 到轴线 i 绕公垂线旋转的角度

2.中间连杆连接的描述参数

相邻两个连杆共用一条轴线,并且相邻两个连杆的公垂线都垂直于该轴线。因此描述相邻两个连杆连接的参数便是描述相邻连杆两个公垂线相对于该公垂线的位置姿态关系

我们定义:

两条连杆之间的偏置为 d_i ,表示两条公垂线沿共用轴线 i 的距离

两条连杆之间的关节角为 \theta_i ,表示连杆 i-1 公垂线到连杆 i 公垂线旋转的角度

对于运动链两端的首末连杆,由于其仅连接一条轴线,所以按习惯约定:

a_0=a_n=0\;,\; \alpha_0=\alpha_n=0^{\circ}

d_1d_n以及\theta_1\theta_n的确定方法如下:

 此约定对关节n同样适用,并称\theta_id_i关节变量

3.D-H参数

该描述方法是由名字首字母分别为D和H的两个学者提出来的,并把采用这四种参数的机器人分析方法称为D-H方法。

二、正向运动学方程求解

1.连杆坐标系

中间连杆为除去首末连杆之外的所有连杆,中间连杆坐标系规定:

z_{i-1} :与关节轴线 i-1 共线,指向任意

x_{i-1} :与连杆 i-1 和连杆 i 的公垂线重合,指向从关节 i-1 到关节 i

y_{i-1} :右手法则确定,即y_{i-1}=z_{i-1}\times x_ {i-1}

对于首末连杆的坐标系可以任意规定,但我们总是选择Z_0轴沿关节轴1的方向,关节轴1的关节变量为零时,使坐标系{0}和{1}重合。

类似地,在选取X_n的方向时,应使在关节n的关节变量为零时,X_nX_{n-1}尽可能重合或平行。

 这种选取方法是为了使尽可能多的参数为零,简化运动学方程

2.用连杆坐标系规定连杆参数

根据上文建立的连杆坐标系,我们可以在坐标系中表示机器人的D-H参数:

\alpha _{i-1} = 从z_{i-1}到 z_i 绕 x_{i-1}旋转的角度

a_{i-1} =  从z_{i-1}到 z_i 沿 x_{i-1} 测量的距离

 d_i = 从 到 x_i 沿 z_i 测量的距离

 \theta_i = 从x_{i-1} 到 x_i 绕 z_i 旋转的角度

3.连杆坐标系建立步骤:

(1)画出各个关节轴线

(2)坐标系{i-1}的原点为相邻两轴线 i-1 和 i 的公垂线 a_{i-1} 与轴线 i-1 的交点或两轴线的交点

(3)令Z_{i-1}轴与关节 i-1 轴重合

(4)令X_{i-1}轴和公垂线a_{i-1} 轴重合,若Z_{i-1}Z_i相交,则规定X_{i-1}为两条直线确定平面的法线

(5)按右手法则确定Y_{i-1}

(6)确定坐标系{0},当第一个关节变量为零时,{0}与{1}重合

 4.连杆变换

相邻两连杆的变换可以看成是坐标系{i}相对于{i-1}经以下四个子变换得到的:

(1)绕x_{i-1}轴转\alpha _{i-1}

(2)沿x_{i-1}轴移动a_{i-1}距离

(3)绕 z_i 轴转 \theta_i 角

(4)沿 z_i 轴移动 d_i 距离

 因为这些子变换都是相对于运动坐标系描述的,应采用欧拉角的计算方法,即按照从左往右的顺序依次相乘各旋转矩阵,可以得到连杆变换矩阵^{i-1}_iT

 \begin{aligned} &{ }^{i-1}_i T=\operatorname{Rot}\left(x, \alpha_{i-1}\right) \operatorname{Trans}\left(x, a_{i-1}\right) \operatorname{Rot}\left(z, \theta_{i}\right) \operatorname{Trans}\left(z, d_{i}\right) \\ &=\operatorname{Screw}\left(x, \alpha_{i-1}, a_{i-1}\right) \operatorname{Screw}\left(z, \theta_{i}, d_{i}\right)\\ &=\left[\begin{array}{cccc} c \theta_{t} & -s \theta_{t} & 0 & a_{t-1} \\ s \theta_{t} c \alpha_{t-1} & c \theta_{t} c \alpha_{t-1} & -s \alpha_{t-1} & -d_{t} s \alpha_{t-1} \\ s \theta_{t} s \alpha_{t-1} & c \theta_{t} s \alpha_{t-1} & c \alpha_{t-1} & d_{t} c \alpha_{t-1} \\ 0 & 0 & 0 & 1 \end{array}\right] \end{aligned}

 在连杆变换矩阵中,只存在一个变量,即关节变量,对于转动关节为\theta_i,对于移动关节为d_i,统一写为 q_i

各相邻连杆的变换矩阵相乘,就可以得到机器人末端坐标系相对于基座的齐次变换矩阵^0_nT

{ }_{n}^{0} T={ }_{1}^{0} T_{2}^{1} T \cdots{ }_{n}^{n-1} T

\begin{aligned} &{ }_{n}^{0} T\left(q_{1}, q_{2}, \cdots q_{n}\right)={ }_{1}^{0} T\left(q_{1}{ }_{2}^{1} T\left(q_{2}\right) \cdots{ }_{n}^{n-1} T\left(q_{n}\right)\right. \\ &{ }_{n}^{0} T=\left[\begin{array}{cc} { }_{n}^{0} R & { }_{n}^{0} p \\ 0 & 1 \end{array}\right]={ }_{1}^{0} T\left(q_{1}\right){ }_{2}^{1} T\left(q_{2}\right) \cdots{ }_{n}^{n-1} T\left(q_{n}\right) \end{aligned}

 上式即为正向运动学方程,表示末端连杆的位姿与关节变量之间的联系。

下面我们以PUMA560机器人为例说明正向运动学的求解过程。

 首先根据连杆坐标系建立步骤建立连杆坐标系:

然后以表格形式列出各连杆D-H参数:

 将D-H参数代入^{i-1}_iT通式中,可以得到:

将相邻连杆变换矩阵依次相乘,便得到手臂变换矩阵^6_0T

 其中:

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

葱花   

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值