申请号:CN202410341311.8
当前申请(专利权)人:人工智能与数字经济广东省实验室(广州)
申请日:2024-03-25
授权日:2025-04-18
专利类型:授权发明
法律状态/事件:授权
发明人:张银炎 | 刘可欣
摘要:本发明公开了一种分布式多冗余机械臂目标追踪方法、装置及存储介质,该方法包括步骤1:采用全分布式多赢者通吃网络生成决策变量,确定前k个与目标距离最短的冗余机械臂来执行目标跟踪的任务;k为正整数;步骤2:冗余机械臂通过步骤1中的决策变量并结合冗余机械臂控制率来计算机械臂末端的位置;步骤3:根据步骤2计算得到的机械臂末端的位置来更新冗余机械臂末端位置,接着执行步骤1,直至完成追踪到目标。本发明方法不仅简化了控制流程,提高了系统的鲁棒性和可扩展性,而且降低了维护成本,并提升了整体效率,其优秀的性能和广泛的应用潜力使其具有良好的产业化前景。
摘要附图:
权利要求:
1.一种分布式多冗余机械臂目标追踪方法,其特征在于,包括:
步骤1:采用全分布式多赢者通吃网络生成决策变量,确定前k个与目标距离最短的冗余机械臂来执行目标跟踪的任务;k为正整数;
步骤2:冗余机械臂通过步骤1中的决策变量并结合冗余机械臂控制率来计算机械臂末端的位置;
步骤3:根据步骤2计算得到的机械臂末端的位置来更新冗余机械臂末端位置,接着执行步骤1,直至完成追踪到目标;
所述步骤1包括:
从n个冗余机械臂中选出距离目标最近的前k个机械臂控制其进行目标跟踪任务,其他冗余机械臂静止不动,并采用全分布式多赢者通吃网络生成决策变量,所述全分布式多赢者通吃网络为式(1)所示:
其中,PΩ(·)如(2)所示:
其中,zi是全分布式多赢者通吃网络的输出也就是决策变量,ε>0∈R,α是给定的参数;qi和λi是中间变量,辅助计算出决策变量zi;n个机械臂通过传感器或无线网络构成拓扑连接;Ν(i)是冗余机械臂i的邻居节点集合;aij是通信拓扑图邻接矩阵中第i行第j列的元素;vi是全分布式多赢者通吃网络的输入;n为大于0的自然数;ε是全分布式多赢者通吃网络中一个给定的参数,R表示实数集;
所述步骤1还包括:
将选择前k个最大输入转化为选择前个k离目标距离最小的冗余机械臂,公式(1)的输入vi如下:
式中ui表示第i个冗余机械臂的末端坐标,ut是目标的坐标;
zi的定义如式(4)所示:
在所述步骤2中,冗余机械臂控制率通过下方式得到:
根据机械臂的运动,ui表示为:
ui=fi(θi) (5)
表示具有p个关节角的冗余机械臂的关节角度向量;对于第i个机械臂,fi(·)是一个具有已知结构和参数的可微非线性函数,沿着vi的梯度下降,使得冗余机械臂的末端位置不断接近目标,即:
其中,Ji是机械臂i的雅可比矩阵;用表示冗余机械臂关节角的速度,通过控制冗余机械臂关节角的速度能够控制机械臂的末端位置,得到如下动力学公式:
结合步骤1中生成的决策变量zi得到最终的冗余机械臂控制率:
2.如权利要求1所述的分布式多冗余机械臂目标追踪方法,其特征在于,结合式(1)和(8)得到多冗余机械臂的目标追踪控制方案:
其中,zi是决策变量,当zi=1时,表示第i个机械臂是距离目标最近的前k个机械臂,执行目标追踪的任务;否则,zi=0,机械臂保持不动;qi和λi是中间变量,辅助计算出决策变量zi,是冗余机械臂关节角的速度向量。
3.如权利要求2所述的分布式多冗余机械臂目标追踪方法,其特征在于,根据欧拉差分,连续时间算法公式(9)扩展到离散时间中;令m∈0,1,2,…表示采样指数,h>0表示采样间隔;
其中,
每个机械臂根据公式(10)更新自己的末端位置,以此来追踪目标。
4.一种分布式多冗余机械臂目标追踪装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3中任一所述方法的步骤。
5.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3中任一所述方法的步骤。
说明书:
技术领域
[0001]本发明涉及冗余机械臂控制领域。具体涉及一种分布式多冗余机械臂目标追踪方法、装置及存储介质。
背景技术
[0002]在各类工业生产和物流运输场景中,常常需要使用冗余机械臂来跟踪和捕捉零部件或物品。因此,冗余机械臂的目标追踪控制显得极为关键。它需要借助精密的传感器和算法,以实现高精度的控制。这种控制不仅提升了生产效率和运输效率,还能降低人力成本,减少人为误差的风险。通过冗余机械臂的运用,我们能够优化工作流程,提高物流处理能力,并且更好地适应不同的环境和任务需求,为工业生产和物流运输领域注入了新的活力。
[0003]目前对于多冗余机械臂的目标追踪控制方法主要是集中式的,因为它们都需要通过收集所有冗余机械臂的信息。这种方法的单点鲁棒性和可扩展性较差,并且收集所有冗余机械臂的信息不利于隐私数据的保护。
发明内容
[0004]为了解决背景技术所存在的至少一技术问题,本发明提供一种分布式多冗余机械臂目标追踪方法、装置及存储介质。
[0005]为实现上述目的,本发明的技术方案是:
[0006]第一方面,本发明提供一种分布式多冗余机械臂目标追踪方法,包括:
[0007]步骤1:采用全分布式多赢者通吃网络生成决策变量,确定前k个与目标距离最短的冗余机械臂来执行目标跟踪的任务;k为正整数;
[0008]步骤2:冗余机械臂通过步骤1中的决策变量并结合冗余机械臂控制率来计算机械臂末端的位置;
[0009]步骤3:根据步骤2计算得到的机械臂末端的位置来更新冗余机械臂末端位置,接着执行步骤1,直至完成追踪到目标。
[0010]第二方面,本发明提供一种分布式多冗余机械臂目标追踪装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
[0011]第三方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上所述方法的步骤。
[0012]本发明与现有技术相比,其有益效果在于:
[0013]本发明所提供的分布式多冗余机械臂目标追踪控制方法不仅简化了控制流程,提高了系统的鲁棒性和可扩展性,而且降低了维护成本,并提升了整体效率,其优秀的性能和广泛的应用潜力使其具有良好的产业化前景,预示着在自动化、智能制造、服务机器人等众多领域都将有广泛的应用。
附图说明
[0014]图1为本发明实施例1提供的分布式多冗余机械臂目标追踪控制方法的流程图;
[0015]图2为多冗余机械臂目标追踪控制通信拓扑图;
[0016]图3为多冗余机械臂目标追踪控制步骤流程图;
[0017]图4为本发明实施例2提供的分布式多冗余机械臂目标追踪控制装置的组成示意图。
具体实施方式
[0018]下面结合附图和实施例对本发明的技术方案做进一步的说明。
[0019]实施例1:
[0020]参阅图1所示,本实施例提供的分布式多冗余机械臂目标追踪方法主要包括如下步骤:
[0021]步骤1:采用全分布式多赢者通吃网络生成决策变量,确定前k个与目标距离最短的冗余机械臂来执行目标跟踪的任务;k为正整数。
[0022]如此,通过上述的步骤,能够确保机械臂的高效利用,并且可以快速适应目标位置的变化。与传统目标追踪控制方案不同,此方法步骤在控制过程中不需要复杂的中央协调,而是通过机械臂之间的简单辅助变量交换来实现目标追踪。
[0023]步骤2:冗余机械臂通过步骤1中的决策变量并结合冗余机械臂控制率来计算机械臂末端的位置;
[0024]步骤3:根据步骤2计算得到的机械臂末端的位置来更新冗余机械臂末端位置,接着执行步骤1,直至完成追踪到目标。
[0025]在一具体实施例中,上述步骤1包括:
[0026]从n个冗余机械臂中选出距离目标最近的前k个机械臂控制其进行目标跟踪任务,其他冗余机械臂静止不动。与所有机械臂都追踪一个目标相比,这样的目标追踪方法很大程度地提高了冗余机械臂的工作效率。为了生成决策变量,采用公式(1)中的全分布式多赢者通吃(k-winners take all,k-WTA)网络。所使用的k-WTA网络(1)具有分布式、快速收敛,弱收敛条件和可扩展性的特点,性质优于其他的分布式k-WTA网络。
[0027]
[0028]其中,PΩ(·)如(2)所示:
[0029]
[0030]其中zi是k-WTA网络的输出也就是决策变量,ε>0∈R,α是给定的参数,qi和λi是中间变量,辅助计算出决策变量zi;n个机械臂通过传感器或无线网络构成拓扑连接;Ν(i)是冗余机械臂i的邻居节点集合;aij是通信拓扑图邻接矩阵中第i行第j列的元素;vi是k-WTA网络的输入。
[0031]如此,从公式(1)中可以看出每个机械臂借助邻居节点的λj和qj,可以独立计算自己的决策变量z_i,因此消除了对中心节点的依赖,是全分布式的方法。单点鲁棒性和可扩展性是分布式方案所具有的优势。也就是说,本方法是首个全分布式冗余机械臂目标追踪任务分配方案,它消除了对中心节点的依赖,每个机械臂都可以独立工作,并与邻近的机械臂进行协作。这种分布式特性不仅减少了系统的复杂性,还提高了系统的鲁棒性。即使某个机械臂发生故障,也不会影响整个系统的运行。此外,本方法还具有出色的可扩展性。当新增机器人需要加入系统时,它只需与相邻的机器人进行信息交换即可,无需对整个系统进行复杂的重新配置。这种特性使得系统能够轻松适应未来机器人数量增加的需求。
[0032]为了让该k-WTA模型适用于冗余机械臂的目标追踪控制,将选择前k个最大输入转化为选择前个k离目标距离最小的冗余机械臂,所以定义的公式(1)输入vi如下:
[0033]
[0034]式中ui表示第i个冗余机械臂的末端坐标,ut是目标的坐标;因此,zi的定义如公式(4)所示:
[0035]
[0036]在一具体实施例中,在上述步骤2中,冗余机械臂控制率的设计过程如下:
[0037]根据机械臂的运动,ui可以表示为:
[0038]ui=fi(θi) (5)
[0039]表示具有p个关节角的冗余机械臂的关节角度向量;对于第i个机械臂,fi(·)是一个具有已知结构和参数的可微非线性函数;沿着vi的梯度下降,可以使得冗余机械臂的末端位置不断接近目标,即:
[0040]
[0041]其中,Ji是机械臂i的雅可比矩阵;用表示冗余机械臂关节角的速度,通过控制冗余机械臂关节角的速度可以控制机械臂的末端位置,得到如下动力学公式:
[0042]
[0043]结合步骤1中生成的决策变量zi得到最终的冗余机械臂控制律:
[0044]
[0045]结合(1)和(8),可以得到多冗余机械臂的目标追踪控制方案:
[0046]
[0047]其中,zi是决策变量,当zi=1时,表示第i个机械臂是距离目标最近的前k个机械臂,执行目标追踪的任务。否则,zi=0,机械臂保持不动。qi和是中间变量,辅助计算出决策变量zi,是冗余机械臂关节角的速度向量
[0048]根据欧拉差分,连续时间算法公式(9)也可以扩展到离散时间中,令m∈0,1,2,…表示采样指数,h>0表示采样间隔,h应设置为较小值;
[0049]
[0050]其中,
[0051]因此每个机械臂可以根据公式(10)更新自己的末端位置,以此来追踪目标。
[0052]下面结合一个应用场景实例来对本方法进行进一步的说明:
[0053]如图2所示,为所提出多冗余机械臂目标追踪控制拓扑图。以图2为例,4个冗余机械臂相互通信的组成无向连通图。在4个冗余机械臂中选择距离目标最近的前2个冗余机械臂对目标进行追踪,即n=4,k=2。根据通信拓扑图,可以得到多冗余机械臂系统的邻接矩阵A=[aij],当|i-j|≤1时,aij=1,否则aij=0。所以对于图2的拓扑图邻接矩阵A如下:
[0054]
[0055]由邻接矩阵A可以的出各个节点的邻居节集合N(i)。
[0056]图3为多冗余机械臂目标追踪控制步骤流程图。根据图3,首先对机械臂的参数和变量进行初始化,设置参数n=4,k=2,α=0.1,ε=1e-3,c0=10,m=0,h=1e-4。设置初始变量其中i=1,2,…n。
[0057]随后重复以下步骤:
[0058]1)通过冗余机械臂传感器获得冗余机械臂i的末端位置ui[m]和目标的位置ut[m]。
[0059]2)计算出通过vi[m],借助邻居机械臂j的中间信息通过k-WTA网络计算出冗余机械臂i的决策变量以及中间变量
[0060]3)通过冗余机械臂控制率,计算出冗余机械臂的关节角速度
[0061]4)冗余机械臂按照计算出的关节角速度移动。
[0062]5)令m=m+1。
[0063]直到追踪到目标为止,即
[0064]本发明提出了一种创新的分布式多冗余机械臂目标追踪控制方法,它具有显著的优点,为机械臂技术的发展和实际应用带来了新的可能性。
[0065]首先,本方法能够从n个冗余机械臂中智能地选出距离目标最近的前k个冗余机械臂来追踪目标。这种选择机制确保了机械臂的高效利用,并且可以快速适应目标位置的变化。与传统目标追踪控制方案不同,我们的方法在控制过程中不需要复杂的中央协调,而是通过机械臂之间的简单辅助变量交换来实现目标追踪。
[0066]其次,本方法是首个全分布式冗余机械臂目标追踪任务分配方案,它消除了对中心节点的依赖,每个机械臂都可以独立工作,并与邻近的机械臂进行协作。这种分布式特性不仅减少了系统的复杂性,还提高了系统的鲁棒性。即使某个机械臂发生故障,也不会影响整个系统的运行。
[0067]此外,本方法还具有出色的可扩展性。当新增机器人需要加入系统时,它只需与相邻的机器人进行信息交换即可,无需对整个系统进行复杂的重新配置。这种特性使得系统能够轻松适应未来机器人数量增加的需求。
[0068]综上所述,本发明所提供的分布式多冗余机械臂目标追踪控制方法不仅简化了控制流程,提高了系统的鲁棒性和可扩展性,而且降低了维护成本,并提升了整体效率。其优秀的性能和广泛的应用潜力使其具有良好的产业化前景,预示着在自动化、智能制造、服务机器人等众多领域都将有广泛的应用。
[0069]实施例2:
[0070]参阅图4所示,本实施例提供的分布式多冗余机械臂目标追踪装置包括处理器41、存储器42以及存储在该存储器42中并可在所述处理器41上运行的计算机程序43,例如分布式多冗余机械臂目标追踪程序。该处理器41执行所述计算机程序43时实现上述实施例1步骤,例如图1所示的步骤。
[0071]示例性的,所述计算机程序43可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器42中,并由所述处理器41执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序43在所述分布式多冗余机械臂目标追踪装置中的执行过程。
[0072]所称处理器41可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0073]所述存储器42可以是所述分布式多冗余机械臂目标追踪装置的内部存储元,例如分布式多冗余机械臂目标追踪装置的硬盘或内存。所述存储器42也可以是所述分布式多冗余机械臂目标追踪装置的外部存储设备,例如所述分布式多冗余机械臂目标追踪装置上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器42还可以既包括所述分布式多冗余机械臂目标追踪装置的内部存储单元也包括外部存储设备。所述存储器42用于存储所述计算机程序以及所述分布式多冗余机械臂目标追踪装置所需的其他程序和数据。所述存储器42还可以用于暂时地存储已经输出或者将要输出的数据。
[0074]实施例3:
[0075]本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现实施例1所述方法的步骤。
[0076]所示计算机可读介质可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理再以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0077]上述实施例只是为了说明本发明的技术构思及特点,其目的是在于让本领域内的普通技术人员能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡是根据本发明内容的实质所做出的等效的变化或修饰,都应涵盖在本发明的保护范围内。