基于RBF神经网络的多自由度机械臂控制及仿真分析
2021-11-14霍英杰
霍英杰
(漳州理工职业学院,福建 漳州 363000)
随着自动化进程的发展,机器人在工业中所占据的地位也越来越重要[1]。机械臂在机器人构造中占重要地位,它是机器人执行机构的主要形式,机械臂可以代替人力在危险复杂的环境下工作,也可以在精度要求较为高和时间要求较为大的生产环境中用来完成抓取、搬运等工作[2]。但是如今的机器人设计无论是本身机械臂的控制精度还是抗干扰能力都不能达到这些行业的实际要求,特别是机器人无法解决未知扰动干扰和自身高耦合化等因素给机械臂的控制系统带来的消极影响[3,4]。所以,本研究利用径向基函数(Radial basis function,RBF)神经网络和逼近函数的控制手段来对机械臂进行控制[5,6],使其更智能化,具有更高的自适应性。同时使用RBF神经网络在线建模,就不需要对逆动态模型进行复杂的估计,也不需要大量耗时的训练过程,能够大幅度的提升设计与仿真的效率。
1 基于径向基函数的机械臂设计方法概述
1.1 RBF神经网络的基本结构
RBF径向基函数神经网络的基本结构是个三层网络[7],它由输入节点来组成其输入层,输入层将网络与外界环境直接相连,并将输入信号x传递给隐含层。中间层为隐含层,隐含层用于将输入层信号到隐含层信号进行非线性变换,此处的变换需要经隐含层中的隐含节点中径向基函数来进行变换,径向基函数能够对输入信号x产生局部响应,当此时的输入信号x较为接近该径向基函数的中心值,隐含层节点此时就会产生较大的响应(见图1)。
图1 径向基函数(RBF)网络的基本结构
1.2 RBF神经网络的机械臂设计
1.2.1 机械臂关节角位置设计
把工作空间内的机械臂关节的尾端作为一个节点,将他末端的直角坐标(x1,x2)转换为关于一个关节节点的角位置(q1,q2)的问题,即机器人逆向运动学的问题。
按图2所示,其中数学关系可得:
图2 双自由度机械臂
将式子(1)和式(2)的平方相加,得到
可得到关于q2的表达式
1.2.2 机械臂的RBF神经网络设计
二关节的机械臂动态特性表达式为:
机械臂的动态方程具有以下的特性:
1)惯性矩阵Dx(q)为一个对称矩阵;
采用GL矩阵及其乘法操作,Dx(q)能够写成
其中{A}、{B}为GL矩阵,{Z(z)}、{H(q)}为GL向量,它们的元素分别为αkj,ξkj(z),βk。Ec(z)∈Rn*n和EG(q)∈Rn分别是建模误差εckj(z)和εgk(q)的矩阵。
1.2.3 径向基函数控制器的设计
其中,Λ为一个正定矩阵。神经网络控制器的设计为:
2 机械臂RBF神经网络的仿真分析
2.1 机械臂RBF神经网络仿真参数
2.2 仿真模块结构模型
在Matlab软件中的命令行窗口输入Simulink命令[8],并在Simulink中的Simulink库中寻找各个模块将其拖到需要使用的地方,并使用连接线将其按照信号传递的顺序将其连接(需要注意MUX模块的端口数与其信号输入来源和输出方向),最后再对各个模块的具体参数进行设置,就完成了具体的对于仿真模型的建立,如图3所示。
图3 仿真模块顺序模型
2.3 仿真结果
如图4所示,机械臂的关节节点的实际位置和期望值之间相差不多,同时在运动速度上,实际值与期望值呈现线性变化,两者之间的差异不明显,说明基于RBF神经网络设计的机械臂具有较好的运动特性。
图4 关节节点的位置(上)和速度(下)的实际值和期望值
如图5所示,通过仿真分析可以直观地查看机械臂的D(q)惯性矩阵,C(q,q•)阻尼向量以及G(q)重力向量,三者的实际值与期望值之间差异不明显,说明设计结果与预期结果符合,满足实际设计的需求。
图5 Dx(q),Cx(q,)和 Gx(q)的逼近
3 结论
机械手并不是一个静止的系统,它在工作中时时刻刻都处于运动的状态,且它的运动是非线性的,所以它的动态性能难以精确的用数学模型表示出来。在对机械臂的研究过程中首先要对其轨迹追踪,然而它的非线性和时变性特点导致它的轨迹极难追踪。现在有许多机械臂轨道追踪控制算法,例如鲁棒控制,PID控制和自适应控制等控制算法。但是控制系统往往由于建模误差、系统关节间的摩擦和信号检测、信号的传递误差等不能满足控制系统的要求。而神经网络所具有非线性变换特性并且它所具有强有力的并行运算能力,能够满足机械臂的控制要求。本研究通过Matlab软件中的Simulink来对基于RBF神经网络的多自由度机械臂进行仿真,利用使用神经网络在线建模的技术对机械手进行自适应控制,就不需要对逆动态模型进行复杂的估计,也省下了大量的耗时的练习过程。