基于改进粒子群算法的光纤光栅压触觉传感阵列测点优化
2021-10-13刘宏林徐一鸣
陆 观,刘宏林,徐一鸣
(1.南通大学 机械工程学院,江苏 南通 226019;2.南通大学 电气工程学院,江苏 南通 226019)
触觉感知是智能机器人最重要的功能之一,机器人在日常生活中往往需要完成许多复杂的操作,触觉感知起着非常重要的作用。柔性触觉传感器与传统触觉传感器从物理特性上更接近于人体皮肤的外形、触感及柔软度,使机器人能够实现柔性触觉感知。但触觉传感元件多为刚性传感元件,柔韧性较差,因此传感器的柔性及触觉能力受刚性元件性能的限制,存在易变形、无法多次反复使用、易受电磁干扰等问题,从而导致传感器的测量误差较大。近些年来,随着光纤传感技术的发展[1-2],光纤布拉格光栅(fiber Bragg grating,FBG)被广泛应用于传感领域。由于其体积小、结构简单、具有柔软性、能够埋入材料内部、容易封装、可抗电磁干扰等特点,FBG 被国内外学者作为一种新型的柔性触觉传感元件[3-4]。黄鑫[5]针对微创手术时器械与组织间力觉信息的缺乏问题,提出了一种新型FBG 触觉传感器,在穿刺针柱靠近针尖的部位固定了一个轮辐式十字梁结构并在穿刺针柱表面上挖有凹槽结构。该触觉传感器可以感知穿刺手术中的轴向力应变和微小扭矩力应变,提高了手术的安全可靠性。许会超等[6]人研发了一种3 × 3 的FBG 阵列,并作为柔性传感元件与聚二甲基硅氧烷(PDMS)材料构成双层柔性基体,对弹性体进行了力学分析并验证了柔性触觉传感器的可行性。王俊杰[7]设计并制作了单FBG 的杆状结构和3 × 3 阵列的触觉传感器用于测量空间分布力。第一种结构通过传感器在组织表面滑动可实现组织表面空间分布力的测量以及组织下硬质埋藏物的定位;第二种阵列传感器以硅胶进行封装,并使用神经网络处理传感器数据,以提供有关接触类型的信息,可区分传感器表面接触载荷的位置或形状。孙世政等[8]人针对仿生皮肤的柔性触滑觉复合传感问题,提出了一种基于光纤布拉格光栅的双层分布式传感单元。设计了双层“十字型”的分布式传感阵列单元,并对传感阵列单元压力灵敏度进行了仿真分析研究,通过温度、触觉和滑觉传感实验验证了传感器具有较好的性能。Tripicchio等[9]人将FBG 传感技术应用到机器人爬行器上,在爬行器脚上集成的FBG 传感器可以实时监测爬行过程中脚部的接触力大小并反馈给控制系统,随后对当前动作进行调整。
基于光纤光栅的机器人手指压触觉传感阵列是国内外的研究热点之一,然而目前应用于机器人手指压触觉传感阵列的测点优化方法较少,大多数研究者采用多段均匀排布方式。因此针对机器人手指抓握过程中存在的应变分布不均等问题,需要采用合理的阵列测点组合来提高传感器的测量精度。基于此,本文提出了一种新的改进粒子群测点优化算法,该方法融入了遗传思想和模拟退火,综合考虑了测点组合和受力状态识别百分比误差,解决了最优测点组合选择的问题,提高了传感阵列的测量精度。
1 触觉传感阵列设计
1.1 FBG 触觉传感原理
FBG 是运用纤芯锗离子和外界入射光子互相作用的方法在纤芯中形成相位光栅。如图1 所示为FBG 的结构示意图,当宽带光波通过光纤光栅时,因为折射率的不同会产生反射和透射现象[10-11]。其中满足布拉格反射条件的入射光会反射,同时透射光传输谱会有一个凹峰,反射的是特定波长的光。
图1 FBG 的结构示意图Fig.1 Schematic diagram of FBG
在所有的外部因素中,应变是影响布拉格光栅中心波长变化的最直接因素。应变导致的布拉格光栅偏移可表示为
式(1)是光纤布拉格传感器的基本传感模型,光栅中心波长的偏移量受轴向应变的影响为
式中:Pe是光纤的有效弹光常数;P11和P12为弹光系数,弹光系数指的是轴向应变引起的轴向和横向两个不同方向上有效折射率的变化;v 是纤芯材料的泊松比。光栅中心波长偏移量为
对掺锗石英光纤,neff=1.456,v=0.17,P11=0.121,因此,光纤布拉格光栅的中心波长偏移为
由式(5)可知,光纤光栅轴向均匀应变ε 与光纤中心波长变化ΔλB成线性关系,根据光纤光栅中心波长变化量,可以计算出应变大小,而根据胡克定律轴向均匀应变与施加的压力F 之间的关系为
式中:E 为光纤的杨氏模量;S 代表的是光纤横截面积;外力F 引起的光纤光栅中心波长变化为
由式(7)可知,当对光纤光栅施加纵向载荷时,光栅的中心波长会发生相应改变,因此,把光纤光栅封装在基体中,可探测纵向压力的大小。
1.2 FBG 的触觉传感阵列设计
本文设计的FBG 触觉传感阵列采用PDMS 封装[12-14],采用ANSYS 软件对PDMS 材料进行有限元分析。PDMS 的弹性模量为9.2 MPa,泊松比为0.49。光纤的主要材料为石英玻璃,弹性模量为730 kPa,泊松比为0.17[15-16]。模型单元的类型选择高精度单元Solid186,建立好传感器封装模型后用mesh 网格进行划分,这里选择的精度等级为0.5。
对用于封装光纤光栅的弹性体进行仿真分析,弹性体的下表面被施加固定约束,即在竖直方向(Z方向)不能移动,但是在水平方向(X 方向)和(Y 方向)可以自由伸缩。在传感器上表面施加垂直向下的压力,可以得到传感器的应变。根据实际机械手尺寸设定弹性体外尺寸为9 mm × 7 mm × 4 mm。
1.2.1 光纤埋入深度
在弹性体上表面中心位置施加2 N 的均匀载荷,加载的面积为2.5 mm2,得出光纤在埋入深度不同时的应变变化,如图2 所示。当光纤埋入深度为距离上表面1 mm 时,光栅的应变最大,并且处于光栅的应变敏感范围。故选用光纤埋入深度为1 mm的埋入方式以此提高传感器的灵敏度。
图2 不同埋入深度下的光纤应变曲线图Fig.2 Strain diagram of optical fiber under different buried depths
1.2.2 基于应变场的传感阵列设计
针对机械手抓握时的这种非大面积及非均匀受力区域进行感知时,只需要对某个特殊部位受力进行感知即可[17]。如果采用密集型等距离分布方式不满足机械手传感的微型化要求,也会造成资源的浪费,故针对机械手进行抓握动作时的应变场分布进行传感阵列设计,整体的应变场分布云图如图3所示。
图3 整体的应变场分布图Fig.3 Overall strain field distribution diagram
本文采用的机械手为杭州赫瓦机械手,利用SolidWorks 对机械手抓握模型进行建模,材料参数分别为密度1 183 g/cm3,杨氏模量2 048 MPa,泊松比0.394。将模型导入Ansys 进行静力学分析,以中指为例,对中指的3 段指节分别施加0.1 MPa 的驱动载荷,得到模型的应变场分布,如图4 所示。由图4 可知应变最大处在第一指节,最大应变为240 个微应变,对应传感器330 pm 的最大中心波长变化,未超出光栅的应变敏感范围。
图4 机械手中指抓握时应变场分布图Fig.4 Distribution of strain field of mechanical grasping fingers
由1.2.1 结论设计光纤埋入弹性体深度为1 mm,故对中指3 段指节上弹性体1 mm 截面的应变场进行分析,传感阵列的测点分布位置进行初步的设计。如图5 所示,从左及右分别为上、中、下3 段指节的应变场分布,均处于光栅的应变敏感范围。
图5 弹性体1 mm 截面处应变场分布图Fig.5 Strain field distribution diagram at 1 mm section of elastomer
根据图5 可知截面中下部为应变敏感区域,此时在该区域布置测点能够提高传感阵列的精度及灵敏度。由于光栅1.5 mm 的长度限制,因此对距离弹性体边缘1.5 mm 处不进行测点排布,由应变场呈现对称分布规律初步设计为两块应变敏感区域,并在该区域中各取60 个节点,如图6 所示,共选取120 个节点,用于测点的初步筛选。
图6 节点分布图Fig.6 Node distribution diagram
2 基于改进粒子群算法的测点优化
2.1 改进粒子群算法
机械手在抓握过程中指节表面存在应变分布不均的情况,故选用不同组合的节点作为测点组合是传感阵列对受力状态的识别的关键。传统的测点选择通常是选择线性好、迟滞性小、敏感性高、单一性好且没有冗余的测点[18],但这种选择方式需要对结构受力熟悉且具有较丰富的工程经验,随着机械结构的日益复杂及测量要求的提高,用该方法较为繁琐,人们提出了穷举法、速降法、标准粒子群算法等测点选择方法,其中标准粒子群算法由于具有结构简单、运行速度快的优点,应用较多[19]。
在该算法搜索过程中,粒子发现当前最优位置,其他粒子会迅速向其靠拢,如果当前最优位置为局部最优点时,算法很容易陷入局部最优,出现早熟收敛的现象[20]。因此,本文将遗传算法与模拟退火思想引入粒子群算法中,改善粒子群算法易早熟的问题,以此获得更加优秀的测点组合,具体算法流程图如图7 所示。
图7 改进粒子群算法流程图Fig.7 Flow chart of improved particle swarm algorithm
2.2 算法实现过程
1)以图6 节点位置及应变信息作为粒子群算法中粒子的初始位置及速度,根据式(6)构建适应度函数,约束条件由粒子的位置及应变变化范围确定。
2)根据所述约束条件,如果要求目标测点数为2,随机生成2 个种群,其中,每个种群均包含60 个粒子,每个粒子均构成所述数学模型的一个解空间;如果要求目标测点数为3,随机生成3 个种群,其中每个种群均包括40 个粒子,每个粒子均构成所述数学模型的一个解空间[21]。
3)设置最大迭代次数nmax=100,目标函数的自变量个数narvs=2,粒子的最大速度vmax=5,位置信息为整个搜索空间,我们在速度区间和搜索空间上随机初始化速度和位置,设置粒子群规模为120,每个粒子随机初始化一个飞翔速度。根据
对当前每个种群均分别进行100 次迭代更新,更新所述种群中每个粒子的速度和位置。其中:Xi(k +1)为第k+1 代迭代粒子i 位置矢量;Vi(k+1)为第k+1 代迭代粒子i 速度矢量;ω=0.6 为惯性权重;c1=c2=2 为学习因子;pbesti(k)为第k 代迭代粒子i 本身所能找到的最优解;gbest(k)为第k 代迭代中整个种群目前找到的最优解。
4)接着对更新后的每个粒子采用一种改进的轮盘法进行筛选,即用适应度函数最值Ftmax减去该种群中每个粒子对应的适应度函数值Ft,并以概率
对所述种群中的全部粒子进行筛选[22]。
5)然后对筛选得到的粒子进行交叉和变异,即从所述筛选得到的粒子中选取一定数目的粒子放入杂交池中,对所述杂交池中的粒子随机进行交叉操作,得到交叉变异后的子代粒子,以
概率选择交叉变异后的子代粒子,并且与未进入杂交池的父代粒子共同构建新的种群。式中:dE=f′-f,f′为交叉变异后的粒子对应的适应度的值,dE 为交叉变异后的适应度值与上一代粒子适应度值差值;p 为交叉变异后的子代粒子被选择的概率。
从所述更新后的种群中筛选出全局最优粒子,并将所述全局最优粒子所对应的解空间中的所有解确定为最优测点参数。
2.3 单指测点优化仿真实验
基于改进的粒子群算法,利用Matlab 软件对测点进行优化,训练选取目标测点数1~3,优化结果如表1 所示,测点具体位置如图8 所示。
表1 测点优化结果Tab.1 Optimization results of measuring points
图8 目标测点数分布为1、2、3 个测点排布图Fig.8 Arrangement diagram of 1,2 or 3 target measuring points
由表1 可知,当目标测点数为2 或者3 时,受力状态识别百分比误差相差不大,但是出于机械手指压触觉感知传感阵列的微型化要求,我们针对单指节进行如图8(a)中测点数为1 的传感阵列设计。通过改进粒子群算法对中指的3 段指节进行测点优化,其测点排布图如图9 所示,该测点组合下受力状态识别百分比误差最小,故针对中指可进行测点数为6 的测点组合。
图9 优化后的中指测点排布图Fig.9 Layout of the middle finger measuring points after optimization
2.4 多指测点优化
由于机械手进行抓握时大拇指接触面积较小,其他4 指的抓握方式及应变场分布较为相似,因此基于这4 根手指整体的应变场分布及单指的测点排布规律进行初始测点布置,共选取40 个节点用于初始的测点筛选,其测点初始排布图如图10 所示。
图10 初选测点排布图Fig.10 Layout of the initial measurement point
基于上述的改进粒子群算法进行测点优化,在单指目标测点数≤4 且4 指目标测点数≤16 要求下,对不同的目标测点数进行受力状态识别百分比误差进行对比分析,对比分析结果如表2 所示。
表2 4 指测点优化结果Tab.2 Optimization results of four finger measuring points
本文使用的光纤光栅传感阵列把多个不同波长的光纤光栅采用波分复用技术构成串联网络,再用空分复用技术构成并联网络,故基于应变场分布及改进粒子群算法优化后选用单指测点数为3 且4指测点数为12 时最优测点组合(1,3,6,12,13,16,21,23,26,31,33,36),此时百分比误差为7.26%,采用如图11 所示传感阵列布置,后续实验以测点位置为3,5 mm 光栅的中心点进行传感器的排布和封装,进一步搭建机器人手指压触觉感知系统。
图11 优化后测点排布图Fig.11 Layout of measurement points after optimization
2.5 机器人手指抓取感知实验
在对光纤光栅触觉传感阵列的仿真分析及优化设计的基础上,制作了相应的触觉传感器并验证了其压触觉感知性能。传感器的基体材料选择PDMS,其具有柔韧度和拉伸性较好的优势。PDMS 在常温下的状态为液体,长时间暴露于空气中会逐渐固化,故将PDMS 与固化剂按照10 ∶1 的比例混合后静置一段时间就能凝固成型。将光纤光栅置入液态的PDMS 混合液中,成型后的光纤光栅可以无间隙的方式被弹性体紧紧包裹其中。
为了便于加工和脱模,出于成本及PDMS 不粘连的角度考虑选择铜为模具的材料,总体使用三合模结构。下模腔体的中心线处留有一道凹槽,该凹槽用来固定光纤光栅,保证了制备出的传感器中光纤光栅埋入深度为1 mm,腔体侧边增加了矩形槽,便于从侧面浇筑PDMS 混合液。上模与下模的4 个角落使用螺栓紧固,而侧边的活动块在腔体内注满PDMS 混合液后以插销的形式插入,便于将多余的混合液从排液排出。设计的模具不但浇筑和脱模简单,还能够重复利用。
光纤光栅压触觉传感器的制作步骤为首先清洁模具,接着制备PDMS 混合液,然后封装光纤光栅并烘烤成型,最后脱模清洗模具。
机器人手指抓取感知实验的系统主要包括光纤光栅解调仪、机器人手、计算机、FBG 压触觉传感阵列等,实验温度为25 ℃。实验时,用机器人手指对人的手臂进行抓握,并用解调仪实时测量FBG 传感器的中心波长偏移情况,然后将FBG 传感阵列输出波长变化量转换为力,得出机器人手进行抓握过程中的压力变化情况,手臂抓握实验图如图12 所示,其中FBG 触觉传感器粘贴于机械左手的手指内侧。实验通过改变舵机偏差来设计机器人手指的动作组,实现机器人手指对手臂的抓握和放下。
图12 机器人手指手臂抓握实验图Fig.12 Experimental diagram of robot fingers grasping the handshake arm
在控制机器人手指的抓握与放下工作的过程中,施加载荷为3 N,用解调仪以1 Hz 的采集频率采集机器人中指1—3 号传感器和食指4—6 号传感器上的中心波长偏移情况,得出整个抓握过程中机器人手指6 个传感器的中心波长变化量,如图13所示,对应的压力变化图如图14 所示。
图13 传感器中心波长变化图Fig.13 Central wavelength change diagram of sensors
图14 传感器所测压力变化图Fig.14 Pressure change chart measured by sensors
由图13 和14 可以得出,机器人中指和食指上的传感器中心波长变化情况和施加的压力变化情况基本吻合。机器人手指抓握手臂过程中通过FBG1、2、3 测出中指3 个指节施加的压力分别约为3.25、3.00 和2.75 N,食指3 个指节施加的压力约为3.75、3.20 和3.00 N。手指指节接触力不同是由于接触位置和方式的不同造成的。综上所述,该传感阵列可以较为准确地监测机器人手抓握的压触觉传感过程,实验结果与仿真结果基本吻合,满足压触觉传感的检测要求。
3 结论
本文提出一种基于遗传算法和模拟退火思想的改进粒子群算法,优化光纤光栅压融觉传感阵列的测点排布。该测点优化方法在不同测点组合下的受力状态识别百分比误差均低于10%且运算速度较快。针对机器人手指进行抓握时压触觉感知问题,基于机器人手指抓握时应变场分布进行测点初选,然后利用改进粒子群算法进行测点优化设计。以受力状态识别百分比误差及测点数目作为阵列优劣的判别标准,对不同测点数的各种传感阵列组合情况进行了分析,权衡其优劣设计出单指及多指的最优传感阵列。通过机器人手指抓取感知实验验证了传感阵列可以较为准确地监测机器人手抓握的压触觉传感过程,实时检测出抓取过程中的压力变化情况,实验结果与仿真结果基本吻合,满足了机器人手指上的传感器微型化及其精度要求。