CN111283677B - 一种机器人控制方法、装置、机器人及机器人主控器 - Google Patents
一种机器人控制方法、装置、机器人及机器人主控器 Download PDFInfo
- Publication number
- CN111283677B CN111283677B CN201811501559.7A CN201811501559A CN111283677B CN 111283677 B CN111283677 B CN 111283677B CN 201811501559 A CN201811501559 A CN 201811501559A CN 111283677 B CN111283677 B CN 111283677B
- Authority
- CN
- China
- Prior art keywords
- robot
- mark
- notification
- waiting
- action
- 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.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1682—Dual arm manipulator; Coordination of several manipulators
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本申请公开了一种机器人控制方法、装置、机器人及机器人主控器,其中所述方法应用于第一机器人主控器,用于控制所述第一机器人执行需要与至少一个第二机器人协同完成的协作动作,其特征在于,所述方法包括:执行第一机器人对应的至少一个同步动作;根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件,控制第一机器人执行所述协作动作。
Description
技术领域
本申请涉及智能控制技术领域,特别是涉及一种机器人控制方法、装置、机器人及机器人主控器。
背景技术
随着科学技术的发展,智能机器人也得到广泛发展。现有技术中,都是通过预设等待时间的方式来实现多个机器人之间的协作动作。然而,这种方式存在明显缺陷,其中任何一个机器人出现问题时,就会导致协作动作的失败。
例如,控制机器人1和机器人2配合移动货箱,按照预先设定的控制程序,所述机器人1先到达预定位置,保持暂停状态等待5秒后,机器人2也到达预定位置。机器人1从货箱的顶部和机器人2从货箱的底部配合将货箱移动到指定位置。在上述过程中,只要机器人1和机器人2其中之一无法按时到达预定位置,所述两个机器人配合移动货箱的协作动作就无法完成。
现有技术的方法容易造成机器人的误操作,且很难实现多个机器人之间的配合,实现协作动作。
发明内容
为了解决现有技术中存在的问题,本申请实施例提供一种机器人控制方法、装置、主控器和存储介质,以解决至少两个机器人相互配合完成协作动作的问题,大大扩展了机器人的使用场景。
本申请一方面提供一种机器人控制方法,应用于第一机器人的主控器,用于控制所述第一机器人执行需要与至少一个第二机器人协同完成的协作动作,所述方法包括:
执行第一机器人对应的至少一个同步动作;
根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件,控制第一机器人执行所述协作动作。
可选地,所述同步动作的种类包括等待和通知中的至少一种;
所述执行第一机器人对应的至少一个同步动作包括:
在同步动作为等待的情况下,在为第一机器人预先创建的标记存储区中存储等待标记;
在同步动作为通知的情况下,向对应的第二机器人的主控器发送通知标记。
可选地,所述等待标记携带第一机器人对应的标识信息,所述通知标记携带所述对应的第二机器人对应的标识信息;或者
所述等待标记携带所述对应的第二机器人对应的标识信息,所述通知标记携带第一机器人对应的标识信息。
可选地,所述根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件包括:
在所述标记存储区中,如果通知标记与等待标记相匹配,则从所述标记存储区删除该匹配的等待标记和通知标记;
若所述标记存储区中的等待标记均已删除,则确定第一机器人达到所述协作动作的执行条件。
可选地,所述标记存储区中的通知标记包括接收的来自于所述至少一个第二机器人的主控器发送的通知标记;
采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带的标识信息与一等待标记携带的标识信息相同,确定该通知标记和该等待标记相匹配。
可选地,所述标记存储区中的通知标记包括接收的来自于预设控制源发送的通知标记;
采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带预设控制源对应的标识信息,确定该通知标记与所有等待标记相匹配。
可选地,所述方法还包括:
若所述标记存储区中的等待标记未均已删除,则确定第一机器人未达到所述协作动作的执行条件,控制第一机器人保持等待状态。
可选地,所述标记存储区中预存有至少一个等待标记和/或通知标记。
本申请另一方面,提供一种机器人控制方法,用于控制至少两个机器人执行需要协同完成的协作动作,所述方法包括:
执行每个机器人对应的至少一个同步动作;
根据同步动作的执行结果确定所述至少两个机器人均达到所述协作动作的执行条件,控制所述至少两个机器人执行所述协作动作。
可选地,所述同步动作的种类包括等待和通知中的至少一种;
执行每个机器人对应的至少一个同步动作包括:
对于每个机器人,在同步动作为等待的情况下,在为所述机器人预先创建的标记存储区中存储等待标记;
在同步动作为通知的情况下,在为所述机器人对应的其它机器人预先创建的标记存储区中存储通知标记。
可选地,所述等待标记携带所述机器人对应的标识信息,所述通知标记携带所述机器人对应的其它机器人对应的标识信息;或者
所述等待标记携带所述机器人对应的其它机器人对应的标识信息,所述通知标记携带所述机器人对应的标识信息。
可选地,所述根据同步动作的执行结果确定所述至少两个机器人均达到所述协作动作的执行条件包括:
在每个机器人的标记存储区中,如果通知标记与等待标记相匹配,则从所述机器人的标记存储区删除该匹配的等待标记和通知标记;
若每个机器人的标记存储区中的等待标记均已删除,则确定所述至少两个机器人均达到所述协作动作的执行条件。
可选地,采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带的标识信息与一等待标记携带的标识信息相同,确定该通知标记和该等待标记相匹配。
可选地,采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带预设控制源对应的标识信息,确定该通知标记与所有等待标记相匹配。
可选地,所述方法还包括:
若每个机器人的标记存储区中的等待标记未均已删除,则确定所述至少两个机器人未均达到所述协作动作的执行条件,控制所述至少两个机器人均保持等待状态。
可选地,至少一个机器人的标记存储区中预存有至少一个等待标记和/或通知标记。
本申请另一方面,还提供一种机器人控制装置,用于控制第一机器人执行需要与至少一个第二机器人协同完成的协作动作,所述装置包括第一执行模块和第一协作控制模块,其中:
所述第一执行模块被配置为执行第一机器人对应的至少一个同步动作;
所述第一协作控制模块被配置为根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件,控制第一机器人执行所述协作动作。
本申请另一方面,还提供一种机器人控制装置,用于控制至少两个机器人执行需要协同完成的协作动作,所述装置包括第二执行模块和第二协作控制模块,其中:
所述第二执行模块被配置为执行每个机器人对应的至少一个同步动作;
所述第二协作控制模块被配置为根据同步动作的执行结果确定所述至少两个机器人均达到所述协作动作的执行条件,控制所述至少两个机器人执行所述协作动作。
本申请另一方面,还提供一种可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现所述的机器人控制方法。
本申请另一方面,还提供一种机器人主控器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述的机器人控制方法。
本申请另一方面,还提供一种机器人,包括如上所述的机器人主控器。
根据本申请提供的机器人控制方法、装置、机器人及机器人主控器,所述方法应用于所述机器人的主控器,用于控制所述机器人执行需要与其它机器人协同完成的协作动作,所述方法包括:执行至少一个同步动作;根据同步动作的执行结果确定所述机器人达到所述协作动作的执行条件,控制所述机器人执行所述协作动作,所述方法能解决至少两个机器人相互配合执行协作动作的问题,通过至少两个机器人的相互配合能够实现更多复杂功能,拓展了机器人的使用场景,提高至少两个机器人协作动作的灵活性、准确性和安全性。
附图说明
图1是本申请一实施例的机器人控制方法的流程示意图;
图2是本申请一实施例的机器人控制方法中各个机械臂的标记存储区中通知标记和等待标记示意图;
图3是本申请另一实施例的机器人控制方法的流程示意图;
图4是本申请另一实施例的机器人控制方法的流程示意图;
图5是本申请一实施例的机器人控制装置的结构示意图;
图6是本申请一实施例的机器人控制装置的结构示意图;
图7是本申请一具体实施例的机器人主控器结构示意图。
具体实施方式
下面结合附图通过实施例来阐述本申请的细节,这样更有利于理解本申请的内容,但本申请能够以多种不同于具体实施例的方式来实施,本领域技术人员可以在不违背本申请内涵的情况下结合现有技术做类似推广,因此本申请不受以下公开的具体实施方式的限制。
在本申请中,“第一”、“第二”、“第三”、“第四”等仅用于彼此的区分,而非表示重要程度及顺序、以及互为存在的前提等。
在本申请中,提供了一种机器人控制方法、装置、主控器和存储介质,在下面的实施例中逐一进行详细说明。
首先对本申请实施例中的机器人进行说明,本申请中所述的机器人是指能够动作的电子设备,具体的,可以是具有能够获取环境信息、连续轨迹运动或者点到点轨迹运动可伺服控制等功能的智能机器人,包括但不限于机械臂机器人。
机器人作为一个完整系统,可以包括各种组件:
机器人主体,由各种结构部件组成。比如连,杆活动关节,移动底盘等。
驱动器,在机器人中,常见的驱动器有伺服电机、步进电机、气缸、液压缸等,伺服电机是最常用的机器人驱动器。驱动器受控制器的控制,控制器将控制信号传送到驱动器,驱动器控制执行部件的运动。
传感器,传感器用于收集机器人内部状态信息、外部环境信息、或用来与外部环境进行交互等。其中,集成在机器人内部的传感器将每个执行部件的信息发送给控制器,以便于控制器确定机器人当前的构型状态。此外,机器人还可以配有外部传感器,如视觉系统、触觉传感器、测距仪、嗅觉传感器、味觉传感器、语音识别装置、语音合成器等,以使机器人能获取外部环境信息。
控制器,控制器从主控器获取数据,利用传感器信息,控制驱动器的动作,协调机器人进行运动。
主控器,用来计算各执行部件的运动,确定各执行部件如何移动才能达到预定的速度和位置,通过控制器获取到机器人当前的构型状态信息,监督传感器和控制器的协调动作。主控器作为控制机器人的外部设备时,通常可以是一台计算机,具备操作系统、应用程序,还可以带有电子屏。在机器人系统中,主控器通过向机器人控制器发送控制参数数据、对传感器数据进行分析、处理和显示等功能,实现对机器人的操作。
在一些机器人系统中,主控器和控制器会集成在一个单元中,而在有些系统中会将它们分开,本申请实施例不对此进行限定。
本申请以下的实施例中,以动作控制较为复杂的机械臂机器人为例进行详细说明。
如上所述,机械臂机器人系统的组成部件也包括主体部分、驱动器、传感器、控制器、主控器。其中,机械臂的主体部分由活动关节部件及其它结构部件组成。机械臂的关节是包含驱动器的执行部件,机械臂机器人要完成复杂的动作,须拥有多关节实现多自由度运动,每个关节的运动要靠各自的驱动器,比如伺服电机。机器人的控制器通过各关节驱动器可以控制各关节的机械装置进行自由度运动。
需要说明的是,机械臂机器人除了拥有上述各组成部件以外,还包括连接在机械臂最后一个关节上的末端工具部件。
末端工具依托于机械臂在空间中移动,并与周围空间发生物理交互,其中末端工具包括但不限于摄像头、机械爪、书法笔和切割工具等,可实现的物理交互包括但不限于感知图像和光线并发出红外等光波、抓取及移动物品、书写字迹和切割物体等。本申请实施例中不对末端工具的具体实现形式进行限定,基于不同的应用场景,可以配置不同的末端工具。
可以理解的是,当末端工具为包含驱动器时,其动作可以由机械臂机器人的控制器直接控制,也可以由末端工具自身的控制装置(如可编程逻辑控制器)控制,该方式下,控制信号由机器人控制器的信号传送到末端工具自身的控制装置。因此,机器人控制器可以直接或者间接对末端工具进行控制,本申请以下实施例中将可运动的末端工具视为和机械臂机器人中的所有关节一样的执行部件,即主控器向机械臂机器人控制器发送控制参数数据,控制器控制末端工具的驱动器执行控制参数的命令,由此机械臂末端工具完成相应的运动动作。
需要说明的是,上述对机器人包括的组件介绍仅为示例,并不用于限定本申请中的机器人,任何能够动作的电子设备,均可以作为本申请中的机器人,采用本申请提出的方案实现动作控制。
在本申请一实施例中公开了一种机器人控制方法,应用于机器人的主控器,参见图1,所述方法应用于控制至少两个机器人执行需要协同完成的协作动作,所述方法包括:
步骤101:执行每个机器人对应的至少一个同步动作;
步骤102:根据同步动作的执行结果确定至少两个机器人均达到协作动作的执行条件,控制至少两个机器人执行协作动作。
本申请一实施例中,将需要至少两个机器人协同完成的协作动作前的同步过程称为同步动作。
以两个机械臂机器人配合洗盘子的场景为例,机械臂1的动作序列为:①抓取待洗的盘子→②握持盘子并移动至指定位置→③握持盘子等待直至达到协作动作执行条件→④握持盘子调整位姿配合完成洗盘子动作→⑤握持盘子移动将盘子放置固定位置;机械臂2的动作序列包括:①抓取毛巾→②握持毛巾移动至指定位置→③握持毛巾等待直至达到协作动作执行条件→④握持毛巾调整位姿配合完成洗盘子动作→⑤握持毛巾移动将毛巾放回固定位置。通过对两个机械臂各自动作梳理可以看出,其中④即为预先定义的需要两个机械臂协同完成的协作动作。机械臂1和机械臂2在执行各自第④步的动作之前,主控器可以分别执行每个机械臂对应的同步动作,根据同步动作的执行结果即可以确定两个机械臂均已满足协作动作的执行条件,即已满足协作动作的执行条件,然后控制两个机械臂配合执行洗盘子的协作动作,而后分别执行各自的动作⑤。
上述方法用于实现至少两个以上机器人之间的相互配合,设计人员无需在控制程序中固化各动作的时间节点,换言之,能够根据各机器人的具体执行状态确定启动协作动作的时间,这就大大增加了控制的灵活性。
实际实施时,可以为每个机器人预先创建一个标记存储区,同步动作的种类包括等待和通知中的至少一种;执行每个机器人对应的至少一个同步动作包括:
对于每个机器人,在同步动作为等待的情况下,在为所述机器人预先创建的标记存储区中存储等待标记,即在等待主体自身的标记存储区中存储等待标记;具体的,执行一个等待同步动作,可以在等待主体自身的标记存储区中存储一个等待标记,对应一个等待对象,也可以在等待主体自身的标记存储区中存储多个等待标记,对应多个等待对象。
在同步动作为通知的情况下,在为所述机器人对应的其它机器人预先创建的标记存储区中存储通知标记,即在通知对象的标记存储区中存储通知标记。具体的,执行一个通知同步动作,所述对应的其它机器人可以为一个,即可以在一个通知对象的标记存储区中存储通知标记,所述对应的其它机器人也可以为多个,即也可以在多个通知对象的标记存储区中存储通知标记。
实际实施时,每个同步动作可以对应一个动作原子,可由主控器执行。对应于同步动作的种类,同步动作原子可以被配置为等待同步动作原子和通知同步动作原子两类。即对于每个机器人,主控器在执行等待同步动作原子时,在为所述机器人预先创建的标记存储区中存储等待标记,即在等待主体自身的标记存储区中存储等待标记;主控器在执行通知同步动作原子时,在为所述机器人对应的其它机器人预先创建的标记存储区中存储通知标记,即在通知对象的标记存储区中存储通知标记。
本申请实施例中所提出的动作原子是指一种预先封装的数据结构,该数据结构中至少包含两个数据项值,即动作原子的类型的类型值和动作原子的参数的参数值。
动作原子类型的类型值用于区分不同的动作原子和表征不同动作原子实现的功能,每个动作原子类型的类型值映射的是一个函数序列,该序列由至少一个函数组成,且函数之间具备可控的执行逻辑。换言之,通过每个动作原子的类型值能够确定一段可执行的程序代码,程序代码中包含至少一个预先编写的执行函数。其中,每个预先编写的执行函数能够实现不同的功能,预先编写的执行函数的代码段可以存储于主控器中,还可以存储在与主控器通信连接的其它设备中,具体不做限定。
需要说明的是,每个动作原子的类型值反映了该动作原子所能够实现的功能,这是由于每个预先编写的执行函数在动作原子执行时所输出的控制参数不同,每个动作原子中类型值所映射的执行函数和执行函数的执行逻辑不同。动作原子的执行会在下文中继续进行说明。
动作原子的参数值是供该动作原子中类型值所映射的执行函数使用的,每个动作原子参数的参数值输入至该动作原子类型的类型值相应的执行函数,以实现相应的控制功能,即,从每个动作原子所映射的执行函数中,确定需要执行哪个执行函数、执行函数的执行顺序,需依赖于该动作原子参数的参数值。动作原子的参数值进一步决定了函数序列中各执行函数的执行逻辑,并明确了可执行程序代码的数据,进而实现了控制功能。
在本申请的一种实现方式中,可以使用键值对形式的数据结构对动作原子的数据项进行描述、保存。该具体实现方式中,动作原子的静态数据结构如下:
{“type”:“value1”;“params”:{value21,value22,…}}
其中,键名“type”指动作原子类型,键值“value1”为动作原子类型的类型值。同样的,键名“params”指动作原子参数,键值{value21,value22,…}为动作原子参数的参数值。
需要说明的是,动作原子类型的类型值“value1”是一确定的数据值,可以是字符串如“grasp”、“wait”、“pointlist”,也可以是一实数“001”“002”,还可以是其它类型的数据值,不作具体限定。
相应的,根据动作原子类型的类型值所映射的执行函数的功能特性,执行函数所需要的动作原子参数的参数值也可以灵活设计。具体的,动作原子参数的参数值{value21,value22,…}可以是一个或一组具体的数值,也可以是一个或一组键值对数据{“key1”:“value21”,“key2”:“value22”…}。参数值从属于动作原子本身并输入至动作原子所对应的函数序列,每个动作原子类型的类型值所映射的执行函数不同,所需要的参数也不同,因此不同的动作原子参数值的具体形式可以相同,也可以不同,本申请实施例对于参数值的形式不做具体限定。
本申请的一种实现方式中,上述动作原子的数据结构中还包括一个数据项,即动作原子名称的名称标识。
本申请的一种实现方式中,使用键值对形式的数据结构对所述动作原子数据项进行描述、保存时,包括名称标识数据项的动作原子的静态结构如下:
{“type”:“value1”;“params”:{value21,value22,…};“name”:“value3”}
其中,与前述实施例的数据结构相比,增加的键名“name”指动作原子名称,键值“value3”为动作原子的名称标识。
从前述实施方式可知,动作原子类型的类型值用于区分不同的动作原子且不可更改。通过增加名称标识数据项,便于用户使用时进行区分。
本申请一实施例中,动作原子可以通过如下步骤执行:
解析待执行动作原子,获取待执行动作原子的类型值以及待执行动作原子的参数值;该类型值对应至少一个执行函数以及该至少一个执行函数的执行逻辑;
根据该参数值以及该至少一个执行函数间的执行逻辑,从该至少一个执行函数中确定待执行的执行函数;
根据该待执行的执行函数,生成至少一组控制参数。
针对同步动作原子而言,对于每个机器人,等待同步动作原子在被主控器执行时生成的控制参数,用于在为所述机器人预先创建的标记存储区中存储等待标记,即在等待主体自身的标记存储区中存储等待标记;通知同步动作原子在被主控器执行时生成的控制参数,用于在为所述机器人对应的其它机器人预先创建的标记存储区中存储通知标记,即在通知对象的标记存储区中存储通知标记。
在本申请的一个具体实施例中,对于每个机器人,等待标记可以携带所述机器人对应的标识信息,即等待主体自身对应的标识信息;通知标记可以携带所述机器人对应的其它机器人对应的标识信息,即通知对象对应的标识信息。
在本申请的另一个具体实施例中,对于每个机器人,等待标记也可以携带所述机器人对应的其它机器人对应的标识信息,即等待对象对应的标识信息;通知标记也可以携带所述机器人对应的标识信息,即通知主体自身对应的标识信息。
进一步的,根据同步动作的执行结果确定所述至少两个机器人均达到协作动作的执行条件包括:
在每个机器人的标记存储区中,如果通知标记与等待标记相匹配,则从所述机器人的标记存储区删除该匹配的等待标记和通知标记;
若每个机器人的标记存储区中的等待标记均已删除,则确定所述至少两个机器人均达到协作动作的执行条件。
实际实施时,如果一通知标记携带的标识信息与一等待标记携带的标识信息相同,可以确定该通知标记和该等待标记相匹配。
例如,为每个机器人在内存中建立用于存储等待标记Wait和通知标记Signal的标记存储区。其中等待标记Wait和通知标记Signal是一种数据结构,在本申请的一个具体实施例中,每个等待标记Wait携带的标识信息能够标识等待对象,每个通知标记Signal携带的标识信息能够标识通知主体。
本申请一实施例中,三个机械臂机器人由一个机器人控制器控制,每个机械臂对应的同步动作包括:等待同步动作1、等待同步动作2、通知同步动作3和通知同步动作4。每执行一个同步动作,仅生成存储一个标记。
在执行机械臂1对应的同步动作时,执行了等待同步动作1,在机械臂1的标记存储区中存储了对机械臂2的等待标记Wait(Arm2),执行了等待同步动作2,在机械臂1的标记存储区中存储了对机械臂3的等待标记Wait(Arm3),每个等待标记Wait携带能够标识等待对象的标识信息。若机械臂1的标记存储区中存在等待标记Wait,机械臂1暂停动作,等待相应的通知标记Signal存入标记存储区。相应的,每个通知标记Signal携带能够标识通知主体的标识信息。例如,在执行机械臂1对应的同步动作时,还执行了通知同步动作3,在机械臂2的标记存储区中存储通知标记Signal(Arm1),并且还执行了通知同步动作4,在机械臂3的标记存储区中存储通知标记Signal(Arm1)。
相应的,在执行机械臂2对应的同步动作时,执行了等待同步动作1,在机械臂2的标记存储区中存储了对机械臂1的等待标记Wait(Arm1),执行了等待同步动作2,在机械臂2的标记存储区中存储了对机械臂3的等待标记Wait(Arm3)。还执行了通知同步动作3,在机械臂1的标记存储区中存储通知标记Signal(Arm2),并且还执行了通知同步动作4,在机械臂3的标记存储区中存储通知标记Signal(Arm2)。
相应的,在执行机械臂3对应的同步动作时,执行了等待同步动作1,在机械臂3的标记存储区中存储了对机械臂1的等待标记Wait(Arm1),执行了等待同步动作2,在机械臂3的标记存储区中存储了对机械臂2的等待标记Wait(Arm2)。还执行了通知同步动作3,在机械臂2的标记存储区中存储通知标记Signal(Arm3),并且还执行了通知同步动作4,在机械臂1的标记存储区中存储通知标记Signal(Arm3)。
上述实施例中,一个同步动作只对应一个通知标记或者等待标记。在本申请另一实施例中,需要协助的机械臂为多个时,也可以在一个同步动作中对应多个通知标记或者等待标记,仍然以三个机械臂需要执行协作动作为例进行说明。
三个机械臂机器人由一个机器人控制器控制,每个机械臂对应的同步动作包括:等待同步动作1和通知同步动作2。每执行一个同步动作,生成存储两个标记。
在执行机械臂1对应的同步动作时,执行了等待同步动作1,在机械臂1的标记存储区中存储了对机械臂2和机械臂3的等待标记Wait(Arm2)和Wait(Arm3)。还执行了通知同步动作2,在机械臂2的标记存储区中存储通知标记Signal(Arm1),并且在机械臂3的标记存储区中存储通知标记Signal(Arm1)。
相应的,在执行机械臂2对应的同步动作时,执行了等待同步动作1,在机械臂2的标记存储区中存储了对机械臂1和机械臂3的等待标记Wait(Arm1)和Wait(Arm3)。还执行了通知同步动作2,在机械臂1的标记存储区中存储通知标记Signal(Arm2),并且在机械臂3的标记存储区中存储通知标记Signal(Arm2)。
相应的,在执行机械臂3对应的同步动作时,执行了等待同步动作1,在机械臂3的标记存储区中存储了对机械臂1和机械臂2的等待标记Wait(Arm1)和Wait(Arm2)。还执行了通知同步动作2,在机械臂2的标记存储区中存储通知标记Signal(Arm3),并且在机械臂1的标记存储区中存储通知标记Signal(Arm3)。
上述实施例中,一个同步动作对应多个通知标记或者等待标记。
实际应用中可以根据需要选择同步动作的种类、数量以及每个同步动作对应的标记数量。
当三个机械臂的同步动作执行完毕后,三个机械臂的标记存储区中的等待标记和通知标记情况如图2所示。
机械臂1的标记存储区中存储有:Wait(Arm2)、Wait(Arm3)、Signal(Arm2)、Signal(Arm3);
机械臂2的标记存储区中存储有:Wait(Arm1)、Wait(Arm3)、Signal(Arm1)、Signal(Arm3);
机械臂3的标记存储区中存储有:Wait(Arm2)、Wait(Arm1)、Signal(Arm2)、Signal(Arm1)。
如果机械臂1的标记存储区中通知标记Signal中的标识信息和等待标记Wait中的标识信息匹配成功,就从标记存储区中删除该等待标记Wait和通知标记Signal,直到机械臂1的标记存储区中没有等待标记Wait,则可控制机械臂1继续执行后序的动作。
如果机械臂2的标记存储区中通知标记Signal中的标识信息和等待标记Wait中的标识信息匹配成功,就从标记存储区中删除该等待标记Wait和通知标记Signal,直到机械臂2的标记存储区中没有等待标记Wait,则可控制机械臂2继续执行后序的动作。
如果机械臂3的标记存储区中通知标记Signal中的标识信息和等待标记Wait中的标识信息匹配成功,就从标记存储区中删除该等待标记Wait和通知标记Signal,直到机械臂3的标记存储区中没有等待标记Wait,则可控制机械臂3继续执行后序的动作。
如上所示,机械臂1、机械臂2和机械臂3中的等待标记Wait和通知标记Signal均可删除,无等待标记Wait剩余,三个机械臂均达到协作动作的执行条件,可以执行协作动作。
在本申请一实施例中,如果一通知标记携带预设控制源对应的标识信息,可以确定该通知标记与所有等待标记相匹配。即通过该通知标记可以消除任意机器人的标记存储区中的所有等待标记,从而解除一直处于等待状态的机器人的死锁状态,避免机器人长时间被无法最终完成的同步任务占用,造成资源的浪费。
在本申请另一实施例中,至少一个机器人的标记存储区中可以预存有至少一个等待标记和/或通知标记。
在本申请另一实施例中公开了一种机器人控制方法,该方法中,对至少两个机器人中每个机器人进行监控,所述至少两个机器人需要互相配合执行协作动作,参见图3,所述方法包括步骤301至303。
步骤301:在所述至少两个机器人中每个的机器人的标记存储区中存储等待标记,在每个机器人对应的其它机器人的标记存储区中存储通知标记。
本申请实施例中,将需要至少两个机器人协同完成的协作动作前的同步过程称为同步动作。当执行完每个机器人各自的协作动作前的同步后,将在各自的标记存储区中存储等待标记,在每个机器人对应的其它机器人的标记存储区中存储通知标记作为同步动作的执行结果。
每个机器人对应的其它机器人表示需要相互配合完成协作动作的机器人。以三个机器人协作动作为例,机器人2和机器人3就是机器人1的对应的其它机器人;相应的,机器人1和机器人3是机器人2对应的其它机器人;机器人1和机器人2是机器人3对应的其它机器人。
本申请实施例中,所述等待标记携带所述机器人对应的标识信息,所述通知标记携带所述机器人对应的其它机器人对应的标识信息;或者所述等待标记携带所述机器人对应的其它机器人对应的标识信息,所述通知标记携带所述机器人对应的标识信息。
步骤302:若每个机器人的标记存储区中,通知标记与等待标记相匹配,则从所述机器人的标记存储区删除该匹配的等待标记和通知标记。
步骤303:在确定所述至少两个机器人均已满足协作动作的执行条件的情况下,分别控制所述至少两个机器人执行所述协作动作。
若每个机器人的标记存储区中的等待标记均已删除,则确定所述至少两个机器人均达到所述协作动作的执行条件。
该实施例提供的这种方法可以应用于机器人主控器中,特别适合用于需要多个机器人执行协作动作的场景。例如:一机械臂主控器控制机械臂1、机械臂2和机械臂3配合对同一芯片执行精密焊接动作,机械臂1、机械臂2和机械臂3的动作序列中包含一个需要配合执行的协作动作,即同时执行焊接这个动作的动作。机械臂1到达预定位置并且已调整好末端焊抢的位姿,所述机械臂主控器执行机械臂1对应的同步动作,即在机械臂1的标记存储区中存储等待标记,分别在机械臂2和机械臂3的标记存储区中存储通知标记;机械臂2到达预定位置并且已经调整好末端焊枪的位姿,所述机械臂主控器执行机械臂2对应的同步动作,即在机械臂2的标记存储区中存储等待标记,分别在机械臂1和机械臂3的标记存储区中存储通知标记;机械臂3到达预定位置并且已经调整好末端焊枪的位姿,所述机械臂主控器执行机械臂3对应的同步动作,在机械臂3的标记存储区中存储等待标记,在机械臂2和机械臂1的标记存储区中存储通知标记。若机械臂1、机械臂2和机械臂3的标记存储区中存储的通知标记和等待标记均互相匹配并删除,无等待标记剩余,则确认机械臂1、机械臂2和机械臂3均满足了协作动作的执行条件,从而控制三个机械臂配合同时开始执行所述精密焊接的动作。在这一场景中,三个机械臂实现了彼此之间的等待和确认,提升了协作动作的成功率和安全性。
在该实施例中,由于主控器对三个机械臂均执行同步动作,所以实际应用中,通过对三个机器人中一任意一个机器人的标记存储区中的通知标记和等待标记的情况的跟踪即可实现对三个机器人执行条件的监控,准确完成该协作动作,实现了控制上的准确和便利。
前述机器人控制方法实施例中,需要协同完成协作动作的多个机器人可以对应一个主控器,该一个主控器可以对该多个机器人的标记存储区进行标记的存储删除操作。在下述机器人控制方法实施例中,每个机器人对应一个主控器,每个机器人的主控器对该机器人的标记存储区进行标记的存储删除操作。
在本申请一实施例中公开了一种机器人控制方法,应用于第一机器人的主控器,用于控制所述第一机器人执行需要与至少一个第二机器人协同完成的协作动作,如图4所示,该方法包括:
步骤401:执行第一机器人对应的至少一个同步动作;
步骤402:根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件,控制第一机器人执行所述协作动作。
所述同步动作的种类可以包括等待和通知中的至少一种;
所述步骤401,所述执行第一机器人对应的至少一个同步动作包括:
在同步动作为等待的情况下,在为第一机器人预先创建的标记存储区中存储等待标记;具体的,执行一个等待同步动作,可以在第一机器人即等待主体自身的标记存储区中存储一个等待标记,对应一个第二机器人即一个等待对象,也可以在第一机器人即等待主体自身的标记存储区中存储多个等待标记,对应多个第二机器人即多个等待对象;
在同步动作为通知的情况下,向对应的第二机器人的主控器发送通知标记。具体的,执行一个通知同步动作,所述对应的第二机器人可以为一个,即可以向一个第二机器人即一个通知对象的主控器发送通知标记,所述对应的第二机器人也可以为多个,即可以向多个第二机器人即多个通知对象的主控器发送通知标记。
进一步的,所述等待标记可以携带第一机器人对应的标识信息,所述通知标记可以携带所述对应的第二机器人对应的标识信息;或者所述等待标记可以携带所述对应的第二机器人对应的标识信息,所述通知标记可以携带第一机器人对应的标识信息。
所述步骤402中,所述根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件包括:
在所述标记存储区中,如果通知标记与等待标记相匹配,则从所述标记存储区删除该匹配的等待标记和通知标记;
若所述标记存储区中的等待标记均已删除,则确定第一机器人达到所述协作动作的执行条件。
其中,所述标记存储区中的通知标记包括接收的来自于所述至少一个第二发送的通知标记;
此时,采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带的标识信息与一等待标记携带的标识信息相同,确定该通知标记和该等待标记相匹配。
进一步的,所述标记存储区中的通知标记可以包括接收的来自于预设控制源发送的通知标记;
若所述标记存储区中的等待标记未均已删除,则确定第一机器人未达到所述协作动作的执行条件,控制第一机器人保持等待状态。
以下在该实施例中以机械臂1和机械臂2间传递物体的任务场景为例,从单个机械臂的角度来描述机械臂的控制方法。
机械臂1的动作执行序列为:①抓取物体移动到指定位置→②等待达到协作动作执行条件→③将物体传递给机械臂2。
机械臂2的动作执行序列为:①移动到指定位置→②等待达到协作动作执行条件→③抓取机械臂1传递来的物体。
从机械臂1的角度观察,机械臂1执行完动作①后,机械臂1的主控器可以执行机械臂1对应的同步动作,具体为一个等待同步动作一个通知同步动作,即机械臂1的主控器可以在机械臂1的标记存储区中存储一个等待标记Wait(Arm2),向机械臂2的主控器发送通知标记Signal(Arm1)。在等待标记Wait(Arm2)中包含用于标识等待对象为机械臂2的标识信息,由于机械臂1的标记存储区中存在所述等待标记Wait(Arm2),在收到携带机械臂2的标识信息的通知标记Signal(Arm2)删除所述等待标记Wait(Arm2)之前,机械臂1始终保持等待状态,直到收到通知标记Signal(Arm2)删除所述等待标记Wait(Arm2)后,确定机械臂1达到协作动作执行条件才继续执行第③个动作。
从机械臂2的角度观察,机械臂2执行完动作①后,机械臂2的主控器可以执行机械臂2对应的同步动作,具体为一个等待同步动作一个通知同步动作,即机械臂2的主控器可以在机械臂2的标记存储区中存储一个等待标记Wait(Arm1),向机械臂1的主控器发送通知标记Signal(Arm2)。在等待标记Wait(Arm1)中包含用于标识等待对象为机械臂1的标识信息,由于机械臂2的标记存储区中存在所述等待标记Wait(Arm1),在收到携带机械臂1的标识信息的通知标记Signal(Arm1)删除所述等待标记Wait(Arm1)之前,机械臂2始终保持等待状态,直到收到通知标记Signal(Arm1)删除所述等待标记Wait(Arm1)后,确定机械臂2达到协作动作执行条件才继续执行第③个动作。
通过上述方法,能够实现两个或多个机器人之间的协作动作,最终实现两个或多个机器人完成需要相互配合的动作。
在本申请的另一实施例中,允许机器人的标记存储区接收预设控制源发送的通知标记,所述通知标记携带所述预设控制源对应的标识信息,可以通过所述预设控制源对应的通知标记从所述标记存储区消除所有等待标记。
预设控制源对应的通知标记可以是预设控制源的标识信息,也可以是其它约定的标识信息,根据实际需要设置即可。
通过这种方式,能够解除处于保持等待状态的机器人的等待状态,控制其继续执行之后的动作。
在本申请的另一实施例的方法中,允许在所述标记存储区中预存至少一个等待标记和/或通知标记。
需要说明的是,该机器人控制方法的技术方案与前述的图1的机器人控制方法属于同一构思,该机器人控制方法的技术方案未详细描述的细节内容,均可以参见前述机器人控制方法的技术方案的描述。
如图5所示,本申请一实施例公开了一种机器人控制装置500,用于控制第一机器人执行需要与至少一个第二机器人协同完成的协作动作,所述装置500包括第一执行模块501和第一协作控制模块502,其中:
所述第一执行模块501被配置为执行第一机器人对应的至少一个同步动作;
所述第一协作控制模块502被配置为根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件,控制第一机器人执行所述协作动作。
所述同步动作的种类包括等待和通知中的至少一种;
所述第一执行模块501进一步被配置为:在同步动作为等待的情况下,在为第一机器人预先创建的标记存储区中存储等待标记;在同步动作为通知的情况下,向对应的第二机器人的主控器发送通知标记。
本申请一实施例中,所述等待标记携带第一机器人对应的标识信息,所述通知标记携带所述对应的第二机器人对应的标识信息;或者所述等待标记携带所述对应的第二机器人对应的标识信息,所述通知标记携带第一机器人对应的标识信息。
所述第一协作控制模块502被配置为在所述标记存储区中,如果通知标记与等待标记相匹配,则从所述标记存储区删除该匹配的等待标记和通知标记;若所述标记存储区中的等待标记均已删除,则确定第一机器人达到所述协作动作的执行条件。
所述标记存储区中的通知标记包括接收的来自于所述至少一个第二机器人的主控器发送的通知标记;
所述第一协作控制模块502采用如下方式判断通知标记与等待标记是否匹配:如果一通知标记携带的标识信息与一等待标记携带的标识信息相同,确定该通知标记和该等待标记相匹配。
所述标记存储区中的通知标记包括接收的来自于预设控制源发送的通知标记;
所述第一协作控制模块502采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带预设控制源对应的标识信息,确定该通知标记与所有等待标记相匹配。
本申请一实施例中,所述第一协作控制模块502还被配置为:若所述标记存储区中的等待标记未均已删除,则确定第一机器人未达到所述协作动作的执行条件,控制第一机器人保持等待状态。
本申请一实施例中,所述标记存储区中可以预存有至少一个等待标记和/或通知标记。
上述装置能够实现至少两个机器人之间的相互配合,设计人员无需将各任务的时间节点固化在控制程序中,换言之,第一协作控制模块502可根据同步动作的执行结果控制第一机器人启动协作动作,这就大大拓展了至少两个机器人之间配合执行任务的场景。
上述为本实施例的一种机器人控制装置的示意性方案。需要说明的是,该机器人控制装置的技术方案与前述的图4的机器人控制方法属于同一构思,所述机器人控制装置的技术方案未详细描述的细节内容,均可以参见上述机器人控制方法的技术方案的描述。
如图6所示,本申请一实施例公开了一种机器人控制装置600,用于控制至少两个机器人执行需要协同完成的协作动作,所述装置600包括第二执行模块601和第二协作控制模块602,其中:
所述第二执行模块601被配置为执行每个机器人对应的至少一个同步动作;
所述第二协作控制模块602被配置为根据同步动作的执行结果确定所述至少两个机器人均达到所述协作动作的执行条件,控制所述至少两个机器人执行所述协作动作。
本申请一实施例中,所述同步动作的种类包括等待和通知中的至少一种;
所述第二执行模块601进一步被配置为:对于每个机器人,在同步动作为等待的情况下,在为所述机器人预先创建的标记存储区中存储等待标记;在同步动作为通知的情况下,在为所述机器人对应的其它机器人预先创建的标记存储区中存储通知标记。
本申请一实施例中,所述等待标记携带所述机器人对应的标识信息,所述通知标记携带所述机器人对应的其它机器人对应的标识信息;或者所述等待标记携带所述机器人对应的其它机器人对应的标识信息,所述通知标记携带所述机器人对应的标识信息。
所述第二协作控制模块602进一步被配置为在每个机器人的标记存储区中,如果通知标记与等待标记相匹配,则从所述机器人的标记存储区删除该匹配的等待标记和通知标记;若每个机器人的标记存储区中的等待标记均已删除,则确定所述至少两个机器人均达到所述协作动作的执行条件。
所述第二协作控制模块702采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带的标识信息与一等待标记携带的标识信息相同,确定该通知标记和该等待标记相匹配。
所述每个机器人的标记存储区中的通知标记包括来自于预设控制源存储的通知标记;
所述第二协作控制模块602还可以采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带预设控制源对应的标识信息,确定该通知标记与所有等待标记相匹配。
本申请一实施例中,所述第二协作控制模块602进一步被配置为若每个机器人的标记存储区中的等待标记未均已删除,则确定所述至少两个机器人未均达到所述协作动作的执行条件,控制所述至少两个机器人均保持等待状态。
本申请一实施例中,至少一个机器人的标记存储区中预存有至少一个等待标记和/或通知标记。
上述装置能够实现至少两个机器人之间的相互配合,设计人员无需将各任务的时间节点固化在控制程序中,换言之,所述第二协作控制模块602可根据所述至少两个机器人均达到所述协作动作的执行条件满足的情况控制所述至少两个机器人执行所述协作动作,这就大大拓展了至少两个机器人之间配合执行任务的场景。
上述为本实施例的一种机器人控制装置的示意性方案。需要说明的是,该机器人控制装置的技术方案与前述的图1的机器人控制方法属于同一构思,所述机器人控制装置的技术方案未详细描述的细节内容,均可以参见上述机器人控制方法的技术方案的描述。
在根据本申请的一个实施例中提供了一种如图7所示的机器人主控器700,包括但不限于存储器701、处理器702及存储在存储器701上并可在处理器702上运行的计算机指令,所述处理器702执行所述机器人控制方法。
具体的,本申请中的机器人主控器700可以但不限于为机械臂主控器。
上述为本实施例的一种机器人主控器的示意性方案。需要说明的是,该机器人主控器的技术方案与前述的机器人控制方法属于同一构思,所述机器人主控器的技术方案未详细描述的细节内容,均可以参见上述机器人控制方法的技术方案的描述。
在根据本申请的一个实施例中提供了一种可读存储介质,其上存储有计算机指令,所述指令被处理器执行时实现权如前所述的机器人控制方法。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
上述为本实施例的一种可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与前述的机器人控制方法属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述语机器人控制方法的技术方案的描述。
在根据本申请的一个实施例中提供了一种机器人,包括上述的机器人主控器。
具体的,本申请中的机器人可以但不限于为机械臂。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该申请仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。
Claims (19)
1.一种机器人控制方法,应用于第一机器人的主控器,用于控制所述第一机器人执行需要与至少一个第二机器人协同完成的协作动作,其特征在于,所述方法包括:
执行第一机器人对应的至少一个同步动作;
根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件,控制第一机器人执行所述协作动作;
其中,所述同步动作的种类包括等待和通知中的至少一种;
所述执行第一机器人对应的至少一个同步动作包括:
在同步动作为等待的情况下,在为第一机器人预先创建的标记存储区中存储等待标记;在同步动作为通知的情况下,向对应的第二机器人的主控器发送通知标记;
所述根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件包括:
根据所述等待标记和所述通知标记确定第一机器人达到所述协作动作的执行条件。
2.根据权利要求1所述的方法,其特征在于,
所述等待标记携带第一机器人对应的标识信息,所述通知标记携带所述对应的第二机器人对应的标识信息;或者
所述等待标记携带所述对应的第二机器人对应的标识信息,所述通知标记携带第一机器人对应的标识信息。
3.根据权利要求1所述的方法,其特征在于,所述根据所述等待标记和所述通知标记确定第一机器人达到所述协作动作的执行条件包括:
在所述标记存储区中,如果通知标记与等待标记相匹配,则从所述标记存储区删除该匹配的等待标记和通知标记;
若所述标记存储区中的等待标记均已删除,则确定第一机器人达到所述协作动作的执行条件。
4.根据权利要求3所述的方法,其特征在于,所述标记存储区中的通知标记包括接收的来自于所述至少一个第二机器人的主控器发送的通知标记;
采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带的标识信息与一等待标记携带的标识信息相同,确定该通知标记和该等待标记相匹配。
5.根据权利要求3所述的方法,其特征在于,所述标记存储区中的通知标记包括接收的来自于预设控制源发送的通知标记;
采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带预设控制源对应的标识信息,确定该通知标记与所有等待标记相匹配。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述标记存储区中的等待标记未均已删除,则确定第一机器人未达到所述协作动作的执行条件,控制第一机器人保持等待状态。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述标记存储区中预存有至少一个等待标记和/或通知标记。
8.一种机器人控制方法,用于控制至少两个机器人执行需要协同完成的协作动作,其特征在于,所述方法包括:
执行每个机器人对应的至少一个同步动作;
根据同步动作的执行结果确定所述至少两个机器人均达到所述协作动作的执行条件,控制所述至少两个机器人执行所述协作动作;
其中,所述同步动作的种类包括等待和通知中的至少一种;
所述执行每个机器人对应的至少一个同步动作包括:
对于每个机器人,在同步动作为等待的情况下,在为所述机器人预先创建的标记存储区中存储等待标记;在同步动作为通知的情况下,在为所述机器人对应的其它机器人预先创建的标记存储区中存储通知标记;
所述根据同步动作的执行结果确定所述至少两个机器人均达到所述协作动作的执行条件包括:
根据所述等待标记和所述通知标记确定所述至少两个机器人均达到所述协作动作的执行条件。
9.根据权利要求8所述的方法,其特征在于,
所述等待标记携带所述机器人对应的标识信息,所述通知标记携带所述机器人对应的其它机器人对应的标识信息;或者
所述等待标记携带所述机器人对应的其它机器人对应的标识信息,所述通知标记携带所述机器人对应的标识信息。
10.根据权利要求8所述的方法,其特征在于,所述根据所述等待标记和所述通知标记确定所述至少两个机器人均达到所述协作动作的执行条件包括:
在每个机器人的标记存储区中,如果通知标记与等待标记相匹配,则从所述机器人的标记存储区删除该匹配的等待标记和通知标记;
若每个机器人的标记存储区中的等待标记均已删除,则确定所述至少两个机器人均达到所述协作动作的执行条件。
11.根据权利要求10所述的方法,其特征在于,采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带的标识信息与一等待标记携带的标识信息相同,确定该通知标记和该等待标记相匹配。
12.根据权利要求10所述的方法,其特征在于,
采用如下方式判断通知标记与等待标记是否匹配:
如果一通知标记携带预设控制源对应的标识信息,确定该通知标记与所有等待标记相匹配。
13.根据权利要求10所述的方法,其特征在于,所述方法还包括:
若每个机器人的标记存储区中的等待标记未均已删除,则确定所述至少两个机器人未均达到所述协作动作的执行条件,控制所述至少两个机器人均保持等待状态。
14.根据权利要求8-13中任一项所述的方法,其特征在于,至少一个机器人的标记存储区中预存有至少一个等待标记和/或通知标记。
15.一种机器人控制装置,用于控制第一机器人执行需要与至少一个第二机器人协同完成的协作动作,其特征在于,所述装置包括第一执行模块和第一协作控制模块,其中:
所述第一执行模块被配置为执行第一机器人对应的至少一个同步动作;
所述第一协作控制模块被配置为根据同步动作的执行结果确定第一机器人达到所述协作动作的执行条件,控制第一机器人执行所述协作动作;
其中,所述同步动作的种类包括等待和通知中的至少一种;
所述第一执行模块被配置为在同步动作为等待的情况下,在为第一机器人预先创建的标记存储区中存储等待标记;在同步动作为通知的情况下,向对应的第二机器人的主控器发送通知标记;
所述第一协作控制模块被配置为根据所述等待标记和所述通知标记确定第一机器人达到所述协作动作的执行条件。
16.一种机器人控制装置,用于控制至少两个机器人执行需要协同完成的协作动作,其特征在于,所述装置包括第二执行模块和第二协作控制模块,其中:
所述第二执行模块被配置为执行每个机器人对应的至少一个同步动作;
所述第二协作控制模块被配置为根据同步动作的执行结果确定所述至少两个机器人均达到所述协作动作的执行条件,控制所述至少两个机器人执行所述协作动作;
其中,所述同步动作的种类包括等待和通知中的至少一种:
所述第二执行模块被配置为对于每个机器人,在同步动作为等待的情况下,在为所述机器人预先创建的标记存储区中存储等待标记;在同步动作为通知的情况下,在为所述机器人对应的其它机器人预先创建的标记存储区中存储通知标记;
所述第二协作控制模块被配置为根据所述等待标记和所述通知标记确定所述至少两个机器人均达到所述协作动作的执行条件。
17.一种可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1至14中任一项所述的机器人控制方法。
18.一种机器人主控器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1至14中任一项所述的机器人控制方法。
19.一种机器人,其特征在于,包括如权利要求18所述的机器人主控器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811501559.7A CN111283677B (zh) | 2018-12-10 | 2018-12-10 | 一种机器人控制方法、装置、机器人及机器人主控器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811501559.7A CN111283677B (zh) | 2018-12-10 | 2018-12-10 | 一种机器人控制方法、装置、机器人及机器人主控器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111283677A CN111283677A (zh) | 2020-06-16 |
CN111283677B true CN111283677B (zh) | 2021-07-06 |
Family
ID=71016979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811501559.7A Active CN111283677B (zh) | 2018-12-10 | 2018-12-10 | 一种机器人控制方法、装置、机器人及机器人主控器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111283677B (zh) |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201679224U (zh) * | 2010-04-23 | 2010-12-22 | 谭徳炎 | 一种附着升降脚手架同步升降及荷载控制系统 |
US8639364B2 (en) * | 2011-07-13 | 2014-01-28 | KUKA Robotics Corporation | Uniform synchronizing robot control and deadlock detection in uniform synchronization |
EP2737375B1 (en) * | 2011-07-27 | 2016-11-16 | ABB Schweiz AG | System for commanding a robot |
JP5578220B2 (ja) * | 2012-10-22 | 2014-08-27 | 株式会社安川電機 | ロボットシステム |
JP5768829B2 (ja) * | 2013-03-15 | 2015-08-26 | 株式会社安川電機 | ロボットシステム、ロボット制御方法及び被加工物の製造方法 |
GB201409883D0 (en) * | 2014-06-03 | 2014-07-16 | Ocado Ltd | Methods, systems, and apparatus for controlling movement of transporting devices |
JP6350011B2 (ja) * | 2014-06-20 | 2018-07-04 | オムロン株式会社 | ロボット制御システム |
DE102015116086A1 (de) * | 2015-09-23 | 2017-03-23 | Universität Bayreuth | Robotersteuerung |
CN105550519A (zh) * | 2015-12-16 | 2016-05-04 | 杭州市第一人民医院 | 基于移动机器人的手术室医用耗材配送系统及配送方法 |
US10725462B2 (en) * | 2016-04-25 | 2020-07-28 | Invia Robotics, Inc. | Optimizing robotic movements based on an autonomous coordination of resources amongst robots |
WO2017215741A1 (en) * | 2016-06-14 | 2017-12-21 | Abb Schweiz Ag | A method and a robot system for handling objects |
US9637310B1 (en) * | 2016-08-02 | 2017-05-02 | Amazon Technologies, Inc. | Mobile robot group for moving an item |
KR101855861B1 (ko) * | 2016-09-19 | 2018-05-18 | 주식회사 엔티로봇 | 물류운반 로봇 시스템 및 이를 이용한 로봇의 이동 제어방법 |
US10500717B2 (en) * | 2017-01-11 | 2019-12-10 | Stilwell Technology and Robotics, LLC | Robotic interfaces |
CN107675697B (zh) * | 2017-10-30 | 2019-06-21 | 中交疏浚技术装备国家工程研究中心有限公司 | 海上深层水泥土搅拌船双处理机单动-联动施工控制方法 |
CN108436915A (zh) * | 2018-04-17 | 2018-08-24 | 上海达野智能科技有限公司 | 双机器人运动控制方法 |
-
2018
- 2018-12-10 CN CN201811501559.7A patent/CN111283677B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111283677A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6875578B2 (ja) | 柔軟な人間−機械協働のためのシステムおよび方法 | |
CN110769985A (zh) | 使用循环神经网络的机器人末端执行器的视点不变的视觉伺服 | |
CN109807903B (zh) | 一种机器人控制方法、装置、设备和介质 | |
US11654552B2 (en) | Backup control based continuous training of robots | |
JP5929061B2 (ja) | ロボット制御装置、ロボットシステム、ロボット | |
CN111283675B (zh) | 一种机器人动作回归控制方法、装置、机器人和存储介质 | |
CN113168177B (zh) | 自主世界模型中的动态细化标记 | |
WO2019064916A1 (ja) | ロボットシミュレータ | |
JP2006212741A (ja) | タスクスキル生成装置 | |
WO2015126392A1 (en) | Emulating a user performing spatial gestures | |
JP7259860B2 (ja) | ロボットの経路決定装置、ロボットの経路決定方法、プログラム | |
JP2019171498A (ja) | ロボットプログラム実行装置、ロボットプログラム実行方法、プログラム | |
CN111283677B (zh) | 一种机器人控制方法、装置、机器人及机器人主控器 | |
CN109048928B (zh) | 一种机器人控制程序的生成方法及装置 | |
CN111309453A (zh) | 分布式部署的智能机器人系统 | |
CN109454641B (zh) | 一种运动控制器多任务分工及数据交互方法 | |
Fernández-Madrigal et al. | A software engineering approach for the development of heterogeneous robotic applications | |
US20230381963A1 (en) | Robot control method, computer-readable storage medium, and robot | |
CN111267086A (zh) | 一种动作任务的创建与执行方法及装置、设备和存储介质 | |
US11703830B2 (en) | Production system, recovery system, production method, and information storage medium | |
CN111267089A (zh) | 一种动作原子的生成与执行方法及装置、设备和存储介质 | |
CN111267088A (zh) | 一种动作分子的执行方法及装置、设备和存储介质 | |
CN111273572A (zh) | 一种动作分子模板的创建方法及装置、设备和存储介质 | |
CN111267087A (zh) | 一种动作分子的生成与执行方法及装置、设备和存储介质 | |
JP2004237364A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |