本发明属于绳驱连续型机械臂领域,具体涉及一种基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法。
背景技术:
1、机械臂具有高效、灵活等优点,被广泛应用于工业、军事、医疗及航空航天等领域,以代替人力完成高难度、高精度、复杂危险的工作。近年来,随着仿生机械的火热,模仿自然界中具有高灵活度的动物,如蛇、象鼻、章鱼触手等连续型机械臂是一种典型的仿生机械。超冗余机械臂具有连续灵活的机械结构,具有重量轻,灵敏度高,控制灵活等优点,在一些复杂狭窄的工作空间中执行任务时能够灵活躲避各种障碍。
2、超冗余机械臂自由度远大于任务空间自由度因此逆运动学相当复杂,使用雅可比和牛顿迭代方法所求的数值解面临着雅可比计算难度大且计算周期长的问题。因此,为超冗余机械臂寻找一种新的逆运动学快速求解方法对于超冗余机械臂的实时控制具有十分重要的意义。
技术实现思路
1、为解决现有技术中存在的上述缺陷,本发明的目的在于提供一种基于人工势场的多段绳驱超冗余机械臂逆运动确定方法。
2、本发明是通过下述技术方案来实现的。
3、本发明的一个方面,提供了一种基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,包括:
4、步骤1,根据多个万向节串联形成的机械臂控制单元机械结构,建立机械臂控制单元几何模型;
5、步骤2,从机械臂末端点开始向下计算相邻万向节间的脊柱约束和每段控制单元的肌腱约束,调整每个万向节位置;
6、步骤3,根据每个万向节位置和机械臂基座的结构,计算与基座相邻的控制单元的万向节位置;
7、步骤4,再次利用机械臂脊柱约束和肌腱约束,从机械臂基座当前位置开始向上计算新的万向节位置,最后一个万向节位置就是新的机械臂末端点位置,计算新的机械臂末端点与目标点位姿误差;
8、步骤5,判断位姿误差是否小于精度阈值,若大于阈值,重复步骤2~4;否则输出新的万向节位置,由各万向节位置计算各控制单元的关节角,确定超冗余机械臂的逆运动状态。
9、作为优选,建立多个万向节串联形成的控制单元结构的几何模型,具体为:
10、构建控制单元的机械机构,相邻万向节直线距离相等,连杆之间为万向节,每个控制单元内有n个万向节和n个连杆,万向节串联机构使n个万向节等角度运动,每段控制单元通过三根钢丝绳驱动,m段控制单元的机械臂通过3m根钢丝绳控制,每个连杆内部圆盘有3m个过线孔;
11、各段控制单元的每个万向节中都有两个关节角,n个万向节等曲率;
12、相邻圆弧间相切,前一段控制单元的最后一个万向节位置作为后一段控制单元的起点进行变形。
13、作为优选,所述步骤2,包括:
14、步骤2-1,脊柱约束是单向调整万向节间的距离约束,当万向节间距离不等于相邻万向节直线距离时,如果是向下求解万向节位置时,下一万向节会受脊柱约束调整到新的位置,使两万向节距离为相邻万向节直线距离;
15、步骤2-2,肌腱约束是从确定位置的等腰梯形的一条腰开始计算,计算各点在此时受人工势场的斥力影响后的位置;
16、几何模型为等腰梯形时中间万向节i与向上第三万向节i+3之间的连杆夹角为θ,根据三角余弦公式可得到连杆夹角θ,计算此时等腰梯形下底l的值,利用脊柱约束调整中间万向节i与向上第三万向节i+3间的距离,利用等腰梯形上底与下底平行的性质,就可以计算此时向上第一万向节i+1新坐标,计算向上第一万向节i+1的新位置;
17、以此类推,依次计算各段控制单元的万向节新位置,直到计算到基座,根据计算结果调节每个万向节位置。
18、作为优选,所述步骤3,根据基座的结构形式计算最下方控制单元的万向节位置,包括:
19、步骤3-1,超冗余机械臂底座是固定基座,计算最下方控制单元几何约束,上一段控制单元经过脊柱、肌腱约束后,上一段控制单元的最后一段连杆位于任何平面,而最下方的万向节被固定在原点,由于每段控制单元都是平面构型,第一段控制单元从原点出发需要与z轴共面,所以上一段控制单元的最后一段连杆并不符合与z轴共面的约束,对上方相邻控制单元整体进行旋转,使连杆与z轴共面;
20、步骤3-2,在计算出新的最后一段连杆后,拟合当前新的最后一段连杆的姿态,计算出最下方控制单元的连杆夹角θ,由此计算得到最下方控制单元的万向节的合理位置。
21、作为优选,所述步骤5,由各万向节位置计算各控制单元的关节角,包括:
22、万向节在坐标变换中表示为绕x轴旋转角和绕y轴旋转角变换,则得到单个万向节的齐次坐标变换矩阵;
23、根据每段控制单元从下至上第一个万向节坐标及下一个万向节坐标,转换到原点出发后的新向量,利用该向量与单个万向节的齐次旋转矩阵的位移项对照,求解万向节的关节角。
24、本发明的另一个方面,提供了一种所述方法的基于人工势场的多段绳驱超冗余机械臂逆运动学装置,其特征在于,包括:
25、构建模块,用于构建多个万向节串联形成的机械臂控制单元几何模型;
26、仿生模块,用于建立相邻万向节间的脊柱约束和每段控制单元的肌腱约束;
27、计算模块,用于计算相邻万向节间的脊柱约束和每段控制单元的肌腱约束,计算与基座相邻的控制单元的万向节位置,计算新的万向节位置以及计算各控制单元的关节角;
28、判断模块,用于判断机械臂位姿误差是否小于精度阈值,确定超冗余机械臂的逆运动状态。
29、本发明的再一个方面,提供了一种电子设备,包括处理器以及存储器;
30、所述存储器用于存储计算机程序,所述计算机程序包括程序指令;
31、所述处理器用于调用存储于所述存储器中的程序,以执行如权利要求1-8中任一项所述的基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法的步骤。
32、本发明由于采取以上技术方案,其具有以下有益效果:
33、1.本发明的多段绳驱超冗余机械臂逆运动学确定方法,根据串联万向节的几何模型设计万向节间约束,直接迭代整理万向节位置,能够避免求解关节角复杂的解析公式,有效得到逆运动学解。
34、2.本发明的超冗余机械臂逆运动学确定方法,根据仿生思路,仿照蛇的眼睛将机械臂末端点视为人工势场的作用点,由引力、斥力生成避障引导路径,同时其他万向节受到障碍物斥力,不受引力,可生成避障的万向节配置。
35、3.本发明提出了通用的约束语言,脊柱表达万向节间距离约束,肌腱表达万向节间位置关系约束,可以被不同的机械结构翻译为不同的约束,意味着该算法可以在其他通用的机器人上求解逆运动学。
1.一种基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,其特征在于,包括:
2.根据权利要求1所述的基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,其特征在于,建立多个万向节串联形成的控制单元结构的几何模型,具体为:
3.根据权利要求1所述的基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,其特征在于,所述步骤2,包括:
4.根据权利要求3所述的基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,其特征在于,脊柱约束中,相邻两万向节距离为相邻万向节直线距离l,由下式计算:
5.根据权利要求3所述的基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,其特征在于,肌腱约束中,计算向上第一万向节i+1的新位置:
6.根据权利要求1所述的基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,其特征在于,所述步骤3,根据基座的结构形式计算最下方控制单元的万向节位置,包括:
7.根据权利要求1所述的基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,其特征在于,所述步骤4,从机械臂基座当前位置开始利用脊柱、肌腱约束向上计算新的万向节点位置,计算末端点与目标点位姿误差v为:
8.根据权利要求1所述的基于人工势场的多段绳驱超冗余机械臂逆运动学确定方法,其特征在于,所述步骤5,由各万向节位置计算各控制单元的关节角,包括:
9.一种权利要求1-7任一项所述方法的基于人工势场的多段绳驱超冗余机械臂逆运动学装置,其特征在于,包括:
10.一种电子设备,其特征在于,包括处理器以及存储器;
