一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种连续体机器人末端位置误差补偿方法及系统与流程

2022-03-19 21:41:14 来源:中国专利 TAG:


1.本发明涉及连续体机器人控制技术领域,特别是涉及一种连续体机器人末端位置误差补偿方法及系统。


背景技术:

2.本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
3.随着科学技术的发展,机器人在诸多领域得到了广泛的应用,但在一些狭小曲折的工作环境中,如工业管道、航空发动机及医疗手术等领域,无法使用传统的刚性机器人进行作业。与传统的刚性机器人相比,连续体机器人不具有刚性连杆和离散关节,具有独特的柔顺性、安全性,能够实现连续变形等特点,适合狭小曲折的工作环境。
4.在目前连续体机器人的应用场景中,对连续体机器人的末端控制精度要求很高;但连续体机器人是一种超冗余、强耦合的非线性系统,受诸多因素影响,如连续体机器人系统的建模误差、驱动丝与导向轮间的摩擦误差、驱动丝的变形与回弹造成的误差等,因而连续体机器人末端位置控制精度较低;而如何补偿连续体机器人末端位置误差,提高其控制精度为目前急需解决的问题。
5.近年来,国内外针对连续型机器人的研究大多聚焦于连续体机器人的结构设计、建模方法或控制方法和策略上,而关于如何补偿连续体机器人末端位置误差的研究较少。现有的连续体机器人末端位置误差补偿方法中,在线检测反馈补偿方法高度依赖外部的检测设备,且在复杂部件的工业现场实施存在难度;运动学模型标定方法的建模和参数辨识过程繁杂,且模型忽略非几何误差源,精度补偿效果有限。


技术实现要素:

6.为了解决上述问题,本发明提出了一种连续体机器人末端位置误差补偿方法及系统,以输出的末端位置精度为目标,以关节形变能力为约束,以连续体机器人末端位置坐标为输入,以驱动丝长度变化量为输出,采用bp神经网络进行模型的构建与训练,并采用遗传算法对bp神经网络的输入权值和阈值进行优化,在给定末端位置时,可得出精确的驱动丝所需驱动量。解决现有技术中连续体误差补偿求解复杂的问题,提高连续体机器人的末端位置控制精度。
7.为了实现上述目的,本发明采用如下技术方案:
8.第一方面,本发明提供一种连续体机器人末端位置误差补偿方法,包括:
9.获得连续体机器人末端位置及其所对应的驱动丝长度变化量,以此构建训练集;
10.以优化后的bp神经网络构建连续体机器人运动学模型;所述优化后的bp神经网络采用遗传算法对bp神经网络的输入权值和阈值进行优化;
11.以最大化末端位置获取精度为目标,以关节形变能力为约束条件,采用训练集对连续体机器人运动学模型进行训练;
12.根据目标末端位置采用训练后的连续体机器人运动学模型,得到驱动丝所需驱动量,并以此驱动连续体机器人动作。
13.作为可选择的实施方式,根据连续体机器人末端位置及其所对应的驱动丝长度变化量,以及两类映射误差,设定所述bp神经网络的输入层节点数为3、输出层节点数为4以及网络隐含层数为2;所述两类映射误差包括连续体机器人的驱动空间到关节空间的映射误差和关节空间到运动空间的映射误差2。
14.作为可选择的实施方式,所述训练集的构建过程包括:根据连续体机器人的弯曲角度和扭转角度,取等差数列在工作空间内均匀取点,对各点进行逆运动学计算得到理论参考输入,根据理论参考输入控制连续体机器人到达目标位置,得的连续体机器人末端位置实际坐标值。
15.作为可选择的实施方式,所述训练的过程包括:采用训练集训练连续体机器人运动学模型,预测输出,根据预测误差判断连续体机器人运动学模型训练完成;预测误差为预测输出和期望输出间的误差绝对值的平均值,为:
16.式中:n为bp神经网络输出节点数,k为系数,yi为bp神经网络第i个节点的期望输出,y
0i
为bp神经网络第i个节点的预测输出。
17.作为可选择的实施方式,采用遗传算法对bp神经网络的输入权值和阈值进行优化的过程包括:种群初始化、适应度函数、选择操作、交叉操作和变异操作。
18.作为可选择的实施方式,所述选择操作方法采用轮盘赌选择法;即:
[0019][0020]
式中:δi为神经网络预测误差,n为bp神经网络输出节点数,k为系数,i为第i个节点。
[0021]
作为可选择的实施方式,所述交叉操作方法采用实数交叉法。
[0022]
第二方面,本发明提供一种连续体机器人末端位置误差补偿系统,包括:
[0023]
训练集构建模块,被配置为获得连续体机器人末端位置及其所对应的驱动丝长度变化量,以此构建训练集;
[0024]
模型构建模块,被配置为以优化后的bp神经网络构建连续体机器人运动学模型;所述优化后的bp神经网络采用遗传算法对bp神经网络的输入权值和阈值进行优化;
[0025]
模型训练模块,被配置为以最大化末端位置获取精度为目标,以关节形变能力为约束条件,采用训练集对连续体机器人运动学模型进行训练;
[0026]
驱动模块,被配置为根据目标末端位置采用训练后的连续体机器人运动学模型,得到驱动丝所需驱动量,并以此驱动连续体机器人动作。
[0027]
第三方面,本发明提供一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成第一方面所述的方法。
[0028]
第四方面,本发明提供一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成第一方面所述的方法。
[0029]
与现有技术相比,本发明的有益效果为:
[0030]
本发明提出的一种连续体机器人末端位置误差补偿方法及系统,以输出的末端位置精度为目标,以关节形变能力为约束,以连续体机器人末端位置坐标为输入,以驱动丝长度变化量为输出,采用bp神经网络进行模型的构建与训练,并采用遗传算法对bp神经网络的输入权值和阈值进行优化,在给定末端位置时,可得出精确的驱动丝所需驱动量。解决现有技术中连续体误差补偿求解复杂的问题,且具有很好的预测精度。
[0031]
本发明提出的一种连续体机器人末端位置误差补偿方法及系统,以bp神经网络对连续体机器人运动学模型进行建模,建立连续体机器人末端位置坐标到驱动丝长度的直接映射关系,实现对各传动部分的摩擦迟滞,以及驱动丝的变形和回弹等现象造成的误差的综合补偿。
[0032]
本发明提出的一种连续体机器人末端位置误差补偿方法及系统,相比在线检测反馈补偿方法与运动学模型标定方法,本发明对外部的检测设备依赖程度低,在复杂部件的工业现场实施难度相对较小,建模过程简单,精度高且通用性强。
[0033]
本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
[0034]
构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
[0035]
图1为本发明实施例1提供的连续体机器人末端位置误差补偿方法流程图;
[0036]
图2为本发明实施例1提供的连续体机器人驱动部分结构图;
[0037]
图3为本发明实施例1提供的连续体机器人末端位置测量原理图;
[0038]
图4为本发明实施例1提供的bp神经网络结构图;
[0039]
图5为本发明实施例1提供的基于遗传算法优化的bp神经网络进行连续体机器人位置控制的误差统计图;
[0040]
其中,1、第一滑块,2、电机固定盘,3、联轴器,4、第二滑块,5、导向杆,6、滚珠丝杠,7、丝杠螺母,8、连接滑块,9、第二轴承座,10、固定盘,11、滑轨,12、导轨,13、第三滑块,14、电机,15、丝杠支架,16、第一轴承座,18、第一v型块,19、第二v型块,20、小轴承,21、内部支架,22、小轴承,23、连续体机器人。
具体实施方式
[0041]
下面结合附图与实施例对本发明做进一步说明。
[0042]
应该指出,以下详细说明都是示例性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
[0043]
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设
备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0044]
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0045]
实施例1
[0046]
正如背景技术所介绍的,现有技术中存在高度依赖外部的检测设备、建模和参数辨识过程繁杂、预测精度不高的不足,为了解决如上技术问题,本实施例提供一种基于遗传算法优化的bp神经网络的连续体机器人末端位置误差补偿方法,包括:
[0047]
s1:获得连续体机器人末端位置及其所对应的驱动丝长度变化量,以此构建训练集;
[0048]
s2:以优化后的bp神经网络构建连续体机器人运动学模型;所述优化后的bp神经网络采用遗传算法对bp神经网络的输入权值和阈值进行优化;
[0049]
s3:以最大化末端位置获取精度为目标,以关节形变能力为约束条件,采用训练集对连续体机器人运动学模型进行训练;
[0050]
s4:根据目标末端位置采用训练后的连续体机器人运动学模型,得到驱动丝所需驱动量,并以此驱动连续体机器人动作。
[0051]
在本实施例中,以优化后的bp神经网络对连续体机器人进行运动学模型的建模,以输出的末端位置精度为目标,以关节形变能力为约束条件,以机器人末端位置坐标为输入,驱动丝长度变化量为输出,对连续体机器人运动学模型进行训练,并采用遗传算法对bp神经网络的输入权值和阈值进行优化,得到能够在给定末端位置坐标下得到较高精度的预测输出的神经网络模型。
[0052]
所述步骤s1中,通过建立连续体机器人正逆运动学模型获得训练集,以连续体末端位置坐标x、y、z作为输入量进行驱动条件的变化。
[0053]
所述步骤s2中,以优化后的bp神经网络构建连续体机器人运动学模型;具体建模过程为:
[0054]
s2-1:初始化bp神经网络拓扑结构,初步优化bp神经网络的输入权值和阈值,得到初步优化后的bp神经网络;
[0055]
s2-2:获取连续体机器人末端处于不同位置的坐标以及其对应的驱动丝长度变化量,以此训练bp神经网络,计算误差;
[0056]
s2-3:判断误差是否满足终止条件;
[0057]
当不满足终止条件时,采用遗传算法优化输入权值和阈值,重复步骤s2-2;
[0058]
当满足终止条件时,得到具有较高精度的预测输出的bp神经网络模型;
[0059]
s2-4:以目标末端位置作为输入量进行仿真预测,得到参考输入。
[0060]
在本实施例中,所述步骤s2-3中,通过遗传算法对bp神经网络的初始权值和阈值进行优化,获得最优权值和阈值;包括种群初始化、适应度函数、选择、交叉和变异操作,具体过程为:
[0061]
1)采用实数编码的方法对个体编码,实现种群初始化每个个体由输入层与隐含层连接权值、隐含层阈值、隐含层与输出层连接权值以及输出层阈值组成;
[0062]
2)用训练集训练bp神经网络后,预测bp神经网络的输出,将预测输出和期望输出之间的误差绝对值的平均值作为个体适应度值,计算公式为:
[0063][0064]
式中:δi为神经网络预测误差,f为个体适应度值,n为bp神经网络输出节点数,k为系数,yi为bp神经网络第i个节点的期望输出,y
0i
为bp神经网络第i个节点的预测输出。
[0065]
在本实施例中,选择操作方法采用轮盘赌选择法;即:
[0066][0067]
交叉操作方法采用实数交叉法;即:
[0068][0069]
变异操作为:
[0070][0071][0072]
其中,k、r为随机数,g为当前迭代次数,a
in
与a
jn
为需要优化的变量值在每一代中的取值,f(g)为变异算子。
[0073]
在本实施例中,所述步骤s2-3中,当满足终止条件时,输入连续体末端位置坐标x、y、z,得出驱动丝长度变化量

l1、

l2、

l3、

l4。
[0074]
在本实施例中,如图2所示为连续体机器人结构,通过cosserat梁理论建立连续体机器人的正逆运动学模型。具体的,各零部件的连接方式如下所示:
[0075]
第一v型块18、第二v型块19、支撑20固定在实验台上,电机固定盘2与丝杠支架15均固定在第一v型块18上,固定盘10固定在第二v型块19上;
[0076]
电机14呈圆周均匀排列于电机固定盘2上,其输出的力矩通过联轴器3传递给滚珠丝杠6;具体的,滚珠丝杠6两端分别通过第一轴承座16与第二轴承座9连接于丝杠支架15与固定盘10上,滚珠丝杠6的轴向支承方式为面对面的单推-单推形式。
[0077]
电机14输出的旋转运动由滚珠丝杠副转换为丝杠螺母7的前后位移,导轨12安装在滑轨11上,导轨12的滑块与第二滑块4相连,第二滑块4通过导向杆5与连接滑块8连接,连接滑块8与丝杠螺母连接,驱动丝连接到第二滑块4上,至此,电机14的驱动力与驱动运动可以传递到驱动丝上。
[0078]
此外,为调整驱动丝的位置,本实施例通过安装有多个小轴承20的内部支架21实现,通过小轴承20的导向作用,驱动丝由内部支架21的一端进入,另一端伸出,其位置就可以得到改变。驱动丝位置经过调整后,直接装入连续体机器人23中,即可实现驱动。
[0079]
按如图3所示的原理,通过计算机上的控制器控制驱动电机14转动,电机14通过联轴器3与滚珠丝杠6相连接,滚珠丝杠6上连接丝杠螺母7,丝杠螺母7与驱动丝通过导向杆5、第二滑块4相连,同时与导向杆5相连接,导向杆5一端安装有拉力传感器,驱动丝经过导向部分连接到连续体机器人23,连续体机器人23末端安装有位置传感器,位置传感器与磁导
航系统相连接,磁导航系统连接到计算机,从而可读取数据;
[0080]
在导向杆5一端安装的拉力传感器,同样连接到计算机,用于实时测量各驱动丝拉力大小,以便于实现预紧操作。
[0081]
驱动连续体机器人到达目标位置前,通过预紧的方式保证连续体机器人末端初始位置的重复定位精度;
[0082]
优选地,预紧方法为:通过与驱动丝前端相连接的拉力传感器示数测得各驱动丝的拉力大小,同时通过驱动电动机的正反转控制连续体驱动丝长度的变化,使各传感器示数保持一致,实现预紧操作。
[0083]
在本实施例中,实验方案具体如下:
[0084]
1)将通过运动学模型计算的驱动丝长度变化量数据作为理论输入,将理论输入值输入控制程序,控制连续体末端到达相应位置,测量位置坐标x0、y0、z0并记录;
[0085]
2)记录完成后,控制连续体回到初始位置并预紧,重复步骤1),测得其他组数据点对应的数据;
[0086]
3)全部数据测量完成后,将测得的数据作为训练集输入神经网络,以末端位置坐标为输入,以驱动丝长度变化量为输出,进行神经网络的训练;
[0087]
4)在连续体工作空间内随机选取测试点,对弯曲角度和扭转角度取等差数列以在工作空间内均匀取点x0、y0、z0,对各点进行逆运动学计算得到理论参考输入δx1、δx2、δx3、δx4,将理论参考输入控制系统控制机器人到达目标位置并测量末端实际坐标值x、y、z;
[0088]
将测试点位置坐标输入到训练好的神经网络,得到对应的参考输入

l1、

l2、

l3、

l4;
[0089]
5)比较参考输入与实际输入、参考输入与理论输入,进而判断神经网络误差补偿方法的有效性。
[0090]
bp神经网络结构如图4所示,由通过实验得到的实际数据对神经网络进行训练。在本次网络构建中,为建立连续体末端位置与驱动丝长度变化量之间的映射关系,网络输入量为连续体末端位置的空间坐标x、y、z,输出量为连续体四根驱动丝长度的变化量

l1、

l2、

l3、

l4,可确定网络输入层节点数为3,输出层节点数为4;
[0091]
输入参数到输出参数的传递过程经过了从运动空间到关节空间、从关节空间到驱动空间两个映射过程,各种误差可由此分为两类,即驱动空间到关节空间的映射误差和关节空间到运动空间的映射误差,所以网络隐含层数为2。
[0092]
在本实施例中,所做实验的误差计算方法为:
[0093][0094]
其中,l
预测
为通过神经网络得到的驱动丝的预测变化量,l
实际
为驱动丝实际输入的变化量;l为所选连续体的长度。
[0095]
在结果中将遗传算法优化的bp神经网络预测得到的驱动丝长度变化量误差与通过连续体运动学模型计算得到的驱动丝长度变化量误差进行比较,遗传算法优化的bp神经网络预测得到的驱动丝长度变化量误差如图5所示,误差小于0.2%。因此,遗传算法优化的bp神经网络具有足够的误差补偿能力。
[0096]
实施例2
[0097]
本实施例提供一种连续体机器人末端位置误差补偿系统,包括:
[0098]
训练集构建模块,被配置为获得连续体机器人末端位置及其所对应的驱动丝长度变化量,以此构建训练集;
[0099]
模型构建模块,被配置为以优化后的bp神经网络构建连续体机器人运动学模型;所述优化后的bp神经网络采用遗传算法对bp神经网络的输入权值和阈值进行优化;
[0100]
模型训练模块,被配置为以最大化末端位置获取精度为目标,以关节形变能力为约束条件,采用训练集对连续体机器人运动学模型进行训练;
[0101]
驱动模块,被配置为根据目标末端位置采用训练后的连续体机器人运动学模型,得到驱动丝所需驱动量,并以此驱动连续体机器人动作。
[0102]
此处需要说明的是,上述模块对应于实施例1中所述的步骤,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
[0103]
在更多实施例中,还提供:
[0104]
一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成实施例1中所述的方法。为了简洁,在此不再赘述。
[0105]
应理解,本实施例中,处理器可以是中央处理单元cpu,处理器还可以是其他通用处理器、数字信号处理器dsp、专用集成电路asic,现成可编程门阵列fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0106]
存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据、存储器的一部分还可以包括非易失性随机存储器。例如,存储器还可以存储设备类型的信息。
[0107]
一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成实施例1中所述的方法。
[0108]
实施例1中的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
[0109]
本领域普通技术人员可以意识到,结合本实施例描述的各示例的单元即算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0110]
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献