zoukankan      html  css  js  c++  java
  • 【机械臂】机械臂快速入门【转】

    https://blog.csdn.net/m0_37140588/article/details/79760789

    1.处理器

      (确定每个关节应该动多少,多远)==>控制器(发信号使得驱动器到某个关节的指定角度)

        2.六自由度解释

        除了空间内的三个坐标数据(确定位置xyz),还需要确定所选点的姿态,所以需要六个自由度才能达到空间的任意位置,例如五自由度,能绕三个轴转动但只能沿着xy轴平移,5自由度可以指定姿态但只能沿着xy轴,不能沿着z轴给部件定位。而7自由度系统无唯一解

        3.坐标

      机器人的构型通常由于其坐标系来确定,3P,PRP,P2R是因为其关节类型不同,RSP转动、球型、滑动型

    参考坐标系只是说明了三种不同参考坐标系:

        一全局参考坐标系(机械臂同时协调运动)

        二是关节参考坐标系(各个坐标独立运动)

        三是工具参考坐标系,随着工具方向的不同两次沿着工具坐标系的n轴移动相同距离,在全局空间内也是不同的

        4.示教模式

      机器人各个关节随示教杆运动,到达期望姿态,位姿信息送入控制器。示教过程中,控制器控制各关节达到到相同位姿,常用于点对点控制,只能保证到达示教点。连续示教则是动作连续采样

        5.工作空间

      机器人能达到的点的集合,和机器人构型、连杆以及腕关节有关,不同构型的机械臂正逆运动学不同

        6.机器人位置运动学

      利用矩阵建立物体、位置、姿态及运动的表示方法,然后研究直角坐标型,圆柱形以及球型等不同机器人的正逆运动学,最后用D-H法推到机器人的正逆运动学方程。     没有确定末端执行器长度的机械手型机器人(假设末端是一个平板面),只能根据端面的位姿来计算关节值。断面的位姿可能与用户感受到的位姿有可能不同。

        7.机器人的矩阵表示

      需要知道物体坐标原点在参考坐标系中的位置,以及物体坐标系关于这三个参考坐标轴的姿态,因此总共需要6条独立信息来描述。

        8.齐次变换矩阵

      主要是因为许多不同顺序的矩阵乘在一起得到机器人运动学方程,所以需要方阵,

    如果既要表示姿态又要表示位置,在矩阵中加入比例因子使得成为4*4方阵,指标是姿态去掉比例因子得到3*3方阵。这种形式的称之为齐次变换矩阵。

        9.复合变换

      然后学习纯绕轴运动(相对于参考坐标系),主要是乘以角度不同的绕轴,XYZ(左乘 在原来相对于参考坐标系左边,然后来了在变换矩阵的左边乘)

    相对于旋转坐标系, (右乘 在原来相对于参考坐标系左边,然后来了在变换矩阵的右边乘)

        10。变换矩阵的逆

      如果矩阵可逆,那么它的逆矩阵和它的伴随矩阵之间只差一个系数

      矩阵行列式的值,去掉一行,取出某个元素,将原始矩阵去除该元素所在的行和列,得到新的矩阵,使该元素与新矩阵的行列式相乘就,最后将一行的所有乘积相加即可。

    伴随矩阵对于三阶矩阵
    a11 a12 a13
    a21 a22 a23
    a31 a32 a33

    首先求出 各代数余子式
    A11 = (-1)^2 * (a22 * a33 - a23 * a32) = a22 * a33 - a23 * a32
    A12 = (-1)^3 * (a21 * a33 - a23 * a31) = -a21 * a33 + a23 * a31
    A13 = (-1)^4 * (a21 * a32 - a22 * a31) = a21 * a32 - a22 * a31
    A21 = (-1)^3 * (a12 * a33 - a13 * a32) = -a12 * a33 + a13 * a32
    ……
    A33 = (-1)^6 * (a11 * a22 - a12 * a21) = a11 * a22 - a12 * a21

    然后伴随矩阵就是
    A11 A12 A13
    A21 A22 A23

    A31 A32 A33

      变换矩阵的逆的算法①计算矩阵行列式②转置③求转置后的伴随矩阵④伴随矩阵除以行列式

        11. 3*3和4*4的区别

    3*3只包含位置,计算矩阵的逆就是将矩阵转置,只有旋转矩阵才是酉矩

    4*4求逆可分为两个部分矩阵的旋转部分式酉矩阵,可以转置;未知部分式向量与旋转坐标系的点积

        12.机器人的正逆运动学

    已知连杆,关节角。需要在物体上固连一个坐标系,然后描述该坐标系的原点位置和三个轴的姿态,总共需要6个自由度或者六条信息来完整地定义该物体的位姿。

        13.不同构型的关节的求解

    直角坐标,圆柱坐标,球型坐标,不同构型的求解方法不尽相同,不过直角坐标系需要对位姿带来的旋转做角度解耦合,圆柱坐标系也需要解耦合,不过有绕a轴的旋转角,仍然平行于z轴,所以求出的角为累加上a轴旋转角之后的

    14.位置*姿态 与D-H模型

    位置*姿态建立模型更快,但是对于不同构型的机械臂,构建模型不同。

    D-H模型与机器人结构顺序,复杂程度无关,微分运动学,雅可比分析,动力学分析以及力分析都是基于D-H表示法所获得的结果。

    15 D-H

    每个关节指定一个本地参考坐标系,指定一个z轴和x轴。z轴在关节处,而x轴的 选取通常在两个关节的公垂线里,(关节不一定平行或者相交)如果定义an表示Zn-1与Zn之间的公垂线,则定义Xn的方向为沿an的方向。关节n处的z轴编号为n-1(关节z轴平行)挑选与前一关节的公垂线共线的一条公垂线(关节z轴相交)选取两条z轴的叉积方向(Xn+1为Zn叉乘Zn+1),向量叉积如图所示,解释向量a,b在同一个平面内


    对于旋转关节,绕z轴旋转的旋转角θ是关节变量;对于滑动关节,沿z轴的连杆长度d是关节变量。--其中θ为绕着z轴的旋转角度, d表示相邻公垂线之间的距离(关节偏移量)a表示公垂线的长度(连杆长度)α表示相邻两个z轴之间的角度(扭角)

    在《机器人学导论》P58有这样一段话,描述了四个变量感觉不错



    注意:坐标系0是固定不动的,机器人都是相对它而运动的。

    D-H模型超好的一个视频(此视频需要翻墙)

    http://blog.cavedu.com/2009/11/14/%e5%bd%b1%e7%89%87-%e5%b0%87%e6%a9%9f%e5%99%a8%e6%89%8b%e8%87%82d-h%e8%bd%89%e6%8f%9b%e7%9f%a9%e9%99%a3%e5%8f%83%e6%95%b8%e8%a7%a3%e9%87%8b%e5%be%88%e6%b8%85%e6%a5%9a%e7%9a%84%e5%bd%b1%e7%89%87/

    中英文翻译如下(字幕中)

    D-H parameters define the motion of  actuators connected  by rigid links,
    z axis points along of rotation,
    or axis of translation for a prismatic joint,
    x axis for base frame is a free choice,
    constrained for subsequent joints,
    y axis is now constrained to complete right-handed coordinate frame
    now let us add the next joint,
    again, the z axis is defined by the axis of actuation,
    D-H parameters are derived from common normal between consecutive z axes,
    new x axis is colinear with common normal, with origin at intersection with new z,
    notice the origin is not at the center of the actuator.the origin may be in "open sapce",
    with these joint axes,four parameters specify the joint-to-joint transformation :d,r,θ,α
    d is the depth along the previous joint's z axis
    θ is the angle about the previous z to align its x with the new origin
    r is the distance along the rotated x axis
    alternatively,radius of rotation about previous z
    finally,α rotates about the new x axis to put z in its desired orientation
    special case :parallel  z axes
    parallel z axes have an infinite number of common normals,thus d is a free parameter
    choose any convenient d,other parameters determied as before

    now you know how to lay out D-H  parameters

    翻译;D-H参数定义了由刚性连杆连接的执行机构的运动,
    沿着旋转的z轴点,
    或棱镜接头的平移轴线,
    基准框架的x轴是一个自由选择,
    受后续关节限制,
    y轴现在被限制为完整的右手坐标系
    现在让我们添加下一个联合,
    再次,z轴由致动轴限定,
    D-H参数是从连续z轴之间的公共法线导出的,
    新的x轴与共同的法线共线,原点与新的z相交,
    请注意,原点不在执行机构的中心。原点可能处于“开放式”状态,
    利用这些关节轴,四个参数指定关节到关节的变换:d,r,θ,α
    d是沿着前一个关节的z轴的深度
    θ是关于前一个z的角度,以便将x与新原点对齐
    r是沿着旋转的x轴的距离
    或者,关于前一个z的旋转半径
    最后,α围绕新的x轴旋转以将z置于其期望的方向
    特殊情况:平行z轴
    平行z轴具有无限数量的常用法线,因此d是一个自由参数
    选择任何方便的d,其他参数与以前一样确定
    现在你知道如何布置D-H参数

        16.退化问题

    (1)到达物理空间极限不能进一步运动

    (2)两个相似关节共线

        17.灵巧

    不灵巧区域:接近工作空间极限时,机械臂能达到定位在期望点上,却不能达到期望的位姿。

        18.雅可比矩阵的计算

    位置的求导,将建立关节运动与手运动之间的联系。

        19.运动学和力学

    只要确定机器人关节变量就能根据其运动方程确定机器人的位置,或者已知机器人的期望位姿就能确定相应关节变量和速度。

        20.运动规划、路径规划、轨迹规划的联系与区别?

    运动规划由路径规划和轨迹规划(时间)组成,连接起点位置和终点位置的序列点或曲线称之为路径,构成路径的策略称之为路径规划。

    轨迹规划与何时达到路径中的每个部分有关,强调时间性。从一个点到一个点,路径是一样的,而经过路径的每个部分的快慢不同,轨迹也就不同。相当于路径规划后,需要加入时间量使得完成轨迹规划。

      路径是机器人位姿的一定序列,而不考虑机器人位姿参数随时间变化的因素。路径规划(一般指位置规划)是找到一系列要经过的路径点,路径点是空间中的位置或关节角度,而轨迹规划是赋予路径时间信息。

      运动规划(又称运动插补)是在给定的路径端点之间插入用于控制的中间点序列从而实现沿给定的平稳运动。

      运动控制则是主要解决如何控制目标系统准确跟踪指令轨迹的问题。即对于给定的指令轨迹,选择适合的控制算法和参数,产生输出,控制目标实时,准确地跟踪给定的指令轨迹。

      Att:路径规划的目标是使路径与障碍物的距离尽量远同时路径的长度尽量短(问:无视觉融入,如何做到离障碍物远);轨迹规划的目标主要是机器人关节空间移动中使得机器人的运行时间尽可能短,或者能量尽可能小。轨迹规划在路径规划的基础上加入时间序列信息,对机器人执行任务时的速度与加速度进行规划,以满足光滑性和速度可控性等要求

      全局路径规划将全局目标分解为局部目标,再由局部规划实现局部目标,方法有可视图法、环境分割法(自由空间法、栅格法)等。局部路径规划主要解决机器人定位和路径跟踪问题,方法有人工势场法、模糊逻辑法等。

             21.关节空间与直角坐标空间的描述  

      考虑一个多自由度机器人从空间位置A点移项B项,利用机器人逆运动学方程,可以计算车机器人达到新位置时关节的总位移,机器人控制器利用所计算的关节值驱动机器人达到新的关节值,从而使机器人手臂运动到新的位置。采用关节量来描述机器人的运动称为关节空间描述。这种情形下,最终将机器人移动到期望位置,但机器人在A点B点之间的位置不可预知。

      假设在AB之间画一个直线,希望机器人沿直线运动,需将直线的点分为许多小段,求得每个中间点,在每个中间点求解逆运动学方程,计算一系列关节量,然后由控制器驱动关节到达下一个目标点

            22.关节空间与直角坐标空间的问题

    直角坐标空间,一 计算量大 ;二 难以确保不存在奇异点(穿过自身,轨迹在工作空间之外),关节值发生突变;

    原因:无法事先得到其位姿

      解决方法:可以指定机器人必须通过的中间点来避开障碍物和其他奇异点(示教机器人可以,固定动作也可以)

            23.自由度关节机器人非归一化和归一化运动

      非归一化:从A到B每个关节都是以最大角速度运行,这样其两臂到达目标位置的时间不同,手臂末端走过的距离也是不均匀的

      归一化:使得运动范围在叫嚣关节空间成比例的减慢,从而使得两个关节能同时开始和结束。

            24.轨迹规划需注意的点

      知道关节的加速度,知道最大的角速度;不能很快达到既定速度,可以分路径段设定不同的精度

            25.多点轨迹规划

      所有的中间运动段都可以采用过度的方式平滑连接在一起。需要注意的是,由于采用了平滑过渡曲线,机器人经过原来不可能经过的点,所以机器人经过的可能不是原来的点,所以要精确经过那个点,可以事先设定一个不同的点,使得平滑后的点正好经过必须要精确经过的点。

            26.关节空间内轨迹规划

      轨迹规划给定点均为关节量而非直角坐标量。一种方法是使用多次多项式

    开始的角度Φ1和时间t1,结束角度Φ2和时间t2,机器人开始和结束时的速度。三次多项式能用于产生每个关节的运动轨迹。(位置和速度是连续的,加速度不连续)

    开始的角度Φ1和时间t1,结束角度Φ2和时间t2,机器人开始和结束时的速度,加速度。    

            27.抛物线过渡的线性段

      让机器人以恒定的速度在起点和中点位置之间运动,一次多项式,(原因)速度是常数,加速度为0

                  28.关节空间其他轨迹规划

      棒棒函数轨迹、加速度曲线为方形或者梯形函数轨迹以及争先函数轨迹等。

            29.直角空间坐标系轨迹规划

      所谓轨迹、是指操作臂在运动过程中的位移、速度和加速度。而轨迹规划是根据作业任务的要求,计算出预期的运动轨迹。

      对于关节空间的轨迹规划,规划函数生成的值就是关节值,直角坐标空间轨迹规划函数生成的值就是机器人末端手的位姿,他们需要求解逆运动方程才能转化为关节量。

      (1)将时间增加一个增量t=t+Δt(2)利用所选轨迹函数计算出手的位姿(3)利用机器人逆运动学方程计算对应手位姿的关节量(4)将关节信息传递给控制器(5)返回到循环开始

            30.关节空间和直角空间

      轨迹规划既可在关节空间也可在直角空间中进行,但是做规划的轨迹函数都必须连续和平滑,使得操作臂的运动平稳。在关节空间进行规划时,是将关节变量表示成为时间的函数,并规划它的一阶和二阶时间导数;在直角空间进行规划是指将手部位姿、速度和加速度表示为时间的函数。而相应的关节位移、速度和加速度由手部的信息导出。通常通过运动学反解得出关节位移,用逆雅克比求出关节速度,用逆雅克比及其导数求解关节加速度。

            31.关节空间进行规划

      在关节空间进行规划时,大量工作是对关节边路的插值运算。

      关节轨迹的插值:为了求得在关节空间形成所要求的轨迹,首先运用运动学反解将路径点转换成关节矢量角度值,然后对每个关节拟合一个光滑函数,使之从起始点开始,依次通过所有路径点,最后到达目标点。对于每一段路径,各个关节运动时间均相同,这样保证所有关节同时到达路径点和终止点,从而得到工具坐标系应有的位置和姿态。但是,尽管每个关节在同一段路径中的运动时间相同,各个关节函数之间却是相互独立的。

        总之,关节空间法是以关节角度的函数来描述机器人的轨迹的,关节空间法不必在直角坐标系中描述两个路径点之间的路径形状,计算简单,容易。再者,由于关节空间与直角坐标空间之间不是连续的对应关系,因而不会发生机构的奇异性问题。

       在关节空间中进行轨迹规划,需要给定机器人在起始点、终止点手臂的形位。对关节进行插值时,应满足一系列约束条件。在满足所有约束条件下,可以选取不同类型的关节插值函数,生成不同的轨迹。插值方法有:

        1、三次多项式插值;2、过路径点的三次多项式插值;3、高阶多项式插值;4、用抛物线过渡的线性插值;5、过路径点的用抛物线过渡的线性插值。

                     32.笛卡尔空间坐标系

       笛卡尔空间规划法:

    一、物体对象的描述

    相对于固接坐标系,物体上任一点用相应的位置矢量表示,任一方向用方向余弦表示,给出物体的几何图形及固接坐标系后,只要规定固接坐标系的位姿,便可重构该物体。

    二、作业的描述

    在这种轨迹规划系统中,作业是用操作臂终端抓手位姿的笛卡尔坐标结点序列规定的,因此,结点是指表示抓手位姿的齐次变换矩阵。相应的关节变量可用运动学反解程序计算。

    三、两个结点之间的“直线”运动

           操作臂在完成作业时,抓手的位姿可以用一系列结点P来表示。因此,在直角坐标空间中进行轨迹规划的首要问题是由两结点pi和pi+1所定义的路径起点和终点之间,如何生成一系列中间点。两结点间最简单的路径是在空间的一个直线移动和绕某轴的转动。若运动时间给定之后,则可产生一个使线速度和角速度受控的运动。

    四、两段路径之间的过渡

           为了避免两段路径衔接点处速度不连续,当由一段轨迹过渡到下一段轨迹时,需要加速或减速。

    五、运动学反解的有关问题

           主要是笛卡尔路径上解的存在性(路径点都在工作空间之内与否)、唯一性和奇异性。

    1、  第一类问题:中间点在工作空间之外。在关节空间中进行规划不会出现这类问题。

    2、  第二类问题:在奇异点附近关节速度激增。想PUMA这类机器人具有两种奇异点:工作空间边界奇异点和工作空间内部的奇异点。在处于奇异位姿时,与操作速度(笛卡尔空间速度)相对应的关节速度可能不存在(无限大)。可以想象,当沿笛卡尔空间的直线路径运动到奇异点附近时,某些关节速度将会趋于无限大。实际上,所容许的关机速度是有限的,因而会导致操作臂偏离预期轨迹。

    3、  第三类问题:起始点和目标点有多重解。问题在于起始点与目标点若不用同一个反解(不理解),这时关节变量的约束和障碍约束便会产生问题。

    正因为笛卡尔空间轨迹存在这些问题,现有的多数工业机器人的控制系统具有关节空间和笛卡尔空间的轨迹生成方法。用户通常使用关节空间法,只是在必要时,才采用笛卡尔空间方法。

                    33.运动规划的评价标准

      完备性(complete): 利用该算法,在有限时间内能解决所有有解问题;

    最优性(optimality): 利用该算法,能找到最优路径(距离最短、耗时最小、耗能最少等)

                    34.为什么要用IK

        对于机械臂,目标是终端空间位置(xyz), 但采样空间却是关节空间(q0,q1,...qN)。有了IK之后,我们就可以把三维空间的目标p转化为关节空间的目标q。那么这样就会让采样算法能算的更快,具体方法不赘述,这样的算法有RRT-Connect,BKPIECE等等双向采样算法。

    机器人轨迹规划(熊友伦)特别链接:https://blog.csdn.net/weixin_28900531/article/details/79431055
    ---------------------
    作者:小球球_大肚腩
    来源:CSDN
    原文:https://blog.csdn.net/m0_37140588/article/details/79760789
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    网页中防拷贝、屏蔽鼠标右键代码
    Enterprise Library Exception Handling Application Block Part 1
    vs debug 技巧
    Winforms:消除WebBrowser的GDI Objects泄露
    WinForm窗体之间交互的一些方法
    TableLayoutPanel用法
    Winforms:把长ToolTip显示为多行
    Winforms: 不能在Validating时弹出有模式的对话框
    Winforms: 复杂布局改变大小时绘制错误
    读取Excel默认工作表导出XML
  • 原文地址:https://www.cnblogs.com/mazhenyu/p/10712612.html
Copyright © 2011-2022 走看看