工业机器人运动规划方法简述

简介: 工业机器人的运动点到点运动:不需要在笛卡尔空间规划末端运动轨迹,机器人各个关节运动不需要联动。轨迹跟踪运动:以点到点为基础,各个关节运动需要联动。关节空间运动规划目标:使关节空间轨迹平滑。3次多项式插值做如下假设:某个关节从t0t_{0} 时刻的位置q0q_{0} 运动到tft_{f} 时刻的位置qfq_{f} 。在t0t_{0} 和tft_{f}

工业机器人的运动

  1. 点到点运动:不需要在笛卡尔空间规划末端运动轨迹,机器人各个关节运动不需要联动。
  2. 轨迹跟踪运动:以点到点为基础,各个关节运动需要联动。

关节空间运动规划

目标:使关节空间轨迹平滑。

3次多项式插值

做如下假设:某个关节从t0 时刻的位置q0 运动到tf 时刻的位置qf 。在t0tf 时刻速度均为0。

q(0)=q0,q(tf)=qf,q˙(0)=0,q˙(tf)=0

利用3次多项式来拟合轨迹:
q(t)=a0+a1t+a2t2+a3t3q˙(t)=a1+2a2t+3a3t2

将边界条件代入即可解出参数 a1,,a3

过路径点的3次多项式插值

假设起点与终点的关节速度不为0时,利用3次多项式进行插值。解法同上,不再赘述。
需要注意,选择路径点的关节速度时,要考虑到保证每个路径点的加速度是连续的。

高阶多项式插值

当考虑到机器人关节空间起始点和目标点的加速度时,需采用高阶多项式插值。即修改边界条件为:

q(0)=q0q˙(0)=q˙0q¨(0)=q¨0q(tf)=qfq˙(tf)=q˙fq¨(tf)=q¨f

因此,6个边界条件对应高阶多项式的6个系数, a0,,a5

用抛物线过渡的线性插值

中间利用直线线性插值,两端利用抛物线过渡。利用直线段求出关节速度:

q˙tb=qhqbthtb

其中 th 为中间时刻, tb 为过渡时刻, qh 为中间位置。假设关节加速度 q¨ 已知,则
qb=q0+12q¨t2b

且我们知道:
q˙b=q¨tb

因此我们可以利用上述3式解出
tb=ff2q¨2t2f4q¨(qfq0)2q¨

为了保证直线存在,加速度不能太小。

过路径点的抛物线过渡线性插值

将邻近路径点用直线相连,路径点附近利用抛物线过渡。求取过渡时间时可以将路径分为第一路径、中间路径和最后路径三种情况分别讨论,原理同上,不再赘述。

B样条插值

首先简要介绍下B样条:
m 为样条的次数,在 m+1 个子区间以外的其他子区间上, B样条的取值均为0。 B样条函数可以采用递归的方式进行定义。假设对于自变量 xm+2 个点 xi,xi+1,,xi+m+1 构成 m+1 个子区间。首先定义 0 次B样条函数:

Ni,0(x)={1,0,x[xi.xi+1)x[xi,xi+1)

对于 m 次B样条:
Ni,m(x)=xxixi+mxiNi,m1(x)+xi+m1xxi+m1xi+1Ni+1,m1(x)

在区间 [x0,xk] 内的任意函数,可以表达为利用第 m 次B样条函数作为基函数的加权和:
f(x)=i=mkaiNi.m(x)

上式包含了 k+m+1 个参数 a 。在每个子区间上,最多为 m+1 个B样条函数的加权和。在进行曲线插值或拟合时,需要确定这 k+m+1 个参数。

有时候为了消除在非期望点的波动,可以利用相邻期望点的中间点作为控制点。

B样条的主要特点是在局部的修改不会引起样条形状的大范围变化。

笛卡尔空间运动规划

笛卡尔空间的路径规划,就是计算机器人在给定路径上各点处的位置与姿态。

位置规划

对于直线运动:

P(i)=P1+αi

其中 P 是位置, α 为步长。

对于圆弧运动:
假设圆弧由 P1,P2,P3 点构成,首先利用2平面的交点确定圆心位置,进而计算出半径。利用矢量相加一步步规划出 P1P3 每个中间点的位置。

姿态规划

假设机器人在起始位置的姿态为 R1 ,在目标位置的姿态为 R2 ,则机器人需要调整的姿态 R 为:

R=RT1R2

利用通用旋转变换求取等效转轴与转角,进而求取机器人第 i 步相对于初始姿态的调整量。

在笛卡尔空间中,将机器人的第 i 步的位置与姿态相结合,得到机器人第 i 步的位置与姿态矩阵:

T(i)=(RiR(i)0P(i)1)
相关文章
|
4月前
|
传感器 机器学习/深度学习 算法
利用STM32实现自平衡机器人功能与方法
利用STM32实现自平衡机器人功能与方法
34 0
|
10月前
|
机器人 Java
[java]飞书机器人签名校验GenSign方法
[java]飞书机器人签名校验GenSign方法
182 0
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
与生成模型相比,为何机器人研究还在用几年前的老方法?
与生成模型相比,为何机器人研究还在用几年前的老方法?
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
与生成模型相比,为何机器人研究还在用几年前的老方法?(2)
与生成模型相比,为何机器人研究还在用几年前的老方法?
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
与生成模型相比,为何机器人研究还在用几年前的老方法?(1)
与生成模型相比,为何机器人研究还在用几年前的老方法?
|
11月前
|
机器学习/深度学习 算法 机器人
CMU发表新型灵巧机器人算法,准确学习日常家具的操纵方法
CMU发表新型灵巧机器人算法,准确学习日常家具的操纵方法
|
机器人 API Python
Python 技术篇-20行代码实现微信机器人斗图功能实例演示!斗图啦官网API调用方法
Python 技术篇-20行代码实现微信机器人斗图功能实例演示!斗图啦官网API调用方法
485 0
Python 技术篇-20行代码实现微信机器人斗图功能实例演示!斗图啦官网API调用方法
|
算法 机器人 开发工具
机器人真·涨姿势了:比肩人类抓取能力,上海交大、非夕科技联合提出全新方法AnyGrasp
在近日召开的 ICRA (国际机器人与自动化会议)大会上,上海交大-非夕科技联合实验室展示了最新研究成果「AnyGrasp」(https://graspnet.net/anygrasp.html),第一次实现机器人对于任意场景的任意物体的通用高速抓取,在机械臂硬件构型、相机不作限制的情况下,让机器人拥有比肩人类抓取能力的可能。
610 0
机器人真·涨姿势了:比肩人类抓取能力,上海交大、非夕科技联合提出全新方法AnyGrasp
|
机器人
阿里云RPA(机器人流程自动化)干货系列之五:业务流程梳理方法
本文是阿里云RPA(机器人流程自动化)干货系列之五,详细介绍了在开发阿里云RPA机器人应用之前对客户的业务流程进行详细、全面地梳理,并识别出流程中的关键点和换位思考点,为后续应用开发打好基础。
10566 1

热门文章

最新文章