CN111914980A - 一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法 - Google Patents
一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法 Download PDFInfo
- Publication number
- CN111914980A CN111914980A CN202010481009.4A CN202010481009A CN111914980A CN 111914980 A CN111914980 A CN 111914980A CN 202010481009 A CN202010481009 A CN 202010481009A CN 111914980 A CN111914980 A CN 111914980A
- Authority
- CN
- China
- Prior art keywords
- joint
- redundant
- solution
- joints
- mechanical arm
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000002068 genetic effect Effects 0.000 title claims abstract description 62
- 238000004364 calculation method Methods 0.000 claims abstract description 15
- 230000008569 process Effects 0.000 claims abstract description 7
- 239000011159 matrix material Substances 0.000 claims description 36
- 239000012636 effector Substances 0.000 claims description 22
- 230000035772 mutation Effects 0.000 claims description 13
- 210000000349 chromosome Anatomy 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 238000009401 outcrossing Methods 0.000 claims description 5
- 229910002056 binary alloy Inorganic materials 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000036544 posture Effects 0.000 description 12
- 230000007246 mechanism Effects 0.000 description 6
- 238000005259 measurement Methods 0.000 description 5
- GIMSJJHKKXRFGV-BYPJNBLXSA-N 4-amino-1-[(2r,3s,4r,5r)-3-fluoro-4-hydroxy-5-(hydroxymethyl)oxolan-2-yl]-5-iodopyrimidin-2-one Chemical compound C1=C(I)C(N)=NC(=O)N1[C@H]1[C@@H](F)[C@H](O)[C@@H](CO)O1 GIMSJJHKKXRFGV-BYPJNBLXSA-N 0.000 description 4
- 238000003491 array Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000010187 selection method Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007921 spray Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- 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/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- Molecular Biology (AREA)
- Pure & Applied Mathematics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computational Mathematics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Numerical Control (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Genetics & Genomics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Physiology (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,包括:A.改进传统D‑H方法,引入虚拟关节建立关节坐标系;B.基于改进D‑H参数表,构建机械臂正运动学模型;C.将M个关节划分为N个冗余关节和M‑N个非冗余关节;D.求解非冗余关节的解析解;E.以N个冗余关节为变量,生成遗传算法的初始种群;F.以轨迹为单位进行逆运动学解算,在遗传算法求解一条轨迹的过程中使用变区间搜索;G.重复E,F步骤,直至所有轨迹求解完成。本发明以轨迹为单位进行求解,延续进化种群的使用,有效提高了遗传算法的搜索速度和解的质量,保证解的连续性;同时引入变区间搜索和参考点的策略提高了解的搜索速度和自适应程度。
Description
技术领域
本发明涉及机器人运动学技术,具体涉及一种解析解和改进遗传算法相结合的冗余机械臂运动学解算方法。
背景技术
机械臂的运动学问题是工业机器人应用的基础,是机械臂轨迹规划和实时控制的前提,只有确定机械臂末端执行器的空间位姿与机械臂关节变量之间的映射关系,才能够进行编程控制。
若机械臂自由度的数目大于执行目标任务所必需的自由度的个数时,便可以认为该机械臂是冗余的。冗余可以为机械手提供其行动的灵活性和功能性,从而可以避开障碍、关节极限和奇点。
目前,对于机械臂的正向运动学建模方法,包括D-H方法和对偶四元数法,这两种方法适用于冗余和非冗余的机械臂。而对于非冗余机械臂的逆向运动学求解方法主要分为解析法、数值法、几何法等等,解析法简单直接,运算速度快,但是并不是所有机械臂都能够求其解析解,只有满足Pipper准则的机械臂才能够求取解析解,目前24类6自由度正交机械臂结构,只有5类有解析解;数值法通常是通过雅可比矩阵求解关节变量的一种迭代的算法,由于需要多次迭代,运算量较大,收敛速度慢;而几何法只能够应用于部分特殊构型的机械臂上。对于冗余机械臂的逆向运动学问题,目前可以使用基于伪逆矩阵、基于任务扩充、基于智能算法和固定关节角法等方法,而且这些方法也可以应用于非冗余机械臂逆向运动学;基于伪逆矩阵的冗余机械臂逆运动学求解方法可以获得满足条件的逆运动学解,但是实现起来较为复杂并且难以在有限时间内得到目标轨迹的平滑解;而基于任务扩充的方法则是通过增加任务空间自由度的方法来消除冗余,但缺点在于额外添加的任务约束难以有解析表达式;基于智能算法的运动学求解方法实现简单,避免了伪逆矩阵的复杂计算,简化了求解过程,但是单纯的使用智能算法由于搜索空间巨大,难以在有限时间内搜索到能够满足应用指标的可行解;固定关节角法是固定一些关节的角度,从而消除冗余,但该方法失去了冗余机械臂的灵活特性。
发明内容
为此,本发明提供一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,以解决现有技术中冗余机械臂求解难、速度慢和精度低的问题。
为了实现上述目的,本发明的技术方案是:
一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,包括以下步骤:
S1.建立机械臂各关节的坐标系,并设置全局坐标系,通过传统D-H建模方法来建立 D-H参数表,并在机械臂上不便于获得D-H参数的位置引入虚拟关节,其中虚拟关节不是机械臂上的真实关节,且不具备自由度;
S2.获取引入虚拟关节以后的机械臂模型的D-H参数表,构建机械臂的正运动学模型;
S3.将不包括虚拟关节在内的M个机械臂关节划分为N个冗余关节和M-N个非冗余关节;
S4.令M-N个非冗余关节为参数化关节,使用代数方法,求解非冗余关节的解析解;
S5.以N个冗余关节为变量,生成改进遗传算法的初始种群;
S6.输入需要求解的机械臂末端轨迹信息,以轨迹为单位进行逆运动学解算,在遗传算法求解一条轨迹的过程中使用变区间搜索;
S7.重复S5,S6步骤,直至全部输入轨迹求解完成。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述步骤S1 包括以下步骤:
S11、采用右手坐标系建立机械臂的第一个关节的坐标系,并将该坐标系设置为基础坐标系;
S12、采用右手坐标系依照D-H方法建立机械臂其余所有关节的坐标系,并且在末端执行器处设置右手坐标系作为末端执行器坐标系;
S13、从基础坐标系开始建立机械臂的D-H参数表,先获取基础坐标系与机械臂的第一个关节之间的位置关系和角度关系数据,具体包括对应关节之间的距离、扭转角度、偏移量及关节角度参数,填入D-H表,此后测量机械臂的第一个关节与第二个关节之间的位置和角度关系数据,填入D-H表,依次进行,直到最后获取第M个关节与末端执行器之间的位置和角度关系数据,传统的D-H参数表完成;
S14、在获取关节坐标系之间的D-H参数时,当出现D-H参数无法沿着机身进行测量,即假设目前在测量关节i和关节i+1之间的D-H参数,而关节i和关节i+1的坐标系原点连线与机身方向不一致时,则从关节i沿机身绘制直线,在直线超出机身的地方设虚拟关节,并使虚拟关节转向关节i+1,测量关节i与虚拟关节之间的D-H参数,之后再测量虚拟关节与关节i+1之间的D-H参数,保证D-H参数都能够沿着机身获取;
S15、采用右手坐标系对所有虚拟关节建立关节坐标系。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述步骤S2 包括以下步骤:
S21、对于加入虚拟关节后的机器人模型重新获得包括虚拟关节在内的所有关节之间的距离、扭转角度、偏移量及关节角度参数,并填入D-H表中形成新的D-H参数表;
S22、将加入虚拟关节后获得的D-H参数表的数据,带入下式,其中Ai i-1(qi)表示第i个关节和第i-1个关节之间坐标转换矩阵,θi表示关节角度,ai表示偏移量,αi表示扭转角度,di表示距离,s和c分别表示sin和cos;即得到关节i-1到关节i之间的坐标变换矩阵;
S23、基于步骤S22,依次计算出从基础坐标系到末端执行器坐标系所有关节之间的坐标变换矩阵,带入下式:
其中Tn 0(q)为末端执行器相对于机械臂基础坐标系的位姿矩阵。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述步骤S3 中,根据具体机械臂的任务要求和逆运动学方程,选择便于非冗余关节求解析解的关节为冗余关节:根据步骤S23获取末端执行器相对于机械臂基础坐标系的位姿矩阵为机械臂的正向运动学方程,令所有关节数值为自变量,令正向运动学方程与目标位姿矩阵相等,得到相应的一系列超越方程;当机械臂运动任务要求M-N个自由度时,则超越方程组有M-N 个线性无关方程,M个变量,在超越方程组中任意选择N个关节变量为冗余关节变量。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述步骤S4 中,将选定好的冗余关节参数化,即将冗余关节的关节数值作为已知量,带入到超越方程组中进行求解,得到非冗余关节的解析解。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述S5中,以冗余关节为变量作为遗传算法的编码参数,即使用二进制种群编码方式,将N个冗余关节的变量使用二进制进行表示,以N个冗余关节变量的二进制表示长度为L,则Li表示第i个冗余关节的二进制编码长度,将N个冗余关节变量的二进制编码从左往右排列形成一行L列的向量,则该向量就表示种群的其中一个个体,当种群规模为P时,则能够随机生成P行L列的0-1矩阵来表示随机生成的初始化种群。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述步骤S6 包括以下步骤:
S61、以机械臂末端需要运行的轨迹信息和末端矩阵为输入,记录总共的轨迹条数和每条轨迹需要求解的点的数目,设置当前求解轨迹为第一条轨迹;
S62、每条轨迹第一个目标点的期望关节数值设置为0向量,其余目标点则以上一个点的解为期望姿态,设置交叉概率为0.6,变异概率为0.1;
S63、确定当前求解的末端位置的冗余关节的搜索区间;
S64、将二进制种群转为冗余关节的实数数值;
S65、将每一个个体的实数数值带入到非冗余关节的解析解方程中获得所有关节的解;
S66、计算每一个个体的适应度函数;
S67、将适应度最小的个体视为最优个体,若当前种群最优个体的适应度函数值超过阈值或者从S64至S610的执行次数超过最大遗传次数,进入S611,否则进入S68;
S68、对上一代种群进行选择操作;
S69、对每一个个体生成0-1之间的随机数,模拟自然界染色体交叉行为,随机数大于交叉概率的个体进行交叉操作;
S610、对每一个个体生成随机数,模拟自然界染色体变异行为,随机数大于变异概率的个体进行变异操作,返回S64;
S611、存储当前求解的末端位置的解,根据S61所记录的信息来判断是否到达轨迹的最后一个点,若不是当前轨迹的最后一个点,将上一个点的最后进化种群作为轨迹下一个点的初始种群,回到S63;如果是当前轨迹的最后一个点,则进一步判断当前轨迹是否是最后一条轨迹,如果是轨迹的最后一个点且不是最后一条轨迹,则将求解目标设置为下一条轨迹,回到S62;如果是轨迹的最后一个点也是最后一条轨迹则结束解算方法。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述步骤S61 的所需要的轨迹信息包括总的轨迹数目,每一条轨迹的点数,每一个目标点的位置与姿态矩阵;
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述的步骤 S62的期望关节数值为一维度为1行M列的具体向量,该向量传递给适应度函数从而计算每一个个体的具体数值,对于不是轨迹的第一个点的目标矩阵,期望关节数值使用上一个解作为期望关节数值,从而优先选择靠近上一个位姿的解,保证运动的连续性,对于轨迹的第一个点,则设置该向量为0向量,以使得机械臂以较小的变动到达目标位姿。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述的步骤 S63包括以下步骤:
S631、在S62中获取期望机械臂姿态,同时设置求解轨迹点的无解计数为0;
S632、对转动型冗余关节,以冗余关节数值中心±2°为搜索区间,对移动型冗余关节,以冗余关节数值中心±200mm为搜索区间;
S633、将种群基于搜索区间转为冗余关节实数数值r,计算公式如下所示:
其中N是指对应冗余关节的编码位数,bk是指对应冗余关节的二进制编码的第k位的数值,p是指搜索区间的1/2;
S634、将S633中每一个个体的冗余关节数值,带入到非冗余关节的解析式中,获得所有个体对应的解;
S635、S634中获得每一个个体的m个解,每一个解对应着机械臂M个关节的数值,判断每一个解是否满足所有关节的可达区间,即机械臂的每一个关节是否能够到达这个数值,对于旋转关节是旋转至某一数值,对于伸缩关节是伸缩至某一数值,在可达区间内的解认为是有效解,计算S634中获得的有效解的个数;
S636、若S635中有效解的个数不是0,则代表当前搜索区间可以使用,使用该搜索区间,S63步骤结束,若有效解个数是0同时无解计数数值小于20,无解计数加一,转到S637,若有效解个数是0同时无解计数数值大于20小于40,无解计数加一,搜索区间扩大一倍,转到S637,若有效解个数是0但无解计数数值大于40小于60,无解计数加一,搜索区间扩大两倍,转到S637,若有效解个数是0同时无解计数数值大于60,则将搜索空间扩大到整个冗余关节的可达空间;
S637、重新执行步骤S5,随机生成二进制种群,回到S633。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述的S66 的适应度函数如下:
其中xi是指当前个体的逆运动学,θic是指上一个点的解的对应关节的数值,fiaCi是收敛速度。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述的S68 中的选择机制使用锦标赛选择法。经过S66计算以后,种群中的每一个个体都对应着一个适应度数值,将每一个个体的适应度数值除以种群中的最大的适应度数值得到归一化的适应度数组,按照归一化的适应度数值从大到小对个体进行排序,生成P行2列的适应度数组,第一列对应个体索引,第二列对应归一化的适应度数值,使用1减去所有的归一化的适应度数值,此后新建一个P行1列数组,新数组的第i行的数值为对应行的归一化的适应度数组的数值到第一行的归一化的适应度数组的数值的累加。此后,将新数组中的每一个数除以整个数组中最大的数生成处于0-1范围内的新数组。该新数组应该是从上往下依次递增,最后一个数为1。此后生成P次0-1范围内的随机数,每次将归一化后的适应度数组中仅次于生成随机数的个体取出放入新种群中。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述的S69 中的交叉机制使用多点交叉。多点交叉即对于当前种群中的每一个个体,生成N个随机数,若第i个随机数大于交叉概率,则对该种群中的第i个二进制变量进行交叉操作。随机生成不大于Li的整数h,将对应个体的对应变量的第1个到第h个二进制数值与下一个个体的对应变量的第1个到第h个二进制数值互换。从而生成新种群。
所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,所述的S610 中的变异机制使用多次基本位变异。多次基本位变异即对于当前种群中的每一个个体,生成N个随机数,若第i个随机数大于变异概率,则对该种群中的第i个二进制变量进行变异操作。随机生成不大于Li的整数h,将对应个体的对应变量的第h个二进制数值取反。从而生成新种群。
本发明的技术效果在于:
1.本发明将冗余机械臂拆分成了非冗余关节和冗余关节,将冗余机械臂的逆运动学问题转化为了非冗余机械臂的解析解和无穷多解的选解问题,避免了求伪逆矩阵,计算量小,容易理解与实现;
2.本发明对传统D-H方法进行了改进,引入了虚拟关节,从而避免了人为测量参数可能导致的误差;
3.本发明可以适用于所有类型的机械臂;
4.本发明将遗传算法进行改进,使之能够更好的用于机械臂的逆运动学求解,以轨迹为基础进行求解,增强了轨迹解的连续性,降低了求解的时间;在遗传算法中加入变区间搜索,一方面增强了解的连续性,加快了搜索的速度;在遗传算法中引入另一方面还保留了全局性搜索的能力,增强了算法的自适应强度;
本发明所提供的机械臂运动学解算方法可以满足工业现场要求,保证实时性与连续性。
附图说明
图1为本发明的流程示意图;
图2为本发明实施例加入虚拟关节以后的八轴机械臂抽象图;
图3为本发明实施例的机械臂关节坐标系;
图4为本发明实施例的未改进遗传算法二号关节轨迹;
图5为本发明实施例的改进遗传算法二号关节轨迹;
图6为本发明实施例的未改进遗传算法轨迹第66个点迭代次数;
图7为本发明实施例的改进遗传算法轨迹第66个点迭代次数;
图8为本发明实施例的未改进遗传算法轨迹每个点求解时间;
图9为本发明实施例的改进遗传算法轨迹每个点求解时间。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,包括以下步骤:
S1.建立机械臂各关节的坐标系,并设置全局坐标系,通过传统D-H建模方法来建立 D-H参数表,并在机械臂上不便于获得D-H参数的位置引入虚拟关节,其中虚拟关节不是机械臂上的真实关节,且不具备自由度;
S2.获取引入虚拟关节以后的机械臂模型的D-H参数表,构建机械臂的正运动学模型;
S3.将不包括虚拟关节在内的M个机械臂关节划分为N个冗余关节和M-N个非冗余关节;
S4.令M-N个非冗余关节为参数化关节,使用代数方法,求解非冗余关节的解析解;
S5.以N个冗余关节为变量,生成改进遗传算法的初始种群;
S6.输入需要求解的机械臂末端轨迹信息,以轨迹为单位进行逆运动学解算,在遗传算法求解一条轨迹的过程中使用变区间搜索;
S7.重复S5,S6步骤,直至全部输入轨迹求解完成。
其中步骤S1包括以下步骤:
S11、采用右手坐标系建立机械臂的第一个关节的坐标系,并将该坐标系设置为基础坐标系。
S12、采用右手坐标系依照D-H方法建立机械臂其余所有关节的坐标系,并且在末端执行器处设置右手坐标系作为末端执行器坐标系。
S13、从基础坐标系开始建立机械臂的D-H参数表,先获取基础坐标系与机械臂的第一个关节之间的位置关系和角度关系数据,具体包括对应关节之间的距离、扭转角度、偏移量及关节角度参数,填入D-H表,此后测量机械臂的第一个关节与第二个关节之间的位置和角度关系数据,填入D-H表,依次进行,直到最后获取第M个关节与末端执行器之间的位置和角度关系数据,传统的D-H参数表完成。
S14、在获取关节坐标系之间的D-H参数时,有的D-H参数是可以直接通过机械臂的制作图纸或沿机身进行测量来获得的,而有的参数无法沿着机身进行测量,比方说两个关节之间的最短距离并不是沿机身方向,这时就需要进行凌空测量,这种测量容易引入较大的测量误差。所以当出现D-H参数无法沿着机身进行测量,即假设目前在测量关节i和关节i+1之间的D-H参数,而关节i和关节i+1的坐标系原点连线与机身方向不一致时,则从关节i沿机身绘制直线,在直线超出机身的地方设虚拟关节,并使虚拟关节转向关节i+1,测量关节i与虚拟关节之间的D-H参数,之后再测量虚拟关节与关节i+1之间的D-H参数,保证D-H参数都能够沿着机身获取。S15、采用右手坐标系对所有虚拟关节建立关节坐标系。
步骤S2包括以下步骤:
S21、对于加入虚拟关节后的机器人模型重新获得包括虚拟关节在内的所有关节之间的距离、扭转角度、偏移量及关节角度参数,并填入D-H表中形成新的D-H参数表;
S22、将加入虚拟关节后获得的D-H参数表的数据,带入下式,其中Ai i-1(qi)表示第i个关节和第i-1个关节之间坐标转换矩阵,θi表示关节角度,ai表示偏移量,αi表示扭转角度,di表示距离,s和c分别表示sin和cos;即得到关节i-1到关节i之间的坐标变换矩阵;
S23、基于步骤S22,依次计算出从基础坐标系到末端执行器坐标系所有关节之间的坐标变换矩阵,带入下式:
其中Tn 0(q)为末端执行器相对于机械臂基础坐标系的位姿矩阵。
步骤S3中,根据具体机械臂的任务要求和逆运动学方程,选择便于非冗余关节求解析解的关节为冗余关节:根据步骤S23获取末端执行器相对于机械臂基础坐标系的位姿矩阵为机械臂的正向运动学方程,令所有关节数值为自变量,令正向运动学方程与目标位姿矩阵相等,得到相应的一系列超越方程;当机械臂运动任务要求M-N个自由度时,则超越方程组有M-N个线性无关方程,M个变量,在超越方程组中任意选择N个关节变量为冗余关节变量。在实际操作中,具体的任务空间要求的自由度数根据任务要求进行确定,如仅需要机械臂末端的X轴方向运动而不需要末端执行器姿态的的任务需要一维自由度。而需要在平面运动不需要末端执行器姿态的任务需要二维自由度。需要在整个空间进行运动而不需要末端执行器姿态的任务需要三维自由度。需要在整个空间进行运动而仅需要一个维度的方向的任务需要四维自由度。整个空间进行运动而仅需要二个维度的方向的任务需要五维自由度,需要在整个空间进行运动而且需要全部维度的方向的任务需要六维自由度。现在假设机械臂有6个关节,即M为6,同时当前任务需要四维自由度。那么就是取M-N=4,即N取2,也就是在机械臂上任选2个关节变量为冗余关节变量。
步骤S4中,将选定好的冗余关节参数化,即将冗余关节的关节数值作为已知量,带入到超越方程组中进行求解,得到非冗余关节的解析解。
步骤S5中,以冗余关节为变量作为遗传算法的编码参数,即使用二进制种群编码方式,将N个冗余关节的变量使用二进制进行表示,以N个冗余关节变量的二进制表示长度为L,则Li表示第i个冗余关节的二进制编码长度,将N个冗余关节变量的二进制编码从左往右排列形成一行L列的向量,则该向量就表示种群的其中一个个体,当种群规模为P 时,则能够随机生成P行L列的0-1矩阵来表示随机生成的初始化种群。
步骤S6包括以下步骤:
S61、以机械臂末端需要运行的轨迹信息和末端矩阵为输入,记录总共的轨迹条数和每条轨迹需要求解的点的数目,设置当前求解轨迹为第一条轨迹;
S62、每条轨迹第一个目标点的期望关节数值设置为0向量,其余目标点则以上一个点的解为期望姿态,设置交叉概率为0.6,变异概率为0.1;
S63、确定当前求解的末端位置的冗余关节的搜索区间;
S64、将二进制种群转为冗余关节的实数数值;
S65、将每一个个体的实数数值带入到非冗余关节的解析解方程中获得所有关节的解;
S66、计算每一个个体的适应度函数;
S67、将适应度最小的个体视为最优个体,若当前种群最优个体的适应度函数值超过阈值或者从S64至S610的执行次数超过最大遗传次数,进入S611,否则进入S68;
S68、对上一代种群进行选择操作;
S69、对每一个个体生成0-1之间的随机数,模拟自然界染色体交叉行为,随机数大于交叉概率的个体进行交叉操作;
S610、对每一个个体生成随机数,模拟自然界染色体变异行为,随机数大于变异概率的个体进行变异操作,返回S64;
S611、存储当前求解的末端位置的解,根据S61所记录的信息来判断是否到达轨迹的最后一个点,若不是当前轨迹的最后一个点,将上一个点的最后进化种群作为轨迹下一个点的初始种群,回到S63;如果是当前轨迹的最后一个点,则进一步判断当前轨迹是否是最后一条轨迹,如果是轨迹的最后一个点且不是最后一条轨迹,则将求解目标设置为下一条轨迹,回到S62;如果是轨迹的最后一个点也是最后一条轨迹则结束解算方法。
步骤S61的所需要的轨迹信息包括总的轨迹数目,每一条轨迹的点数,每一个目标点的位置与姿态矩阵;
步骤S62的期望关节数值为一维度为1行M列的具体向量,该向量传递给适应度函数从而计算每一个个体的具体数值,对于不是轨迹的第一个点的目标矩阵,期望关节数值使用上一个解作为期望关节数值,从而优先选择靠近上一个位姿的解,保证运动的连续性,对于轨迹的第一个点,则设置该向量为0向量,以使得机械臂以较小的变动到达目标位姿。
步骤S63包括以下步骤:
S631、在S62中获取期望机械臂姿态,同时设置求解轨迹点的无解计数为0;
S632、对转动型冗余关节,以冗余关节数值中心±2°为搜索区间,对移动型冗余关节,以冗余关节数值中心±200mm为搜索区间;
S633、将种群基于搜索区间转为冗余关节实数数值r,计算公式如下所示:
其中N是指对应冗余关节的编码位数,bk是指对应冗余关节的二进制编码的第k位的数值,p是指搜索区间的1/2;
S634、将S633中每一个个体的冗余关节数值,带入到非冗余关节的解析式中,获得所有个体对应的解;
S635、S634中获得每一个个体的m个解,每一个解对应着机械臂M个关节的数值,判断每一个解是否满足所有关节的可达区间,即机械臂的每一个关节是否能够到达这个数值,对于旋转关节是旋转至某一数值,对于伸缩关节是伸缩至某一数值,在可达区间内的解认为是有效解,计算S634中获得的有效解的个数;
S636、若S635中有效解的个数不是0,则代表当前搜索区间可以使用,使用该搜索区间,S63步骤结束,若有效解个数是0同时无解计数数值小于20,无解计数加一,转到S637,若有效解个数是0同时无解计数数值大于20小于40,无解计数加一,搜索区间扩大一倍,转到S637,若有效解个数是0但无解计数数值大于40小于60,无解计数加一,搜索区间扩大两倍,转到S637,若有效解个数是0同时无解计数数值大于60,则将搜索空间扩大到整个冗余关节的可达空间;
S637、重新执行步骤S5,随机生成二进制种群,回到S633。
其中步骤S66的适应度函数如下:
其中xi是指当前个体的逆运动学,θic是指上一个点的解的对应关节的数值,fiaCi是收敛速度。
步骤S68中的选择机制使用锦标赛选择法。经过S66计算以后,种群中的每一个个体都对应着一个适应度数值,将每一个个体的适应度数值除以种群中的最大的适应度数值得到归一化的适应度数组,按照归一化的适应度数值从大到小对个体进行排序,生成P行2列的适应度数组,第一列对应个体索引,第二列对应归一化的适应度数值,使用1减去所有的归一化的适应度数值,此后新建一个P行1列数组,新数组的第i行的数值为对应行的归一化的适应度数组的数值到第一行的归一化的适应度数组的数值的累加。此后,将新数组中的每一个数除以整个数组中最大的数生成处于0-1范围内的新数组。该新数组应该是从上往下依次递增,最后一个数为1。此后生成P次0-1范围内的随机数,每次将归一化后的适应度数组中仅次于生成随机数的个体取出放入新种群中。
步骤S69中的交叉机制使用多点交叉。多点交叉即对于当前种群中的每一个个体,生成N个随机数,若第i个随机数大于交叉概率,则对该种群中的第i个二进制变量进行交叉操作。随机生成不大于Li的整数h,将对应个体的对应变量的第1个到第h个二进制数值与下一个个体的对应变量的第1个到第h个二进制数值互换。从而生成新种群。
步骤S610中的变异机制使用多次基本位变异。多次基本位变异即对于当前种群中的每一个个体,生成N个随机数,若第i个随机数大于变异概率,则对该种群中的第i个二进制变量进行变异操作。随机生成不大于Li的整数h,将对应个体的对应变量的第h个二进制数值取反。从而生成新种群。
本实施例以一款八轴工业机器人为例对本发明的基于解析解和改进遗传算法的冗余机械臂运动学解算方法进行详细的描述。该工业机器人的运动任务目标是喷涂一个半圆形的轨迹。
S1、实际的八轴机械臂在引入3个虚拟关节以后的抽象图如图1所示,此后基于D-H方法对共11个关节的机械臂设置其关节坐标系,如图2所示,其中关节1的坐标系为基坐标系;
S2、根据机械臂制作时的参数获取基于改进D-H方法的D-H参数表,如下表1所示,基于D-H参数表获得关节与关节之间的旋转矩阵,从而获得机械臂末端的位姿矩阵公式Te b;
表1 D-H表
连杆 | theta<sub>i</sub> | d<sub>i</sub>(mm) | a<sub>i</sub>(mm) | alpha<sub>i</sub> | offset |
1 | Θ<sub>1</sub> | 1960 | 0 | Pi/2 | 0 |
2 | Θ<sub>2</sub> | 0 | 1152 | Pi/2 | Pi/2 |
3 | 0 | 0 | 243 | 0 | 0 |
4 | 0 | L4 | 0 | -pi/2 | 3700 |
5 | Θ<sub>5</sub> | 0 | 752 | Pi/2 | 0 |
6 | 0 | 1800 | 0 | Pi/2 | Pi/2 |
7 | Θ<sub>7</sub> | 1425 | 0 | -pi/2 | 0 |
8 | 0 | 240 | 392 | 0 | 0 |
9 | 0 | L9 | 0 | 0 | 2700 |
10 | Θ<sub>10</sub> | 663 | 0 | Pi/2 | 0 |
11 | Θ<sub>11</sub> | -1138 | 128 | Pi/2 | Pi/2 |
S3、选择一号关节和六号关节为冗余关节,其余关节为非冗余关节;
S4、设目标的机械臂末端位姿矩阵如下式所示:
易知:
令冗余关节为参数化关节,由公式左右对应公式相等,并且使用变量分离的方法求取非冗余关节的解析解;
S5、以一号关节和六号关节的数值为参数,以二进制编码形式生成遗传算法的初始种群;
S6、以轨迹为单位进行逆运动学解算,在遗传算法求解一条轨迹的过程中使用变区间搜索,
具体步骤如下所示:
S61、获取轨迹信息和目标矩阵,设置交叉和变异概率分别是0.6和0.1,种群规模为300;
S62、人为设置轨迹第一个点的期望姿态,该期望姿态可以任意设置,此处设置为全0;轨迹中其余点的期望姿态设置为上一个点的解;
S63、确定当前点的冗余关节的搜索区间,具体步骤如下所示:
S631、设置期望姿态为冗余关节的中心数值,设置无解计算为0;
S632、冗余关节中心数值上下确定初始的搜索区间,一号关节设置为[-2°,+2°],六号关节的初始搜索区间设置为[-200,+200];
S633、将当前的二进制种群基于当前的搜索区间转为冗余关节的实数数值,一号关节的范围在[-2+theta1,2+theta1],六号关节的范围在[-200+L6,200+L6],其中theta1和L6分别对应着期望姿态的一号和六号关节的数值;
S634、将S633中获得每一个个体对应的实数数值带入到非冗余关节的解析解公式中,获取所有关节的解的数值;
S635、计算S634中获得的有效解的个数;
S636、若S635中的有效解的个数不是0,则代表当前搜索区间可以使用,使用该搜索区间,结束,若有效解个数是0同时无解计数数值大于20,则将搜索区间扩大一倍,无解计数清 0,若有效解个数是0但无解计数数值不大于20,则转到S637,无解计数加一;
S637、重新随机生成二进制种群,回到S633;
S64、基于S63中确定的搜索区间将二进制种群转为冗余关节的实数数值;
S65、将S64中获得每一个个体对应的实数数值带入到非冗余关节的解析解公式中,获取所有关节的解的数值;
S66、计算所有个体的适应度函数值,与上一个点的距离近为目标来设计适应度函数,如下所示:
其中xi是指当前个体的逆运动学,θic是指上一个点的解的对应关节的数值,fiaCi是收敛速度,此处设置fiaC=[1,2,200,2,1,200,5,5];
S67、判断种群是否满足了完成条件,完成条件包括当前种群最有个体的适应度函数值是否超过了0.1492或者从S64至S610的执行次数超过500,则进入S611,否则进入S68;
S68、基于竞标赛选择法进行种群选择;
S69、对生成随机数大于交叉概率的个体进行多点交叉操作;
S610、对生成随机数大于变异概率的个体进行两次基本位变异操作;
S611、存储当前求解的末端位置的解,判断是否到达轨迹的最后一个点,如果是当前轨迹的最后一个点,则判断当前轨迹是否是最后一条轨迹,如果是轨迹的最后一个点且不是最后一条轨迹,则将求解目标设置为下一条轨迹,回到S62;如果是轨迹的最后一个点也是最后一条轨迹则算法结束;若不是当前轨迹的最后一个点,将上一个点的最后进化种群作为轨迹下一个点的初始种群,回到S63;
S7、输出所有轨迹的运动学逆解;
下图4和5分别是遗传算法改进前和改进后的其中一条轨迹的二号关节的解的变化图,由图中可以看出改进后的遗传算法的二号关节作为俯仰关节是符合半圆形的运动轨迹的,并且点之间的变动很小,保证了轨迹的连续性;下图5、6分别是未改进的遗传算法和改进后遗传算法进行求解的同一个点的迭代次数与适应度数值,由此可以看出改进后的算法极大的降低了搜索次数,节约了时间,提高了解的质量;下图7、8分别是未改进的遗传算法和改进后的遗传算法在MATLAB中求解一条轨迹的求解时间,可以看出,改进后的算法的求解时间明显降低,由改进前的171.12s缩短到了17.66s。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
Claims (10)
1.一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,包括以下步骤:
S1.建立机械臂各关节的坐标系,并设置全局坐标系,通过传统D-H建模方法来建立D-H参数表,并在机械臂上不便于获得D-H参数的位置引入虚拟关节,其中虚拟关节不是机械臂上的真实关节,且不具备自由度;
S2.获取引入虚拟关节以后的机械臂模型的D-H参数表,构建机械臂的正运动学模型;
S3.将不包括虚拟关节在内的M个机械臂关节划分为N个冗余关节和M-N个非冗余关节;
S4.令M-N个非冗余关节为参数化关节,使用代数方法,求解非冗余关节的解析解;
S5.以N个冗余关节为变量,生成改进遗传算法的初始种群;
S6.输入需要求解的机械臂末端轨迹信息,以轨迹为单位进行逆运动学解算,在遗传算法求解一条轨迹的过程中使用变区间搜索;
S7.重复S5,S6步骤,直至全部输入轨迹求解完成。
2.根据权利要求1所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,所述步骤S1包括以下步骤:
S11、采用右手坐标系建立机械臂的第一个关节的坐标系,并将该坐标系设置为基础坐标系;
S12、采用右手坐标系依照D-H方法建立机械臂其余所有关节的坐标系,并且在末端执行器处设置右手坐标系作为末端执行器坐标系;
S13、从基础坐标系开始建立机械臂的D-H参数表,先获取基础坐标系与机械臂的第一个关节之间的位置关系和角度关系数据,具体包括对应关节之间的距离、扭转角度、偏移量及关节角度参数,填入D-H表,此后测量机械臂的第一个关节与第二个关节之间的位置和角度关系数据,填入D-H表,依次进行,直到最后获取第M个关节与末端执行器之间的位置和角度关系数据,传统的D-H参数表完成;
S14、在获取关节坐标系之间的D-H参数时,当出现D-H参数无法沿着机身进行测量,即假设目前在测量关节i和关节i+1之间的D-H参数,而关节i和关节i+1的坐标系原点连线与机身方向不一致时,则从关节i沿机身绘制直线,在直线超出机身的地方设虚拟关节,并使虚拟关节转向关节i+1,测量关节i与虚拟关节之间的D-H参数,之后再测量虚拟关节与关节i+1之间的D-H参数,保证D-H参数都能够沿着机身获取;
S15、采用右手坐标系对所有虚拟关节建立关节坐标系。
3.根据权利要求1所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,所述步骤S2包括以下步骤:
S21、对于加入虚拟关节后的机器人模型重新获得包括虚拟关节在内的所有关节之间的距离、扭转角度、偏移量及关节角度参数,并填入D-H表中形成新的D-H参数表;
S22、将加入虚拟关节后获得的D-H参数表的数据,带入下式,其中Ai i-1(qi)表示第i个关节和第i-1个关节之间坐标转换矩阵,θi表示关节角度,ai表示偏移量,αi表示扭转角度,di表示距离,s和c分别表示sin和cos;即得到关节i-1到关节i之间的坐标变换矩阵;
S23、基于步骤S22,依次计算出从基础坐标系到末端执行器坐标系所有关节之间的坐标变换矩阵,带入下式:
其中Tn 0(q)为末端执行器相对于机械臂基础坐标系的位姿矩阵。
4.根据权利要求1所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于:所述步骤S3中,根据具体机械臂的任务要求和逆运动学方程,选择便于非冗余关节求解析解的关节为冗余关节:根据步骤S23获取末端执行器相对于机械臂基础坐标系的位姿矩阵为机械臂的正向运动学方程,令所有关节数值为自变量,令正向运动学方程与目标位姿矩阵相等,得到相应的一系列超越方程;当机械臂运动任务要求M-N个自由度时,则超越方程组有M-N个线性无关方程,M个变量,在超越方程组中任意选择N个关节变量为冗余关节变量。
5.根据权利要求1所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,所述步骤S4中,将选定好的冗余关节参数化,即将冗余关节的关节数值作为已知量,带入到超越方程组中进行求解,得到非冗余关节的解析解。
6.根据权利要求1所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,所述S5中,以冗余关节为变量作为遗传算法的编码参数,即使用二进制种群编码方式,将N个冗余关节的变量使用二进制进行表示,以N个冗余关节变量的二进制表示长度为L,则Li表示第i个冗余关节的二进制编码长度,将N个冗余关节变量的二进制编码从左往右排列形成一行L列的向量,则该向量就表示种群的其中一个个体,当种群规模为P时,则能够随机生成P行L列的0-1矩阵来表示随机生成的初始化种群。
7.根据权利要求1所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,所述步骤S6包括以下步骤:
S61、以机械臂末端需要运行的轨迹信息和末端矩阵为输入,记录总共的轨迹条数和每条轨迹需要求解的点的数目,设置当前求解轨迹为第一条轨迹;
S62、每条轨迹第一个目标点的期望关节数值设置为0向量,其余目标点则以上一个点的解为期望姿态,设置交叉概率为0.6,变异概率为0.1;
S63、确定当前求解的末端位置的冗余关节的搜索区间;
S64、将二进制种群转为冗余关节的实数数值;
S65、将每一个个体的实数数值带入到非冗余关节的解析解方程中获得所有关节的解;
S66、计算每一个个体的适应度函数;
S67、将适应度最小的个体视为最优个体,若当前种群最优个体的适应度函数值超过阈值或者从S64至S610的执行次数超过最大遗传次数,进入S611,否则进入S68;
S68、对上一代种群进行选择操作;
S69、对每一个个体生成0-1之间的随机数,模拟自然界染色体交叉行为,随机数大于交叉概率的个体进行交叉操作;
S610、对每一个个体生成随机数,模拟自然界染色体变异行为,随机数大于变异概率的个体进行变异操作,返回S64;
S611、存储当前求解的末端位置的解,根据S61所记录的信息来判断是否到达轨迹的最后一个点,若不是当前轨迹的最后一个点,将上一个点的最后进化种群作为轨迹下一个点的初始种群,回到S63;如果是当前轨迹的最后一个点,则进一步判断当前轨迹是否是最后一条轨迹,如果是轨迹的最后一个点且不是最后一条轨迹,则将求解目标设置为下一条轨迹,回到S62;如果是轨迹的最后一个点也是最后一条轨迹则结束解算方法。
8.根据权利要求7所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,所述步骤S61的所需要的轨迹信息包括总的轨迹数目,每一条轨迹的点数,每一个目标点的位置与姿态矩阵。
9.根据权利要求7所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,所述的步骤S62的期望关节数值为一维度为1行M列的具体向量,该向量传递给适应度函数从而计算每一个个体的具体数值,对于不是轨迹的第一个点的目标矩阵,期望关节数值使用上一个解作为期望关节数值,从而优先选择靠近上一个位姿的解,保证运动的连续性,对于轨迹的第一个点,则设置该向量为0向量,以使得机械臂以较小的变动到达目标位姿。
10.根据权利要求7所述的一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法,其特征在于,所述的步骤S63包括以下步骤:
S631、在S62中获取期望机械臂姿态,同时设置求解轨迹点的无解计数为0;
S632、对转动型冗余关节,以冗余关节数值中心±2°为搜索区间,对移动型冗余关节,以冗余关节数值中心±200mm为搜索区间;
S633、将种群基于搜索区间转为冗余关节实数数值r,计算公式如下所示:
其中N是指对应冗余关节的编码位数,bk是指对应冗余关节的二进制编码的第k位的数值,p是指搜索区间的1/2;
S634、将S633中每一个个体的冗余关节数值,带入到非冗余关节的解析式中,获得所有个体对应的解;
S635、S634中获得每一个个体的m个解,每一个解对应着机械臂M个关节的数值,判断每一个解是否满足所有关节的可达区间,即机械臂的每一个关节是否能够到达这个数值,对于旋转关节是旋转至某一数值,对于伸缩关节是伸缩至某一数值,在可达区间内的解认为是有效解,计算S634中获得的有效解的个数;
S636、若S635中有效解的个数不是0,则代表当前搜索区间可以使用,使用该搜索区间,S63步骤结束,若有效解个数是0同时无解计数数值小于20,无解计数加一,转到S637,若有效解个数是0同时无解计数数值大于20小于40,无解计数加一,搜索区间扩大一倍,转到S637,若有效解个数是0但无解计数数值大于40小于60,无解计数加一,搜索区间扩大两倍,转到S637,若有效解个数是0同时无解计数数值大于60,则将搜索空间扩大到整个冗余关节的可达空间;
S637、重新执行步骤S5,随机生成二进制种群,回到S633。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010481009.4A CN111914980B (zh) | 2020-05-30 | 2020-05-30 | 一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010481009.4A CN111914980B (zh) | 2020-05-30 | 2020-05-30 | 一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111914980A true CN111914980A (zh) | 2020-11-10 |
CN111914980B CN111914980B (zh) | 2023-12-01 |
Family
ID=73238129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010481009.4A Active CN111914980B (zh) | 2020-05-30 | 2020-05-30 | 一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111914980B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112380706A (zh) * | 2020-11-17 | 2021-02-19 | 苏州睿友智能装备有限公司 | 直角式钢轨打磨单元冗余解求解方法及介质 |
CN112943453A (zh) * | 2021-01-21 | 2021-06-11 | 西北工业大学 | 气路部件故障下基于iga的发动机最大推力控制优化方法 |
CN113524205A (zh) * | 2021-09-15 | 2021-10-22 | 深圳市优必选科技股份有限公司 | 仿人机器人的冗余手臂的抛投轨迹规划方法、装置及介质 |
CN113664837A (zh) * | 2021-09-18 | 2021-11-19 | 武汉联影智融医疗科技有限公司 | 机器人评价指标计算方法和机器人构型参数的寻优方法 |
CN113722864A (zh) * | 2021-09-13 | 2021-11-30 | 哈工大机器人(合肥)国际创新研究院 | 一种7自由度冗余机械臂逆运动学求解方法及系统 |
CN118003322A (zh) * | 2024-01-30 | 2024-05-10 | 哈尔滨工业大学 | 一种基于改进臂角法的ssrms机械臂位置级逆解算法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105975795A (zh) * | 2016-05-23 | 2016-09-28 | 湖北工业大学 | 一种高精度的多关节串联机械臂运动学反解解法 |
CN109344477A (zh) * | 2018-09-20 | 2019-02-15 | 桂林电子科技大学 | 一种6自由度机械臂逆运动学求解方法 |
US20200101608A1 (en) * | 2018-09-30 | 2020-04-02 | Xiangtan University | Method and system for determining motion path of mechanical arm |
-
2020
- 2020-05-30 CN CN202010481009.4A patent/CN111914980B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105975795A (zh) * | 2016-05-23 | 2016-09-28 | 湖北工业大学 | 一种高精度的多关节串联机械臂运动学反解解法 |
CN109344477A (zh) * | 2018-09-20 | 2019-02-15 | 桂林电子科技大学 | 一种6自由度机械臂逆运动学求解方法 |
US20200101608A1 (en) * | 2018-09-30 | 2020-04-02 | Xiangtan University | Method and system for determining motion path of mechanical arm |
Non-Patent Citations (3)
Title |
---|
DI WU 等: "Interval Search Genetic Algorithm Based on Trajectory to Solve Inverse Kinematics of Redundant Manipulators and Its Application", 《2020 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION (ICRA)》, pages 7088 - 7094 * |
DI WU 等: "T-IK: An Efficient Multi-Objective Evolutionary Algorithm for Analytical Inverse Kinematics of Redundant Manipulator", 《IEEE ROBOTICS AND AUTOMATION LETTERS 》, vol. 6, no. 4, pages 8474, XP011877597, DOI: 10.1109/LRA.2021.3108550 * |
林阳;赵欢;丁汉;: "基于多种群遗传算法的一般机器人逆运动学求解", 机械工程学报, no. 03, pages 1 - 8 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112380706A (zh) * | 2020-11-17 | 2021-02-19 | 苏州睿友智能装备有限公司 | 直角式钢轨打磨单元冗余解求解方法及介质 |
CN112380706B (zh) * | 2020-11-17 | 2024-04-26 | 苏州睿友智能装备有限公司 | 直角式钢轨打磨单元冗余解求解方法及介质 |
CN112943453A (zh) * | 2021-01-21 | 2021-06-11 | 西北工业大学 | 气路部件故障下基于iga的发动机最大推力控制优化方法 |
CN113722864A (zh) * | 2021-09-13 | 2021-11-30 | 哈工大机器人(合肥)国际创新研究院 | 一种7自由度冗余机械臂逆运动学求解方法及系统 |
CN113722864B (zh) * | 2021-09-13 | 2023-09-05 | 哈工大机器人(合肥)国际创新研究院 | 一种7自由度冗余机械臂逆运动学求解方法及系统 |
CN113524205A (zh) * | 2021-09-15 | 2021-10-22 | 深圳市优必选科技股份有限公司 | 仿人机器人的冗余手臂的抛投轨迹规划方法、装置及介质 |
CN113664837A (zh) * | 2021-09-18 | 2021-11-19 | 武汉联影智融医疗科技有限公司 | 机器人评价指标计算方法和机器人构型参数的寻优方法 |
CN113664837B (zh) * | 2021-09-18 | 2023-01-31 | 武汉联影智融医疗科技有限公司 | 机器人评价指标计算方法和机器人构型参数的寻优方法 |
CN118003322A (zh) * | 2024-01-30 | 2024-05-10 | 哈尔滨工业大学 | 一种基于改进臂角法的ssrms机械臂位置级逆解算法 |
CN118003322B (zh) * | 2024-01-30 | 2024-07-09 | 哈尔滨工业大学 | 一种基于改进臂角法的ssrms机械臂位置级逆解算法 |
Also Published As
Publication number | Publication date |
---|---|
CN111914980B (zh) | 2023-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111914980A (zh) | 一种基于解析解和改进遗传算法的冗余机械臂运动学解算方法 | |
CN113352319B (zh) | 基于改进快速扩展随机树的冗余机械臂避障轨迹规划方法 | |
WO2022174658A1 (zh) | 面向五轴数控机床旋转轴空间定位误差快速优化补偿方法 | |
CN109344477B (zh) | 一种6自由度机械臂逆运动学求解方法 | |
CN111761582B (zh) | 一种基于随机采样的移动机械臂避障规划方法 | |
CN111300420B (zh) | 一种机械臂关节空间转角最小路径求取方法 | |
CN107729637A (zh) | 基于臂形角区间的冗余自由度机械臂运动规划及评价方法 | |
CN110682286A (zh) | 一种协作机器人实时避障方法 | |
CN111645079B (zh) | 一种带电作业机器人机械臂路径规划控制装置及其方法 | |
CN113325799B (zh) | 一种曲面工件的点焊机器人操作空间平滑路径规划方法 | |
CN113580135B (zh) | 一种有偏置七轴机器人实时逆解算法 | |
CN113119109A (zh) | 基于伪距离函数的工业机器人路径规划方法和系统 | |
CN115416016A (zh) | 一种基于改进人工势场法的机械臂避障路径规划方法 | |
CN116038702B (zh) | 一种七轴机器人逆解方法及七轴机器人 | |
CN112276940A (zh) | 一种六自由度非球型手腕机器人逆运动学求解方法 | |
CN115213898A (zh) | 一种基于逆解多目标优化的焊接机器人笛卡尔空间轨迹规划方法 | |
CN117182902A (zh) | 一种基于改进快速扩展随机树的机械臂路径规划方法 | |
CN112765879A (zh) | 基于神经网络和构型编码的机械臂逆运动学求解方法 | |
Tian et al. | Optimal placement of a two-link planar manipulator using a genetic algorithm | |
Dai | Collision-free motion of an articulated kinematic chain in a dynamic environment | |
Ma et al. | Time optimal trajectory planning based on redundant manipulator | |
CN114859920B (zh) | 一种基于gd-rrt的焊接机器人路径规划方法 | |
CN114536337B (zh) | 机械臂线性运动轨迹平滑方法及系统和存储介质 | |
CN113547519B (zh) | 一种基于变维缩放的机械臂逆运动学求解方法 | |
CN117113705A (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 |