用于机器人的处理模块
背景技术:
1.本发明一般地涉及机器人,并且更具体地涉及处理模块,该处理模块位于机器人的工具安装表面和所述机器人的端部执行器之间。
2.机器人通常包括一系列关节,该关节允许端部执行器从一个地方移动到另一个地方,以执行各种任务。通常,为了使得端部执行器能够执行各种任务,一个或多个传感器被放置在端部执行器上或端部执行器附近,以监测绕端部执行器周围的环境。机器人还包括机器人控制器,该机器人控制器从关节、端部执行器和传感器收集数据并且向关节、端部执行器和传感器发送指令。通常地,机器人控制器可以位于机器人的基部中或机器人的基部附近,或者位于离机器人短距离的单独的计算机中,尽管机器人控制器还有可能位于远程位置,其中机器人和控制器之间的通信通过广域网络进行。
3.然而,在某些情况下,机器人控制器的位置可以导致机器人性能下降。例如,在期望机器人执行实时操作的情况下,机器人控制器和端部执行器处的传感器之间的通信延迟可以降低机器人的性能。传送大量数据的传感器还可以限制机器人的性能。例如,传送视频数据的相机需要高带宽的传送。传感器和机器人控制器之间的通信速度和带宽要求可以导致时延和抖动问题,这些问题降低机器人的整体性能。随着更多的传感器被附加到机器人上以提供附加的功能,这种问题会进一步加剧。
4.除了通信限制外,用于机器人控制器和传感器的传统布置可以引起安全和可靠性风险。例如,随着传感器变得越来越复杂,这类传感器通常需要由第三方开发商提供附加的软件应用和驱动程序。然而,将这种类型的附加软件加载到机器人控制器上可以带来意想不到的和不受控的风险,这些风险可以是无法接受的。
5.与机器人一起使用的传感器数量增加的另一个问题是难以将此类传感器放置在合适和方便的位置。通常,机器人的用户可能一开始就用现成的端部执行器,该端部执行器被附接到机器人的工具凸缘。当用户期望为将附加的功能附加至机器人时,可以需要将附加的传感器附加至机器人。通常,由于机器人的操作是由端部执行器执行的,因此最好将传感器安装在靠近端部执行器的位置。然而,在不干扰端部执行器或周围环境的情况下,在端部执行器处找到安装传感器的位置可以是困难的。以安全的方式恰当地安装传感器也可能具有挑战性和/或耗费时间。
6.可以在机器人上使用的传感器数量的另一个问题是到机器人控制器的相关联的通信路径。在使用缆线将传感器连接到机器人控制器的情况下,每个传感器通常用单个的缆线连接到机器人控制器。因此,当在端部执行器处使用多个传感器时,同等数量的缆线必须被连接到机器人控制器。这可以造成路由困难,并且增加系统的复杂性。备选地,当数据从传感器被无线传送到机器人控制器时,每个传感器都需要单独的信号通路,这可以挤占可用带宽。
7.鉴于对改进机器人性能的各种需求,最好在机器人工具凸缘和端部执行器之间提供可互换的模块。
技术实现要素:
8.描述了一种可互换模块,该可互换模块被附接在机器人的工具凸缘和端部执行器之间。模块包括处理模块、传感器模块和通信模块。模块可以以堆叠的方式被附接到机器人工具凸缘,而端部执行器被附接到堆叠的端部。模块允许在对机器人或端部执行器进行最小修改的情况下,轻松地将附加功能附加到机器人。
附图说明
9.通过阅读以下结合附图的描述,可以更全面地理解本发明,其中:
10.图1是机器人的立体图;
11.图2是被附接到机器人工具凸缘的端部执行器的侧立体图;
12.图3是被附接到机器人工具凸缘的处理模块的立体图;
13.图4是处理模块的分解图;
14.图5是处理模块的分解图;
15.图6是另一个处理模块的横截面图;
16.图7是传感器模块的分解图;
17.图8是堆叠的传感器模块的分解立体图;
18.图9是通信模块的立体图;以及
19.图10是通信模块的分解图。
具体实施方式
20.现在参考附图,并且特别是图1,示出了机器人10的示例。如所示,机器人10具有基部12,该基部12可以被固定在原地或是可移动的。机器人10被提供有一个或多个关节14,该一个或多个关节14允许机器人10的构件16(例如,臂16)在不同方向上被移动。尽管图1中图示了枢轴关节14,但还有可能的是,关节14可以是线性可延伸的关节、旋转关节或其他类型的关节,这些关节允许机器人10的两个构件16之间的移动。在与基部12相对的一端处,机器人10可以被提供有机器人工具安装表面18,或工具凸缘18。优选地,工具凸缘18(例如,图4)是工业标准的工具凸缘18,该工具凸缘18允许不同制造商的端部执行器22被附接到工具凸缘18。例如,优选的工业标准工具凸缘满足iso 9409
‑
1:2004(e)。特别地,工具凸缘18优选地具有多个等距圆形图案的螺纹孔20。
21.图2中示出了端部执行器22的示例。各种端部执行器22是已知的,并且可以与机器人10一起使用,诸如夹持器22(例如,双爪夹持器22、真空杯夹持器、磁性夹持器)、焊接器等。传统地,端部执行器22用螺纹螺栓24直接地被附接到工具凸缘18,该螺纹螺栓24与工具凸缘18的螺纹孔20接合。然而,如图2所示,端部执行器22被附接到下面进一步描述的模块30,该模块30位于工具凸缘18和端部执行器22之间。机器人10在基部12和端部执行器22之间的关节14允许机器人10在整个围绕机器人10的工作空间内移动端部执行器22。为了控制机器人关节14的移动,提供了有处理器的机器人控制器26,该处理器生成控制信号,该控制信号被传送到机器人10的关节14。如所示,控制器26可以位于位于机器人10附近的控制箱26中,但对于控制器26还有可能被安置在机器人10本身内(例如,在基部12中),或者位于远程位置并且通过网络与机器人10通信。
22.如图2所示,端部执行器22可以被提供有多个传感器28,以监测端部执行器22周围的环境。众多类型的传感器28可以与端部执行器22一起使用,并且包括力称重传感器28a、相机28b、加速度计、温度计、位置传感器等。传感器28可以位于不同的地方,包括在端部执行器22上或下面描述的传感器模块80中。然而,优选的是,传感器28相对于基部12位于离工具凸缘18的远端,使得传感器28在端部执行器22附近。
23.如图3至图6所示,可以期望为机器人10提供位于工具凸缘18和端部执行器22之间的处理模块30。如果期望,如图2中所示,处理模块30可以直接地被附接到工具凸缘18,并且端部执行器22可以直接地附接到处理模块30。然而,如下文进一步所述,还可能以各种组合方式使用在工具凸缘18和端部执行器22之间的模块80、100(图7和图9)。由于本文描述的各种模块30、80、100的一般结构和附接相似,因此没有必要重复相对于每个模块30、80、100的每个细节。如图4所示,模块30、80、100可以利用螺栓24(即螺纹紧固件24)被附接到工具凸缘18,该螺栓24延伸通过壳体34中的孔32并且与工具凸缘18中的螺纹孔20接合。如图8所示,模块30、80、100优选地还包括一组螺纹孔20,以允许其他模块30、80、100以类似方式附接到相邻的模块30、80、100。相似地,端部执行器22可以利用螺栓24被附接到最远端的模块30、80、100,该螺栓24与最远端的模块30、80、100的螺纹孔20接合。
24.如图4所示,模块30、80、100的壳体34(在图3中标注)可以包括第一板36、第二板38和圆周壳体构件40。壳体34包围下面进一步描述的一个或多个电路。可以期望的是壳体部件(例如,第一板36、第二板38和圆周构件40)通过粘合剂、卡扣连接器或小螺钉与安装螺栓24(例如,图8)分开地彼此固定。第一板36的外部面的表面被设计成直接地被附接到机器人10的工具凸缘18,或以类似方式被附接到另一个模块30、80、100的模块安装表面42。另一方面,第二板38的外部面的面42或安装表面42被设计成用于将端部执行器22附接到其上,或以类似方式将另一模块30、80、100的第一板36附接到其上。如图4所示,还优选的是孔32延伸通过壳体34(包括第一板36和第二板38),以允许螺栓24从模块安装表面42穿过到模块安装表面42相对侧的工具凸缘18(或其他模块30、80、100)。如图4(和图8)所示,可以期望的是模块安装表面42中的螺纹孔20(用于附接端部执行器22或其他模块30、80、100)从通孔32成角度地偏移。优选地,每个模块30、80、100的模块安装表面42是工业标准工具凸缘42。例如,优选的工业标准工具凸缘42满足iso9409
‑
1:2004(e)。优选地,如图所示,每个模块30、80、100的模块安装表面42作为多个等距圆形图案的螺纹孔20。甚至更优选地,工具凸缘18中的螺纹孔20和模块30、80、100的模块安装表面42具有匹配的螺纹和孔图案。因此,模块30、80、100中的每个模块可以是可互换地安装在机器人工具凸缘18和端部执行器22之间。多个模块30、80、100还可以在机器人工具凸缘18和端部执行器22之间以各种组合方式使用,如图8所示。因此,被设计成彼此直接附接(例如,螺纹螺栓24与凸缘18中的螺纹孔20接合)的传统机器人工具凸缘18和端部执行器22,可以适用通过在两者之间插接一个或多个模块30、80、100,以轻松简单地附加或改进功能。
25.图2至图6所示的处理模块30在壳体34内提供带有处理器44的电路,用于处理传感器数据。如图5所示,在壳体34中可以提供电路板46,电路板46有处理器44、易失性存储器48、非易失性存储器50、一个或多个输入端口52和一个或多个输出端口54。操作系统和程序应用可以被存储在非易失性存储器50上。因此,电路板46可以作为通用计算机操作,其上有应用设置专门被设计来处理来自端部执行器22附近或端部执行器22上的传感器28的传感
器数据。也就是说,操作系统控制处理器44的基本功能,并且应用为处理器44提供指令,以处理来自一个或多个传感器28的数据。尽管输入端口52和输出端口54有可能是完全地被包含在壳体34内的无线端口,但是为了访问输入端口52和输出端口54,可以备选地在壳体34中形成开口58。要理解的是,输入端口52和输出端口54可以采取各种形式;然而,在一个实施例中,输入端口52是usb端口52,并且输出端口54是rj
‑
45端口54。在使用中,在传感器28和输入端口52之间可以连接缆线60,以将传感器数据传输到处理模块30。输入端口52连接到处理器44,以将传感器数据传输到那里。输入端口52还可以通过存储器48、50连接到处理器44,使得传感器数据在被处理器44处理之前被存储在存储器48、50中。当处理器44接收传感器数据时,处理器44将传感器数据处理成经处理的传感器数据,与输入的传感器数据相比,该经处理的数据由每秒较少的比特限定。也就是说,虽然原始的传感器数据可以通过输入端口52被提供给处理器44,但来自处理器44的经处理的传感器数据输出被压缩,以提供比原来输入的传感器数据更少的详细数据。例如,经处理的传感器数据可以代表原始传感器数据的概括,诸如平均数、总数等,或者可以是任务完成或状态的标记或其他指示。输出端口54连接到处理器44,以便将经处理的传感器数据从处理模块30传送出去。还可能将经处理的传感器数据存储在存储器48、50中,使得输出端口54通过存储器48、50连接到处理器44以接收经处理的传感器数据。输出端口54可以用输出缆线62连接到机器人控制器26以及其中的处理器,如图2所示。备选地,输出缆线62可以是在机器人10内部,并且可以在模块30的第一板36和工具凸缘18之间使用像图3所示的插针或齐平接触(flush contact)连接器64那样的面连接器(face connector)。输出端口54还可以是无线端口。
26.图6中示出了壳体34的另一个示例。在该实施例中,用于附接模块30、80、100的孔32不需要全部延伸透过壳体34,而是仅延伸通过第一板36。然后用第二组螺栓66将一体的顶部部分68附接到第一板36。这种布置的一个优点是,模块安装表面42的螺纹孔20不需要与相邻工具凸缘18或模块30、80、100的螺纹孔20成角度地偏移。壳体34内还有附加的空间可供电子元件使用。然而,这确实需要在多个步骤中把模块30、80、100组装到工具凸缘18(或模块30、80、100)上,而不是壳体34已经完全固定在一起的单个步骤(例如,图8)。图6中还示出了外部冷却翅片56,为处理器44和壳体34内的其他电气元件提供冷却。优选地,壳体34由金属制成,冷却翅片56是在其上一体形成的。处理器44可以被附接到散热器70,并且壳体34可以被提供有用于散热器70的金属安装接口72,使得处理器44与冷却翅片56进行热连通以冷却处理器44。
27.处理模块30的优点是,主要数据处理可以在靠近端部执行器22的传感器28处发生。这减少了处理延迟。因此,信号传送到机器人控制器26被限制为较低带宽的经处理的传感器数据,而不需要将原始传感器数据传送到机器人控制器26。布置还在处理模块30中隔离了与传感器相关的软件和处理硬件,而不使机器人控制器26面临附加软件的风险。
28.图7至图8中示出了另一个模块80。该模块80是传感器模块80,该传感器模块80同处理模块30一样,可以很轻松地与其他模块30、80、100以各种组合方式被安装在机器人工具凸缘18和端部执行器22之间。因为传感器模块80与处理模块30在结构上有相似之处,所以没有必要重复上面已经提供的所有细节。同处理模块30一样,传感器模块80具有壳体34,该壳体34可以在一侧被附接到机器人工具凸缘18或另一个模块30、80、100的安装表面42。端部执行器22或另一模块30、80、100还可以被附接到传感器模块80的相对侧的安装表面
42。
29.如图7所示,在壳体34的内部提供电路板82,在该电路板82上安装有传感器84。传感器84检测绕传感器84的环境条件,并且因此检测绕传感器模块80和端部执行器22附近的环境条件。可以使用各种传感器84来检测各种条件,包括加速度、速度、力、扭矩、位置、磁场、光、温度、压力、湿度和声音。与称重传感器28a、相机28b和其他类型的传感器可能需要直接位于端部执行器22上或特定的地方不同,传感器模块80内的传感器84可以提供足够的传感器数据,位于机器人工具凸缘18和端部执行器22之间的模块壳体34内。在传感器84需要与周围环境(例如湿度、温度、声音等)进行开放通信时,可以期望的是为壳体34提供开口86,诸如被屏蔽的开口86,以允许周围的大气渗透到壳体34的内部。
30.与处理模块30不同,传感器模块80可以需要少得多的输入/输出端口。例如,在最简单的实施例中,可以仅需要单个输出端口88,(诸如usb端口88),以从传感器80传送传感器数据。备选地,传感器模块80可以无线地传送传感器数据,在这种情况下,输出端口(例如,无线天线)可以在壳体34的内部,而在壳体34中不需有用于输出端口88的物理开口58。还可以使用面连接器64。在使用用于输出端口88的物理连接的情况下,使用缆线90将输出端口88连接到处理器44、26,以处理来自传感器84的传感器数据。例如,可以期望的是传感器数据通过缆线90(或无线地)被传送到上述的处理模块30。这允许较短的传送距离并且简化了通信缆线的路由。还可以期望的是输出缆线90提供电源,为传感器84供电。例如,当usb缆线90被连接在传感器模块80的输出端口88和处理模块30的输入端口52之间时,缆线90可以从传感器模块80中的传感器84将传感器数据提供给处理模块80中的处理器44。处理模块30还可以通过缆线90向传感器模块80提供电源。如图8所示,可以在模块安装表面42和相对的侧面上使用面连接器64,以在模块30、80、100之间,模块30、80、100和机器人工具凸缘18之间以及端部执行器22和模块30、80、100之间进行内部通信而不需要外部缆线。
31.图8还示出了如何将多个传感器模块80a、80b、80c堆叠到工具凸缘18上,以轻松地将传感器功能附加到机器人10。例如,每个传感器模块80可以被设计为监测不同的环境条件。因此,通过简单地选择所需的传感器模块80,并且通过将传感器模块80闩接在机器人工具凸缘18和端部执行器22之间来将传感器模块80附加到堆叠,附加的传感器功能可以被附加。传感器模块80还具有克服将传统传感器安装到端部执行器22上的困难(即,找到合适的位置并且牢固地安装传感器)的优点。
32.从图8的图示中还要理解的是,本文描述的各种模块30、80、100还可以根据期望被附加和排序,以便在机器人工具凸缘18和端部执行器22之间轻松地附加功能。例如,可以期望的是模块30、80、100的堆叠包括一个或多个传感器模块80、通信模块100(如下所述)和处理模块30。然后,来自传感器模块80的传感器数据可以从传感器模块80的输出端口88被传送到通信模块100的输入端口106。通信模块100的输出端口108可以连接到处理模块30的输入端口52,以传送来自传感器模块80的传感器数据。然后,处理模块30的输出端口54可以连接到机器人控制器26以传送经处理的传感器数据,诸如传感器84的低数据率概括或状态指示。
33.可以与传感器模块80和/或处理模块30一起使用的通信模块100在图9至图10中被示出。同处理模块30和传感器模块80一样,通信模块100可以很轻松地安装在机器人工具凸缘18和端部执行器22之间,有或没有其他模块30、80、100。由于与处理模块和传感器模块
30、80的相似性,没有必要重复上面的所有详细描述。同处理模块和传感器模块30、80一样,通信模块100在一侧上具有安装表面,该安装表面可以被附接到机器人工具凸缘18或另一个模块30、80、100的安装表面42。相对侧是安装表面42,端部执行器22或另一模块30、80、100可以被附接到该安装表面42。
34.如图10所示,在壳体34中提供了电路板102,其带有数据交换机104,用于将来自多个输入端口106的输入的传感器数据组合成通过单个输出端口108被传送的数据输出流。然而,要理解的是,如果需要,可以提供多个备选的输入端口106和输出端口108。可能期望的一种类型的输入端口106是usb端口106a,并且在优选的实施例中,可以提供多个usb端口106a。由于usb端口106a通常用于传送数字数据,可以期望的是,还提供电压输入端子106b或先前描述的面连接器64(例如,图9),以将模拟数据传送到通信模块100。
35.输入端口106连接到电路板102上的数据交换机104。数据交换机104将来自输入端口106的多个数据流组合成单个的数据流,该数据流可以通过连接到数据交换机104的单个输出端口108被传送。在提供模拟输入端口106b、64的情况下,还优选的是电路板102包括模数转换器110,使得由通信模块100接收的模拟数据在被提供给数据交换机104之前被转换为数字数据。因此,数据交换机104的至少一个输入端口可以连接到模数转换器110的输出端口。因此,即使在连接到通信模块100的传感器中的一些传感器传送模拟数据的情况下,传送到数据交换机104的所有数据被提供为数字数据。
36.各种类型的输出端口108可以连接到数据交换机104。例如,可以提供rj
‑
45端口108a、串行端口108b、usb端口和/或无线端口108c(例如,蓝牙和/或wi
‑
fi天线108c)来输出传感器数据。通信模块100有可能通过输出端口108中的每个输出端口来广播输出的传感器数据。然而,在这种情况下,每个输出端口108可以从多个输入端口106接收相同的组合数据流。从数据交换机104提供给输出端口108的组合数据流可以通过输出缆线112连接到机器人控制器26、44。备选地,无线输出端口108c可以发射无线信号114来传送经组合的输出数据。连接到通信模块100的机器人控制器26、44可以是本文所述的处理模块30,也可能是控制机器人10的关节14的机器人控制器26。如果需要,通信模块100还有可能通过输入端口106或输出端口108向其他部件供电。
37.通信模块100提供了简化传感器和处理单元之间的通信路由的优点。也就是说,在传统的布置中,在端部执行器22上使用多个传感器,需要相等数量的缆线来将每个传感器连接到机器人控制器26。由于传统的机器人控制器26位于机器人10的基部12附近,这可能导致缆线的混乱布置,该混乱布置还可能产生纠缠风险。相比之下,通过使用通信模块100,可以使用单个的输出缆线112(或没有缆线、利用无线输出端口108c)。这大大简化了各种传感器和机器人控制器26、44之间的连接。进一步地,如上所述,在使用传感器模块80和处理模块30的情况下,需要的各种连接可以主要位于端部执行器22附近,而不需要将许多缆线路由到机器人10的基部12。除了简化连接之外,由于通信路径的长度减少,端部执行器22的响应时间也可以减少。
38.虽然上述描述主要是指从传感器到各种模块30、80、100的数据通信,但要理解的是,处理模块30、传感器模块80和通信模块100还可以与各种驱动器通信。例如,响应于通过输入端口52接收到的传感器数据,处理模块30可以而向驱动器输出控制信号。传感器模块80和通信模块100还可以向驱动器输出数据。因此,虽然模块30、80、100主要是旨在与来自
各种传感器的数据接口,但模块30、80、100还可以用于与各种驱动器接口。
39.虽然已经描述了本发明的优选实施例,但是应当理解,本发明不限于此,并且可以在不偏离本发明的情况下进行修改。虽然本文描述的每个实施例可能仅指某些特征,并且可能不具体指关于其他实施例所描述的每个特征,但是应认识到,除非另有说明,否则本文描述的特征是可互换的,即使未提及特定特征。还应当理解,上述优点不一定是本发明的唯一优点,并且不一定期望通过本发明的每个实施例来实现所有描述的优点。本发明的范围由所附权利要求限定,并且在权利要求的含义内的所有设备和方法,无论是字面上的还是等效的,都旨在被包含在其中。