CN106794580A - 用于指令机器人操作的系统和方法 - Google Patents

用于指令机器人操作的系统和方法 Download PDF

Info

Publication number
CN106794580A
CN106794580A CN201580028216.1A CN201580028216A CN106794580A CN 106794580 A CN106794580 A CN 106794580A CN 201580028216 A CN201580028216 A CN 201580028216A CN 106794580 A CN106794580 A CN 106794580A
Authority
CN
China
Prior art keywords
robot
actor
digital
machine people
physical machine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201580028216.1A
Other languages
English (en)
Other versions
CN106794580B (zh
Inventor
J.林内尔
K.伯恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Insi Innovation Co ltd
Original Assignee
Potter & Dolly Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Potter & Dolly Ltd filed Critical Potter & Dolly Ltd
Publication of CN106794580A publication Critical patent/CN106794580A/zh
Application granted granted Critical
Publication of CN106794580B publication Critical patent/CN106794580B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31467Display of operating conditions of machines, workcells, selected programs
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31472Graphical display of process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32342Real time simulation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32351Visual, graphical animation of process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40397Programming language for robots, universal, user oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings

Abstract

示例性系统和方法可允许使用通用机器人轨迹格式来控制工作单元内的机器人过程。一个示例性方法包括接收至少一个数字机器人施动者的数字表示,其包括对应于至少一个数字机器人施动者的至少一个机器人定义和用于至少一个数字机器人施动者的至少一个机器人操作序列,确定至少一个数字机器人施动者和物理工作单元内的至少一个对应物理机器人施动者之间的映射,产生用于至少一个物理机器人施动者的至少一个机器人语言专用的可执行指令序列,以及传输至少一个机器人语言专用的可执行指令序列至至少一个物理机器人施动者以执行,以便在物理工作单元内执行至少机器人操作序列。

Description

用于指令机器人操作的系统和方法
背景技术
除非这里另有表示,这个部分中描述的材料对于本申请的权利要求来说不是现有技术,并且不因包括在该部分中而被承认是现有技术。
自动化制造过程可能涉及可用于构造输出产品的一个或多个机器人装置的使用,输出产品例如为汽车、墙壁、一件家具或任何数量的其它物理结构。机器人装置可配备有末端执行器安装工具,例如钳子或钻孔机,可在构造过程期间使用。机器人装置可被编程有序列的具体运动命令和用于其它操作的命令,以便导致机器人装置完成制造过程。
发明内容
本公开提供可帮助允许使用通用机器人轨迹格式以便控制工作单元内的机器人过程的方法和设备。特别是,可产生通用机器人代码文件,其包含数字机器人施动者以及用于每个数字机器人施动者执行的机器人操作的描述。控制系统可接收通用机器人代码文件且确定数字机器人施动者和工作单元内的对应物理机器人施动者之间的映射。机器人语言专用的可执行指令可为物理机器人施动者产生,以使得机器人施动者能够执行来自通用机器人代码文件的机器人操作。物理机器人施动者然后可被控制以在物理工作单元内执行该指令。
在一个示例中,提供一种方法,该方法包括由计算机装置接收至少一个数字机器人施动者的数字表示。该数字表示可包括(a)至少一个机器人定义,该至少一个机器人定义对应于至少一个数字机器人施动者,其中至少一个机器人定义包括由至少一个数字机器人施动者可操作的至少一个IO装置,以及(b)用于至少一个数字机器人施动者的至少一个机器人操作序列,其中用于数字机器人施动者的机器人操作序列包括多个机器人运动和激活至少一个IO装置中的一个或多个的多个IO触发器。该方法还可包括确定至少一个数字机器人施动者和物理工作单元内的至少一个对应物理机器人施动者之间的映射。该方法也可包括根据用于至少一个对应数字机器人施动者的至少一个机器人操作序列产生用于至少一个物理机器人施动者的至少一个机器人语言专用的可执行指令序列。该方法可另外包括将至少一个机器人语言专用的可执行指令序列传输至至少一个物理机器人施动者以执行,从而实现在物理工作单元内的至少一个机器人操作序列。
在进一步示例中,公开了一种系统,包括至少一个物理机器人施动者和控制系统。控制系统可配置为接收至少数字机器人施动者的数字表示。数字表示可包括(a)至少一个机器人定义,该至少一个机器人定义对应于至少一个数字机器人施动者,其中至少一个机器人定义包括由至少一个数字机器人施动者可操作的至少一个IO装置,以及(b)用于至少一个数字机器人施动者的至少一个机器人操作序列,其中用于数字机器人施动者的机器人操作序列包括多个机器人运动和激活至少一个IO装置中的一个或多个的多个IO触发器。控制系统还可配置为确定至少一个数字机器人施动者和至少一个物理机器人施动者之间的映射。控制系统也可配置为根据用于至少一个数字机器人施动者的至少一个机器人操作序列确定用于至少一个物理机器人施动者的至少一个机器人语言专用的可执行指令序列。控制系统也可配置为将至少一个机器人语言专用的可执行指令序列传输至至少一个物理机器人施动者以执行,以便执行至少一个机器人操作序列。
在另一个示例中,公开了一种非瞬态计算机可读介质,其中存储了指令,在由计算机装置执行时,引起计算机装置实现功能。功能可包括接收至少一个数字机器人施动者的数字表示。数字表示可包括(a)至少一个机器人定义,该至少一个机器人定义对应于至少一个数字机器人施动者,其中至少一个机器人定义包括由至少一个数字机器人施动者可操作的至少一个IO装置,以及(b)用于至少一个数字机器人施动者的至少一个机器人操作序列,其中用于数字机器人施动者的机器人操作序列包括多个机器人运动和激活至少一个IO装置的一个或多个的多个IO触发器。功能还可包括确定至少一个数字机器人施动者和物理工作单元内的至少一个对应物理机器人施动者之间的映射。功能也可包括根据用于至少一个对应数字机器人施动者的至少一个机器人操作序列产生用于至少一个物理机器人施动者的至少一个机器人语言专用的可执行指令序列。功能可另外包括将至少一个机器人语言专用的可执行指令序列传输至至少一个物理机器人施动者以执行,以便在物理工作单元内执行至少一个机器人操作序列。
在再一个示例中,系统可包括用于接收至少一个数字机器人施动者的数字表示的手段。数字表示可包括(a)至少一个机器人定义,该至少一个机器人定义对应于至少一个数字机器人施动者,其中至少一个机器人定义包括由至少一个数字机器人施动者可操作的至少一个IO装置,以及(b)用于至少一个数字机器人施动者的至少一个机器人操作序列,其中用于数字机器人施动者的机器人操作序列包括多个机器人运动和激活至少一个IO装置中的一个或多个的多个IO触发器。系统还可包括确定至少一个数字机器人施动者和物理工作单元内的至少一个对应物理机器人施动者之间映射的手段。系统也可包括根据用于至少一个对应数字机器人施动者的至少一个机器人操作序列确定用于至少一个物理机器人施动者的至少一个机器人语言专用的可执行指令序列的手段。系统可另外包括用于将至少一个机器人语言专用的可执行指令序列传输到至少一个物理机器人施动者以便在物理工作单元内执行所述至少一个机器人操作序列的手段。
前面的发明内容仅为说明性的而不意味着任何方式上的限制。除了上面描述的各方面、实施例和特征,进一步的方面、实施例和特征通过参考图以及下面的具体实施方式和附图将变得明显易懂。
附图说明
图1示出了根据示例性实施例的制造控制系统的方块图。
图2A示出了根据示例性实施例的具有7自由度的机器人的示意图。
图2B示出了根据示例性实施例的具有附加钳子的机器人的示意图。
图2C示出了根据示例性实施例的具有附加心轴的机器人的示意图。
图3A示出了根据示例性实施例的工具架的示意图。
图3B示出了根据示例性实施例的工具架和两个机器人的示意图。
图4A示出了根据示例性实施例的具有3D模型的图形界面。
图4B示出了根据示例性实施例的具有3D模型的附加图形界面。
图5示出了根据示例性实施例的节点基图形界面和构建过程可视化。
图6A示出了根据示例性实施例的用于图形界面的工具栏。
图6B示出了根据示例性实施例的数字工具体系(organization)。
图6C是根据示例性实施例的示例性工作流的方块图。
图7是根据示例性实施例的示例性方法的方块图。
图8A示出了根据示例性实施例的客户端和服务器的示意图。
图8B示出了根据示例性实施例的客户端和服务器的另一个示意图。
图9示出了根据示例性实施例的示例性通用机器人轨迹格式文件。
图10是根据示例性实施例由示例性系统使用的功能的流程图。
具体实施方式
这里描述示例性方法和系统。这里描述的任何示例性实施例或特征不是必须解释为在其它实施例或特征上优选或有利的。这里描述的示例性实施例不意味着是限制。容易理解,所公开的系统和方法的某些方面可在广泛种类的不同配置中设置和结合,其全部在这里明确地预期。
此外,图中示出的特定设置方案不应看作限制。应理解,其它实施例可包括或多或少的给定附图中示出的每个元件。此外,某些示出的元件可结合或省略。再次,示例性实施例可包括图中没有示出的元件。
I.概述
示例性系统可使用通用机器人轨迹格式,可帮助允许物理工作单元内的工业机器人装置的不同类型的控制。示例性通用机器人轨迹格式文件可包括描述被控制的机器人施动者的类型以及在沿着运动序列的任何给定的步骤和/或在沿着时间线的点上它们的轨迹和状态二者的参数。此外,文件可描述给定的机器人施动者应在哪里和机器人施动者在特定点上应做什么以执行物理世界内协同过程二者,例如构造输出产品的制造过程。在另外的示例中,轨迹格式可由一个系统使用,以允许来自多个制造者的不同类型的机器人在单一软件环境内编程且通过共享的硬件环境控制。
在示例内,通用机器人轨迹格式文件可包含描述一个或多个数字机器人施动者的一个或多个机器人定义。机器人定义可包含关于特定机器人施动者的信息,包括可由机器人施动者使用的输入/输出(IO)装置的类型。在进一步示例中,机器人定义也可包含描述在过程开始之前的初始机器人定位的机器人施动者的初始姿势。
另外,通用机器人轨迹格式文件可包含用于每个机器人施动者执行的机器人运动序列的数字表示。在运动路径内,文件还可描述在机器人施动者的运动路径内的一定点上的很多不同的IO触发器(例如,激活诸如钳子的末端执行器安装工具)。在某些示例中,除了运动指令和IO触发器外,示例性机器人轨迹格式可包含元数据,其描述与机器人运动路径中的特定点相关的附加信息。例如,特定点可识别为同步点,其要求在机器人施动者可连续执行操作前所有机器人施动者之间互锁。在进一步示例中,文件也可描述用于独立装置的IO触发器,以例如在执行过程的同时在特定点上激活工作单元内的转台。
为了在物理工作单元内执行来自通用机器人轨迹格式文件的机器人操作,文件内限定的数字机器人施动者可首先映射到工作单元内的对应的物理机器人施动者。在某些示例中,控制系统可采用分开的阶段文件确定该映射。示例性阶段文件可包含工作单元内可用的机器人装置和/或其它硬件装置的描述。例如,阶段文件可包含描述工作单元内机器人施动者、工具、工具更换器和/或传感器的参数。
在另外示例中,控制系统可采用阶段文件确定能够执行对应数字机器人施动者的机器人操作的可用的物理机器人施动者。映射也可映射通用机器人轨迹格式文件和物理工作单元之间的其它类型的装置(例如,IO装置)。在其它示例中,数字机器人施动者和物理机器人施动者之间的映射可以以其它方式确定。例如,用户可在计算机装置的显示器内用下拉菜单呈现供选择的适当机器人施动者列表,以便选择工作单元内的哪个物理机器人施动者应执行来自通用机器人轨迹格式文件的哪组操作。
在另外示例中,转换服务可提供以从通用机器人轨迹格式产生可执行指令,导致用于特定类型机器人装置机器代码。在某些示例中,首先可使用确认过程,以便证明物理工作单元内的机器人施动者(和可能的其它硬件装置)能够在特定物理工作单元内执行来自通用机器人轨迹格式文件的一组机器人操作。在确认机器人过程可在工作单元内完成后,机器人语言专用的指令可为用于工作单元内的特定类型的装置产生。机器人语言专用的指令然后可传输到装置以用于执行。
在进一步示例中,通用机器人轨迹格式也可由高级控制器使用,在执行期间从物理工作单元内的机器人施动者和/或其它硬件装置接收信息。特别是,格式可支持仅能采用来自工作单元的信息在运行时间期间解决的条件语句。例如,控制器可采用工作单元内一个或多个机器人施动者的状态确定是否执行特定的操作或如何从几个不同的操作中选择。在其它示例中,控制器可采用来自工作单元内传感器的传感器数据,以便也可或替代解决条件语句。
在进一步示例中,通用机器人轨迹格式可支持机器人运动和其它操作的程序(例如,顺序的)和并行(例如,时基)执行二者。例如,通用机器人轨迹格式文件的部分可注释为表示是否该部分描述了顺序的或时基的执行。在顺序的代码部分中,机器人轨迹和其它事件顺序地描述为有序的目标帧和IO触发器的序列。在时基的代码部分中,机器人轨迹和其它事件可采用一定的时间间隔(例如,12ms)沿着全局时间线在对应点描述。在编辑点上,控制系统可评估是否运动序列设计为并行的或程序性的执行环境(或二者中的某些)以及用于每个机器人施动者的适当的机器语言,以便传输指令到工作单元内的装置。
II.示例性控制系统
示例性实施例可提供在制造和构造业中使用的多轴机器人系统的运动计划和控制。示例性设计到生产系统可允许用户利用传播到由一个或多个机器人装置采用一个或多个工具制造的产品的效果改变描述在前端上的输出产品的参数。在一些实施例中,用户可被提供有图形界面,该图形界面允许使用不同的工具集配置机器人施动者以自动化构建过程。在进一步示例中,机器人的运动可抽象化,从而用户不必为了控制构建过程而编程具体的机器人指令(例如,运动指令或工具指令)。因此,用户可在没有特定类型机器人指令的具体知识的情况下设计构建过程。另外,用户可提供有一个或多个界面,以允许在制造过程内、在离线运动编程期间和/或在运动时间期间改变具体机器人操作上的控制量。
在进一步示例中,用户可提供有三维(3D)建模图形界面,以允许用户改变描述在物理世界中影响构建过程的物理工作单元和/或所希望输出产品的一个或多个变量。另外,用户界面可提供数字表示物理物体的抽象方法作为软件环境内的节点。特别是,用户经验可使用户从能以很多不同方式配合和结合的工具阵列选择以控制物理工作单元内的不同类型的机器人施动者和硬件部件。
在进一步示例中,物理工作单元可包括其上计划物理构建过程或在物理世界上发生的(一个或多个)物理阶段。在一些实施例中,物理工作单元可包括各种不同的机器人施动者和其它硬件部件以及在构建过程中可能使用的物理材料。在进一步示例中,物理工作单元可包含工具架和/或自动工具更换装置。在另外的示例中,物理工作单元可包含一个或多个不同类型的传感器。再者,物理工作单元可包括任何数量的不同尺度,包括用于特定构建活动的平台。
应理解,本公开不是要按照本申请中描述的特定实施例来限制,旨在对各方面的说明。这里描述了示例性制造系统的众多部件。也预期仅包含这些部件的某些或这些部件的任何组合的系统。在不脱离所公开系统和方法的精神和范围的情况下,可进行很多的修改和变化。除了这里列举的那些外,本公开范围内的功能上等同的方法和设备对本领域的技术人员来说是显而易见的。
示例性实施例可涉及制造控制系统的使用,以在构建过程期间产生机器人手臂的自动编程。图1描述了示例性制造控制系统100。制造控制系统100可为制造环境的部分,用于控制一个或多个机器人装置使用一个或多个工具构造某些输出产品。制造控制系统100可包括主控制10、输入和反馈系统20、系统装置40和安全系统90。从最基本的角度看,制造控制系统100可在输入系统20通过主控制10给系统装置40之一提供指令时运行。
在一个潜在实施例中,作为制造控制系统100的部分,输入和反馈系统20可包括数据库22、主输入24、软件控制26和独立手动控制28。作为输入和反馈系统20的部分,数据库22可操作为提供一套定时和位置数据以指挥系统装置40内的装置施动者42、44的全部或部分。两个装置施动者42、44示出在图1中,但是任何数量的装置施动者可用在制造控制系统100内。作为选择,数据库22可存储通过与装置施动者42、44的操作和功能相关的手动或单个运动或数据输入产生的数据。数据库22也可存储与装置施动者42、44独立产生的数据,例如采用软件控制26的软件建模特征创建的数据。
主输入24可为用于操作与制造控制系统100执行的特定构建过程相关的所有装置施动者42、44的任何装置。主输入24可通过发送输入控制信号到主控制10而运行。主控制10然后可采用来自主输入24的信号发送单个控制信号到为特定制造过程作为装置施动者42、44操作的多个机器人施动者。在一个潜在实施例中,装置施动者42、44的每个单个装置可在从主输入24接收信号时从主控制10提供控制信号,包括为制造过程的特定部分不作为装置施动者42、44操作的装置保持现状或不动作状态的信号。在选择性实施例中,作为用于制造过程的特定部分的运动控制系统100的操作的一部分,作为制造控制系统100一部分连接的装置施动者42、44的一部分可不从主控制被发送任何信号。
在一些实施例中,在通过主控制10给多个装置施动者42、44发送控制信号中,软件控制26可用作主输入24的替代者。作为选择,软件控制26可控制装置施动者42、44当中的单个装置以控制单个装置的特定操作。在其它潜在实施例中,软件控制26可用于建模代表物理工作单元的虚拟建模环境内的装置施动者42、44的单个装置的行为。在这样的实施例中,软件控制26可包含用于单个装置的软件模型,其允许为装置创建控制信号而不实际发送信号到装置。控制信号然后可存储在软件控制26中、在数据库22中、在作为主控制10一部分的计算机存储器部件内、或者在计算机存储器内,计算机存储器是为其创建控制的装置施动者42、44的装置的一部分。在控制信号由软件控制26创建且传播到适当的存储位置后,来自软件控制26或来自主输入24的主控制信号可激活用于单个装置的控制信号以与其它装置施动者42、44协同动作。
在进一步示例中,装置施动者42、44的某些装置可另外具有独立的手动控制28。如上面有关软件控制26所描述,用于单个装置的控制信号可在软件建模中创建。另外或替代,具有独立手动控制28的装置可用于操作装置施动者42、44的装置。在为整个制造过程创建一套指令时,独立手动控制28可随时间被赋予记录到数据库22或主控制10的存储装置的输入指令。在采用独立手动控制28创建一套指令期间,独立手动控制28可直接与装置施动者42、44的相关装置通信。作为选择,独立手动控制28可给主控制10发送控制信号,其然后将该信号传送到装置施动者42、44的相关装置。
控制信号然后可从独立手动控制28(例如,分开的用户界面)的信号或从由相关装置的操作创建的测量反馈读数的任何一个创建。另外,尽管在很多情形下,可能优选使独立手动控制28在实时的控制信号创建期间实际控制相关的装置,但是控制信号可替代在不控制装置的情况下创建。例如,如果输入信号期待一定的时间标记,则独立手动控制28可独立于相关装置而操作,并且可记录该控制操作。因此,来自独立手动控制的用于装置施动者42、44的单个装置施动者的指令可集成在作为制造控制系统100的部分的构建过程中。
在进一步示例中,主控制10可通过在虚拟世界(例如,软件控制26)和物理世界(例如,包含装置施动者42、44的物理工作单元)之间提供链接而允许构建系统的各部件的实时控制。因此,物理世界内的物理机器人的运动可用于实时驱动对应虚拟机器人的当前位置。类似地,虚拟机器人的运动也可或替代用于驱动物理世界中的物理机器人的当前位置。
在一个潜在实施例中,用于具体装置施动者的单个控制信号以由主控制内的主机时钟提供的共同基础时间调入主控制的存储器内的单一文档中。在操作期间,主控制可以以适当的间隔为每个装置施动者提取控制信号且给每个装置施动者提供单个控制信号。在选择性实施例中,主控制可为不同的装置施动者保持分开的单个控制信号文档和定时数据,并且同步与单个控制文档分开的不同的控制信号。
在另一个选择性实施例中,用于装置施动者的一部分的控制数据可由主控制传输到相关单个装置施动者内的存储器。在操作期间,在存储器内具有控制数据的装置施动者可接收表示全局时间线的位置、通过全局时间线的前进速度或二者的同步信号。
网络支持也可实现主控制10到一个或多个系统装置40的通信。在一个潜在实施例中,网络可包括根据IEEE1588的EtherCAT网络操作。在这样的实施例中,在每个从属节点利用场总线存储器管理单元可在线(on the fly)处理数据包。每个网络节点可读取给其选址的数据,而电报转发到下一个装置。类似地,在电报通过时可插入输入数据。电报可仅延时几个纳秒。在主机侧,商业可获得的标准网络接口卡或板载以太网控制器可用作硬件接口。利用这些接口,通过直接存储器访问传输到主控制的数据可被实现,而CPU容量不会为网络访问占用。EtherCAT协议采用以太帧内的正式分配以太类型。该以太类型的使用可允许以太帧内的控制数据直接传输,而不重新定义标准的以太帧。帧可由几个子电报组成,其每一个服务逻辑过程图像的特定存储区域,其大小可达4千兆字节。以太网终端的寻址可为任何顺序,因为数据序列可独立于物理顺序。广播、多址通信和从属装置之间的通信是可能的。
以太网帧中的直接传输可用在EtherCAT部件可在与主控制器相同的子网中操作且控制软件直接访问以太网控制器的情况下。EtherCAT中的配线灵活性还可通过不同电缆的选择而最大化。灵活和便宜的标准以太网补丁电缆可选地在以太网方式(100BASE-TX)或在E-Bus(LVDS)信号表示法中传输信号。塑料光纤(POF)可用在较长距离的具体应用中。以太网网络的完整宽带,例如不同的光纤和铜缆,可与开关或介质转换器结合使用。快速的以太网(100BASE-FX)或E-Bus可根据距离要求选择。
此外,这样的采用EtherCAT的实施例支持与分配时钟的精确对位同步的方法,如IEEE1588标准中所描述。与完全同步通信相反,在通信错误的情况下同步质量立即变差,分布排列的时钟与通信系统内的可能的错误相关延迟具有高度的公差。因此,数据交换可根据“母”和“女”时钟在硬件中完全做好。每个时钟可简单且精确地确定其它时钟的运行时间偏离,因为通信利用逻辑和全双工通信以太网物理环形结构。分布的时钟可根据这样的值调整,这意味着抖动明显小于1毫秒的非常精确的网络范围时基是可用的。
然而,高解析度分配时钟不仅用于同步,而且可能提供关于数据采集的本地时间的精确信息。例如,控制频繁地计算来自顺序测量位置的速度。特别是非常短的采样时间,甚至位移测量中的非常小的暂时抖动也可导致速度上的很大步进变化。在包括EtherCAT的实施例中,可引入扩大数据类型(时间戳数据类型、重复采样数据类型)的EtherCAT。本地时间可以以10ns的解析度链接到测量值,这可由以太网提供的大宽带实现。速度计算的精度于是可不再取决于通信系统的抖动。
此外,在网络包括EtherCAT的实施例中,热连接功能能使网络的部分“在线”链接和去耦或再配置。很多应用要求操作期间I/O配置上的变化。EtherCAT系统的协议结构可考虑这些变化的配置。
在进一步示例中,安全系统90可提供为在建模施动者通过全局时间线的运动中检测装置施动者之间的潜在冲突的预防安全。此外,这样的通过全局时间线的建模可用于为安全系统90设定安全参数。装置施动者通过全局时间线的位置和速度的建模能够识别物理工作单元的区域中的不安全区域和不安全时间。这样的识别可用于设定物体检测器的感测触发器,物体检测器是示例性安全系统的部分。例如,如果某一装置施动者的5英尺内的区域确定为冲突风险,并且需要另外10英尺的缓冲区域以在操作中保证安全,则LIDAR检测器可配置为在操作期间检测装置施动者的15英尺区域内的不希望的物体和运动,并且如果检测到物体,则自动创建安全关机。在选择性实施例中,LIDAR检测器可配置为,如果在危险区域的周边检测到物体,则创建报警信号,并且如果检测到的物体朝着潜在的冲突区域移动,则仅此创建关机。
在交替实施例中,安全系统90可包括施动者的建模和限定安全区域的模型。软件控制中的施动者的运动分析可允许建模的安全检查看到任何的施动者是否与限定的安全区域冲突。在一些实施例中,安全区域可通过物理工作单元的图像采集通过将固定空间体积输入到软件控制中来限定。安全区域也可限定为根据安全区域中物体的检测的运动、抖动、速度或加速度而变化。在交替实施例中,安全区域可通过从应答器装置数据输入而限定。例如,应答器定位装置可连接到机器人装置施动者,并且安全区域由距应答器的距离限定。应答器可给软件控制提供位置数据,这可更新软件控制内或主机安全控制内的安全区域。在另一个实施例中,固定的安全区域可限定在软件控制内,并且在构建过程的操作前的主机安全控制内的安全PLC前发布。
在一些实施例中,系统装置40可另外包括一个或多个传感器46和48,例如激光基、红外或计算机视觉基传感器。主控制10可在从位于物理工作单元内的一个或多个不同类型的传感器中流转数据。例如,来自传感器的数据可反映物理工作单元内部件和/或材料的尺寸或其它特性,以及部件和/或材料当前如何定位在现实世界内。该数据然后可流转出来到环境内的一个或多个机器人装置施动者42和44以控制机器人动作,例如精确地限定拾取点或调整施加到特定材料的压力以避免损坏材料。
在进一步示例中,机器人装置施动者42、44可配置为操作构造中所用的一个或多个工具,例如,心轴、钳子、钻、剪钳或烙铁。在一些实施例中,机器人装置施动者42、44可在构建过程期间采用工具架和/或自动工具更换装置50在一个或多个工具之间切换。例如,主控制10可包含编程逻辑以便使来自工具架50的工具的选择和配备自动化。在其它示例中,引起机器人装置施动者42、44之一利用工具架/工具更换装置50更换工具的指令也可或替代来自独立手动控制28。
III.示例性系统装置
现在参见图2A-2C和3A-C,将描述系统装置40的几个非限制性示例,包括机器人装置施动者42、44和工具架/工具更换装置50。尽管这些图聚焦在机器人手臂的使用上,但是其它类型的装置施动者42、44或系统装置40也可或替代使用在某些示例中。
图2A示出了根据示例性实施例的机器人装置施动者。特别是,机器人装置施动者200可包括机器人手臂202,其末端执行器204可配备有一个或多个不同的工具。机器人手臂202可沿着六个自由度运动,在图2A示为A1-A6。在一定的示例中,机器人装置施动者200还能沿着一个或多个轴A0运动,例如沿着没有示出的轨道,这允许边到边运动。在一定的实施例中,可给出指令以定位末端执行器204在具体位置,并且机器人手臂204沿着A1-A6的位置和/或机器人装置施动者200沿着一个或多个轴A0的位置可由相关制造控制系统的过程计算。在选择性实施例中,机器人装置施动者200和/或机器人手臂202的位置控制可要求分开、单个设定和控制指令。以几个自由度操作的机器人装置也可或替代用在某些示例中。
图2B示出了配备有钳子206的机器人装置施动者200。特别是,钳子206可设置在机器人手臂202的末端执行器204。钳子206可用于构建过程期间的各种功能,例如拾取物体或部件,移动物体或部件、保持物体或部件,和/或设置物体或部件。可采用各种不同类型的钳子,例如真空钳子、翻斗钳子或被动定心钳子。另外,可采用具有不同尺寸或其它特性的钳子,以能与物理工作单元内的不同类型的机器人施动者一致。
图2C示出了配备有心轴208的机器人装置施动者200。心轴208可包括在构建过程内各种功能所用的旋转轴,各种功能例如为切割材料、成型材料、铣削或布线。心轴208可为各种不同的类型,例如,磨削心轴、电心轴、低速心轴或高速心轴。另外,可采用具有不同尺寸或其它特性的心轴,取决于物理工作单元内的不同类型的机器人施动者。在一些实施例中,其它类型的工具也可由机器人装置施动者使用或由其替代。
图3A示出了根据示例性实施例的工具架。工具架可包含很多的不同制造工具(例如,心轴或钳子),并且可与自动工具更换装置一起使用以便给机器人装置配备特定工具以在物理工作单元内使用。在一些实施例中,工具架可包含沿着轨道300设置的几个工具架模块302、304、306、308,工具架模块302、304、306、308的每一个包含一个或多个特定工具。在一些实施例中,工具架模块302、304、306、308的一个或多个可沿着轨道300移动。在进一步示例中,工具架模块可与从属模块交接,以允许特定工具从工具架模块选择且然后配备在机器人装置上。例如,参见图3A,工具架模块302可与从属模块310交接,并且工具架模块306可与从属模块312交接。
为了便利工具更换,工具架模块可配备有内置安全传感器以最小化意外的工具取出和放下命令的风险。另外,工具更换从属模块可包括IO断接箱子以简化通过IO触发器信号来控制工具。在一些实施例中,IO断接箱子可与时间控制系统交接,时间控制系统例如为关于图1描述的主控制10,其控制物理工作单元内的机器人装置。主控制10可用于指挥特定机器人装置的工具更换,这可在运行时间期间采用软件控制26和/或由独立手动控制28事先配置。
图3B示出了根据示例性实施例的给机器人装置配备工具的工具架的使用。特别是,第一机器人装置314移动其末端执行器316到与工具架的工具架模块302交接的从属模块310之上的位置。例如,机器人装置314可当前配备有钳子318,并且可控制为移动到工具架以便将钳子318放置在工具架中且配备由工具架模块302保持的不同工具。另外,第二机器人装置320可将其末端执行器322定位在从属模块312上以便配备已经由从属模块312保持的心轴324。在配备心轴324后,机器人装置320然后可处理为移动远离工具架且采用心轴324完成操作。工具架模块可定位在工具架上,从而多个机器人装置可同时配备或更换工具。在一些实施例中,附加的支架模块304、308可包含另外的工具,其可由一个或多个机器人装置配备。
在进一步示例中,可采用来自控制系统,例如关于图1描述的主控制10的指令以便指令机器人装置如何在运行时间期间配备工具(例如,确定工具在工具架内哪里且实时解决末端执行器问题,以便定位末端执行器在从属模块之上而使机器人装置拾取工具)。在另外的示例中,驱动系统(例如,用于供电驱动心轴的VFD)可安装在物理工作单元内的分开的固定位置,以便在工具更换装置系统上供电。
IV.示例性图形界面
图4A示出了根据示例性实施例的包含3D模型的图形界面。如所示,图形界面400可包括输入窗口402,输入窗口402可允许用户输入与输出产品406相关的参数,输出产品406例如为采用单个棍子构建的墙。输入窗口402可允许用户输入参数404,参数404可涉及输出产品的各方面,包括尺寸、密度、弯曲特性、其它几何特性、所用材料和/或其它数值输入。输入可用于得出用于输出产品406的参数方案。另外,输入可用于在图形界面400的显示窗口408内产生输出产品406的草图。
图4B示出了根据示例性实施例的基于不同用户输入参数的三个不同输出产品。图形界面440的第一示意图可包含输入窗口402和显示窗口408。输入窗口402可允许用户输入与所希望输出产品相关的参数404,包括产品尺寸、密度、曲线偏移、曲率大小或类型和/或其它几何或数字输入。根据输入参数404,输出产品406的几何表示可显示在显示窗口408内。在一些实施例中,用户可修改单个参数404以便改变输出产品406的各方面。
例如,图形界面450的第二示意图根据输入窗口402内的不同输入参数404在显示窗口408示出了不同的输出产品406。在该示例中,输出产品406的尺寸和/或生产输出产品406所用的材料可修改为生产具有更大高度的输出产品406,如第二示意图450所示。此外,第三示意图460根据输入窗口402内的不同输入参数404在显示窗口408内示出了另一个不同的输出产品406。例如,输出产品的与曲率相关的参数可由用户修改,以便生产另一个不同的输出产品406,如第三示意图460所示。
图5示出了根据示例性实施例的用于建立机器人构建过程的图形界面。例如,图形界面可为如上面关于图1描述的软件控制26的部分。如所示,图形界面500可包含允许用户控制构建过程各方面的输入窗口502,包括构造期间所用的与机器人施动者、工具、运动路径和工具操作相关的节点。图形界面500可另外包含显示窗口510,显示窗口510包含物理工作单元的3D几何图,包括诸如机器人施动者、工具、材料和/或构造的输出产品的部件。在示例性实施例中,输入窗口502可提供视觉编程界面或可允许用户输入参数的不同类型的界面,输入的参数描述所希望的输出产品和/或关于在构建过程中使用的施动者和工具的信息。采用输入窗口502采集的输入数据可用于控制显示窗口510内显示的物理工作单元的几何形状和/或其它方面。
在一个示例中,用户可采用输入窗口502输入控制构建过程的参数,输入窗口502包含视觉编程界面,例如采用视觉编程语言构建的界面,例如称为Grasshopper的商业软件程序。界面可允许用户包括一个或多个节点504,节点504可表示构建过程的部件,例如表示机器人的不同类型和/或配置的机器人节点、表示工具的不同类型和/或配置的工具节点、表示可用的IO的类型的IO节点、表示机器人施动者运动的可能轨道的轨道节点、以及用于确定机器人施动者的运动指令和其它类型指令的指令节点。
如图5的窗口502内所示,单个节点504可采用连接器506连接在一起。两个节点之间的连接器506可表示第一节点的输出用作第二节点的输入。例如,单一机器人节点可从作为输入信息几个不同的部件节点接收,几个不同的部件节点例如为表示机器人类型、机器人所用工具类型、机器人可沿其行进的轨道等的节点。
在进一步示例中,图5的窗口502可包含时间线508。时间线508可具有表示当前时间戳(例如,图中所示的83)的指针,时间戳可表示制造过程的特定时间点。另外,时间线508可包含以特定速度播放构建过程或者快速前进或倒回构建过程的按钮。时间线508可用于控制在显示窗口510内显示物理工作单元的几何形状和/或其它方面的时间点。此外,时间线508可用于表示用于模拟构建过程或在软件内观察物理世界内发生的实际物理构建过程任何一个目的的特定时间点。
如图5所示,用户界面可另外包含显示窗口510,显示窗口510可根据来自输入窗口502的输入显示物理工作单元的几何形状和/或其它方面。例如,除了别的之外,显示窗口510可包括与机器人施动者、工具、构建材料、机器人运动路径和输出产品相关的几何形状。在一个示例中,显示窗口510可采用诸如Rhinoceros的商业3D建模软件设计,如图5所示。显示窗口510可显示特定物理工作单元512内的几何形状。显示窗口510可包括选项以改变物理工作单元512的角度和/或缩小或放大物理工作单元512的视图。
物理工作单元512可包括一个或多个机器人施动者514。机器人施动者514可为如上面有关图1描述的装置施动者42和/或44和/或如有关图2A-2C描述的机器人装置200。对不同类型和/或来自不同制造者的多轴机器人系统的很多不同类型可提供支持。在一些实施例中,机器人施动者514的一个或多个可为传统的六轴机器人。在另外的示例中,另外或替代,可配置为沿着更少或更多轴操作的其它类型的机器人可包括在物理工作单元512内使用。
在进一步示例中,机器人施动者可作为机器人节点表示在软件界面内,机器人节点可与很多可互换的部件节点放在一起,包括表示不同商业机器人的制造和模型的机器人节点、表示可用于构造的不同类型物理工具,诸如钳子或心轴的工具节点、表示适合于与机器人施动者通信的不同类型IO的IO节点、以及表示机器人可沿其移动的不同类型轴的轨道节点。在一些实施例中,单个工具和/或工具参数(例如手腕安装偏移或工具中点)也可抽象成可由用户装配在组合工具中的部件。
显示窗口510可另外包含表示单个机器人施动者514的运动路径的一个或多个运动路径516。运动路径516可表示机器人施动者514在构建过程期间要采取的路径,例如拾取材料且将其连接到正构造的物体。在一些实施例中,运动路径516还可表示将发生特定输入或输出的点。例如,运动路径516上的“x”可表示机器人施动者514使用诸如钳子的工具拾取特定类型材料的点。在进一步示例中,运动路径516可与来自输入窗口502的时间线508同步。因此,在一些实施例中,机器人施动者514可沿着运动路径516进行移动以根据由时间线508表示的时间戳定位在时间上的特定点。
物理工作单元512可另外包含在构建过程期间使用的一个或多个材料518。在该简化的示例中,材料518由用于构建墙520的辊子组成。可确定机器人施动者514要采取的运动路径516以便将单个棍子518移动到墙520上。在其它示例中,各种不同类型的材料,包括诸如胶水的连接材料,可由机器人施动者同时使用来构建更加复杂的输出产品。
在进一步示例中,物理工作单元512也可包含在构件过程中可用的图5中没有示出的其它部件。例如,可包括一个或多个传感器以感测有关物理工作单元中机器人施动者和/或材料的信息,以便影响机器人施动者采取的运动路径。例如,扭矩传感器可用于确定是否特定的料件可能在应力下破坏。控制系统,例如上面关于图1描述的主控制10,可用于与物理工作单元内的机器人施动者和/或传感器交接。
在一些实施例中,显示窗口510可给用户提供物理工作单元的多个3D视图,并且可允许用户改变特定视图的方位和/或缩放。在其它示例中,显示窗口510也可或替代呈现物理工作单元的其它类型的表达,例如数值表达。
V.示例性系统工作流
在一些实施例中,输入窗口可另外包含工具栏,工具栏包含控制构建过程各方面的数字工具。图6A示出了根据示例性实施例的用于图形界面的工具栏。工具栏602可配备有各种不同的工具箱604,工具箱604可用于在图形界面的输入窗口内设计或控制构件过程。工具箱604可提供有数字工具,例如,涉及产生机器人运动路径、不同平面或轴之间的变换、描述机器人施动者、描述物理构建工具、排序单个机器人运动、从机器人施动者输入和/或输出到机器人施动者的数据通信、虚拟软件环境和物理工作单元之间的映射、和/或构建过程的可视化。
图6B示出了根据示例性实施例的工具栏内数字工具的集合。如所示,数字工具可分成很多不同的种类。数字工具然后可结合使用以设计构建过程,如图6C所示。图6C是根据示例性实施例的示例性工作流的方块图。特别是,图6C示出了涉及很多数字工具的工作流,数字工具在如图6A和图6B所示的工具栏内或者由图形界面内的其它手段可访问。如所示,数字工具可分成很多不同的种类。来自很多不同种类的一个或多个数字工具可由用户选择以影响构建过程的特定方面,包括过程中可用的在物理工作单元内的机器人施动者和其它部件。
在一个示例中,工具栏可包括路径工具608,涉及产生可用于确定机器人施动者的运动路径的目标平面。在一些实施例中,路径工具608可看作描述所希望输出产品的输入几何图形606,例如由参数建模软件Grasshopper产生的几何图形。例如,输出产品的几何图形606可根据输入窗口内规定输出几何图形各方面的用户输入而产生,该各方面包括尺寸、密度、曲率和材料等。路径工具608然后可根据输出产品的几何图形606确定用于机器人运动路径的目标平面。
在一些实施例中,输出产品的几何图形606可包括特定的样条、表面和/或输出产品内要包括的其它几何构造。路径工具608然后可提供快捷键,用于以可转换成特定的机器人轨迹的格式产生与输出产品各方面相关的目标平面,该轨迹可用于构造包含目标平面的输出产品。例如,除了工具定义和材料特性外,用于单个机器人施动者的运动路径然后可作为目标平面的函数推导出来。
在进一步示例中,工具栏可包括涉及不同轴坐标系(axis frame)或偏移之间转换的转换工具610,如图6B和图6C所示。例如,转换工具610可提供在特定机器人的基础或关节以及包含输出产品的工作台(stage)处的坐标系(coordinate frame)之间的转换。在其它示例中,转换工具610也可另外允许在不同基准坐标系(frame of reference)内操作的多个机器人之间的转换。如图6C所示,转换可在确定单个机器人施动者的运动序列之前和/或之后进行。
在进一步示例中,工具栏可包括表示物理工作单元各方面,例如机器人施动者、工具、IO和/或轴的阶段工具612。在一些实施例中,阶段工具612也可提供软件中的虚拟机器人和物理工作单元内的物理机器人施动者之间的映射,如图6B和图6C所示。阶段工具612可由引擎节点624使用以根据来自命令工具622的输出发送机器人施动者采用的轨迹到控制系统628。在一些实施例中,阶段节点612可配置为规定特定物理工作单元内的当前可用的机器人装置和/或工具。控制系统626然后可根据来自阶段工具612的信息命令物理世界630内的机器人施动者和/或其它部件。
在一些实施例中,阶段工具612可采取来自一个或多个机器人节点614的表示物理工作单元内单个机器人施动者的属性的输入,如图6B和图6C所示。机器人节点614可用于限定机器人施动者的属性,例如传统的六轴机器人或其它类型的机器人。例如,机器人属性可包括机器人的连杆长度和/或机器人的臂长、机器人的偏移量和/或机器人的关节、和/或机器人可处理的机器人关节运动或最大扭矩上的限制。
在另外的示例中,阶段工具612也可采取来自用于限定物理构建工具的一个或多个工具节点616和/或用于保持工具的工具架的属性的输入,如图6B和图6C所示。例如,诸如钳子或心轴的构建工具的属性可由工具节点规定,其可用于配置自动工具更换装置,从而机器人施动者可容易在工具之间切换。在一些实施例中,机器人施动者可采用存储工具且便于工具更换过程的工具架在工具之间转换,如上面有关图3A和3B所描述。
在进一步示例中,工具节点616可包括用于组合加工的支持,可允许部件工具装配成组合工具。特别是,单个的构造参数(例如,手腕安装偏移量或工具中点)可抽象成装配在组合工具中的部件。例如,多个工具可聚集在一个组合工具中,该组合工具具有多个工具定向和/或中点,可根据在特定时间需要哪个工具的部件而使用。例如,具有自动工具更换装置的组合工具可由主机界面加多个不同附属装置表示,附属装置例如为心轴、真空阵列或钳子。在另一个示例中,组合工具可包括一系列不同的工具,例如钳子加张紧器加辊。通过将加工抽象成限定工具方位和/或中心点的参数,结合多个工具和/或结合工具的其它示例也是可能的。
在进一步示例中,阶段工具612也可采取来自一个或多个IO节点618的输入。IO节点618可描述有关机器人施动者可采取的数字和/或模拟输入和/或输出动作的信息,例如动作的类型(例如,夹紧材料)和与动作相关的属性(例如,可夹紧的材料宽度)。在另外的示例中,机器人属性可包括一个或多个轴节点620。轴节点620可描述机器人沿其能行进的一个或多个线性和/或旋转轴,包括机器人沿着轴运动上的限制。
在另外的示例中,工具栏可包括命令工具622,如图6B和6C所示。命令工具622可用于确定机器人命令以导致一个或多个机器人施动者执行特定操作,其可包括点到点运动、沿着外部轴的运动和/或输入或输出事件。例如,命令工具622之一可用于指挥沿着六个自由度之一的特定机器人运动、沿着外部轴的特定机器人运动或特定的输入或输出事件,例如以特定的方式给材料施加胶水。另外,命令工具622可被包括以用于产生步骤节点,该步骤节点指引机器人施动者采取特定序列运动步骤且执行一个或多个工具动作。在进一步示例中,对于单一时间帧内一起工作的多个机器人施动者,可产生调整的运动序列。
在一些实施例中,步骤节点,或运动和动作的序列可抽象成可重复用的子程序。例如,子程序可通过连接视觉构建方块来限定,其可表示特定的运动指令或运动参数。子程序然后可用于使一个或多个机器人在单一构建过程内执行相同的动作序列多次。在一些实施例中,步骤可在多个机器人上同步,从而多个机器人可同时在共享环境中工作。示例性系统也可包括引擎节点624,可分配每一个步骤给阶段内的特定机器人装置。
在进一步示例中,用户可提供有在图形界面内的步骤之间切换的功能性。例如,如关于图5所示和所述的时间线508也可包括按钮以在时间线上的步骤之间跳过。在一些实施例中,对于特别步骤,用户可插入数字书签。例如,通过图形界面,可从“取棍”步骤开始跳到“钉棍”步骤开始。时间线内的这些书签步骤可通过在步骤节点输入运动命令、IO命令和/或其它命令来匹配用户创作的步骤。
另外,引擎节点624可与控制系统626通信。控制系统626可为计算装置,该计算装置能与物理世界630中的物理工作单元内的机器人施动者和/或诸如传感器的其它部件无线通信。特别是,控制系统626可提供对来自所有机器人施动者和装置的实时数据流访问,这可允许在特定时间点对物理工作单元的精确控制。控制系统也可或替代通过有线连接或其它类型通信通道与施动者或装置的某些或全部通信,包括前述的网络协议。
在一些实施例中,控制系统可另外包含诸如触摸屏界面的物理控制界面,其可允许用户与控制系统相互作用来观看活数据或实时修改机器人动作。例如,包含有关物理工作单元信息的阶段文档,包括在控制系统626上的施动者、工具、材料和环境设置,可通过编程界面访问。观看物理世界630内构建过程的用户然后可在完成前进行过程修改。
在另外的示例中,工具栏可包括数据输入/输出工具628,其可允许控制系统626发送数据到确定机器人运动路径的虚拟软件环境和/或从确定机器人运动路径的虚拟软件环境接收数据,如图6B和图6C所示。因此,来自控制系统626的遥测技术可用于创建在软件中的虚拟世界和物理世界630之间的活链接(live link)。例如,数据输入/输出工具628可用于处理来自控制系统626的与物理工作单元内的机器人施动者和/或工作单元内的其它部件(如传感器)相关的信息。根据这样有关物理世界630的信息,软件内的虚拟机器人可利用来自物理世界630的实时反馈更新(例如,机器人施动者的运动路径可根据实时传感器数据确定或修改)。
另外,例如,数据输入/输出工具628可用于发送数据返回到控制系统626,从而控制系统626可实现物理世界630内的特定输入或输出动作。例如,控制系统626可根据来自软件界面内的一个或多个数字工具的信息指示机器人施动者如何使用物理世界630中的工具(例如,如何控制心轴)。
在进一步示例中,引擎节点624包括可视化仪或模拟工具,其可允许用户通过软件中的用户界面模拟构建过程,如图6B何图6C所示。在一些实施例中,可视化工具可将构建过程显示为显示物理工作单元的屏幕上绘制的几何图形。在其它示例中,可视化工具也可或替代将构建过程显示为表示特定数据值的曲线。另外,在进一步示例中,随着构建过程在物理世界630内实际发生,可视化工具也可用于观察软件中的构建过程。在一些实施例中,可视化工具可另外提供特定构建过程内的潜在冲突的图形表征,例如在机器人的运动路径延伸在其可能运动的范围外时或者两个机器人施动者根据当前限定的轨迹和/或步骤序列可能发生冲突时。
在进一步示例中,可视化仪部件可允许用户事先和/或在构建发生时看到构建过程的模拟。在一些实施例中,用户可采用可视化仪部件脱机看到机器人的运动路径以及一些列连续步骤上的输入/输出事件作为观察窗口内绘制的几何图形。在其它示例中,除了或替代可视几何图形,用户可观察模拟回放,作为以曲线表示的物理工作单元的机器人施动者、材料和/或其它方面相关的数字数据流。在进一步示例中,用户也可看到单个时间步的特定数据点,例如机器人关节值、轴线值或输入/输出值。
在某些示例性系统中,用户也可采用可视化仪部件实时观察物理世界中发生的构建过程。该系统可与从传感器接收实时数据流的控制系统交接,传感器可用于在输出产品构建时扫描构造中所用的物理工作单元、单个机器人施动者和/或部分。因此,可视化仪的用户界面可实时更新以反映现实世界的环境内物体和施动者的尺寸、特性和/或位置。
VI.示例性方法
提供了根据示例性实施例的方法700,用于采用通用机器人代码以引起机器人施动者执行工作单元内的诸如制造过程的过程。在某些示例中,方法700可由控制系统执行,例如参考图1描述的制造控制系统100和/或主控制10。控制系统可采用前述任何的网络协议或通信方法与机器人施动者通信。在进一步示例中,方法700的部分或全部可由一个或多个机器人装置执行,例如参考图1描述的系统装置40内的装置施动者42、44或参考图2A-2C示出和描述的装置施动者200。另外,尽管可描述具有一定数量和类型的系统装置的示例,但是各种选择性实施例也可包括任何数量和类型的机器人装置。
此外,应注意,结合这里描述的流程描述的功能性可实施为具体的功能和/或配置通用功能的硬件模块、为了实现具体逻辑功能、确定和/或参考图7所示流程描述的步骤由处理器执行的程序代码的部分。在使用的情况下,程序代码可存储在任何类型的计算机可读介质上,例如,包括磁盘或硬盘驱动器的存储装置。
另外,图7所示流程图的每个方块可表示被布线以在过程中执行具体逻辑功能的电路。除非具体指出,图7所示的流程图中的功能可以不同于所示或所讨论的顺序执行,包括基本上同时执行分开描述的功能或者甚至与在一些实施例中的顺序相反,取决于所涉及的功能性,只要保持所描述方法的总体功能性。
如图7的方块702所示,方法700可包括接收至少一个数字机器人施动者的数字表示。特别是,数字表示可作为包含采用通用机器人轨迹格式的指令的文件接收。表示可采用很多不同可能通信方式之一接收成很多不同的电子格式。在示例内,数字表示可包含一个或多个数字机器人和要执行的机器人操作的描述以便完成过程,例如制造或构造过程。
在进一步示例中,数字表示可首先根据用户与软件系统的交互作用产生,例如关于图1描述的软件控制26。另外,数字表示可采用关于图4A-4B、5和6A-6C所述和所示的图形界面或系统的任何一个或全部产生。特别是,软件系统可允许用户设计机器人过程,例如制造过程,包括机器人运动和工具动作。软件系统然后可采用示例性通用机器人代码格式输出指令到控制系统,例如关于图1描述的主控制10。
图8A示出了根据示例性实施例的至少一个数字机器人施动者的数字表示的客户端侧产生的示意图。特别是,客户端802可用于产生描述运动命令和IO命令的通用机器人代码文件以命令工作单元内的一个或多个机器人施动者。客户端802可包括软件控制26和/或前面描述的任何其它的软件创建环境。在示例内,客户端802可允许用户创建和排序命令,包括移动机器人施动者和激活IO装置的命令,以便设计自动化的机器人过程,例如制造过程。
第一机器人施动者804可提供有第一命令序列,包含用于第一机器人施动者804的运动命令以在工作单元内执行运动。另外,第二机器人施动者806可提供有第二命令序列,包含用于第二机器人施动者806的运动命令以在相同的工作单元内执行。运动命令可表示工作单元内的位置和方位的序列,以便创建用于机器人末端执行器运动通过的轨迹。在进一步示例中,轴命令也可或替代用于沿着工作单元内的轴移动机器人施动者804、806。在某些示例中,命令可为顺序的,从而每个机器人按顺序执行其命令序列,而不参照特定时间点。在其它示例中,命令可同步到公用时钟或时间线。在进一步示例中,可采用顺序指令和时基的组合。
在另外示例中,命令序列也可提供为创建用于IO装置808、810、812的轨迹。在某些示例中,IO装置808、810、812可包括激活机器人施动者之一上的末端执行器安装工具的装置。例如,IO装置可在构造过程期间激活安装在机器人末端执行器上的钳子或心轴。IO触发器可排序为在通过运动路径的机器人运动期间的特定点上发生。在另外示例中,IO装置808、810、812的某些可为独立的IO装置。例如,具有命令序列的IO触发器可用于控制工作单元内转台的位置。在其它示例中,IO触发器可用于命令工作表面开动(例如,导通真空以保持材料到工作表面)。在进一步示例中,IO触发器可用于发送提示到不同的自动化系统(例如,传统的或外部的自动化系统,其可接收开始提示或程序提示(cue))。在再一个示例中,IO触发器可用于命令系统在web socket上发布数据。
在示例性实施例中,用于机器人802、804的命令序列可产生为目标帧的有序的数据树(例如,包含非均匀数据列的列表)。用于机器人802、804的轨迹或运动路径可产生,其保持数据树结构。另外,数据树结构可用于在特定点上插入用于IO装置808、810、812的特定的IO命令。用于IO装置808、810、812的轨迹然后可产生为包含IO触发器,用于安装在机器人802、804上的IO装置和/或用于独立的IO装置使用。
用于机器人802、804和IO装置806、808、810的轨迹可由通用机器人代码输出者814使用以便创建通用机器人代码文件816。机器人代码文件816可包含描述机器人施动者802、804的机器人定义。例如,用于特定机器人施动者的机器人定义可包括机器人的制造者、机器人的型号、可用于机器人的运动类型(自由度、机器人可沿其行进的轴等)和/或其它参数。另外,机器人定义可包括一个或多个IO装置,例如IO装置806、808或810,以由特定的机器人使用。例如,机器人定义可包括要由机器人施动者使用的VFD,以便给诸如心轴的特定末端执行器安装工具提供动力。在另外示例中,机器人定义也可包括工作单元内机器人施动者采取的初始姿势。机器人的姿势可表示机器人在世界空间中的原点,并且可用于将世界空间坐标转换成机器人空间坐标。
通用机器人代码文件816可发送到服务器822,以便引起特定工作单元内的物理机器人执行由机器人代码文件限定的过程。在某些示例中,文件816可被发送(例如,在无线或有线网络连接上)到服务器822用于中间执行。在其它示例中,机器人代码文件可以被存储且可在稍后的时间在不同的工作单元中使用,例如包含不同数量和类型的机器人装置和/或IO装置的工作单元。
图9示出了通用机器人代码文件的示例。文件包含标题节902和场景节908。标题节902包括描述两个机器人施动者的两个机器人定义904、906。每个机器人定义904、906包括定义机器人在工作单元内采取的开始位置的姿势。另外,机器人定义904包括IO标签,其描述IO触发器激发安装在机器人施动者上的IO装置。例如,IO装置可用于导致机器人装置上的夹子夹紧或释放,以便拾取和放下工作单元内的材料或其它物体。
场景节908可包括一个或多个机器人运动序列和/或IO触发器,以便引起机器人装置完成工作单元内的过程。例如,第一步骤序列910可用于引起机器人施动者移动到工作单元内的初始姿势。第二步骤序列912可包含由机器人定义904、906定义的数字机器人的每一个执行的运动指令序列。除了用于机器人施动者二者的运动指令外,第三步骤序列914可包括IO触发器,以便激活由机器人定义904定义的数字机器人使用的IO装置。另外的或更加复杂的机器人运动序列、IO触发器和/或轴运动的序列也可包括在通用机器人代码文件内。
如图9所示,很多不同类型的运动命令可由通用机器人代码格式支持。在一个示例中,机器人运动命令可抽象成关节、笛卡尔、曲线和圆形运动。关节运动可为在关节空间内的运动,其中机器人运动规划器要求机器人的关节从其第一步位置到第二步不同位置旋转。笛卡尔运动可为笛卡尔空间内的运动,其中机器人运动规划器要求机器人的末端执行器从其第一步的笛卡尔位置移动到第二步的笛卡尔位置。曲线运动可用于引起机器人的末端执行器以恒定的速度跟随曲线路径。圆形运动可用于引起机器人的末端执行器作出关于枢转点的光滑半径路径。在某些示例中,运动命令可选择性地包括最大速度和/或最大加速度作为参数。在进一步示例中,运动命令也可包括说明相对运动对绝对运动的参数。在再一个示例中,运动命令也可包括用于定义大约目标姿势方法的参数。
在另外示例中,通用机器人代码文件可对不同机器人施动者的机器人命令的同步提供支持。例如,在构造过程期间,保持板子的第一机器人施动者可被指令保持其位置,直至命令为将板子钉到墙上的第二机器人施动者完成驱动钉子进入板子中。为了同步机器人操作,可采用单个步骤,诸如如图9所示的那些。例如,可要求所有的机器人在移动到下一步前完成特定步骤内的分配给它们的操作。因此,文件内的每个步骤的开始可用作要求在机器人施动者之间互锁的同步点。因此,用于机器人的每一个的命令序列可在通用机器人代码文件内的每个步骤由所有的机器人开始前同步。
在其它示例中,同步点可用于发送提示到外部自动化系统和从外部自动化系统接收提示。例如,通用机器人代码文件可包含引起机器人施动者执行表演的指令,例如视听表演。同步点可给表演涉及外部系统(例如,大幕落下、鼓手的拖车在舞台上滚动或开始音乐序列的视听系统)的特定部分提示。
在进一步示例中,通用机器人代码文件可对高级控制器提供支持,高级控制器可从工作单元内的机器人施动者和/或其它装置接收信息。例如,文件可包含条件命令,其取决于机器人施动者的特定状态或工作单元内传感器的传感器值。根据机器人施动者的状态或传感器值,可执行不同的运动命令和/或IO命令。例如,如果传感器值等于特定值,则机器人施动者可移动到特定位置,并且IO触发器可被激活。可替代的,如果传感器的值不等于特定值,则机器人施动者可移动到不同的位置,并且不同的IO触发器可被激活。在进一步示例中,处理程序流控制的各种不同类型的命令也可使用(例如,场景切换、如果/然后、循环语句、当型循环等)。
在其它示例中,除了或替代顺序执行,通用机器人代码文件可提供对机器人操作并行执行的支持。在一个示例中,并行执行可包括时基机器人操作。例如,代码的时基部分可采用一定的时间步解析度将机器人运动定义为在全局时间线上的位置、速度和/或加速度曲线。例如,如果时间步解析度是12毫秒,则精确的机器人运动参数(位置、速度和/或加速度)可以针对每个机器人施动者每12毫秒定义。在进一步示例中,替代为顺序事件,IO触发器可另外沿着全局时间线在特定时间点定义。
在进一步示例中,单一机器人代码文件可包含含有顺序机器人操作的部分以及含有时基机器人操作的部分。例如,机器人代码文件的第一50%可包含要顺序执行的操作,文件的接下来的10%可包含以时基模式执行的操作,并且文件的最后40%可包含要顺序执行的另外操作。在某些示例中,文件可包含注释或标志以表示是否操作顺序或以时基模式执行。在进一步示例中,不同的参数可包括在每个类型的部分内。例如,代码的时基部分可包括表示由机器人控制期待的时间步解析度的时间步解析度。相同的时基指令然后可编辑到期待不同时间步解析度的不同机器人控制器。
在另外示例中,取代或除了时基操作外,并行执行可涉及不同模式的操作。例如,取代采用全局时间线建模多个机器人装置的同时操作,可采用不同的参考结构。在一个示例中,扭矩驱动、惯性建模可用于建模多个机器人装置的运动和操作。在这样的示例中,在不参照时间的情况下操作由多个装置并行执行,同时仍提供工作单元内的并行执行(例如,通过采用惯性建模以防止装置之间的冲突)。
方法700可另外包括确定数字机器人施动者和物理工作单元内的物理机器人施动者之间的映射,如方块704所示。特别是,映射可表示物理机器人施动者将执行分配给特定数字机器人施动者的操作。在某些示例中,可使用确认程序,以便确认特定工作单元内的机器人装置能够执行通用机器人代码文件内的机器人指令(例如,工作单元包含具有必要参数/能力的机器人装置)。在其它示例中,IO装置和/或其它类型的硬件装置也可从通用机器人代码文件内的数字表示映射到物理工作单元内的物理配对物。
图8B示出了根据示例性实施例的通用机器人代码文件的服务器侧处理的示意图。特别是,服务器822可从客户端802接收通用机器人代码文件816,其可采用如前所讨论的软件产生。服务器822可采用通用机器人代码编辑服务824以处理通用机器人代码文件816。在某些示例中,通用机器人代码编辑服务824可包括在控制系统上存在的编程指令和/或可执行文件或程序代码,例如,如关于图1所描述的主控制10,或者不同的控制系统。
在某些示例中,通用机器人代码编辑服务824可包括文件类型定义(DTD)文件826,以便检查所接收的通用机器人代码文件的有效性。例如,DTD文件826可用于确认特定的通用机器人代码文件包含标题节、场景、至少一个限定的机器人施动者、以及用于机器人施动者执行的至少一个机器人操作序列。通用机器人代码文件的其它成分或方面也可检查。在某些示例中,错误可能发生,并且如果检测到无效的文件,则系统可停止处理。
在另外示例中,通用机器人代码编辑服务824也可包括阶段文件828。阶段文件828可包含工作单元内的可用的机器人装置和/或其它硬件部件的描述。在某些示例中,阶段文件828可用于产生来自通用机器人代码文件的数字机器人施动者和工作单元内的物理机器人施动者之间的映射。例如,阶段文件828可包括机器人施动者的类型和描述机器人施动者的操作特点的参数,以便匹配工作单元中的物理机器人到先前定义的数字机器人。在进一步示例中,阶段文件828也可用于确认工作单元中的物理机器人施动者能够执行分配的机器人操作。
在另外示例中,除了或替代机器人施动者,工作单元中的其它部件也可定义和/或描述在阶段文件内。例如,包括末端执行器安装装置和/或单独的IO装置的IO装置也可定义在阶段文件内。在其它示例中,其它硬件部件,例如物理工具、工具架和/或一个或多个类型的传感器也可定义在阶段文件内。附加部件的描述可用于另外将来自通用机器人代码文件内的数字表示的IO装置和其它部件映射到物理世界。
方法700还可包括产生用于物理机器人施动者的可执行指令的机器人语言专用序列,如方块706所示。特别是,分配到数字机器人施动者的机器人操作序列可转换成机器人语言专用的可执行指令以使各种不同类型的机器人(例如,不同制造者、品质、信号或类型)能够执行操作。在某些示例中,转换可采用设置在控制系统,例如关于图1描述的主控制10上的后处理器完成。
再一次参见图8B,通用机器人代码编辑服务824也可包括包含参考文件的后处理器830,以便将运动命令、IO命令和/或条件命令转换成特定机器语言。阶段文件828也可包括关于工作单元内机器人和/或IO装置类型的信息,以便确定哪个参考文件用于转换特定的命令序列。例如,通用机器人代码编辑服务824可采用阶段文件828确定工作单元内的特定物理机器人是要求机器人语言Kuka KRL的Kuka机器人。包含对应于不同类型机器人机器语言和/或制造者的语法的机器文件可产生有对应于通用机器人代码文件内命令的命令。
在进一步示例中,通用机器人代码编辑服务824可另外确定是否命令序列是顺序命令序列或时基命令序列。在某些示例中,可要求不同的语法或参数,以使特定的机器人施动者或IO装置相对沿着全局时间线的各点顺序执行命令。因此,除了产生机器人语言专用命令,通用机器人代码编辑服务824也可创建机器代码文件,其根据需要对顺序或时基执行提供支持。
方法700可另外包括传输可执行的指令到物理机器人施动者以执行物理工作单元内的机器人操作,如方块708所示。特别是,一旦机器代码文件产生,则它们可推动到用于特定机器人施动者的机器人控制器上和/或到物理工作单元内的其它类型的控制器上。在某些示例中,机器代码文件可立即输出到控制器,而在其它示例中,它们可分部分或阶段输出。
物理工作单元可包含各种不同类型的机器人施动者。通用机器人代码文件可用于编程来自单一软件环境内的多个制造者的机器人,并且通过共享的硬件环境控制机器人。再一次参见图8B,物理工作单元可包含来自很多不同机器人制造者的机器人,包括第一Kuka机器人832、第二Kuka机器人834、Staubli机器人836和ABB机器人838。如所示,每个机器人装置可提供有以可由机器人装置执行的格式的不同类型的机器语言编程文件。在某些示例中,时基和顺序程序文件的组合也可输出。
在进一步示例中,不同类型的机器人施动者可取代通用机器人代码文件而不必编程用于机器人的新的一套指令。例如,通用机器人代码编辑服务824可将通用机器人代码文件的标题节内的机器人和IO定义与位于阶段文件828内的物理机器人和IO装置的描述相互对照。在改变物理装置的描述后,于是可为物理机器人装置创建更新的机器程序文件。采用这样的模板方法,在没有额外工作的情况下可取代不同的机器人几何形状或各种类型的硬件。
图10是这里描述的系统可使用的功能的示例性流程图。如方块1002所示,客户端可首先输出通用机器人代码文件。在某些示例中,通用机器人代码文件可由软件系统产生,例如如前所述的用于创建制造过程的软件系统。通用机器人代码文件然后可发送到主控制系统。主控制系统可为与物理工作单元内的机器人施动者和其它硬件通信的硬件控制器,例如在运行时间期间控制制造过程。
如方块1004所示,主控制系统然后可通过通用机器人代码编辑服务运行通用机器人代码文件。在某些示例中,通用机器人代码编辑服务可执行功能以确认机器人代码文件正确地格式化且工作单元内的物理机器人施动者能实现文件内包含的机器人操作。另外,可确定机器人代码文件内的数字机器人施动者和工作单元内的物理机器人施动者之间的映射,以便确定物理机器人施动者执行哪套机器人操作。
如方块1006所示,通用机器人编辑服务然后可将通用机器人代码文件转换成用于工作单元内的机器人和/或硬件装置的特定机器代码。转换器可确定用于工作单元中的单个装置的机器人语言专用指令,以实现由通用机器人代码文件定义的一套操作。在某些示例中,可产生很多不同类型的机器代码指令集,可包括顺序和并行执行模式的组合。
如方块1008所示,主控制系统然后可将所产生的机器代码文件推动到具体的机器人控制器上。在某些示例中,机器代码文件可在第一时间周期期间产生,并且然后在第二时间周期期间传输到工作单元中的机器人。在其它示例中,机器代码可在机器人过程运行时间前或期间立即传输。在某些示例中,机器代码也可发送到轴控制器,以便引起机器人装置在工作单元内沿着轴移动。在另外示例中,机器代码也可发送到IO装置,以便在机器人过程期间触发IO事件。
如方块1010所示,机器代码文件(包括用于机器人运动和IO事件的指令)然后可在物理工作单元内回放。在每个机器人施动者和/或其它硬件装置上运行的控制器可执行从主控制系统接收的机器代码,以便完成机器人过程,例如工作单元内的制造过程。在进一步示例中,过程可在包含其它类型装置的其它工作单元中重复以采用相同的通用机器人代码文件重复相同的机器人过程。
VII.结论
本公开不是要按照本申请中描述的特定实施例来限制,其旨在作为各方面的说明。如本领域的技术人员所理解,可进行很多的修改和变化而不脱离其精神和范围。除了这里列举的外,本公开范围内的功能上的等同方法和设备将由本领域的技术人员从前面的描述理解到。这样的修改和变化旨在落入所附权利要求的范围内。
上面的详细说明参考附图描述了所公开系统、装置和方法的各种特征和功能。附图中,类似的附图标记典型地表示类似的部件,除非上下文另有表述。这里描述的和附图中的示例性实施例不意味着是限制。可利用其它的实施例,并且可进行其它的变化,而不脱离这里给出的主题事项的精神或范围。容易理解,本公开的各方面,如这里总体描述的和附图中示出的,可在广泛种类的不同配置中设置、替代、结合、分开和设计,其全部在这里明确期待。
关于附图中的且如这里所讨论的阶梯图、情境图和流程图的任何或全部,根据示例性实施例,每个方块和/或通信可表示信息的处理和/或信息的传输。选择性实施例包括在这些示例性实施例的范围内。在这些选择性实施例中,例如,描述为方块、传输、通信、要求、响应和/或信息的功能可按照所示或所讨论的顺序之外执行,包括基本上同时或相反的顺序,取决于所涉及的功能性。此外,或多或少的方块和/或功能可用于这里讨论的阶梯图、情境图和流程图的任何一个,并且这些阶梯图、情境图和流程图可彼此、部分或全部结合。
表示信息处理的方块可对应于可配置为实现这里描述方法或技术的具体逻辑功能的电路。作为选择或另外,表示信息处理的方块可对应于模块、区段或程序代码的一部分(包括相关数据)。程序代码可包括由处理器可执行的一个或多个指令用于实施方法或技术中的具体逻辑功能或动作。程序代码和/或相关数据可存储在任何类型的计算机可读介质上,例如存储装置,包括磁盘或硬盘驱动器或其它存储介质。
计算机可读介质也可包括非瞬态计算机可读介质,例如短时间段存储数据的计算机可读介质,如寄存器存储器、处理器缓存和随机访问存储器(RAM)。计算机可读介质也可包括存储程序代码和/或数据长时间段的非瞬态计算机可读介质,例如,只读存储器(ROM)、光盘或磁盘、光盘只读存储器(CD-ROM)。计算机可读介质也可为任何其它的易失性或非易失性存储系统。例如,计算机可读介质可看作计算机可读存储介质或实体存储装置。
而且,表示一个或多个信息传输的方块可对应于相同物理装置中的软件和/或硬件模块之间的信息传输。然而,其它的信息传输可在不同的物理装置中的软件模块和/或硬件模块之间。
图中所示的特定设置方案不应看作限制。应理解,其它的实施例可更多或更少地包括给定图中所示的每个元件。此外,某些所示的元件可结合或省略。再次,示例性实施例可包括图中没有示出的元件。
尽管这里已经公开了各方面和实施例,但是其它的方面和实施例对本领域的技术人员来说是显而易见的。这里公开的各方面和实施例是为了说明的目的而不意味着限制,其真实的范围和精神由所附权利要求指出。

Claims (20)

1.一种计算机执行的方法,包括:
由计算装置接收至少一个数字机器人施动者的数字表示,其中该数字表示包括:
(a)至少一个机器人定义,该至少一个机器人定义对应于该至少一个数字机器人施动者,其中该至少一个机器人定义包括由该至少一个数字机器人施动者可操作的至少一个输入-输出(“IO”)装置;以及
(b)数据,该数据表示用于该至少一个数字机器人施动者的至少一个机器人操作序列,其中用于数字机器人施动者的该至少一个机器人操作序列包括多个机器人运动和激活该至少一个IO装置中的一个或多个的多个IO触发器;
由该计算装置确定该至少一个数字机器人施动者和物理工作单元内的至少一个对应物理机器人施动者之间的映射;
根据用于该至少一个对应数字机器人施动者的该至少一个机器人操作序列,由该计算装置产生用于该至少一个物理机器人施动者的至少一个机器人语言专用的可执行指令序列;以及
传输该至少一个机器人语言专用的可执行指令序列到该至少一个物理机器人施动者以执行,以便在该物理工作单元内执行该至少一个机器人操作序列。
2.如权利要求1所述的方法,其中该至少一个机器人定义还包括对应于该至少一个数字机器人施动者的至少一个初始机器人姿势;并且其中该方法还包括:
传输指令至该至少一个物理机器人施动者以根据来自该至少一个对应数字机器人施动者的该初始机器人姿势的转换执行该至少一个机器人语言专用的可执行指令序列。
3.如权利要求1所述的方法,其中该多个IO触发器导致所述至少一个物理机器人施动者中的一个在物理工作单元内操作末端执行器安装的工具。
4.如权利要求1所述的方法,其中确定该至少一个数字机器人施动者和该至少一个对应物理机器人施动者之间的映射包括确认该至少一个物理机器人施动者能够执行该至少一个机器人操作序列。
5.如权利要求4所述的方法,其中确认该至少一个物理机器人施动者能够执行该至少一个机器人操作序列包括根据阶段文件识别能实现该至少一个机器人操作序列的至少一个可用的物理机器人施动者,其中该阶段文件描述该物理工作单元内的该可用的物理机器人施动者。
6.如权利要求1所述的方法,其中确定该至少一个数字机器人施动者和该至少一个对应物理施动者之间的映射包括:
导致下拉菜单显示在第二计算装置的显示屏上,其中该下拉菜单包括该物理工作单元内的可用的物理机器人施动者的列表;以及
从该第二计算机装置接收一个或多个可用的物理机器人施动者的选择,以在映射中使用。
7.如权利要求1所述的方法,其中该至少一个数字机器人施动者的该数字表示还包括一个或多个同步点,其中同步点对应于该至少一个机器人操作序列的每一个内的机器人操作;并且其中该方法还包括:
在执行对应于特定同步点的机器人操作之前传输指令至该至少一个物理机器人施动者以保持位置,直至该至少一个物理机器人施动者的每一个到达对应于该特定同步点的机器人操作。
8.如权利要求1所述的方法,其中该至少一个机器人操作序列包括取决于该至少一个数字机器人施动者的操作状态的一个或多个条件操作,并且其中该方法还包括:
根据该物理工作单元内对应于该至少一个数字机器人施动者的至少一个物理机器人施动者的操作状态传输指令至该至少一个物理机器人施动者以执行该一个或多个条件操作。
9.如权利要求1所述的方法,其中该至少一个机器人施动者的该数字表示还包括至少一个数字传感器,其中该至少一个机器人操作序列包括取决于该至少一个数字传感器的传感器状态的一个或多个条件操作,并且其中该方法还包括:
根据该物理工作单元内对应于该至少一个数字传感器的至少一个物理传感器的传感器状态传输指令至该至少一个物理机器人施动者以执行该一个或多个条件操作。
10.如权利要求1所述的方法,其中该至少一个机器人施动者的该数字表示还包括用于至少一个数字独立IO装置的至少一个IO触发器序列;并且其中该方法还包括:
确定该至少一个数字独立IO装置和该物理工作单元内的至少一个物理独立IO装置之间的映射;以及
传输指令至该至少一个物理独立IO装置以在该物理工作单元内执行该至少一个IO触发器序列。
11.如权利要求1所述的方法,其中该至少一个机器人施动者的该数字表示还包括用于至少一个数字机器人施动者的该多个时基机器人操作,其中该时基机器人操作对应于全局时间线内的时间;并且其中该方法还包括:
根据用于该至少一个对应数字机器人施动者的该多个时基机器人操作产生用于该至少一个物理机器人施动者的多个时基的机器人语言专用的可执行指令;以及
传输该多个时基的机器人语言专用的可执行指令至该至少一个物理机器人施动者以执行,以便在该全局时间线内的该对应的时间在该物理工作单元内执行该时基机器人操作。
12.一种系统,包括:
至少一个物理机器人施动者;以及
控制系统,配置为:
接收至少一个数字机器人施动者的数字表示,其中该数字表示包括:
(a)至少一个机器人定义,该至少一个机器人定义对应于该至少一个数字机器人施动者,其中该至少一个机器人定义包括由该至少一个数字机器人施动者可操作的至少一个输入-输出(“IO”)装置;以及
(b)数据,该数据表示用于该至少一个数字机器人施动者的至少一个机器人操作序列,其中用于数字机器人施动者的机器人操作序列包括多个机器人运动和激活该至少一个IO装置中的一个或多个的多个IO触发器;
确定该至少一个数字机器人施动者和该至少一个物理机器人施动者之间的映射;
根据用于该至少一个数字机器人施动者的该至少一个机器人操作序列,产生用于该至少一个物理机器人施动者的至少一个机器人语言专用的可执行指令序列;以及
传输该至少一个机器人语言专用的可执行指令序列到该至少一个物理机器人施动者以执行,以便执行该至少一个机器人操作序列。
13.如权利要求12所述的系统,其中该至少一个机器人定义还包括对应于该至少一个数字机器人施动者的至少一个初始机器人姿势;并且其中该控制系统还配置为:
根据来自该至少一个对应数字机器人施动者的该初始机器人姿势的转换,传输指令至该至少一个物理机器人施动者,以执行该至少一个机器人语言专用的可执行指令序列。
14.如权利要求12所述的系统,其中该控制系统配置为通过根据阶段文件识别能够执行该至少一个机器人操作序列的至少一个可用物理机器人施动者来确定该至少一个数字机器人施动者和该至少一个物理机器人施动者之间的映射,其中该阶段文件描述物理工作单元内的该可用的物理机器人施动者。
15.如权利要求12所述的系统,其中该至少一个数字机器人施动者的该数字表示还包括一个或多个同步点,其中同步点对应于该至少一个机器人操作序列的每一个内的机器人操作;并且其中该控制系统还配置为:
在执行对应于特定同步点的机器人操作之前,传输指令到该至少一个物理机器人施动者以保持位置,直至该至少一个物理机器人施动者的每一个达到了对应于该特定同步点的机器人操作。
16.如权利要求12所述的系统,其中该至少一个数字机器人施动者的该数字表示还包括用于该至少一个数字机器人施动者的多个时基机器人操作,其中该时基机器人操作对应于全局时间线内的时间;并且其中该控制系统还配置为:
根据用于该至少一个对应数字机器人施动者的该多个时基机器人操作产生用于该至少一个物理机器人施动者的多个时基的机器人语言专用的可执行指令;并且
传输指令至该至少一个物理机器人施动者,以执行该多个时基机器人语言专用的可执行指令,以便在该全局时间线内的该对应时间执行该时基机器人操作。
17.一种非瞬态计算机可读介质,其中存储由计算装置可执行的指令,以导致该计算装置执行下述功能,包括:
由计算装置接收至少一个数字机器人施动者的数字表示,其中该数字表示包括:
(a)至少一个机器人定义,该至少一个机器人定义对应于该至少一个数字机器人施动者,其中该至少一个机器人定义包括由该至少一个数字机器人施动者可操作的至少一个输入-输出(“IO”)装置;以及
(b)数据,该数据表示用于该至少一个数字机器人施动者的至少一个机器人操作序列,其中用于数字机器人施动者的该至少一个机器人操作序列包括多个机器人运动和激活该至少一个IO装置的一个或多个的多个IO触发器;
由该计算装置确定该至少一个数字机器人施动者和物理工作单元内的至少一个对应物理机器人施动者之间的映射;
根据用于该至少一个对应数字机器人施动者的该至少一个机器人操作序列,由该计算机装置产生用于该至少一个物理机器人施动者的至少一个机器人语言专用的可执行指令序列;以及
传输该至少一个机器人语言专用的可执行指令序列到该至少一个物理机器人施动者,以执行,以便实现该物理工作单元内的该至少一个机器人操作序列。
18.如权利要求17所述的非瞬态计算机可读介质,其中该至少一个数字机器人施动者的该数字表示还包括一个或多个同步点,其中同步点对应于该至少一个机器人操作序列的每一个内的机器人操作;并且其中该介质还包括指令,在由该计算装置执行时,该指令导致该计算装置实现如下功能,包括:
在执行对应于特定同步点的机器人操作之前,传输指令到该至少一个物理机器人施动者以保持位置,直至该至少一个物理机器人施动者的每一个达到对应于该特定同步点的机器人操作。
19.如权利要求17所述的非瞬态计算机可读介质,其中该至少一个机器人施动者的该数字表示还包括至少一个数字传感器,其中该至少一个机器人操作序列包括取决于该至少一个数字传感器的传感器状态的一个或多个条件操作,并且其中该介质还包括指令,在由该计算机装置执行时,该指令导致该计算装置执行如下功能,包括:
根据该物理工作单元内对应于该至少一个数字传感器的至少一个物理传感器的传感器状态,传输指令至该至少一个物理机器人施动者以执行该一个或多个条件操作。
20.如权利要求17所述的非瞬态计算机可读介质,其中该至少一个数字机器人施动者的该数字表示还包括用于该至少一个数字机器人施动者的多个时基机器人操作,其中该时基机器人操作对应于全局时间线内的时间;并且其中该介质还包括指令,在由该计算装置执行时,该指令导致该计算装置实现如下功能,包括:
根据用于该至少一个对应数字机器人施动者的该多个时基机器人操作产生用于该至少一个物理机器人施动者的多个时基机器人语言专用的可执行指令;以及
传输该多个时基机器人语言专用的可执行指令至该至少一个物理机器人施动者以执行,以便在该全局时间线内的对应时间在该物理工作单元内执行该时基机器人操作。
CN201580028216.1A 2014-06-03 2015-04-30 用于指令机器人操作的系统和方法 Active CN106794580B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/295,168 2014-06-03
US14/295,168 US9308647B2 (en) 2014-06-03 2014-06-03 Systems and methods for instructing robotic operation
PCT/US2015/028528 WO2015187271A1 (en) 2014-06-03 2015-04-30 Systems and methods for instructing robotic operation

Publications (2)

Publication Number Publication Date
CN106794580A true CN106794580A (zh) 2017-05-31
CN106794580B CN106794580B (zh) 2020-04-07

Family

ID=53268869

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580028216.1A Active CN106794580B (zh) 2014-06-03 2015-04-30 用于指令机器人操作的系统和方法

Country Status (4)

Country Link
US (2) US9308647B2 (zh)
EP (1) EP3152009B1 (zh)
CN (1) CN106794580B (zh)
WO (1) WO2015187271A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108445831A (zh) * 2018-02-09 2018-08-24 广东翠峰机器人科技股份有限公司 一种机器人钻孔方法
CN108550296A (zh) * 2018-06-26 2018-09-18 江苏汇博机器人技术股份有限公司 多品牌机器人虚拟示教器系统
CN109213096A (zh) * 2018-08-22 2019-01-15 西门子工厂自动化工程有限公司 现场设备的控制方法、装置、系统、存储介质和处理器
CN109359064A (zh) * 2018-10-25 2019-02-19 遨博(北京)智能科技有限公司 一种机器人系统中相关设备间的通信方法及装置
CN110000753A (zh) * 2019-02-28 2019-07-12 北京镁伽机器人科技有限公司 用户交互方法、控制设备及存储介质
CN112823082A (zh) * 2018-10-12 2021-05-18 克朗斯股份公司 使用机器人系统的方法和用于容器处理设施的机器人系统
CN113245722A (zh) * 2021-06-17 2021-08-13 昆山华恒焊接股份有限公司 激光切割机器人的控制方法、设备及存储介质
TWI828369B (zh) * 2022-10-14 2024-01-01 創博股份有限公司 機器人模型的自動建立方法

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2944259A1 (de) * 2014-05-15 2015-11-18 Buck Engineering & Consulting GmbH Patientenpositioniereinrichtung
JP6350037B2 (ja) * 2014-06-30 2018-07-04 株式会社安川電機 ロボットシミュレータおよびロボットシミュレータのファイル生成方法
JP6545472B2 (ja) * 2015-01-27 2019-07-17 蛇の目ミシン工業株式会社 ロボット
FR3038245B1 (fr) * 2015-06-30 2017-12-29 Staubli Sa Ets Procede de commande d'une cellule de travail automatisee
US10265863B2 (en) * 2015-09-09 2019-04-23 Carbon Robotics, Inc. Reconfigurable robotic system and methods
US9718188B2 (en) * 2015-09-21 2017-08-01 Amazon Technologies, Inc. Networked robotic manipulators
US20170129602A1 (en) * 2015-11-10 2017-05-11 M3N, Inc. Multipurpose Robotic System
JP6165286B1 (ja) * 2016-02-29 2017-07-19 株式会社安川電機 モータ制御システム、ロボットシステム、及びモータ制御システムの通信方法
CN107309871A (zh) * 2016-04-27 2017-11-03 广明光电股份有限公司 机器手臂的编程方法
JP6392817B2 (ja) * 2016-08-04 2018-09-19 ファナック株式会社 シミュレーション装置
JP6457478B2 (ja) * 2016-12-27 2019-01-23 ファナック株式会社 産業用ロボット制御装置
US10307908B2 (en) 2017-04-07 2019-06-04 X Development Llc Methods and systems for establishing and maintaining a pre-build relationship
US11694254B2 (en) * 2017-06-15 2023-07-04 Microsoft Technology Licensing, Llc Interactive physical product browsing experience
US10723025B2 (en) * 2017-07-10 2020-07-28 Hypertherm, Inc. Computer-implemented methods and systems for generating material processing robotic tool paths
EP3655871A4 (en) * 2017-07-19 2021-04-14 Siemens Industry Software Ltd. METHOD AND SYSTEM FOR SIMULATION OF A ROBOT PROGRAM OF AN INDUSTRIAL ROBOT
WO2019050541A1 (en) * 2017-09-11 2019-03-14 Hewlett-Packard Development Company, L.P. SCAN OF OBJECTS
AT520775B1 (de) * 2017-12-14 2020-04-15 Wittmann Kunststoffgeraete Verfahren zur Validierung von programmierten Ablaufsequenzen oder
US10895870B2 (en) 2018-08-01 2021-01-19 X Development Llc Dynamic fabrication engine
JP6918849B2 (ja) * 2019-01-22 2021-08-11 ファナック株式会社 システム
CN113454551A (zh) * 2019-02-18 2021-09-28 西门子股份公司 用于工业生态系统之间互操作性的自动化代码生成器
DE102019005787A1 (de) * 2019-08-20 2021-02-25 Franka Emika Gmbh System und Verfahren zur Steuerung zumindest einer Maschine, insbesondere eines Kollektivs von Maschinen
US11829795B2 (en) * 2019-12-30 2023-11-28 UiPath, Inc. Trigger service management for robotic process automation (RPA)
WO2021146530A1 (en) * 2020-01-17 2021-07-22 Vue Events, Inc. Orbiting camera mount with integrated electronic camera positioning and functional control
CN111390908B (zh) * 2020-03-26 2022-05-17 哈尔滨工业大学 一种基于网页的机械臂虚拟拖动方法
EP4189498A1 (en) * 2020-08-28 2023-06-07 Siemens Aktiengesellschaft Automatic estimation of physics parameters in a digital twin simulation
US20220152816A1 (en) * 2020-11-13 2022-05-19 Intrinsic Innovation Llc Decentralized robotic operating environment optimization
SE545819C2 (en) * 2021-12-17 2024-02-13 Rebl Ind Ab System and method of automating a process

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030171842A1 (en) * 2000-07-31 2003-09-11 Kazunari Teramoto Integrated cam system, nc data integral creating method, machining designing system, machining data creating device, and program
CN101811301A (zh) * 2009-10-28 2010-08-25 北京航空航天大学 串并联机器人联合加工系统及其控制方法
DE102010004476A1 (de) * 2010-01-13 2011-07-14 KUKA Laboratories GmbH, 86165 Verfahren und Vorrichtung zum Kontrollieren einer Roboterapplikation

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5798627A (en) 1995-01-04 1998-08-25 Gilliland; Malcolm T. Method for simultaneous operation of robot welders
US5950006A (en) 1997-11-05 1999-09-07 Control Technology Corporation Object-oriented programmable controller
US6161051A (en) 1998-05-08 2000-12-12 Rockwell Technologies, Llc System, method and article of manufacture for utilizing external models for enterprise wide control
US6718533B1 (en) 1999-02-26 2004-04-06 Real-Time Innovations, Inc. Method for building a real-time control system with mode and logical rate
DE19959330A1 (de) 1999-12-09 2001-06-13 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern eines Roboters
GB2373347B (en) 2001-03-07 2006-11-22 Touch Clarity Ltd Control system to actuate a robotic operating system
US6612143B1 (en) 2001-04-13 2003-09-02 Orametrix, Inc. Robot and method for bending orthodontic archwires and other medical devices
JPWO2004033159A1 (ja) 2002-10-11 2006-02-09 富士通株式会社 ロボット制御アルゴリズム構築装置、ロボット制御アルゴリズム構築プログラムロボット制御装置、ロボット制御プログラム、およびロボット
DE10305384A1 (de) 2003-02-11 2004-08-26 Kuka Roboter Gmbh Verfahren und Vorrichtung zur Visualisierung rechnergestützter Informationen
US7890194B2 (en) 2005-12-13 2011-02-15 Brooks Automation, Inc. Robotics programming interface
US20070282480A1 (en) 2003-11-10 2007-12-06 Pannese Patrick D Methods and systems for controlling a semiconductor fabrication process
JP2006187826A (ja) 2005-01-05 2006-07-20 Kawasaki Heavy Ind Ltd ロボットコントローラ
US7149606B2 (en) 2005-03-01 2006-12-12 Fanul Robotics America, Inc. Synchronizing controllers linked by a communications network
JP4210270B2 (ja) 2005-06-07 2009-01-14 ファナック株式会社 ロボット制御装置及びロボット制御方法
CA2918049C (en) 2005-09-02 2019-04-09 Neato Robotics, Inc. Multi-function robotic device
WO2007099511A2 (en) 2006-03-03 2007-09-07 Syddansk Universitet Programmable robot and user interface
US7590680B2 (en) 2006-06-29 2009-09-15 Microsoft Corporation Extensible robotic framework and robot modeling
WO2008008727A2 (en) 2006-07-10 2008-01-17 Applied Materials, Inc. Scheduling method for processing equipment
US7684892B2 (en) 2007-10-30 2010-03-23 Gm Global Technology Operations, Inc. Process for generating control sequence of operations
JP4465012B2 (ja) 2008-01-31 2010-05-19 ファナック株式会社 搬入/搬出ロボットと協調動作する加工ラインシステム
JP5339096B2 (ja) 2008-02-22 2013-11-13 村田機械株式会社 Vao生産性スイート
AT10596U1 (de) 2008-02-26 2009-06-15 Keba Ag Konfigurierung von maschinenablaufen
US9403099B2 (en) * 2008-05-21 2016-08-02 Disney Enterprise, Inc. Modeling skin-covered robotics devices including artistic digital iterative design processes
US8639666B2 (en) 2008-09-05 2014-01-28 Cast Group Of Companies Inc. System and method for real-time environment tracking and coordination
US8224652B2 (en) * 2008-09-26 2012-07-17 Microsoft Corporation Speech and text driven HMM-based body animation synthesis
US20100312387A1 (en) 2009-06-05 2010-12-09 The Boeing Company Supervision and Control of Heterogeneous Autonomous Operations
EP2493664B1 (en) * 2009-10-27 2019-02-20 Battelle Memorial Institute Semi-autonomous multi-use robot system and method of operation
WO2011083374A1 (en) * 2010-01-08 2011-07-14 Koninklijke Philips Electronics N.V. Uncalibrated visual servoing using real-time velocity optimization
US8655461B2 (en) * 2010-05-25 2014-02-18 Siemens Product Lifecycle Management Software Inc. Method, system, and non-transitory computer readable storage medium for generating code for a closed-loop controller
US8694553B2 (en) * 2010-06-07 2014-04-08 Gary Stephen Shuster Creation and use of virtual places
US8731714B2 (en) 2010-09-22 2014-05-20 GM Global Technology Operations LLC Concurrent path planning with one or more humanoid robots
US8660738B2 (en) 2010-12-14 2014-02-25 Catepillar Inc. Equipment performance monitoring system and method
US9160898B2 (en) 2011-01-25 2015-10-13 Autofuss System and method for improved video motion control
JP4775516B1 (ja) 2011-03-14 2011-09-21 オムロン株式会社 制御装置、制御方法、プログラム、記録媒体
JP5490080B2 (ja) * 2011-12-06 2014-05-14 株式会社セルシス スケルトンモデルの姿勢制御方法,及びプログラム
US9010684B2 (en) 2012-06-27 2015-04-21 The Boeing Company Automated inspection of soft-tooled hollow structure
JP6015282B2 (ja) * 2012-09-21 2016-10-26 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
US9056396B1 (en) * 2013-03-05 2015-06-16 Autofuss Programming of a robotic arm using a motion capture system
US9495788B2 (en) * 2013-03-22 2016-11-15 Kt Corporation Apparatus and method for developing robot contents

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030171842A1 (en) * 2000-07-31 2003-09-11 Kazunari Teramoto Integrated cam system, nc data integral creating method, machining designing system, machining data creating device, and program
CN101811301A (zh) * 2009-10-28 2010-08-25 北京航空航天大学 串并联机器人联合加工系统及其控制方法
DE102010004476A1 (de) * 2010-01-13 2011-07-14 KUKA Laboratories GmbH, 86165 Verfahren und Vorrichtung zum Kontrollieren einer Roboterapplikation

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108445831A (zh) * 2018-02-09 2018-08-24 广东翠峰机器人科技股份有限公司 一种机器人钻孔方法
CN108550296A (zh) * 2018-06-26 2018-09-18 江苏汇博机器人技术股份有限公司 多品牌机器人虚拟示教器系统
CN109213096A (zh) * 2018-08-22 2019-01-15 西门子工厂自动化工程有限公司 现场设备的控制方法、装置、系统、存储介质和处理器
CN109213096B (zh) * 2018-08-22 2020-10-02 西门子工厂自动化工程有限公司 现场设备的控制方法、装置、系统、存储介质和处理器
CN112823082A (zh) * 2018-10-12 2021-05-18 克朗斯股份公司 使用机器人系统的方法和用于容器处理设施的机器人系统
CN109359064A (zh) * 2018-10-25 2019-02-19 遨博(北京)智能科技有限公司 一种机器人系统中相关设备间的通信方法及装置
CN109359064B (zh) * 2018-10-25 2021-06-01 遨博(北京)智能科技有限公司 一种机器人系统中相关设备间的通信方法及装置
CN110000753A (zh) * 2019-02-28 2019-07-12 北京镁伽机器人科技有限公司 用户交互方法、控制设备及存储介质
CN113245722A (zh) * 2021-06-17 2021-08-13 昆山华恒焊接股份有限公司 激光切割机器人的控制方法、设备及存储介质
CN113245722B (zh) * 2021-06-17 2021-10-01 昆山华恒焊接股份有限公司 激光切割机器人的控制方法、设备及存储介质
TWI828369B (zh) * 2022-10-14 2024-01-01 創博股份有限公司 機器人模型的自動建立方法

Also Published As

Publication number Publication date
EP3152009A1 (en) 2017-04-12
US9623559B2 (en) 2017-04-18
US20160176051A1 (en) 2016-06-23
US20150343635A1 (en) 2015-12-03
WO2015187271A1 (en) 2015-12-10
EP3152009B1 (en) 2021-02-24
US9308647B2 (en) 2016-04-12
CN106794580B (zh) 2020-04-07

Similar Documents

Publication Publication Date Title
CN106794580A (zh) 用于指令机器人操作的系统和方法
US20220009100A1 (en) Software Interface for Authoring Robotic Manufacturing Process
US11409260B2 (en) Runtime controller for robotic manufacturing system
US9915937B2 (en) Systems and methods for time-based parallel robotic operation
US9993924B2 (en) Closed-loop control system for robotic operation
JP7388074B2 (ja) シミュレーション装置、シミュレーションプログラムおよびシミュレーション方法
Dörfler et al. Interlacing: An experimental approach to integrating digital and physical design methods
JP6781201B2 (ja) 仮想オブジェクト表示システム
JP7247808B2 (ja) 制御システム、解析方法およびプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20180320

Address after: California, USA

Applicant after: Google Inc.

Address before: California, USA

Applicant before: BOT & DOLLY, LLC

Effective date of registration: 20180320

Address after: California, USA

Applicant after: X Development Co.,Ltd.

Address before: California, USA

Applicant before: Google Inc.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220307

Address after: California, USA

Patentee after: Insi Innovation Co.,Ltd.

Address before: California, USA

Patentee before: X Development Co.,Ltd.