一种基于优化算法的机械手运动学逆解
- 格式:pdf
- 大小:145.78 KB
- 文档页数:5
机械手臂的运动学逆解与轨迹规划算法研究近年来,随着工业自动化的迅速发展,机械手臂在生产制造等领域扮演着越来越重要的角色。
而机械手臂的运动学逆解与轨迹规划算法研究则是实现机械手臂自动控制的基础。
本文将对这一领域的研究进行探讨,分析其意义和挑战,以及目前的研究成果。
第一部分:运动学逆解机械手臂的运动学逆解是指在给定的目标位置和姿态时,求解机械手臂的关节角度。
这一问题在机械手臂的运动控制中至关重要。
传统的运动学逆解方法包括解析法和数值法。
解析法是一种基于数学模型的精确解法。
通过建立机械手臂的几何模型和运动方程,可以通过一系列的数学运算得到逆解。
然而,由于机械手臂的结构和约束条件复杂多样,解析法往往无法得到解析解,使得这种方法适用性有限。
数值法则是通过迭代计算的方式求解运动学逆解。
典型的数值法包括牛顿-拉夫逊法和雅可比逆法。
这些方法通过不断迭代,逼近目标位置和姿态,直至达到精确解。
数值法具有较广泛的适用性和可靠性,但计算量大,收敛速度较慢。
第二部分:轨迹规划在机械手臂执行任务时,需要按照既定的路径运动。
轨迹规划是指在给定的起始点和终止点之间,找到一条连续且平滑的路径。
这条路径需要考虑机械手臂的结构、约束条件以及运动速度、加速度等因素。
常见的轨迹规划算法包括直线插补、圆弧插补和样条插补等。
直线插补是最简单的一种方法,直接连接起始点和终止点,但在复杂任务中效果有限。
圆弧插补则通过构建多个圆弧段来实现平滑路径,但只适用于特定情况。
样条插补是一种更加通用的轨迹规划方法。
它通过建立机械手臂的位置和速度函数,并通过控制点来拟合曲线,实现路径规划。
样条插补具有较好的平滑性和连续性,适用于各种复杂任务。
第三部分:研究进展与挑战在机械手臂的运动学逆解与轨迹规划算法研究领域,近年来取得了许多重要进展。
越来越多的研究者致力于提出新的算法和方法,以提高运动学逆解的精准度和轨迹规划的效果。
同时,这一领域也面临着许多挑战。
首先,机械手臂的结构和约束条件多样化,需要针对不同的情况进行逆解和轨迹规划。
超冗余移动机械臂逆运动学快速求解的两种方法比较
机械臂逆运动学问题指的是已知机械臂末端执行器的位置和姿态,求解机械臂关节角
度的问题。
在工业自动化中,机械臂逆运动学求解是一个涉及到多关节之间相互复杂联系
的问题,需要非常高效的算法和方法来解决。
第一种方法是基于迭代的解析法。
这种方法的基本思路是利用机械臂的运动学关系,
将逆运动学问题转化为一个优化问题,通过迭代求解的方式不断逼近最优解。
该方法的优
点是简单易实现,不需要过多的计算资源,能够满足一般性逆运动学求解的要求。
缺点是
求解速度相对较慢,尤其是对于超冗余机械臂而言,迭代次数较多,计算开销较大。
第二种方法是基于机器学习的数据驱动方法。
该方法的基本思路是通过大量的数据样
本来训练一个能够准确求解逆运动学问题的模型,然后在实际应用中使用该模型进行预测。
这种方法的优点是求解速度非常快,能够满足实时性要求,且不受机械臂结构的限制。
缺
点是需要大量的数据样本进行训练,且在实际应用中可能会受到噪声和误差的影响,导致
预测结果不准确。
对于超冗余移动机械臂逆运动学快速求解,可以根据实际需求选择不同的方法。
如果
对解算速度要求不高,且希望解算结果准确,可以采用基于迭代的解析法;如果对解算速
度有很高的要求,且能够提供大量的数据样本来进行训练,可以采用基于机器学习的数据
驱动方法。
也可以综合两种方法的优点,设计一种更加高效的求解方法,以提高超冗余移
动机械臂逆运动学问题的求解效率。
超冗余移动机械臂逆运动学快速求解的两种方法比较超冗余移动机械臂是指机械臂的自由度大于任务所需的自由度的情况。
在这种情况下,机械臂有多种解决方案可以完成任务,因此需要求解逆运动学来确定机械臂的关节角度。
为了提高计算速度,有两种快速求解逆运动学的方法可以使用:基于几何约束的优化方法和基于启发式搜索的方法。
下面将分别介绍这两种方法,并比较它们的优缺点。
基于几何约束的优化方法是一种基于机械臂的几何特征和约束的求解方法。
它将机械臂的几何信息和任务的约束条件转化为一个优化问题,并使用优化算法来求解该问题。
常用的优化算法有梯度下降法、牛顿法等。
这种方法的优点是计算速度快,不需要进行大规模的搜索。
但是它的缺点是对于复杂的任务和机械臂结构,可能无法找到全局最优解,容易陷入局部极值。
基于启发式搜索的方法是一种通过搜索空间中的解来寻找逆运动学的方法。
它通过定义启发函数和搜索策略来进行搜索。
常用的搜索算法有遗传算法、模拟退火算法等。
这种方法的优点是可以找到全局最优解,适用于复杂的任务和机械臂结构。
缺点是计算速度相对较慢,需要进行大规模的搜索。
通过比较这两种方法,可以发现它们之间存在一些差异。
基于几何约束的优化方法更适合于简单的任务和机械臂结构,计算速度快,但可能无法找到全局最优解。
基于启发式搜索的方法适用于复杂的任务和机械臂结构,可以找到全局最优解,但计算速度较慢。
在选择逆运动学求解方法时,需要根据具体的任务和机械臂结构来进行选择。
超冗余移动机械臂逆运动学的快速求解方法有基于几何约束的优化方法和基于启发式搜索的方法。
这两种方法各有优缺点,需要根据具体情况进行选择。
超冗余移动机械臂逆运动学快速求解的两种方法比较随着工业机器人的不断发展,超冗余移动机械臂的出现激发了人们对创新空间的探索。
然而,机械臂求解的逆运动学问题也是一个非常复杂的问题。
传统的逆运动学求解方法常常会遇到计算困难和计算时间过长等问题,并且在对超冗余的移动机械臂进行求解时这些问题会更加严重。
为了解决这些问题,目前有许多快速求解逆运动学问题的方法出现,比如基于神经网络、多项式拟合、粒子群优化、遗传算法等等。
本文将对其中两种方法进行比较,并重点分析它们的优缺点。
基于二次规划的快速超冗余移动机械臂逆运动学求解方法是一种基于优化算法的求解方法。
其基本思想是通过最小二乘法寻找机械臂末端位置与期望位置之间的误差,并通过这个误差来更新机械臂的关节角度,从而实现逆运动学的求解。
该方法的主要步骤包括以下几个方面:(1)建立机械臂的运动学和动力学模型,确定机械臂的末端位置和期望位置。
(2)通过最小二乘法计算机械臂末端位置与期望位置之间的误差。
(3)利用误差对机械臂的关节角度进行更新。
该方法的优点是计算速度比较快,适用于高精度控制。
缺点是需要进行较多的计算和编程工作,算法的表现也很依赖于机械臂模型的建立,因此对建模的精度要求比较高。
(2)通过对矩阵形式的运动学和动力学模型进行求解,得到各个关节角度。
综合比较:基于二次规划的超冗余移动机械臂逆运动学求解方法和基于矩阵方程的超冗余移动机械臂逆运动学求解方法各有自己的优势和不足。
前者计算速度比较快,精度比较高,适用于需要高精度控制的场合;后者计算速度非常快,且比较简便,适用于一些对精度要求不太高但要求计算速度较快的场合。
两种方法均需要对机械臂的运动学和动力学模型进行建模,因此对建模的精确度都有一定的要求。
因此,在实际应用中应根据需要选择合适的方法,并在建模时尽量提高精度,以达到更好的控制效果。
综上所述,在超冗余移动机械臂的逆运动学问题求解中,选择一种合适的方法非常重要,而不同的方法的优缺点也需要考虑清楚自己所需要的优势和局限性。
超冗余移动机械臂逆运动学快速求解的两种方法比较超冗余移动机械臂逆运动学是机器人控制中的一个重要问题,其主要目的是计算出给定末端执行器的位置和姿态时,各个关节的转动角度。
在实际应用中,机械臂需要具有超冗余结构,以提高机械臂的可靠性和精度。
在超冗余移动机械臂中,由于自由度数量的增加,求解逆运动学问题变得更加复杂和困难。
因此,在这种情况下,如何快速而准确地求解逆运动学问题是机器人控制中的重要研究方向。
目前,有许多方法用于解决超冗余移动机械臂逆运动学问题,其中最常见的方法是迭代学习控制和局部优化方法。
本文将比较这两种方法的优缺点。
迭代学习控制方法是一种基于学习的方法,它通过不断迭代优化得到答案。
它通过定义一个代价函数来度量系统的性能,并将逆运动学求解视为一种优化问题。
在每一次迭代中,该方法通过计算代价函数梯度,不断更新关节角度,直到达到预定的目标。
该方法具有以下优点:1.速度快:该方法运行速度快,可以在几毫秒内求解出逆运动学问题。
2.收敛性好:该方法能够在短时间内收敛到较高的精度。
3.适用范围广:该方法不依赖于特定的机械臂结构,因此可适用于各种类型的超冗余移动机械臂。
然而,该方法也存在一些缺点:1.依赖性强:该算法对模型的参数精度和初值敏感,需要进行多次试验和调试。
2.运算量较大:该方法需要在每轮迭代中计算代价函数梯度,运算量较大。
3.局限性:目前该方法主要适用于小工作空间内的机器人,当机器人的工作空间增大时,其效果将受到一定的限制。
局部优化方法是一种基于搜索的算法,它通过搜索局部最优解来求解逆运动学问题。
该算法通过分解问题,每次只搜索一小部分空间,通过适应性和随机性探索问题空间。
该方法具有以下优点:1.精度高:这种方法能够在可接受的计算代价下找到一个接近最优解的结果。
2.鲁棒性好:由于对初始化的关节角度和模型参数的依赖性较小,因此其具有较好的鲁棒性。
1.局限性:该方法容易陷入局部最优解,从而导致求解失败。
五自由度机械手抓取运动学逆解算法python五自由度机械手抓取运动学逆解算法Python实现1. 引言在现代工业生产中,机械手广泛应用于物料搬运和生产操作等领域。
其中,五自由度机械手是一种常见且经济高效的机械手类型。
机械手的关键问题之一是运动学逆解算法,即根据末端执行器(抓爪)位置和姿态,计算关节坐标以实现准确抓取动作。
本文将介绍基于Python 语言的五自由度机械手抓取运动学逆解算法的实现方法,以帮助读者理解和应用该算法。
2. 五自由度机械手运动学概述五自由度机械手具有五个关节,分别控制机械手的运动。
机械手的抓取运动学逆解算法的目的是根据末端执行器的位置和姿态,计算出五个关节的坐标。
3. 运动学逆解算法的基本原理(1)确定末端执行器的位置和姿态我们需要确定末端执行器的位置和姿态。
通过传感器或外部测量,可以获取末端执行器的三维坐标和姿态数据。
(2)坐标转换将末端执行器的位置和姿态数据,转换为机械手坐标系中的坐标数据。
这需要进行坐标系的变换和旋转运算。
(3)运动学逆解算法根据机械手的机构参数、关节类型和末端执行器的坐标数据,可以利用几何方法或数值计算方法,计算出机械手的关节坐标。
4. 五自由度机械手抓取运动学逆解算法的Python实现为了实现五自由度机械手的抓取运动学逆解算法,我们可以使用Python编程语言。
下面是该算法的实现步骤。
(1)导入所需库和模块我们首先导入所需的库和模块,例如NumPy库用于数值计算和矩阵操作。
(2)定义机械手参数根据实际机械手的参数,我们定义关节长度、关节类型和关节个数等参数。
(3)定义逆解算函数编写一个逆解算函数,输入为末端执行器的位置和姿态数据,输出为机械手的关节坐标。
函数内部实现逆解算的算法。
(4)编写主程序编写主程序来调用逆解算函数,并输出结果。
5. 个人观点和理解五自由度机械手抓取运动学逆解算法是机械手控制领域的重要研究内容。
通过深入理解运动学逆解算法,我们可以更好地控制机械手的运动,实现精准的抓取操作。
超冗余移动机械臂逆运动学快速求解的两种方法比较机械臂逆运动学是机械臂控制中的重要问题之一,目的是确定机械臂各个关节的角度和位置,使得机械臂末端达到目标位置和姿态。
机械臂逆运动学求解方法的快速性能对机械臂的实时控制至关重要。
目前,超冗余移动机械臂逆运动学快速求解的方法有两种:优化方法和学习方法。
优化方法主要是通过优化算法来寻找机械臂逆运动学的解,其中常见的优化算法有遗传算法、粒子群算法、模拟退火算法等。
这些算法通过迭代的方式,不断优化机械臂逆运动学的解,使得机械臂末端能够尽快达到目标位置和姿态。
优化方法的优点是适用于各种类型的机械臂,对于复杂的非线性问题也有较好的求解性能。
缺点是计算复杂度较高,求解时间较长。
学习方法是通过机器学习的方式来求解机械臂逆运动学的解。
这些方法利用神经网络、深度学习等技术,通过训练数据来学习机械臂逆运动学的映射关系,从而快速求解机械臂逆运动学的解。
学习方法的优点是求解速度快,适用于实时控制系统。
缺点是需要大量的训练数据来进行模型训练,且对于复杂的非线性问题的求解能力有限。
在比较两种方法的优缺点时,可以看出优化方法在求解精度和求解范围方面有优势,而学习方法在求解速度方面更有优势。
在实际应用中,可以根据具体的要求选择合适的方法。
如果对求解精度和求解范围要求较高,可以选择优化方法;如果对求解速度要求较高,可以选择学习方法。
还可以结合两种方法来提高机械臂逆运动学的求解性能。
可以利用优化方法对机械臂逆运动学求解进行初始化,然后再利用学习方法进行快速的迭代求解。
这样既能保证求解的精度和范围,又能提高求解的速度。
超冗余移动机械臂逆运动学的快速求解是一个重要的问题,目前有优化方法和学习方法两种途径。
选择合适的方法可以根据具体的要求和应用场景来确定,也可以结合两种方法来提高求解性能。
一种仿人机械臂的运动学逆解的几何求解方法随着科技的不断发展,机械臂在工业自动化、医疗辅助和智能制造等领域中得到了越来越广泛的应用。
仿人机械臂作为一种新型的机械臂,具有更高的柔顺性和精确性,可以更好地模拟人体肢体的运动,并且在日常生活中也有着广泛的应用前景。
仿人机械臂的运动学逆解问题一直是研究的重点和难点之一。
运动学逆解是指在已知机械臂末端执行器的位置和姿态情况下,根据机械臂的结构参数和关节角度,求解出满足末端执行器位置和姿态要求的机械臂关节角度。
而几何求解方法是其中一种研究手段,通过空间几何关系建立数学模型,从而实现运动学逆解。
本文将介绍一种基于几何求解的仿人机械臂运动学逆解方法,并对其优缺点进行分析。
一、仿人机械臂的运动学逆解问题1. 仿人机械臂的特点仿人机械臂是一种模拟人体上肢结构和运动规律的机械臂,通常由肩部、肘部和手部三个自由度组成,并且具有较高的柔顺性和精确性。
它可以模拟人体上肢的各种复杂运动,如抓取、握持、挥舞等,因此在医疗辅助、人机交互等领域有着广泛的应用。
2. 运动学逆解问题的挑战仿人机械臂的运动学逆解问题比传统机械臂更加复杂,主要表现在以下几个方面:① 多自由度:仿人机械臂通常具有较多的自由度,关节角度之间存在复杂的耦合关系,从而增加了运动学逆解的难度。
② 柔性和精确性要求高:仿人机械臂需要具有较高的柔顺性和精确性,要求逆解方法能够准确地求解出关节角度,以实现精准的末端执行器运动。
③ 复杂的运动规律:仿人机械臂需要模拟人体上肢的各种复杂运动,如抓取、握持、挥舞等,要求逆解方法能够处理多种不同的运动规律。
二、基于几何求解的仿人机械臂运动学逆解方法基于几何的运动学逆解方法是通过建立机械臂末端执行器位置和姿态的数学模型,从而推导出机械臂关节角度的求解公式。
这种方法常常需要涉及空间几何关系的建立和复杂的数学推导,但由于其几何直观性和适用性广泛,因此在仿人机械臂运动学逆解中得到了广泛的应用。
文章编号:1002-0446(2001)02-0137-05一种基于优化算法的机械手运动学逆解X马化一 张艾群 张竺英(中国科学院沈阳自动化研究所 沈阳 110015)摘 要:本文给出一种基于优化算法的机械手运动学逆解的方法,这种优化方法基于信赖域方法,,具有超线性的收敛速率.这种方法不仅具有牛顿方法的快速收敛性,又具有理想的总体收敛性.这种方法较CCD&BF S有明显的优点,可以在一般的PC机上实现实时求解.在P II400上仅需不到10ms就可以求得最优解.关键词:逆解;信赖域;总体收敛.中图分类号: T P24 文献标识码: BA INVERSE SOLUTION FOR MANIPULATOR KINEMATICSBASED ON OPTIMAL ALGORITHMM A Hua-yi ZHANG Ai-qun ZHANG Zhu-ying(S henyang I nstitute of A utomation,Ch inese A cad emy of S cienc es,S heny ang 110015) Abstract:T his paper pr oposes an appr oach to the inver se solutio n for the manipulato r kinem atics based on the o ptimal a lg or ithm.T his optima l appr oach,based on co nfidence threshold algo rithm,possesses the super linear con-ver gence ra te.T his appr oach has not o nly t he r apid conv erg ence for New to n's metho d,but also t he desirable over-all co nv erg par ed w ith CCD&BF S,this appr oach has the obvious adv ant ages and implem ents a real time solutio n o n PC Computer g enerally.T he optim al so lutio n ca n be solved on PÊ400,using less than10ms. Keywords:inver se solut ion,co nfidence thr esho ld,o ver all conv erg ence1 引言(Introduction)机械手逆解是机械手正解的逆过程,即给定机械手末端操纵器需要达到的位置和姿态,求解机械手各关节的关节变量.机械手运动学逆解在机器人中占有重要地位,直接关系到运动分析,离线编程和轨迹规划等.随着机器人应用范围的扩展,很多场合要求机械手离线逆解是不能满足要求的.对于简单结构(clo sed-form)的机械手,直接解可以很方便就得到(Puma机械手).但是由于一些原因,有些机械手的结构并不这样简单,比如在设计过程中,驱动机构如果是液压式的,做成简单结构就会影响机械手的性能指标,;在加工、制造和装配的过程中都会出现一些误差,这种误差的存在,就会使得机械手结构变得不简单(clo sed-form).虽然可以在控制器中加入一些补偿措施,但这必将加大技术人员的工作量.对于具有复杂结构的机械手,大体上有两类方法解机械手逆解问题.第一类方法是基于代数求解的方法.这种方法对于六DOF机械手是很好的一种求解方法.这类方法主要是基于特征多项式连续法[13,14]和消去法[2,3].这种算法是非常有效的,并且可以解出所有的解.但这种方法复杂,而且只适用于六自由度机械手问题.另一类算法是数值算法,数值解法可以分为直接解法和间接解法两类.直接解法包括牛顿法和牛顿-拉普森法[9].这种算法如果雅克比矩阵为奇异,则问题不可解;如果初始点不是充分接近目标点,问题也不可解.间接解法是基于优化的方法,这种解法主要包括CCD法、BFS法、CCD&BFS法和遗传算法等.CCD法,即最速下降法,具有全局收敛的特性,但只具有线性的搜索速度.BFS算法虽具有超线性的收敛速率,但在远离目标点时不收敛于最优解. CCD&BFS算法虽克服了二者的缺点,但仍不能用于实时逆解.本文提出一种基于信赖域的优化算法.这种算第23卷第2期2001年3月机器人 R OBOT Vo l.23,N o.2 M ar ch,2001X收稿日期:2000-09-05法不仅具有拟牛顿法的收敛速率,而且具有理想的总体收敛特性.这种算法不仅稳定,而且非常简单,执行速率又很快,可以被应用于在线的运动学逆解.本文组织如下:第二部分,讨论问题的描述.第三部分,将讨论信赖域法及其算法,第四部分,给出一些实际应用的例子,第五部分.将给出本文的结论.2 问题的描述(Description of problem )基于优化方法求解机械手运动学逆解属于间接的方法,首先需要建立关于目标问题的数学模型,然后针对具体问题利用从模型中得到的信息进行优化求解.2.1 连杆坐标系的建立本文利用D-H 法建立连杆坐标系,图1显示了机械手连杆坐标系各个参数的定义和坐标系的建立方法.图1 D-H 连杆坐标系参数定义及建立F ig.1 D efinition and establishment of D-H link coo rdinate par ameter s2.2 建立目标函数假定目标末端操纵器相对于基坐标系的位形矩阵为:H d =R dP d[0]1.其中R d =[d 1,d 2,d 3]t为末端操纵器的目标点的方向矩阵;P d 为末端操纵器目标点的位置向量.当前点的末端操纵器相对于基坐标系的位形矩阵为H c =R cP c[0]1,其中R c =[h 1,h 2,h 3]为末端操纵器当前点的方向矩阵;P c 为末端操纵器的当前点位置.机械手的运动学逆解问题可以被描述为:给定目标位姿矩阵H d ,求解q 1,q 2,…,q n ,并且q Ii ≤q i ≤q Ui(0≤i ≤n ),使得当前位姿矩阵H c 与目标位姿矩阵拟合,即‖P d -P h (q )‖=0,d j h j (q *)=1,j =1~3,‖·‖为U clidean 范数,(·)为向量点积.于是可以得出关于机械手运动学逆解目标函数的最优化模型E (q )=$p (q )+$O (q )$P (q )=D P (q )D P (q )=(P d -P h )2$O =∑3j =1(djh j -1)2(1)其中E (q )为总的误差,$P 为位置误差,$O 为方向误差.对于本最优化问题就是得到q *,使得E (q *)的值为小到允许的误差范围.在实际应用中$O 远远小于$P ,并且对于三个方向的要求也不同,可以分别给予权重E (q )=w p $P (q )+w o $O (q )$O =∑3j =1woj(d j h j -1)2(2)应该指出权重非常重要,通常权重的选择与对于位置和方向的允许误差有关.但是如果方向向量的权如果不是0,那么就应该大于10000.3 算法的导出(Alorithm )信赖预算法应用梯度和二阶导数的信息.梯度可以直接导出,但是对于二阶导数若直接导出则相当麻烦,.可以应用由BFGS 修正的Hessian 矩阵来代替二阶导数.3.1 目标函数的梯度和二阶导数梯度可以被定义为如下$E (q )=5E (q )5q 1,5E (q )5q 2,…,5E (q )5q n(3)138 机 器 人2001年3月 根据目标函数,一阶导数的每一项可以导出为5E(q) 5q i=2z i[(P d-P h(q))×P ih+∑3j=1(d j h j(q)-1)(h j(q)×d j) 如果关节i是转动关节2z i(P d-P h(q)) 如果关节i是移动关节(4) 直接求解二阶导数不仅麻烦,而且非常浪费机时,可应用BFGS法修正H k+1=I-s k y T ks T k y kH k I-s k y T ks T k y k+s k s T ks T k y k(5)y k是最后两次迭代梯度的差,s k为搜索方向s k+1=H K+1s k(6) 3.2 信赖域算法拟牛顿算法具有超线性的收敛速度,但是对于高度非线性的方程,,在最优点的邻域内收敛域于最优解.而信赖域算法不仅具有超线性的收敛速率,而且可以具有全局的收敛速率.它的主要思想:利用二次函数q k=f(x k)+g k s+0.5s T B k s逼近目标函数f(x),给定第k步迭代x k的一个邻域8k, 8k={x‖x-x k‖≤h k},使在这个邻域内q k(s)与目标函数一致;然后利用这个n维二次模型确定搜索方向s k,信赖域的模型为min q(k)(s)=f(x k)+g T k s+0.5s T G k ss.t.‖s‖≤h k(7)‖·‖为范数.可以应用任意范数.方程中G k是二阶导数,用BFGS修正的Hessian矩阵G k≈B k= H-1k代替;于是可得q k=f(x k)+g k s+12s T B k s=f(x k)+g k H g k+12g T k H k g k(8)3.3 算法Step1:初始化机械手结构数:偏距a(a1,a2,…,a n),连杆长度d(d1,d2,…,d n),扭角A(A1,A2,…,A n),给定每一个关节变量的初始角q(q1,q2,…,q n),机械手的结构限制q I i和q U i(i=1~n),目标函数精度E,初始步长限制h0,初始化Hessian矩阵;Step2:解每一个关节和末端操纵器的位姿矩阵;Step3:解目标函数的梯度5E(q)5q i;Step4:解目标函数的搜索方向s i;Step5:令A=1,if s i+q i≥q U i,A=(q U i-q i)/s i如果s i+q i≤q I i,A=(q I i-q i)/s i;i=1~n;Step6:q i=q i+A.s i,i=1~n;Step7:解E(q k)和r k;Step8:如果r k<0.75 令 h k+1=h k/4如果r k>0.75 令 h k+1=2h k否则 令 h k+1=h kStep9:如果r k≤0,令x k+1=x k 否则x k+1=x k+s k;Step10:返回步2.4 例子(Examples)本方法最初是为解决水下监控机械手在线运动学反解而导出的一种方法.在作业时,机械手末端操纵器被要求垂直于导管架焊缝并实时跟踪于它.本方法具有超线性的收敛速度,可以在线求解.以下的几个例子是分别基于Schilling机械手和Pum a机械手的.所有的程序都是在PII400计算机上进行的,编程语言为V isue C++.表1 机械手结构参数(Table1 Architecture parameters of manipulator)关节i a i(mm)A i(rad)d i(mm)H i(rad)范围(rad) 194P/2186.700~-P/2 2311-P/2-58.8P/2-P/4~P/4 3307022.50-P/2~P/6 412.8-P/20-P/2-P/2~P/6 50000-P3/4~P3/4 例1 图2为被应用于水下机器人的Shilling 机械手,它为五自由度的机械手,并且其结构也为非简单型的(Closed-fo rm).由于解存在的不确定性,求解矩阵方程的高度非线性,使这样一个问题变得复杂化.在跟踪导管架的作业中跟踪的位姿误差为不大于0.1mm,角度误差为不小于0.8°.我们给定目标函数的权值为:w p=1,w o1=w o2=0,w o3=100000.表2为根据对目标函数精度不同10-1~10-8而得到139第23卷第2期马化一等: 一种基于优化算法的机械手运动学逆解表2 用信赖域方法解机械手运动学逆解Table 2 Inverse solution for the manipulator kinematics with conf idence thresholdE t T 精确解-0.78570-0.5236-0.52360q 1q 2q 3q 4q 51e -1332-0.7867-1.7e -3-0.5272-0.5163 5.2e -31e -2436-0.7872-1.7e -3-0.5269-0.5166 5.3e -31e -3439-0.7871-1.7e -3-0.5270-0.5165 5.3e -31e -4444-0.7870-1.6e -3-0.5270-0.5164 5.3e -31e -5444-0.7870-1.6e -3-0.5270-0.5164 5.3e -31e -6878-0.7866-3.9e -4-0.5257-0.5190 2.0e -41e -7995-0.7860-2.1e -4-0.5247-0.5212 1.4e -41e -810103-0.7857-1.4e -4-0.5242-0.52211.0e -4图2 Schilling 机械手结构参数F ig.2 A rchitectur e par ameter s of Schiling manipulator的运动学反解及耗时.t ,T 分别为执行的时间和重复的次数,E 为目标函数要求的精度.初始角度变量可以随机选择.为q 1=-0.1,q 2=-0.3,q 3=-0.5,q 4=0.1,q 5=0.6.本算法对于一般的精度要求E =0.01,只花了6ms ,重复40次;对于精确解只花了11m s,软件也更加鲁棒.例2 本例子是本算法的运算时间与CCD&BFGS 法,其他的方法,参考文章[1].随机100次给出目标位姿和方向,比较信赖域算法于CCD -BFS 算法.图3是比较结果曲线,从图中可以看出信赖域算法明显好于CCD-BFS 算法.. 例3 在本例子中,说明可以用本方法求解机械手的所有解,如果多解存在,给出不同的初始角度变量,经过几次循环,就可以求出全部机械手运动学逆解.本例是基于PU MA 机械手.目标位姿为:d 1=[0.5650,0.6896,0.4530]t ;d 2=[-0.4753,0.7208,-0.5045]t ;d 3=[-0.6745,0.0697,0.7350]t ;P =[-330.412,56.2007,744.957]给出一个初始的精确解为q =(20°,-80°,30°,60°,20°,-30°).表3为PUM A 机械手结构参数;表4为用信赖域法解决的所有运动学反解;I II ~VIII 为8组解,其中q 1,q 2,…q n 为机械手的6个关节变量,A 、T 分别为精确解和信赖域法求得出的解.图3 信赖域与CCD -BF S 平均执行时间比较Fig.3 Com par ed w it h co nfidence thr esho ldand CCD -BF S tim e140 机 器 人2001年3月表3 Puma机械手参数(Table3 Parameters of PUMA manipulator)关节i H i(度)A i a i(度)d i范围(度)1900-900-160~16020431.80149.09-225~453900900-45~225400-90433.07-110~170500900-100~100600056.25-266~266表4 用信赖域方法解PUMA机械手全部解与精确解比较Table4 Compared with the overall solutions and the precise solutions of PUMA manipulatorI II III IV V VI VII VIIIq1A20202020155.48155.48155.48155.48 T19.99819.97819.87620.108155.463155.491155.394155.501q2A-80-38.47-142.53100-80-38.47-142.53-80 T-80.001-38.453-14.34199.982-79.952-38.461-142.612-79.918q3A30301501503030150150 T30.01229.861149.973150.15229.96730.191150.057150.107q4A60149.105157.07418.2312.50416.22621.7871155.313 T60.036149.132157.13518.19612.62716.22321.721155.391q5A2035.230549.497371.230891.133150.775935.66731.2175 T20.06735.22449.51771.207.91.23150.78235.68931.287q6A-30-125.518-136.20622.3841-117.764-128.443-136.00488.4451 T-29.978-125.629-136.10622.352-117.754-128.451-136.10788.4675 结论(Conclusion)本篇文章得出了一个解决机械手运动学反解的最优化方法.本最优化方法是基于信赖域法,超线性收敛于最优解点.由于其收敛速度很快,故可以被应用再线求解机械手运动学反解.由于本算法没有直接用到二阶导数,故不存在奇异解的问题.本方法用于解决监控机械手在线垂直跟踪导管架.经实践证明,可以很好地应用于这样一个系统,也可以被用于连续轨迹的跟踪问题.参考文献 (References)1 L i-Ch un Tom my Wang.A Combined Optimization M ethod for Solvin g T he In verse Kinematics Problem of M ech anical M anipula-tors.IEEE T rans of Rob otics and Autom ation,1991,7(4):489 -4992 XinHu a Zhao.A Success ive App roximation Algorith m for Th e Invers e Position An alys is of Serial M anipulator.Robotica,1999, 17:487-4893 Din esh M anoca.Efficien t Invers e Kinematics for General M anip-ulator s.IEE E T rans of Robotics an d Au tomation,1994,10(5)4 James N iels en.On the Kinematics Analysis of Rob otic M echa-nism s.Th e International Journal of Robotics Resear ch,1999,18(12):1147-11605 袁亚湘,孙文瑜.最优化理论与方法.科学出版社,19976 Burke J,M or J J.Convergence Property Of T rus t Region M eth-ods for Linear and Convex Con strain s.M ath,pr og.,1990,32:305-3367 C on n A R,Gou ld N I M.Global Convergen ce of a C las s of T rus t Region Alg or ith ms for Optimiz ation With S imple Bou nds,SIAM J.N umer.Anal,1988,25:433-4608 蒋新松.机器人导论.辽宁科学技术出版社.19949 An geles J.On Th e Numerical Solu tion for The In vers e Kine-matics Problem.International Jorunal of Rob otics Res earch, 1985,4(2):21-3710刘永超.遗传算法解机械手运动学逆解.机器人,1998,20(6): 421-42611Kazeronian.K.On T he Nu merical Invers e Kin ematics of Robotics M anipu lator.ASM E j M ech anisms T rans mis sions Automation Des ign,1987,109:120-12612 C ox D,Little J,O'Shea D.Ideals,Varieties,and Algorithm (s econ d edition).New York Ver lag13 Wamper C,M organ A,Sommese A.Numerical Continuation M ethods for Solvin g Polynomial Sys tems Arising in Kin ematics.AS M E J.M ech.Design.1990,112:59-6814 Gill P E,M urray W.Quasi New ton M ethods for Unconstrained Optimization.J.Ins t.M ath.Applns,1972,9:91-108作者简介: 马化一(1974-),硕士研究生.研究领域:水下监控式机械手. 张艾群(1959-),男,研究员,研究室主任,硕士生导师.研究领域:水下机器人. 张竺英(1964-),副研究员,硕士生导师.研究领域:水下机器人.141第23卷第2期马化一等: 一种基于优化算法的机械手运动学逆解。