机器人离线示教方法

文档序号:6322280阅读:452来源:国知局
专利名称:机器人离线示教方法
技术领域
本发明涉及一种机器人离线示教方法。
背景技术
近来已知一种离线示教方法(离线示教),通过计算机建立虚拟空间中三维关节 型机器人、待附接到该关节型机器人的末端的工具、以及将作为工作目标和外围结构的工 件的模型,通过使用该模型产生用于该关节型机器人的示教数据,之后将示教数据供给现 场的关节型机器人(例如,参见JP-A-2008-33419)。因此,在产生示教数据过程中不必停止 生产线,并且可以增强生产线的开工率。

发明内容
示教数据包括多个示教点。示教点包括关于工具的位置和姿态的信息。通常,必 须手动设定在所有示教点处的位置和姿态,需要很长时间来产生示教数据。本发明的一个目的是提供一种机器人离线示教方法,该方法能够容易地产生示教 数据。根据本发明的第一个方面,提供一种机器人离线示教方法,该方法包括以彼此间隔的方式设定多个虚拟示教点,以便示教附接到虚拟空间生产线中的虚 拟机器人上的虚拟工具的运动路径和姿态;设定虚拟工具在一部分虚拟示教点上的姿态,其中所述一部分虚拟示教点分别至 少包括起始点和终止点;在所述一部分虚拟示教点之间执行插值操作,以便从起始点到终止点顺次地连接 所述一部分虚拟示教点,并且使虚拟工具在所述一部分虚拟示教点分别采取设定的姿态;在执行插值操作过程中,每隔预定的间隔将虚拟工具的位置和姿态存储为插值操 作点;对于每个不包括所述一部分虚拟示教点的其它虚拟示教点,选择任何满足预定选 择标准的所存储的插值操作点;以及对于每个其它虚拟示教点,读取所选择的插值操作点的姿态数据,并将所读取的 姿态数据存储为所述其它虚拟示教点的姿态数据。根据本发明的第二个方面,提供一种根据第一个方面的机器人离线示 教方法,其 中,所述预定选择标准为位于距其它虚拟示教点最小距离处的插值操作点。作为根据本发明的预定选择标准,例如,可以设定位于距其它虚拟示教点最小距 离处的插值操作点。


现在参考附图描述实现本发明的各种特征的总体体系结构。提供附图及其相关说明以用于阐述本发明的实施方式,而不是用于限制本发明的范围。图1为说明性框图,示出了使用根据本发明的机器人离线示教方法的实施方式的机器人示教CAD装置的结构;图2为说明图,示出了根据所述实施方式的机器人示教CAD装置的干涉确认对话框;图3为说明图,示出了根据所述实施方式的机器人示教CAD装置的干涉结果对话框;图4为说明性流程图,示出了用于根据所述实施方式的机器人示教CAD装置的示教方法的过程;以及图5为说明性视图,示出了根据所述实施方式的机器人示教CAD装置的虚拟示教点的例子。
具体实施例方式下面将参考附图描述根据本发明的多种实施方式。图1示出了使用根据本发明的实施方式的机器人离线示教方法的机器人示教装 置10。该机器人示教装置10具有计算机主体12、监视器14、键盘16以及用作指向装置的 鼠标18。计算机主体12为个人计算机,该个人计算机具有CAD软件20、CAD数据22、设定 信息24和示教数据26 ;用作主控制部分的CPU(中央处理单元)读取并执行CAD软件20, CPU还产生、读取并编辑CAD数据22、设定信息24和示教数据26。示教数据26由用于控制 机器人的机器人控制器(未示出)通过诸如PC卡28的存储媒介或通信自由读取。假定作为工业关节型机器人的四个虚拟机器人32a、32b、32c和32d用作由机器人 示教装置10示教的目标,并且虚拟车辆30用作机器人的工作目标。此外,假定诸如传送带 或夹具的虚拟设备34设置在站点中用于进行与虚拟车辆30相关的工作。虚拟机器人32a 和32b分别置于传送带的上游和下游的左侧,并且虚拟机器人32c和32d分别置于传送带 的上游和下游的右侧。四个虚拟机器人32a、32b、32c和32d共同被称为虚拟机器人32。CAD数据22为三维模型数据,并且具有工件数据22a、机器人数据22b、工具数据 22c和设备数据22d。工件数据22a表示作为工件的虚拟车辆30,机器人数据22b表示用 于进行与虚拟车辆30相关的工作的虚拟机器人32。工具数据22c表示被附接到虚拟机器 人32的末端的工具33 (端部执行器),并且设备数据22d表示生产线中或周围的相关设备 34。就工具33而言,也可为每个虚拟机器人32附接不同的工具。工件数据22a、机器人数据22b、工具数据22c和设备数据22d不经过数据转换,而 是就以CAD数据格式在每个处理过程中用于在监视器14上的显示、坐标转换、以及干涉确 认。因此,可以防止由于转换误差造成的精度降低、形状信息缺陷的出现、以及产生的虚拟 示教点的精度降低。而且,不需要用于数据转换工作的时间和精力,从而增加效率。CAD软件20用于产生并编辑CAD数据22,并用于读取CAD数据22,由此执行预定处理过程,而且CAD软件20具有CAD部分20a、机器人姿态计算部分20b (附加程序)和机器人示教部分20c (附加程序)。CAD部分20a为CAD软件20的主体部分并用于产生并编 辑三维数据,以及进行监视器14上的显示。虽然图1象征性地示出了虚拟机器人32,但可 以由CAD部分20a通过实体模型来实际显示写实的三维虚拟机器人32。机器人姿态计算部分20b执行反向运动学,以基于给定的关于虚拟示教点的信息 计算虚拟机器人32的每个关节的位移(转动位移或直接作用位移),由此产生虚拟机器人 32的姿态数据。关于虚拟示教点的信息包括作为关于虚拟机器人32的末端的信息的关于 虚拟工具33的位置和姿态的信息。此外,如果姿态数据被设定到虚拟机器人32的可动范围中则机器人姿态计算 部分20b向机器人示教部分20c传递所产生的虚拟机器人32的该姿态数据,并且如 果姿态数据没有包括在虚拟机器人32的转动范围中或存在诸如异常构型(singular configuration)的姿态错误则机器人姿态计算部分20b向机器人示教部分20c传递错误 数据。机器人示教部分20c基于所接收的姿态数据在监视器14的屏幕上显示虚拟机器人 32。设定信息24为用于对生产过程进行仿真的原始数据,并且具有关于虚拟车辆30 的工件信息24a、关于用于进行有关虚拟车辆30的工作的虚拟机器人32的机器人信息 24b、诸如附加地设置在虚拟机器人32中的焊枪或涂层枪的工具信息24c、有关虚拟设备34 的设备信息24d、以及表示仿真的各种设定的仿真信息24e。工件原点、从工件原点到工件前端的距离、从工件原点到工件后端的距离、机器类 型代码、导数选项(derivative option)以及选项代码被设定到工件信息24a。机器人的每个关节的类型、机器人的每个关节处于初始姿态的角度、每个关节的 操作范围、每个关节的转动方向、每个关节的运动速度范围和每个关节的轴线的脉冲频率 (pulse rate)被设定到机器人信息24b。关于仿真中附加地设置在虚拟机器人32上的虚拟工具33的位置和姿态、工具名 称、工具编号和工具运动状况的信息被设定到工具信息24c。从CAD原点到传送带原点的偏移距离、从传送带原点到传送带销的距离、从传送 带原点到工件原点的距离、传送带的运动起始位置和终止位置、传送带的速度、传送带的同 步状况、用于采取定时而执行与传送带的同步的限位开关的状况、以及从CAD原点到虚拟 机器人原点的距离被设定到设备信息24d。虚拟机器人32的数量、名称和编号、以及虚拟传送带的数量、名称和编号被设定 到仿真信息24e。在CAD软件20中建立的三维虚拟空间显示于监视器14上,并且,作为仿真操作 的目标的虚拟车辆30、附加地设有虚拟工具33的虚拟机器人32,以及虚拟设备34显示于 监视器14。此外,还显示机器人列表38、以及与虚拟机器人32a至32d对应的虚拟示教器 (teach pendant) 36a、36b、36c 和 36d。下面,虚拟示教器 36a、36b、36c 和 36d 通常被称作 虚拟示教器36。虚拟示教器36被显示为模拟实际设置于机器人上的示教器的图像。机器人列表38设有按钮38a、38b、38c和38d,用于指定和表示虚拟机器人32a至 32d,并且这些按钮被显示在监视器14的显示屏的右上部。按钮38a、38b、38c和38d按照 顺序分别显示为“Li ”、“L2”、“Rl,,和“R2”。
此外,根据工作,在监视器14上显示用于设定干涉确认的干涉确认对话框40和用 于表示结果的干涉结果对话框42。这些对话框可显示于监视器14的显示屏上的可选位置。 虚拟示教器36、机器人列表38和干涉确认对话框40可通过鼠标18或键盘16操作。CAD部分20a具有三维CAD的基本性能并能够改变模型或布局。此外,可在虚拟空 间的可选区域形成直线、折线、曲线或连接线。而且,工件模型上的形状数据的脊线可用于 形成离线示教数据。操作者从外部通过基于外部程序的DLL (动态链接库)或IPC (进程间通信)来访 问CAD部分20a,从而操作CAD部分20a的库(多个程序)。因此,可以在CAD软件20中的 虚拟空间中执行仿真。IPC为通用软件技术,其中数据交换在正在运行的两个程序之间进行,并且因此两 个程序可以位于相同的系统或网络中或网络之间,而且数据交换通过各种独特协议(通信 手段)来执行。而且,CAD部分20a的库代表可用于多个软件的一组通用的函数、数据或程 序,并且是通用软件技术。机器人示教部分20c能够从外部通过DLL或IPC操作在虚拟空间中的每个虚拟模 型。而且,为UI (用户界面)和实际机器的机器人的示教器提供等效的操纵函数,并且虚拟 示教器36通过GUI (图形用户界面)显示于监视器14上。因此可以获得优异的可使用性。虚拟示教器36具有一函数,该函数等效于实际机器(未显示)的普通的示教器的 函数,能够限定虚拟机器人32的每个轴线并能够分配输入/输出,能够注册和编辑虚拟示 教点,并且还能够注册和编辑特殊指令(特殊命令),诸如输入/输出命令或处理命令。而 且,通过操作虚拟示教器36,可以通过在操作过程中在正确改变虚拟机器人32的操作坐标 系(每个轴向脉动、每个轴向角度、基础坐标、工具坐标、工作坐标或外部轴线)的同时操作 虚拟机器人32,进行在虚拟示教点编辑运动命令(线性插值或圆形插值)的工作。此外,虚 拟示教器36能够例如在光标按钮被连续地推动的同时以低速连续地进行预定操作,并且 能够在预定方向上使虚拟工具33以预定速度运动。在通过虚拟示教器36的编辑工作完成之后,通过手动操作确认致动,并接着进行 切换到自动操作以致动虚拟机器人32,并且顺序地执行单独仿真(对所选择的一个虚拟机 器人32的仿真)或者复合仿真(多个可动机器人32的同时仿真)的确认。对于每个虚拟机器人32提供一个单个虚拟示教器36。在通过鼠标18点击机器人 列表38的机器人名称(即显示为“L1”、“L2”、“R1”或“R2”的按钮)时,与之对应的虚拟示 教器36独立地显示于监视器14的屏幕上。因此,可以在看到显示虚拟示教器36的同时容 易地确认虚拟机器人32的指示的执行。此外,通过最有利地利用虚拟空间,可以在进 行过程中自由地停止和重启单独仿 真和复合仿真。而且,可以监视间隙和虚拟模型的干涉的确认、虚拟设备34的循环时间的 计算、有关虚拟机器人32的每个轴线的位置的信息以及有关输入/输出的信息。因此可以 增强工作效率。误差数据或虚拟机器人32的姿态数据从机器人姿态计算部分20b传递到机器人 示教部分20c,使得虚拟机器人32在虚拟示教点被操作。在该情形中,当虚拟机器人32与 虚拟的附接设备34或虚拟车辆30干涉时,机器人示教部分20c能够通过DLL或IPC直接 访问并使用CAD数据22。因此,可通过使用三维虚拟模型的形状数据来以高精度确认干涉。
如图2所示,干涉确认对话框40具有干涉类型组合框40a、虚拟机器人列表40b、 干涉确认复选框40c、间隙设定编辑器40d、干涉目标列表40e、干涉结果按钮40f和关闭按 钮 40g。 干涉类型通过干涉类型组合框40a设定。当从虚拟机器人列表40b选择虚拟机器 人32时,显示对应于虚拟机器人32的干涉目标列表40e。干涉类型被分成“干涉”、“接触” 和“间隙”。“干涉”表示所选的虚拟机器人32侵入虚拟模型的情形,“接触”表示所选的虚 拟机器人32与虚拟模型接触的情形,并且“间隙”表示所选的虚拟机器人32不能确保距预 先设定的虚拟模型预定间隙的情形。从干涉目标列表40e检查并选择干涉目标,干涉确认复选框40c被选中或不选中 来确定干涉确认的执行。如果干涉确认复选框40c被选中,则执行干涉确认,从而确认干涉 结果对话框42的干涉结果。如果干涉确认复选框40c未被选中,则不执行干涉确认。通过 点击干涉结果按钮来显示干涉结果对话框42。如图3所示,干涉结果对话框42具有确认栏42a和关闭按钮42b。确认栏42a包括 干涉时间栏43a、虚拟机器人栏43b、干涉目标栏43c、干涉类型栏43d以及干涉距离栏43e, 对应于每次干涉的发生在单个横行显示有关干涉的信息。例如,在图3中显示的确认栏42a 的最上面一行中,“干涉发生时间”为开始后24. 20秒,“干涉发生”是对应于Ll的虚拟机器 人32,“干涉目标”是对应于L2的虚拟机器人32。而且,“干涉类型”是“干涉”并且侵入量 为 6. IOmm0将参照图4和5对使用如上所述构造的机器人示教CAD装置10的机器人离线示 教方法进行详细说明。首先,在图4的步骤1中,当点击机器人示教部分20c的机器人列表38中所需的 机器人名称以指定虚拟机器人32中的一个时,显示与之对应的虚拟示教器36。然后程序进行到步骤2,在步骤2中操纵虚拟示教器36以设定多个虚拟示教点。 例如,如图5的例子中所示,设定了九个虚拟示教点Tl至T9。在图5中,Tl对应于起始点, T9对应于终止点。而且此时仅有坐标信息(位置信息)被注册,虚拟工具的姿态数据没有 在每个虚拟示教点处被注册。此后,程序进行到步骤3,在所设定的虚拟示教点中选择姿态数据待注册的一个虚 拟示教点。随后,程序进行到步骤4,在步骤4中操作者操作虚拟示教器36以产生在步骤3 中选择的虚拟示教点处的虚拟工具的姿态数据。由虚拟示教器36通过虚拟工具中的坐标 系的三个轴线的单独转动产生姿态数据,以便使得虚拟工具采取所需姿态。然后程序进行到步骤5,在步骤5中检查姿态错误和干涉错误的存在。如果错误存 在,将其显示在监视器14上,而且程序返回到步骤4以促使姿态数据的校正。如果在步骤5处没有错误,则程序进行到步骤6,将所产生的姿态数据注册至在步 骤3中指定的虚拟示教点。然后程序进行到步骤7,在步骤7中确认其它虚拟示教点的姿态 数据是否注册。如果其它虚拟示教点的姿态数据被注册,程序返回到步骤3,并且步骤3至 步骤6的程序再次执行。执行步骤3至步骤6的程序的虚拟示教点对应于根据本发明的“一部分虚拟示教 点”,并且不执行步骤3至步骤6的程序的虚拟示教点对应于“不包括一部分虚拟示教点的 其它虚拟示教点”。
在图5的例子中,在三个虚拟示教点上执行步骤3至步骤6的程序,这三个虚拟示 教点包括起始点Tl、终止点T9以及虚拟工具33的运动方向显著改变的拐角点T5。更具体 地说,在图5所示的例子中,三个虚拟示教点Tl、T5和T9对应于根据本发明的“一部分虚 拟示教点”,并且六个虚拟示教点T2至T4、T6至T8对应于根据本发明的“不包括一部分虚 拟示教点的其它虚拟示教点”。根据本发明的“一部分虚拟示教点”并不限于图5示出的三个虚拟示教点,而例如 可以是两个虚拟示教点,即如果不存在拐角点则可以设定起始点和终止点,如果存在多个 拐角点则可以设定三个或更多个虚拟示教点。
在传统CAD装置中,在所有虚拟示教点上执行步骤3至步骤6的程序。在步骤4中 的姿态数据由虚拟示教器36通过构成虚拟工具的坐标系的三个轴线的单独旋转来产生, 以便使虚拟工具采取需要的姿态。但是,这项工作需要很大精力。为此,在传统CAD装置中 产生示教数据需要大量精力和时间。在根据该实施方式的CAD装置10中,增加步骤8至步骤17的程序以便容易地产 生姿态数据。这将在下面详细描述。如果在步骤7中,其它虚拟示教点的姿态数据不被注册,则程序进行到步骤8,在 步骤8中仅姿态数据被注册的一部分虚拟示教点被用于执行在虚拟示教点之间的插值操 作。在插值操作中进行使虚拟工具在虚拟示教点之间平滑运动的程序,以便使得虚拟工具 在姿态数据被注册的一部分虚拟示教点处采取所注册的姿态。在插值操作中,以与CAD装置10的计算能力相对应的最小计算间隔计算虚拟工具 的坐标(位置)和姿态。接着在步骤9,将计算结果存储为插值操作点。步骤8和步骤9的 程序从虚拟示教点的起始点执行到终止点(步骤10)。因此,通过插值操作产生多个插值操 作点。在图5的例子中,通过步骤8至步骤10的插值操作程序产生插值操作点Ml至M15。此后,程序进行到步骤11,在步骤11中选择未产生姿态数据的虚拟示教点。随后, 程序进行到步骤12,在步骤12中插值操作点显示于列表(未显示)中,同时还基于所选择 的虚拟示教点的位置坐标显示从所选择的虚拟示教点到插值操作点的距离,并且选择具有 最小距离的插值操作点。接下来程序进行到步骤13,在步骤13中读取所选择的插值操作点 的姿态数据。换句话说,在该实施方式中,根据本发明的“预定选择标准”被设定为“定位为 距所选择的虚拟示教点距离最近的插值操作点”。然后,程序进行到步骤14,在步骤14中,检查在由此读取的插值操作点的姿态数 据被用作在步骤11中选择的虚拟示教点的姿态数据的情形中的姿态错误和干涉错误的存 在。如果存在错误,则程序进行到步骤15,在步骤15中姿态数据被修正并且程序之后返回 到步骤14。如果不存在错误,则程序进行到步骤16,在步骤16中,所产生的姿态数据被注册 为关于所选择的虚拟示教点的信息。随后,程序进行到步骤17,在步骤17中检查是否存在 未产生姿态数据的其它虚拟示教点。如果存在未产生姿态数据的虚拟示教点,程序返回到 步骤11,在步骤11中选择未产生姿态数据的虚拟示教点。如果在所有虚拟示教点都产生姿 态数据,则所产生的数据被存储为示教数据26,并且程序终止。将参照图5所示的例子描述步骤11至步骤17的程序。例如,在步骤11选择虚拟示教点T2的情形中,在步骤12显示到每个插值操作点的距离的列表(未显示)。在列表中 选择具有最短距离的插值操作点Μ4。接下来在步骤13读取插值操作点Μ4的姿态数据。如 果在步骤14没有错误,则将插值操作点Μ4的姿态数据注册为虚拟示教点Τ2的姿态数据。对于虚拟示教点Τ3、Τ4和Τ6至Τ8进行相同的工作,所形成的在虚拟示教点处数 据被存储为示教数据26,并且程序结束。在所有虚拟机器人32的虚拟示教点都注册之后,顺序地执行单独仿真和复合仿 真,以进行操作核对。如果没有问题,则所有虚拟机器人32的虚拟示教点被存储为注册的 示教数据26。
示教数据26被存储为用于每个虚拟示教附录36的文件。在示教数据26被传递 到机器人控制器以控制实际机器的机器人的情形中,示教数据26被转换成机器人控制器 可读取的格式并且之后通过PC卡28或通信传递。虚拟示教点被显示于监视器14,并且操作者可容易地确认虚拟示教点的位置。而 且,操作者还能够通过鼠标18选择虚拟示教点以显示虚拟机器人32在所选择的虚拟示教 点的姿态。而且还可以显示虚拟示教点的列表。步骤4至步骤15的程序通过机器人姿态计算部分20b进行,其它程序通过机器人 示教部分20c进行。根据依照该实施方式的机器人示教CAD装置10,通过复制包含在插值操作点(在 图5的例子中的M4、M7、M8、Mil、M12和M14)中的姿态数据来产生不包括一部分虚拟示教 点的其它虚拟示教点(在图5的例子中的T2至T4和T6至T8)的姿态数据(图4中的步 骤11至步骤17)。因此,不同于现有技术,不必手动设定所有虚拟示教点的姿态数据。由 此,与现有技术相比,用于机器人的示教数据26能够以更短的时间内更容易地产生。而且,基于CAD部分20a通过能够访问CAD部分20a的机器人示教部分20c提供 的有关虚拟车辆30的信息来设定有关虚拟示教点的末端信息。因此,能够正好使用有关虚 拟车辆30的信息,而不需要执行数据转化,能够增强虚拟车辆30在示教过程中的精度,并 且还能够快速地进行离线示教。特别是,传统地需要数个小时来进行将CAD数据传递到专 用离线示教系统的工作。但是,在机器人示教CAD装置10中,没有用于数据转化所需的时 间,能够缩短总体示教时间。此外,可以结合CAD系统和离线示教系统。因此,可以构成不那么昂贵的装置。根据该结构,通过复制包含在插值操作点中的姿态数据来产生不包括一部分虚拟 示教点的其它虚拟示教点的姿态数据。因此,不同于现有技术,不必手动设定所有虚拟示教 点的姿态数据。由此可以比现有技术所需时间更短的时间产生用于机器人的示教数据。本发明不限于前述实施方式,在不脱离本发明的范围的情况下可对其组成部件进 行各种改变和变型。而且,在前述实施方式中公开的组成部件可以任何组合方式组装来实 施本发明。例如,前述实施方式中公开的所有组成部件中的一些组成元件可以被省略。此 夕卜,在不同实施方式中的组成部件可以被适当地结合。
权利要求
1.一种机器人离线示教方法,该方法包括以彼此间隔的方式设定多个虚拟示教点,以便示教附接到虚拟空间中生产线上的虚拟 机器人上的虚拟工具的运动路径和姿态;设定所述虚拟工具在一部分虚拟示教点的姿态,其中所述一部分虚拟示教点分别至少 包括起始点和终止点;在所述一部分虚拟示教点之间执行插值操作,以使得所述一部分虚拟示教点从所述起 始点到所述终止点顺次地连接,并且在所述一部分虚拟示教点处分别采取所设定的所述虚 拟工具的姿态;在执行所述插值操作过程中,在每个预定的间隔处将所述虚拟工具的位置和姿态存储 为插值操作点;对于不包括所述一部分虚拟示教点的其它虚拟示教点中的每一个,选择任何满足预定 选择标准的所存储的插值操作点;以及对于每个所述其它虚拟示教点,读取所选择的插值操作点的姿态数据,并将所读取的 姿态数据存储为所述其它虚拟示教点的姿态数据。
2.根据权利要求1所述的方法,其中,所述预定选择标准是位于距所述其它虚拟示教 点最小距离处的插值操作点。
全文摘要
本发明涉及一种机器人离线示教方法。根据一种实施方式,该机器人离线示教方法包括设定多个虚拟示教点;设定虚拟工具在一部分虚拟示教点的姿态,其中所述一部分虚拟示教点包括起始点和终止点;在所述一部分虚拟示教点之间执行插值操作;在执行插值操作过程中在每个预定间隔处将虚拟工具的位置和姿态存储为插值操作点;针对每个其它虚拟示教点,选择任何满足预定选择标准的所存储的插值操作点;以及对于每个其它虚拟示教点,读取所选择的插值操作点的姿态数据,并将所读取的姿态数据存储为所述其它虚拟示教点的姿态数据。
文档编号G05B19/42GK102004485SQ20101026363
公开日2011年4月6日 申请日期2010年8月25日 优先权日2009年8月27日
发明者和田裕明 申请人:本田技研工业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1