著录项信息
| 专利名称 | 用于避免在协作机器人之间的碰撞的方法和控制装置 |
| 申请号 | CN03138172.3 | 申请日期 | 2003-05-30 |
| 法律状态 | 授权 | 申报国家 | 中国 |
| 公开/公告日 | 2003-12-17 | 公开/公告号 | CN1461693 |
| 优先权 | 暂无 | 优先权号 | 暂无 |
| 主分类号 | G05B19/4061 | IPC分类号 | G;0;5;B;1;9;/;4;0;6;1;;;B;2;5;J;1;9;/;0;6查看分类表>
|
| 申请人 | 库卡-罗伯特有限公司 | 申请人地址 | 联邦德国奥格斯堡
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
| 权利人 | 库卡-罗伯特有限公司 | 当前权利人 | 库卡-罗伯特有限公司 |
| 发明人 | 艾尔-侯赛恩·沃尔德 |
| 代理机构 | 中国国际贸易促进委员会专利商标事务所 | 代理人 | 郭思宇 |
摘要
本发明披露了一种用于在机器人和至少一个其它物体例如另一个机器人之间避免碰撞的方法,其中不需要用户在用于避免碰撞的机器人程序中作任何准备,例如定义公共的工作区域。此外,本发明的方法使得能够从避免碰撞的观点自动地配置工作单元。其自动地确定哪些元件具有和其它元件的可能的碰撞。因为本发明的方法基于在一个时间间隔内预测运动元件的配置,所述时间间隔足够长,使得机器能够安全地停止,然后检查冲突,不需要预先知道轨道。如果预测到碰撞,则命令机器在其路径上停止或脱离其路径而停止。用这种方式,和现有技术的其它显式的方法相结合,本发明的方法可用作安全保护。
1.一种用于避免在机器人和至少一个其它物体之间碰撞的方法, 所述方法包括定期地:
根据每个机器人关节的实际的和过去的关节位置以及速度,确定 自动或手动地控制的机器人的运动的停止时间;
预测在所述停止时间机器人的轨道的配置;
通过用于解决机器人的元件和所述其它物体的元件的冲突的距 离/冲突算法,检查预测的配置;以及
在冲突将临的情况下,停止机器人与/或所述其它物体。
2.如权利要求1所述的方法,其中使所述机器人停止在其路径上。
3.如权利要求1所述的方法,其中使所述机器人脱离其路径而停 止。
4.如权利要求1所述的方法,其中所述冲突检查涉及确定机器人 的元件的几何近似和所述其它物体之间的距离。
5.如权利要求4所述的方法,其中所述几何近似具有不同的精度 等级,在距离检查中它按照所需的精度被检查。
6.如权利要1所述的方法,其中预测关节的轨道涉及应用关系:
θi=1/2γiti,s 2+θi,0ti,s+θi,0
其中θi是关节i的预测位置;θi,0和θi,0分别是在当前时间t关节 的位置和速度;ti,s是关节i停止时间,γi是在t估算的关节的加速度。
7.如权利要求6所述的方法,其中关节i的速度利用下式由当前 时刻t的关节位置和较早时刻t-k的关节位置估算:
其中θi,-k=θi(t-k)是关节i在较早时刻t-k的位置,
t-k=t-k·Δt,其中Δt为检查时间段;并且
cf=1/(12Δt),c0=25,c1=-48,c2=36,c3=-16,c4=3。
8.如权利要求7所述的方法,其中关节i的加速度γi利用下式由 当前时刻t的关节速度和较早时刻t-k的关节速度估算:
其中θi,-k是关节i在较早时刻的速度。
9.如权利要求8所述的方法,其中所述配置预测和冲突检查涉及: 由确定关节i的停止距离,
其中θi,stop是关节i的停止距离,γi,max是关节的最大负加速度;
把停止距离加到关节实际位置上,从而获得在停止时间上的配 置;以及
确定机器人元件和所述其它物体在所述配置之间的距离。
10.如权利要求6所述的方法,其中对用于位置预测的关节位置 和速度数据应用滤波器。
11.如权利要求10所述的方法,其中所述滤波器在时域内被应用。
12.如权利要求11所述的方法,其中所述滤波器是移动平均滤波 器。
13.如权利要求1所述的方法,其中用于预测和冲突检查的配置 涉及使用至少一个神经网络,用于估算机器人的轴的停止时间。
14.如权利要求13所述的方法,其中每个机器人关节分别利用一 个神经网络。
15.如权利要求14所述的方法,其中所述神经网络的输入包括由 关节速度、关节角度、关节位置、机器人底座位置、机器人底座速度 以及工具或负载质量构成的组中的一个或几个元素。
16.如权利要求1所述的方法,其中所有获得的关于碰撞的信息 被存储在一个工作单元描述文件中,用于和负责控制所述机器人的运 动的实时操作系统通信。
17.如权利要求16所述的方法,其中所述工作单元描述文件含有 指向用于描述在工作单元内存在的所有物体所需的几何近似文件的指 针。
18.如权利要求17所述的方法,其中所述工作单元描述文件的复 制品被保持在每个控制器上即在工作单元内存在的每个协同机构上并 被更新。
19.如权利要求18所述的方法,其中所述工作单元描述文件至少 在工作单元内发生几何形状的改变。
20.如权利要求19所述的方法,其中所述几何形状的改变对应于 为机器人安装新的工具。
21.如权利要求20所述的方法,其中包括几何形状的改变的描述 的所述工作单元描述文件在实时操作系统中被更新。
22.如权利要求1所述的方法,其中在机器人和物体之间发生允 许的接触之前,建立一种联系,使得机器人和所述物体在随后的碰撞 期间不会停止。
23.如权利要求22所述的方法,其中在允许的接触操作结束之后, 所述联系被终止。
24.一种用于避免在机器人和至少一个其它物体之间碰撞的控制 装置,所述控制装置包括:
-用于根据每个机器人关节的实际的和过去的关节位置以及速 度,定期地确定自动或手动地控制的机器人的运动的停止时间的装置;
-用于定期地预测在所述停止时间机器人的轨道的配置的装置;
-用于通过用于解决机器人的元件和所述其它物体的元件的冲 突的距离/冲突算法,定期地检查预测的配置的装置;以及
用于在冲突将临的情况下,停止机器人与/或所述其它物体的装 置。
25.如权利要求24所述的控制装置,包括用于并行地运行两个操 作系统的处理器装置,其中一个是标准的PC操作系统,另一个是用 于控制机器人的运动的实时操作系统。
26.如权利要求25所述的控制装置,其中所述至少和实时操作系 统结合的处理器装置被设计用于和同一个工作单元内的其它相应的控 制装置的实时操作系统通信。
27.如权利要求26所述的控制装置,其中所述处理器装置用于运 行用于在PC和实时操作系统之间进行通信的解释程序。
28.如权利要求25所述的控制装置,其中所述处理器装置被设计 用于运行执行碰撞避免方法的程序的各个部分。
29.如权利要求28所述的控制装置,其中所述碰撞避免方法对 应于如权利要求1所述的方法。
30.如权利要求25所述的控制装置,包括和两个操作系统结合使 用的存储器单元,用于存储工作单元相关的几何数据。
31.如权利要求30所述的控制装置,还包括用于输入工作单元相 关的几何数据的输入装置。
32.如权利要求31所述的控制装置,其中所述输入装置是盘驱动 器或者网络连接装置。
技术领域\n本发明涉及一种用于避免在机器人和至少一个其它物体之间的 碰撞的方法,和一种用于避免在机器人和一个或几个其它物体之间碰 撞的用于执行本发明的碰撞避免方法的控制装置。\n背景技术\n按照一般的定义,如果两个物体A和B在同时共用同一个空间, 则这两个物体处于碰撞状态。这就是说,在A中至少具有一点,在B 中也至少具有一点,它们相对于公共的参考坐标系具有相同的坐标。\n机器人和要避免与机器人碰撞的其它物体被统称为协作机构,这 是因为它们在某种工业处理中协同操作。协同操作可以是有源的(作 为协作机构的一个例子,在一个机器人和另一个机器人协作的情况下) 或是无源的。由于现代工业机器人以相当大的速度运动,碰撞可以导 致机器人和由机器人处理的工件严重的破坏,并且可以导致代价高的 停机。因此,如果要有效地使用工业机器人,这种碰撞就必须避免。\n在由机器人和其它(可动的)物体共用的工作区域即工作单元内 可能发生多种类型的碰撞。在对碰撞进行分类时,有多个因素需要考 虑,具体地说:(I)相关物体的类型,即机器人/机器、静止物体等的 类型。(ii)碰撞的原因,即路径改变检测数据改变,编程错误等。(iii) 生产阶段,即碰撞是否发生在教导时间(手动方式)、确认时间(自 动方式)或正常生产期间(在应用最好是高速应用下的自动方式)。\n无源静止物体是一种在工作单元中固定的并具有固定的形状的 物体。无源静止物体的例子有固定的桌子,柱子等。显然,这些物体 不受任何控制器控制。不过,可以获得静止的几何模型,并储存所述 模型,使得所述碰撞可被检查。必须在机器人本体(链接)和负载(工 具或工件)之间进行区别。在机器人本体和物体之间可能有永久的潜 在的碰撞。只要工具不和物体的坐标联系,便可能在工具和物体之间 存在碰撞的可能。一旦建立联系,(工具相对于物体的坐标而运动), 除非在手动操作期间,例如在教导阶段或者在编程错误的情况下,在 工具和物体之间便没有碰撞的可能。\n一种有源的静止物体是一种在工作单元中固定的但具有可变的 形状的物体。有源静止物体的例子是夹具和调色板(可变高度的)。 通常机器人控制器不控制这种物体,因而它们没有关于它们的状态(打 开/闭合,高度等)的知识。这使得检查和这类物体的碰撞是困难的。 不过,通过把物体认为是一个其体积为由有源静止物体可能占据的最 大体积的无源静止物体,可以估算碰撞的几率。机器人本体和上述的 负载之间的区别也适用于此。\n运动的物体是一种在工作单元内其位置(位置或方位)不是固定 的物体。运动的物体的一个例子是输送器上的盒子。检查并避免和这 种物体的碰撞需要关于其位置的在线知识。\n路径改变可以是预料的和非预料的。一种预料的路径改变是一种 在处理中固有的改变,并且在已知的边界内。这种改变可以是检测数 据的结果,例如,所述检测数据使机器人在不同的周期遵从不同的路 径。非预料的路径改变是一种或大或小的改变,当假定在所有时间路 径都相同时,或者当路径超过预期的改变的某个边界时,这种路径改 变发生。当假定路径恒定时发生的改变可能是由于漂移的结果,例如。 超过预期改变的边界的惊人的改变可能是检测器故障或者不平衡误差 的结果,例如输送器上的不可靠的零件,其处于正常位置区域之外。\n此外,具有许多编程错误可以导致碰撞。这些碰撞可以在确认阶 段或在正常生产阶段发生。\n碰撞也可以由于用户错误或意外运动而在点的教导或修饰期间 发生。在点被教导或修饰之后,因为意外的行为或者编程错误,在确 认期间可能发生碰撞。即使在教导/确认阶段没有发生碰撞,在正常生 产期间,因为路径改变或者在较早的阶段期间没有出现的编程错误, 仍然可能发生碰撞。之所以发生碰撞,是因为同时满足了几种不寻常 的条件。\nUS6212444披露了一种关于工业机器人的避免冲突的方法。在这 个文件中,机器人操纵者和另一种协同机构通过限定公共的区域来避 免彼此冲突。直到一个机构离开公共区域,另一个机构才能进入。不 过,如果编写的控制软件不正确,用于避免碰撞的公共工作区域方法 则失败,因而在上述的编程错误的情况下可能导致严重碰撞。\n其它的方法适用于离线编程,其中在工作单元内产生机器(机器 人和其它的协同机构)的无碰撞路径。不过,这些方法需要机器人轨 道的先验知识。此外,在工作单元内所有机器的轨道必须是重复的, 即,轨道必须不受外部检测器或超越的影响。\n现有的机器人控制器通常在事实之后检测碰撞。通过利用机器的 动态模型,确定模拟电动机电流。如果实际电流超过模拟电流一个确 定的门限,则假定发生了碰撞,并且关闭系统,从而使破坏最小。\n发明内容\n本发明旨在解决机器人和机器人的环境冲突问题,同时避免上 述的现有技术的缺点。\n为此,本发明提供一种上述类型的方法,所述方法包括定期地: 根据每个机器人关节的实际的和过去的关节位置以及速度,确定自动 或手动地控制的机器人的运动的停止时间;预测在所述停止时间机器 人的轨道的配置;通过用于解决机器人的元件和所述其它物体的元件 的冲突的距离/冲突算法,检查预测的配置;以及在冲突将临的情况下, 停止机器人与/或所述其它物体。\n在本发明的范围内,所述预测的配置被这样确定:利用所述停止 时间,并假定机器人利用其现在的加速度由其现在的速度和位置继续 运动。因而预测的轨道一般具有不为零的速度(a speed different form zero),在这种情况下,所述的轮廓被称为停止轮廓,尽管其一般具 有不为零的速度。\n为了避免碰撞,不仅在现在时间检查所述配置以便避免碰撞,而 且在任何不希望的接触之前使机器安全停止所需的足够长的将来时间 检查所述配置。\n按照这种方法的进一步的发展,使机器人在其路径上停止。因而 可以从停止位置直接恢复机器人的操作,而不需进一步的位置校正或 工件报废。此外,使机器人在其路径上停止能够确保在使机器减速到 停止时不发生碰撞。\n在本发明的另一个实施例中,使机器人脱离其路径而停止。这意 味着每个轴从其实际速度跟随一个可配置的轮廓减速到0。这可以通 过短路制动来实现,其中通过机械制动和发电机操作使电动机减速。 如果因为斜坡太陡或者其它原因不能使电动机在路径上停止,则建议 采用这种制动方法。\n为了预测或检查碰撞,必须能够确定机器人的元件和其它物体之 间的距离。这涉及确定有关实体的几何近似之间的距离,所述实体可 以具有简单的形状例如盒子或球形,或者具有复杂的多面体形状,即 多面的闭合的几何轮廓。确定凸出的多面体之间的距离的最广泛使用 的方法是Gilbert-Johnson-Keerthi(GJK)方法,这是一种迭代方法,其 细分几何体成为单纯形,直到其收敛于两个物体之间的最小距离。在 近似的精度和本发明中使用的碰撞检测算法的性能(执行时间)之间 存在折中。例如,利用封闭的圆柱体、盒子或球体近似所有类型的机 器人是相当保守的,但是能够使得快速地执行碰撞检测算法。在另一 方面,利用多面体近似各种机器人,这种较精确地近似链接的形状导 致碰撞检测算法的性能的降低。因此,按照本发明的优选实施例,几 何冲突检测涉及确定确定几何近似之间的距离,其具有不同的精度等 级,在距离检查中其按照所需的精度被检查。例如,如果封闭的形状 彼此距离较远,则没有必要检查更精确的近似。\n几何近似是一种挑战性的费时的工作,不过,已经具有可得到的 商业软件,其自动地把CAD模型转换成可用于碰撞检测算法的几何文 件。\n避免碰撞涉及精确地确定轨道。因为工业机器人的运动轮廓足够 平滑,可以使用相当简单配置的预测算法预测轨道。由在现在和过去 时间每个关节i的实际位置和实际速度,可以按照下式根据将来的关 节位置θi预测关节的轨道:\nθi=1/2γiti,s 2+θi,0ti,s+θi,0 (1)\n其中θi,0和θi,0分别是在当前时间t关节的位置和速度;γi是在t 估算的关节的加速度,ti,s是停止时间。关节的加速度可以由在时刻t 时的关节速度和较早的时刻t-k的关节速度计算, t-k=t-k.Δt(k=1,2,3,...),其中Δt是检查的时间间隔,其可以等于机器人 控制器的采样周期,可以取大约12毫秒的值。关节位置θ和关节速度 0分别以角度位置(度)和角速度(度/秒)给出。\n按照本发明的优选实施例,关节i的速度θi利用Gear方法由当 前时刻t的关节位置θi,0和较早时刻t-k的位置估算:\n\n其中θi,-k=θi(t-k)并且\ncf=1/(12Δt),c0=25,c1=-48,c2=36,c3=-16,c4=3\n类似地,关节i的加速度γi利用下式由当前时刻t的关节速度θi 和较早时刻t-k的速度估算,t-k=t-k·Δt:\n\n进行了试验预测精度的研究,已经发现,对于典型机器人的应用, 直到240毫秒的预测时间是足够的。\n按照本发明的另一个实施例,配置预测和冲突检查涉及:由\n确定关节i的停止距离,其中γi,max是关节的 最大负加速度;把停止距离θi,stop加到实际位置上从而获得在停止时间 上的配置;以及确定机器人元件和所述其它物体之间在所述配置的距 离。这是一种相当保守的方法,例如,机器人的第一关节的最大速度 和最大减速度可以分别是240度/秒和880度/秒2。因而,从全速开始 的关节的停止角大约是33度。因而,由于大的停止距离,即使计划的 轨道实际上是无碰撞的,也可能在停止配置下预测到碰撞。\n为了增加位置预测的精度,按照本发明的方法的进一步发展,对 用于位置预测的关节位置和速度数据应用滤波器。优选地,在时域内 对数据应用所述滤波器。在本发明的优选实施例中,滤波器被设计成 移动平均滤波器,其有效地对数据进行平滑,因而滤波器主要滤除尤 其是在机器人运动突然改变方向(急拉)时出现的高频分量。可以使 滤波器的长度适应于所需的预测精度或者运动轮廓的不规则性。另一 种方案是,也可以在频域内进行滤波。\n机器人轴的停止时间取决于以下参数:\n-轴的速度:速度越高用于使机器人停止所需的时间越长。\n-允许的最大减速度:允许的最大减速度越大,用于使机器人停 止所需的时间越短。\n-机器人的配置:因为机器人的惯性和配置有关,给定轴的停止 时间和其余的轴的值有关,尤其是运动链系下方的轴,即朝向机器人 的末端的轴。\n-有效负载:负载越重,因而其惯性越大,用于使机器人停止所 需的时间越长。\n停止时间可以由一个查看表来估算。不过,如果给定和轴的停止 时间有关的参数的数量,本发明则提供一种机构,该机构被设想用于 以适合于实时应用的方式估算轴的停止时间。\n因而,为了进一步提高停止时间估算的精度和速度,并且为了使 这种估算更加灵活和更加适应于特定的情况,按照本发明的进一步的 发展,用于预测和冲突检查的配置涉及使用至少一个神经网络,用于 估算机器人的轴的停止时间。在优选实施例中,一个神经网络被用于 每个机器人关节。\n在这方面,按照本发明的方法使用多层的向后传播的神经网络 (NN)。所述神经网络取影响轴的停止时间的参数作为输入,并产生 轴的停止时间的估算。所述神经网络利用从机器人测量的数据进行训 练。设置的训练数据应当覆盖参数的整个工作空间,所述参数包括由 关节速度、关节角度、关节位置、机器人底座位置、机器人底座速度 以及工具或负载质量构成的组中的一个或几个元素。一旦神经网络被 训练,它们便可以用于精确地估算停止时间。\nUS6356806B1/DE19857436披露了一种标准的PC操作系统和用 于机器人控制的实时操作系统的组合应用。机器人和工件的几何形状 在外部CAD或者离线模拟系统中被近似,并且所得的输出文件和机器 人控制器的标准PC操作系统一道被存储。为了形成几何文件,所述 文件通常利用PC操作系统产生并和所述操作系统一道被保持,当使 用具有这种双重的机器人控制单元的按照本发明的方法时,所述几何 文件可以被在实时操作系统下运行的任务访问,所有所需的关于碰撞 的信息最好被存储在工作单元描述文件中,以便和负责控制机器人的 运动的实时操作系统通信。\n在本发明的方法的进一步发展中,工作单元描述文件含有指向用 于描述在工作单元内存在的所有物体所需的几何近似文件的指针。\n按照本发明的方法的另一个实施例,工作单元描述文件的复制品 被保持在每个控制器上即在工作单元内存在的每个协同机构上并被更 新。此外,工作单元描述文件可以至少在工作单元内发生几何形状的 改变,例如,对机器人安装新的工具时被更新。这也可以在实时操作 系统中进行。\n大部分机器人应用需要一些形式的允许的被控制的接触,例如材 料处理、焊接等。因此,控制器必须知道这些接触不被当作危险的导 致机器人停止的碰撞处理。为此,在机器人和物体之间发生允许的接 触之前,例如在处理操作期间,必须建立一种联系,使得机器人和物 体在随后的“碰撞”期间不会停止。在允许的接触操作结束之后,这 种联系被终止。\n在这方面,重要的是区别在工作单元中存在的所有机器都沿着已 知的预定的轨道运动的情况和机器的轨道例如根据检测的信息(例如 摄像机等)实时地被修改的情况。其中前者被称为同步情况,后者被 称为异步情况。这种情况也存在于例如机器人和由机器人使用的工具 之间的关系中。使工作单元的元件和另一个元件相联系,如果前者在 后者上固定的一个坐标系内运动的话。在这种情况下,两个元件之间 的相对运动是同步的,并且在建立所述联系时两个元件之间不可能碰 撞,即,一个元件例如第一机器人的运动将引起另一个元件例如第二 机器人的相应的运动。因而,两个元件之间的关系是恒定的。在联系 建立之前或者在联系被终止之后,可能存在碰撞的可能。使要和工件 接触的工具和所述工件相联系。因此,然后其相对于固定在工件上的 坐标系运动。此时,这种操作是同步的,因而在工具和工件之间不可 能碰撞。异步情况可以表示在工厂中使用工业机器人时高达90%的情 况。\n为了利用机器人使用上述的方法避免在机器人和至少一个其它 物体之间的碰撞,本发明还提供一种控制装置,包括用于根据每个机 器人关节的实际的和过去的关节位置以及速度,定期地确定自动或手 动地控制的机器人的运动的停止时间的装置;用于定期地预测在所述 停止时间机器人的轨道的配置的装置;用于通过用于解决机器人的元 件和所述其它物体的元件的冲突的距离/冲突算法,定期地检查预测的 配置的装置;以及用于在冲突将临的情况下,停止机器人与/或所述其 它物体的装置。\n本发明的控制单元应当被称为碰撞避免管理器(CAM)。CAM 是一种控制器,其负责检测工作单元内的至少两个元件之间的碰撞, 并对碰撞作出反应。在工作单元内可以具有一个以上的CAM。\n在另一个实施例中,按照本发明的控制装置包括用于并行地运行 两个操作系统的处理器装置,其中一个是标准的PC操作系统,另一 个是用于控制机器人的运动的实时操作系统;所述处理器装置用于运 行用于在PC和实时操作系统之间进行通信的解释程序。用这种方式, 向用户提供一种标准的用户接口,其可以大大简化机器人的编程。在 优选实施例中,所述处理器装置被设计用于运行执行碰撞避免算法的 程序的各个部分。在另一个实施例中,按照本发明的控制装置包括和 两个操作系统结合使用的存储器单元,用于存储工作单元相关的几何 数据。\n如上所述,所有关于碰撞的信息(例如可能的碰撞,几何文件的 指针等)以被称为工作单元图(WCD)的专用工作单元描述文件的形 式被存储在CAM的存储单元内,因而,对于每个单元的元件,关于 其可能的碰撞的信息和几何文件被存储在工作单元内。所述信息被加 载到实时控制上,使得上述的碰撞避免任务(CAT),即结合本发明 的方法的机器人的运动的实际预测,和其在路径上或脱离其路径的停 止,可以实时地访问所述信息。\n为了在两个操作系统之间进行碰撞信息通信,按照本发明的控制 单元提供解释程序或解释器,最好在PC操作系统下运行。\n因为结合多个碰撞监视机器人等,工作单元可以包含几个CAM, 按照本发明的控制装置的进一步发展包括至少和实时操作系统结合的 处理器装置,其被设计用于和同一个工作单元内的其它相应的控制装 置的实时操作系统通信。这样确定的交互控制器通信任务从合适的机 器人控制器(特定的CAM对其检测碰撞的控制器)接收数据。\n在机器人之间的协同操作的许多方面要求控制器之间的通信。在 这种情况下,需要把不同的数据传递给CAM,以便避免碰撞而工作。 CAM需要知道工作单元内的元件配置。因此,对于CAM监视的每个 机器人或物体,以下的参数需要被传递:\n-关节值:这些值确定机器人相对于其底座的配置;\n-底座坐标:其和关节值相结合,确定机器人在工作单元内的配 置。注意如果机器人安装在轨道上,例如,则底座可以运动;\n-关节速度和底座速度:供在碰撞预测算法中使用。注意,底座 框架速度不容易从控制器得到,必须使用从使机器人底座运动的外部 机器获得的数据来获得或估算;\n-部件改变;\n-工具改变;\n-目标改变;以及\n-可能的碰撞改变。\n在由CAM控制的机器人上的工具和部件的改变通过解释程序被 传递到控制器的实时部分上。\n按照本发明的另一个实施例,控制单元还包括用于输入工作单元 相关的几何数据的输入装置。用这种方式,外部产生的CAD几何文件 可以被容易地提供给CAM。所述输入装置例如可以是盘驱动器或者网 络连接装置。\n由上述显然可见,和现有技术相比,本发明具有几个优点:\n不需要用户在用于避免碰撞的机器人程序中作任何准备,例如对 公共的工作区域编程。和现有技术的其它显式的方法相结合,本发明 的方法可用作安全保护。\n此外,本发明的方法使得能够从避免碰撞的观点自动地配置工作 单元。其自动地确定哪些元件具有和其它元件的可能的碰撞。\n因为本发明的方法基于在一个时间间隔内预测运动元件的配置, 所述时间间隔足够长,使得机器能够安全地停止,然后检查冲突,不 需要预先知道轨道。如果预测到碰撞,则命令机器在其路径上停止或 脱离其路径而停止。\n因为特别是教导和确认阶段固有低的速度,停止时间和距离非常 短。因而本发明的方法尤其适用于这些情况。\n由编程错误或者意外的大的路径改变而引起的碰撞导致在一般 情况下总是相互距离较远的物体之间的接触。在这种情况下,预测一 个计划的或停止的配置实际上可能过于精细并且可能是不需要的。此 时监视各个物体之间的距离,并且当它们彼此接近超过一个预定距离 时令其停止便足够了。只要距离门限被选得足够大,这简化了在任何 阶段和任何运动速度下的接近工作。否则,必须采用符合上述要求的 更精确的方法。\n附图说明\n下面参照附图说明本发明的优选实施例,其中:\n图1是按照本发明的碰撞避免方法的流程图;\n图2是用于执行本发明的机器人控制系统的方块图;\n图3是分别表示机器人及其元件或链接的不同的几何近似的示意 图;\n图4是表示接近一个障碍物的机器人运动的示意图;\n图5表示两个机器人的碰撞的机器人运动的数值模拟结果;以及\n图6是在按照本发明的碰撞避免方法中用于停止时间预测的3层 神经网络的示意图。\n具体实施方式\n图1表示机器人运动M,其由已知的机器人控制器(未示出)控 制,并且要由按照本发明的被称为碰撞避免方法1.0的方法监视,以 便避免碰撞。在启动/初始化阶段1.1期间,确定在机器人、工具以及 静止的物体,即被固定在工作单元内的物体之间的可能的碰撞。工作 包络,即可由机器人进入的工作空间的包络表面被用于确定是否具有 和其它机器人与/或静止物体的可能的碰撞。此后,在机器人运动M 期间,在由时间间隔Δt分割的时间t定期地由本发明的方法1.0执行 碰撞控制C。\n来自机器人与/或工作单元的检测数据S,例如机器人关节的角度 和速度,摄像机图像等被提供给碰撞避免方法1.0,并和其它参数一道 被利用,这些参数例如包括有效载荷或者机器人配置,用于由图6所 示的神经网络估算停止时间ts1.2。\n由估算的时间ts,算法预测1.3预测在停止时间内的机器人的轨 道,然后被用于冲突检查1.4,其涉及检查在工作单元内的物体或元件 之间的距离。如果确定将来要发生碰撞,则机器人被停止1.5a。这可 以在机器人路径上进行,或者不在机器人路径上进行,例如通过简单 的机器制动。如果没有碰撞1.5b,则开始新的碰撞控制周期C’。\n参照图1所述的碰撞避免方法利用图2所示的控制系统执行,该 系统被称为碰撞避免管理器(CAM)2.0,2.0’,其具有关于在工作单元 2.1内的其它元件的知识,如下所述。\n在按照图2的工作单元内部,具有几个机器人或协同机构,其中 只示出了已知的(电源和运动)控制器2.2,2.2’,CAM2.0,2.0’包括通 过在呈微处理器形式的一个或几个处理器装置PM1、PM2上执行标准 的PC操作系统例如微软的WindowsTM和实时操作系统例如 VxWorksTM而确定的PC部分PC和实时部分RT。在这里所示的实施 例中,机器人控制器2.2,2.2’的情况和上述的相同。\nCAM2.0,2.0’的PC部分PC包括处理器装置PM1和存储装置SM (以举例的方式表示),用于执行和/或存储与时间无关的几何文件 2.3,工作单元图(WCD)2.4,其含有在编程的机器人运动期间关于 碰撞的所有信息,以及编码机器人的运动的专用程序2.5。CAM2.0,2.0’ 的实时部分RT包括处理器装置PM2和存储装置SM(以举例的方式 表示),用于执行和/或存储解释程序2.6,用于向RT传递关于由 CAM2.0,2.0’控制的机构的动态部分/工具的改变2.7。RT还保持几何 数据2.8,其被碰撞避免任务(CAT)2.9利用。CAT2.9接收来自交 互控制器通信任务2.10的输入,其连接一个CAM2.0的RT和不同的 CAM的RT和机器人控制器2.2,2.2’。在所示的实施例中,CAM2.0 的PC和RT共用公共的存储装置SM。\n描述工作单元2.1的几何文件2.11借助于CAD或离线模拟在工 作单元2.1内或者在工作单元以外被产生。通过网络链接或盘驱动器 (在后一种情况下,利用可除去的数据介质,未示出)向CAM2.0,2.0’ 的PC输入几何文件2.11的数据输入2.12。\n因为机器人控制器2.2,2.2’具有和常规的控制器相同的结构,故 省略其详细说明。关于包括两个操作系统的机器人控制器2.2,2.2’的细 节可以在US6356806B1/DE198 57 436A1中找到。\n由提供的几何文件2.3产生的所有碰撞信息被存储在WCD2.4 中。在其内容中,具有两种可能的碰撞:条件可能碰撞(CPC)和非 条件可能碰撞(U-CPC)。CPC反应当只有在某个环境下在工作单 元2.1中的两个元件之间存在可能碰撞时的情况。例如,部件X可能 只有在其被第一机器人使用工具Z处理并且工具Y被安装在第二机器 人上时才可能和工具Y碰撞。在所有其它情况下,部件X和工具Y距 离较远,不可能发生碰撞。U-CPC反应在元件之间随时都存在可能 碰撞时的情况。例如,如果工作空间即两个机器人可进入的区域在所 有时间内相互重叠,则在每个机器人的关节之间,可能存在U-CPC。 在WCD2.4中的特定几何文件的属性指向由实体,即工作单元2.1的 内容利用的几何近似文件。注意,在每个CAM2.0,2.0’上,保持并更 新WCD2.4的局部子组。因此,每个CAM2.0,2.0’都知道在工作单元 2.1中的所有可能的条件。当工作单元的几何结构发生改变例如工具改 变时,和WCD2.4结合使用的一个专用程序编辑器(未示出)便在程 序2.5中插入一个相应的指令,其使得解释程序2.6更新RT上的动态 工具/部件信息2.7(含有几何文件2.3的时间相关的部件),然后,其 可以实时地由负责实际预测机器人的运动并在危险情况下使机器停止 的CAT2.9访问。\n包含在CAM2.0,2.0’的RT中的动态的工具/部件信息2.7实际上 包括指向几何数据2.8的指针,其也被包含在RT中,并且可由CAT2.9 实时访问,以便有效地避免碰撞。CAT2.9的执行也受内部控制器通信 任务2.10的影响,对在网络2.1中存在的其它CAM2.0’与/或机器人控 制器2.2,2.2’的RT提供链接。这通过直接通信或者通过改变CAM2.0 的RT内部的几何数据2.8与/或动态的部件/工具信息2.7来实现。\n现在参看图3,其中以简化的示意的方式示出了用于近似机器人 3.0(图3a)的关节的不同方式:在图3b(a)中,哑铃形状的机器人关 节3.1利用封闭的盒子或圆柱体3.2近似,图3b(b)表示利用球3.3近 似相同的关节3.1。这种近似3.2,3.3就使用的空间优化而论是相当保 守的,但是由于其几何形状简单,使得能够加快碰撞确定算法的执行 时间。由较复杂的多面体3.4即具有多个平面的近似几何轮廓作为关 节的近似可以得到较高的近似精度,但是就执行的速度而论,需要降 低碰撞确定算法的性能(图3b(c))。因此,本发明的方法优先使用具 有不同精度值3.2-3.4的分等级近似。如果在工作单元2.1内机器人3.0 的关节3.1的闭合形状3.2-3.4相互距离较远,则不需要CAT2.9检查 更精确的近似3.4,其只对于近的碰撞才被检查。\n机器人关节3.1的几何近似3.2-3.4被存储在几何文件2.3内,因 而在CAM2.0,2.0’的存储装置SM内部的几何数据2.8可以被执行实际 的碰撞避免算法的CAT2.9实时地访问。\n利用成熟的技术例如Gilbert-Johnson-Keerthi方法进行冲突检 查,这种方法是一种迭代方法,该方法把几何形状细分成单纯形,直 到其收敛于两个物体之间的最小距离,这里不进行说明。\n在按照图4的示意图中,物体4.0例如机器人关节平行于水平表 面4.1朝向垂直壁4.2运动。当预测到和另一个物体4.0’碰撞时,则在 路径P上停止,这便避免了物体4.0和4.0’之间的碰撞。脱离其路径P 而停止,避免了碰撞,不过,可能导致和水平表面4.1的碰撞。还注 意到,预测到和表面4.1的碰撞将触发一个不需要的假报警。因此, 本发明的方法优选地预测和停止机器人在路径上的运动。\n为了试验按照本发明的碰撞避免方法,进行了在一个公共的工作 单元2.1内的如图3b所示的两个相同的机器人3.0的运动的数值模拟。 机器人3.0的每个关节3.1被模拟成一系列的球体3.3。每个机器人3.0 的路径P,P’由一系列插入有立体的花键的连接角确定。停止时间ts 假定是100毫秒。\n图5表示模拟的结果。在第一个例子中,两个机器人的部件发生 碰撞。作为时间函数的机器人之间的距离如图5a所示。图5b表示当 接通碰撞避免管理器时机器人之间的距离d。机器人的相对运动在碰 撞之前(对于所有的t值d>0)被CAM停止。在另一个模拟中,机器 人的遵从这样的路径,所述路径使它们相互距离为0.5毫米而没有碰 撞。此处的目的是检查是否发生假报警。图5c表示两个机器人如何接 近然后又相互离开。当碰撞检测特征接通时,在路径上没有预测到碰 撞,因此,机器不必停止,如在实际上希望的那样。如果使机器人保 持一个0.5毫米的距离代替前面按照图5c说明的接触后继续前进的情 况,则模拟的结果是类似的,即没有预测到碰撞,并且没有机器被命 令停止。\n在参照图5所述的模拟中,停止时间假定具有一个固定值。另一 种方案是,停止时间可以从预先存储的查阅表中取得。不过,为了以 适合于实时应用的方式估算轴的停止时间,本发明提出使用神经网络 NN,用于监视机器人的每个关节。一种用于估算典型的工业机器人的 轴的停止时间的典型的神经网络如图6所示。\n神经网络NN是一种计算机体系结构,其中多个基本的处理器6.0 被连接用于信息的并行处理,因而形成一个网络。神经网络的结构是 从人脑的结构得到的。\n神经网络尤其适用于模拟人的行为的任务,例如图形检测。这些 是本领域熟知的,这里不再详细说明。\n用于工业机器人的不同轴的神经网络NN由基本处理器6.0的多 个层面L1,L2,L3或者在层面之间由信号路径6.1连接的节点构成。 层面L1,L2,L3分别被称为输入层、中间层和输出层。在输入层L1 上的节点6.0用于输入和轴的停止时间有关的参数,例如轴的速度θ和 有效载荷的质量m。这个信息通过网络NN传播,并在输出层L3产生 轴的停止时间ts的估算值,用于按照本发明的碰撞检测。\n标号表\n1.0 碰撞避免方法\n1.1 启动/初始化阶段\n1.2 停止时间估算\n1.3 配置预测\n1.4 碰撞/冲突检查\n1.5a 机器人停止\n1.5b 运动继续\n2.0,2.0’ 碰撞避免管理器CAM\n2.1 工作单元\n2.2,2,2’ 机器人控制器\n2.3 几何文件\n2.4 工作单元描述文件/工作单元描述图WCD\n2.5 程序\n2.6 解释程序\n2.7 动态工具/部件改变\n2.8 几何形状时间\n2.9 碰撞避免任务CAT\n2.10 交互控制器通信任务\n2.11 几何文件产生\n2.12 数据输入\n3.0 机器人\n3.1 机器人链接/元件\n3.2 链接近似(盒子,圆柱体)\n3.3 链接近似(球体)\n3.4 链接近似(多面体)\n4.0,4.0,’ 物体\n4.1 水平面\n4.2 垂直壁\n6.0 节点\n6.1 信号通路\nC,C’ 碰撞控制周期\nd 距离\nL1 输入层\nL2 中间层\nL3 输出层\nM 机器人运动\nm 有效负载质量\nNN 神经网络\nP,P’ 路径\nPC 标准PC部分/操作系统\nPM1,PM2 处理器装置\nRT 实时部分/操作系统\nS 检测器数据\nSM 存储装置\nt 时间\nts 停止时间\nΔt 时间间隔\nγ 加速度\nθ 角度\nθ 速度
法律信息
- 2008-04-09
- 2005-07-13
- 2003-12-17
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
1998-03-10
| | |
2
| | 暂无 |
1993-03-17
| | |
3
| | 暂无 |
1998-12-12
| | |
4
| | 暂无 |
1999-11-10
| | |
5
| | 暂无 |
1992-03-11
| | |
6
| | 暂无 |
1993-09-24
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 1 | | 2010-09-16 | 2010-09-16 | | |
2 | | 2012-06-01 | 2012-06-01 | | |