CN113021345A - 机械臂逆运动学控制方法、装置、设备及可读存储介质 - Google Patents
机械臂逆运动学控制方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN113021345A CN113021345A CN202110304775.8A CN202110304775A CN113021345A CN 113021345 A CN113021345 A CN 113021345A CN 202110304775 A CN202110304775 A CN 202110304775A CN 113021345 A CN113021345 A CN 113021345A
- Authority
- CN
- China
- Prior art keywords
- mechanical arm
- inverse
- characteristic value
- target
- solution
- 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.)
- Withdrawn
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
-
- 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/1628—Programme controls characterised by the control loop
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种机械臂逆运动学控制方法、装置、设备及可读存储介质。该方法包括:获取机械臂的运动参数,并根据运动参数建立机械臂的运动学模型;根据运动学模型计算机械臂对应的第一特征值,并判断第一特征值是否符合预设条件;若第一特征值不符合预设条件,在运动学模型中插入与第一特征值对应的阻尼曲线后,获取机械臂对应的目标逆解,并根据目标逆解对机械臂进行控制。本发明通过在逆运动学求解过程中插入曲线阻尼,得到机械臂对应的逆运动学解,进而通过逆运动学解实现对机械臂的控制。
Description
技术领域
本发明涉及机械控制领域,尤其涉及机械臂逆运动学控制方法、装置、设备及可读存储介质。
背景技术
机械臂的逆运动学求解是工业机械臂应用的基础,是机械臂控制的先决条件,直接关系到机器人离线编程、轨迹规划、实时控制等任务。通常,机器人逆运动学问题的解决方法可分为三类:几何/解析、与雅克比矩阵相关及基于优化。逆运动学最早和最佳的方法是解析解法,具有精度绝对和计算高效的优点,然而,当任意三个相邻关节是平移的或任三个连续关节轴在同一点相交时,一个完整的解析解才存在,对于不满足这些条件的机械臂,特别是冗余机械臂,其逆运动学没有通用解析解。
发明内容
本发明的主要目的在于提供一种机械臂逆运动学控制方法、装置、设备及可读存储介质,旨在解决现有技术没有适用于大多数机械臂的逆运动学求解方法的技术问题。
此外,为实现上述目的,本发明还提供一种机械臂逆运动学控制方法,所述机械臂逆运动学控制方法包括以下步骤:
获取机械臂的运动参数,并根据所述运动参数建立所述机械臂的运动学模型;
根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件;
若所述第一特征值不符合预设条件,在所述运动学模型中插入与所述第一特征值对应的阻尼曲线后,获取所述机械臂对应的目标逆解,并根据所述目标逆解对所述机械臂进行控制。
可选地,所述根据所述运动参数建立所述机械臂的运动学模型的步骤,包括:
获取所述机械臂当前所在的第一位置;
根据所述第一位置建立空间坐标系,并根据所述空间坐标系建立所述机械臂的运动学模型。
可选地,所述根据所述第一位置建立空间坐标系,并根据所述空间坐标系建立所述机械臂的运动学模型的步骤,包括:
在所述机械臂上确定目标参考点,并建立所述机械臂在所述第一位置对应的基坐标系和工具坐标系;
根据所述目标参考点确定所述基坐标与所述工具坐标系之间的变换关系;
根据所述变换关系建立所述机械臂的运动学模型。
可选地,所述根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件的步骤,包括:
根据所述运动学模型,确定所述机械臂在所述第一位置对应的雅克比矩阵;
计算所述雅克比矩阵的转置与所述雅克比矩阵的乘积的秩,得到所述机械臂在所述第一位置对应的第一特征值;
将所述第一特征值与预设精度值进行比较,以判断所述第一特征值的进度是否符合预设条件。
可选地,所述获取所述机械臂对应的目标逆解的步骤,包括:
获取所述机械臂要到达的目标位置,并根据预设算法计算所述机械臂在所述目标位置对应的第二特征值;
根据所述第二特征值对所述机械臂进行运动学计算,以确定所述机械臂对应的目标逆解。
可选地,所述根据所述第二特征值对所述机械臂进行运动学计算,以确定所述机械臂对应的目标逆解的步骤,包括:
根据所述第二特征值对所述机械臂进行逆运动学和正运动学计算,以确定所述机械臂对应的逆运动学解和正运动学解;
将所述逆运动学解与所述正运动学解进行比较,以获取所述逆运动学解与所述正运动学解之间的目标误差值;
将所述目标误差值与预设误差值进行比较,若所述目标误差值大于所述预设误差值,则返回并执行根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件的步骤,直到所述目标误差值小于或等于所述预设误差值;
若所述目标误差值小于或等于所述预设误差值,则所述逆运动学解为所述机械臂的目标逆解。
可选地,所述根据预设算法计算所述机械臂在所述目标位置对应的第二特征值的步骤,包括:
计算所述机械臂在所述第一位置对应的雅克比矩阵的伪逆矩阵;
根据所述伪逆矩阵计算所述机械臂在所述第一位置对应的笛卡尔空间的微分方程;
根据所述微分方程计算所述机械臂的空间速度范围,并根据所述机械臂要到达的目标位置计算所述微分方程的解,得到所述机械臂在所述目标位置对应的第二特征值。
此外,为实现上述目的,本发明还提供一种机械臂逆运动学控制装置,所述机械臂逆运动学控制装置包括:
运动学模型创建模块,用于获取机械臂的运动参数,并根据所述运动参数建立所述机械臂的运动学模型;
特征值计算模块,用于根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件;
控制模块,用于若所述第一特征值不符合预设条件,在所述运动学模型中插入与所述第一特征值对应的阻尼曲线后,获取所述机械臂对应的目标逆解,并根据所述目标逆解对所述机械臂进行控制。
此外,为实现上述目的,本发明还提供一种机械臂逆运动学控制设备,所述机械臂逆运动学控制设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的机械臂逆运动学控制程序,所述机械臂逆运动学控制程序被所述处理器执行时实现如上述的机械臂逆运动学控制方法的步骤。
此外,为实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有机械臂逆运动学控制程序,所述机械臂逆运动学控制程序被处理器执行时实现如上述的机械臂逆运动学控制方法的步骤。
本发明实施例提出的一种机械臂逆运动学控制方法、装置、设备及可读存储介质。本发明实施例中通过获取机械臂的运动参数,基于获取的运动参数建立机械臂的运动学模型,进而,根据建立的机械臂的运动学模型,计算机械臂对应的第一特征值,并判断计算得到的第一特征值是否符合预设条件,若第一特征值不符合预设条件,则在运动学模型中插入与第一特征值对应的阻尼曲线后,获取机械臂对应的目标逆解,最后根据目标逆解对机械臂进行控制,本发明通过在逆运动学求解过程中插入曲线阻尼,得到机械臂对应的逆运动学解,进而通过逆运动学解实现对机械臂的控制。
附图说明
图1为本发明实施例提供的机械臂逆运动学控制设备一种实施方式的硬件结构示意图;
图2为本发明机械臂逆运动学控制方法第一实施例的流程示意图;
图3为本发明机械臂逆运动学控制方法第一实施例中曲线阻尼的示意图;
图4为本发明机械臂逆运动学控制方法第一实施例中逆运动学求解过程的示意图;
图5为本发明机械臂逆运动学控制方法第二实施例的流程示意图;
图6为本发明机械臂逆运动学控制装置一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
本发明实施例机械臂逆运动学控制终端(又叫终端、设备或者终端设备)可以是个人电脑,也可以是具有机械臂的机器人。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及机械臂逆运动学控制程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的机械臂逆运动学控制程序,所述机械臂逆运动学控制程序被处理器执行时实现下述实施例提供的机械臂逆运动学控制方法中的操作。
基于上述设备硬件结构,提出了本发明机械臂逆运动学控制方法的实施例。
参照图2,在本发明机械臂逆运动学控制方法的第一实施例中,所述机械臂逆运动学控制方法包括:
步骤S10,获取机械臂的运动参数,并根据所述运动参数建立所述机械臂的运动学模型。
可知地,机械臂包括连杆和轴,以及位于相邻两个连杆之间的轴部位的控制器件(例如电机),一个设计合理的机械臂包含的连杆数量与轴数量对应相等,例如,一个六轴机械臂就包含六个连杆和六个轴,其中,在不借助外力的情况下只能旋转的轴是基轴,位于机械臂的底座部位,本实施例中的机械臂的运动参数包括机械臂规划中的运动限制,例如,连杆能移动的速度范围、连杆能移动的距离范围、轴能旋转的角度范围,以及轴能旋转的速度范围等,机械臂的运动参数还包括预先设置好的机械臂本身的参数,包括连杆和轴的几何参数(例如长度、直径和质量等),机械臂的运动参数还可以包括不确定参数,例如机械臂的负载质量和连杆质心等,机械臂的运动参数是在机械臂规划时就可以获取到的参数,根据这些运动参数建立机械臂的运动学模型,可知地,本实施例中的运动学模型用于表述机械臂的运动关系。
步骤S20,根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件。
如图3所示,本实施例中根据运动学模型计算机械臂对应的第一特征值的过程即是图3中采用D-H矩阵法建立机械臂的连杆坐标关系,到计算机械臂当前位置的雅克比矩阵,以及判断雅克比矩阵与雅克比矩阵转置的乘积的秩的过程,其中,本实施例中的第一特征值即是上述雅克比矩阵与雅克比矩阵转置的乘积的秩,具体地,上述D-H矩阵法是一种通用的方法,D-H矩阵法的简化过程是:为机械臂的每个连杆都建立一个坐标系,然后用4×4的齐次变换矩阵来描述机械臂的相邻两连杆的空间关系,本实施例通过举例说明上述雅克比矩阵,假设一个从n维欧氏空间映射到到m维欧氏空间的函数,这个函数由m个实函数组成,这些实函数的偏导数如果存在的话,这些实函数的偏导数可以组成一个m行n列的矩阵,这个矩阵就是雅可比矩阵,而雅克比转置是指,将雅克比矩阵中的所有元素绕着一条从第1行第1列元素出发的向右下方45度的射线作镜面反转,即得到雅可比矩阵的转置,将雅克比矩阵与雅克比矩阵转置相乘,在计算得到的乘积的秩,具体计算过程将在下述内容中说明,本实施例中的预设条件可以是,通过将得到的秩与一个预设的值做大小对比,若得到的秩大于这个预设的值,则判定第一特征值符合预设条件,否则,判定第一特征值不符合预设条件。
步骤S30,若所述第一特征值不符合预设条件,在所述运动学模型中插入与所述第一特征值对应的阻尼曲线后,获取所述机械臂对应的目标逆解,并根据所述目标逆解对所述机械臂进行控制。
可知地,若第一特征值不符合预设条件,则在运动学模型中插入与第一特征值对应的阻尼曲线,具体地,第一特征值对应的阻尼曲线的计算过程可以是:d=(cos(a×π×1000)+1)×0.5,其中,a是本实施例中的第一特征值,π是圆周率,d即是第一特征值对应的阻尼曲线,如图4所示,图4为阻尼曲线图示意图,其中,横坐标表示第一特征值,纵坐标表示阻尼曲线的值,可以算出,当a=0时,对应的阻尼曲线的值为1,当a=0.001时,对应的阻尼曲线的值为0,将得到的阻尼曲线插入上述得到的雅克比矩阵与雅克比矩阵转置的乘积中,其中,雅克比矩阵与雅克比矩阵转置的乘积也是一个矩阵(下文以矩阵Ja表示),具体地,将阻尼曲线插入矩阵Ja的方法可以是,将矩阵Ja的斜对角元素(即,从矩阵Ja的第1行第1列元素出发的向右下方45度的斜对角线上的值)都加上d后,得到矩阵Jb,进而,通过矩阵Jb计算当前位置的雅克比矩阵对应的伪逆矩阵,具体过程可以是:将当前位置的雅克比矩阵的转置与矩阵Jb的逆的乘积运算,进而得到当前位置的雅克比矩阵对应的伪逆矩阵,最终,根据该伪逆矩阵,获取机械臂对应的目标逆解,并根据目标逆解对机械臂进行控制,目标逆解的具体获取过程将在下述内容中说明。
具体地,步骤S10细化的步骤包括:
步骤a1,获取所述机械臂当前所在的第一位置。
步骤a2,根据所述第一位置建立空间坐标系,并根据所述空间坐标系建立所述机械臂的运动学模型。
可知地,控制机械臂的运动时,存在一个起始位置,这个起始位置即是本实施例中的机械臂当前所在的第一位置,一些机械臂会设置一个初始化位置作为控制机械臂运动时的起始位置,获取到第一位置后,基于第一位置建立空间坐标系,可知地,基于第一位置建立空间坐标系的过程首先是,以机械臂底座为基准建立参考坐标系,然后,再建立与机械臂底座相邻的机械连杆对应的相对坐标系,就这样,依次建立每个机械连杆对应的相对坐标系,所有的相对坐标系建立完成后,获取任意两个坐标系(参考坐标系和相对坐标系)之间的变换关系,本实施例中的空间坐标系即是上述参考坐标系和相对坐标系,得到任意两个空间坐标系之间的变换关系的过程即是建立机械臂的运动学模型的过程。
具体地,步骤a2细化的步骤包括:
步骤b1,在所述机械臂上确定目标参考点,并建立所述机械臂在所述第一位置对应的基坐标系和工具坐标系。
步骤b2,根据所述目标参考点确定所述基坐标与所述工具坐标系之间的变换关系。
步骤b3,根据所述变换关系建立所述机械臂的运动学模型。
可知地,本实施例将描述图3中采用D-H矩阵法建立机械臂的连杆坐标关系的具体过程,具体地,首先,基于机械臂的底座建立参考坐标系(即本实施例中的基坐标系),然后,在所有机械臂中选中与机械臂底座相邻的机械臂(下文称之为目标机械臂),并在目标机械臂上选择一个参考点,即本实施例中的目标参考点,目标参考点一般选在目标机械臂远离机械臂底座的旋转轴上,基于该旋转轴建立相对坐标系,即本实施例中的工具坐标系,对目标参考点进行追踪,获取目标参考点相对于基坐标系的位置变化数据(例如,旋转角度,以及与基坐标原点之间的距离),根据目标参考点相对于基坐标系的位置变化数据,通过D-H矩阵法可以得到基坐标与工具坐标系之间的变换关系,进而根据变换关系建立机械臂的运动学模型。
具体地,步骤S30细化的步骤包括:
步骤c1,获取所述机械臂要到达的目标位置,并根据预设算法计算所述机械臂在所述目标位置对应的第二特征值。
步骤c2,根据所述第二特征值对所述机械臂进行运动学计算,以确定所述机械臂对应的目标逆解。
可知地,在机械控制领域,存在机械臂的正运动学求解和逆运动学求解,两者之间的区别可以概述为:控制系统是通过对机械臂每个自由度的电机的控制,来完成特定动作,同时接收相关传感器反馈的信息,形成稳定的闭环控制,根据机械臂每个关节的旋转角度、平移距离以及臂长,可以得到机械臂末端相对于原点的坐标,这叫正运动学;已知有一个需要移动到的坐标点,控制机械臂各个臂的旋转角度和移动距离,来使机械臂末端到达这个坐标点,求机械臂各个臂的旋转角度和移动距离的过程是逆运动学。本实施例是逆运动学求解的过程,首先获取机械臂末端要到达的目标位置,并根据预设算法计算机械臂在目标位置对应的第二特征值,根据第二特征值对机械臂进行运动学计算,以确定机械臂对应的目标逆解,具体地,计算第一位置对应的雅克比矩阵的伪逆矩阵(将第一位置的雅克比矩阵的转置与矩阵Jb的逆的乘积运算),然后,求解第一位置对应的笛卡尔空间的六维微分方程,计算关节空间速度限制,根据目标位置(相对于基坐标系)的表述,求解上述第一位置对应的笛卡尔空间的微分方程,得到第二特征值,从而,根据第二特征值对机械臂从第一位置到目标位置的运动过程进行正运动学计算,和计算逆运动学解,并将逆运动学解和正运动学计算进行比较,如果误差小于等于某个设定值,则表示成功获得逆运动学解,即本实施例中的目标逆解。
具体地,步骤c1细化的步骤包括:
步骤d1,计算所述机械臂在所述第一位置对应的雅克比矩阵的伪逆矩阵。
步骤d2,根据所述伪逆矩阵计算所述机械臂在所述第一位置对应的笛卡尔空间的微分方程。
步骤d3,根据所述微分方程计算所述机械臂的空间速度范围,并根据所述机械臂要到达的目标位置计算所述微分方程的解,得到所述机械臂在所述目标位置对应的第二特征值。
可知地,机械臂在第一位置对应的雅克比矩阵的伪逆矩阵的方法是:先获得第一位置对应的雅克比矩阵的转置,然后,获得Jb矩阵的逆,将第一位置对应的雅克比矩阵的转置与Jb矩阵的逆的乘积运算,得到第一位置对应的雅克比矩阵的伪逆矩阵,然后,计算第一位置对应的笛卡尔空间的六维微分方程,再计算关节空间速度限制,具体地,如果当前速度的绝对值大于最大设置速度,则使预设值K=最大设置速度÷当前速度的绝对值,如果当前速度的绝对值小于或等于最大设置速度,则使预设值K=1,当前可达到的速度Vq=当前速度与预设值K的乘积,获取到目标位置后,根据机械臂要到达的目标位置计算笛卡尔空间的六维微分方程,得到机械臂在目标位置对应的第二特征值。
具体地,步骤c2细化的步骤包括:
步骤e1,根据所述第二特征值对所述机械臂进行逆运动学和正运动学计算,以确定所述机械臂对应的逆运动学解和正运动学解。
步骤e2,将所述逆运动学解与所述正运动学解进行比较,以获取所述逆运动学解与所述正运动学解之间的目标误差值。
步骤e3,将所述目标误差值与预设误差值进行比较,若所述目标误差值大于所述预设误差值,则返回并执行根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件的步骤,直到所述目标误差值小于或等于所述预设误差值。
步骤e4,若所述目标误差值小于或等于所述预设误差值,则所述逆运动学解为所述机械臂的目标逆解。
得到第二特征值后,对机械臂从第一位置到目标位置的运动过程进行正运动学计算和计算逆运动学解,并将逆运动学解与正运动学解进行比较,以获取逆运动学解与正运动学解之间的目标误差值,如果目标误差值大于预设误差值,则返回并执行根据运动学模型计算机械臂对应的第一特征值,并判断第一特征值是否符合预设条件的步骤,做迭代收敛,直至得到的目标误差值小于或等于预设误差值,当目标误差值小于或等于预设误差值时,则逆运动学解为机械臂的目标逆解,进而,通过目标逆解实现对机械臂的控制。
在本实施例中通过获取机械臂的运动参数,基于获取的运动参数建立机械臂的运动学模型,进而,根据建立的机械臂的运动学模型,计算机械臂对应的第一特征值,并判断计算得到的第一特征值是否符合预设条件,若第一特征值不符合预设条件,则在运动学模型中插入阻尼曲线后,获取机械臂对应的目标逆解,最后根据目标逆解对机械臂进行控制,本发明通过在逆运动学求解过程中插入曲线阻尼,得到机械臂对应的逆运动学解,进而通过逆运动学解实现对机械臂的控制。
进一步地,参照图5,在本发明上述实施例的基础上,提出了本发明机械臂逆运动学控制方法的第二实施例。
本实施例是第一实施例中步骤S20细化的步骤,本实施例与本发明上述实施例的区别在于:
步骤S21,根据所述运动学模型,确定所述机械臂在所述第一位置对应的雅克比矩阵。
步骤S22,计算所述雅克比矩阵的转置与所述雅克比矩阵的乘积的秩,得到所述机械臂在所述第一位置对应的第一特征值。
步骤S23,将所述第一特征值与预设精度值进行比较,以判断所述第一特征值的进度是否符合预设条件。
可知地,采用D-H矩阵法建立机械臂的连杆坐标之间的关系(即运动学模型)后,根据基坐标系和工具坐标系之间的关系,获取第一位置对应的雅克比矩阵,进而,计算第一位置对应的雅克比矩阵的转置,再计算第一位置对应的雅克比矩阵与第一位置对应的雅克比矩阵的转置的乘积,该乘积用Ja表示,然后,再计算Ja的秩,具体地,若Ja内有一个r阶非零子式D,如果存在r+1阶子式且所有r+1阶子式都等于0,那么D称为Ja的最高阶非零子式,r就是Ja的秩,即本实施例中的第一特征值,假设本实施例中的预设精度值为0.001,将第一特征值与预设精度值进行比较,以判断第一特征值的进度是否符合预设条件,若第一特征值大于0.001,则判定第一特征值符合预设条件,这种情况下,直接计算第一位置对应的雅克比矩阵的伪逆矩阵,若第一特征值小于或等于0.001,则判定第一特征值不符合预设条件,这种情况下,将阻尼曲线插入矩阵Ja后,再计算第一位置对应的雅克比矩阵的伪逆矩阵。
在本实施例中给出了在运动学模型中插入曲线阻尼的条件,通过插入曲线阻尼,得到机械臂对应的逆运动学解,进而通过逆运动学解实现对机械臂的控制。
此外,参照图6,本发明实施例还提出一种机械臂逆运动学控制装置,所述机械臂逆运动学控制装置包括:
运动学模型创建模块10,用于获取机械臂的运动参数,并根据所述运动参数建立所述机械臂的运动学模型;
特征值计算模块20,用于根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件;
控制模块30,用于若所述第一特征值不符合预设条件,在所述运动学模型中插入与所述第一特征值对应的阻尼曲线后,获取所述机械臂对应的目标逆解,并根据所述目标逆解对所述机械臂进行控制。
可选地,所述运动学模型创建模块10,包括:
第一位置获取单元,用于获取所述机械臂当前所在的第一位置;
运动学模型创建单元,用于根据所述第一位置建立空间坐标系,并根据所述空间坐标系建立所述机械臂的运动学模型。
可选地,所述运动学模型创建单元,包括:
坐标系建立单元,用于在所述机械臂上确定目标参考点,并建立所述机械臂在所述第一位置对应的基坐标系和工具坐标系;
变换关系获取单元,用于根据所述目标参考点确定所述基坐标与所述工具坐标系之间的变换关系;
运动学模型建立单元,用于根据所述变换关系建立所述机械臂的运动学模型。
可选地,所述特征值计算模块20,包括:
雅克比矩阵获取单元,用于根据所述运动学模型,确定所述机械臂在所述第一位置对应的雅克比矩阵;
秩计算单元,用于计算所述雅克比矩阵的转置与所述雅克比矩阵的乘积的秩,得到所述机械臂在所述第一位置对应的第一特征值;
判断单元,用于将所述第一特征值与预设精度值进行比较,以判断所述第一特征值的进度是否符合预设条件。
可选地,所控制模块30,包括:
第二特征值计算单元,用于获取所述机械臂要到达的目标位置,并根据预设算法计算所述机械臂在所述目标位置对应的第二特征值;
目标逆解计算单元,用于根据所述第二特征值对所述机械臂进行运动学计算,以确定所述机械臂对应的目标逆解。
可选地,所述目标逆解计算单元,包括:
运动学解计算单元,用于根据所述第二特征值对所述机械臂进行逆运动学和正运动学计算,以确定所述机械臂对应的逆运动学解和正运动学解;
误差计算单元,用于将所述逆运动学解与所述正运动学解进行比较,以获取所述逆运动学解与所述正运动学解之间的目标误差值;
循环单元,用于将所述目标误差值与预设误差值进行比较,若所述目标误差值大于所述预设误差值,则返回并执行根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件的步骤,直到所述目标误差值小于或等于所述预设误差值;
判定单元,用于若所述目标误差值小于或等于所述预设误差值,则所述逆运动学解为所述机械臂的目标逆解。
可选地,所述第二特征值计算单元,包括:
伪逆矩阵计算单元,用于计算所述机械臂在所述第一位置对应的雅克比矩阵的伪逆矩阵;
微分方程计算单元,用于根据所述伪逆矩阵计算所述机械臂在所述第一位置对应的笛卡尔空间的微分方程;
空间速度范围计算单元,用于根据所述微分方程计算所述机械臂的空间速度范围,并根据所述机械臂要到达的目标位置计算所述微分方程的解,得到所述机械臂在所述目标位置对应的第二特征值。
此外,本发明实施例还提出一种可读存储介质,所述可读存储介质上存储有机械臂逆运动学控制程序,所述机械臂逆运动学控制程序被处理器执行时实现上述实施例提供的机械臂逆运动学控制方法中的操作。
上述各程序模块所执行的方法可参照本发明方法各个实施例,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体/操作/对象与另一个实体/操作/对象区分开来,而不一定要求或者暗示这些实体/操作/对象之间存在任何这种实际的关系或者顺序;术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个可读存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的机械臂逆运动学控制方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种机械臂逆运动学控制方法,其特征在于,应用于机械臂,所述机械臂逆运动学控制方法包括以下步骤:
获取机械臂的运动参数,并根据所述运动参数建立所述机械臂的运动学模型;
根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件;
若所述第一特征值不符合预设条件,在所述运动学模型中插入与所述第一特征值对应的阻尼曲线后,获取所述机械臂对应的目标逆解,并根据所述目标逆解对所述机械臂进行控制。
2.如权利要求1所述的机械臂逆运动学控制方法,其特征在于,所述根据所述运动参数建立所述机械臂的运动学模型的步骤,包括:
获取所述机械臂当前所在的第一位置;
根据所述第一位置建立空间坐标系,并根据所述空间坐标系建立所述机械臂的运动学模型。
3.如权利要求2所述的机械臂逆运动学控制方法,其特征在于,所述根据所述第一位置建立空间坐标系,并根据所述空间坐标系建立所述机械臂的运动学模型的步骤,包括:
在所述机械臂上确定目标参考点,并建立所述机械臂在所述第一位置对应的基坐标系和工具坐标系;
根据所述目标参考点确定所述基坐标与所述工具坐标系之间的变换关系;
根据所述变换关系建立所述机械臂的运动学模型。
4.如权利要求3所述的机械臂逆运动学控制方法,其特征在于,所述根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件的步骤,包括:
根据所述运动学模型,确定所述机械臂在所述第一位置对应的雅克比矩阵;
计算所述雅克比矩阵的转置与所述雅克比矩阵的乘积的秩,得到所述机械臂在所述第一位置对应的第一特征值;
将所述第一特征值与预设精度值进行比较,以判断所述第一特征值的进度是否符合预设条件。
5.如权利要求1所述的机械臂逆运动学控制方法,其特征在于,所述获取所述机械臂对应的目标逆解的步骤,包括:
获取所述机械臂要到达的目标位置,并根据预设算法计算所述机械臂在所述目标位置对应的第二特征值;
根据所述第二特征值对所述机械臂进行运动学计算,以确定所述机械臂对应的目标逆解。
6.如权利要求5所述的机械臂逆运动学控制方法,其特征在于,所述根据所述第二特征值对所述机械臂进行运动学计算,以确定所述机械臂对应的目标逆解的步骤,包括:
根据所述第二特征值对所述机械臂进行逆运动学和正运动学计算,以确定所述机械臂对应的逆运动学解和正运动学解;
将所述逆运动学解与所述正运动学解进行比较,以获取所述逆运动学解与所述正运动学解之间的目标误差值;
将所述目标误差值与预设误差值进行比较,若所述目标误差值大于所述预设误差值,则返回并执行根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件的步骤,直到所述目标误差值小于或等于所述预设误差值;
若所述目标误差值小于或等于所述预设误差值,则所述逆运动学解为所述机械臂的目标逆解。
7.如权利要求1至5任一项所述的机械臂逆运动学控制方法,其特征在于,所述根据预设算法计算所述机械臂在所述目标位置对应的第二特征值的步骤,包括:
计算所述机械臂在所述第一位置对应的雅克比矩阵的伪逆矩阵;
根据所述伪逆矩阵计算所述机械臂在所述第一位置对应的笛卡尔空间的微分方程;
根据所述微分方程计算所述机械臂的空间速度范围,并根据所述机械臂要到达的目标位置计算所述微分方程的解,得到所述机械臂在所述目标位置对应的第二特征值。
8.一种机械臂逆运动学控制装置,其特征在于,所述机械臂逆运动学控制装置包括:
运动学模型创建模块,用于获取机械臂的运动参数,并根据所述运动参数建立所述机械臂的运动学模型;
特征值计算模块,用于根据所述运动学模型计算所述机械臂对应的第一特征值,并判断所述第一特征值是否符合预设条件;
控制模块,用于若所述第一特征值不符合预设条件,在所述运动学模型中插入与所述第一特征值对应的阻尼曲线后,获取所述机械臂对应的目标逆解,并根据所述目标逆解对所述机械臂进行控制。
9.一种机械臂逆运动学控制设备,其特征在于,所述机械臂逆运动学控制设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的机械臂逆运动学控制程序,所述机械臂逆运动学控制程序被所述处理器执行时实现如权利要求1至7中任一项所述的机械臂逆运动学控制方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有机械臂逆运动学控制程序,所述机械臂逆运动学控制程序被处理器执行时实现如权利要求1至7中任一项所述的机械臂逆运动学控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110304775.8A CN113021345A (zh) | 2021-03-22 | 2021-03-22 | 机械臂逆运动学控制方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110304775.8A CN113021345A (zh) | 2021-03-22 | 2021-03-22 | 机械臂逆运动学控制方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113021345A true CN113021345A (zh) | 2021-06-25 |
Family
ID=76472552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110304775.8A Withdrawn CN113021345A (zh) | 2021-03-22 | 2021-03-22 | 机械臂逆运动学控制方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113021345A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113733081A (zh) * | 2021-08-10 | 2021-12-03 | 广州极飞科技股份有限公司 | 机器人参数的调整方法、装置、存储介质以及电子设备 |
-
2021
- 2021-03-22 CN CN202110304775.8A patent/CN113021345A/zh not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113733081A (zh) * | 2021-08-10 | 2021-12-03 | 广州极飞科技股份有限公司 | 机器人参数的调整方法、装置、存储介质以及电子设备 |
CN113733081B (zh) * | 2021-08-10 | 2022-12-27 | 广州极飞科技股份有限公司 | 机器人参数的调整方法、装置、存储介质以及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11845186B2 (en) | Inverse kinematics solving method for redundant robot and redundant robot and computer readable storage medium using the same | |
CN107738254B (zh) | 一种机械臂坐标系的转换标定方法与系统 | |
US8560122B2 (en) | Teaching and playback method based on control of redundancy resolution for robot and computer-readable medium controlling the same | |
Gong et al. | Analytical inverse kinematics and self-motion application for 7-DOF redundant manipulator | |
JP5114019B2 (ja) | エフェクタの軌道を制御するための方法 | |
CN110370256B (zh) | 机器人及其路径规划方法、装置和控制器 | |
Kim et al. | Inverse kinematics and geometric singularity analysis of a 3-SPS/S redundant motion mechanism using conformal geometric algebra | |
CN108638055B (zh) | 一种七自由度空间机械臂自主避障规划方法 | |
CN109344477B (zh) | 一种6自由度机械臂逆运动学求解方法 | |
CN116038702B (zh) | 一种七轴机器人逆解方法及七轴机器人 | |
CN113043286A (zh) | 一种多自由度机械臂实时避障路径规划系统及方法 | |
CN114147720B (zh) | 一种多自由度机械臂的逆运动学通用求解方法及装置 | |
CN113021345A (zh) | 机械臂逆运动学控制方法、装置、设备及可读存储介质 | |
CN109366486B (zh) | 柔性机器人逆运动学求解方法、系统、设备、存储介质 | |
Lam et al. | Motion planning for tree climbing with inchworm‐like robots | |
Gonzalez-Galvan et al. | Application of a precision-enhancing measure in 3D rigid-body positioning using camera-space manipulation | |
Pin et al. | Motion planning for mobile manipulators with a non‐holonomic constraint using the FSP (full space parameterization) method | |
CN114800527A (zh) | 一种移动作业机械臂末端施力控制方法及系统 | |
Misra et al. | Kinematic and dynamic analysis of an industrial six-axis robotic manipulator | |
CN113263498B (zh) | 机械臂移动控制方法、装置、终端设备及存储介质 | |
CN114734435A (zh) | 一种基于超球面的编码器校准方法、装置及系统 | |
CN114083538A (zh) | 双机械臂稳定夹持实现方法、装置和机器人 | |
CN117733872B (zh) | 一种基于方向性能的串联机器人逆运动学控制方法 | |
CN107636418B (zh) | 一种机器人控制方法、控制设备及系统 | |
CN117798938B (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210625 |
|
WW01 | Invention patent application withdrawn after publication |