发布信息

在机器人运动规划和控制中采用间隙确定的系统、方法和用户界面与流程 专利技术说明

作者:admin      2023-07-26 11:50:10     783



五金工具产品及配附件制造技术1.本公开总体涉及机器人,并且特别涉及用于机器人运动规划和控制的系统、方法和用户界面,例如,在操作环境中的机器人的运动规划和运动控制中采用间隙或空隙(margin)确定的系统、方法和用户界面,所述间隙或空隙确定表示机器人的至少一部分与操作环境中一个或更多个物体之间的间隙或空隙的量。背景技术:2.相关技术的描述3.机器人在各种应用和环境中变得越来越普遍。4.通常,基于处理器的系统执行机器人的运动规划和/或控制。基于处理器的系统可以例如包括通信地耦合到一个或更多个传感器(例如,相机、接触传感器、力传感器、编码器)的处理器。基于处理器的系统可以确定和/或执行运动规划,以使机器人执行一系列任务。运动规划是机器人控制和机器人技术中的一个基本问题。运动规划指定了机器人从起始状态到目的状态能够遵循的路径,通常是为了完成任务而不会与操作环境中的任何物体(例如,静态障碍物、动态障碍物,包括人类)发生碰撞,或者与操作环境中的任何物体发生碰撞的可能性降低。运动规划面临的挑战包括即使在环境特征变化的情况下也能以非常快的速度执行运动规划的能力。例如,环境中一个或更多个物体的定位或方向等特性可能会随着时间的推移而改变。挑战还包括使用成本相对较低的设备、以相对低的能耗和有限的存储量(例如,存储器电路(例如在处理器芯片电路上的存储器电路))执行运动规划。5.运动规划通常使用称为路线图的数据结构来执行,该数据结构通常可互换地称为运动规划图。路线图包括多个节点和多个边,每个边联接对应的节点对的节点。这些节点通常被可互换地称为顶点、枢纽、路点或过点,对应于机器人的姿态或配置。节点对的两个节点之间的边对应于从由该节点对中的一个节点表示的机器人的一个姿态到由该节点对中的另一节点表示的机器人的另一姿态的运动或转换。技术实现要素:6.机器人运动规划的目标之一是避免或至少减少机器人与操作环境中的物体碰撞的可能性。这些物体可以包括静态物体,例如具有在机器人的运行时间操作之前已知的位置。这些物体可以附加地或替代地包括动态物体(例如,另一个机器人、人类),其中物体的位置或定位可以在机器人的运行时间操作期间改变。7.除了避免碰撞之外,理解并考虑机器人或其部分与操作环境中的物体之间的间隙或空隙可能是特别有利的。在一些情况下,某些间隙可能比其他间隙更相关。在一些情况下,对于机器人的不同部分或不同操作,可能需要不同量的间隙。例如,与机器人的肘部的需要相比,机器人的臂端工具的焊枪端可能需要更大量的间隙。8.为了确保有足够的间隙,工程师通常会扩张机器人的部分或全部的尺寸。因此,如果扩张的机器人在没有碰撞的情况下移动,则会增加间隙足够的置信。尽管如此,由于至少两个原因,即使是这种方法也可能失败。首先,有时不存在在整个运动范围内提供足够间隙的解决方案。静态物体(例如,静态障碍物)在运动期间根本不允许有所需的间隙。其次,有时现实世界与模拟器所使用的模型差异很大,以至于间隙不再足够。因此,虽然运动规划在模拟工作单元中可能具有足够的间隙,但当应用于真实世界的工作单元时,这些间隙是不够的。因此,尽管用户或操作者可能试图以视觉方式评估间隙,但这尤其难以以任何合理的准确度来执行。9.本文所述的方法允许工程师模拟或执行运动规划,而不是简单地“观察”间隙,有利地看到在机器人或其部分的一个或更多个运动期间或沿着机器人或其部分的一个或更多个运动,机器人的一部分或更多个部分的间隙的大小和定位的特定视觉指示。间隙的特定视觉指示的提供使工程师能够快速而直观地专注于精确地调整运动规划的位置,例如通过调整各种参数的值来减缓紧间隙周围的运动,采用更保守的路径平滑,或者通过在路线图中添加或移除节点或边和/或调整路线图中的节点或边。10.因此,通过计算确定机器人的一个或更多个部分相对于操作环境中的一个或更多个物体的间隙,并且呈现所确定间隙的视觉指示以供审查将是特别有利的。例如,机器人或机器人附肢的一个、两个、更多个或甚至所有部分的所确定间隙量的视觉指示可以在机器人的运动的表示中被视觉呈现。例如,运动的表示可以采取三维(3d)空间的表示的形式,机器人在所述三维空间中操作,例如随着机器人运动的一个或更多个路径操作。例如,运动的表示可以采取路线图或图形表示的形式,其示出表示与姿态之间的转换或机器人运动相对应的姿态和边的节点。间隙量可以相对于一个或更多个物体来确定,甚至包括在操作环境中操作的另一个机器人。在一些实施方式中,可以针对在操作环境中操作的一个、两个或甚至更多个机器人呈现所确定间隙量的指示。11.机器人的一个或更多个部分的所确定间隙量可以表示为值,例如数值(例如,毫米、厘米、英寸)。机器人的一个或更多个部分的所确定间隙量可以呈现为颜色(例如,红色、橙色、黄色、绿色、蓝色),例如对应于间隙量或者甚至对应于与指定标称间隙量的偏差的颜色。机器人的一个或更多个部分的所确定间隙量可以呈现为热图,例如具有颜色和/或色调的转换(例如,深红色、浅红色、浅绿色、深绿色),例如对应于间隙量或者甚至对应于与指定标称间隙量的偏差的颜色。机器人的一个或更多个部分的所确定间隙量可以作为提示或视觉效果来呈现,例如作为线宽或其他视觉效果(例如,遮光、闪光)。12.所确定间隙量的视觉呈现的指示可以例如与对应的运动或移动在空间上相关联,例如,所确定间隙量的指示可以与空间的3d表示中的路径或其部分在空间上相关联,或者与路线图或图形表示中的边或其部分在空间上相关联。所确定间隙量的视觉呈现的指示可以例如在运动的表示中与机器人或其部分在空间上相关联,例如在3d空间的表示中运动的机器人或其部分的模拟中,例如通过将颜色应用于机器人或其部分的周边,其中该颜色对应于通过计算确定的间隙量。13.所确定间隙量的视觉呈现的指示可以例如表示整个机器人在执行运动时所经历的最小间隙。所确定间隙量的视觉呈现的指示可以例如表示机器人的各个部分(例如,机器人附肢;连杆、关节、臂端工具或机器人附肢的工具中心点(tcp))在执行运动时所经历的最小间隙。例如,所确定间隙量的视觉呈现的指示可以表示臂端工具、末端执行器或工具中心点、特定连杆或特定关节在特定运动期间所经历的间隙量。14.每个运动可以具有所确定间隙的相应单个指示,表示在整个运动范围内经历的最小间隙。替代地,每个运动可以具有多个间隙指示,每个间隙指示表示在沿着运动范围的各个点处经历的最小间隙。15.传统上,运动规划包括从路线图中去除与边相对应的运动与当前环境冲突(例如,碰撞或非常可能碰撞)的边,然后解决从当前节点到目标节点或几个可能的目标节点之一的最短路径搜索。最短路径搜索可以包含成本度量,其中每个边都具有成本。成本度量反映了一个或更多个关心的参数(例如,延迟、能量成本)。在本文所描述的方法的至少一个实施方式中,可以增加成本度量(例如,经由成本函数)以包含所确定间隙的信息。这可以有利地允许生成表示所确定间隙的路线图和/或意识到间隙的运动规划。16.在至少一个实施方式中,提供了用户界面,该用户界面允许例如至少部分地基于确定的间隙来调整路线图。例如,以视觉呈现的图形的形式的路线图的节点和边可以采取用户可选择的图标的形式,这些图标可以被移除、移动、添加,或者具有通过用户输入调整的与其相关联的参数。附加地或替代地,用户可选择的图标的菜单或腭(palate)可以允许修改路线图的节点和边(例如,移除、移动、拷贝或复制和/或调整参数值),或者允许将新的节点或边添加到路线图。因此,可以基于接收到的输入来调整机器人运动。附加地或替代地,可以基于一个或更多个确定的间隙来自动和自主地调整机器人运动(即,在没有用户或操作者输入或干预的情况下)。17.所描述的方法可以是在预运行时间或配置时间期间在机器人的模拟操作期间执行的运动规划中使用,和/或在机器人的运行时间操作期间执行。附图说明18.在附图中,相同的附图标记表示相似的元件或动作。附图中元件的大小和相对位置不一定按比例绘制。例如,各种元件的形状和角度不是按比例绘制的,并且这些元件中的一些被任意放大和定位以提高绘图的易读性。此外,所绘制的元件的特定形状并不旨在传达关于特定元件的实际形状的任何信息,而是仅仅是为了便于在附图中识别而选择的。19.图1是根据一个所示的实施方式,为一个或更多个机器人执行运动规划的基于处理器的系统与在操作环境中操作以执行任务的多个机器人的示意图。20.图2是图1的基于处理器的系统的功能框图,该系统通信地耦合以控制多个机器人中的第一机器人。21.图3是根据一个所示的实施方式在操作环境或工作单元中操作的机器人的示例路线图。22.图4是机器人在其中操作的三维环境中运动的示例表示,包括由机器人的部分所遵循的多个路径。23.图5是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于确定机器人的两个或更多个部分的间隙,并使机器人运动的表示呈现为三维空间表示中的路径或路线图中的边,以及使机器人的两个或更多个部分的所确定间隙的视觉指示在运动表示的呈现中呈现。24.图6是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于确定在操作环境中操作的两个或更多个机器人中的至少一个的间隙,以及在三维空间表示中呈现机器人中的至少一个的运动的表示以及在三维空间表示中确定的间隙的视觉指示。25.图7是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于确定机器人的一个或更多个部分的间隙,并至少部分基于所确定的间隙设置或调整与路线图的相应边相关联的成本度量。26.图8是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于设置或调整与相应边相关联的成本度量,可作为图7所示方法的部分执行。27.图9是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于设置或调整与相应边相关联的成本度量,可作为图7所示方法的部分执行。28.图10是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于确定机器人的部分的间隙,提供所确定间隙的视觉指示,接收输入并至少部分地基于所接收的输入调整机器人的运动。29.图11是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于提供允许调整路线图的至少一部分的用户界面,从而调整一个或更多个机器人的移动或运动。30.图12是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于提供允许调整一个或更多个机器人的移动或运动的图形用户界面。31.图13是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于将所确定间隙的视觉指示提供为与相应边或路径相关联的一个或更多个数值。32.图14是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于将所确定间隙的视觉指示提供为与相应边或路径相关联的一个或更多个颜色。33.图15是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统中操作的方法的流程图,所述方法用于将所确定间隙的视觉指示提供为与相应边或路径相关联的一个或更多个热图。34.图16是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为路线图的形式,所确定间隙的指示为单个数值的形式,所述单个数值表示由机器人的一个或更多个部分在与路线图中的边所表示的转换相对应的运动中经历的最小间隙。35.图17是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为路线图的形式,所确定间隙的指示为的形式,所述多个数值表示由机器人的相应部分在与路线图中的边所表示的转换相对应的运动中经历的相应间隙。36.图18是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为路线图的形式,所确定间隙的指示为单个颜色的形式,所述单个颜色表示由机器人的一个或更多个部分在执行与路线图中的边所表示的转换相对应的运动中经历的最小间隙。37.图19是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为路线图的形式,所确定间隙的指示为热图的多个颜色的形式,所述多个颜色表示由机器人的相应部分在执行与路线图中的边所表示的转换相对应的运动中经历的相应间隙。38.图20是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为三维操作环境的表示中的一个或更多个路径的形式,并且所确定间隙的指示是单个数值的形式,所述单个数值表示由机器人在执行由三维操作环境的表示中的路径所表示的运动中经历的最小间隙。39.图21是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为三维操作环境的表示中的一个或更多个路线图的形式,所确定间隙的指示为多个数值的形式,所述多个数值表示由机器人在执行由三维操作环境的表示中的路径所表示的运动中经历的相应间隙。40.图22是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为三维操作环境的表示中的一个或更多个路径的形式,并且所确定间隙的指示是单个颜色的形式,所述单个颜色表示由机器人在执行由三维操作环境的表示中的路径所表示的运动中经历的最小间隙。41.图23是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为三维操作环境的表示中的一个或更多个路线图的形式,所确定间隙的指示为热图的多个颜色的形式,所述多个颜色表示由机器人在执行由三维操作环境的表示中的路径所表示的运动中经历的相应间隙。42.图24是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为三维操作环境的表示中的两个或更多个路径的形式,并且所确定间隙的指示是单个数值的形式,所述单个数值表示由机器人的两个或更多个部分中的每个在执行由三维操作环境的表示中的路径所表示的运动中经历的最小间隙。43.图25是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为三维操作环境的表示中的两个或更多个路径的形式,并且所确定间隙的指示是多个数值的形式,所述多个数值表示由机器人的两个或更多个部分中的每个在执行由三维操作环境的表示中的路径所表示的运动中经历的相应间隙。44.图26是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为三维操作环境的表示中的两个或更多个路径的形式,并且所确定间隙的指示是单个颜色的形式,所述单个颜色表示由机器人的两个或更多个部分中的每个在执行由三维操作环境的表示中的路径所表示的运动中经历的最小间隙。45.图27是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现,其中,运动的表示为三维操作环境的表示中的两个或更多个路径的形式,并且所确定间隙的指示是热图的多个颜色的形式,所述多个颜色表示由机器人的两个或更多个部分中的每个在执行由三维操作环境的表示中的路径所表示的运动中经历的相应间隙。46.图28是显示的用户界面的图像,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现。具体实施方式47.在以下描述中,阐述了某些特定细节,以便提供对各种公开实施例的透彻理解。然而,相关领域的技术人员将认识到,实施例可以在没有一个或更多个这些特定细节的情况下或者利用其他方法、组件、材料等来实施。在其他情况下,与基于处理器的系统、计算机系统、致动器、致动器系统和/或通信网络或信道相关联的公知结构没有详细示出或描述,以避免不必要地模糊对实施例的描述。在其他情况下,用于生成一个或更多个物体等的感知数据和体积表示的公知运动规划方法和技术和/或计算机视觉方法和技术没有详细描述,以避免不必要地模糊对实施例的描述。48.除非上下文另有要求,否则在整个说明书和所附权利要求书中,词语“包括”及其变型应被解释为开放的、包含的意思,即“包括但不限于”。49.在整个说明书中提到“一个实施方式”或“实施方式”或者“一个实施例”或“实施例”意味着结合该实施例描述的特定特征、结构或特性包括在至少一个实施方式或至少一个实施例中。因此,在整个说明书的不同地方出现的短语“一个实施方式”或“实施方式”或者“一个实施例”或“实施例”不一定都指同一实施方式或实施例。此外,在一个或更多个实施方式或实施例中,特定特征、结构或特性可以以任何合适的方式组合。50.如在本说明书和所附权利要求中所使用的,除非内容另有明确规定,否则单数形式“一”、“一个”和“所述”包括复数个指代物。还应该注意,除非上下文明确另有规定,否则术语“或”通常以其包括“和/或”的含义使用。51.如本说明书和所附权利要求书中所使用的,术语“模块”在前面没有紧接着“程序”或“逻辑”是指电路(例如,处理器,例如微处理器、微控制器、中央处理单元(cpu)、cpu核心、专用集成电路(asic),现场可编程门阵列(fpga))执行在硬件、软件和/或固件中定义的逻辑(例如一组指令或算法)。52.如本说明书和所附权利要求书中所使用的,术语“程序模块”是指可以以存储在非暂时性介质中的一组指令或算法的形式执行的逻辑。53.如本说明书和所附权利要求书中所使用的,术语“机器人”是指一个或更多个机器人和/或一个或更多个机器人的部分。虽然通常根据机器人进行讨论,但各种结构、动作和/或操作可应用于一个、两个或甚至更多机器人在其中操作的操作环境。54.如本说明书和所附权利要求书中所使用的,术语“操作环境”或“环境”用于指一个、两个或更多个机器人在其中操作的体积、空间或工作单元。操作环境可以包括各种物体,例如障碍物(即机器人要避开的物体)和/或工件(即机器人将与之交互或作用的物体)。55.如本说明书和所附权利要求书中所使用的,术语“路径”是指二维或三维空间中的点的集合或轨迹,术语“轨迹”是指包括将到达这些点中的某些点的时间的路径,并且可以可选地还包括速度和/或加速度值。56.如本说明书和所附权利要求书中所使用的,术语“三维空间表示”或“3d空间表示”是指一个或更多个机器人在其中操作的三维或3d操作环境的表示,无论是在二维或三维图像的呈现或显示中视觉表示,或者如存储在非暂时性处理器可读介质中的数据结构中逻辑表示的。57.如在本说明书和所附权利要求书中所使用的,术语“路线图”可与术语“运动规划图”互换使用,并且是指包括多个节点和多个边的图形表示,每个边联接相应节点对的节点,所述节点表示机器人的相应状态、配置或姿态,所述边表示由相应边联接的节点对的节点所表示的机器人的相应对的状态、配置或姿态之间的合法或有效的相应转换,无论是在二维或三维图像的呈现或显示中视觉表示,或者如存储在非暂时性处理器可读介质中的数据结构中逻辑表示的。状态、配置或姿态可以例如表示相应机器人102的每个关节的关节位置、方向、姿态或坐标的集合。因此,每个节点可以表示机器人102或机器人102的部分的姿态,该姿态完全由组成机器人102的关节的姿态定义。58.如在本说明书和所附权利要求中使用的,术语“任务”用于指机器人任务,其中机器人在优选不与其环境中的障碍物发生碰撞的情况下从姿态a转换到姿态b。任务可以涉及抓取或松开物品、移动或放下物品、旋转物品或取回或放置物品。从姿态a到姿态b的转换可以可选地包括一个或更多个中间姿态之间的转换。59.如本说明书和所附权利要求书中所使用的,术语“颜色”是指人类可感知的可区分的颜色(例如,红色、橙色、绿色、蓝色)以及人类可感知可区分的色调,无论这些颜色或色调的差异是由于色度、值、饱和度和/或色温的差异。60.如在本说明书和所附权利要求中所使用的,当在是否会发生或导致碰撞的上下文中使用时,术语“确定”及其变型意指对给定姿势或两个姿势之间通过多个中间姿势的移动是否会导致机器人的一部分与某个物体(例如,机器人的另一部分、另一机器人的部分、持久障碍、瞬时障碍)之间的碰撞进行评估或预测。61.如本说明书和所附权利要求书中所使用的,术语“确定”在间隙或空隙的上下文中使用时,是指当执行机器人或其部分的运动或移动时,经由处理器对机器人或其一部分与操作环境中的一个或更多个物体之间将存在或存在的距离或空间的量进行计算评估或预测,例如沿着路径的运动或移动,或者由路线图中的边表示的运动或移动。62.如本说明书和所附权利要求书中所使用的,术语“传感器”包括检测操作环境的物理特性的传感器或换能器,以及与这种检测传感器或换能器相关联的任何换能器或其他能量源,例如发射能量的换能器,该能量被反射、折射或以其他方式返回,例如发光二极管、其他光源、激光器和激光二极管、扬声器、触觉引擎、超声能量源等。63.如本说明书和所附权利要求书中所使用的,对机器人的操作或移动或运动的提及包括整个机器人的操作或移动或运动,和/或机器人的部分(例如,机器人附肢、臂端工具、末端执行器)的操作或移动或运动。64.从给定机器人(例如,第一机器人)的角度描述了关于操作(例如,运动规划、间隙确定)的至少一些实施方式,例如第一机器人的运动规划,例如在操作环境中存在一个或更多个其他机器人的情况下。此类描述中对“其他机器人”的提及是指环境中除正在执行所述操作的特定实例的特定机器人之外的任何其他机器人。注意,可以对两个或更多个不同的机器人同时执行类似的操作,并且从对第一机器人的运动规划和间隙确定操作的角度来看,将第二机器人视为其他机器人。而从第二机器人的运动规划和间隙确定操作的角度来看,第一机器人被认为构成其他机器人。65.本文中提供的公开内容的标题和摘要仅是为了方便,不用于解释实施例的范围或含义。66.图1示出了根据一个所示的实施方式的执行运动规划的基于处理器的系统100与在操作环境104(也称为工作单元)中操作以执行任务的一个或更多个机器人102a、102b(所示为两个,统称为102)。67.机器人102可以采用多种形式中的任何一种。通常,机器人102会采用一个或更多个机器人附肢105(在图1中仅标注一个)的形式或具有一个或更多个机器人附肢。机器人附肢105可以包括一个或更多个连杆装置,其具有一个或更多个连杆105a、一个或更多个关节105b、末端执行器或臂端工具105c(通常位于工具中心点105d处)、以及可选的一个或更多个线缆。基于处理器的系统100可以采用其他形式的机器人102(例如自动驾驶车辆)(具有或没有可移动的附肢)。68.操作环境104通常表示机器人102a、102b可以在其中操作和移动的三维空间(尽管在某些受限的实施方式中,操作环境104可以表示二维空间或区域)。69.操作环境104可以包括障碍物形式的一个或更多个物体,例如机械件(例如输送机106)、桩、柱、墙壁、天花板、地板、桌子、人和/或动物。应注意,当从另一个机器人102a的角度考虑时(即,当对机器人102a进行运动规划时),在机器人102a、102b的部分在空间和时间上会交叠或者如果不控制运动以避免碰撞的情况下会发生碰撞的状况下,机器人102b或其一部分可能构成障碍。另外,操作环境104可以包括机器人102作为执行任务的一部分操纵的工作物品或工件108的形式的一个或更多个物体(例如一个或更多个包裹、包装、紧固件、工具、物品或其他物体)。70.基于处理器的系统100可以包括一个或更多个运动规划器110。在至少一些实施方式中,可以采用单个运动规划器110来执行两个、更多个或所有机器人102的运动规划。在其他实施方式中,采用相应的运动规划器110来执行机器人102a、102b中的每个的运动规划。71.运动规划器110可选地通信地耦合以控制机器人102中的一个或更多个,例如通过向机器人102提供相应的运动规划115(示出一个)以由机器人102执行。运动规划器110还通信地耦合以接收各种类型的输入。例如,运动规划器110可以接收机器人几何模型112(也称为运动学模型)。又例如,运动规划器110可以接收任务114。运动规划器110可以可选地接收其他路线图117,其中其他路线图117是对于正在执行运动规划或间隙确定的特定实例的给定机器人102而言在操作环境104中操作的其他机器人102的路线图117。例如,对于第一机器人102a的运动规划或间隙确定,第二机器人102b将被认为是其他机器人。当对第二机器人102b进行运动规划或执行间隙确定时,第一机器人102a将被认为是其他机器人。72.运动规划器110至少部分地基于接收到的输入来产生或生成路线图116。73.机器人几何模型(几何模型)112例如根据关节、自由度、尺寸(例如,连杆长度)方面和/或根据机器人102的相应“配置空间”或“c空间”来限定给定机器人102的几何结构。机器人几何模型112到路线图(即,运动规划图)116的转换可以在运行时间或任务执行之前发生,例如由基于处理器的服务器系统(未示出)执行,并提供给运动规划器110。替代地,例如,路线图116可以由基于处理器的系统100基于各种技术中的任何技术利用机器人几何模型112来生成。74.例如,任务114可以根据相应机器人102的结束姿态、结束配置或结束状态和/或中间姿态、中间配置或中间状态来指定要执行的任务。姿态、配置或状态例如可以根据相应机器人102的关节位置和关节角度/旋度(例如,关节姿态、关节坐标)来限定。75.运动规划器110可选地通信地耦合以接收例如由感知系统124提供的环境模型120形式的输入。环境模型120表示工作单元或操作环境104中的静态和/或动态物体,这些物体是先验已知的和/或非先验已知的。例如,环境模型120可以采取点云、占用网格、盒(例如,边界盒)或其他几何物体的形式,或者表示存在于操作环境104中的障碍物的体素流(即,“体素”是3d或体积像素的等同物)的形式。环境模型120可以由感知系统124从经由一个或更多个传感器122a、122b(例如,二维或三维相机、飞行时间相机、激光扫描仪、lidar、基于led的光电传感器、基于激光的传感器、无源红外(pir)运动传感器、超声波传感器、声纳传感器)感测到的原始数据生成。76.感知系统124可以包括一个或更多个处理器,其可以执行一条或更多条机器可读指令,该指令使得感知系统124生成操作环境104的相应离散化表示,机器人102将在该操作环境104中操作以执行各种不同场景的任务。感知系统124可以与基于处理器的系统100不同并且分离,但是通信地耦合到基于处理器的系统100。或者,感知系统124可以形成基于处理器的系统100的部分。77.运动规划器110可选地通信地耦合以接收静态物体数据(未示出)形式的输入。静态物体数据表示操作环境104中的静态物体(例如,大小、形状、位置、占用的空间),这例如可以是先验已知的。例如,静态物体可以包括操作环境104中的一个或更多个固定结构,例如桩、柱、墙壁、天花板、地板、输送机106。78.运动规划器110可操作以动态生成运动规划115,以使机器人102在操作环境104中执行任务,同时考虑操作环境104内的物体(例如,输送机106)(包括其他机器人102)。例如,运动规划器110考虑机器人102或其部分与操作环境104中的物体(例如,输送机106)(包括其他机器人102)之间的碰撞评估和确定的间隙。运动规划器110在生成运动规划115时可以可选地考虑由静态物体数据和/或环境模型120表示的先验静态物体的表示。可选地,当为给定机器人(例如,第一机器人120a)进行运动规划时,运动规划器110可以考虑其他机器人102(例如,第二机器人102b)在给定时间的运动状态,例如,另一个机器人102(如,第二机器人102b)是否已经完成给定的运动或任务,以及允许基于正在完成的其他机器人之一(例如,第二机器人102b)的运动或任务来重新计算给定机器人(例如,第一机器人102a)的运动规划,从而使先前排除的路径或轨迹可供选择。可选地,运动规划器110可以考虑机器人102的操作状况,例如故障状况的发生或检测,阻塞状态的发生或探测,和/或加速或可替换地延迟或跳过运动规划请求的请求的发生或侦测。79.基于处理器的系统100可以包括一个或更多个间隙确定和表示模块126,例如分别用于机器人102a、102b中的每个的相应间隙确定和表示模块126。在至少一些实施方式中,可以采用单个间隙确定和表示模块126来为两个、更多个或所有机器人102确定间隙。如本文所解释的,间隙确定和表示模块评估机器人102或其部分相对于操作环境104中的一个或更多个物体的运动,以确定在机器人或其部分的运动或移动期间机器人102或其部分与物体之间的间隙或空隙的量。该评估在碰撞评估之外进行,甚至可以作为执行碰撞评估的一部分。间隙确定和表示模块126可以例如模拟路线图116中指定的运动,评估机器人102的一个或更多个部分(例如,连杆、关节、臂端工具、工具中心点)与操作环境104中的一个或更多个物体(包括在运动范围内的其他机器人102)之间的距离。80.基于处理器的系统100可以包括一个或更多个呈现系统128。替代地,所述呈现系统128可以与基于处理器的系统100不同并且分离,但是通信地耦合到基于处理器的系统100。呈现系统128包括一个或更多个显示器128a,也被称为显示屏。呈现系统128可以包括一个或更多个用户界面组件或设备,例如键盘128b、小键盘、计算机鼠标128c、轨迹球、手写笔或其他用户输入组件或设备中的一个或更多个。显示器128a可以例如采用触摸屏显示器的形式,以作为用户输入和输出(i/o)组件或设备进行操作。在至少一些实施方式中,呈现系统128可以可选地采取计算机系统128d(例如,个人计算机系统、高性能工作站,例如cad工作站)的形式,例如具有其自己的处理器、存储器和/或存储设备。可替换地,操作可以包括经由例如在软件即服务(saas)实施方式中的基于web的界面的呈现,其中处理在远程于显示器128a的位置执行。81.基于处理器的系统100可以包括一个或更多个修改和/或调整模块130,例如分别用于机器人102a、102b中的每个的相应修改和/或调整模块130。在至少一些实施方式中,可以采用单个修改和/或调整模块130用于两个、更多个或所有机器人102。如本文所解释的,修改和/或调整模块130可以至少部分基于所确定的间隙和/或至少部分基于输入对路线图进行修改或调整,所述输入又至少部分基于确定的间隙。在某些情况下,可以直接或自主地进行修改或调整(即,无需用户或操作者输入或其他用户或操作者干预)。例如,修改和/或调整模块130可以基于所确定的间隙来自动地和自主地设置或调整路线图116的一个或更多个边的相应成本度量,例如,在确定的间隙不能满足条件(例如,小于指定或标称间隙)的情况下。在一些情况下,可以基于用户或操作者干预(例如,用户或操作者输入、用户或操作者选择)间接地对所确定的间隙进行修改或调整,用户或操作者干预本身可以至少部分地基于用户或操作者对所确定间隙的指示的考虑。例如,修改和/或调整模块130可以基于用户或操作者的输入或干预来添加节点、添加边、删除节点、删除边、复制或拷贝节点、复制或拷贝边、移动节点、移动边、设置或改变各种参数的值,所述用户或操作者输入或干预本身基于对所确定间隙的显示的指示的用户评估。82.图1中箭头所示为各通信路径。通信路径可以例如采用一个或更多个有线通信路径(例如,电导体、信号总线或光纤)和/或一个或更多个无线通信路径(例如,经由rf或微波无线电和天线、红外线收发器)的形式。运动规划器110中的每个可以可选地直接或间接地彼此通信地耦合,以向除用于正被规划运动的机器人(例如,机器人102a)之外的机器人(如,机器人102b)的运动规划器110提供其他路线图117。例如,运动规划器110可以经由网络基础设施,例如非专有网络基础设施(例如,以太网网络基础设施),彼此通信地耦合。83.图2更详细地示出了执行运动规划的基于处理器的系统100和图1的第一机器人102a。基于处理器的系统100包括运动规划器110,该运动规划器生成运动规划115以控制第一机器人102a的操作,并且可选地可以对路线图116(图1)进行调整(例如通过成本度量的设置)。基于处理器的系统100还包括间隙确定和表示模块126(图2中标记为“间隙模块”),该模块确定在机器人或其部分的运动或移动期间机器人102或其部分与物体之间的间隙或空隙的量,并导致所确定间隙的视觉指示的呈现。84.基于处理器的系统100可以包括其他运动规划器,以生成运动规划并可选地导致对其他机器人(图2中未示出)的路线图的调整,并且可以包括其他间隙确定和表示模块126,以生成其他机器人的确定间隙并呈现所确定间隙的视觉指示。85.基于处理器的系统100可以通信地耦合,例如经由至少一个通信信道(例如,发射机、接收机、收发机、无线电、路由器、以太网),以从路线图或运动规划图的一个或更多个源接收路线图或运动规划图。路线图或运动规划图的源可以与运动规划器110分离并与之不同,例如,可以由机器人102的相应制造商或一些其他实体来操作或控制的服务器计算机。路线图或运动规划图可以在运行时间之前确定、设置或定义(即,在执行任务之前定义),例如在预运行时间或配置时间期间。当响应性不是一个特别问题时,这有利地允许在运行时间之前执行最计算密集的工作中的一些工作。可以至少部分地基于所确定的间隙来调整或更新路线图或运动规划图,例如如本文所述。86.如上所述,例如,每个机器人102可以包括机器人附肢105(图1),该附肢包括一组连杆105a、关节105b、末端执行器或臂端工具105c。机器人102还可以包括一个或更多个致动器205(图2中示出三个,仅标注一个),所述致动器205响应于控制或驱动信号耦合并可操作以移动连杆。致动器205可以采取电动机、步进电动机、螺线管、气动致动器或液压致动器中的一个或更多个的形式)。例如,气动致动器可以包括一个或更多个活塞、气缸、阀、贮气器和/或压力源(例如,压缩机、鼓风机)。例如,液压致动器可以包括一个或更多个活塞、气缸、阀、贮液器(例如,低压缩性液压流体)和/或压力源(例如,压缩机、泵)。87.每个机器人102可以包括一个或更多个运动控制器(例如,马达控制器)220(在图2中仅示出一个),该运动控制器接收控制信号(例如以运动规划115的形式),并且提供驱动信号以驱动致动器205。88.对于每个机器人102a、102b(图1),都可以有基于处理器的系统100,或者一个基于处理器的系统100可以为两个或更多个机器人102a和102b执行运动规划。为了便于说明,将参照图2详细描述一个基于处理器的系统100。本领域技术人员将认识到,该描述可以应用于基于处理器的系统100的类似或甚至相同的附加实例。89.基于处理器的系统100可以包括一个或更多个处理器222以及相关联的一个或更多个非暂时性计算机或处理器可读存储介质(例如系统存储器224a、驱动器224b和/或处理器222的存储器或寄存器(未示出))。非暂时性计算机或处理器可读存储介质经由一个或更多个通信信道(例如系统总线227通信地耦合到处理器222。系统总线227可以采用任何已知的总线结构或架构,包括具有存储器控制器的存储器总线、外围总线和/或本地总线。一个或更多个这样的组件也可以或替代地经由一个或更多个其他通信信道(例如,能够高速通信的一个或更多个并行线缆、串行线缆或无线网络信道,例如,通用串行总线(“usb”)3.0、外围组件互连高速(pcie)或经由)彼此通信。90.基于处理器的系统100还可以可通信地耦合到一个或更多个远程计算机系统,例如服务器计算机、台式计算机、膝上型计算机、超便携式计算机、平板计算机、智能手机、可穿戴计算机和/或传感器(图2中未示出)。远程计算系统(例如,服务器计算机)可以用于编程、配置、控制或以其他方式与数据(例如,其他路线图117、任务114的规范)交互或将数据输入到基于处理器的系统100和基于处理器的系统100的各种组件。这种连接可以通过使用互联网协议的一个或更多个通信信道(例如一个或更多个广域网(wan)(例如以太网或互联网))。91.如应当注意的,基于处理器的系统100可以包括一个或更多个处理器222(即电路)、非暂时性存储介质(例如,系统存储器224a、驱动器224b)和联接各种系统组件的系统总线227。处理器222可以是任何逻辑处理单元,例如一个或更多个微控制器、中央处理单元(cpu)、数字信号处理器(dsp)、图形处理单元(gpu)、现场可编程门阵列(fpga)、专用集成电路(asic)、可编程逻辑控制器(plc)等。系统存储器224a可以包括只读存储器(“rom”)226,随机存取存储器(“ram”)228、闪存230和eeprom(未示出)。能够由rom 226存储的基本输入/输出系统(“bios”)232包含帮助在基于处理器的系统100内的元件之间(例如在启动期间)传递信息的基本例程。92.驱动器224b可以是例如用于读写磁盘的硬盘驱动器(hdd)、用于读写固态存储器的固态驱动器(ssd,例如闪存)和/或用于读写可移动光盘的光盘驱动器(odd)。基于处理器的系统100还可以包括在各种不同实施例中的这种驱动器的任何组合。驱动器224b可以经由系统总线227与处理器222通信。驱动器224b可以包括耦合在这样的驱动器224b和系统总线227之间的接口或控制器(未示出)。驱动器224b及相关联的计算机可读介质为基于处理器的系统100提供计算机或处理器可读和/或可执行指令、数据结构、程序模块和其他数据的非易失性存储。相关领域的技术人员将理解,可以使用能够存储计算机可访问的数据的其他类型的计算机可读介质(例如worm驱动器、raid驱动器、磁带盒、数字视频光盘(“dvd”)、伯努利盒式磁带、ram、rom、智能卡等)。93.可执行指令和数据能够存储在系统存储器224a(例如操作系统236、一个或更多个应用程序238和程序数据242)中。应用程序238可以包括处理器可执行指令、逻辑和/或算法,其使处理器222执行以下中的一个或更多个:生成机器人102将在其中操作的操作环境104(图1)的离散表示,包括操作环境104中的物体(例如障碍物和/或目标物体或工件),其中其他机器人102的规划的运动可以表示为障碍物;生成运动规划115,包括调用或以其他方式获得碰撞评估的结果,确定机器人102或其部分与操作环境104中的物体(例如障碍物,例如输送机106)之间的间隙;呈现运动的表示(例如,路线图、三维空间中的路径的表示)以及所确定间隙的视觉指示(例如,数值、颜色、热图、视觉提示或效果),修改和/或调整路线图116(图1),包括例如设置路线图中边的成本值,评估路线图中的可用路径;可选地存储所确定的多个路线图和/或提供运动规划115以供机器人102执行。运动规划(例如,碰撞检测或评估)、基于碰撞检测和/或基于间隙的确定或评估对路线图中边的成本值的更新,可以如本文所述以及通过引用并入本文的参考文献中所述的那样来执行。碰撞检测或评估可以使用本文其他地方描述的各种结构和技术来执行。间隙确定或评估可以使用本文其他地方描述的各种结构和技术来执行。另外,应用程序238可以包括一个或更多个机器可读和机器可执行指令,这些指令使处理器222执行其他操作,例如可选地处理(经由传感器捕获的)感知数据。另外,应用程序238可以包括一个或更多个机器可执行指令,这些指令使处理器222执行本文和通过引用并入本文的参考文献中描述的各种其他方法。94.虽然在图2中示出为存储在系统存储器224a中,但操作系统236、应用程序238和/或程序数据242能够存储在其他非暂时性计算机或处理器可读介质(例如驱动器224b)上。95.基于处理器的系统100的运动规划器110可以包括专用运动规划器硬件(例如,fpga),或者可以全部或部分地经由处理器222和存储在系统存储器224a和/或驱动器224b中的处理器可执行指令、逻辑或算法来实现。96.运动规划器110可以包括或实现可选的运动转换器250、碰撞检测器252和路径分析器256。97.修改和/或调整模块130可以包括路线图调整器259和成本设定器254。98.运动转换器250将机器人102中的其他机器人的运动转换为障碍物的表示,这有利地允许在评估给定机器人(例如机器人102a)的碰撞和间隙时考虑其他机器人(例如,机器人102b)的运动。运动转换器250例如从其他运动规划器110接收运动规划或运动的其他表示。运动转换器250然后确定与一个或更多个运动相对应的区域或体积。例如,运动转换器250可以将运动转换为相应的扫掠体积,即由相应的机器人或其部分在运动规划所表示的姿态之间移动或转换时扫掠的体积。有利地,运动规划器110可以简单地对障碍物(例如,扫掠体积)进行排队,并且可以不需要确定、跟踪或指示对应运动或扫掠体积的时间。虽然被描述为用于给定机器人102的运动转换器250,将其他机器人的运动转换为障碍物,但在一些实施方式中,其他机器人102b(图1)可以向给定机器人102提供特定运动的障碍物表示(例如,扫掠体积)。99.碰撞检测器252执行碰撞检测或分析,确定给定机器人102或其部分的转换或运动是否会导致与障碍物的碰撞。如前所述,其他机器人102的运动可以有利地表示为障碍物。因此,碰撞检测器252可以确定一个机器人(例如,机器人102a)的运动是否会导致与移动通过工作单元或操作环境104(图1)的另一个机器人(例如机器人102b)的碰撞。100.在一些实施方式中,碰撞检测器252实现基于软件的碰撞检测或评估,例如执行边界盒-边界盒碰撞评估或基于在其运动期间由机器人102扫掠或由机器人的部分扫掠的体积的几何(例如,球体)表示层级进行的评估。在一些实施方式中,碰撞检测器252实现基于硬件的碰撞检测或评估,例如采用一组专用硬件逻辑电路来表示障碍物,并通过专用硬件逻辑电路流式传输运动的表示。在基于硬件的碰撞检测或评估中,碰撞检测器252可以使用一个或更多个可配置的电路阵列,例如一个或更多个fpga 258,并且可以可选地产生布尔碰撞评估。101.路线图调整器259直接(例如,自主)或间接(例如,基于用户或操作者输入,其本身基于视觉指示)基于由处理器222确定的所确定的间隙或空隙来调整或修改路线图116(图1)。例如,路线图调整器259可以将一个或更多个节点添加到路线图116,从路线图116移除一个或更多个节点,和/或移动路线图116中的一个或更多个节点。附加地或替代地,路线图调整器259可以例如将一个或更多个边添加到路线图116,从路线图116移除一个或更多个边,和/或移动路线图116中的一个或更多个边。附加地或替代地,路线图调整器259可以例如设置或以其他方式调整与路线图116相关联或与路线图的一个或更多个节点或边相关联的一个或更多个参数的值。例如,路线图调整器259可以调整或以其他方式设置与一个或更多个边相关联的移动速度和/或调整路径平滑参数的值。102.成本设置器254可以至少部分基于运动规划器110的碰撞检测或评估,并且可选地至少部分基于由确定间隙模块264确定的确定间隙,来设置或调整路线图116(图1)中的边的成本度量。例如成本设置器254可以为表示导致或可能导致碰撞的,和/或导致或可能导致机器人或其部分与操作环境104中的一个或更多个物体之间保持的间隙不足的(例如,小于指定或标称间隙)的姿态之间的状态或运动之间的转换的边的成本度量设置相对较高的值(图1)。此外,例如成本设置器254可以为表示导致或可能不会导致碰撞的,和/或可能不会导致机器人或其部分与操作环境104中的一个或更多个物体之间保持的间隙不足的(例如,小于指定或标称间隙)的姿态之间的状态或运动之间的转换的边的成本度量设置相对较低的值。设置成本可以包括通过一些数据结构(例如,字段、指针、表、向量)设置或调整与对应边在逻辑上相关联的成本度量的值。成本度量可以例如基于成本函数来确定,该成本函数具有一个或更多个参数,例如碰撞评估参数、间隙评估参数、延迟参数和/或能量消耗参数。这些参数在成本函数中可以具有它们自己的相应权重。例如,碰撞评估可能比间隙评估更重地加权。又例如,间隙评估参数可以比延迟参数和/或能量消耗参数更重地加权。成本度量可以在一定范围内,例如0~10、0~100、0~1000或0~10000。103.路径分析器256可以使用具有成本度量的路线图来确定路径(例如,最优的或优化的)。例如,路径分析器256可以构成最低成本路径优化器,该优化器确定两个状态、配置或姿态之间的最低或相对低成本的路径,这些状态、配置或者姿态由路线图中的各个节点表示。路径分析器256可以使用或执行任何各种路径查找算法,例如最低成本路径查找算法、考虑与每个边在逻辑上相关联的成本值和可选的其他参数,所述成本值表示碰撞的可能性和/或不保持指定间隙的可能性。104.可以使用各种算法和结构来确定最小成本路径,包括实现bellman-ford算法的算法和结构,但也可以使用其他算法和结构,包括但不限于任何这样的方法,其中最小成本路径被确定为路线图116中的两个节点之间的路径,使得其组成边的成本度量或权重的总和最小化。该方法通过使用表示碰撞评估以及间隙确定或机器人运动评估的路线图116来改进机器人102的运动规划技术,以增加效率和响应时间,从而找到在没有碰撞的情况下执行任务的“最佳”路径,同时保持指定或标称间隙。105.运动规划器110可以可选地包括修剪器260。修剪器260可以接收表示其他机器人的运动完成的信息,该信息被命名为运动完成消息。或者,可以设置一个标志来以指示完成。作为响应,修剪器260可以移除表示现在已完成运动的障碍物或障碍物的部分。这可以允许为给定的机器人(例如,机器人102a)生成新的运动规划,这可以更有效,或者允许给定的机器人参与执行先前被另一个机器人(例如机器人102b)的运动阻止的任务。这种方法有利地允许运动转换器250在生成运动的障碍物表示时忽略运动的定时,同时仍然实现比使用其他技术更好的处理量。运动规划器110可以另外使得碰撞检测器252在给定障碍物的修改的情况下执行新的碰撞检测或评估以及间隙确定或评估,以产生更新的路线图116(其中与边相关联的边权重或成本已经被修改),并且使得成本设置器254和路径分析器256更新成本度量并相应地确定新的或修改的运动规划。106.运动规划器110可以可选地包括环境转换器(未示出),该环境转换器将来自可选传感器(例如,数码相机,未示出)的输出(例如,环境的数字化表示)转换为障碍物的表示。因此,运动规划器110可以执行考虑操作环境104(图1)中的临时物体(例如人、动物等)的运动规划。107.间隙确定和表示模块126评估机器人102或其部分相对于操作环境104中的一个或更多个物体的运动,以确定在机器人或其部分的运动或移动期间机器人102或其部分与物体之间的间隙或空隙的量。为此,间隙确定和表示模块126可以使用运行运动模块262,该模块模拟或实际执行由一个或更多个机器人(例如,机器人102a,图1)的路线图116或其部分(例如,边)指定的运动。间隙确定和表示模块126可以包括确定间隙模块264,以在模拟或实际执行运动时,确定机器人102(例如,机器人102a)的一个或更多个部分相对于操作环境104中的物体(包括其他机器人(例如,图1中的机器人102b))的间隙或空隙。108.可以采用各种方法来确定间隙,例如采用利用姿态网格或球体树(或者替代地,扫掠体积)的方法。在一些实施方式中,间隙检测用于离线使用,包括路线图构建、路线图调整和/或可视化。由于通常不可能提前规划动态物体,因此间隙检测通常用于静态物体。在间隙检测被用于离线使用(例如,路线图构建、路线图调整和/或可视化)的情况下,所采用的方法不需要像在在线应用程序中使用(例如,实时控制机器人)一样快。109.执行间隙检测至少有两种方法。一种方法是将多边形网格用于自定义软件或基于公开可用软件(例如,柔性碰撞库或fcl)的软件。如果提供一组网格(例如三角形网格),软件将确定网格之间的距离。这种方法本质上是通用的,并不是专用于机器人。当采用这种方法时,系统将在网格中覆盖操作环境中的障碍物。该系统可以另外用网格覆盖机器人的每个运动的扫掠体积。在这种方法下,将机器人的运动分解为多个中间姿态可能更容易,其中,例如,选择数量以满足连续姿态中关节角度之间的差异的阈值。然后,该系统将用各自的网格包裹每个姿态。在另一种方法中,该系统采用数据结构,至少在某些方面类似于申请人自己提交的各种专利申请中描述的用于碰撞检测中的数据结构。例如,该系统可以用距离场(例如欧几里得距离场)来表示操作环境中存在的障碍物,并将机器人的姿态表示为球体树。对于系统来说,计算从球体树到距离场中任何东西的距离相对简单。110.间隙确定和表示模块126还包括将间隙与路径或边相关联模块266,其将所确定的间隙与相应的路径或边逻辑地相关联(例如在存储在存储器或一些其他处理器可读介质中的数据结构中)。在一些实施方式中,确定间隙模块264或将间隙与路径或边相关联模块266可以直接通信地耦合到成本设置器254,使得成本设置器254可以基于所确定的间隙自动且自主地(即,在没有用户或操作者输入或其他用户、操作者或人工干预的情况下)设置或调整与边相关联的成本度量。111.间隙确定和表示模块126使得例如以将机器人或其部分的移动或运动示出为操作环境的三维空间中的路径的三维表示的形式来呈现移动或运动的表示,或者以将运动示出为边的路线图的形式,所述边表示在机器人的c空间中机器人的配置或姿态之间的转换。间隙确定和表示模块126另外使得所确定间隙的视觉指示在移动或运动的表示中呈现,例如作为数值、颜色、热图和/或提示或视觉效果。例如,间隙确定和表示模块126可以包括生成显示文件模块268,该模块生成显示文件,该显示文件在被显示时包括运动的表示和所确定间隙的视觉指示。生成显示文件模块268可以与用于指示所确定间隙的显示文件分离地生成用于表示运动的显示文件。可替换地,生成显示文件模块268可以生成将运动的表示和所确定间隙的指示组合在一起的显示文件。112.可选地,间隙确定和表示模块126包括接收输入模块270,其接收来自一个或更多个输入设备(例如,触摸屏显示器128a、键盘128b、计算机鼠标128c)的输入。基于接收到的输入,接收输入模块270可以向路线图调整器259和/或成本设置器254提供指令、命令和/或数据。113.处理器222和/或运动规划器110可以是或可以包括任何逻辑处理单元,例如一个或更多个中央处理单元(cpu)、数字信号处理器(dsp)、图形处理单元(gpu)、专用集成电路(asic)、现场可编程门阵列(fpga)、可编程逻辑控制器(plc)等。商用计算机系统的非限制性示例包括但不限于美国公司提供的celeron、core、core 2、itanium和xeon系列微处理器;美国amd公司提供的k8、k10、bulldozer和bobcat系列微处理器;美国苹果公司提供的a5、a6和a7系列微处理器;美国qualcomm公司提供的snapdragon系列微处理器;以及美国oracle公司提供的sparc系列微处理器。图2所示的各种结构的构造和操作可以实现或采用在2017年6月9日提交的标题为“motion planning for autonomous vehicles and reconfigurable motion planning processors”的国际专利申请no.pct/us2017/036880中描述的或与之类似的结构、技术和算法;2016年1月5日提交的标题为“specialized robot motion planning hardware and methods of making and using same”的国际专利申请公开no.wo 2016/122840;和/或2018年1月12日提交的标题为“apparatus,method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects”的美国专利申请no.62/616,783;和/或2020年10月26日提交的u.s.63/105542经适当修改以按本文所述操作。114.尽管不是必需的,但是将在计算机可执行指令的一般上下文中描述许多实施方式,例如存储在计算机或处理器可读介质上并由一个或更多个计算机或处理器执行的程序应用模块、对象或宏,所述计算机或处理器可以执行障碍表示、碰撞评估、间隙确定和其他运动规划操作。115.运动规划操作可以包括但不限于生成以下中的一个、更多个或全部或者将以下中的一个、更多个或全部转换为数字形式:基于机器人几何模型112(图1)、任务114(图1)、路线图116的机器人几何形状的表示;以及机器人在各状态下或姿势中和/或在状态或姿势之间移动期间占据的体积(例如,扫掠体积)的表示,其中所述数字形式例如是点云、欧几里德距离场、数据结构格式(例如,分层格式、非分层格式)和/或曲线(例如,多项式或样条表示)。运动规划操作可以可选地包括但不限于生成以下中的一个、更多个或全部或者将以下中的一个、更多个或全部转换为数字形式:由静态物体数据表示的静态或持久障碍的表示和/或表示静态或瞬时障碍的环境模型120(图1),其中所述数字形式例如是点云、欧几里德距离场、数据结构格式(例如分层格式、非分层格式)和/或曲线(例如多项式或样条表示)。116.运动规划操作可以包括但不限于使用各种碰撞评估技术或算法(例如,基于软件的、基于硬件的)来确定或检测或预测机器人的各状态或姿势的碰撞或机器人在状态或姿势之间的运动。运动规划操作可以包括但不限于,确定或检测机器人或其部分与操作环境中的一个或更多个物体之间的间隙(由机器人或其一部分在执行运动时经历),呈现确定的间隙,以及至少部分地基于确定的间隙生成或修改路线图。117.在一些实施方式中,运动规划操作可以包括但不限于确定一个或更多个运动规划;存储所确定的运动规划;和/或提供运动规划以控制机器人的操作。118.在一个实施方式中,响应于函数调用或类似过程来执行碰撞检测或评估。碰撞检测器252可以通过一个或更多个现场可编程门阵列(fpga)258和/或一个或更多个专用集成电路(asic)实现,以执行碰撞检测,同时实现低延迟、较低的功耗,并增加能够处理的信息量。119.在各种实施方式中,这样的操作可以完全在硬件电路中执行,或者作为存储在诸如系统存储器224a之类的存储器中并且由一个或更多个硬件处理器222来执行的软件,所述处理器例如为一个或更多个微处理器、数字信号处理器(dsp)、现场可编程门阵列(fpga)、专用集成电路(asic)、图形处理单元(gpu)处理器、编程逻辑控制器(plc)、电可编程只读存储器(eeprom),或者作为硬件电路和存储在存储器中和软件的组合来执行。120.在2017年6月9日提交的标题为“motion planning for autonomous vehicles and reconfigurable motion planning processors”的国际专利申请no.pct/us2017/036880、2016年1月5日提交的标题为“specialized robot motion planning hardware and methods of making and using same”的国际专利申请公开号wo 2016/122840、2018年1月12日提交的标题为“apparatus,method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects”的美国专利申请no.62/616,783、2019年6月3日提交的标题为“apparatus,methods and articles to facilitate motion planning in environments having dynamic obstacles”的美国专利申请no.62/856,548、和/或2020年10月26日提交的经适当修改以按本文所述操作的u.s.63/105542中也描述了可以全部或部分采用的感知、路线图构建、碰撞检测和路径搜索的各方面。相关领域的技术人员将理解,所示实施方式以及其他实施方式能够用其他系统结构和布置和/或其他计算系统结构和布置来实践,包括机器人、手持设备、多处理器系统、基于微处理器或可编程的消费电子产品、个人计算机(“pc”)、联网pc、微型计算机、大型计算机等的那些。实施方式或实施例或其部分(例如,在配置时和运行时)能够在分布式计算环境中实践,其中,任务或模块由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备或介质中。然而,特定类型的信息存储在哪里以及如何存储对于帮助改进运动规划很重要。121.例如,各种运动规划解决方案将路线图116(即,运动规划图)“烧”到处理器(例如,fpga 258)中,并且路线图116中的每个边对应于处理器的不可重新配置的布尔电路。路线图116被“烧”到处理器的设计带来了问题,即处理器电路对于存储多个或大型路线图是有限的,并且通常不能重新配置以用于不同的机器人。122.一种解决方案提供了将路线图116信息放入存储器中的可重新配置的设计。这种方法将信息存储在存储器中而不是“烧”到电路中。另一种方法采用模板化的可重新配置电路来代替存储器。123.如上所述,一些信息(例如,机器人几何模型112)可以在运行时间之前的配置时间期间被捕获、接收、输入或提供。可以在配置时间期间处理接收到的信息,包括对路线图的每个边执行碰撞检测,以产生处理后的信息(例如,机器人在执行路线图中表示为边的运动时所扫过的空间体积),供以后在运行时使用,以便在运行期间加速操作或降低计算复杂性。124.在运行期间,可以对整个操作环境104(图1)执行碰撞检测,包括对于任何姿态或姿态之间的移动,确定机器人102的任何部分是否将与或预计将与机器人102本身的另一部分、与其他机器人102或其部分、与操作环境104中的持续的或静态的障碍物,或者在操作环境中具有未知轨迹的瞬时障碍物(例如人群或人)。125.图3示出了其中一个机器人102a(图1)的示例路线图300,其中,机器人102a的目标是执行任务同时避免与物体碰撞,物体可以包括在操作环境104(图1中)中操作的其他机器人(例如,机器人102b)。126.路线图300分别包括由边310a-310h(在图中表示为节点对之间的直线)连接的多个节点308a-308i(在图中将其表示为空心圆)。每个节点隐式或显式地表示时间和变量,所述时间和变量在机器人102的配置空间中表征机器人102的状态。配置空间通常被称为c空间,并且是路线图300中表示的机器人102a的状态、配置或姿态的空间。例如,每个节点可以表示机器人102a的状态、配置或姿态,其可以包括但不限于位置、方位或位置和方位的组合。状态、配置或姿态可以例如由机器人102a的关节的一组关节位置和关节角度/旋转(例如,关节姿态、关节坐标)来表示。127.路线图300中的边表示机器人102a的这些状态、配置或姿态之间的有效或允许的转换。路线图300的边不表示笛卡尔坐标中的实际移动,而是表示c空间中的状态、配置或姿态之间的转换。路线图300的每个边表示机器人102a在相应的节点对之间的转换。例如,边310a表示机器人102a在两个节点之间的转换。特别地,边310a表示在与节点308b相关联的特定配置中的机器人102a的状态和与节点308c相关联的特殊配置中的机器人102a的状态之间的转换。尽管节点显示为彼此相距不同距离,但这仅用于说明目的,与任何物理距离无关。路线图300中的节点或边的数量没有限制,然而,路线图300中使用的节点和边越多,运动规划器110(图1和图2)就越能够更精确且更准确地根据机器人102a的一个或更多个状态、配置或姿态来确定最佳路径,以执行任务,因为有更多的路径可以从中选择成本最低的路径。128.每个边被分配以成本度量或与成本度量相关联,例如,该分配可以在运行时或运行期间更新。成本度量在图3中表示为插入各个边的单个数值。虽然被示为单个数值,但是成本度量可以采取多种形式,包括单个或更多个整数、实数等。成本度量可以表示多个不同的参数。例如,成本度量可以表示关于由对应边表示的运动的碰撞评估。又例如,成本度量可以表示相应的间隙确定。例如,成本度量可以表示对如下运动的可能性或概率的评估,该运动导致机器人的一部分进入操作环境中物体的一个或更多个指定或标称间隙距离内。对于与导致相对小的间隙和/或导致间隙低于机器人的一个或更多个部分的某些指定或标称间隙的转换相对应的那些边,可以增加分配给边的成本度量(例如,权重)。如其他地方所指出的,机器人的不同部分可以与不同的相应指定或标称间隙相关联。例如,可能希望焊接头保持比机器人的关节更大的间隙。129.在2017年6月9日提交的题为“motion planning for autonomous vehicles and reconfigurable motion planning processors”的国际专利申请no.pct/us2017/036880;2018年8月23日提交的标题为“collision detection useful in motion planning for robotics”的美国专利申请62/722,067;以及在2016年1月5日提交的标题为“specialized robot motion planning hardware and methods of making and using same”的国际专利申请公开no.wo 2016/122840中描述了碰撞评估的示例。130.对于路线图300中节点之间的直接转换将导致与障碍物碰撞的概率相对高和/或经历小间隙或小于指定或标称间隙的间隙的概率相对高的节点,分配给在这些节点之间转换的路线图300的边的成本度量或权重可以被分配相对高的成本度量(例如,8、9或10(最高10))。反之,对于路线图300中节点之间的直接转换将导致与障碍物碰撞的概率相对低和/或经历小间隙或小于指定或标称间隙的间隙的概率相对低的节点,分配给在这些节点之间转换的路线图300的边的成本度量或权重可以被分配相对低的成本度量(例如,0、1或2(最高10))。对于路线图300中节点之间的直接转换将导致与障碍物碰撞的概率中等和/或经历小间隙或小于指定或标称间隙的间隙的概率中等的节点,分配给在这些节点之间转换的路线图300的边的成本度量或权重可以被分配相对中等的成本度量,既不高也不低(例如,4、5或6(满分10))。131.如上所述,成本不仅可以反映碰撞的概率和/或经历低间隙情况的概率,还可以反映其他因素或参数(例如,延迟、能量消耗)。在本示例中,路线图300中机器人102的当前状态、配置或姿态在节点308a处,并且在路线图300中该路径被描绘为路径312(粗体线路径,包括从节点308a延伸到节点308i的段),这是最小成本分析的结果。132.尽管在路线图300中示出为具有许多急转弯的路径,但是这样的转弯并不表示路线中的相应物理转弯,而是机器人102的状态、配置或姿态之间的逻辑转换。例如,所识别的路径312中的每个边可以表示关于机器人102的物理配置的状态变化,但不一定表示与图3所示的路径312的角度相对应的机器人102的方向的变化。133.图4示出了机器人102在其中操作的三维环境400中的运动的表示。134.机器人102可以包括基座403和机器人附肢405。机器人附肢405包括多个连杆405a、405b、405c(示出了三个)、多个关节405d、405e和位于机器人附肢405的远端处的末端执行器或臂端工具405f,所述多个关节可旋转地联接相应对的连杆405a、405b、405c。机器人102包括一个或更多个致动器,例如电动机205(图2)。135.三维环境400的表示示出了多个路径(示出了四个)406a、406b、406d、406d(示出四个),这些路径表示在执行配置或姿态之间的转换时机器人102的各个部分(例如,连杆405a、405b、405c、臂端工具405f)的移动或轨迹。136.图5示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法500,所述方法用于确定机器人的一个或更多个部分的间隙,并且使机器人的一部分或更多个部分的运动表示呈现为路线图,并且使机器人的一部分或更多个部分的所确定间隙的视觉指示呈现。例如,方法500可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行。137.方法500开始于502。例如,方法500可以响应于基于处理器的系统100、机器人控制系统和/或机器人102的通电而开始,或者响应于来自调用例程的调用或启用而开始。例如在机器人102的操作期间,方法500可以持续地或甚至连续地执行。138.在504处,基于处理器的系统100的组件(例如间隙确定和表示模块126或确定间隙模块264(图2))确定机器人的一个或更多个部分与操作环境中的一个或更多个物体之间的间隙量。例如,对于机器人的每个运动,以及对于机器人的一个、两个或更多个部分中的每个,间隙确定和表示模块126或确定间隙模块264(图2)通过计算确定机器人或其部分在沿着机器人或其部分的路径或轨迹行进时所经历的机器人的部分和操作环境中的一个或更多个物体之间的相应间隙量。所确定的间隙可以例如表示为笛卡尔坐标中的距离或表示为向量值。139.在506处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268(图2))使用于机器人的一个或更多个运动的表示呈现。例如,间隙确定和表示模块126可以使具有多个节点和多个边的路线图呈现,每个边联接相应节点对的节点。例如,生成显示文件模块268(图2)可以生成一个或更多个显示文件并将其提供给显示系统128。节点表示机器人的相应配置,而边表示由通过相应边联接的节点对的节点所表示的机器人的相应配置对之间的相应转换。这些转换对应于机器人或其部分的运动。140.在508处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268(图2))使所确定间隙的一个或更多个视觉指示在机器人的运动的呈现中(例如在路线图的呈现中)呈现。例如,对于机器人的至少一个或更多个部分,间隙确定和表示模块126可以使机器人的该部分与环境中的一个或更多个物体之间的相应间隙量的视觉指示呈现。例如,生成显示文件模块268(图2)可以生成一个或更多个显示文件并将其提供给显示系统128。所确定间隙的指示可以采取各种形式,例如数值、颜色、热图和/或视觉提示或视觉效果。所确定间隙的指示可以与运动的各个表示在空间上相关联,例如与表示对应于运动的转换的相应边在空间上相关联。在实施方式中,生成显示文件模块268可以为路线图以及为所确定间隙的视觉指示生成分离的图像文件。分离的图像文件可以例如显示在视觉呈现的分离层上。在其他实施方式中,生成显示文件模块268可以生成统一图像文件,其在单个图像文件中包括路线图和所确定间隙的视觉指示两者。141.可选地,在510处,基于处理器的系统100的组件(例如间隙确定和表示模块126或接收输入模块270(图2))接收输入。输入可以采取各种形式,例如指令或命令,以将节点和/或边添加到路线图,从路线图中删除节点和/或边,移动路线图中的节点和/或边,和/或设置、改变或调整一个或更多个参数(例如,移动速度、路径平滑参数、边的成本度量)的值。间隙确定和表示模块126可以接收来自一个或更多个用户输入/输出设备(例如,触摸屏显示器128a)的输入。142.可选地,在512处,基于处理器的系统100的组件(例如路线图调整器259)至少部分地基于所确定的间隙来调整用于机器人的路线图。例如,这可以响应于某些定义的状况的发生而自主地发生。例如,这可以响应于接收到的用户或操作者输入而发生,该输入本身可以至少部分地基于所确定的间隙。路线图调整器259可以调整数据结构的一个或更多个组分,其中路线图116(图1和图2)表示在存储器或其他处理器可读存储器中。143.可选地,在514处,基于处理器的系统100的组件提供运动规划115(图1和图2)以供机器人执行。例如,运动规划器110可以向机器人或机器人控制器提供用于由机器人执行的运动规划。144.方法500在516处终止(例如直到被再次调用)。在一些实施方式中,方法500可以连续地甚至周期性地操作(例如当机器人或其部分被供电时)。145.图6示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中的操作的方法600,所述方法用于确定在操作环境中操作的机器人附肢的两个或更多个部分的间隙,并且使所述两个或更多个部分的运动的表示呈现为所述机器人附肢在其中操作的三维空间的表示中的路径或者呈现为路线图,连同对于机器人附肢的两部分或更多个部分所确定间隙的视觉指示。例如,方法600可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行。146.方法600开始于602。例如,方法600可以响应于基于处理器的系统100、机器人控制系统和/或机器人102的通电而开始,或者响应于来自调用例程的调用或启用而开始。例如在一个或更多个机器人102的操作期间,方法600可以持续地或甚至连续地执行。147.在604处,基于处理器的系统100的组件(例如间隙确定和表示模块126或确定间隙模块264(图2))确定机器人附肢的两个或更多个部分与操作环境中的一个或更多个物体之间的间隙量。例如,对于机器人附肢的每个运动,以及对于机器人附肢的至少两个或更多个部分中的每个,间隙确定和表示模块126或确定间隙模块264(图2)通过计算确定机器人附肢或其部分在沿着机器人附肢的两个或更多个部分的路径或轨迹行进时所经历的机器人附肢的部分和操作环境中的一个或更多个物体之间的相应间隙量。所确定的间隙可以例如表示为笛卡尔坐标中的距离或表示为向量值。148.在606处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268(图2))使机器人附肢或其两个或更多个部分的一个或更多个运动的表示呈现。例如,间隙确定和表示模块126可以使一个或更多个路径在机器人附肢操作在其中操作的三维空间的表示中呈现。替代地,间隙确定和表示模块126可以使具有多个节点和多个边的路线图呈现,每个边联接相应节点对的节点。例如,生成显示文件模块268(图2)可以生成一个或更多个显示文件并将其提供给显示系统128。在三维空间的表示中的一个或更多个路径的呈现中,路径表示机器人附肢或其部分的运动或轨迹。在路线图的呈现中,节点表示机器人的相应配置,而边表示由通过相应边联接的节点对的节点所表示的机器人的相应配置对之间的相应转换。这些转换对应于机器人附肢或其部分的运动。149.在608处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268(图2))使所确定的间隙的一个或更多个视觉指示在机器人附肢或其部分的运动的呈现中呈现。例如,间隙确定和表示模块126可以使视觉指示在路线图的呈现中呈现。又例如,间隙确定和表示模块126可以使所述视觉指示在所述机器人附肢在其中操作的三维空间的表示的呈现中呈现。例如,对于机器人附肢的至少两个或更多个部分,间隙确定和表示模块126可以使机器人附肢的该部分与环境中的一个或更多个物体之间的相应间隙量的视觉指示呈现。所确定间隙的指示可以采取各种形式,例如数值、颜色、热图和/或视觉提示或效果。所确定间隙的指示可以与运动的相应表示在空间上相关联,例如与表示与机器人附肢的部分的运动相对应的转换的相应边在空间上相关联。间隙确定和表示模块126或生成显示文件模块268(图2)可以生成图像文件并提供图像文件以用于呈现。在实施方式中,间隙确定和表示模块126或生成显示文件模块268(图2)可以为路线图以及为所确定间隙的视觉指示生成分离的图像文件。分离的图像文件可以例如显示在视觉呈现的分离层上。在其他实施方式中,间隙确定和表示模块126或生成显示文件模块268(图2)可以生成包括路线图和所确定间隙的视觉指示两者的统一图像文件。150.可选地,在610处,基于处理器的系统100的组件(例如间隙确定和表示模块126或接收输入模块270(图2))接收输入。输入可以采取各种形式,例如指令或命令,以将节点和/或边添加到路线图,从路线图中删除节点和/或边,移动路线图中的节点和/或边,和/或设置、改变或调整一个或更多个参数(例如,移动速度、路径平滑参数、边的成本度量)的值。间隙确定和表示模块126或接收输入模块270(图2)可以接收来自一个或更多个用户输入/输出设备(例如,触摸屏显示器128a)的输入。151.可选地,在612处,基于处理器的系统100的组件(例如路线图调整器259)至少部分地基于所确定的间隙来调整机器人附肢的路线图116。例如,这可以响应于某些定义的状况的发生而自主地发生。例如,这可以响应于接收到的用户或操作者输入而发生,该输入本身可以至少部分地基于所确定的间隙。路线图调整器259可以调整数据结构的一个或更多个组分,其中路线图116表示在存储器或其他处理器可读存储器中。152.可选地,在614处,基于处理器的系统100的组件提供运动规划115(图1和图2)以供机器人附肢执行。例如,运动规划器110可以向机器人附肢或机器人控制器提供用于由机器人附肢执行的运动规划。153.方法600在616处终止(例如直到被再次调用)。在一些实施方式中,方法600可以连续地甚至周期性地操作(例如当机器人附肢或其部分被供电时)。154.图7示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法700,所述方法用于确定在操作环境中操作的两个或更多个机器人附肢中的至少一个的一个或更多个部分的间隙,以及呈现机器人附肢中的至少一个或其部分的运动的表示,以及对于机器人附肢中至少一个的一个或更多个部分所确定间隙的视觉指示。例如,操作环境可以包括第一机器人,其中第一机器人是或包括第一机器人附肢。操作环境还可以包括第二机器人,其中第二机器人是或包括第二机器人附肢。例如,方法700可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行。155.方法700开始于702。例如,方法700可以响应于基于处理器的系统100、机器人控制系统和/或机器人102的通电而开始,或者响应于来自调用例程的调用或启用而开始。例如在一个或更多个机器人附肢105的操作期间,方法700可以持续地或甚至连续地执行。156.在704处,基于处理器的系统100的组件(例如间隙确定和表示模块126或确定间隙模块264(图2))确定第一机器人附肢的一个或更多个部分与操作环境中的一个或更多个物体之间的间隙量。例如,对于第一机器人附肢的每个运动,以及对于第一机器人附肢的至少一个或更多个部分中的每个,间隙确定和表示模块126、确定间隙模块264(图2)确定第一机器人附肢或其部分在沿着第一机器人附肢或其部分的路径或轨迹行进时所经历的第一机器人附肢的部分和操作环境104(图1)中的一个或更多个物体之间的相应间隙量。值得注意的是,这些物体可以包括第二机器人附肢。157.在706处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268(图2))使第一机器人附肢或其部分以及可选地第二机器人附肢或其部分的一个或更多个运动的表示呈现。例如,间隙确定和表示模块126可以使一个或更多个路径在第一机器人附肢和第二机器人附肢在其中操作的三维空间的表示中呈现。路径表示第一机器人附肢或其部分的运动或轨迹,以及可选地表示第二机器人附肢或其部分的运动或轨迹。替换地,间隙确定和表示模块126可以使具有多个节点和多个边的路线图呈现,每个边联接相应节点对的节点,这可以特别适合于仅表示第一机器人附肢或第二机器人附肢中仅一个的运动。例如,生成显示文件模块268(图2)可以生成一个或更多个显示文件并将其提供给显示系统128。158.可选地,在708处,基于处理器的系统100的组件(例如间隙确定和表示模块126或确定间隙模块264(图2))确定第二机器人附肢的部分与操作环境中的一个或更多个物体之间的间隙量。例如,对于第二机器人附肢的每个运动,以及对于第二机器人附肢的至少一个或更多个部分中的每个,间隙确定和表示模块126、确定间隙模块264(图2)确定第二机器人附肢或其部分在沿着第二机器人附肢或其部分的路径或轨迹行进时所经历的第二机器人附肢的部分和操作环境中的一个或更多个物体之间的相应间隙量。值得注意的是,这些物体可以包括第一机器人附肢。159.在710处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268)使所确定间隙的一个或更多个视觉指示在至少第一机器人附肢的运动的呈现中呈现。例如,间隙确定和表示模块126可以使视觉指示在第一机器人附肢和第二机器人附肢在其中操作的三维空间的表示中的路径呈现中呈现。例如,对于第一机器人附肢的至少一个或更多个部分,间隙确定和表示模块126可以使第一机器人附肢的一个或更多个部分与环境中的一个或更多个物体之间的相应间隙量的视觉指示呈现。例如对于第二机器人附肢的至少一个或更多个部分,间隙确定和表示模块126可以可选地使机器人附肢的一个或更多个部分与环境中的一个或更多个物体之间的相应间隙量的视觉指示呈现。所确定间隙的指示可以与运动的相应表示在空间上相关联,例如与表示与机器人附肢的部分的运动相对应的转换的相应边在空间上相关联。间隙确定和表示模块126或生成显示文件模块268(图2)可以生成图像文件并传递图像文件以用于呈现。在实施方式中,间隙确定和表示模块126或生成显示文件模块268可以为路线图以及为所确定间隙的视觉指示生成分离的图像文件。分离的图像文件可以例如显示在视觉呈现的分离层上。在其他实现中,间隙确定和表示模块126或生成显示文件模块268可以生成统一图像文件,其在单个显示文件中包括路线图和所确定间隙的视觉指示两者。160.可选地,在714处,基于处理器的系统100的组件(例如间隙确定和表示模块126或接收输入模块270(图2))接收输入。输入可以采取各种形式,例如指令或命令,以将节点和/或边添加到路线图,从路线图中删除节点和/或边,移动路线图中的节点和/或边,和/或设置、改变或调整一个或更多个参数(例如,移动速度、路径平滑参数、边的成本度量)的值。间隙确定和表示模块126或接收输入模块270(图2)可以接收来自一个或更多个用户输入/输出设备(例如,触摸屏显示器128a)的输入。161.可选地,在716处,基于处理器的系统100的组件(例如路线图调整器259)至少部分地基于所确定的间隙来调整第一机器人附肢或第二机器人附肢之一的路线图116。例如,这可以响应于某些定义的状况的发生而自主地发生。例如,这可以响应于接收到的用户或操作者输入而发生,该输入本身可以至少部分地基于所确定的间隙。路线图调整器259可以调整数据结构的一个或更多个组分,其中路线图116表示在存储器或其他处理器可读存储器中。162.可选地,在718处,基于处理器的系统100的组件提供运动规划115(图1和图2)以供机器人附肢执行。例如,运动规划器110可以向第一机器人附肢或机器人控制器提供用于由第一机器人附肢执行的运动规划115。163.方法700在720处终止(例如直到被再次调用)。在一些实施方式中,方法700可以连续地甚至周期性地操作(例如当至少第一机器人附肢或其部分被供电时)。164.图8示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法800,所述方法用于确定在操作环境中操作的机器人的一个或更多个部分的间隙,并用于设置或调整与用于机器人的路线图的相应边相关联的成本度量。例如,方法800可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行。165.方法800开始于802。例如,方法800可以响应于基于处理器的系统100、机器人控制系统和/或机器人102的通电而开始,或者响应于来自调用例程的调用或启用而开始。例如在一个或更多个机器人102的操作期间,方法800可以持续地或甚至连续地执行。166.在804处,基于处理器的系统100的组件(例如间隙确定和表示模块126或确定间隙模块264(图2))确定机器人的一个或更多个部分与操作环境中的一个或更多个物体之间的间隙量。例如,对于机器人的每个运动,以及对于机器人的至少一个或更多个部分中的每个,间隙确定和表示模块126或确定间隙模块264(图2)确定机器人或其部分在沿着机器人或其部分的路径或轨迹行进时所经历的机器人的一个或更多个部分和操作环境中的一个或更多个物体之间的相应间隙量。值得注意的是,物体可以包括在操作环境中操作的第二机器人。167.可选地,在806处,基于处理器的系统100的组件(例如间隙确定和表示模块126或接收输入模块270(图2))接收输入。输入可以采取各种形式,例如指令或命令,以将节点和/或边添加到路线图,从路线图中删除节点和/或边,移动路线图中的节点和/或边,在路线图中拷贝或复制节点或边,和/或设置、改变或调整一个或更多个参数(例如,移动速度、路径平滑参数、边的成本度量)的值。间隙确定和表示模块126或接收输入模块270(图2)可以接收来自一个或更多个用户输入/输出设备(例如,触摸屏显示器128a)的输入。168.在808处,基于处理器的系统100的组件(例如成本设置器254)至少部分地基于所确定的与路线图116中的相应边相对应的运动的相应间隙量,设置与所述边在逻辑上相关联的成本度量。例如,成本度量可以与数据结构中的边在逻辑上相关联,所述数据结构在逻辑上表示存储在存储器或一些其他处理器可读介质中的路线图116。成本设置器254可以例如为路线图的一个或更多个边中的每个设置成本度量。例如,成本设置器254可以将与相对小的或紧密的间隙相关联的边的成本度量设置为相对高的值,而成本设置器254将与相对大的或松的间隙相关的边的成本度量设置为相对低的值。这可能有利于在运动规划期间(例如,在最低或最低成本分析期间)选择间隙相对较大的边或转换,而不是间隙相对较小的边或转换。附加地或替代地,例如,成本设置器254可以将与机器人的某些部分的移动相关联的边的成本度量设置为相对较高的值,而成本设置器254将与机器人其他部分的移动相关联的边的成本度量设置为相对低的值。这可能有利于为机器人的给定部分(例如焊接头)选择具有相对较大间隙的边或转换,其中相对于机器人的其他部分(例如肘部)的间隙可能不那么严格。值得注意的是,可以基于成本函数来设置成本度量。成本函数可以表示一个、两个或更多个成本参数,例如以下中的任一个或者组合:i)碰撞风险或概率;ii)碰撞严重程度;iii)所需间隙量;iv)延迟;v)能量消耗;和/或vi)估计的间隙量。169.在810处,基于处理器的系统100的组件,例如路径分析器256,使用具有成本度量的路线图116来执行运动规划,所述成本度量至少部分地表示或反映所确定的间隙。路径分析器256例如可以使用多种最小成本算法中的任何一种。170.在812处,基于处理器的系统100的组件提供运动规划115(图1和图2)以供机器人执行。例如,运动规划器110可以向机器人或机器人控制器提供用于由机器人执行的运动规划。171.方法800随后在814处终止(例如直到被再次调用)。在一些实施方式中,方法800可以连续地甚至周期性地操作(例如当机器人或其部分被供电时)。172.图9示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法900,所述方法用于设置或调整与相应边相关联的成本度量。例如,方法900可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行(例如作为方法800执行的一部分(例如,图8的动作808))。173.在902处,基于处理器的系统100的组件(例如成本设置器254)至少部分地基于机器人或其部分在根据由相应边表示的转换移动时所经历的最小间隙来设置与相应边在逻辑上相关联的成本度量。例如,成本度量可以与数据结构中的边在逻辑上相关联,所述数据结构在逻辑上表示存储在存储器或一些其他处理器可读介质中的路线图。174.图10示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法1000,所述方法用于设置或调整与相应边相关联的成本度量。例如,方法1000可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行(例如作为方法800执行的一部分(例如,图8的动作808))。175.在1002处,基于处理器的系统100的组件(例如成本设置器254)至少部分地基于单个数值来设置与相应边在逻辑上相关联的成本度量,所述单个数值表示对于由相应边表示的运动针对机器人附肢的连杆、关节、臂端工具中的全部以及可选的缆线所确定的所有最小距离中最小的最小距离。例如,成本度量可以与数据结构中的边在逻辑上相关联,所述数据结构在逻辑上表示存储在存储器或一些其他处理器可读介质中的路线图。176.图11示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法1100,所述方法用于确定机器人的一个或更多个部分的间隙,使机器人的一个或更多个部分的运动的表示以及所确定间隙的视觉指示呈现,接收输入,并且至少部分地基于所接收的输入调整路线图的至少一部分,以便调整机器人的运动。177.方法1100开始于1102。例如,方法1100可以响应于基于处理器的系统100、机器人控制系统和/或机器人102的通电而开始,或者响应于来自调用例程的调用或启用而开始。例如在所述机器人102的操作期间,方法1100可以持续地或甚至连续地执行。178.在1104处,基于处理器的系统100的组件(例如间隙确定和表示模块126或确定间隙模块264(图2))确定机器人的一个或更多个部分与操作环境中的一个或更多个物体之间的间隙量。例如,对于机器人的每个运动,以及对于机器人的一个、两个或更多个部分中的每个,间隙确定和表示模块126或确定间隙模块264(图2)确定机器人或其部分在沿着机器人或其部分的路径或轨迹行进时所经历的机器人的部分和操作环境104(图1)中的一个或更多个物体之间的相应间隙量。值得注意的是,物体可以包括在操作环境中操作的第二机器人。179.可选地,在1106处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268(图2))使机器人的一个或更多个运动的表示呈现以及使所确定间隙的一个或更多个视觉指示在机器人的一个或更多个部分的运动的呈现中呈现。例如,间隙确定和表示模块126可以使路径在机器人在其中操作的三维空间的表示中呈现。又例如,间隙确定和表示模块126可以使用于机器人的路线图呈现,其中边表示对应于运动或运动的转换。所确定间隙的指示可以采取各种形式,例如数值、颜色、热图和/或视觉提示或视觉效果。所确定间隙的指示可以与运动的相应表示在空间上相关联,例如与表示运动的相应路径或者表示对应于运动的转换的相应边在空间上相关联。间隙确定和表示模块126或生成显示文件模块268(图2)可以生成图像文件并传递图像文件以用于呈现。在实施方式中,间隙确定和表示模块126或生成显示文件模块268(图2)可以为路线图以及为所确定间隙的视觉指示生成分离的图像文件。分离的图像文件可以例如显示在视觉呈现的分离层上。在其他实施方式中,间隙确定和表示模块126或生成显示文件模块268(图2)可以生成包括路线图和所确定间隙的视觉指示两者的统一图像文件。180.在1108处,基于处理器的系统100的组件(例如间隙确定和表示模块126或接收输入模块270(图2))接收输入。输入可以采取各种形式,例如指令或命令,以将节点和/或边添加到路线图,从路线图中删除节点和/或边,移动路线图中的节点和/或边,从路线图中拷贝或复制节点和/或边,和/或设置、改变或调整一个或更多个参数(例如,移动速度、路径平滑参数)的值。间隙确定和表示模块126或接收输入模块270可以接收来自一个或更多个用户输入/输出设备(例如,触摸屏显示器128a)的输入。181.在1110处,基于处理器的系统100的组件至少部分地基于接收到的输入来调整路线图的至少一部分。例如,基于处理器的系统100的组件可以调整一个或更多个移动的速度。在一些实施方式中,路线图调整器259至少部分地基于所确定的间隙来调整用于机器人的路线图。例如,这可以响应于某些定义的状况的发生而自主地发生。例如,这可以响应于接收到的用户或操作者输入而发生,该输入本身可以至少部分地基于所确定的间隙。路线图调整器259可以调整数据结构的一个或更多个组分,其中路线图表示在存储器或其他处理器可读存储器中。182.方法1100随后在1112处终止(例如直到被再次调用)。在一些实施方式中,方法1000可以连续地甚至周期性地操作(例如当机器人或其部分被供电时)。183.图12是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法1200,所述方法用于提供允许调整一个或更多个机器人的移动或运动的用户界面。例如,方法1100可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行(例如,作为方法500(图5)、600(图6)、700(图7)、800(图8)和1100(图11)中任一方法的执行的一部分)。184.在1202处,基于处理器的系统100的组件使用户界面呈现,该用户界面允许调整一个或更多个机器人的移动或运动,包括例如调整路线图。用户界面可以包括以下中的一个或更多个:工具栏、下拉菜单、弹出菜单、调色板、滚动条、单选按钮、可填充字段、对话框、提示、用户可选择的图标和/或其他用户界面元素。例如,用户界面可以允许用户设置一个或更多个参数的值,例如控制以下中的一个或更多个:与一个或更多个边相关联的移动速度、路径平滑参数的值,和/或分配给路线图中的一个或更多个边的成本度量。例如,用户界面可以允许用户调整路线图中的一个或更多个节点和/或边,向路线图添加一个或更多个节点和/或边,从路线图中移除一个或更多个节点和/或边,从线路图中拷贝或复制一个或更多个节点和/或边,和/或移动路线图中的一个或更多个节点或边。例如,用户界面可以允许指定节点或边以进行修改、调整或删除,例如,通过使用唯一地标识节点或边的唯一标识符,或者通过经由用户输入/输出设备选择节点或边。例如,用户界面可以允许通过下拉菜单、弹出菜单、对话框或与节点、边或路线图相关联的可填充字段来设置或指定节点或边的一个或更多个参数的值,甚至可以设置路线图。185.图13是示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法1300,所述方法用于提供允许调整一个或更多个机器人的移动或运动的图形用户界面。例如,方法1300可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行(例如,作为方法500(图5)、600(图6)、700(图7)、800(图8)和1100(图11)中任一方法的执行的一部分)。186.在1302处,基于处理器的系统100的组件使图形用户界面呈现,其中所显示的路线图中的节点和/或边是用户可选择的图标。所述图形用户界面可以包括以下中的一个或更多个:工具栏、下拉菜单、弹出菜单、调色板、滚动条、单选按钮、可填充字段、对话框、提示、用户可选择的图标和/或其他用户界面元素。特别地,图形用户界面可以包括作为路线图的组成部分的多个用户可选元素,例如用户可选节点和/或用户可选边。例如,节点或边的选择可以选择节点或边进行修改、调整、拷贝或复制或删除。例如,节点或边的选择可以允许对所选节点或边执行拖放操作。例如,节点或边的选择可以使弹出菜单或对话框呈现,例如,允许设置与节点、边或路线图相关联的一个或更多个参数的值。在一些实施方式中,对边或路径或其一部分的选择可以使所确定间隙的指示被呈现为弹出值或颜色或视觉效果。187.图14示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法1400,所述方法用于将所确定间隙的视觉指示提供为与相应边或路径相关联的数值。例如,方法1400可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行(例如,作为方法500(图5)、600(图6)、700(图7)和1100(图11)中任一方法的执行的一部分)。188.在1402处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268(图1))以一个或更多个数值(例如,整数、实数)的形式提供机器人在两个配置之间移动时所经历的最小间隙的视觉指示。数值可以表示间隙量,并且可以例如以定义的一组单位(例如,英寸、毫米、厘米)来指定。数值可以与相应的边或路径在空间上相关联(例如,接近引线、有引线或没有引线),所述相应的边或路径表示在经历最小间隙的两个配置之间的转换。例如,数值可以被呈现为与相应的边或路径空间上间隔得很近或相邻,或者甚至覆盖相应的边或者路径,例如在边或者路径的起点或终点处,和/或在沿着边或者路径在边或路径的起点和/或终点之间的一个或更多个中间点处。因此,每个边或路径可以具有单个数值,该数值表示在与该边或路径相对应的运动期间经历的最小的最小间隙。或者,每个边或路径可以具有两个或更多个数值,所述数值表示机器人的不同部分在对应于该边或路径的运动或移动的不同部分所经历的最小间隙。189.图15示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法1500,所述方法用于将所确定间隙的视觉指示提供为与相应边或路径相关联的颜色。例如,方法1500可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行(例如,作为方法500(图5)、600(图6)、700(图7)和1100(图11)中任一方法的执行的一部分)。190.在1502处,基于处理器的系统100的组件(例如间隙确定和表示模块126或生成显示文件模块268(图1))以一个或更多个颜色提供机器人在两个配置之间移动时所经历的最小间隙的视觉指示。颜色可以表示间隙量(例如,红色小于1.0毫米,绿色大于1.0厘米)。颜色可以与相应的边或路径在空间上相关联,所述边或路径表示在经历最小间隙的两个配置之间的转换。例如,相应的边或路径可以用与所确定的间隙相对应的颜色来表示。又例如,相应的边或路径可以被透明的颜色覆盖内容所覆盖,其中特定的颜色对应于所确定的间隙。因此,每个边或路径可以具有单个颜色,该数值表示在与该边或路径相对应的运动期间经历的最小的最小间隙。替代地,每个边或路径可以具有两个或更多个颜色,表示机器人的不同部分在对应于边或路径的运动期间经历的最小间隙,或者在对应移动或运动的不同部分经历的最小间隙。191.图16示出了根据至少一个所示的实施方式在图1和图2的基于处理器的系统100中操作的方法1600,所述方法用于将所确定间隙的视觉指示提供为与相应边或路径相关联的热图。例如,方法1600可以由基于处理器的系统100(图1)的一个或更多个处理器222(图2)执行(例如,作为方法500(图5)、600(图6)、700(图7)、800(图8)和1100(图11)中任一方法的执行的一部分)。192.在1602处,基于处理器的系统100的组件或生成显示文件模块268(图1)以热图提供机器人附肢在两个配置之间移动时所经历的最小间隙的视觉指示。热图可以包括不同的颜色,包括色调,这些颜色或色调表示相应的所确定间隙(例如,深红色小于0.25毫米、浅红色大于0.25毫米且小于0.5毫米、深绿色大于0.5毫米且小于1.0毫米、浅绿色大于1.0毫米且小于5.0毫米)。热图可以与相应的边或路径在空间上相关联,所述相应的边或路径表示在经历最小间隙的两个配置之间的转换。例如,相应的边或路径可以用与所确定的间隙相对应的热图来表示。又例如,相应的边或路径可以被透明的热图覆盖内容所覆盖,其中热图的特定的颜色或色调对应于所确定的间隙。因此,每个边或路径可以具有相应的热图,其表示在与该边或路径相对应的运动期间经历的最小间隙。193.为每个动作提供热图有助于将人类用户或操作者的注意力吸引到存在潜在问题的动作部分(例如,由路线图中的边表示)。因此,当预览边时,用户或操作者知道要查看边的哪个部分,并可以更快地识别任何潜在的问题。例如,如果1厘米的间隙是可以接受的,但5毫米的间隙是不可接受的,那么与边的其他部分不同地对不具有足够间隙(即指定或标称间隙)的边部分进行颜色编码,将使潜在问题更容易显现,因为特别是在计算机显示屏上很难在视觉上检测到5毫米的差异。如果边中间违反了指定或标称间隙,它会立即告诉用户或操作者,这可以通过中间节点或路点避免。如果只有边的端点违反了规定或标称间隙,则可以认为这是可接受的,也是不可避免的。194.图17示出了显示的用户界面1700,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现。195.用户界面1700可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如节点下拉菜单1702a、边下拉菜单1702b和参数设置下拉菜单1702c)的工具栏1702。节点下拉菜单1702a允许添加、移除、移动、复制或以其他方式修改路线图的节点。边下拉菜单1702b允许添加、移除、移动、复制或以其他方式修改路线图的边。参数设置下拉菜单1702c允许添加、移除、移动、复制或以其他方式修改路线图的参数。196.特别地,移动的表示是具有多个节点1706a、1706b(仅标注两个)和边1708a、1708b(仅标注两个)的路线图1704的形式,并且所确定间隙的指示是单个数值1710(仅示出一个)的形式,该单个数值表示机器人的一个或更多个部分在执行与路线图1704中的边1708a、1708b所表示的转换相对应的运动时所经历的最小间隙。197.图18示出了显示的用户界面1800,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现。198.与图17中的相似或相同,用户界面1800可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如节点下拉菜单1702a、边下拉菜单1702b和参数设置下拉菜单1702c)的工具栏1702。对其不再赘述。199.特别地,移动的表示是具有多个节点1806a、1806b(仅标注两个)和边1808a、1808b(仅标注两个)的路线图1804的形式,并且所确定间隙的指示是多个数值1810a、1810b、1810n(示出七个,仅标注三个)的形式,其表示机器人的部分在执行与路线图1804中的边所表示的一组转换相对应的运动时所经历的相应间隙。200.图19示出了显示的用户界面1900,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现。201.与图17中的相似或相同,用户界面1900可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如节点下拉菜单1702a、边下拉菜单1702b和参数设置下拉菜单1702c)的工具栏1702。202.特别地,移动的表示是具有多个节点1906a、1906b(仅标注两个)和边1908a、1908b(仅标注两个)的路线图1904的形式,并且所确定间隙的指示是单个颜色1910a、1910b、1910c(颜色用交叉影线表示,标注三个)的形式,其表示机器人的一个或更多个部分在执行与路线图1904中的相应边1908a、1908b所表示的转换相对应的运动时所经历的最小间隙。203.图20示出了显示的用户界面2000,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现。204.与图17中的相似或相同,用户界面2000可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如节点下拉菜单1702a、边下拉菜单1702b和参数设置下拉菜单1702c)的工具栏1702。205.特别地,移动的表示是具有多个节点2006a、2006b(仅标注两个)和边2008a、2008b(仅标注两个)的路线图2004的形式,并且所确定间隙的指示为多种颜色2010a、2010b、2010c、2010d、2010e、2010f的形式,(颜色包括色调,由交叉影线表示,标注六个),其构成一个或更多个热图2012(示出三个,标注一个),所述多种颜色表示机器人的一个或更多个部分在执行与路线图2004中的边2008a、2008b表示的一组转换相对应的运动时经历的相应间隙。206.图21示出了显示的用户界面2100,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现。207.用户界面2100可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如参数设置下拉菜单2102a)的工具栏2102。208.特别地,运动的表示是三维操作环境2104的表示中的一个或更多个路径2108(示出一个)的形式,并且所确定间隙的指示是单个数值2110的形式,其表示机器人在执行由三维操作环境2104的表示中的路径2108表示的运动时所经历的最小间隙。单个数值2110与路径2108在空间上相关联地呈现,例如在有或没有引线的情况下接近或邻近路径2108。三维操作环境2104的表示可以包括存在于操作环境中的一个或更多个物体2112a、2112b(示出了两个)的表示。209.图22示出了显示的用户界面2200,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现。210.与图21中的相似或相同,用户界面2200可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如参数设置下拉菜单2102a)的工具栏2102。211.特别地,运动的表示是三维操作环境2204的表示中的一个或更多个路径2208(示出一个)的形式,并且所确定间隙的指示是多个数值2210a、2210b、2210c、2210d、2210e(示出五个)的形式,其表示机器人在执行由三维操作环境2204的表示中的路径2208表示的运动时所经历的相应间隙。数值2210a、2210b、2210c、2210d、2210e与路径2108的相应部分在空间上相关联地呈现,例如在有或没有引线的情况下接近或邻近路径2108。三维操作环境2204的表示可以包括存在于操作环境中的一个或更多个物体2112a、2112b(示出了两个)的表示。212.图22中还示出了光标2214,它可以由用户或操作者控制,以通过一个或更多个输入/输出设备(例如,触摸屏显示器128a)选择用户可选择的图标(例如,路径2208或其部分,参数设置下拉菜单2102a)。例如,选择路径2208可以使弹出菜单或对话框呈现,该弹出菜单或对话框呈现关于路径的信息和/或允许修改与路径2208相关联的各种参数的值。例如,选择路径2208的一部分可以使间隙值呈现,该间隙值对应于运动的与路径2208所选部分相对应的部分。可以通过将光标2214放置在路径2208的一部分上并单击来完成路径2208的选择。可以通过将光标2214放置在路径2208的一部分上并双击来完成对路径2208的一部分的选择,从而允许与对整个路径2208进行区分。213.图23是显示的用户界面2300的图像,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现。214.与图21中的相似或相同,用户界面2300可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如参数设置下拉菜单2102a)的工具栏2102。215.特别地,运动的表示是三维操作环境2304的表示中的一个或更多个路径2308a、2308b(示出两个)的形式,并且所确定间隙的指示是单个颜色(例如,第一颜色2310a、第二颜色2310b、颜色由交叉影线指示)的形式,其表示机器人执行由三维操作环境的表示中的路径2308a、2308b的相应路径表示的运动时所经历的最小间隙。三维操作环境2304的表示可以包括存在于操作环境中的一个或更多个物体2112a、2112b(示出了两个)的表示。216.图24示出了显示的用户界面2400,其示出了根据至少一个所示的实施方式的机器人或其部分的运动的表示以及所确定间隙的指示的呈现。217.与图21中的相似或相同,用户界面2400可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如参数设置下拉菜单2102a)的工具栏2102。218.特别地,运动的表示是三维操作环境2404的表示中的一个或更多个路径2408(示出一个)的形式,并且所确定间隙的指示是构成热图2412的多种颜色2410a、2410b、2410c、2410d(颜色包括色调,由交叉影线表示,示出了四个)的形式,所述颜色表示机器人在执行由三维操作环境2404的表示中的路径2208表示的运动时所经历的相应间隙。三维操作环境2404的表示可以包括存在于操作环境中的一个或更多个物体2112a、2112b(示出了两个)的表示。219.图25示出了显示的用户界面2500,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现。220.与图21中的相似或相同,用户界面2500可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如参数设置下拉菜单2102a)的工具栏2102。221.特别地,运动的表示是在三维操作环境2504的表示中机器人附肢2516的相应部分2516a、2516b、2516c(标注三个)的两个或更多个路径2508a、2508b、2508c(示出三个)的形式,并且所确定间隙的指示是单个数值2510a、2510b、2510c(示出三个,每个路径2508a、2508b、2508c一个),其表示机器人的两个或更多个部分中的每个在执行由三维操作环境2504的表示中的路径2508a、2508b、2508c表示的运动时所经历的最小间隙。值2510a、2510b、2510c可以与路径2508a、2508b、2508c中的相应路径在空间上相关联,例如与路径2508a、2508b、2508c接近或相邻(具有或不具有引线)。三维操作环境2504的表示可以包括存在于操作环境中的一个或更多个物体2112a、2112b(示出了两个)的表示。222.图26示出了显示的用户界面2600,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现。223.与图21中的相似或相同,用户界面2600可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如参数设置下拉菜单2102a)的工具栏2102。224.特别地,运动的表示是在三维操作环境2604的表示中机器人附肢2616的相应部分2616a、2616b、2616c(标注三个)的两个或更多个路径2608a、2608b、2608c(示出三个)的形式。所确定间隙的指示是针对路径2608a、2608b、2608c中的每个的多个数值2610a、2610b、2610c、2610d(针对每个路径示出四个,对于路径之一2608c标注出一组四个以便于附图的易读性)的形式,所述数值2610a、2610b、2610c、2610d表示机器人的两个或更多个部分中的每个在执行由三维操作环境2604的表示中的路径2608a、2608b、2608c表示的运动时所经历的相应间隙。值2610a、2610b、2610c、2610d可以与路径中的相应路径2608c在空间上相关联,例如与路径接近或相邻(具有或不具有引线)。三维操作环境2604的表示可以包括存在于操作环境中的一个或更多个物体2112a、2112b(示出了两个)的表示。225.图27示出了显示的用户界面2700,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现。226.与图21中的相似或相同,用户界面2700可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如参数设置下拉菜单2102a)的工具栏2102。227.特别地,运动的表示是在三维操作环境2704的表示中机器人附肢2716的相应部分2716a、2716c(标注两个)的两个或更多个路径2708a、2708b(示出两个)的形式,并且所确定间隙的指示是单个颜色2710a、2710b(针对每个路径2708a、2708b),所述单个颜色表示机器人2716的两个或更多个部分2716a、2716c中的每个在执行由三维操作环境2704的表示中的路径2708a、2708b表示的运动时所经历的最小间隙。三维操作环境2704的表示可以包括存在于操作环境中的一个或更多个物体2112a、2112b(示出了两个)的表示。228.图28示出了显示的用户界面2800,其示出了根据至少一个所示的实施方式的机器人的两个或更多个部分的运动的表示以及所确定间隙的指示的呈现。229.与图21中的相似或相同,用户界面2800可以包括一组用户可选择的图标,例如包括多个下拉菜单(例如参数设置下拉菜单2102a)的工具栏2102。and control”的经适当修改以按本文所述操作的美国专利申请no.63/120,412的全部内容通过引用并入本文。根据以上详细描述,能够对实施例进行这些和其他改变。234.总体上,在所附权利要求中,所使用的术语不应被解释为将权利要求限制于说明书和权利要求中公开的特定实施例,而是应被解释为包括所有可能的实施例以及这些权利要求的等同物的全部范围。因此,权利要求不受本公开的限制。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部