1.4 机器人特有的功能

机器人不同于一般的数控机床和运动控制系统,一般的机器人有6个轴,即6个自由度。其运动的空间复杂性比一般的数控机床要复杂。机器人有许多自身特有的功能,为了便于阅读后续的章节,需要对这些特有的功能进行解释。

1.4.1 机器人坐标系及原点

1.4.1.1 世界坐标系

(1)定义

世界坐标系是表示机器人(控制点)“当前位置”的坐标系。所有表示位置点的数据是以世界坐标系为基准的(世界坐标系类似于数控系统的G54坐标系,事实上就是工件坐标系)。

(2)设置

世界坐标系是以机器人的基本坐标系为基准设置的(这是因为每一台机器人基本坐标系是由其安装位置决定的)。只是确定世界坐标系基准点时,是从世界坐标系来观察基本坐标系的位置,从而确定新的世界坐标系本身的基准点。所以基本坐标系是机器人坐标系中第1基准坐标系。

在大部分的应用中,世界坐标系与基本坐标系相同。

见图1-7,图中Xm-Ym-Zm是世界坐标系。当前位置是以世界坐标系为基准的。如图1-8所示。

图1-7 世界坐标系与基本坐标系之间的关系

图1-8 当前位置以世界坐标系为基准

1.4.1.2 基本坐标系

基本坐标系是以机器人底座安装基面为基准的坐标系。在机器人底座上有图示标志。基本坐标系如图1-9所示。实际上基本坐标系是机器人第一基准坐标系。世界坐标系也是以基本坐标系为基准的。

图1-9 基本坐标系

1.4.1.3 机械IF坐标系

机械IF坐标系也就是“机械法兰面坐标系”。以机器人最前端法兰面为基准确定的坐标系称为“机械IF坐标系”,以Xm-Ym-Zm表示。如图1-10所示。与法兰面垂直的轴为“Z轴”,Z轴正向朝外,Xm轴、Ym轴在法兰面上。法兰中心与定位销孔的连接线为Xm轴,但必须注意Xm轴的“正向”与定位销孔相反。

图1-10 机械IF坐标系的定义

因在机械法兰面要安装抓手,所以这个“机械法兰面”就有特殊意义。特别注意:机械法兰面转动,机械IF坐标系也随之转动。而法兰面的转动受J5轴J6轴的影响(特别J6轴的旋转带动了法兰面的旋转,也就带动了机械IF坐标系的旋转,如果以机械IF坐标系为基准执行定位,就会影响很大),参见图1-11、图1-12。图1-12是J6轴逆时针旋转了的坐标系。

图1-11 机械IF坐标系的图示

图1-12 J6轴逆时针旋转了的机械IF坐标系

1.4.1.4 工具(TOOL)坐标系

(1)工具(TOOL)坐标系的定义及设置基准

①定义 由于实际使用的机器人都要安装夹具抓手等辅助工具,因此机器人的实际控制点就移动到了工具的中心点上,为了控制方便,以工具的中心点为基准建立的坐标系就是TOOL坐标系。

②设置 因夹具抓手直接安装在机械法兰面上,所以TOOL坐标系就是以机械IF坐标系为基准建立的。建立TOOL坐标系有参数设置方法和指令速度法,实际上都是确定TOOL坐标系原点在机械IF坐标系中的位置和形位(POSE)。

TOOL坐标系与机械IF坐标系的关系如图1-13所示。TOOL坐标系用XtYtZt表示。TOOL坐标系是在机械IF坐标系基础上建立的。在TOOL坐标系的原点数据中,XYZ表示TOOL坐标系原点在机械IF坐标系内的直交位置点。ABC表示TOOL坐标系绕机械IF坐标系XmYmZm轴的旋转角度。

图1-13 工具坐标系与机械IF坐标系的关系

TOOL坐标系的原点不仅可以设置在任何位置,而且坐标系的方位(pose)也可以通过ABC值任意设置(相当于一个立方体在一个万向轴接点任意旋转)。在图1-13中,TOOL坐标系绕Y轴旋转了-90°,所以Zt轴方向就朝上(与机械IF坐标系中的Zm方向不同)。而且当机械法兰面旋转(J6轴旋转)时,TOOL坐标系也会随着旋转,分析时要特别注意。

(2)动作比较

①JOG或示教动作

a.使用机械IF坐标系。未设置TOOL坐标系时,使用机械IF坐标系以出厂值法兰面中心的为“控制点”,在X方向移动(此时,X轴垂直向下),其移动形位(pose)如图1-14所示。

图1-14 X方向移动的形位

b.以TOOL坐标系动作。设置了TOOL坐标系后,以TOOL坐标系动作。注意在X方向移动时,是沿着TOOL坐标系的Xt方向动作。这样就可以平行或垂直于抓手面动作,使JOG动作更简单易行。如图1-15所示。

图1-15 在TOOL坐标系X方向移动

c.A方向动作。

? 使用机械IF坐标系。未设置TOOL坐标系时,使用机械IF坐标系,绕Xm轴旋转。抓手前端大幅度摆动。如图1-16所示。

图1-16 A方向的动作

? 设置TOOL坐标系绕Xt轴旋转。设置TOOL坐标系后,绕Xt轴旋转。抓手前端绕工件旋转。在不偏离工件位置的情况下,改变机器人形位(pose)。如图1-17所示。

图1-17 在TOOL坐标系中绕Xt轴旋转

以上是在JOG运行时的情况。

②自动运行

a.近点运行。在自动程序运行时,TOOL坐标系的原点为机器人“控制点”。在程序中发出的定位点是以世界坐标系为基准的。但是,Mov指令中的近点运行功能中的“近点”的位置则是以TOOL坐标系的Z轴正负方向为基准移动。这是必须充分注意的。

指令例句:

    1Mov P1,50

其动作是:将TOOL坐标系原点移动到P1点的“近点”,“近点”为P1点沿TOOL坐标系的Z轴正向移动50mm。如图1-18所示。

图1-18 在TOOL坐标系中的近点动作

b.相位旋转。绕工件位置点旋转(Zt),可以使工件旋转一个角度。

例:指令在P1点绕Z轴旋转45°(使用两点的乘法指令)。

    1  Mov P1*(0,0,0,0,0,45)'使用两点的乘法指令

实际的运动结果如图1-19所示。

图1-19 在TOOL坐标系中的相位旋转

1.4.1.5 工件坐标系

工件坐标系是以工件原点确定的坐标系。在机器人系统中,可以通过参数预先设置8个工件坐标系。也可以通过BASE指令设置工件坐标系原点或选择工件坐标系。另外,可以指令当前点为新的世界坐标系的原点。

BASE指令就是设置世界坐标系的指令。

(1)参数设置法

表1-4为工件坐标系相关参数。可在软件上做具体设置。

表1-4 工件坐标系相关参数

(2)指令设置法

设置世界坐标系的偏置坐标(偏置坐标为以世界坐标系为基准观察到的基本坐标系原点在世界坐标系内的坐标)

    1 Base(50,100,0,0,0,90)'设置一个新的世界坐标系(如图1-20所示)

图1-20 使用Base指令设置新的坐标系

    2 Mvs P1'
    3 Base P2'以
    4 Mvs P1'
    5 Base 0设置世界坐标系与基本坐标系相同(回初始状态)

(3)以工件坐标系号选择新世界坐标系的方法

    1 Base 1'选择1
    2 Mvs P1'运动到
    3 Base 2'选择2
    4 Mvs P1'运动到
    5 Base 0选择基本坐标系

1.4.1.6 JOG动作

在示教单元上,可以进行以下JOG操作:

①三轴直交JOG XYZ三轴以直角坐标移动。ABC三轴以关节轴的角度单位运行。

②圆筒JOG 以圆筒坐标系运动。X轴表示圆筒坐标系的直径大小。Y轴表示绕圆筒的旋转(绕J1轴的旋转)。Z轴表示上下运动。ABC轴表示各轴的旋转,以角度为单位。

③工件JOG 以工件坐标系为基准进行JOG动作。动作如图1-21所示。

图1-21 在工件坐标系内的JOG运动

④JOG TOOL 以工具坐标系为基准进行的JOG运动。

1.4.2 专用输入输出信号

(1)机器人控制器的通用输入输出信号

机器人控制器的通用输入输出信号如第7章所述。接收通用输入输出信号的I/O卡为“2D-TZ368”或“2D-TZ378”。

I/O卡插入控制器的硬插槽“SLOT1”/“SLOT2”中。其站号也已经规定。

“SLOT1”——站号=0(信号地址0~31)

“SLOT2”——站号=1(信号地址32~63)

这些输入输出信号最初没有做任何定义,可以由编程工程师给予任意定义,这与通用PLC使用是相同的。

(2)机器人控制器的专用输入输出信号

由于机器人工作的特殊性,机器人控制器有很多“已经定义的功能”,也称为“专用输入输出功能”。这些功能可以定义在“通用输入输出信号的任何一个端子”。机器人控制器中的专用输入输出类似于数控系统中的固定接口,其输入信号用于向“控制器”发出指令,输出信号表示“控制器”的工作状态。

控制器的专用输入输出只是各种功能,至于这些功能赋予到那些针脚上,需要通过(软件)参数来设置。

1.4.3 操作权

(1)能够对机器人进行控制的设备

对机器人进行控制的设备有以下几种:

①示教单元;

②操作面板(外部信号);

③计算机;

④触摸屏。

某一类设备对“机器人”的控制权就称为“操作权”。示教单元上有一“使能开关”就是“操作权”开关。表1-5是示教单元上的“使能开关”与“操作权”的关系。

表1-5 示教单元上的“使能开关”与“操作权”的关系

注:表示有操作权;×表示无操作权。

(2)与操作权相关的参数

IOENA——本信号的功能是使外部操作信号有效和无效。在RT ToolBox2软件中,在“参数”—“通用1”中设置本参数。

操作权:对机器人的操作可能来自

①示教单元;

②外部信号;

③计算机软件(调试时);

④触摸屏。

(3)实际操作

①在示教单元中“ENABLE”开关=ON,可以进行示教操作。即使外部IO操作权=ON,即使外部没有选择“自动模式”,也可以通过示教单元的“开机”—“运行”—“操作面板”—“启动”进行程序启动(示教单元有优先功能“ENABLE”)。

②如果在操作面板上选择了“自动模式”,而“ENABLE”= ON,系统会报警,使“ENABLE”=OFF,报警消除。

③如果需要进入调试状态,必须使IOENA=OFF。

④如果使用外部信号操作,则需要使IOENA=ON。

1.4.4 最佳速度控制

最佳速度控制功能——机器人在两点之间运动,需要保持形位(pose)要求的同时,还需要控制速度防止速度过大出现报警。

最佳速度控制功能有效时,机器人控制点速度不固定。用Spd M_NSpd指令设置“最佳速度控制”。

1.4.5 最佳加减速度控制

最佳加减速度控制——机器人根据加减速时间,抓手及工件重量、工件重心位置,自动设置最佳加减速时间的功能。

用Oadl(Optimal Acceleration)指令设置最佳加减速度控制。

1.4.6 柔性控制功能

柔性控制功能——对机器人的综合力度进行控制的功能。通常用于压嵌工件的动作,(以直角坐标系为基础)根据伺服编码器反馈脉冲,进行机器人柔性控制。用Cmp Too指令设“伺服柔性控制功能”。

1.4.7 碰撞检测功能

碰撞检测功能——在自动运行和JOG运行中,系统时刻检测TOOL或机械臂与周边设备的碰撞干涉状态。用ColChk(Col Check)指令设置“碰撞检测功能”的有效无效。

机器人配置有对“碰撞而产生的异常”进行检测的“碰撞检测功能”,出厂时将“碰撞检测功能”设置为无效状态。“碰撞检测功能”的有效/无效状态切换可通过参数COL及ColChk指令完成。必须作为对机器人及外围装置的保护加以运用。

“碰撞检测功能”是通过机器人的动力学模型,在随时推算动作所需的扭矩的同时,对异常现象进行检测的功能。因此,当抓手、工件条件的设置(参数:HNDDAT*、WRKDAT*的设置值)与实际相差过大时,或是速度、电机扭矩有急剧变动的动作(特殊点附近的直线动作或反转动作,低温状态或长期停止后启动运行),急剧的扭矩变动就会被检测为“碰撞”。

简单地说,碰撞检测就是一直检测“计算转矩与实际转矩的差值”,当该值过大时,就报警。

1.4.8 连续轨迹控制功能

在多点连续定位时,使运动轨迹为一连续轨迹。本功能可以避免多次的分段加减速从而提高效率。用Cnt(Continuous)指令设置“连续轨迹控制功能”。

1.4.9 程序连续执行功能

机器人记忆断电前的工作状态,再次上电后,从原状态点继续执行原程序的功能。

1.4.10 附加轴控制

控制行走台等外部伺服驱动系统。外部伺服轴相对于机器人而言即为“附加轴”。

1.4.11 多机器控制

可控制多台机器人。

1.4.12 与外部机器通信功能

机器人与外部机器通信功能有下列方法:

(1)通过外部I/O信号

CR750Q——PLC通信,输入8192/输出8192。

CR750D——输入256/输出256。

(2)与外部数据的链路通信

所谓数据链路是指与外部机器(视觉传感器等)收发补偿量等数据。通过“以太网端口”进行。

1.4.13 中断功能

中断当前程序,执行预先编制的程序。对工件掉落等情况特别适用。

1.4.14 子程序功能

有子程序调用功能。

1.4.15 码垛指令功能

机器人配置有码垛指令,有多行、单行、圆弧码垛指令,实际上是确定矩阵点格中心点位置的指令。

1.4.16 用户定义区

用户可设置32个任意空间,监视机器人前端控制点是否进入该区域,将机器人状态输出到外部并报警。

1.4.17 动作范围限制

可以用下列3种方法限制机器人动作范围:

①关节轴动作范围限制(J1~J6)。

②以直角坐标系设置限制范围。

③以任意设置的平面为界面设置限制范围(在平面的前面或后面),由参数SFCnAT设置。

1.4.18 特异点

特异点指使用直角坐标系的位置数据进行直线插补动作时,如果J5轴角度为0°,则J4轴与J6轴之间的角度有无数种组合,这个点就称为“特异点”。一般无法使机器人按希望的位置和形位(pose)动作,这个位置就是特异点。

1.4.19 保持紧急停止时的运动轨迹

指急停信号输入时,可以保持原来的动作轨迹停止,由此可以防止急停“手臂滞后”引起的与周围的干涉。

1.4.20 机器人的“形位(pose)”

1.4.20.1 一般说明

(1)坐标位置和旋转位置

如图1-22所示,机器人的位置控制点由8个数据构成。

图1-22 表示机器人位置控制点的8个数据

机器人的“位置控制点”:出厂时为法兰面中心点,当设置了抓手坐标系(TOOL坐标系)后,即为TOOL坐标系原点。

XYZ——机器人控制点,即在直角坐标系中的坐标。

ABC——绕XYZ轴旋转的角度。

就一个“点”位而言,没有旋转的概念。所以旋转是指以该“位置点”为基准,以抓手为刚体,绕世界坐标系的XYZ轴旋转。这样即使同一个“位置点”,抓手的形位(pose)就有N种变化。

注意

XYZABC全部以世界坐标系为基准。

因此,在变换不同的工件坐标系时,就存在如下问题:以XYZABC确定的某一点假设为“F”点,以“F”点为一新坐标系的原点,要保证“F”点形位(pose),必须记忆住“F”点形位POSE,如果在新坐标系只有XYZ数据,没有ABC数据或ABC=0,则机器人不能按“F”点形位(pose)动作。要保证“F”点形位(pose)POSE,必须将“F”点形位(pose)数据加在每一位置点上。

③L1,L2——附加轴(伺服轴)定位位置。

④FL1——结构标志(上下左右高低位置)。

⑤FL2——各关节轴旋转度数。

(2)结构标志

①FL1——结构标志(上下左右高低位置)。用一组二进制数表示,上下左右高低用不同的bit位表示。如图1-23所示。

图1-23 表示FL1结构标志的二进制数

②FL2——各关节轴旋转度数。用一组十六进制数表示。如图1-24所示。

图1-24 表示FL2各关节轴旋转度数的十六进制数

各轴的旋转角度与数值之间的关系如图1-25所示。

图1-25 旋转度数与十六进制数的关系

1.4.20.2 对结构标志FL1的详细说明

机器人的位置控制点是由XYZABC(FL1、FL2)标记的,由于机器人结构的特殊性,即使是同一位置点,机器人也可能出现不同的“形位(pose)”。为了区别这些“形位(pose)”,采用了结构标志。用位置标记的XYZABC(FL1、FL2)中的“FL1”标记,标记方法如下。

(1)垂直多关节型机器人

①左右标志

a.5轴机器人:以J1轴旋转中心线为基准,判别J5轴法兰中心点R位于该中心线的左边还是右边。如果在右边(RIGHT),则FL1=1;如果在左边(LEFT),则FL1=0;如图1-26(a)所示。

图1-26 左右判定

b.6轴机器人:以J1轴旋转中心线为基准,判别J5轴中心点P位于该中心线的左边还是右边。如果在右边(RIGHT),则FL1=1;如果在左边(LEFT),则FL1=0;如图1-26(b)所示。

注意

FL1标志信号用一组二进制码表示,检验左右位置用bit2表示。如图1-27所示。

图1-27 FL1标志的左右判断

②上下判断

a.5轴机器人:以J2轴旋转中心和J3轴旋转中心的连接线为基准,判别J5轴中心点P是位于该中心连接线的上面还是下面。如果在上面(ABOVE),则FL1=1;如果在下面(BELOW),则FL1=0;如图1-28(a)所示。

图1-28 FL1标志中“上下”的判定

b.6轴机器人:以J2轴旋转中心和J3轴旋转中心的连接线为基准,判别J5轴中心点P是位于该中心连接线的上面还是下面。如果在上面(ABOVE),则FL1bit1=1;如果在下面(BELOW),则FL1bit1=0;如图1-28(b)所示。

注意

FL1标志信号用一组二进制码表示,检验上下位置用bit1表示。如图1-29所示。

图1-29 FL1标志中“上下”的判定及显示

③高低判断 第6轴法兰面(6轴机型)方位判断。以J4轴旋转中心和J5轴旋转中心的连接线为基准,判别6轴的法兰面是位于该中心连接线的上面还是下面。如果在下面(NON FLIP),则FL1bit0=1;如果在上面(FLIP),则FL1bit0=0;如图1-30所示。

图1-30 J6轴法兰面位置的判定

注意

FL1标志信号用一组二进制码表示,检验高低位置用bit0表示。

(2)水平运动型机器人

以J1轴旋转中心和J2轴旋转中心的连接线为基准,判别机器人前端位置控制点是位于该中心连接线的左边还是右边。如果在右边(RIGHT),则FL1 bit2=1;如果在左边(LEFT),则FL1 bit2=0;如图1-31所示。

图1-31 水平运动型机器人的FL1标志