201 1年6月 农机化研究 第6期 基于BP神经网络的PI D控制在温室控制系统中的应用 彭 燕 (渭南师范学院物理与电子工程系,陕西渭南市摘714000) 要:以温度参数控制为例,结合传统PID控制规律,利用BP神经网络完成温室温度控制系统的PID控制系 统设计。通过阐述基于BP神经网络的PID控制算法,完成温度控制系统中的BP神经网络PID控制参数在线整 定。采用MATLAB对基于BP网络的PID温度控制系统进行了仿真,结果表明,PID控制算法能够实现控制参数 的自适应调整,使系统对输入的响应达到小误差。 关键词:智能温室控制系统;PID控制;BP神经网络;温度调节 中图分类号:9625.5 1 文献标识码:A 文章编号:1003—188X(2011)O6一O163—05 0 引言 目前,温室农业已经成为维持民计民生的重要部 分,提高温室大棚的生产水平是确保人民基本生活的 见图 所示。 重要途经。作物的生长状况要求温室设施对作物生 长环境的各种因子(包括温度、光照、湿度、CO 浓度 和施肥等)进行精细控制,以此来提高温室作物的产 量和品质。传统的温室温度控制采用典型PID控制 算法,该算法在最小模型假设的前提下,采用一定PID 参数整定方法得到常规控制算法。但是这种方法有 一定的局限:若系统参数是时变的,控制性能将严重 变坏,控制有较大滞后。可见,常规PID控制不尽如 人意,因此必须采用改进措施来改善其控制效果。神 经网络具有自适应和自学习能力,利用神经网络对传 统PID控制器进行改造后,PID控制系统的控制效果 变好,且参数实现在线整定。本文采用BP人工神经 幽1系统组成不恿图 Fig.1 Diagram of reenhouse contgrol system 网络对PID控制进行改进,构成温度控制系统,通过 控制热风机来达到恒定室内温度的目的。 1.1 检测系统 检测系统都是采用与要检测的物理量相对应的传 感器完成物理量检测,包括温度检测、湿度检测、土壤 水分检测、灌溉水流量检测、CO:浓度检测以及光照检 测。 1 智能温度控制系统 智能温室控制系统应用现代计算机自控技术和智 能传感技术等,采用先进的传感器对室内的参数(温 度、湿度、CO 、土壤水分、光照和水流量等)进行实时 1.2控制系统 控制分机(下位机)接受控制系统(上位机) 检测,并采用控制系统,使温室内的环境接近人 工理想值,以满足温室作物生长发育的需求。系统由 检测系统、控制系统和控制室等3大部分组成, 收稿日期:2010—08—12 基金项目:陕西渭南师范学院研究生项目(10YKZ070) 的指令,通过一定的控制算法对执行机构进行适当操 作,完成对控制系统多个物理量的控制操作。 1)升降温控制。通常温度控制是采用改变太阳 光照来完成,也可采用强制改变温度的措施,使用暖 气或加热炉完成温室加温。降温方式一般有通风降 作者简介:彭燕(1984一),女,陕西宝鸡人,助教,硕士研究生,(E— 温和加湿降温两种,采用的设备分别为通风降温设备 和降温加湿设备。 mail)peyya1 984@yahoo.com.cn。 ・163・ 201 1年6月 农机化研究 第6期 2)加湿与排湿控制。湿度控制主要采用加湿设 备和大风机等来完成。 3)补充CO 控制。其补充方式主要有钢瓶CO 、 燃烧法产生CO:设备、化学反应法和有机物分解法。 4)补光与遮光控制。补光主要采用日光灯、生物 效应灯和农用钠灯来完成。 5)灌溉流量控制。灌溉流量控制主要由灌溉阀 和喷头完成。 图3基于BP网络的PID控制器结构 Fig.3 PID contolrler’8 structure based On BPNN 任何变量的控制都是由下位机(MCU)作为控制 核心,完成对执行结构(各种设备)的控制,进而控制 温室被控参数改变的过程。 这个控制器包含两部分内容:一是经典PID控制 器,直接实现对控制对象的闭环控制,并且3个参数 k ,k。和k。为在线调整方式。二是神经网络部分,根 1.3控制系统 据系统的运行状态完成PID控制器的参数整定,以期 智能控制系统的控制系统一般都运行有针对 望达到某种性能指标的最优化,使输出层神经元输出 温室作物生长的专家系统。该系统主要完成的任务: 状态对应于PID控制器的3个可调参数k ,k,和k。。 一是设备管理(运行状态及参数控制);二是人机交互 通过神经网络自学习与加权系数调整,使神经网络输 功能,控制人员可以通过专家系统的人机交互界面完 出对应于某种最优控制下的PID控制器参数。 成人机交互。 2.1 数字PID控制算法 1.4温度控制子系统 数字PID表达形式有多种,本文仅给出增量式数 在智能控制系统中,温度变量是多个被控变量之 字PID控制算法,即 一,是个典型的数字控制系统,其结构如图2所示。 “(k)=M(k一1)+k。(e(k)一e(k一1))+k】e(k)+ 本文以温度变量的控制为例,介绍基于BPNN的PID k。(e(后)一2e(k一1)+e(k一2)) (1) 控制在温室控制系统中具体应用。控制要使室内温 式中,k ,k。,k。分别为比例、积分和微分系数。 度不随室外温度变化而变化,始终维持在作物当前生 传统的数字PID控制器参数的选择方法有两种: 长需要的恒定温度下。环境中的实际温度值通过传 一是理论计算法整定,这种方法计算麻烦,计算出的 感器反馈给控制器(控制分机),一般为微处理器。控 数据未必能直接用,还必须通过工程实际进行调整和 制器根据设定值和测量值输出调节量,送给温度调节 修改;二是工程整定法,主要依赖工程设计在现场调 装置(热风机)一个信号,通过该执行元件实现温湿度 试时最后确定。这些方法都依赖于现场调试,整定过 的调节控制,从而保持温室内作物适宜的温湿度。 程繁杂,付出的代价较高。 本文比例、积分和微分系数依赖于BP网络状态, 它们的变化直接影b向系统的运行情况。因此,控制问 题的重点变成如何得到最优的k ,k。和k。组合,以使 系统运行在最优状态。 图2温度控制子系统结构图 Fig.2 Structure of temperature control system 2.2 BP神经网络PID控制算法 基于BP神经网络的PID控制算法 是采用了BP 2 BP网络控制器结构 神经网络来实现k ,k。,k。参数整定的一种最优选择 经典PID控制要取得较好的控制效果,就必须通 算法。一般来说,BP神经网络包含3层,即输入层、隐 过一定的参数整定方法得到比例、积分、微分环节的 含层和输出层,其结构见图4所示。 系数,形成控制量既相互配合又相互制约的关系。这 有M个输入节点、T个隐含节点和3个输出节 种关系并非简单的线性组合,而是从无数非线性组合 点。输人节点对应温室控制系统的运行状态量,输出 中找出的一组使PID算法控制效果最佳的组合。因 节点分别为PID算法的3个可调参数k ,k 和k。。本 此,本文利用神经网络所具有的任意非线性表达能 文也采用这种常用的3层BP网络模型 -4],神经网络 力,将最优参数选择任务交给BP网络完成,建立参数 的结构选择为3—4—3,即输入层为3个神经元分别 自学习的PID控制器。控制器结构见图3所示。 代表 201 1年6月 (k)=r(k)一Y(k)=e(k) ( )=e( )一 (k一1) ,农机化研究 隐含层的权值学习算法为 △ccJ ( )= △ ’(.i}一1)+'7 ’ ( ) 第6期 (2) (12) (尼)=e(k)一2e(k一1)+e(k一2) 其中,6 = [net[ ’(k)]6 。 4 因此,, ( )= 隐含层4个神经元,输出层3个神经元,其输出为 kP,kI和kD。 对以上算法归纳如下: 1)确定BP网络结构。本文采用3—4—3结构的 BP神经网络,初始权系数矩阵有两个,分别是 (4 3)和 (3 4)。为了使网络训练结果达到最佳,正 弦输入和阶跃输入采用不同的初始权系数矩阵。选 定学习速率77和惯性系数 。 2)采用数字控制理论,得到rin和yout及计算误 差error;输入分别取正弦和阶跃序列,序列以0.001 图4 BP嘲络结构 Fig.4 Structure of BPNN 为周期。 3)根据式(3)一式(9)计算BPNN各层神经元的 输入和输出,最终输出PID控制器3个可调参数,即 kP,kI和kD。 由神经网络的结构可以得出网络输入层的输人为 D ”=[D ¨,0 ¨,o ]( =1,2,3) (3) D ”= 1D ”= 2,D ,= 3 4)根据式(1),计算PID控制器输出。 网络隐含层的输入为 5)根据式(11)和式(12)进行神经网络学习,在 删 )=∑ ’ ( =1,2,3,4)(4) (5) 线调整加权系数,实现PID控制参数的自适应调整。 6)使k=k+1,返回到1)。 网络中隐含层神经元的激活函数为 3温室控制系统MATLAB仿真 ,( )=tanh(x)= 为了验证神经网络PID控制系统的性能,必须要 因此,网络隐含层的输出为 D (k)=厂( e£ (k)) 输出层的输人为 对系统进行仿真实验。本文该对简单温室温度控制 (6) 系统进行数学建模 J,得到传递函数为 ,' 一 G(s) 百 可 ( 3) 删 ’( )=∑ : D ( )(z=1,2,3)(7) 网络输出层神经元激活函数为Sigmoid函数,即 matlab将该函数描述为 sys:tf(hum,den,’inputdelay’,1) g( )=专(二 1+tanh(x))=七e +e 则输出层的输出为 0 。 (k)=g(net (k)) (8) (9) Bum=[2],den=[3.25,4.25,1]. 采样时间ts=1 s,调用matlab函数c2d()将连续 函数离散化,即syse=c2d(sys,1),离散化结果为 n(z = 一1 0.203 3z+0.131 6 z2—ol ’:kP,0 。 = I,0; = D 通过分析网络,满足性能指标函数小于一个较小 值,即 1.103z+0.270 4 (14) 对该结果进行z逆变换,结果为 y(k)=1.103y(k一1)一0。270 4y(k一2)+ 0.203 3u(k一2)+0.131 6u(k一3) (15) E(k)=÷(rin(k)一your(k)) < 输出层的权值学习算法,即 (10) 采用梯度下降法修正网络的权系数,可得到网络 根据所述算法,采用两种典型输入对系统仿真, 它们分别是阶跃输人和正弦输入。选定学习速率叼= 0.25一和惯性系数o/=0.05,编写基于BP神经网络的 PID控制器仿真程序。 另外,考虑到实际应用中控制变量因受执行元件 △∞ (k)= △∞: ’(k一1)+ 。’D (k) (11) 其中, )_e( gn( )6zg'( (…; 咖l=Df ;g ( )=g( )(1一g( ))= 。 机械和物理性能的约束而的有限范围内,即u i ≤ ≤ 。本文在编程过程中,采用饱和抑制措施, 201 1年6月 农机化研究 第6期 使其变化率也有一定的范围,即l f≤ …。 图5为系统正弦输入、响应及误差曲线,从图5能 够看出响应的起始阶段误差值较大,但随着神经网络 整定参数过程的进行,误差在0.005~一0.005之问 很大到较大,再逐渐为0的过程。又由于神经网络调 节过程较快,从而使阶跃响应调节时间短,稳定速度 快,当达到最终稳定后误差基本为0,系统被神经网络 整定为最优。 2・O 振荡。由此可知,BP神经网络的PID控制算法能够使 系统参数很快选择为最优,最终使误差到达最小,使 输出完全跟踪输入。 1・5 §1.0 0_5 0 2 3 4 time/8 2.0 1_5 -_ 1・0 O_5 0 2 3 4 time/s g ¨ 。 舶 m 舶 0 1 2 3 time/B 4 5 6 图6系统阶跃输入、响应及误差 Fig.6 Step input,response and elror of control system 图5 系统正弦输入、响应及误差 Fig.5 Sine input,response and eiTor of control system 为了验证神经网络PID算法对外来扰动的自适应 能力,本文设计在k=500到550采样时刻,使阶跃输 分析图6误差曲线可以看出,响应过程分为3个 阶段 J:一是开始(网络开始参数调整)。此时误差较 大,PID参数不能达到较优,响应的超调振荡较大,系 入信号出现一个方波扰动,扰动值为0.3,扰动信号的 波形见图7中的rin所示。 当该扰动信号经过神经网络的PID算法后,响应 统工作在振荡状态。二是中期(网络逐步调整)。此 曲线见图7中的yout。从该曲线可以看出,系统启动 后,算法完成参数整定过程,但是当外部扰动出现后, 系统出现不平衡状态,神经网络重新启动参数整定过 程,再次完成分析图6时出现的3个过程。 结合图6和图7可以看出,基于BP神经网络的 时误差较小,响应曲线也有振荡但振荡较小,系统运 行较优,但误差不能达到最小,控制系统输出不能完 全跟踪输入。三是末期(参数调整完成,参数检验)。 此时误差没有振荡,值为0,系统输出完全跟踪输入, 系统运行在最佳的稳定状态。 经过以上3个过程的分析可以看出,基于该种算 法的参数整定过程实际上就是神经网络的权系数优 化过程及参数检验过程。反应在曲线上就是误差从 ・PID算法能够随着外部扰动或系统参数的变化自动调 整PID控制参数。当在第500个采样时刻出现0.3的 外部扰动时,PID算法能根据输入随之调整,从而使外 部干扰对系统的影响很小,很快达到系统稳定。 166・ 201 1年6月 农机化研究 第6期 4 结束语 从仿真结果可以看出,BP神经网络利用其本身较 强的自学习能力,能够很好地解决PID控制中的参数 在线整定。整定过程即是神经网络的建立和神经网 络建立后的参数检验过程。经整定后的PID参数在 出现外部干扰信号时,又会重新启动参数整定过程, 在线完成PID参数的调节,从而可以随时保证温室温 度始终为控制系统设定的值。 智能温室系统要完成的不只是温度控制,该算法 可以进一步应用到温室湿度、光照和CO:等环境参数 的控制中,从而使作物不同阶段的生长环境达到最佳 2.0 状态。随着精准农业技术的发展,算法的鲁棒性也可 1.5 以进一步加强,使其更好地应用到田间精准农业中。 参考文献: [1 ] 罗鑫,沈大中,冯冬青.神经网络算法在暖通空制中 的应用[J].微计算机信息,2009(1):26—28. [2]周开利,康耀红.神经网络模型及其MATLAB仿真程序 应用[M].北京:清华大学出版社,2004:1—9. 1.O 0.5 _0.5 [3] 任安坤.基于BP神经网络的PID控制在反应釜温度控 制中的应用[J].中国科技信息,2010(6):26—28. [4] 张学燕,高培金,刘勇.BP神经网络PID控制器在工业 -1.O -1.5 控制系统中的研究与仿真[J].自动化技术与应用, 2 3 tlm,,/s 4 .2.0 2010,5(29):9—12. [5]高磊.温室PID控制实验统的研究[D].天津:天津大 学,2008. 图7带扰动的阶跃输入、响应及误差 Fig.7 Step input,response and error with disturbance [6]刘迪,赵建华.一种基于BP神经网络模型的自适应PID 控制算法[J].自动化技术与应用,2008,8(27):8—10. Application of PID Control Rule Based on BPNN in Greenhouse System Peng Yan (Physical and Electircal Engineering Department,Weinan Teachers’College,Weinan 7 1400,China) Abstract:According to traditional Proportional—Integral—Differential(PID)control rule and BP neural network,BP neural network(NN)is used for PID in greenhouse system.Firstly,algorithm of BPNN PID,which is mainly for adjus— ting parameters of PID online,is presented.Then,temperature of greenhouse control system based on BPNN PID is simulated in MATLAB.The end shows algorithm of BPNN PID can effectively adjust parameters of PID online,which make small error between input and response. Key words:intelligent greenhouse control system;PID control rule;BP neural network;temperature adjusting