首页 / 专利库 / 多媒体工具与应用 / 流式传输 / 机器人高频位置流式传输

机器人高频位置流式传输

阅读:1027发布:2020-05-28

专利汇可以提供机器人高频位置流式传输专利检索,专利查询,专利分析的服务。并且本 发明 公开了 机器人 高频 位置 流式传输 。一种方法和系统,高频地将机器人工具中心点位置流式传输到外部处理器。该方法包括以下步骤:使用机器人 控制器 中的中断服务例程读取 机器人关节 编码器 数据;基于编码器数据,计算工具中心点位置;并在高优先级任务中将计算出的位置数据发送到网络套接字。与 现有技术 方法的更长时间相比,本方法以快速且一致的时间间隔实现工具中心点和/或关节位置通信。例如用于另一机器的处理器或控制器的下游装置读取所传送的工具中心点和/或关节位置数据,并使用其来控制其自身装置的操作。从外部处理器流式传输的高速运动命令可以以类似的方式用于控制机器人。,下面是机器人高频位置流式传输专利的具体信息内容。

1.一种用于机器人高频位置流式传输的方法,所述方法包括:
提供与机器人通信的机器人控制器,所述机器人控制器包括处理器和存储器,所述机器人控制器还与机器控制器通信;
在检测到中断信号时,在所述机器人控制器中的处理器上执行中断服务例程(ISR)模,其中,所述中断服务例程(ISR)模块被编程为确定工具中心点位置;
在每次执行所述中断服务例程(ISR)模块时,向所述机器人控制器中的缓冲器提供所述工具中心点位置和对应的时间戳,其中,每个工具中心点位置和对应的时间戳形成数据集;并且
由所述处理器上运行的通信任务从所述缓冲器读取所述数据集,并将所述数据集发送到所述机器人控制器的网络端口。
2.根据权利要求1所述的方法,其中,在每次检测到所述中断信号时,所述中断服务例程(ISR)模块执行以下步骤,包括:
读取机器人关节位置数据;
基于所述关节位置数据,使用正向运动学计算来计算机器人位置配置;并且基于所述机器人位置配置和附接到机器人腕部的工具的形状,确定所述工具中心点位置,包括将所述工具中心点位置转换为世界笛卡尔坐标系
3.根据权利要求2所述的方法,其中,由所述机器人上的关节编码器提供所述机器人关节位置数据。
4.根据权利要求3所述的方法,还包括:预处理来自所述关节编码器的信号,其中,预处理包括数字信号处理。
5.根据权利要求2所述的方法,其中,所述工具中心点位置包括世界笛卡尔坐标系中的三个正交位置值和三个定向。
6.根据权利要求1所述的方法,其中,由系统时钟提供所述中断信号。
7.根据权利要求1所述的方法,还包括:由所述机器控制器从所述机器人控制器的网络端口读取所述数据集,基于所述工具中心点位置制定命令,并向机器发送所述命令以供所述机器执行。
8.根据权利要求1所述的方法,还包括:由所述机器人控制器从所述机器控制器接收命令,在所述中断服务例程(ISR)模块中处理所述命令,并向所述机器人发送指令。
9.根据权利要求1所述的方法,其中,所述机器人控制器中的处理器还执行命令内插例程,并且所述中断服务例程(ISR)模块的执行周期时间快于且独立于所述命令内插例程的执行。
10.一种用于机器人高频位置流式传输的方法,所述方法包括:
提供与机器人通信的机器人控制器,所述机器人控制器包括处理器和存储器,所述机器人控制器还与机器控制器通信;
在检测到中断信号时,在所述机器人控制器中的处理器上执行中断服务例程(ISR)模块,其中,所述中断服务例程(ISR)模块被编程为执行以下步骤,包括:读取机器人关节位置数据,基于所述关节位置数据,使用正向运动学计算来计算机器人位置配置,并且基于所述机器人位置配置和附接到机器人腕部的工具的形状,确定工具中心点位置;
在每次执行所述中断服务例程(ISR)模块时,向所述机器人控制器中的缓冲器提供所述工具中心点位置和对应的时间戳,其中,每个工具中心点位置和对应的时间戳形成数据集;
由所述处理器上运行的通信任务从所述缓冲器读取所述数据集并将所述数据集发送到所述机器人控制器的网络端口,其中,所述网络端口使用用户数据报协议(UDP);并且由所述机器控制器从所述机器人控制器的网络端口读取所述数据集,基于所述工具中心点位置制定命令,并向机器发送所述命令以供所述机器执行。
11.根据权利要求10所述的方法,其中,由系统时钟定期提供所述中断信号。
12.根据权利要求10所述的方法,还包括:由所述机器人控制器从所述机器控制器接收命令信号,在所述中断服务例程(ISR)模块中处理所述命令以定制指令,并向所述机器人发送所述指令。
13.一种机器人高频位置流式传输系统,所述系统包括:
机器人;
机器控制器,基于机器人工具中心点位置数据,控制机器与所述机器人同步工作;以及与所述机器人和所述机器控制器通信的机器人控制器,所述机器人控制器包括处理器和存储器,其中,所述处理器被配置为:
在检测到中断信号时,执行中断服务例程(ISR)模块,其中,所述中断服务例程(ISR)模块执行以下步骤,包括:读取机器人关节位置数据,基于所述关节位置数据,使用正向运动学计算来计算机器人位置配置,并且基于所述机器人位置配置和附接到机器人腕部的工具的形状,确定工具中心点位置;
在每次执行所述中断服务例程(ISR)模块时,向所述机器人控制器中的缓冲器提供所述工具中心点位置和对应的时间戳,其中,每个工具中心点位置和对应的时间戳形成数据集;并且
由通信任务从所述缓冲器读取所述数据集并将所述数据集发送到所述机器人控制器的网络端口,以供通信至所述机器控制器。
14.根据权利要求13所述的系统,其中,由系统时钟定期提供所述中断信号。
15.根据权利要求13所述的系统,其中,由所述机器人上的关节编码器提供所述机器人关节位置数据。
16.根据权利要求13所述的系统,其中,所述工具中心点位置包括世界笛卡尔坐标系中的三个正交位置值和三个角定向。
17.根据权利要求13所述的系统,其中,所述机器控制器从所述机器人控制器的网络端口读取所述数据集,基于所述工具中心点位置制定命令,并向所述机器发送所述命令以供所述机器执行。
18.根据权利要求13所述的系统,其中,所述机器人控制器中的处理器还被配置为:从所述机器控制器接收命令,在所述中断服务例程(ISR)模块中处理所述命令以定制指令,并向所述机器人发送所述指令。

说明书全文

机器人高频位置流式传输

[0001] 交叉引用相关申请
[0002] 本申请要求于2017年5月22日提交的标题为ROBOT HIGH FREQUENCY POSITION STREAMING的美国临时专利申请序列号62/509,569的优先权日的权益。

技术领域

[0003] 本公开总体上涉及工厂机器人控制/通信领域,并且更具体地,涉及一种用于高频地将机器人工具中心点位置流式传输到外部处理器的方法,其中,该方法包括:使用机器人控制器中的中断服务例程来读取机器人关节编码器数据;基于该编码器数据,计算工具中心点位置;并在高优先级任务中将计算出的位置数据发送到网络套接字。

背景技术

[0004] 机器人机器广泛用于制造和工厂车间环境中,其中,机器人用于重复性且经济高效地执行诸如材料移动、电弧焊接、激光焊接激光切割、材料分配等任务。许多这种机器人执行的任务需要与另一部件的运动或另一工具的任务序列同步。例如,在适当地定位一个或多个部件并且也适当地定位焊接激光器或杆之前,不能执行焊接操作。此外,由于机器人及其控制器的改进,执行任务的速度增加。对于工厂操作员来说,速度增加是有利的,因为在给定的时间内加工更多的部件会导致每个部件的成本更低。此外,随着对于部件质量需求的增加,需要更精确地执行诸如切割和焊接等机器人任务。
[0005] 上述任务同步需要机器人将其工具中心点位置传送给另一机器人或处理装置。为了满足上面讨论的任务速率和精度要求,需要高频地传送工具中心点位置。然而,用于计算和传送工具中心点位置的现有技术已经不能满足所需的通信频率发明内容
[0006] 根据本公开的教导,公开了一种方法和系统,用于高频地将机器人工具中心点位置流式传输(streaming)到外部处理器。该方法包括:使用机器人控制器中的中断服务例程来读取机器人关节编码器数据;基于编码器数据,计算工具中心点位置;并在高优先级任务中将计算出的位置数据发送到网络套接字。与现有技术方法的更长时间相比,该方法以快速且一致的时间间隔实现工具中心点和/或关节位置通信。下游装置(例如,用于另一机器的处理器或控制器)读取所传送的工具中心点和/或关节位置数据,并使用其来控制其自身装置的操作。从外部处理器流式传输的高速运动命令可以以类似的方式用于控制机器人。
[0007] 通过结合附图进行的以下描述和所附权利要求,目前公开的方法和系统的额外特征将变得显而易见。

附图说明

[0008] 图1是工厂车间操作的图示,其中,机器人与另一机器同步执行任务;
[0009] 图2是示出在机器人、机器人的控制器和另一机器的控制器之间的连通性的方框图,其中,需要工具中心点位置流式传输;
[0010] 图3是示出根据本公开的实施例的机器人控制器的部分软件架构和其中针对高频工具中心点位置流式传输执行的处理步骤的方框图;以及
[0011] 图4是根据本公开的实施例的用于高频地从机器人控制器向另一装置传送工具中心点位置的方法的流程图

具体实施方式

[0012] 针对机器人高频工具中心点位置流式传输的本公开的实施例的以下讨论本质上仅仅是示例性的,决不旨在限制所公开的技术或其应用或用途。例如,在工厂车间部件处理的上下文中描述该技术,但该技术同样适用于任何其他机器人任务或应用。就所公开的方法而言,所呈现的步骤本质上是示例性的,因此,在不脱离本发明的精神和范围的情况下,可以添加、去除或重新排列步骤。
[0013] 图1是其中机器人100与另一机器150同步执行任务的工厂车间操作的图示。机器人100可以是如图1所示的六轴型机器人或任何其他类型的机器人。在图1和以下附图的讨论中,应该理解的是,机器人100按照自己的步调操作,并且另一机器150被编程为与机器人100同步操作。换言之,机器人100是主装置,机器150是从装置。因此,机器150需要知道机器人100的工具中心点位置,机器150使用该工具中心点位置来确定其自身运动。
[0014] 机器人100以本领域已知的方式在线路102上与机器人控制器110双向通信。即,控制器110向机器人100发送关节位置命令(该命令指示机器人100如何移动),并且机器人100向控制器110提供定义关节伺服电机的实际位置的关节编码器数据。机器150在线路152上与控制器160通信。图1所示的作为激光焊机的机器150可以是任何适用类型的机器,例如,激光或电弧焊机、激光切割机、任何类型的机床、材料移动或分配机器等。控制器160在线路180上接收来自机器人控制器110的机器人工具中心点位置数据。如所示,控制器160还可以与机器人控制器110无线通信。
[0015] 图1的基本架构是众所周知的,其中,机器人将工具中心点位置数据提供给另一机器。然而,现有的传送机器人工具中心点位置数据的方法不够快,无法满足许多现代工厂操作的要求。例如,机器150可能每2.0毫秒(ms)需要工具中心点位置数据,以便满足精度和加工速度要求,但机器人控制器110的现有设计只能大约每8.0ms提供数据。
[0016] 因此,已经开发了一种改进的技术,该技术使用与图1相同的基本架构,但是以新的方式在机器人控制器110中实现工具中心点位置计算,这大大提高了可以传送位置数据的速度。下面讨论的技术使得这些机器人-机器同步任务应用成为可能,而无需使用外部传感器,其有时用作高速提供工具中心点位置数据的变通方案。
[0017] 图2是示出在机器人100、机器人控制器110和另一机器的控制器160之间的连通性的方框图,其中,需要工具中心点位置流式传输。图2示出了图1中所示的相同连通性,并且还提供了控制器110中发生的情况的x详细描述。图2适用于提供工具中心点位置的现有方法以及本公开的新技术。
[0018] 如先前在图1中所示,机器人100通过线路102连接到控制器110,线路102承载在机器人100和控制器110之间往复的数据和信号。例如,控制器110向机器人发送位置命令100,并且机器人100将关节位置数据发送到控制器110。控制器110执行三个基本操作,以便在线路180上将工具中心点位置数据提供给另一机器的控制器160。控制器110在线路102上接收关节编码器位置数据。数字信号处理器(DSP)120处理原始关节编码器数据,并以适合于在方框122中的正向运动学计算的格式提供关节位置数据。换言之,DSP模120基于在线路102上接收的信号,提供针对六轴机器人100中的所有六个关节在特定时刻的关节角位置。
[0019] 方框122执行正向运动学计算,以确定工具中心点位置。正向运动学计算以本领域中已知的方式进行操作,其中,机器人基关节(J1)的角度用于确定肩关节(J2)的位置,J2的角度与内臂的长度一起用于确定肘关节(J3)的位置,等等。该正向运动学计算继续到腕关节,并且得到工具中心点位置。工具中心点位置计算可以在机器人中心坐标系中执行,然后使用机器人基关节角度转换为全局笛卡尔坐标系(例如,相对于工厂车间定义)。
[0020] 每当在方框122中计算出工具中心点位置时,该位置与时间戳一起提供给通信方框124。通信方框124使用标准网络接口或任何其他合适的技术在线路180上传送出工具中心点位置数据。
[0021] 计算和输出工具中心点位置的先前方法作为机器人命令内插例程的一部分以命令内插速率运行。以命令内插速率执行的位置计算只能以每个命令内插间隔提供工具中心点位置计算,不能更快。如上所述,需要以比内插间隔更快的速率输出工具中心点位置,以便满足机器150的要求。因此,已经开发了下面讨论的新技术。
[0022] 图3是示出根据本公开的实施例的机器人控制器110的部分软件架构和其中针对高频工具中心点位置流式传输执行的处理步骤的方框图。图3是如何配置控制器110以满足高速工具中心点位置通信要求的详细描述。
[0023] 控制器110的新设计的基本概念是在中断服务例程中而非在正常命令内插例程中执行工具中心点位置计算。中断处理程序(也称为中断服务例程(ISR))是操作系统(OS)或装置驱动程序中的回调子例程,通过接收中断来触发其执行。在ISR中,当需要运行一个硬件(硬件中断)或某个OS任务(软件中断)时,触发中断。如果没有屏蔽(忽略)这些中断,则操作系统将停止正在执行的操作,并调用某个特殊的代码(ISR)来处理这个事件。ISR的这种即时执行特性使得工具中心点位置计算的速度可以比以前更高。
[0024] 控制器110包括ISR位置计算模块310和通信任务320以及其他软件例程(未示出),例如,前面提到的机器人命令内插例程。系统时钟312用于以某一频率触发ISR模块310。在一个非限制性的优选实施例中,时钟312触发ISR模块310,以比命令内插更快的速率(即,500Hz或更高的频率)执行。ISR模块310的执行频率和执行速度与控制器能兼容是很重要的。ISR模块310必须在被再次触发之前完成其执行,否则数据将丢失,和/或将屏蔽或忽略其他系统中断。
[0025] 如前所述,控制器110在线路102上与机器人100通信。具体地,控制器110在线路102上接收关节位置编码器数据。当时钟312触发ISR模块310执行时,在方框314中,从线路
102读取关节位置数据。例如,对于六轴机器人100,在方框314中,读取六个角关节位置。在方框314中可以包括诸如DSP等信号处理。在方框316中,在正向运动学计算中使用来自方框
314的关节编码器数据来计算机器人100的位置配置。正向运动学计算基于运动链中前一关节的空间位置以及前一关节的角位置和介于其间的机械臂的长度来确定每个关节的位置和定向。
[0026] 在方框318中,使用正向运动学计算的输出,在“世界”坐标系(例如,被定义为固定到工厂车间的笛卡尔坐标系)中计算工具中心点位置。可以在机器人固定的坐标系中执行在方框316中的计算,并且在方框318中,将工具中心点位置变换为世界坐标系。工具中心点位置数据优选地包括足以定义工具中心点位置和定向的世界坐标中的工具中心X/Y/Z位置以及三个旋转角。在一个实施例中,三个旋转角是欧拉角。将来自方框318的工具中心点位置数据输出到工具中心点位置数据缓冲器330。此时,ISR例程310已经完成了一个执行周期,并准备由时钟312发送下一个中断。
[0027] 通信任务320在方框322中简单地从缓冲器330读取工具中心点位置数据,并且在方框324中将每组工具中心点位置数据以及对应的时间戳发送到通信链路。通信任务320优选地是高优先级系统任务。已经发现,高优先级通信任务320能够跟上ISR模块310的数据计算,使得缓冲器330不会累积未发送数据的越来越多的积压。因此,通信任务320以所需速度执行所需功能,而不会不必要地添加到ISR模块310中,这种添加将延长ISR模块310的执行时间。
[0028] 通信链路可以是标准网络套接字。在一个实施例中,网络套接字使用用户数据报协议(UDP)通信协议。在线路180上从控制器110输出来自通信任务320的工具中心点位置数据,线路180将数据提供给控制器160,用于控制另一机器150,如前所述。
[0029] 如上所述,上面描述的用于控制器110高频地计算和输出工具中心点位置的技术已经证明能够以2.0ms间隔可靠地输出位置数据。对于源自外部处理器的高速运动命令,也设想了一种类似的技术。换言之,如果机器人100被指定作为另一装置(例如,机器150)的从属装置,则机器150可以高速(例如,2.0ms间隔)输出其位置数据或某种命令触发,并且机器人100可以被配置为遵循来自该另一机器150流式传输的高速命令。在这种情况下,控制器110将使用ISR模块来以比正常命令内插速率更高的频率读取命令数据,并且将使用ISR模块中的逆运动学计算来计算和发送机器人位置命令。
[0030] 图4是根据本公开的实施例的用于高频地从机器人控制器向另一装置传送工具中心点位置的方法的流程图400。在方框402中,在控制器110中设置ISR位置计算模块310,其中,以明显快于正常命令内插速率的诸如500Hz的频率时钟触发ISR模块。在方框404中,在每个时钟触发时,由ISR模块310读取关节编码器数据。在线路102上接收来自机器人100的关节编码器数据,并且提供机器人100中的每个关节的关节角位置。
[0031] 在方框406中,基于关节编码器数据,使用正向运动学计算来计算机器人100的位置。方框406中的计算确定机器人100的完整位置,包括从机器人基座到腕关节的所有关节中心的位置和角度。在方框408中,在世界坐标中计算工具中心点位置,包括安装在腕部上的工具本身的任何最终位置计算以及从机器人中心坐标向世界坐标的变换。在ISR模块310中针对在方框404中读取的每组关节编码器数据执行在方框406和408中的计算,即,针对每个ISR时钟触发执行一次。
[0032] 在方框410中,ISR模块310将工具中心点位置数据写入控制器110中的缓冲器330。在方框412中,控制器通信任务320从缓冲器读取工具中心点位置数据并将数据发送到控制器110上的通信端口。控制器通信任务320优选地是高优先级任务。在一个实施例中,通信端口是使用UDP协议的以太网端口。在方框414中,用于另一机器150的控制器160从控制器110读取工具中心点位置数据。控制器160基于机器人100的工具中心点位置来为机器150制定命令,并发送命令,以相应地移动机器150。
[0033] 应该理解的是,在具有处理器和存储器模块的一个或多个计算装置上执行上述软件应用程序和模块。例如,机器人命令内插、ISR位置计算和通信任务均在控制器110上执行,而控制器160对机器150执行类似的计算。此外,机器-控制器和控制器-控制器通信可以经由硬线电缆连接或可以使用任何适当的无线技术,例如,蜂窝电话/数据网络、Wi-Fi、宽带互联网、蓝牙等。
[0034] 上面公开的方法和系统被设想为以比先前技术可能的频率高得多的频率提供来自机器人的工具中心点位置数据的方式。将定制的ISR模块用于关节位置数据读取和工具中心点位置计算,已证明所公开的技术可靠且重复性地将高速机器人位置数据传送到下游机器。以2ms间隔(而不是以现有技术的8ms或更长时间的间隔)提供机器人工具中心点位置数据,使得下游机器和整个生产过程能够以更高的速度和更高的精度运行。
[0035] 前面的讨论仅描述了所公开的方法和系统的示例性实施例。本领域技术人员从这些讨论以及附图和权利要求中将容易认识到,在不脱离在所附权利要求中定义的公开技术的精神和范围的情况下,可以对其进行各种改变、修改和变化。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈