CN114643582A - 一种面向冗余机械臂的无模型关节容错控制方法及装置 - Google Patents

一种面向冗余机械臂的无模型关节容错控制方法及装置 Download PDF

Info

Publication number
CN114643582A
CN114643582A CN202210479422.6A CN202210479422A CN114643582A CN 114643582 A CN114643582 A CN 114643582A CN 202210479422 A CN202210479422 A CN 202210479422A CN 114643582 A CN114643582 A CN 114643582A
Authority
CN
China
Prior art keywords
redundant
mechanical arm
joint
equation
redundant mechanical
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
CN202210479422.6A
Other languages
English (en)
Other versions
CN114643582B (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.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
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 Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN202210479422.6A priority Critical patent/CN114643582B/zh
Publication of CN114643582A publication Critical patent/CN114643582A/zh
Application granted granted Critical
Publication of CN114643582B publication Critical patent/CN114643582B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

本发明公开了一种面向冗余机械臂的无模型关节容错控制方法及装置,方法包括:建立冗余机械臂的逆向运动学方程,并建立关节容错和轨迹追踪的约束不等式;根据逆向运动学方程和约束不等式,得到冗余机械臂的逆向运动学微分方程;使用零化神经网络建立估计雅可比矩阵的微分方程,采用离散化零化神经动力学方法估计冗余机械臂末端的雅可比矩阵的估计值;联立逆向运动学微分方程和雅可比矩阵的估计值,并使用离散方程对联立的结果进行离散处理,得到在碰撞避免运动中冗余机械臂在任意时刻各关节的期望位置;根据期望位置控制冗余机械臂完成无模型关节容错任务。本发明的精确度高且适应性强,可广泛应用于机械臂控制技术领域。

Description

一种面向冗余机械臂的无模型关节容错控制方法及装置
技术领域
本发明涉及机械臂控制技术领域,尤其是一种面向冗余机械臂的无模型关节容错控制方法及装置。
背景技术
在现代制造业中,冗余机械臂已经得到了广泛的运用。而冗余机械臂的关节容错控制则是一种非常常见的应用场景。在冗余机械臂的实际应用场景中,经常会出现某个甚至是多个关节失效的情况。此时如果仍让冗余机械臂按之前的控制方案运行,将无法顺利完成原定的轨迹追踪任务。但由于各种情况,对冗余机械臂关节的维修通常是昂贵且不必要的,在一些特殊情况下甚至是不可能的。冗余机械臂由于其冗余性,能够实现在某些关节失效的情况下,利用冗余关节补偿损坏关节的自由度,从而完成预期的轨迹追踪任务。这即为冗余机械臂的关节容错控制。目前对于冗余机械臂的关节容错控制算法已经有许多研究,主要方向为保持失效的关节速度为零,但是这些关节容错控制算法都需要基于冗余机械臂模型已知的情况下进行控制。
目前,相关技术中提出的基于线性变分不等式的原始对偶神经网络二次规划冗余机械臂关节容错控制方法。该方法提出了以下机械臂的控制方案:
Figure BDA0003627100850000011
Figure BDA0003627100850000012
Figure BDA0003627100850000013
其中,
Figure BDA0003627100850000014
是待实时求解的决策变量,也即冗余机械臂的关节的角速度,n是冗余机械臂的自由度。J是冗余机械臂末端的雅可比矩阵。
Figure BDA0003627100850000015
是冗余机械臂的末端执行器在任务空间的期望轨迹的时间导数,也即末端执行器的速度。ξ-和ξ+分别表示冗余机械臂的关节的物理极限。
可使用许多方法求解该线性变分不等式问题,上述相关技术使用了原对偶神经网络二次规划来将该线性变分不等式转化为微分方程形式,然后使用通用微分方程求解器来对其进行求解。
但是,现有技术要求知晓约束条件中冗余机械臂末端的雅可比矩阵J的解析式,以求得每个时刻的雅可比矩阵J的精确值,才能确定每个时刻的约束条件,从而得到微分方程在每个时刻的解。该方法的解的精度和正确性会受到雅可比矩阵表达式的直接影响。但是即使是同一批次、型号的机械臂,雅可比矩阵表达式也可能由于机械臂的组装差异而各自不同,使用冗余机械臂的正向运动学模型推导出的雅可比矩阵表达式可能与实际的雅可比矩阵表达式有偏差,致在应用该算法时产生误差,影响解的精确度。另外,冗余机械臂的型号繁多,对于一种机械臂,就需要重新计算一次其雅可比矩阵表达式,而有些机械臂的正向运动学模型难以测算,导致该方法的可移植性不强。
发明内容
有鉴于此,本发明实施例提供一种精确度高且适应性强的,面向冗余机械臂的无模型关节容错控制方法及装置。
本发明的一方面提供了一种面向冗余机械臂的无模型关节容错控制方法,包括:
建立冗余机械臂的逆向运动学方程,并建立关节容错和轨迹追踪的约束不等式;
根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程;
使用零化神经网络建立估计雅可比矩阵的微分方程,采用离散化零化神经动力学方法估计冗余机械臂末端的雅可比矩阵的估计值;
联立冗余机械臂的逆向运动学微分方程和冗余机械臂末端的雅可比矩阵的估计值,并使用离散方程对所述联立的结果进行离散处理,得到在碰撞避免运动中冗余机械臂在任意时刻各关节的期望位置;
根据所述期望位置控制冗余机械臂完成无模型关节容错任务。
可选地,所述冗余机械臂的逆向运动学方程的表达式为:
Figure BDA0003627100850000021
其中,
Figure BDA0003627100850000022
是冗余机械臂的关节的角速度,是待实时求解的决策变量;n是冗余机械臂的自由度;J是冗余机械臂末端的雅可比矩阵;
Figure BDA0003627100850000023
是冗余机械臂的末端执行器在任务空间的期望轨迹的时间导数,是末端执行器的速度。
可选地,所述关节容错的约束不等式的表达式为:
Figure BDA0003627100850000024
其中,矩阵Λ是一个mf*n维的矩阵;mf为冗余机械臂中损坏关节的个数;
Figure BDA0003627100850000025
ξ-和ξ+都是n维向量,分别表示冗余机械臂的关节的物理最小极限和最大极限。
可选地,所述冗余机械臂的关节的物理最小极限的计算表达式为:
Figure BDA0003627100850000031
其中,β是调节参数,用于调节关节极限转换之后的可行域的大小;θ代表冗余机械臂的关节的角度,θ-≤θ≤θ+
Figure BDA0003627100850000032
代表冗余机械臂的关节的角速度,
Figure BDA0003627100850000033
θ-为关节的角度的最小极限,θ+为关节的角度的最大极限,
Figure BDA0003627100850000034
为关节的角速度的最小极限,
Figure BDA0003627100850000035
为关节的角速度的最大极限。
可选地,所述冗余机械臂的关节的物理最大极限的计算表达式为:
Figure BDA0003627100850000036
可选地,所述根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程,具体为:
根据所述逆向运动学方程和所述约束不等式,使用零化神经网络方法将冗余机械臂的逆向运动学问题表示为微分方程形式,得到冗余机械臂的逆向运动学微分方程;
所述逆向运动学微分方程的表达式为:
Figure BDA0003627100850000037
其中,
Figure BDA0003627100850000038
为冗余机械臂关节加速度;
Figure BDA0003627100850000039
Figure BDA00036271008500000310
分别为A(t),b(t),C(t)以及d(t)的时间导数;函数R(·)表示向量中的每个元素都经过函数r(·)处理,即R(x)=(r(x1),…,r(xk))
A(t),b(t),C(t)以及d(t)的定义表达式为:
Figure BDA00036271008500000311
其中,I为单位矩阵;
函数r(·)定义表达式为:
Figure BDA00036271008500000312
其中,a代表任意实数。
可选地,所述离散处理的离散公式为:
Figure BDA00036271008500000313
其中,
Figure BDA00036271008500000314
代表x在t=kφ时的瞬时导数;xk代表x在t=kφ时的瞬时值;φ代表仿真时间间隔;O()代表时间复杂度。
本发明实施例的另一方面还提供了一种面向冗余机械臂的无模型关节容错控制装置,包括:
第一模块,用于建立冗余机械臂的逆向运动学方程,并建立关节容错和轨迹追踪的约束不等式;
第二模块,用于根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程;
第三模块,用于使用零化神经网络建立估计雅可比矩阵的微分方程,采用离散化零化神经动力学方法估计冗余机械臂末端的雅可比矩阵的估计值;
第四模块,用于联立冗余机械臂的逆向运动学微分方程和冗余机械臂末端的雅可比矩阵的估计值,并使用离散方程对所述联立的结果进行离散处理,得到在碰撞避免运动中冗余机械臂在任意时刻各关节的期望位置;
第五模块,用于根据所述期望位置控制冗余机械臂完成无模型关节容错任务。
本发明实施例的另一方面还提供了一种电子设备,包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器执行所述程序实现如前面所述的方法。
本发明实施例的另一方面还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如前面所述的方法。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
本发明的实施例建立冗余机械臂的逆向运动学方程,并建立关节容错和轨迹追踪的约束不等式;根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程;使用零化神经网络建立估计雅可比矩阵的微分方程,采用离散化零化神经动力学方法估计冗余机械臂末端的雅可比矩阵的估计值;联立冗余机械臂的逆向运动学微分方程和冗余机械臂末端的雅可比矩阵的估计值,并使用离散方程对所述联立的结果进行离散处理,得到在碰撞避免运动中冗余机械臂在任意时刻各关节的期望位置;根据所述期望位置控制冗余机械臂完成无模型关节容错任务。本发明的精确度高且适应性强。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的计算流程示意图;
图2为冗余机械臂在所有关节均正常工作时的运动轨迹仿真图;
图3为冗余机械臂在单关节失效且使用本发明的关节容错方法控制时的运动轨迹仿真图;
图4为冗余机械臂在单关节失效且使用本发明的关节容错控制方法时的运动轨迹图;
图5为冗余机械臂在单关节失效且使用本发明的关节容错控制方法时的误差情况;
图6为冗余机械臂在单关节失效且使用本发明的关节容错控制方法时的关节速度情况;
图7为冗余机械臂在双关节失效且使用本发明的关节容错控制方法时的运动轨迹仿真图;
图8为冗余机械臂在双关节失效且使用本发明的关节容错控制方法时的运动轨迹图;
图9为冗余机械臂在双关节失效且使用本发明的关节容错控制方法时的误差情况;
图10为冗余机械臂在双关节失效且使用本发明的关节容错控制方法时的关节速度情况。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
针对现有技术存在的问题,本发明一方面提供了一种面向冗余机械臂的无模型关节容错控制方法,包括:
建立冗余机械臂的逆向运动学方程,并建立关节容错和轨迹追踪的约束不等式;
根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程;
使用零化神经网络建立估计雅可比矩阵的微分方程,采用离散化零化神经动力学方法估计冗余机械臂末端的雅可比矩阵的估计值;
联立冗余机械臂的逆向运动学微分方程和冗余机械臂末端的雅可比矩阵的估计值,并使用离散方程对所述联立的结果进行离散处理,得到在碰撞避免运动中冗余机械臂在任意时刻各关节的期望位置;
根据所述期望位置控制冗余机械臂完成无模型关节容错任务。
可选地,所述冗余机械臂的逆向运动学方程的表达式为:
Figure BDA0003627100850000051
其中,
Figure BDA0003627100850000052
是冗余机械臂的关节的角速度,是待实时求解的决策变量;n是冗余机械臂的自由度;J是冗余机械臂末端的雅可比矩阵;
Figure BDA0003627100850000061
是冗余机械臂的末端执行器在任务空间的期望轨迹的时间导数,是末端执行器的速度。
可选地,所述关节容错的约束不等式的表达式为:
Figure BDA0003627100850000062
其中,矩阵Λ是一个mf*n维的矩阵;mf为冗余机械臂中损坏关节的个数;
Figure BDA0003627100850000063
ξ-和ξ+都是n维向量,分别表示冗余机械臂的关节的物理最小极限和最大极限。
可选地,所述冗余机械臂的关节的物理最小极限的计算表达式为:
Figure BDA0003627100850000064
其中,β是调节参数,用于调节关节极限转换之后的可行域的大小;θ代表冗余机械臂的关节的角度,θ-≤θ≤θ+
Figure BDA0003627100850000065
代表冗余机械臂的关节的角速度,
Figure BDA0003627100850000066
θ-为关节的角度的最小极限,θ+为关节的角度的最大极限,
Figure BDA0003627100850000067
为关节的角速度的最小极限,
Figure BDA0003627100850000068
为关节的角速度的最大极限。
可选地,所述冗余机械臂的关节的物理最大极限的计算表达式为:
Figure BDA0003627100850000069
可选地,所述根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程,具体为:
根据所述逆向运动学方程和所述约束不等式,使用零化神经网络方法将冗余机械臂的逆向运动学问题表示为微分方程形式,得到冗余机械臂的逆向运动学微分方程;
所述逆向运动学微分方程的表达式为:
Figure BDA00036271008500000610
其中,
Figure BDA00036271008500000611
为冗余机械臂关节加速度;
Figure BDA00036271008500000612
Figure BDA00036271008500000613
分别为A(t),b(t),C(t)以及d(t)的时间导数;函数R(·)表示向量中的每个元素都经过函数r(·)处理,即R(x)=(r(x1),…,r(xk))
A(t),b(t),C(t)以及d(t)的定义表达式为:
Figure BDA00036271008500000614
其中,I为单位矩阵;
函数r(·)定义表达式为:
Figure BDA0003627100850000071
其中,a代表任意实数。
可选地,所述离散处理的离散公式为:
Figure BDA0003627100850000072
其中,
Figure BDA0003627100850000073
代表x在t=kφ时的瞬时导数;xk代表x在t=kφ时的瞬时值;φ代表仿真时间间隔;O()代表时间复杂度。
本发明实施例的另一方面还提供了一种面向冗余机械臂的无模型关节容错控制装置,包括:
第一模块,用于建立冗余机械臂的逆向运动学方程,并建立关节容错和轨迹追踪的约束不等式;
第二模块,用于根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程;
第三模块,用于使用零化神经网络建立估计雅可比矩阵的微分方程,采用离散化零化神经动力学方法估计冗余机械臂末端的雅可比矩阵的估计值;
第四模块,用于联立冗余机械臂的逆向运动学微分方程和冗余机械臂末端的雅可比矩阵的估计值,并使用离散方程对所述联立的结果进行离散处理,得到在碰撞避免运动中冗余机械臂在任意时刻各关节的期望位置;
第五模块,用于根据所述期望位置控制冗余机械臂完成无模型关节容错任务。
本发明实施例的另一方面还提供了一种电子设备,包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器执行所述程序实现如前面所述的方法。
本发明实施例的另一方面还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如前面所述的方法。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
下面结合说明书附图,对本发明的具体实现原理进行详细说明:
在阐述具体实施例之前首先对与本实施例相关的缩略语和关键术语定义进行说明:
冗余机械臂:冗余机械臂是指末端执行器在执行给定任务时有超出所需自由度的机械臂。
机器人正向运动学:机器人正向运动学主要研究在给定了关节机械臂各关节的位姿的情况下,机械臂的末端执行器会如何运动的问题。
机器人逆向运动学:机器人逆向运动学主要研究在给定了关节机械臂的末端执行器的期望运动轨迹的情况下,各关节要如何运动才能让末端执行器的实际运动轨迹和期望运动轨迹相一致的问题。
机械臂的运动学模型:机械臂的运动学模型一般指正向运动学模型,含有机械臂各连杆之间的相对位置等信息。
零化神经网络:零化神经网络是一种结构简单的神经网络,可用于求解冗余机械臂逆运动学问题和冗余机械臂雅可比矩阵估算问题。可以将冗余机械臂逆运动学问题和冗余机械臂雅可比矩阵估算问题表示为零化神经网络的动态***方程,即微分方程,该微分方程的解即为上述问题的解。
关节容错控制方法:关节容错控制方法是指在关节机械臂中的某个甚至某几个关节发生故障时,冗余机械臂通过利用其余正常关节的冗余度,仍能完成预期的轨迹追踪任务。
本发明提供了一种面向冗余机械臂的无模型关节容错控制方法,使冗余机械臂的末端执行器在某个甚至某些关节失效的情况下仍能够按照预设的路径运动,良好地完成任务。
本实施例所提出的冗余机械臂关节容错控制方法可简要归纳如下:
(一)建立求解逆向运动学的约束不等式。将冗余机械臂关节容错、各关节的速度极限、角度极限和末端执行器的期望轨迹表示为不等式约束。
(二)建立估计末端执行器处雅可比矩阵的微分方程,需要分别获取冗余机械臂的末端执行器的速度、加速度。基于此实现方法的无模型特性。
(三)将步骤(一)中建立二次规划约束转换成微分方程,该微分方程需要使用末端执行器雅可比矩阵作为参数,而步骤(二)中的微分方程可以估计出雅可比矩阵的值。因此,可以将(一)和(二)中的微分方程联合求解。并使用离散方程对微分方程组进行离散化处理。该微分方程组的解就是冗余机械臂的每个关节的角度随时间变化的函数。将关节角度-时间信息输入冗余机械臂,即可让机械臂按照预期的轨迹运动。
本实施例所述方法的详细步骤如下:
首先求解冗余机械臂的逆向运动学问题约束条件为:
Figure BDA0003627100850000081
Figure BDA0003627100850000091
Figure BDA0003627100850000092
其中,
Figure BDA0003627100850000093
是待实时求解的决策变量,也即冗余机械臂的关节的角速度。m是冗余机械臂的末端的任务空间的维度,比如在一个轨迹跟踪任务中,只规定了冗余机械臂末端的在3维空间中的期望位置,那么m=3,而n是冗余机械臂的自由度。θ是t时刻的关节角度。J是冗余机械臂末端的雅可比矩阵。
Figure BDA0003627100850000094
是冗余机械臂的末端执行器在任务空间的期望轨迹的时间导数,也即末端执行器的速度。
矩阵Λ是一个mf*n维的矩阵;mf为冗余机械臂中损坏关节的个数。对于一个冗余机械臂,假定其有mf个关节发生了故障(例如,第i个关节、…和第j个关节),则这些关节所对应的关节速度应强制设置为零。因此,冗余机械臂必须满足下列等式约束:
Figure BDA0003627100850000095
上述等式约束可被改写为以下矩阵形式:
Figure BDA0003627100850000096
矩阵Λ为:
Figure BDA0003627100850000097
ξ-和ξ+都是n维向量,分别表示冗余机械臂的关节的物理极限。假设冗余机械臂的关节具有速度极限和角度极限:
θ-≤θ≤θ+
Figure BDA0003627100850000098
ξ-和ξ+的具体定义如下:
Figure BDA0003627100850000099
Figure BDA00036271008500000910
β是一个参数,用于调节关节极限转换之后的可行域的大小,θ-、θ+为关节角度的最小、最大极限,
Figure BDA00036271008500000911
为关节角速度的最小、最大极限。在本次仿真中β的值设为0.25。
使用零化神经网络(ZNN)来把冗余机械臂的逆运动学问题变为微分方程形式:
Figure BDA0003627100850000101
其中,
Figure BDA0003627100850000102
为冗余机械臂关节加速度;
Figure BDA0003627100850000103
Figure BDA0003627100850000104
分别为A(t),b(t),C(t)以及d(t)的时间导数。A(t),b(t),C(t)以及d(t)的定义如下:
Figure BDA0003627100850000105
Figure BDA0003627100850000106
其中,I为单位矩阵。函数R(·)表示向量中的每个元素都经过函数r(·)处理,即R(x)=(r(x1),…,r(xk))。其中,函数r(·)定义如下:
Figure BDA0003627100850000107
在上述流程中,雅可比矩阵J本来是需要根据冗余机械臂的正向运动学模型来推算的,但是为了让本发明提出的方法不需要使用冗余机械臂的正向运动学的先验模型,本实施例使用了零化神经动力学方法(ZNN)来估计两个雅可比矩阵的估计值,并在计算中代替J。下面介绍这一方法。
冗余机械臂的运动方程可写为如下的向量等式:
f(θ(t))=r(t) (1)
r(t)表示冗余机械臂的某点在t时刻的实际位置,θ(t)是冗余机械臂的每个关节在t时刻的角度,f函数是冗余机械臂的正向运动学函数,将冗余机械臂的关节状态映射到冗余机械臂的某点位置。对以上等式两端同时对时间t求导,有:
Figure BDA0003627100850000108
为了保持简便,在之后的内容里,本实施例使用J来代替J(θ)。本实施例定义一个误差函数∈来表示计算J时的误差为:
Figure BDA0003627100850000109
对其应用零化神经动力学方法,令:
Figure BDA00036271008500001010
其中μ为用于调节收敛率的正参数,
Figure BDA00036271008500001011
为∈关于时间t的导数。将(4)带入(5)中,则可以得到以下等式:
Figure BDA0003627100850000111
对(5)进行变形,本实施例就可以得到:
Figure BDA0003627100850000112
其中,
Figure BDA0003627100850000113
表示J对时间的导数,
Figure BDA0003627100850000115
表示冗余机械臂的末端的实际加速度,
Figure BDA0003627100850000116
表示冗余机械臂各关节的加速度,
Figure BDA0003627100850000117
表示冗余机械臂的末端的实际速度,
Figure BDA0003627100850000118
表示冗余机械臂各关节的速度,
Figure BDA00036271008500001117
依据m和n的值表示
Figure BDA00036271008500001118
的逆或伪逆。(6)式可用于估算冗余机械臂上某点雅可比矩阵,通过对该微分方程进行求解,即可求得每个时刻t的雅可比矩阵的估计值。对于式中的
Figure BDA0003627100850000119
本实施例可以通过传感器或视觉仪器求得,因此本实施例所得到的雅可比矩阵估计方程是无模型限制的。
然后,将两条微分方程联合求解:
Figure BDA00036271008500001110
Figure BDA00036271008500001111
本实施例即可求得在碰撞避免运动中冗余机械臂在t时刻各关节的期望位置,从而控制冗余机械臂完成无模型碰撞避免任务。
最后,为了提高算法的精度和运行速度,本实施例还使用离散方程对上述微分方程进行离散处理。离散方程为:
Figure BDA00036271008500001112
将微分方程经过离散方程离散处理后,可以得到以下方程组:
Figure BDA00036271008500001113
Figure BDA00036271008500001114
Figure BDA00036271008500001115
Figure BDA00036271008500001116
Figure BDA0003627100850000121
将通过以上方程组实时得到的关节角度θ输入至冗余机械臂中,就能实现对冗余机械臂的关节容错控制。
本实施例所使用的是一个设置关节速度为零进行冗余机械臂关节容错的不等式约束。目前使用这一方向的控制方法仍是基于冗余机械臂模型的。而无模型的碰撞避免控制算法不依赖于机械手的显式动力学模型和运动学模型,从而避免了在实际中对机器人进行精确建模,实现和调试都较为方便。
本实施例提出的关节容错控制方法属于基于反馈控制的无模型关节容错控制算法,可以控制冗余机械臂末端以特定轨迹进行运动,在某个甚至多个关节失效的情况下顺利完成各种任务。
下面结合图形,以在Kinova Jaco2机械臂上进行冗余机械臂关节容错控制仿真实验作为例子,对本发明提出的方法进行进一步说明。
1.单关节失效关节容错控制仿真。
(1)设置冗余机械臂的初始姿态为:
[1.596;2.341;3.045;-2.498;-1.131;0.770]
每个值从左到右依次表示冗余机械臂从基座到末端的每个关节的角度,单位为rad。在Matlab中调用Kinova Jaco2机械臂提供的API,将关节角度发送到机械臂的控制器,机械臂将运动到该位置。
定义冗余机械臂末端在三维空间中的期望轨迹:
x=x0+3r cos(2π(sin2(πt/2T)))+r cos(6π(sin2(πt/2T)))-4r
y=y0+r sin(2π(sin2(πt/2T)))+r sin(6π(sin2(πt/2T)))
z=z0-r·sin(2π(sin2(πt/2T)))-sin(4π(sin2(πt/2T)))
其中,r=0.03m,t表示当前时刻,T表示碰撞避免任务的总时长,T=20s。x0、y0和z0分别表示冗余机械臂末端的初始位置。该轨迹如图2所示,实际轨迹较好地贴合了目的轨迹。冗余机械臂的第三关节失效。
(2)在定义了冗余机械臂初始状态和期望轨迹后,按照图1所示的算法流程,建立两条微分方程:
Figure BDA0003627100850000131
Figure BDA0003627100850000132
(2.1)在第一条方程中,
Figure BDA0003627100850000133
是待求解的变量,它是一个n维的向量。其中n是冗余机械臂的自由度。λ是零化神经网络的收敛率参数,此值越大,冗余机械臂进行轨迹跟踪的精度就越高。在实验中,λ取的值为10。其中,
Figure BDA0003627100850000134
为冗余机械臂关节加速度;
Figure BDA0003627100850000135
Figure BDA0003627100850000136
分别为A(t),b(t),C(t)以及d(t)的时间导数。A(t),b(t),C(t)以及d(t)的定义如下:
Figure BDA0003627100850000137
Figure BDA0003627100850000138
其中,I为单位矩阵。函数R(·)表示向量中的每个元素都经过函数r(·)处理,即R(x)=(r(x1),…,r(xk))。其中,函数r(·)定义如下:
Figure BDA0003627100850000139
假设冗余机械臂的关节具有速度极限和角度极限:
θ-≤θ≤θ+
Figure BDA00036271008500001310
则这两个约束可以通过关节极限转换统一化为一条双端约束:
Figure BDA00036271008500001311
ξ-和ξ+的具体定义如下:
Figure BDA00036271008500001312
Figure BDA00036271008500001313
β是一个参数,用于调节关节极限转换之后的可行域的大小,在本次仿真中设为0.25。可以通过调节上述参数实现对冗余机械臂关节极限的限制,但这部分并不是本次仿真的重点,故不做赘述。
(2.2)为了提高算法的运行速率和精度,接下来使用以下离散公式对微分方程组进行离散化处理:
Figure BDA00036271008500001314
将微分方程经过离散方程离散处理后,可以得到以下方程组:
Figure BDA0003627100850000141
Figure BDA0003627100850000142
Figure BDA0003627100850000143
Figure BDA0003627100850000144
Figure BDA0003627100850000145
第二和第五两条方程分别用来估计冗余机械臂末端执行器雅可比矩阵J。
Figure BDA0003627100850000146
和表示对J时间的导数,
Figure BDA0003627100850000147
表示冗余机械臂的末端执行器的实际速度,
Figure BDA0003627100850000148
表示冗余机械臂的末端执行器的实际加速度,
Figure BDA0003627100850000149
表示冗余机械臂各关节的加速度,
Figure BDA00036271008500001410
表示冗余机械臂各关节的速度,
Figure BDA00036271008500001411
表示
Figure BDA00036271008500001412
的逆或伪逆,μ是零化神经网络的收敛率参数,在实验中,μ取的值为10。
Figure BDA00036271008500001413
Figure BDA00036271008500001414
都可从冗余机械臂的传感器或视觉仪器中得到具体数值。
(3)使用求解上述推导出的方程组,最终可得到随时间变化的向量函数θ的数值解。该函数的输入为时刻t,输出为一个n维的向量θ。向量θ表示冗余机械臂的关节角度,根据该信息便可控制冗余机械臂完成轨迹跟踪任务。
(4)接下来本实施例对得到的仿真结果进行分析,对比图2和图3,本实施例可以看出在关节容错控制算法的作用下,冗余机械臂在单关节失效时的情况仍顺利完成了轨迹追踪任务(失效关节为红色连杆和青色连杆之间的关节,已被红圈圈出)。根据图4和图5,本实施例可以看到整个轨迹追踪任务末端执行器与目标轨迹贴合的很好,均方根误差约为0.0013mm,是一个可以忽略的误差,图中RMSE表示均方根误差。图6则显示了整个轨迹追踪任务中冗余机械臂各关节的运动角速度,可以看到失效的第三关节速度一直为0。
2.双关节失效关节容错控制仿真:
(1)本次仿真中,冗余机械臂的第三和第五关节失效。其他设置与上节仿真相同。
对比图2和图7本实施例可以看出在关节容错控制算法的作用下,冗余机械臂在双关节失效时的情况仍顺利完成了轨迹追踪任务(失效关节分别为红色连杆和青色连杆之间的关节与紫色连杆和蓝色连杆之间的关节,均已被红圈圈出)。根据图8和图9,本实施例可以看到整个轨迹追踪任务末端执行器与目标轨迹贴合的很好,均方根误差约为8.3×10- 5mm,仍是一个可以忽略的误差,图中RMSE表示均方根误差。图10则显示了整个轨迹追踪任务中冗余机械臂各关节的运动角速度,可以看到失效的第三关节和第五关节速度一直为0。
由实验结果可知,本实施例在不使用冗余机械臂的先验的正向运动学模型的情况下,能够控制冗余机械臂完成关节容错控制任务,同时还具有轨迹追踪的功能。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-On ly Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

Claims (10)

1.一种面向冗余机械臂的无模型关节容错控制方法,其特征在于,包括:
建立冗余机械臂的逆向运动学方程,并建立关节容错和轨迹追踪的约束不等式;
根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程;
使用零化神经网络建立估计雅可比矩阵的微分方程,采用离散化零化神经动力学方法估计冗余机械臂末端的雅可比矩阵的估计值;
联立冗余机械臂的逆向运动学微分方程和冗余机械臂末端的雅可比矩阵的估计值,并使用离散方程对所述联立的结果进行离散处理,得到在碰撞避免运动中冗余机械臂在任意时刻各关节的期望位置;
根据所述期望位置控制冗余机械臂完成无模型关节容错任务。
2.根据权利要求1所述的一种面向冗余机械臂的无模型关节容错控制方法,其特征在于,
所述冗余机械臂的逆向运动学方程的表达式为:
Figure FDA0003627100840000011
其中,
Figure FDA0003627100840000012
是冗余机械臂的关节的角速度,是待实时求解的决策变量;n是冗余机械臂的自由度;J是冗余机械臂末端的雅可比矩阵;
Figure FDA0003627100840000013
是冗余机械臂的末端执行器在任务空间的期望轨迹的时间导数,是末端执行器的速度。
3.根据权利要求2所述的一种面向冗余机械臂的无模型关节容错控制方法,其特征在于,所述关节容错的约束不等式的表达式为:
Figure FDA0003627100840000014
其中,矩阵Λ是一个mf*n维的矩阵;mf为冗余机械臂中损坏关节的个数;
Figure FDA0003627100840000015
ξ-和ξ+都是n维向量,分别表示冗余机械臂的关节的物理最小极限和最大极限。
4.根据权利要求3所述的一种面向冗余机械臂的无模型关节容错控制方法,其特征在于,
所述冗余机械臂的关节的物理最小极限的计算表达式为:
Figure FDA0003627100840000016
其中,β是调节参数,用于调节关节极限转换之后的可行域的大小;θ代表冗余机械臂的关节的角度,θ-≤θ≤θ+
Figure FDA0003627100840000017
代表冗余机械臂的关节的角速度,
Figure FDA0003627100840000018
θ-为关节的角度的最小极限,θ+为关节的角度的最大极限,
Figure FDA0003627100840000019
为关节的角速度的最小极限,
Figure FDA00036271008400000110
为关节的角速度的最大极限。
5.根据权利要求4所述的一种面向冗余机械臂的无模型关节容错控制方法,其特征在于,
所述冗余机械臂的关节的物理最大极限的计算表达式为:
Figure FDA0003627100840000021
6.根据权利要求1所述的一种面向冗余机械臂的无模型关节容错控制方法,其特征在于,所述根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程,具体为:
根据所述逆向运动学方程和所述约束不等式,使用零化神经网络方法将冗余机械臂的逆向运动学问题表示为微分方程形式,得到冗余机械臂的逆向运动学微分方程;
所述逆向运动学微分方程的表达式为:
Figure FDA0003627100840000022
其中,
Figure FDA0003627100840000023
为冗余机械臂关节加速度;
Figure FDA0003627100840000024
Figure FDA0003627100840000025
分别为A(t),b(t),C(t)以及d(t)的时间导数;函数R(·)表示向量中的每个元素都经过函数r(·)处理,即R(x)=(r(x1),…,r(xk))
A(t),b(t),C(t)以及d(t)的定义表达式为:
Figure FDA0003627100840000026
其中,I为单位矩阵;
函数r(·)定义表达式为:
Figure FDA0003627100840000027
其中,a代表任意实数。
7.根据权利要求1所述的一种面向冗余机械臂的无模型关节容错控制方法,其特征在于,所述离散处理的离散公式为:
Figure FDA0003627100840000028
其中,
Figure FDA0003627100840000029
代表x在t=kφ时的瞬时导数;xk代表x在t=kφ时的瞬时值;φ代表仿真时间间隔;O()代表时间复杂度。
8.一种面向冗余机械臂的无模型关节容错控制装置,其特征在于,包括:
第一模块,用于建立冗余机械臂的逆向运动学方程,并建立关节容错和轨迹追踪的约束不等式;
第二模块,用于根据所述逆向运动学方程和所述约束不等式,得到冗余机械臂的逆向运动学微分方程;
第三模块,用于使用零化神经网络建立估计雅可比矩阵的微分方程,采用离散化零化神经动力学方法估计冗余机械臂末端的雅可比矩阵的估计值;
第四模块,用于联立冗余机械臂的逆向运动学微分方程和冗余机械臂末端的雅可比矩阵的估计值,并使用离散方程对所述联立的结果进行离散处理,得到在碰撞避免运动中冗余机械臂在任意时刻各关节的期望位置;
第五模块,用于根据所述期望位置控制冗余机械臂完成无模型关节容错任务。
9.一种电子设备,其特征在于,包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器执行所述程序实现如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有程序,所述程序被处理器执行实现如权利要求1至7中任一项所述的方法。
CN202210479422.6A 2022-05-05 2022-05-05 一种面向冗余机械臂的无模型关节容错控制方法及装置 Active CN114643582B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210479422.6A CN114643582B (zh) 2022-05-05 2022-05-05 一种面向冗余机械臂的无模型关节容错控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210479422.6A CN114643582B (zh) 2022-05-05 2022-05-05 一种面向冗余机械臂的无模型关节容错控制方法及装置

Publications (2)

Publication Number Publication Date
CN114643582A true CN114643582A (zh) 2022-06-21
CN114643582B CN114643582B (zh) 2022-12-27

Family

ID=81997431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210479422.6A Active CN114643582B (zh) 2022-05-05 2022-05-05 一种面向冗余机械臂的无模型关节容错控制方法及装置

Country Status (1)

Country Link
CN (1) CN114643582B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116197918A (zh) * 2023-05-05 2023-06-02 北京华晟经世信息技术股份有限公司 基于动作记录分析的机械手控制***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101804627A (zh) * 2010-04-02 2010-08-18 中山大学 一种冗余度机械臂运动规划方法
CN102126219A (zh) * 2010-11-22 2011-07-20 中山大学 一种冗余度机械臂容错型运动规划方法
CN112605996A (zh) * 2020-12-16 2021-04-06 中山大学 一种面向冗余机械臂的无模型碰撞避免控制方法
CN112706163A (zh) * 2020-12-10 2021-04-27 中山大学 一种机械臂运动控制方法、装置、设备及介质
WO2021135405A1 (zh) * 2020-01-02 2021-07-08 中山大学 一种面向机械臂的无运动学模型轨迹跟踪方法及一种机械臂***
US20220009096A1 (en) * 2020-07-10 2022-01-13 Ubtech Robotics Corp Ltd Inverse kinematics solving method for redundant robot and redundant robot and computer readable storage medium using the same

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101804627A (zh) * 2010-04-02 2010-08-18 中山大学 一种冗余度机械臂运动规划方法
CN102126219A (zh) * 2010-11-22 2011-07-20 中山大学 一种冗余度机械臂容错型运动规划方法
WO2021135405A1 (zh) * 2020-01-02 2021-07-08 中山大学 一种面向机械臂的无运动学模型轨迹跟踪方法及一种机械臂***
US20220009096A1 (en) * 2020-07-10 2022-01-13 Ubtech Robotics Corp Ltd Inverse kinematics solving method for redundant robot and redundant robot and computer readable storage medium using the same
CN112706163A (zh) * 2020-12-10 2021-04-27 中山大学 一种机械臂运动控制方法、装置、设备及介质
CN112605996A (zh) * 2020-12-16 2021-04-06 中山大学 一种面向冗余机械臂的无模型碰撞避免控制方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116197918A (zh) * 2023-05-05 2023-06-02 北京华晟经世信息技术股份有限公司 基于动作记录分析的机械手控制***

Also Published As

Publication number Publication date
CN114643582B (zh) 2022-12-27

Similar Documents

Publication Publication Date Title
Qi et al. Kinematic control of continuum manipulators using a fuzzy-model-based approach
Zhao et al. System identification of the nonlinear residual errors of an industrial robot using massive measurements
CN110355751B (zh) 控制装置和机器学习装置
CN112605996B (zh) 一种面向冗余机械臂的无模型碰撞避免控制方法
CN109986562B (zh) 一种平面机械臂***及其分散式容错控制方法
CN111975771A (zh) 一种基于偏差重定义神经网络的机械臂运动规划方法
Li et al. Fault-tolerant motion planning and control of redundant manipulator
JP3349652B2 (ja) オフラインティーチング方法
CN110842927B (zh) 一种基于多元回归的机器人关节几何误差补偿方法
CN114643582B (zh) 一种面向冗余机械臂的无模型关节容错控制方法及装置
Du et al. A cognitive joint angle compensation system based on self-feedback fuzzy neural network with incremental learning
CN115008476B (zh) 基于等效运动学模型的机器人标定方法及设备
Tan et al. New varying-parameter recursive neural networks for model-free kinematic control of redundant manipulators with limited measurements
Tan et al. A cerebellum-inspired network model and learning approaches for solving kinematic tracking control of redundant manipulators
Mazare et al. Adaptive variable impedance control for a modular soft robot manipulator in configuration space
Yan Error recognition of robot kinematics parameters based on genetic algorithms
He Motion planning and control for endoscopic operations of continuum manipulators
Wiese et al. Kinematic modeling of a soft pneumatic actuator using cubic hermite splines
Tan et al. Uncalibrated and unmodeled image-based visual servoing of robot manipulators using zeroing neural networks
Tan et al. Two model-free schemes for solving kinematic tracking control of redundant manipulators using CMAC networks
Zhang et al. Adaptive control of discrete-time nonlinear systems using ITF-ORVFL
Ma et al. Model free position-force control of environmental constrained reconfigurable manipulators based on adaptive dynamic programming
CN113910218A (zh) 基于运动学与深度神经网络融合的机器人标定方法和装置
Sharkawy et al. Forward and Inverse Kinematics Solution of A 3-DOF Articulated Robotic Manipulator Using Artificial Neural Network.
CN113927603B (zh) 机械臂拖动控制方法、装置、计算机设备以及存储介质

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