基于模糊神经网络的机械手轨迹跟踪控制系统

2021-01-18 13:31缸明义夏兴国张庆丰吴彩林
关键词:机械手连杆轨迹

缸明义,夏兴国,张庆丰,吴彩林

(马鞍山职业技术学院 电气工程系,安徽 马鞍山 243031)

机械手控制是工业机器人控制中很重要的一个方面。传统的机械手控制方法大多需要机械手的精确数学模型或者机械手动力学方面的知识,但很难保证机械手系统在复杂环境下的稳定性、鲁棒性和整个系统的动态性能。模糊神经网络是模糊逻辑和神经网络相结合的产物,它克服了模糊系统缺乏自学习和自适应能力以及神经网络不适于表达基于规则的知识等不足[1-4],广泛应用于不确定性、非线性等复杂系统的控制中。这方面研究最早起源于欧美国家,近年来,很多学者提出将模糊神经网络应用于非线性建模或控制,毛润等[5]提出采用计算力矩和模糊神经网络补偿相结合的控制方法,但对于是否会影响系统快速性问题未提供量化分析;王波等[6]提出了将模糊神经网络应用于机械手轨迹跟踪,但其采用BP 算法进行在线学习,容易陷入局部收敛,使学习时间延长。

本文采用模糊神经网络来实现机械手的轨迹跟踪控制,网络学习采用粒子群优化算法和改进的BP 算法相结合的混合优化方法。粒子群优化算法作为一种新兴的基于群智能的优化算法,具有操作简单、功能强大、运算速度快等优点[7]。将粒子群优化算法用于模糊神经网络的学习,加快了网络的学习速度,提升了机械手轨迹跟踪控制的准确度。

1 机械手的动力学模型

机械手系统的动力学模型可以反映其各个关节的位置、速度和加速度之间复杂的关系。因此建立机械手的动力学模型对研究机械手轨迹跟踪控制至关重要。当前,两关节机械手系统在各种科研和实际生产场合使用较多,也可以作为集成的功能和结构单元在复杂的多关节机械手系统中使用[8]。

两关节机械手由两个质量分别为m1和m2的连杆l1和l2组成(见图1)。连杆l1的一端通过旋转关节1 固定在基座上,另外一端通过旋转关节2 和连杆l2连接,可以任意运动,实现抓取、搬运等用户指定的工作。电机的输入力矩τ1、τ2分别驱动机械手的关节1 和关节2,使关节运动带动连杆l1和l2运动。两连杆在力矩作用下转过的角度分别为θ1和θ2。两关节相互配合,机械手系统末端按照期望运动轨迹运动。

图1 两关节机械手模型Fig.1 Two-joint manipulator model

利用拉格朗日方法求解二连杆机械手系统的动力学方程[9],在忽略摩擦和干扰的情况下,两连杆机械手的动力学模型可以表示为

式中,

式中,τ为关节驱动力矩;M(θ)为惯性矩阵;V(θ,θ˙)为离心力和哥氏力矩阵;G(θ)为重力效应矩阵。

2 模糊神经网络控制器

机械手系统的特性复杂多变,它本身受到很多不确定性因素的影响,比如负载变化、自身不确定因素等[10],因此很难推导出精确的数学模型。模糊控制逻辑推理能力强,神经网络容错性强,结合两者优点,利用神经网络的网络非线性映射、自学习能力来调整模糊逻辑。

图2 为模糊神经网络控制系统原理结构图。它的控制对象是两关节机械手系统,网络学习采用粒子群优化算法和改进的BP 算法相结合的学习算法。

图2 模糊神经网络控制系统原理结构图Fig.2 Principle structure diagram of the fuzzy neural network control system

在 图2 中,θd1和θd2分 别 是 关 节1 和2 的 期 望 位 置 信 号;τ1和τ2分 别 是 通 过 模 糊 神 经 网 络 控 制器调节作用给机械手两关节的控制力矩。θ1和θ2分别是关节1 和2 的实际位置信号;e1和e2分别为机械手关节1 和2 的位置误差;ec1和ec2为误差变化率;ke1、ke2、kec1、kec2为调节偏差和偏差变化率的量化因子;ku1和ku2为调节控制器输出变量的比例因子。

2.1 机械手的模糊神经网络模型

机械手的模糊神经网络结构如图3 所示,它有5 层结构,分为两个模糊神经网络子网[11-12]。由于关节间的耦合作用,添加网络的第5 层为反应两关节耦合作用的耦合层。

图3 模糊神经网络结构Fig.3 Structure of fuzzy neural network

第1 层:模糊神经网络的输入层。该层有4 个节点,输入范围分别是e1,ec1,e2,ec2变论域,它们的论域均为[-6,6]。节点的输入为

式中,i= 1,2;k= 1,2。xki表示第k个子网的第i个输入表示第k个子网的第1 层输出。

第2 层:模糊神经网络的模糊化层,即隶属度函数生成层。每个输入e1,e2,ec1,ec2分为7 个节点,即7 个模糊语言集,分别为PB(正大)、PM(正中)、PS(正小)、Z(零)、NS(负小)、NM(负中)、NB(负大)。此层共有28 个节点。采用Gaussian 函数作为隶属函数,与7 个模糊语言集对应的Gaussian 函数的中心值分别为6、4、2、0、-2、-4、-6,宽度均为2。式中,kcij和kbij分别表示第k个子网的第i个输入变量第j个模糊集合的中心值和宽度,k f2(i,j)表示第k个子网的第二层输出。

第3 层:模糊神经网络的推理层。在此网络中用乘法代替取小运算,

式中,i= 1,2,…,7;j= 1,2,…,7。k f3(i,j)表示第k个子网的第三层输出。第4 层:模糊神经网络的去模糊化层。采用加权平均法去模糊化,

第5层:模糊神经网络的输出层。该层表示机械手两关节之间耦合关系,

式中,w(4)ki表示四层与五层之间的权值系数,它反映了各关节间的耦合作用。

2.2 基于粒子群优化算法和改进BP 算法的模糊神经网络参数整定

2.2.1 粒子群优化算法 粒子群优化(particle swarm optimization,PSO)算法是一种基于群智能的演化计算技术[13],它由粒子之间的相互作用,从随机解出发,在搜索空间里智能寻找最优解。

假设粒子群为n维搜索空间,设第i个粒子的当前位置为Xi=(xi1,xi2,…,xin),当前速度为Vi=(vi1,vi2,…,vin)。第i个粒子所经历过的最优适应值的位置,即个体最好位置为Pi=(pi1,pi2,…,pin)。

设f(X)为最优的目标函数,则第i个粒子的Pi=(pi1,pi2,…,pin)由(7)式确定:

设Pg(t)为在整个粒子群中搜索到的最好位置,即为全局最好位置,则

第i个粒子的当前位置和当前速度通过(9)式和(10)式更新:

式 中,i表 示 第i个 粒 子(i= 1,2,…,m),j表 示 粒 子 的 第j维(j= 1,2,…,n),t表 示 当 前 进 化 代数,c1和c2为加速常数,通常在[0,2]之间取值,r1,r2∈[0,1]为均匀随机数。

从(9)式和(10)式可知,c1决定粒子飞向Pi方向上的步长,c2决定粒子向Pg飞行的步长。为避免粒子在更新过程中离开搜索空间,将vij限定在一定范围内,即vij∈[-vmax,vmax]。

2.2.2 基于粒子群算法的模糊神经网络参数的整定 模糊神经网络常用的学习算法是基于梯度的BP 算法,但其容易陷入局部收敛,使网络学习时间延长。粒子群优化算法操作简单,功能强大,但其收敛速度相对较慢[14]。结合两种算法应用在模糊神经网络的参数学习中,优势互补,从而提高推理能力和学习能力,实现对机械手的轨迹跟踪控制。具体由离线学习粗搜索获得较合理初值和在线学习细搜索获得最优解两步构成。

基于粒子群优化算法的离线优化模糊神经网络参数搜索的具体步骤如下:

步骤一对模糊神经网络结构进行初始化,确定网络结构中心值kcij、宽度kbj、权值kw(3)ij、w(4)ij的个数。

步骤二随机初始设定粒子群的位置和速度。

步骤三逐一输入粒子群中的粒子,计算出所有粒子的适应值。

步骤四根据(7)式和(8)式比较适应值,确定粒子的个体最优值pbest和群体全局最优值gbest。

步骤五根据(9)式优化粒子的速度,根据(10)式优化粒子的位置。

步骤六若已获得足够好的适应值或达到预设的最大迭代次数,则转步骤七,否则返回步骤二继续搜索。

步骤七结束。

2.2.3 基于BP 算法的在线学习 通过粒子群优化使模糊神经网络参数达到了全局近似最优解,但由于其具有一定的概率性和随机性,并且需要控制计算量,以及控制的实时性[15],故只对网络的权值和运用改进的BP 算法进行在线实时细化微调。

改进的BP 算法添加了动量项,利用附加的动量项可以平滑梯度方向的剧烈变化,此处动量因子取α=0.1。同时为使训练的收敛速度尽可能加快,在保证收敛精度的前提下尽可能提高学习率η的数值,此处取η=0.3。

3 仿真验证

本文在MATLAB 平台中仿真验证控制方案的有效性,在仿真中模糊神经网络结构为4-28-98-2-2。采用粒子群优化模糊神经网络参数高斯基函数的中心值、宽度。通过经验选取粒子群规模为30,进化迭代步数100,加速常数通常取c1=c2= 2,采样周期T= 0.000 5 s。

首先应用粒子群优化算法离线训练,模型误差的优化过程如图4 所示。

图4 模型误差的优化过程Fig.4 The optimization process of model error

然后,再将参数放入模糊神经网络用于机械手控制。机械手的具体物理参数见表1。

表1 机械手基本的物理参数表Tab.1 Basic physical parameter table of the manipulator

(1)设关节1 的期望函数为θd1= sin(2πt),关节2 的期望函数为θd2= cos(2πt)。跟踪效果如图5 和图6 所示,跟踪误差如图7 和图8 所示。

图5 关节1 轨迹跟踪曲线Fig.5 Joint 1 trajectory tracking curve

图6 关节2 轨迹跟踪曲线Fig.6 Joint 2 trajectory tracking curve

图7 关节1 优化后轨迹跟踪误差Fig.7 Trajectory tracking error after joint 1 optimization

图8 关节2 优化后轨迹跟踪误差Fig.8 Trajectory tracking error after joint 2 optimization

在模糊神经网络的离线学习中,粒子群优化学习算法获取了一个比较好的初值,这为模糊神经网络的在线学习奠定了良好的基础。从图5 ~图8 的轨迹跟踪控制效果图中可看出模糊神经网络控制效果很好,经过一段时间的学习后,机械手具有较好的跟踪性能,且误差几乎为零。

(2)为了研究系统的抗干扰能力,在t= 2 s 时,分别对关节1 和关节2 施加脉冲干扰,幅值为0.1 rad。仿真结果见图9 和图10。

图9 加入干扰后关节1 的正弦信号跟踪效果Fig.9 Sinusoidal signal tracking effect of joint 1 after adding interference

图10 加入干扰后关节2 的余弦信号跟踪效果Fig.10 Cosinusoidal signal tracking effect of joint 2 after adding interference

由图9 和图10 可以看出控制系统的抗干扰性比较好,能够快速跟踪期望输出,幅值0.1 的脉冲干扰对控制系统几乎没有影响。

4 结语

设计了一种基于模糊神经网络的机械手控制方案,在模糊神经网络参数的优化学习中通过粒子群离线搜索和BP 算法在线调整相结合,提高了网络的学习速度和泛化能力。仿真研究表明,应用该控制方案,系统跟踪性能良好,有较好的适应性和稳定性。

猜你喜欢
机械手连杆轨迹
基于装配工况发动机连杆有限元分析
PLC气动机械手控制系统的设计与开发
解析几何中的轨迹方程的常用求法
基于机器视觉的开关操纵机械手研究
轨迹
轨迹
拆弹帮手
LDK发动力连杆生产工艺优化
基于单片机控制机械的压铸机械手优化设计