基于神经网络模块SN9701开发多变量系统解耦控制器
2009-05-04
作者:王东风
摘 要: 基于单输入单输出的具有自学习功能的神经网络模块SN9701开发出了多变量系统的解耦控制器,计算机仿真结果表明,用4块SN9701可以完成双输入双输出系统的解耦控制。介绍了该多变量系统解耦控制原理以及解耦控制系统中SN9701的训练。
关键词: 神经网络 SN9701 解耦控制 计算机仿真
人工神经网络作为现代智能控制领域的一个分支,近年来在工业自动化领域得到了广泛应用。例如,可用于预报、模式识别、寻优和改善控制环节等[1]。而大部分的研究集中在神经网络软件技术上,主要是软件设计和学习算法。一些国家已研制出神经网络芯片,使神经网络的本质并行算法真正得以体现。SN9701是一种神经网络硬件模块[2],其网络模型是切比雪夫(Chebyshev)多项式神经网络,它可以任意精度逼近任意非线性映射,但它只是单输入单输出模块。本文介绍利用其快速的学习收敛速度,采用4块SN9701开发双输入双输出系统的解耦控制器,并给出计算机仿真结果。
1 SN9701功能简介
SN9701是单输入单输出神经网络模块,其内部主要由切比雪夫多项式形成电路、特征权值调整电路、性能指标判断电路以及函数形成电路等组成。其管脚排列如图1所示。
SS:样本学习输入端,对于样本集{xi,di},模拟量di由此端输入;
IN:样本学习输入端,对于样本集{xi,di},模拟量xi由此端输入;对于已训练好的神经网络,输入变量也由此端输入;
DIS:样本训练结束标志端,低电平有效,发光二极管指示;
GND:电源地;
ε:性能指标输入端,ε为任意小的正模拟电压,可由两个串联电阻分压获得;
ST:启动神经网络学习输入端,负脉冲有效;
OUT:神经网络输出端;
Vcc:电源正端,Vcc为10~30V电源。
2 基于SN9701的多变量系统解耦控制器设计
2.1 多变量系统解耦控制原理
现考虑双输入双输出系统:
其中G11(·)、G12(·)、G21(·)、G22(·)表示任意时域或频域的线性或非线性传递关系。解耦控制系统原理框图如图2所示,解耦器NND1和NND2对耦合系统进行解耦,控制器NNC1和NNC2对两个单输入单输出系统进行控制。
图中r1、r2是设定值y1、y2为解耦控制系统输出,u1、u2为施加于对象的控制量,v1、v2为单输入单输出系统控制器输出。解耦控制系统应满足下式,以实现解耦功能和控制功能。
解耦功能和控制功能可用4块SN9701经过训练完成。由上面式子可知,4块SN9701训练的目的就是分别逼近(3.1)、(3.2)式的函数关系以及(4.1)、(4.2)式的逆函数关系。
2.2 解耦控制系统中SN9701的训练
SN9701实现两输入两输出系统的解耦控制步骤如下:
(1)根据(3.1)式和(3.2)式分别产生足够数量的数据样本,并分别训练两个SN9701模块,以逼近(3.1)式和(3.2)式,实现解耦器的设计;
(2)将训练好的NND1串入(4.1)式或者直接根据产生足够的训练样本,以训练SN9701控制NNC1。不过此时应将(4.1)式的输出作为SN9701的输入,将(4.1)式的输入作为SN9701的训练目标。
(3)将训练好的NND2串入(4.2)式或者直接根据产生足够的训练样本,以训练SN9701控制NNC2。
3 仿真例子
考虑如下强耦合系统:
根据第3节中的方法步骤训练SN9701,得到解耦器和控制器NND1、NND2、NNC1、NNC2。对单位阶跃响应的仿真试验结果如图3所示。从仿真结果可见,用4个训练好的SN9701实现两输入两输出系统的解耦控制,效果令人满意。
参考文献
1 袁曾任.人工神经网络及其应用.北京:清华大学出版社,1999
2 曾哲昭,邹阿金.Chebyshev神经网络模块SN9701及其应用.国外电子元器件,1998(11):9~10
3 何克忠,李 伟.计算机控制系统.北京:清华大学出版社,1998