想学好工业机器人就要熟悉机器人的控制,工业机器人基本靠控制运动轴位置和电磁元件通断来进行运动。运动轴位置控制一般用来改变工具作业点,它可驱动机器人关节运动或机器人、工件的整体移动;在机器人应用程序中,运动轴位置可通过基本移动指令控制。基本移动指令属于通用指令,只要机器人的控制系统相同,即使工业机器人的用途有所区别,但移动指令的格式、编程要求仍一致。
部分工业机器人可能还包含特殊的运动轴位置控制要求,例如,点焊机器人的伺服焊钳控制、分拣机器人的同步跟踪控制、探测机器人的传感器引导运动和摄像控制等。此类机器人的控制系统通常需要选配特殊功能,并通过专门的RAPID移动指令进行控制。
多关节机器人的运动复杂,为了实现对机器人本体运动轴的控制,需要对机器人的工具参考点(Tool Reference Point,TRP)位置进行定义,以便建立其运动控制模型。
例如,在图示的6轴串联机器人上,TRP就是机器人手腕上的工具安装法兰中心点。为了确定TRP,在控制系统中,需要定义基座高度(height_of_foot),j2、j3轴中心偏移(offset_off_joint_2、offset_off_joint_3),下臂、上臂长度(length_of_lower_arm、length_of_upper_arm)以及手腕长度(length_of_wrist)等结构参数。
![284012a3d4230cdd1e69fc8346ef02e3.png](https://i-blog.csdnimg.cn/blog_migrate/4665e8ee4c8052f639f25f65f7604196.jpeg)
结构参数是机器人运动控制的前提条件,且与机器人结构密切相关,故需要机器人生产厂家在系统参数上设置。在RAPID应用程序中,ABB机器人的结构参数一般在系统模块(System module)中定义,该模块由ABB公司编制,并可在系统启动时自动加载,并且不受用户作业程序删除操作的影响。
TRP也是确定工具作业点、设定工具数据的基准位置。工业机器人的工具作业点又称为工具控制点(Tool Control Point,TCP)或工具中心点(Tool Center Point,TCP),它是机器人关节、直线、圆弧插补等移动指令的控制对象,指令中的起点、终点就是TCP在指定坐标系上的位置值。TCP的位置与工具形状、安装方式密切相关;不安装工具时,TCP就是TRP。
机器人作业程序中的移动指令大多用来控制机器人TCP和工件(或基准)的相对运动, TCP的位置取决于机械部件的运动。例如,通过机器人本体的运动,可使TCP和机器人基座产生相对运动;通过机器人基座的整体移动,可使TCP和大地产生相对运动;通过工件的整体运动,可使TCP和工件产生相对运动等。
可驱动机器人TCP运动的运动轴众多、组成形式多样,简单系统可能只有单一的机器人本体运动;复杂机系统可能需要控制多个机器人以及机器人变位器、工件变位器等诸多辅助部件运动。例如,下图所示的双机器人协同作业系统,实际上包含机器人1、机器人2、机器人变位器、工件变位器共4个运动部件。
![6e9b1b790ba2987451a91a2cdcef9e7a.png](https://i-blog.csdnimg.cn/blog_migrate/dc708767a87ef8a0095743e5260f96f9.jpeg)
为了便于控制与编程,在控制系统内部,通常需要根据机械部件的功能与用途,对运动轴进行分组管理,将系统分为若干个具有独立功能和若干个运动轴的基本运动单元。在ABB机器人说明书中,将这样的单元称为机械单元(Mechanical unit);而在安川等公司生产的机器人说明书中,则将其称为“控制轴组”。
工业机器人系统的运动轴一般可分为机器人单元(机器人轴组)、基座单元(基座轴组)和工装单元(工装轴组)3类。
01机器人单元
机器人轴是用于机器人本体运动控制的坐标轴,用来控制机器人TCP和机器人基座的相对运动。在多机器人控制系统上,可分为机器人1(ROB_1)、机器人2 (ROB_2)等多个轴组(单元);机器人单元一旦选定,对应的机器人就成为系统的控制对象。
02基座单元
基座轴是驱动机器人安装基座、实现机器人整体变位的辅助运动轴,用来控制机器人基座及TCP和大地的相对运动。基座单元一旦选定,机器人变位器就成为系统的控制对象。
03工装单元
工装轴是驱动工装运动、实现工件整体变位的辅助运动轴,用来控制机器人TCP和工件的相对运动。工装单元一旦选定,工件变位器就成为系统的控制对象。
机器人轴是系统的基本运动轴,任何工业机器人都具备;基座轴、工装轴是用于机器人、工件整体移动的辅助轴,当系统配置有变位器时需要使用。在工业机器人系统中,基座轴、工装轴统称为“外部轴”或“外部关节”(extjoint)。
同一机械单元的所有运动轴可进行成组管理。机器人操作或编程时,可根据需要,通过生效/撤销机械单元来改变系统的控制对象。
在ABB机器人中,机械单元(控制轴组)可通过系统参数定义,不同的机械单元需要定义不同的名称。在RAPID程序中,可通过机械单元启用/停用指令,来使能/关闭指定机械单元全部运动轴的伺服驱动器,使该机械单元的运动轴处于实时位置控制状态,或处于保持位置不变的伺服锁定状态。
机器人TCP的运动需要通过三维笛卡尔直角坐标系来描述。在ABB机器人中,笛卡尔坐标系有下图所示的大地坐标系(World coordinates)、基座坐标系(Base coordinates)、工具坐标系(Tool coordinates)、用户坐标系(User coordinates)和工件坐标系(Object coordinates)等,说明如下。
![12818c7be54b80e9f29fff0f450dba43.png](https://i-blog.csdnimg.cn/blog_migrate/9400e4f0a85948adf28dee59f363782e.jpeg)
大地坐标系
大地坐标系(World coordinates)有时被译为“世界坐标系”,它是以地面为基准的三维笛卡尔直角坐标系,可用来描述物体相对于地面的运动。在多机器人协同作业系统或使用机器人变位器的系统中,为了确定机器人(基座)的位置,需要建立大地坐标系。此外,如机器人采用了下图所示的倒置或倾斜安装,大地坐标系也是设定基座坐标系的基准。
![e4d58021c7569a83c1d16125bcafaa65.png](https://i-blog.csdnimg.cn/blog_migrate/2d0e540738ba62b277c69575169856e7.jpeg)
通常情况下,地面垂直安装的机器人基座坐标系与大地坐标系的方向一致,因此,对于常用的、地面垂直安装的单机器人系统,系统默认为大地坐标系和基座坐标系重合,此时,可不设定大地坐标系。
基座坐标系
基座坐标系(Base coordinates)亦称为机器人坐标系,它是以机器人安装基座为基准、用来描述机器人本体运动的虚拟笛卡尔直角坐标系。基座坐标系是描述机器人TCP在三维空间运动所必需的基本坐标系,机器人的手动操作、程序自动运行、加工作业都离不开基座坐标系,因此,任何机器人都需要有基座坐标系。
基座坐标系通常以腰回转轴线为Z轴、以机器人安装底面为XY平面;其Z轴正向与腰回转轴线方向相同,X轴轴线与腰回转轴j1的0°线重合,手腕离开机器人向外方向为X轴正向;Y轴由图3.1-3所示的右手定则确定。
工具坐标系
工具坐标系(Tool coordinates)是机器人作业必需的坐标系,建立工具坐标系的目的是确定工具的TCP位置和安装方式(姿态)。通过建立工具坐标系,机器人使用不同的工具作业时,只需要改变工具坐标系(工具数据tooldata),就能保证TCP到达指令点,而无需对程序进行其他修改。
机器人手腕上的工具安装法兰面和中心点是工具的安装定位基准。以工具安装法兰中心点(TRP)为原点、垂直工具安装法兰面向外的方向为Z轴正向、手腕向机器人外侧运动的方向为X轴正向的虚拟笛卡尔直角坐标系,称为机器人的手腕基准坐标系。手腕基准坐标系是建立工具坐标系的基准,如未设定工具坐标系,控制系统将默认为工具坐标系和手腕基准坐标系重合。
工具坐标系是用来确定工具TCP位置和工具方向(姿态)的坐标系,它通常是以TCP为原点、以工具接近工件方向为Z轴正向的虚拟笛卡尔直角坐标系;常用的点焊、弧焊机器人的工具坐标系一般如下图所示。
![f6e0996661325b0be441e83ffaaf8e28.png](https://i-blog.csdnimg.cn/blog_migrate/ac8c55301ea8cfe50d5f58c7ff5d2bd1.jpeg)
用户坐标系
用户坐标系(User coordinates)是以下图所示的工装位置为基准来描述TCP运动的虚拟笛卡尔直角坐标系,通常用于工装移动协同作业系统或多工位作业系统。
![1731c406eb9619509c4a5e6fe453c10b.png](https://i-blog.csdnimg.cn/blog_migrate/70ed7f2069cb2e82ba3ea136278dadaa.jpeg)
通过建立用户坐标系,机器人在不同工位进行相同作业时,只需要改变用户坐标系(工件数据wobjdata),就能保证工具TCP到达指令点,而无需对程序进行其他修改。
在RAPID程序中,用户坐标系可通过工件数据(wobjdata)定义,有关内容详见后述。对于通常的工件固定、机器人移动工具作业,用户坐标系以大地坐标系为基准建立;对于工具固定、机器人移动工件作业,用户坐标系则以手腕基准坐标系为基准建立。
工件坐标系
工件坐标系(Object coordinates)是以工件为基准来描述TCP运动的虚拟笛卡尔坐标系。通过建立工件坐标系,机器人需要对不同工件进行相同作业时,只需要改变工件坐标系,就能保证工具TCP到达指令点,而无需对程序进行其他修改。
工件坐标系可在用户坐标系的基础上建立,并允许有多个。对于工具固定、机器人用于工件移动的作业,必须通过工件坐标系来描述TCP与工件的相对运动。
在RAPID程序中,工件坐标系同样需要通过工件数据(wobjdata)定义;如果机器人仅用于单工件作业,系统默认用户坐标系和工件坐标系重合,无需另行设定工件坐标系。
本期主题的选择来自于对产品升级规划时的思考,我们计划在机器人基础教学领域打造精品,所以选择了一些优秀的专业资料进行参考,我们希望通过我们对知识的加工处理让这些稍显枯燥的文字变得生动有趣,让机器人教学变得简单,所以您一定有机会在后面的专题中看到我们对这些知识的重新解读。本期内容全部引自《ABB工业机器人编程全集》一书,特此说明。