CN114932555B - 机械臂协同作业系统及机械臂控制方法 - Google Patents

机械臂协同作业系统及机械臂控制方法 Download PDF

Info

Publication number
CN114932555B
CN114932555B CN202210669830.8A CN202210669830A CN114932555B CN 114932555 B CN114932555 B CN 114932555B CN 202210669830 A CN202210669830 A CN 202210669830A CN 114932555 B CN114932555 B CN 114932555B
Authority
CN
China
Prior art keywords
mechanical arm
target
motion
instruction
controller
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
Application number
CN202210669830.8A
Other languages
English (en)
Other versions
CN114932555A (zh
Inventor
李臻宇
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.)
You Can See Beijing Technology Co ltd AS
Original Assignee
You Can See Beijing Technology Co ltd AS
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 You Can See Beijing Technology Co ltd AS filed Critical You Can See Beijing Technology Co ltd AS
Priority to CN202210669830.8A priority Critical patent/CN114932555B/zh
Publication of CN114932555A publication Critical patent/CN114932555A/zh
Application granted granted Critical
Publication of CN114932555B publication Critical patent/CN114932555B/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/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several 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/1602Programme controls characterised by the control system, structure, architecture
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

本公开实施例公开了一种机械臂协同作业系统,包括多个控制器和多个机器人个体,不同的控制器对应控制不同的机器人个体,每个机器人个体包括一个或多个机械臂;其中,控制器用于:接收操控指令;基于操控指令,从控制器对应的机器人个体的机械臂中确定出响应操控指令的一个或多个目标机械臂;将操控指令解析成目标机械臂的运动指令;通过预设的底层控制通信接口,将运动指令发送至目标机械臂,以指示目标机械臂实现操控指令表征的目标行为。提出了一种去中心化的机械臂协同作业系统,可以将多机械臂协同作业时复杂的控制任务分离成多个相对简单的控制任务,从而降低了多机械臂协同作业时的开发难度,并提高了多机械臂协同作业系统的灵活度。

Description

机械臂协同作业系统及机械臂控制方法
技术领域
本公开涉及机器人技术领域,尤其涉及一种机械臂协同作业系统以及一种机械臂控制方法。
背景技术
机械臂是一种多输入多输出、高度非线性、强耦合的复杂系统。随着机械臂的灵活性和准确度的不断提高,机械臂的应用领域也日益广泛,例如工业领域、工程领域、医疗领域等。
实践中,当单个机械臂无法满足复杂任务的需求时,往往采用多个机械臂协同作业的方式。相应地,多机械臂协同作业的控制难度和复杂程度也更高。
发明内容
本公开实施例提供一种机械臂协同作业系统及一种机械臂控制方法。
本公开实施例的一个方面,提供一种机械臂协同作业系统,包括多个控制器和多个机器人个体,不同的控制器对应控制不同的机器人个体,每个机器人个体包括一个或多个机械臂;其中,控制器用于:接收操控指令;基于操控指令,从控制器对应的机械臂中确定出响应操控指令的一个或多个目标机械臂;将操控指令解析成目标机械臂的运动指令;通过预设的底层控制通信接口,将运动指令发送至目标机械臂,以指示目标机械臂实现操控指令表征的目标行为。
在一些实施例中,控制器中预先封装有上层通信协议和控制期间通信协议;控制器还包括上层通信接口和统一控制器接口,其中,上层通信接口基于上层通信协议构建,用于接收操控指令;统一控制器接口基于控制器间通信协议构建,用于与其他控制器进行通信。
在一些实施例中,当操控指令包括与其他机器人个体的交互请求时,控制器还用于:从操控指令中解析出交互请求以及待交互的机器人个体对应的目标控制器;通过统一控制器接口将交互请求发送至目标控制器,以指示目标控制器控制的机器人个体的机械臂实现交互请求表征的交互行为。
在一些实施例中,控制器还用于:通过统一控制器接口,接收其他控制器发送的交互请求,并从控制器控制的机械臂中确定出响应该交互请求的交互机械臂;将接收到的交互请求解析成交互机械臂的运动指令;通过底层控制接口,将运动指令发送至交互机械臂,以指示交互机械臂实现交互请求表征的交互行为。
在一些实施例中,在实现交互行为的过程中,控制器还用于:获取交互机械臂在当前时刻的状态信息,并通过统一控制器接口向交互请求的发送方或响应方反馈状态信息,状态信息至少包括交互机械臂的位姿信息。
在一些实施例中,控制器还设置有仿真通信接口;以及,控制器还用于:响应于接收到仿真测试指令,关闭底层通信接口,并通过仿真通信接口发送运动指令,以利用预设的仿真算法对目标行为进行仿真。
在一些实施例中,控制器中预设有多个运动状态机,运动状态机中预存有单元动作组成的动作序列,且不同的运动状态机分别对应不同的操控指令;以及,控制器通过如下方式得到运动指令:从各运动状态机中确定出操控指令对应的目标运动状态机;基于操控指令,确定目标行为的行为信息,行为信息至少包括目标机械臂的起点位姿和终点位姿;基于行为信息,对目标运动状态机中的动作序列实例化,确定该动作序列中各单元动作的动作信息,得到运动实例,动作信息至少包括各单元动作的执行时机、起点位置、终点位置和运行速度;利用预设的轨迹规划算法对运动实例进行处理,确定目标机械臂在各个时刻的关节角信息,得到运动指令。
在一些实施例中,还包括动态链接库,动态链接库中预存有轨迹规划算法;利用预设的轨迹规划算法对运动实例进行处理,确定目标机械臂在各个时刻的关节角信息,得到运动指令,包括:从动态链接库中调用轨迹规划算法,利用轨迹规划算法对运动实例进行处理,确定目标机械臂在各个时刻的关节角信息,得到运动指令。
在一些实施例中,动态链接库还用于:接收算法更新指令,并根据算法更新指令更新动态链接库。
根据本公开实施例的又一个方面,提供一种机械臂控制方法,包括:接收发送的操控指令;从机器人个体的机械臂中确定出响应操控指令的目标机械臂,并获取目标机械臂在当前时刻的位姿信息;基于操控指令,确定操控指令表征的目标行为的行为信息,行为信息包括起点位姿和终点位姿;从预存的运动状态机中确定出操控指令对应的目标运动状态机;基于位姿信息和行为信息,对目标运动状态机中预存的动作序列进行实例化处理,得到运动实例;基于预设的轨迹规划算法,将运动实例转化为运动指令;将运动指令发送至目标机械臂,以指示目标机械臂实现操控指令对应的目标行为。
本公开的实施例提供的机械臂协同作业系统,不同的控制器对应控制不同的机器人个体,每个机器人个体包括一个或多个机械臂。控制器接收到操控指令时,可以从对应的机械臂中确定出一个或多个目标机械臂,并将操控指令解析成目标机械臂的运动指令。然后通过预设的底层控制通信接口,将运动指令发送至目标机械臂,以指示目标机械臂实现操控指令表征的目标行为。提出了一种去中心化的机械臂协同作业系统,通过多个相对独立的控制器分别控制多个机械臂,可以将多机械臂协同作业时复杂的控制任务分离成多个相对简单的控制任务,从而降低了多机械臂协同作业时的开发难度,并提高了多机械臂协同作业系统的灵活度。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同描述一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1为本公开的机械臂系统作业系统的一个实施例的架构示意图;
图2为本公开的机械臂协同作业系统的一个实施例中控制机械臂的流程示意图;
图3为本公开的机械臂协同作业系统的一个实施例中控制机械臂实现交互行为的流程示意图;
图4为本公开的机械臂协同作业系统的一个实施例中生成运动指令的流程示意图;
图5为本公开的机械臂控制方法的一个实施例的流程示意图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
本公开概述
实践中,机械臂的数量和协同作业规则的复杂程度直接关系到机械臂协同作业系统的开发难度,机械臂数量越多、协同作业规则越复杂,则机械臂协同作业系统的开发难度越大。
在实现本公开的过程中,发明人发现,当机械臂协同作业系统中的机械臂数量或协同作业规则发生变化时,需要对整个机械臂协同作业系统的控制方案进行更新,导致开发难度和工作量较大。
示例性系统
下面结合图1和图2对本公开的机械臂协同作业系统进行示例性说明,图1示出了本公开的机械臂系统作业系统的一个实施例的架构示意图,图2示出了本公开的机械臂协同作业系统中的控制器控制机械臂的流程示意图。
如图1所示,机械臂协同作业系统包括:包括多个控制器和机器人个体。其中,不同的控制器对应控制不同的机器人个体,每个机器人个体包括一个或多个机械臂。
在本实施例中,每个机器人个体可以表征一个操控用户,则不同的控制器分别对应不同的操控用户,控制器通过通知机器人个体的机械臂的动作来完成操控用户想要实现的行为。例如在图1中,机械臂130和机械臂140属于同一个机器人个体(图中未示出),该机器人个体可以表征操控用户110;同时,机械臂170和机械臂180则属于另一个机器人个体(图中未示出),该机器人个体则对应操控用户150。控制器120可以控制机械臂130和140来实现操控用户110的想要实现的行为;控制器160可以控制机械臂170和180来实现操控用户150想要实现的行为。
本实施例中的控制器可以通过图2所示的流程实现操控用户的操控指令,该流程包括以下步骤:
步骤210、接收操控指令。
作为示例,控制器可以设置有用户交互模块,用于接收操控用户的操控指令。作为示例,用户交互模块可以是可视化的操作界面,例如触摸屏或平板电脑等。
在另一个示例中,控制器还可以接收上位电子设备发送的操控指令,例如在桌面游戏场景中,桌面游戏的游戏中心可以根据游戏策略和当前游戏进度,自动生成操控指令,并向控制器发送该操控指令,以指示机器人个体实现对应的行为。
步骤220、基于操控指令,从控制器对应的机械臂中确定出响应操控指令的一个或多个目标机械臂。
在本实施例中,控制器中可以预先设置有目标机械臂的选取策略,例如可以根据机械臂当前的位置和姿态,选取距离目标最近或运动轨迹最短的机械臂为目标机械臂;或者,还可以预先为多个机械臂分别设置不同的功能,然后根据功能与操控指令的对应关系,选取目标机械臂。
步骤230、将操控指令解析成目标机械臂的运动指令。
在本实施例中,操控指令可以是不涉及具体代码的抽象指令,例如可以是表征机械臂行为的指令:抓取、放置、移动等;再例如,还可以结合具体的应用场景对操控指令进行设定,例如加工场景中的焊接、换刀等。
运动指令是用于控制机械臂运动的底层控制指令,通常可以是机械臂中各个关节在各个时刻的角度信息。机械臂的执行装置可以根据各个时刻的关节角度,对各个关节的伺服电机进行控制,以此控制机械臂的运动。
步骤240、通过预设的底层控制通信接口,将运动指令发送至目标机械臂,以指示目标机械臂实现操控指令表征的目标行为。
在本实施例中,控制器中可以设置有多个底层控制通信接口,每个机械臂对应一个底层控制通信接口。通过底层控制通信接口,控制器可以将运动指令发送至目标机械臂。
本公开的实施例提供的机械臂协同作业系统,不同的控制器对应控制不同的机器人个体,每个机器人个体包括一个或多个机械臂。控制器接收到操控指令时,可以从对应的机械臂中确定出一个或多个目标机械臂,并将操控指令解析成目标机械臂的运动指令。然后通过预设的底层控制通信接口,将运动指令发送至目标机械臂,以指示目标机械臂实现操控指令表征的目标行为。提出了一种去中心化的机械臂协同作业系统,通过多个相对独立的控制器分别控制多个机械臂,可以将多机械臂协同作业时复杂的控制任务分离成多个相对简单的控制任务,从而降低了多机械臂协同作业时的开发难度,并提高了多机械臂协同作业系统的灵活度。
在本公开的一些实施例中,控制器中预先封装有上层通信协议和控制期间通信协议;控制器还包括上层通信接口和统一控制器接口,其中,上层通信接口基于上层通信协议构建,用于接收操控指令;统一控制器接口基于控制器间通信协议构建,用于与其他控制器进行通信。
在本实施例中,不同的通信接口之间是相互独立的,以免造成干扰。例如上层通信接口可以面向操控用户或上位的电子设备,用于接收操控指令;而统一控制器接口对于操控用户是不可见的,用于控制器之间的内部协调服务。
通过不同的通信接口,控制器可以与不同的对象进行通信,例如通过上层通信接口接收操控指令;不同的控制器之间可以通过统一控制器接口进行通信,例如可以在不同的控制器之间交换协同作业的指令和数据,以此可以实现不同机器人个体之间的协同作业。
在本实施例的一个优选的实施方式中,当操控指令包括与其他机器人个体的交互请求时,控制器还用于:从操控指令中解析出交互请求以及待交互的机器人个体对应的目标控制器;通过统一控制器接口将交互请求发送至目标控制器,以指示目标控制器控制的机器人个体的机械臂实现交互请求表征的交互行为。
在一个具体的示例中,本实施例中的机械臂协同作业系统可以应用于桌面游戏,例如桌面麻将。用户可以通过控制器操控机械臂实现麻将游戏中的行为,例如摸牌、出牌等。每个用户对应一个控制器,每个控制器可以控制两个机械臂。当用户A需要对用户B进行杠牌操作时,用户A可以向控制器1下达“对B杠牌”的操控指令,控制器1接收到该指令后,可以将用户B对应的控制器2确定为目标控制器,同时确定被杠的牌所在的位置。当被杠的牌距离超过机械臂的运动范围时,需要用户B控制的机械臂将被杠的牌递到特定位置,然后再由用户A控制的机械臂从特定位置接取被杠的牌。由此,控制器1可以从“对B杠牌”这一操控指令中解析出“递牌”的交互请求,然后将该交互请求发送至控制器2,由控制器2将“递牌”的交互请求转化为机械臂的运动指令,并控制机械臂将被杠的牌移动到特定位置。
在本实施方式中,控制器可以将从操控指令中解析出待交互的机器人个体对应的目标控制器和交互请求,然后通过统一控制器接口将交互请求发送至目标控制器,以指示目标控制器控制机械臂完成交互行为,可以简化机械臂协同作业系统的操作,并进一步提高机械臂协同作业系统的灵活性。
在本实施例的一些可选的实施方式中,控制器可以通过图3所示的流程控制机械臂实现交互行为,该流程包括以下步骤:
步骤310、通过统一控制器接口,接收其他控制器发送的交互请求,并从控制器控制的机械臂中确定出响应该交互请求的交互机械臂。
在本实施例中,通过统一控制器接口,控制器既可以向其他控制器发送交互请求,此时控制器为交互请求的发送方;也可以接收其他控制器发送的交互请求,此时控制器为交互请求的响应方。
当控制器接收到交互请求时,可以根据交互请求所表征的行为确定响应该行为的交互机械臂。
步骤320、将接收到的交互请求解析成交互机械臂的运动指令。
步骤330、通过底层控制接口,将运动指令发送至交互机械臂,以指示交互机械臂实现交互请求表征的交互行为。
继续结合上述示例进行说明,控制器2接收到“递牌”的交互请求时,可以将距离被杠的牌较近的机械臂确定为交互机械臂,然后根据被杠的牌所处的位置、特定位置以及交互机械臂在当前时刻的位姿,将“递牌”的交互请求解析成交互机械臂的运动指令,然后通过底层控制通信接口将运动指令发送至交互机械臂,由交互机械臂将被杠的牌移动到特定位置。
作为示例,解析过程可以包括:根据被杠的牌所处的位置和特定位置确定“递牌”行为的起点位置和终点位置,该起点位置和该终点位置即目标机械臂的末端执行器的起点位置和终点位置。然后结合交互机械臂在当前时刻为位姿,确定末端执行器的运动轨迹;之后,基于运动轨迹,采用逆运动学算法,确定交互机械臂的各关节在各个时刻的关节角,即得到交互机械臂的运动指令。
在本实现方式中,当控制器接收到其他控制器发送的交互请求时,可以将接收到的交互请求解析成交互机械臂的运动指令,以此实现交互请求表征的交互行为。无需操控用户的操作,即可响应其他操控用户的交互请求,可以提高机械臂协同作业系统的智能程度。
更进一步的,在实现交互行为的过程中,控制器还用于:获取交互机械臂在当前时刻的状态信息,并通过统一控制器接口向交互请求的发送方或响应方反馈状态信息,状态信息至少包括交互机械臂的位姿信息。
在本实施例中,协同执行交互行为的两个或多个控制器之间可以通过统一控制器接口进行信息交互。控制器可以根据各方机械臂的状态信息,确定自身控制的机械臂的运动策略,例如,协同执行交互行为的各方机械臂可以同时执行交互动作,也可以交替执行交互动作,还可以顺序执行交互动作。通过交换机械臂的状态信息,有助于提高协同作业的灵活性以及不同机械臂之间动作的协调性和可靠性。
可选的,状态信息还可以包括交互动作的进度信息。例如,当上述示例中的控制器2确定其控制的机械臂将牌移动至特定位置时,控制器2向控制器1反馈的状态信息可以包括:机械臂的当前位姿以及“递牌完成”的进度信息;控制器1接收到该反馈信息之后,可以控制对应的机械臂移动至特定位置,并执行夹持动作,以抓取被杠的牌。
在一些实施例中,控制器还设置有仿真通信接口;以及,控制器还用于:响应于接收到仿真测试指令,关闭底层通信接口,并通过仿真通信接口发送运动指令,以利用预设的仿真算法对目标行为进行仿真。
在本实施例中,当接收到仿真测试指令时,控制器可以通过仿真通信接口发送运动指令,然后利用预先确定的仿真算法对目标行为进行仿真。可以利用机械臂协同作业系统的真实参数生成仿真结果,使得仿真结果更接近实际运行结果,从而提高仿真结果的准确度,进而,利用仿真结果可以更准确地评估机械臂协同作业系统的控制方案及相关算法,有助于提高测试的准确度。
接着参考图4,图4示出了本公开的机械臂协同作业系统的一个实施例中生成运动指令的流程示意图,如图4所示,该流程包括以下步骤:
步骤410、从各运动状态机中确定出操控指令对应的目标运动状态机。
在本实施例中,控制器中预设有多个运动状态机(Behavior State Machine,BSM),运动状态机中预存有单元动作组成的动作序列,且不同的运动状态机分别对应不同的操控指令。
其中,单元动作可以表征机械臂的基础动作,例如向上平移、向前移动、夹持、打开夹持装置、保持位置等等。不同的单元动作可以组合成不同的行为,动作序列即表征单元动作的组合方式。例如,利用机械臂移动水杯的行为对应的动作序列依次包括如下单元动作:末端执行器移动至水杯的位置、夹持水杯、末端执行器向上移动以将水杯从桌面抬起、将水杯移动至目标位置的上方、末端执行器向下移动以将水杯放置在桌面上、打开夹持装置、末端执行器移动至初始位置。
可以理解的是,不同的单元动作或相同单元动作采用不同的执行顺序均表征不同的机械臂行为。
在本实施例中,可以根据预先确定的轨迹规划策略,将各种行为拆分为单元动作组成的动作序列,并分别存储在不同的运动状态机中;之后,根据行为与操控指令的对应关系,确定运动状态机与操控指令的对应关系。这样一来,当控制器接收到操控指令之后,可以根据对应关系,确定操控指令对应的目标状态机,此时,目标状态机中预存的动作序列可以用于实现目标行为。
步骤420、基于操控指令,确定目标行为的行为信息。
其中,行为信息至少包括目标机械臂的起点位姿和终点位姿。
结合前述桌面麻将的示例进行举例说明,控制器接收到“对B进行杠牌”的操控指令之后,可以将机械臂当前时刻的位姿确定为起点位姿,将夹持被杠的牌的位置和姿态确定为终点位姿,从而得到了“杠牌”这一目标行为的行为信息。
步骤430、基于行为信息,对目标运动状态机中的动作序列实例化,确定该动作序列中各单元动作的动作信息,得到运动实例。
其中,动作信息至少包括各单元动作的执行时机、起点位置、终点位置和运行速度。
在本实施例中,动作序列中仅包括单元动作类型及其执行顺序,各单元动作何时被执行、动作的起点和终点等信息为待确定参数,因而,动作序列并不能限定目标行为的运动轨迹。
实例化的目的是为了利用运动学原理将行为信息转化为各单元动作的动作信息,以此得到的运动实例可以表征目标行为的运动轨迹。例如夹持行为对应的动作序列依次包括单元动作a、b和c,得到的运动实例中单元动作a的动作信息为:末端执行器从点(x1,y1,z1)移动至点(x2,y2,z2)并保持姿态不变,其执行时机为接收到开始指令,运行速度为0.1m/s;单元动作b的动作信息为动作信息为:末端执行器的姿态调整至待夹持姿态,其执行时机为当末端执行器达到点(x2,y2,z2)时,运行速度为0.1m/s;单元动作c的动作信息为:末端执行器的姿态调整至夹持姿态,执行时机为末端执行器将姿态调整为待夹持姿态后延时10秒,运行速度为0.1m/s。
步骤440、利用预设的轨迹规划算法对运动实例进行处理,确定目标机械臂在各个时刻的关节角信息,得到运动指令。
在本实施例中,关节角信息包括机械臂中各个关节的关节角。
在一个具体的示例中,控制器中可以预存有各运动状态机分别对应的轨迹规划算法,将运动实例作为输入参数,利用目标状态机对应的轨迹规划算法进行计算处理,确定出机械臂的各个关节在各个时刻的关节角信息,即可将运动实例转化为运动指令。
图4所示的实施例,根据操控指令与运动状态机的对应关系,可以将目标行为转化为多个单元动作组成的动作序列,然后通过实例化处理将动作序列转化为运动实例,并利用预设的轨迹规划算法将运动实例转化为运动指令,简化了从抽象的操控指令到机械臂的运动指令的转化过程。
在本实施例的一些可选的实施方式中,机械臂协同作业系统还包括动态链接库,动态链接库中预存有轨迹规划算法;利用预设的轨迹规划算法对运动实例进行处理,确定目标机械臂在各个时刻的关节角信息,得到运动指令,包括:从动态链接库中调用轨迹规划算法,利用轨迹规划算法对运动实例进行处理,确定目标机械臂在各个时刻的关节角信息,得到运动指令。
在本实现方式中,动态链接库可以存储在控制器自带的本地存储空间,也可以存储在外部存储空间中(例如控制器所连接的上位机)。当运动状态机需要将运动实例转为运动指令时,可以从动态链接库中调取轨迹规划算法。
利用动态链接库存储轨迹规划算法,一方面可以将实例化过程与轨迹规划过程分离,便于对轨迹规划算法进行维护;另一方面,可以将轨迹规划算法与机械臂协同作业系统中的其他模块解耦,便于更新,且不会影响其他模块的进程。
进一步的,动态链接库还用于:接收算法更新指令,并根据算法更新指令更新动态链接库。
在本实现方式中,动态链接库可以根据算法更新指令对其中存储的轨迹规划算法进行更新,更新过程不会影响机械臂协同作业系统中的其他进程(例如实例化过程)。更新方式可以包括增加新的轨迹规划算法、删掉或替代就旧的轨迹规划算法。例如当需要对轨迹规划算法进行测试时,只需将待测试的轨迹规划算法导入动态链接库即可,可以简化更新轨迹规划算法的操作流程。
再例如,还可以将整个动态链接库作为更新对象,直接用新的动态链接库替换旧的动态链接库,从而实现轨迹规划算法的更新。
下面结合图5对本公开提供的一种机械臂控制方法进行示例性说明,图5示出了本公开的机械臂控制方法的一个实施例的流程示意图,如图5所示,该流程包括以下步骤:
步骤510、接收发送的操控指令。
步骤520、从机器人个体的机械臂中确定出响应操控指令的目标机械臂,并获取目标机械臂在当前时刻的位姿信息。
步骤530、基于操控指令,确定操控指令表征的目标行为的行为信息。
其中,行为信息包括起目标行为对应的点位姿和终点位姿。
步骤540、从预存的运动状态机中确定出操控指令对应的目标运动状态机,并确定目标运动状态机对应的轨迹规划算法。
步骤550、基于位姿信息和行为信息,对目标运动状态机中预存的动作序列进行实例化处理,得到运动实例。
步骤560、基于预设的轨迹规划算法,将运动实例转化为运动指令。
步骤570、将运动指令发送至目标机械臂,以指示目标机械臂实现操控指令对应的目标行为。
本实施例提供的机械臂控制方法,当接收到操控指令时,可以确定出操控指令对应的目标运动状态机,然后利用目标状态机中预存的动作序列表征操控指令对应的目标行为;之后,通过实例化处理和轨迹规划处理,将动作序列转化为机械臂的运动指令,并发送至响应操控指令的目标机械臂。简化了机械臂的控制方案。
本公开的实施例还提供了一种桌面游戏系统,包括上述任一实施例中的机械臂协同作业系统,其中,不同的控制器分别接收不同玩家的游戏指令,并根据接收到的游戏指令控制机器人个体的机械臂实现玩家的游戏行为。
发明人在实现本公开的过程中发现,机械臂协同作业系统尚未应用到桌面游戏领域。本实施提供的桌面游戏系统,利用机械臂协同作业系统可以将玩家的操控指令转化为机械臂的运动指令,并利用机械臂实现玩家的游戏行为,可以提高用户的游戏体验,并拓展了机械臂协同作业系统的应用领域。
本领域普通技术人员可以理解:以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (9)

1.一种机械臂协同作业系统,其特征在于,包括多个控制器和多个机器人个体,不同的控制器对应控制不同的机器人个体,每个所述机器人个体包括一个或多个机械臂;其中,
所述控制器用于:接收操控指令;基于所述操控指令,从所述控制器对应的机械臂中确定出响应所述操控指令的一个或多个目标机械臂;将所述操控指令解析成所述目标机械臂的运动指令;通过预设的底层控制通信接口,将所述运动指令发送至所述目标机械臂,以指示所述目标机械臂实现所述操控指令表征的目标行为;
其中,所述控制器中预设有多个运动状态机,所述运动状态机中预存有单元动作组成的动作序列,且不同的运动状态机分别对应不同的操控指令;以及,所述控制器通过如下方式得到所述运动指令:
从各所述运动状态机中确定出所述操控指令对应的目标运动状态机;基于所述操控指令,确定所述目标行为的行为信息,所述行为信息至少包括所述目标机械臂的起点位姿和终点位姿;基于所述行为信息,对所述目标运动状态机中的动作序列实例化,确定该动作序列中各单元动作的动作信息,得到运动实例,所述动作信息至少包括各单元动作的执行时机、起点位置、终点位置和运行速度;利用预设的轨迹规划算法对所述运动实例进行处理,确定所述目标机械臂在各个时刻的关节角信息,得到所述运动指令。
2.根据权利要求1所述的机械臂协同作业系统,其特征在于,所述控制器中预先封装有上层通信协议和控制器间通信协议;
所述控制器还包括上层通信接口与统一控制器接口,其中,所述上层通信接口基于所述上层通信协议构建,用于接收操控指令;
所述统一控制器接口基于所述控制器间通信协议构建,用于与其他控制器进行通信。
3.根据权利要求2所述的机械臂协同作业系统,其特征在于,当所述操控指令包括与其他机器人个体的交互请求时,所述控制器还用于:
从所述操控指令中解析出所述交互请求以及待交互的机器人个体对应的目标控制器;
通过所述统一控制器接口将所述交互请求发送至所述目标控制器,以指示所述目标控制器控制的机器人个体的机械臂实现所述交互请求表征的交互行为。
4.根据权利要求3所述的机械臂协同作业系统,其特征在于,所述控制器还用于:
通过所述统一控制器接口,接收其他控制器发送的交互请求,并从所述控制器控制的机械臂中确定出响应该交互请求的交互机械臂;
将接收到的交互请求解析成所述交互机械臂的运动指令;
通过所述底层控制通信接口,将所述运动指令发送至所述交互机械臂,以指示所述交互机械臂实现所述交互请求表征的交互行为。
5.根据权利要求4所述的机械臂协同作业系统,其特征在于,在实现所述交互行为的过程中,所述控制器还用于:
获取所述交互机械臂在当前时刻的状态信息,并通过所述统一控制器接口向所述交互请求的发送方或响应方反馈所述状态信息,所述状态信息至少包括所述交互机械臂的位姿信息。
6.根据权利要求1所述的机械臂协同作业系统,其特征在于,所述控制器还设置有仿真通信接口;以及,所述控制器还用于:
响应于接收到仿真测试指令,关闭所述底层控制通信接口,并通过所述仿真通信接口发送所述运动指令,以利用预设的仿真算法对所述目标行为进行仿真。
7.根据权利要求1所述的机械臂协同作业系统,其特征在于,还包括动态链接库,所述动态链接库中预存有轨迹规划算法;
利用预设的轨迹规划算法对所述运动实例进行处理,确定所述目标机械臂在各个时刻的关节角信息,得到所述运动指令,包括:
从所述动态链接库中调用所述轨迹规划算法,利用所述轨迹规划算法对所述运动实例进行处理,确定所述目标机械臂在各个时刻的关节角信息,得到所述运动指令。
8.根据权利要求7所述的机械臂协同作业系统,其特征在于,所述动态链接库还用于:接收算法更新指令,并根据所述算法更新指令更新所述动态链接库。
9.一种机械臂控制方法,应用于机械臂协同作业系统的控制器中,其特征在于,包括:
接收操控指令;
从机器人个体包括的机械臂中确定出响应所述操控指令的目标机械臂,并获取所述目标机械臂在当前时刻的位姿信息;
基于所述操控指令,确定所述操控指令对应的目标行为的行为信息,所述行为信息包括起点位姿和终点位姿;
从预存的运动状态机中确定出所述操控指令对应的目标运动状态机;
基于所述位姿信息和所述行为信息,对所述目标运动状态机中预存的动作序列进行实例化处理,得到运动实例;
基于预设的轨迹规划算法,将所述运动实例转化为运动指令;
其中,所述控制器中预设有多个运动状态机,所述运动状态机中预存有单元动作组成的动作序列,且不同的运动状态机分别对应不同的操控指令;以及,所述控制器通过如下方式得到所述运动指令:从各所述运动状态机中确定出所述操控指令对应的目标运动状态机;基于所述操控指令,确定所述目标行为的行为信息,所述行为信息至少包括所述目标机械臂的起点位姿和终点位姿;基于所述行为信息,对所述目标运动状态机中的动作序列实例化,确定该动作序列中各单元动作的动作信息,得到运动实例,所述动作信息至少包括各单元动作的执行时机、起点位置、终点位置和运行速度;利用预设的轨迹规划算法对所述运动实例进行处理,确定所述目标机械臂在各个时刻的关节角信息,得到所述运动指令;
将所述运动指令发送至所述目标机械臂,以指示所述目标机械臂实现所述操控指令对应的目标行为。
CN202210669830.8A 2022-06-14 2022-06-14 机械臂协同作业系统及机械臂控制方法 Active CN114932555B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210669830.8A CN114932555B (zh) 2022-06-14 2022-06-14 机械臂协同作业系统及机械臂控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210669830.8A CN114932555B (zh) 2022-06-14 2022-06-14 机械臂协同作业系统及机械臂控制方法

Publications (2)

Publication Number Publication Date
CN114932555A CN114932555A (zh) 2022-08-23
CN114932555B true CN114932555B (zh) 2024-01-05

Family

ID=82866147

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210669830.8A Active CN114932555B (zh) 2022-06-14 2022-06-14 机械臂协同作业系统及机械臂控制方法

Country Status (1)

Country Link
CN (1) CN114932555B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115107041A (zh) * 2022-08-29 2022-09-27 四川天启智能科技有限公司 一种基于视听协同的麻将机器人系统及其使用方法
CN115570558B (zh) * 2022-10-28 2023-07-11 武汉恒新动力科技有限公司 面向被操控对象集群的体感协同遥操作系统及方法
CN117032262B (zh) * 2023-09-12 2024-03-19 南栖仙策(南京)科技有限公司 机器控制方法、装置、电子设备及存储介质

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6419409A (en) * 1987-07-15 1989-01-23 Hitachi Ltd Control method for robot arm
JPH03182908A (ja) * 1989-12-12 1991-08-08 Sony Corp ロボットの数値制御装置
CN101286058A (zh) * 2008-04-24 2008-10-15 上海交通大学 机器人模块化分布式自适应控制系统及方法
CN103770122A (zh) * 2012-10-22 2014-05-07 株式会社安川电机 机器人控制器和机器人系统
CN106826838A (zh) * 2017-04-01 2017-06-13 西安交通大学 一种基于Kinect视觉深度传感器的交互仿生机械臂控制方法
CN109890571A (zh) * 2016-11-15 2019-06-14 Abb瑞士股份有限公司 包括多个机器人和多个安全传感器的工业机器人系统
CN110154031A (zh) * 2019-06-20 2019-08-23 西北工业大学 一种多工业机器人协同焊接控制方法
CN110605711A (zh) * 2018-06-14 2019-12-24 中瑞福宁机器人(沈阳)有限公司 一种控制协作机器人抓取物体的方法、装置及系统
CN110815161A (zh) * 2019-12-13 2020-02-21 南京工业职业技术学院 电磁式可调口径的半球形垫片拾取工具
CN111604890A (zh) * 2019-12-30 2020-09-01 合肥工业大学 一种适用于外骨骼机器人的运动控制方法
CN112894827A (zh) * 2021-02-25 2021-06-04 中国科学院长春光学精密机械与物理研究所 一种机械臂运动控制方法、系统、装置及可读存储介质
CN114063624A (zh) * 2021-10-22 2022-02-18 中国船舶重工集团公司第七一九研究所 一种爬游无人潜水器多模式规划运动控制器及其控制方法
CN114419154A (zh) * 2022-01-17 2022-04-29 北京科技大学 基于视觉与人机协同的机械臂双模式控制方法及系统
CN114473324A (zh) * 2022-02-21 2022-05-13 哈尔滨工业大学(深圳) 基于示教学习的多机械臂协同拼接焊接控制方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003078113A1 (fr) * 2002-03-15 2003-09-25 Sony Corporation Systeme de commande de robot, procede correspondant, et robot
US7860609B2 (en) * 2005-05-06 2010-12-28 Fanuc Robotics America, Inc. Robot multi-arm control system
KR20220100882A (ko) * 2019-10-18 2022-07-18 오프 월드 인코포레이티드 산업용 로봇용 시스템 및 방법
US11224972B2 (en) * 2019-11-22 2022-01-18 Fanuc Corporation State machine for dynamic path planning
WO2020233050A1 (zh) * 2019-11-26 2020-11-26 浙江大学 一种双足机器人不平整路面动态跑步步态实现方法

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6419409A (en) * 1987-07-15 1989-01-23 Hitachi Ltd Control method for robot arm
JPH03182908A (ja) * 1989-12-12 1991-08-08 Sony Corp ロボットの数値制御装置
CN101286058A (zh) * 2008-04-24 2008-10-15 上海交通大学 机器人模块化分布式自适应控制系统及方法
CN103770122A (zh) * 2012-10-22 2014-05-07 株式会社安川电机 机器人控制器和机器人系统
CN109890571A (zh) * 2016-11-15 2019-06-14 Abb瑞士股份有限公司 包括多个机器人和多个安全传感器的工业机器人系统
CN106826838A (zh) * 2017-04-01 2017-06-13 西安交通大学 一种基于Kinect视觉深度传感器的交互仿生机械臂控制方法
CN110605711A (zh) * 2018-06-14 2019-12-24 中瑞福宁机器人(沈阳)有限公司 一种控制协作机器人抓取物体的方法、装置及系统
CN110154031A (zh) * 2019-06-20 2019-08-23 西北工业大学 一种多工业机器人协同焊接控制方法
CN110815161A (zh) * 2019-12-13 2020-02-21 南京工业职业技术学院 电磁式可调口径的半球形垫片拾取工具
CN111604890A (zh) * 2019-12-30 2020-09-01 合肥工业大学 一种适用于外骨骼机器人的运动控制方法
CN112894827A (zh) * 2021-02-25 2021-06-04 中国科学院长春光学精密机械与物理研究所 一种机械臂运动控制方法、系统、装置及可读存储介质
CN114063624A (zh) * 2021-10-22 2022-02-18 中国船舶重工集团公司第七一九研究所 一种爬游无人潜水器多模式规划运动控制器及其控制方法
CN114419154A (zh) * 2022-01-17 2022-04-29 北京科技大学 基于视觉与人机协同的机械臂双模式控制方法及系统
CN114473324A (zh) * 2022-02-21 2022-05-13 哈尔滨工业大学(深圳) 基于示教学习的多机械臂协同拼接焊接控制方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于有限状态机的集群式硅片传输控制系统设计;王海升;穆海华;尹文生;;制造业自动化(第02期);全文 *

Also Published As

Publication number Publication date
CN114932555A (zh) 2022-08-23

Similar Documents

Publication Publication Date Title
CN114932555B (zh) 机械臂协同作业系统及机械臂控制方法
De Giorgio et al. Human-machine collaboration in virtual reality for adaptive production engineering
EP1310844B1 (en) Simulation device
Sun et al. A new mixed-reality-based teleoperation system for telepresence and maneuverability enhancement
JP6671694B1 (ja) 機械学習装置、機械学習システム、データ処理システム及び機械学習方法
Gutierrez et al. IMA-VR: A multimodal virtual training system for skills transfer in Industrial Maintenance and Assembly tasks
JP2019188530A (ja) ロボットのシミュレーション装置
KR20160002329A (ko) 로봇 시뮬레이터 및 로봇 시뮬레이터의 파일 생성 방법
Marín et al. The UJI online robot: An education and training experience
Shamaine et al. RoSTAR: ROS-based telerobotic control via augmented reality
Pedersen et al. Gesture-based extraction of robot skill parameters for intuitive robot programming
CN114516060A (zh) 用于控制机器人装置的设备和方法
Elhajj et al. Modeling and control of internet based cooperative teleoperation
CN114473324B (zh) 基于示教学习的多机械臂协同拼接焊接控制方法及系统
Chen et al. Development of a virtual teaching pendant system for serial robots based on ROS-I
Liu et al. Coordinated fuzzy control of robotic arms with actuator nonlinearities and motion constraints
JP2019171498A (ja) ロボットプログラム実行装置、ロボットプログラム実行方法、プログラム
JPWO2019064919A1 (ja) ロボット教示装置
Grasshoff et al. 7dof hand and arm tracking for teleoperation of anthropomorphic robots
KR20230134328A (ko) 로봇 교시를 위한 장치 및 방법
WO2022254538A1 (ja) ロボットシミュレーション装置
CN117021072A (zh) 一种基于虚拟现实技术的冗余机械臂交互方法及系统
JP7276359B2 (ja) 動作指令生成装置、機構制御システム、コンピュータプログラム、動作指令生成方法及び機構制御方法
JP7167925B2 (ja) ロボット教示装置
Marín et al. Multirobot Internet-based architecture for telemanipulation: experimental validation

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