一种电加热炉温度的非线性神经网络优化PID控制方法与流程

文档序号:11544444阅读:385来源:国知局

本发明属于自动化技术领域,涉及一种电加热炉温度的非线性神经网络优化pid控制方法。



背景技术:

pid控制策略由于具有算法简单、稳定性好、可靠性高等优点,已经被广泛应用于各类工业过程之中,但传统的参数整定完全依赖于被控对象,而现代工业过程机理比较复杂,模型难以确定,所以利用常规的pid控制以及参数整定方法,很难满足系统的控制要求。

考虑到神经网络作为一门交叉学科,并且对复杂的非线性关系可以充分逼近,具有学习和适应不确定系统的动态特性、容错性等特点,所以本发明考虑利用rbf神经网络对电加热炉控制系统建立预测模型,并通过rbf神经网络对pid控制器进行参数整定。



技术实现要素:

本发明针对现有技术的不足,提供了一种电加热炉温度的非线性神经网络优化pid控制方法。

本发明根据电加热炉控制系统的历史的输入、输出信息对rbf神经网络进行离线训练,获得神经网络的相关参数,将训练好的神经网络作为系统的预测模型;另外,将rbf神经网络与pid控制器结合,利用rbf神经网络对pid控制器参数进行在线自整定。

在使用前先将rbf神经网络离线学习,并以一定精度逼近具有非线性特性的电加热炉控制系统,使用时将电加热炉控制系统历史输入和输出数据,作用于训练好的rbf神经网络,得到预测输出值;另外,根据参考输入和预测模型输出值求得输入误差,实现闭环控制,通过rbf神经网络求取广义非线性pid控制器的参数,从而求得控制增量,实现对电加热炉控制系统的温度控制。

本发明方法的步骤包括:

步骤1、rbf神经网络的训练,具体是:

1.1首先采集电加热炉控制系统的输入输出数据,利用该数据对rbf神经网络进行训练。系统的性能指标函数jrbf为:

其中,y(k)、yp(k)分别表示k时刻电加热炉控制系统的实际输出值和预测模型预测输出值。

1.2根据梯度下降法对rbf神经网络的参数进行调整。

k时刻的rbf神经网络输出权值变化量δwj(k)为:

δwj(k)=η(y(k)-yp(k))hj

其中,η为学习速率,hj表示隐层节点。

k时刻的rbf神经网络输出权值wj(k)调整为:

wj(k)=wj(k-1)+δwj(k)+α(wj(k-1)-wj(k-2))

其中,α为动量因子,wj(k-1)、wj(k-2)分别表示k-1、k-2时刻rbf神经网络的输出权值。

k时刻的rbf神经网络节点基宽变化量δbj(k)为:

其中,p表示rbf神经网络输入向量,bj(k-1)、cji(k-1)分别表示k-1时刻rbf神经网络节点基宽和节点中心。

k时刻的rbf神经网络节点基宽bj(k)调整为:

bj(k)=bj(k-1)+δbj(k)+α(bj(k-1)-bj(k-2))

其中,bj(k-1)、bj(k-2)分别表示k-1、k-2时刻rbf神经网络的节点基宽。

k时刻的rbf神经网络节点中心变化量δcji(k):

k时刻的rbf神经网络节点中心cji(k)调整为:

cji(k)=cji(k-1)+δcji(k)+α(cji(k-1)-cji(k-2))

其中,cji(k-2)表示k-2时刻rbf神经网络的节点中心。

1.3根据1.1和1.2,jacobian阵(即为对象的输出对控制输入变化的灵敏度信息)算法为:

其中,δu(k)表示pid控制器k时刻求解的电加热炉控制系统的控制增量;m表示rbf神经网络隐层神经元的个数。

步骤2、预测模型的建立,具体是:

2.1预测模型的计算需要通过计算机实现,属于离散控制系统,应该使用非线性离散系统的电加热炉控制系统预测模型。考虑使用下面的siso被控系统:

y(k)=f[δu(k-1),δu(k-2),…,δu(k-nu),y(k-1),y(k-2),…,y(k-ny)]

其中:δu(k-1),δu(k-2),…,δu(k-nu)为电加热炉控制系统运行过程中的输入增量;y(k-1),y(k-2),…,y(k-ny)为电加热炉控制系统的历史输出数据;f为控制系统的非线性映射关系;nu和ny分别为输出时间序列和控制时间序列的阶数,可以通过模型的阶数辨识的方法得到。

2.2将2.1中siso被控系统的输入增量δu(k-1),δu(k-2),…,δu(k-nu)和历史输出信息y(k-1),y(k-2),…,y(k-ny)作为rbf神经网络的输入,通过使用电加热炉控制系统的输入、输出的历史数据,按照步骤1的方法训练rbf神经网络,通过训练使rbf神经网络以一定精度逼近电加热炉控制系统的非线性映射关系f,将训练好的rbf神经网络当做电加热炉控制系统的预测模型。

2.3根据2.2对电加热炉控制系统通过rbf神经网络逼近的预测模型,可以对电加热炉控制系统的输出进行预测,其表达形式为:

yp(k)=lw×(exp(-||iw-p||2).×(b1.^2))+b2

其中,p为输入向量,iw为输入权值矩阵,lw输出权值矩阵,b1为输入节点基宽,b2为输出节点基宽。

2.4在下一时刻,依据步骤2.1到步骤2.3继续求解预测模型新的预测输出值yp(k),并依次循环。

步骤3、pid控制器参数求解,按照步骤1的方法对rbf神经网络进行训练,可以得到pid控制器的非线性表示关系,具体步骤是:

3.1根据步骤1,k时刻的比例系数kp(k)、积分系数ku(k)、微分系数kd(k)等参数调整同样使用梯度下降法,可得:

k时刻的比例系数变化量δkp(k)为:

k时刻的积分系数变化量δki(k)为:

k时刻的微分系数变化量δkd(k)为:

可以得到如下的迭代算法:

kp(k)=kp(k-1)+δkp(k)

ki(k)=ki(k-1)+δki(k)

kd(k)=kd(k-1)+δkd(k)

e(k)=yr(k)-yp(k)

其中,kp(k-1),ki(k-1),kd(k-1)分别为pid控制器k-1时刻的比例系数、积分系数、微分系数;yr(k)为电加热炉控制系统k时刻的设定值;e(k),e(k-1),e(k-2)分别为k时刻、k-1时刻、k-2时刻电加热炉控制系统预测模型预测值与设定值的误差值。

3.2nf为一个连续非线性函数,由rbf神经网络表示。根据3.1的结果,则控制器的输出定义为:

其中,△e(k),分别为电加热炉控制系统误差的微分和误差的积分,k表示由kp(k),ki(k),kd(k)组成的pid控制器参数向量。

3.3在下一时刻,依据步骤3.1到步骤3.2继续求解pid控制器新的kp(k)、ki(k)、kd(k)和控制增量δu(k),作用在电加热炉控制系统,实现温度的控制,然后按照上述的步骤依次循环。

本发明的有益效果:本发明使用了一种rbf神经网络对电加热炉建立模型的方案,该方法解决了非线性电加热炉模型难以建立的困难,同时通过rbf神经网络对pid控制器的参数进行自整定,解决了在电加热炉控制系统在实际控制过程中pid控制器参数难以整定的困难。通过本发明的方法实现了对电加热炉控制系统温度的有效控制,并且对控制过程中的未知扰动引起的模型失配情况也有良好的控制效果。

具体实施方式

以电加热炉中控制温度的性能评估为例:

电加热炉的加热过程是一种典型的大惯性带有时滞的控制过程,控制手段是电加热炉的占空比,使用本文提出的方法对电加热炉进行具体的控制。

本发明方法的具体实施方法包括:

步骤1、rbf神经网络的训练,具体是:

1.1首先采集电加热炉控制系统的输入输出数据,利用该数据对rbf神经网络进行训练。系统的性能指标函数jrbf为:

其中,y(k)、yp(k)分别表示k时刻电加热炉控制系统的实际输出值和预测模型预测输出值。

1.2根据梯度下降法对rbf神经网络的参数进行调整。

k时刻的rbf神经网络输出权值变化量δwj(k)为:

δwj(k)=η(y(k)-yp(k))hj

其中,η为学习速率,hj表示隐层节点。

k时刻的rbf神经网络输出权值wj(k)调整为:

wj(k)=wj(k-1)+δwj(k)+α(wj(k-1)-wj(k-2))

其中,α为动量因子,wj(k-1)、wj(k-2)分别表示k-1、k-2时刻rbf神经网络的输出权值。

k时刻的rbf神经网络节点基宽变化量δbj(k)为:

其中,p表示rbf神经网络输入向量,bj(k-1)、cji(k-1)分别表示k-1时刻rbf神经网络节点基宽和节点中心。

k时刻的rbf神经网络节点基宽bj(k)调整为:

bj(k)=bj(k-1)+δbj(k)+α(bj(k-1)-bj(k-2))

其中,bj(k-1)、bj(k-2)分别表示k-1、k-2时刻rbf神经网络的节点基宽。

k时刻的rbf神经网络节点中心变化量δcji(k):

k时刻的rbf神经网络节点中心cji(k)调整为:

cji(k)=cji(k-1)+δcji(k)+α(cji(k-1)-cji(k-2))

其中,cji(k-2)表示k-2时刻rbf神经网络的节点中心。

1.3根据1.1和1.2,jacobian阵(即为对象的输出对控制输入变化的灵敏度信息)算法为:

其中,δu(k)表示pid控制器k时刻求解的电加热炉控制系统的控制增量;m表示rbf神经网络隐层神经元的个数。

步骤2、预测模型的建立,具体步骤是:

2.1预测模型的计算需要通过计算机实现,属于离散控制系统,应该使用非线性离散系统的电加热炉控制系统预测模型。考虑使用下面的siso被控系统:

y(k)=f[δu(k-1),δu(k-2),…,δu(k-nu),y(k-1),y(k-2),…,y(k-ny)]

其中:δu(k-1),δu(k-2),…,δu(k-nu)为电加热炉控制系统运行过程中的输入增量;y(k-1),y(k-2),…,y(k-ny)为电加热炉控制系统的历史输出数据;f为控制系统的非线性映射关系;nu和ny分别为输出时间序列和控制时间序列的阶数,可以通过模型的阶数辨识的方法得到。

2.2将2.1中siso被控系统的历史输入信息δu(k-1),δu(k-2),…,δu(k-nu)和历史输出信息y(k-1),y(k-2),…,y(k-ny)作为rbf神经网络的输入,通过使用电加热炉控制系统的输入、输出的历史数据,按照步骤1的方法训练rbf神经网络,通过训练使rbf神经网络以一定精度逼近电加热炉控制系统的非线性映射关系f,将训练好的rbf神经网络当做电加热炉控制系统的预测模型。

2.3根据2.2对电加热炉控制系统通过rbf神经网络逼近的预测模型,可以对电加热炉控制系统的输出进行预测,其表达形式为:

yp(k)=lw×(exp(-||iw-p||2).×(b1.^2))+b2

其中,p为输入向量,iw为输入权值矩阵,lw输出权值矩阵,b1为输入节点基宽,b2为输出节点基宽。

2.4在下一时刻,依据步骤2.1到步骤2.3继续求解预测模型新的预测输出值yp(k),并依次循环。

步骤3、pid控制器参数求解,按照步骤1的方法对rbf神经网络进行训练,可以得到pid控制器的非线性表示关系,具体步骤是:

3.1根据步骤1,k时刻的比例系数kp(k)、积分系数ki(k)、微分系数kd(k)等参数调整同样使用梯度下降法,可得:

k时刻的比例系数变化量δkp(k)为:

k时刻的积分系数变化量δki(k)为:

k时刻的微分系数变化量δkd(k)为:

可以得到如下的迭代算法:

kp(k)=kp(k-1)+δkp(k)

ki(k)=ki(k-1)+δki(k)

kd(k)=kd(k-1)+δkd(k)

e(k)=yr(k)-yp(k)

其中,kp(k-1),ki(k-1),kd(k-1)分别为pid控制器k-1时刻的比例系数、积分系数、微分系数;yr(k)为电加热炉控制系统k时刻的设定值;e(k),e(k-1),e(k-2)分别为k时刻、k-1时刻、k-2时刻电加热炉控制系统预测模型预测值与设定值的误差值。

3.2nf为一个连续非线性函数,由rbf神经网络表示。根据3.1的结果,则控制器的输出定义为:

其中,△e(k),分别为电加热炉控制系统误差的微分和误差的积分,k表示由kp(k),ki(k),kd(k)组成的pid控制器参数向量。

3.3在下一时刻,依据步骤3.1到步骤3.2继续求解pid控制器新的kp(k)、ki(k)、kd(k)和控制增量δu(k),作用在电加热炉控制系统,实现温度的控制,然后按照上述的步骤依次循环。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1