掌桥专利:专业的专利平台
掌桥专利
首页

用于使用机器人动画系统来实时控制机器人的系统和方法

文献发布时间:2024-07-23 01:35:12


用于使用机器人动画系统来实时控制机器人的系统和方法

相关申请的交叉引用

本申请根据35U.S.C.§119(e)要求2021年11月12日提交的在先美国临时申请号63/278,793的优先权权益,所述美国临时申请的披露内容通过引用以其全文结合在此。

技术领域

本披露内容涉及控制系统,并且更具体地涉及使用数据库连接性来实时操作的控制系统。

背景技术

目前,存在具有个体化能力集的各种控制系统,所述个体化能力集未被集成到一个系统中并且不是为了作为单个系统一起工作而创建的。例如,传统控制系统工作流程可以允许通过与需要导出和导入运动编辑数据的可编程逻辑控制器(PLC)集成的系统进行运动编辑。这些传统控制系统不允许实时编辑,并且可能需要多个软件包来提供为目标设备编辑必要运动参数的能力。另外,传统控制系统不包括实时可视化目标设备并与目标设备实时交互的能力。即使子系统可以一起操作,工作流程也将是缓慢的,因为子系统之间的连接可能涉及额外的工作,并且迭代时间可能是几小时或更长。

本披露内容解决了这些挑战和问题,使得控制系统可以包含两个数据库,这两个数据库具有在编程期间同步的能力,从而允许目标设备的实时可视化、交互性和运动学建模。

发明内容

根据一个或多个实施例,提供了一种用于以实时控制的方式来控制机器人的机器人动画系统。所述系统可以包括:具有用户界面的用户计算设备;通信地耦合至所述用户计算设备的用户运动数据库;控制器;通信地耦合至所述控制器的控制器运动数据库;以及通信地耦合至所述控制器的目标设备。所述用户计算设备可以被配置为响应于从所述用户计算设备接收到同步指示而连接所述用户运动数据库和所述控制器运动数据库,以便实时共享对应的运动指令集。所述目标设备可以被配置为在所述目标设备上实时实施所述对应的运动指令集。

根据另一个实施例,提供了一种用于实时控制机器人的方法。所述方法可以包括在用户运动数据库处从用户计算设备接收同步指示,所述用户计算设备包括用户界面。所述方法还可以包括连接所述用户运动数据库和控制器运动数据库以实时共享对应的运动指令集。所述方法可以进一步包括经由控制器在目标设备上实时实施由于所述连接而共享的所述对应的运动指令集。

从具体实施方式、权利要求书和附图中,本披露内容的其他应用领域将变得清楚。具体实施方式和具体示例仅旨在用于说明的目的,而不旨在限制本披露内容的范围。

附图说明

根据具体实施方式以及附图,将更加全面地理解本披露内容。

图1是根据一些实施例的机器人动画系统的示例用户界面。

图2是根据一些实施例的示例计算设备的框图。

图3是根据一些实施例的机器人动画系统的示例功能框图。

图4是根据一些实施例的用于通过机器人动画系统来控制机器人的运动的示例用户界面。

图5是根据一些实施例的操作机器人动画系统的方法的示例流程图。

在附图中,可以重复使用附图标记来标识相似和/或相同的元素。

具体实施方式

一种控制系统,比如机器人动画系统,允许通过一系列互连的子系统在机器人上创建栩栩如生的运动。更特别地,机器人动画系统实施多个数据库(包括用户运动数据库和控制器运动数据库),以允许在同步数据库之前在用户侧对机器人指令进行修改,并且进而提供栩栩如生的、不间断的机器人运动。此外,机器人动画系统允许快速且迭代的改进工作流程。

也就是说,提供通信地耦合至用户运动数据库的具有用户界面的用户计算设备的方法允许用户或动画制作者通过对机器人的预期运动进行添加、编辑等来更新控制器指令,并且立即使这些变化反映在机器人的用户界面和机器人本身上。机器人动画系统包括具有各种参数(比如机器人的移动类型、时机和运动速度)的多个模块或子系统,用户可以在用户计算设备上修改所述参数以将任何机器人运动调整或更改为期望的外观、角度、形式等。

虽然本披露内容涉及一种用于控制机器人的运动的特定系统,但是机器人动画系统总体上涉及从用户收集信息,从而允许实时修改该信息,并且然后通过在机器人中实施运动来将该信息应用于机器人。因此,可以使用除了机器人之外的任何目标设备,所述目标设备使用具有可以插入的可配置参数的实时数据流。

进一步地,机器人动画系统被设计成实时对机器人的运动进行编程。如上所述,机器人动画系统包括在编程期间保持同步的至少两个数据库。这些数据库包括动画人物(比如机器人)的关节空间运动数据。通信地耦合至控制器的控制器运动数据库将提供或存储操作指令,所述指令指示在何时以什么顺序执行什么运动,从而允许机器人流畅地操作而不受用户计算设备上的任何潜在延迟的影响。在各种实施方式中,用户可以针对一组运动选择特定运动,比如头部移动或移动机器人的手臂,或者用户可以选择机器人的对应项目或部分以及将运动添加到运动序列中的时机。进一步地,用户可以沿着时间线排列不同的运动,比如移动手臂或头部移动,并且将运动拖放到其他运动之前或之后。

例如,在操作或编程会话开始时,用户可以通过与控制器运动数据库同步并且与多个模块或所存储的数据连接来连接至控制器运动数据库,以操作实时系统。与控制器运动数据库的同步打开了用户系统与机器人系统之间的实时操作的双向通信路径。用户可以在用户计算设备上显示的机器人运动曲线的用户界面上对任何机器人运动指令或方向进行编辑。用户界面可以提供多个用户界面元素,所述多个用户界面元素可由用户选择并且被设计成对应于机器人的不同部分或部件的各种运动类型和角度。用户界面还可以包括与机器人的运动序列的速度或时间线相对应的用户界面元素。例如,用户可以选择与特定运动相对应的用户界面元素,并且调整机器人的哪个部分执行所述运动,或相对于其他运动调整所述特定运动发生的时间。

然后,当用户想要使运动反射在机器人上或由机器人实施时,用户可以选择机器人动画应用程序或程序上的用户界面元素,以通过分布式通信系统或网络使用打包数据或至少一个数据包或指令消息包立即使用户运动数据库与控制器运动数据库同步。这些指令可以包括与沿着运动序列的时间线的特定时间处的特定运动相对应的帧号。一旦这两个数据库同步,就可以使用各种控制模式来实施机器人的移动。控制模式可以包括以下进一步讨论的播放模式、转到特定点模式等。各种控制模式是用户可选的,作为机器人动画应用程序的用户界面上的图标并且以指令运动曲线中的特定点为目标。控制模式还可以以程序为目标,从而使机器人以全速在机器人上和/或用户界面上的机器人上实施或涉及实施运动。

当使用播放模式时,用户界面可以向控制器发送命令,使得向机器人传输实际运动指令以开始播放或实施所接收的运动指令并且开始收听当前帧号。当控制器接收到播放命令时,控制器将指示机器人开始运行动画并将当前帧号发送至用户界面,从而向用户描绘机器人的实际实时运动。通过接收当前帧号,用户界面可以与控制器指示机器人执行运动同步地显示机器人的实际运动。当使用转到特定点模式时,用户界面实时指示控制器实施哪个帧。也就是说,操作用户计算设备的用户可以经由机器人动画应用程序的用户界面来实时指示机器人执行与特定帧相关联的特定运动。

机器人的用户界面模型被显示在用户计算设备的用户界面上,以向用户显示机器人的实时运动并且为用户提供一种用于对机器人的运动进行编程的方法,例如,通过针对各种帧定义特定位置或运动参数。机器人动画系统可以在机器人动画应用程序上具有各种不同的用户界面,所述用户界面具有为用户提供的用于机器人控制和显示的各种不同特征。

在各种实施方式中,机器人动画应用程序包括机器人的三维视觉表示(例如,如图1所示)并且允许在机器人动画应用程序内构建装备,从而提供机器人操纵方法。另外地或可替代地,用户界面可以更简单化,包括比如记录位置信息的数据点等能力,所述位置信息可以包括少量或大量不同的位置参数。机器人动画系统被设计成使得用户界面可以与机器人动画系统的其他部分分开,并且具体地涉及为用户提供一种用于观看机器人运动并且指示机器人应该进行的运动的方法。

在各种实施方式中,创建了相同的模型以供实时控制器使用。这两个模型允许在用户界面中使用的空间中对系统进行编程,并且然后对其进行回放并转换成由机器人的致动器使用的空间,所述致动器被控制器指示移动并在机器人上实施运动。在实时控制器中实施的模型以与控制器运行的相同速率在空间之间转换数据。

机器人动画系统还可以包括实时控制器上的影响机器人运动的一系列设置。这些设置是在多个方程中使用的变量,以在各种模式下在用户界面上创建机器人的人物的运动。示例设置可以包括运动比例积分(PI)回路中的增益乘法器、归位的初始方向、以及归位期间的预期计数。例如,对于每个马达存在多于100个单独设置。可以在机器人运动时修改这些设置,以单独地改变每个轴线的行为(例如,参见图4)。这些设置允许每个致动器的塑造响应运动曲线。所描述的设置可以通过用户界面以及通过控制器中的应用程序编程接口(API)来编辑。也就是说,例如,控制器可以包括用于由操作者操作的接口以及多个机器人控制选项。因此,所描述的API可以允许在运动期间修改机器人的设置,以适应来自机器人的各种需求。

在各种实施例中,机器人动画系统提供外部可视化工具,以用于观看并潜在地控制机器人。一些现有的系统本身支持这一点,比如Maya、Cinema4D和Blender。其他工具(比如照明系统)不具有这种支持,并且因此需要使用另一种工具来提供外部可视化,比如SimMechanics、Unity和Unreal。然而,外部可视化被集成用于机器人动画系统的所有特征,从而允许网络(其可以是本地的或通过分布式通信系统)上的任何人实时可视化机器人的所有关节的位置。通常,可以从任何角度观看的人物准确表示是特别有用的,尤其是当对人物的访问受到限制时。在各种实施方式中,机器人动画系统使用具有打包数据的网络通信来在位置改变时通过网络将每个关节的位置发送至用户计算设备和潜在的其他网络设备。

机器人动画系统被配置为允许用户输入和机器人以及预编程数据之间的交互性。在各种实施方式中,机器人动画系统包括允许将外部数据流与每个运动一起使用的特征。也就是说,外部数据可以用于影响机器人的运动。例如,运动数据作为位置数据呈现给机器人动画系统,所述位置数据被表示为0至1之间的32位浮点数。这些数据流可以从不同的源(比如操纵杆、人工智能(AI),游戏系统等)接收。在包括交互式系统的实施方式中,使用传感器数据来创建即时运动曲线,此数据可以混合到运动曲线数据中或从运动曲线数据转换而来。

如上所述,与任何现有系统相比,为用户运动数据库和控制器运动数据库存储、同步和使用所接收和所存储的数据而实施的方法是独一无二的。例如,使用两个位置(数据库)中的数据的精确副本(所述副本可以立即同步,然后用于保持用户界面机器人和机器人同时移动)对于机器人动画系统来说是全新的并且是独一无二的。如前所述,同步由用户在用户选择的任何时间启动,例如通过选择标记为“sync.”的按钮或用户界面元素。例如,当用户已经在机器人动画应用程序的用户界面上完成编辑并且想要看到新的、编辑后的机器人运动时,用户可以实施同步。

由于用户可以快速轻松地实施同步,因此同步使得即使是很小的变化也能立即观看。同步能力是机器人动画系统的一部分,其提供了在机器人上尽可能发挥出最佳性能的能力。此外,机器人动画系统可以实施同步,以经由人物提供机器人的可视化并且在机器人上实施,从而允许将交互性容易地集成到机器人动画系统中,并且进一步允许由用户和API实时编辑运动参数。对于本领域技术人员将清楚的是,本披露内容的机器人动画系统与用于控制机器人的其他系统相比是不同的。例如,机器人动画系统允许单个系统通过用户运动数据库与控制器运动数据库之间的同步来实时控制和显示机器人。

此外,因为机器人动画系统支持工作流程,所以可以改变大量的底层技术,同时仍然实现相同的结果。例如,用户运动数据库可以使用Autodesk Maya作为主数据存储(其可以代替Blender或专有程序)来实施,并且机器人动画系统的功能将仍然相同。

机器人动画系统限定了用户可以利用他们熟悉的工具来工作的工作流程,所述工具包括允许他们快速且高效地执行必要任务以调整或更新机器人的运动的特征。如上所述,机器人动画系统的能力包括立即看到用户界面和机器人的人物上的编辑、能够通过单击转到某一帧、以及能够在人物上实时擦除时间线。当创意工作流程完成时,机器人动画系统中的数据已经被更新并且人物也准备好运行。这是因为在同步步骤期间,用户运动数据库和控制器运动数据库被更新。机器人动画系统还获取塑造机器人的运动所需的所有参数,并且将它们放入易于使用的单个工具中。此外,其他系统不包括如可视化、交互性和实时运动学建模和模型等附加工具。

现在参考图1,示出了根据一些实施例的机器人动画系统的示例用户界面100。如所描绘的,示例用户界面100示出了在用户计算设备上操作的示例修改应用程序内的人物机器人101。也就是说,修改应用程序对于用户是可见的,其中,用户可以经由人物机器人101来看到机器人的实时运动,并且通过使用示例用户界面100上的各种工具栏(比如工具栏102),用户可以修改和更新任何期望的运动以对机器人作出指示。

参考图2,示出了根据一些实施例的示例计算设备200的框图。图2展示了可以由所披露的系统采用或可以用于执行所披露的方法的示例性计算设备200。计算设备200(比如图3的用户计算设备或控制器)可以实施例如本文描述的功能中的一个或多个功能。然而,应当理解的是,其他计算设备配置是可能的。

计算设备200可以包括一个或多个处理器201、存储器202、一个或多个输入/输出设备203、收发器204、一个或多个通信端口207、以及显示器206,所有这些都可操作地耦合至一条或多条数据总线208。数据总线208允许在各种设备之间进行通信。数据总线208可以包括有线或无线通信信道。数据总线208连接至一个或多个设备。

处理器201可以包括一个或多个不同的处理器,每个处理器具有一个或多个核。所述不同的处理器中的每一个可以具有相同或不同的结构。处理器201可以包括一个或多个中央处理单元(CPU)、一个或多个图形处理单元(GPU)、专用集成电路(ASIC)、数字信号处理器(DSP)等。

处理器201可以被配置为通过执行存储在指令存储器上的体现特定的功能或操作的代码来执行所述功能或操作。例如,处理器201可以被配置为执行本文所披露的任何功能、方法或操作中的一项或多项。

存储器202可以包括指令存储器,所述指令存储器可以存储可以由处理器201访问(例如,读取)和执行的指令。例如,指令存储器可以是非暂态计算机可读存储介质,比如只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存、可移动磁盘、CD-ROM、任何非易失性存储器、或任何其他合适的存储器。例如,指令存储器可以存储指令,所述指令在由一个或多个处理器201执行时使一个或多个处理器201执行图像重构系统的一个或多个功能。

存储器202还可以包括工作存储器。处理器201可以将数据存储到工作存储器,并且从工作存储器读取数据。例如,处理器201可以将工作指令集存储到工作存储器,比如从指令存储器加载的指令。处理器201还可以使用工作存储器来存储在计算设备200的操作期间创建的动态数据。工作存储器可以是随机存取存储器(RAM),比如静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)、或任何其他合适的存储器。

输入/输出设备203可以包括允许数据输入或输出的任何合适的设备。例如,输入/输出设备203可以包括以下各项中的一项或多项:键盘、触摸板、鼠标、触控笔、触摸屏、实体按钮、扬声器、麦克风、或任何其他合适的输入或输出设备。

(多个)通信端口207可以包括例如串行端口,比如通用异步接收器/发射器(UART)连接、通用串行总线(USB)连接、或任何其他合适的通信端口或连接。在一些示例中,(多个)通信端口207允许对指令存储器中的可执行指令进行编程。在一些示例中,(多个)通信端口207允许传送(例如,上传或下载)数据。

显示器206可以显示用户界面205。用户界面205可以实现与计算设备200的用户交互。在一些示例中,用户可以通过接合输入/输出设备203来与用户界面205交互。在一些示例中,显示器206可以是触摸屏,其中,用户界面205显示在触摸屏上。

收发器204可以允许与网络(比如Wi-Fi网络、以太网网络、蜂窝网络、或任何其他合适的通信网络)进行通信。例如,如果在蜂窝网络中操作,则收发器204被配置为允许与蜂窝网络进行通信。(多个)处理器201可操作用于经由收发器204从网络接收数据或向网络发送数据。

参考图3,示出了根据一些实施例的机器人动画系统300的示例功能框图。机器人动画系统300包括可以操作机器人动画应用程序的用户计算设备304,比如移动计算设备、膝上型计算机、平板计算机、台式计算机等,通过所述机器人动画应用程序,用户可以修改和看到目标设备306(比如图3中展示的机器人)的运动。如前所述,目标设备306包括位于跨目标设备306的多个位置308a至308f处的多个致动器,以进行或执行移动。虽然仅示出了六个致动器和位置,但是可以理解,所述多个致动器可以位于目标设备306上的任何位置处,所述位置可以被指示移动并且不受图3中所示的示例的限制。

用户计算设备304利用对运动信息的任何改变来更新用户运动数据库310,以对目标设备306作出指示。作为同步的结果,用户运动数据库310与控制器运动数据库312(比如机器人运动数据库)之间的双向通信开始,从而允许运动参数模块316、运动数据参数模块320、可视化模块324、交互性模块328、以及控制命令模块332还在用户计算设备304与控制器336(比如机器人控制器)之间同步。用户计算设备304和控制器336在用户在用户计算设备304上进行选择时同步,以允许由于控制器336向目标设备306输出作为同步的结果在用户运动数据库310中指示的控制信号而在用户计算设备304和目标设备306的用户界面(比如用户界面205)上实时可视化人物。

例如,控制命令模块332可以包括关于要遵循哪个帧的特定信息,包括来自运动参数模块316和/或运动数据参数模块320的特定运动指令,指示要实施哪个运动。在各种实施方式中,可视化模块324允许向用户计算设备304进行实时反馈,以供用户可视化目标设备306的运动。进一步地,交互性模块328允许经由用户计算设备304(例如通过(多个)输入/输出设备203和/或显示器206)进行实时用户输入,以控制目标设备306。

现在参考图4,示出了根据一些实施例的用于通过机器人动画系统来控制机器人的运动的示例用户界面400。例如,示例用户界面400描绘了机器人动画应用程序的示例,通过所述机器人动画应用程序可以观看和设置机器人401的运动参数。用户可以在机器人上的不同点处并且在不同时间调整不同的运动。用户界面400还可以提供机器人401的命令运动设置(比如位置和速度)与机器人401的实际运动之间的差异的指示402。在一些实施例中,用户界面400还可以包括故障指示403。这些故障指示403可以包括到机器人401和/或机器人动画系统的其他部件(比如用户运动数据库310或控制器运动数据库312)的故障或来自所述机器人和/或所述机器人动画系统的其他部件的故障。用户界面400还可以包括播放界面元素404,以允许用户使机器人401启动和停止。

参考图5,示出了根据一些实施例的操作机器人动画系统300的示例方法500的流程图。方法500开始于步骤502。在步骤504处,在用户运动数据库310处从用户计算设备304接收同步指示,用户计算设备304可以进一步包括用户界面100。在步骤506处,连接用户运动数据库310和控制器运动数据库312,以实时共享对应的运动指令集。在步骤508处,目标设备306经由控制器336实时实施由于连接而共享的对应的运动指令集。方法500在步骤510处结束。

在一些实施例中,方法500可以包括:在用户计算设备304的用户界面100上显示人物101,并且使用人物101来实时执行与所实施的对应的运动指令集相对应的移动。在进一步的实施例中,方法500可以包括:在用户计算设备304处接收用户输入,并且响应于从用户计算设备304传输同步指示而实时更新对应的运动指令集。在一些实施例中,方法500可以包括从用户运动数据库310获得运动指令集,其中,所述运动指令集先前被上传并存储在用户运动数据库310中。然后,方法500可以在用户计算设备304的用户界面100上生成并显示用户可选用户界面元素,比如在工具栏102中找到的元素,所述元素对应于运动指令集中的每个运动。在一些实施例中,方法500可以进一步包括响应于从用户计算设备304接收到播放指令而在目标设备306上实时实施对应的运动指令集。

一种系统包括:包括用户界面的用户计算设备;通信地耦合至用户计算设备的用户运动数据库;控制器;通信地耦合至控制器的控制器运动数据库;以及通信地耦合至控制器的目标设备。用户计算设备被配置为响应于从用户计算设备接收到同步指示而连接用户运动数据库和控制器运动数据库,以便实时共享对应的运动指令集。目标设备被配置为在目标设备上实时实施对应的运动指令集。

在一些实施例中,在用户计算设备的用户界面上显示人物,所述人物被配置为实时执行与所实施的对应的运动指令集相对应的移动。

在一些实施例中,用户计算设备被配置为接收用户输入并且响应于从用户计算设备传输同步指示而实时更新对应的运动指令集。

在一些实施例中,用户计算设备被配置为从用户运动数据库获得运动指令集,其中,所述运动指令集先前被上传并存储在用户运动数据库中。用户计算设备还可以在用户计算设备的用户界面上生成并显示与运动指令集中的每个运动相对应的多个用户可选用户界面元素。

在一些实施例中,目标设备被配置为响应于从用户计算设备接收到播放指令而在目标设备上实时实施对应的运动指令集。

在一些实施例中,通过用户计算设备以预定顺序向目标设备传输一组帧而在目标设备上实施对应的运动指令集。

在一些实施例中,运动指令集中的每个运动包括(i)用于经由人物执行移动的指令以及(ii)用于在目标设备上执行移动的指令。

在一些实施例中,目标设备包括用于在目标设备上执行移动的多个致动器。

在一些实施例中,响应于对用户计算设备的用户界面上显示的用户可选界面元素的选择而传输同步指示。

在一些实施例中,控制器从控制器运动数据库接收运动指令集,并且控制器选择与用于在目标设备上执行移动的指令相关联的运动指令集,以传输至目标设备。

在一些实施例中,一种方法包括在用户运动数据库处从用户计算设备接收同步指示,所述用户计算设备包括用户界面。所述方法还包括连接用户运动数据库和控制器运动数据库以实时共享对应的运动指令集。所述方法进一步包括经由控制器在目标设备上实时实施由于连接而共享的对应的运动指令集。

在一些实施例中,一种方法包括:在用户计算设备的用户界面上显示人物;并且使用所述人物来实时执行与所实施的对应的运动指令集相对应的移动。

在一些实施例中,一种方法包括:在用户计算设备处接收用户输入,并且响应于从用户计算设备传输的同步指示而实时更新对应的运动指令集。

在一些实施例中,一种方法包括:从用户运动数据库获得运动指令集,其中,所述运动指令集先前被上传并存储在用户运动数据库中,在用户计算设备的用户界面上生成并显示与运动指令集中的每个运动相对应的多个用户可选用户界面元素。

在一些实施例中,一种方法包括响应于从用户计算设备接收到播放指令而在目标设备上实时实施对应的运动指令集。

在一种方法的一些实施例中,通过用户计算设备以预定顺序向目标设备传输一组帧而在目标设备上实施对应的运动指令集。

在一种方法的一些实施例中,运动指令集中的每个运动包括(i)用于经由人物执行移动的指令以及(ii)用于在目标设备上执行移动的指令。

在一种方法的一些实施例中,目标设备包括用于在目标设备上执行移动的多个致动器。

在一种方法的一些实施例中,响应于对用户计算设备的用户界面上显示的用户可选界面元素的选择而传输同步指示。

在一种方法的一些实施例中,控制器从控制器运动数据库接收运动指令集,并且控制器选择与用于在目标设备上执行移动的指令相关联的运动指令集,以传输至目标设备。

尽管以上描述的方法是参考流程图的,但是应当理解的是,可以使用许多其他方式来执行与这些方法相关联的动作。例如,一些操作的顺序可以改变,并且所描述的一些操作可以是可选的。

此外,本文描述的方法和系统可以至少部分地以计算机实施的过程和用于实践那些过程的装置的形式来体现。所披露的方法还可以至少部分地以用计算机程序代码编码的有形非暂态机器可读存储介质的形式来体现。例如,所述方法的步骤可以在硬件中、在由处理器执行的可执行指令(例如,软件)中、或两者的组合中体现。介质可以包括例如RAM、ROM、CD-ROM、DVD-ROM、BD-ROM、硬盘驱动器、闪存、或任何其他非暂态机器可读存储介质。当计算机程序代码被加载到计算机中并由其执行时,所述计算机变成用于实践所述方法的装置。所述方法还可以至少部分地以计算机的形式来体现,计算机程序代码被加载到所述计算机中或在其中被执行,使得所述计算机变成用于实践所述方法的专用计算机。当在通用处理器上实施时,计算机程序代码段对处理器进行配置以创建特定的逻辑电路。可替代地,所述方法可以至少部分地在用于执行所述方法的专用集成电路体现。

在本申请中,包括以下定义,术语“模块”或术语“控制器”可以用术语“电路”代替。术语“模块”可以指代执行代码的处理器硬件(共享、专用或组)和存储由处理器硬件执行的代码的存储器硬件(共享、专用或组)、是其一部分或包括其。

模块可以包括一个或多个接口电路。在一些示例中,(多个)接口电路可以实施连接至局域网(LAN)或无线个人局域网(WPAN)的有线或无线接口。LAN的示例为电气与电子工程师协会(IEEE)标准802.11-2016(也称为WIFI无线网络标准)和IEEE标准802.3-2015(也称为以太网有线网络标准)。WPAN的示例为来自蓝牙特别兴趣小组的蓝牙无线网络标准和IEEE标准802.15.4。

模块可以使用(多个)接口电路与其他模块通信。尽管模块在本披露内容中可以被描绘为直接与其他模块进行逻辑通信,但在各种实施方式中,模块实际上可以经由通信系统进行通信。通信系统包括物理和/或虚拟网络设备,比如集线器、交换机、路由器和网关。在一些实施方式中,通信系统连接到或横跨比如互联网等广域网(WAN)。例如,通信系统可以包括通过互联网或点对点租用线路、使用包括多协议标签交换(MPLS)和虚拟专用网络(VPN)的技术彼此连接的多个LAN。

在各种实施方式中,模块的功能可以分布在经由通信系统连接的多个模块间。例如,多个模块可以实施由负载平衡系统分发的相同功能。在进一步的示例中,模块的功能可以拆分到服务器(也称为远程或云)模块与客户端(或用户)模块之间。

提供前述内容是出于说明、解释和描述这些披露内容的实施例的目的。对这些实施例的修改和改编对于本领域技术人员将是显而易见的,并且可以在不脱离这些披露内容的范围或精神的情况下进行。

相关技术
  • 机器人控制系统、机器人控制方法及机器人控制系统用的用户设备
  • 一种机器人控制系统、机器人异常信号检测方法及机器人
  • 控制用于医疗远程操作或外科远程操作的机器人系统的方法以及使用该方法控制局部参考坐标系和机器人系统,该机器人系统具有通过操作员可运动的机械上无约束的主设备
  • 用于工业机器人调试的方法、使用该方法的工业机器人系统和控制系统
技术分类

06120116672488