您好,欢迎访问三七文档
1引言(Introduction)连续搅拌反应釜(CSTR)是聚合化学反应中广泛使用的一种反应器,该对象是高度非线性的化学反应系统。在连续搅拌反应釜(CSTR)系统中是通过控制其内部的工艺参数,如温度、压力、浓度等稳定,来保证反应的正常进行。其控制质量直接影响到生产的效益和质量指标。此系统中关注的主要是各组份的浓度,在对其进行控制的过程中由于会出现随机的干扰,并且就现存的工艺条件来讲,在线测量并及时获得浓度的值是很困难的。而温度的测量要比浓度的测量相对来说容易的多,因此,本文主要是考虑设计一种估计方法利用容易测量的温度值来估计出需的浓度值。然后对CSTR系统进行控制。此项工作得到国家自然科学基金重大研究计划重点项目(90820302),资助卡尔曼滤波算法是一种由计算机实现的实时递推算法,利用前一时刻的滤波结果,递推出现在时刻的状态估计量,可大大提高下一时刻的滤波精度。而且卡尔曼滤波器采用的是状态空间模型描述,仅需要迭代求解一个普通的差分方程或微分方程的积分问题,非常适用于在线实施。因此为了通过温度的测量对CSTR各组份浓度进行估计,本文设计了卡尔曼滤波。基于卡尔曼滤波技术,通过实时测量反应釜的反应温度和冷却温度来在线估计其组分的浓度,再利用估计出的状态研究状态反馈控制方法,进行系统仿真,取得了良好的控制效果。2CSTR系统的模型(ModelofCSTR)连续搅拌反应釜[2](ContinuousStirredTankReactor,简称CSTR)是化工生产的常用设备,图1所示为一带冷却套的连续搅拌反应釜。基于卡尔曼滤波的CSTR控制器设计连玺1,2,解小华1,2,秦贵军1,21.吉林大学汽车仿真与控制国家重点实验室,长春130025E-mail:jiexh@jlu.edu.cn2.吉林大学控制科学与工程系,长春130025E-mail:xi121138@163.com摘要:在化工生产中连续搅拌反应釜(CSTR)是常用设备。从目前的化工工艺条件及经济方面考虑,在CSTR系统中直接测量生产物组分的浓度是很困难的。本文基于卡尔曼滤波技术,通过实时测量反应釜的反应温度与冷却温度来在线估计其组分的浓度,取得了很好的效果。最后利用估计出的状态值形成状态反馈闭环控制,控制效果明显。关键词:卡尔曼滤波,浓度估计,CSTR系统ControllerDesignofCSTRbasedonKalmanFilterLianxi1,2,Xiexiaohua1,2,Qinguijun1,21.StateKeyLaboratoryofAutomobileSimulationandControl,JilinUniversity,Changchun130025ChinaE-mail:jiexh@jlu.edu.cn2.DepartmentofControlScienceandEngineering,JilinUniversity,Changchun130025ChinaE-mail:xi121138@163.comAbstract:TheContinuousstirred-tankreactor(CSTR)isacommonidealreactortypeinchemicalengineering.InCSTRsystems,directlymeasuringthechemicalconcentrationsmaybeneitherpracticalnorfeasibleduetooperatingconditionsandeconomicfactor.Inthispaper,aconcentrationestimationstrategybasedonKalmanfilterisproposed,withwhichtheconcentrationsareestimatedfromthetemperaturesmeasurements.Atlast,simulationresultsofthestatefeedbackcontrolmethodbasedontheKalmanestimatoraregiven.KeyWords:Kalmanfilter,concentrationestimation,CSTR图1连续搅拌反应釜其化学反应是由环戊二烯(cyclopentadience,组分A)生成主产品环戊烯(cyclopentenol,组分B)和副产品二环戊二烯(dicyclopentadience,组分D)以及由环戊烯(cyclopentanol)继续反应生成的副产品环戊酮(cyclopentanediol,组分C)。化学反应方程如下:A1kB2kC,2A3kD。基于能量守衡定律,该CSTR的理想动态特性可以由以下非线性微分方程描述:2013AAAAARVCCCkCkCV&(1)12BBABRVCCkCkCV&(2)012231()(()()())()ABBCADARRpRBRARKpRVkCHkVCkACHkCHCV&(3)1()kKRKKPKQkAmC&&(4)0,0.ABCC(5)上述非线性方程中详细的物理和化学参数见表1。方程中AC和BC分表示物质A和B的浓度,和K分别为反应温度和冷却温度。为了建立状态空间模型,取AC、BC、、K作为系统的四个状态,取物料进给率RVV和冷却套中的散热量KQ&为系统的控制输入。反应器的进料来自上一设备,其温度0和浓度0AC是波动的,可以作为外部的干扰。反应速度ik依赖于反应温度,并且遵循Arrhenius准则:0().exp/273.15iiiEkkC(6)根据文献[2],获得组分A最大产出率的系统稳定工作点是:05.10AsmolCl2.14AsmolCl0104.9sC1.09BsmolCl114.19RsVhV&114.2sC1113.5KskJQh&112.9KsC根据式(1)到式(6)所得到的CSTR系统的数学描述,运用MATLAB中的Simulink工具建立CSTR系统的仿真实验模型。其仿真模型如图2所示。图2CSTR系统的仿真实验模型框图表1CSTR系统各参数意义参数参数意义参数参数意义10k1k的反应时间常数ADRH3k的反应热20k2k的反应时间常数液体密度30k3k的反应时间常数pC质量定压热容1E1k的反应激活能量k冷却套的传热系数2E2k的反应激活能量RA冷却套的面积3E3k的反应激活能量RV反应器的体积ABRH1k的反应热Km冷却液质量BCRH2k的反应热PKC冷却液的热容3卡尔曼滤波器的设计(DesignofKalmanFilter)当一个系统能观测时,系统的状态可由系统的输入和输出的观测量直接或间接获得。但当系统或观测量受到随机干扰时,由观测量得到的状态精度会受到很大的影响,需要用状态估计的方法。实际的系统中,许多干扰信号是随机的信号,没有确定的变化规律,也无法给出确定的时间或空间函数。这些随机干扰不能简单地利用物理装置或者常规的低通、带通滤波器滤除,需要用新的基于估计理论的方法去估计所需的测量值或状态值。卡尔曼滤波算法是一种由计算机实现的实时递推算法,实质上时一种最优估计方法。考虑如下线性离散系统:1kkkxAxGw,kkkyCxv(7)式中knxR是状态向量,kmyR是量测向量,kpvR是量测噪声,kqwR是系统噪声向量.假设系统噪声和量测噪声是互不相关的零均值高斯白噪声,方差矩阵分别为Q和R,于是有:预测器递推方程:1kkkkxAx(8)1TTkkkkPAPAGQG(9)滤波器递推方程:1111[]TTkkkkkKPCCPCR(10)111[]kkkkPIKCP(11)1111[]kkkkkkkxxKyCx(12)为了采用线性卡尔曼滤波方法,需要得到CSTR的线性状态空间方程。将其非线性系统在稳态工作点线性化。将非线性函数在平衡状态或参考轨迹附近展开成泰勒级数,只保留线性项从而将非线性模型线性化。用这种近似方法进行分析和设计,在工作点的某一邻域,大体是正确的,所产生的误差往往为工程上所接受。然后进行无量刚化,形式如下:1234,,,AABBssABssKKssKssCCCCxxCCxx1200001200,,,273.15KKRRssKsRsAAssAssVVQQVVuuVQVCCwwC&&&&&&并取采样时间为15s离散化后,得到如下形式的系统模型:1,kkkkkkxAxBuGwyCx(13)其中,0.84860.00060.50800.03000.10460.88690.35590.02150.00840.00200.88030.09440.00140.00030.28590.7143A0.19230.00000.03390.0000.04720.00020.00780.0035B0.13000.01450.00780.01040.00060.05080.00010.0084G00100001C取如下卡尔曼滤波器参数:100.20,0100.2QR1000010000100001P假设实际CSTR系统的初始状态为0,0,114.2,112.9,其它时刻的值通过求解CSTR的非线性微分方程获得。取卡尔曼预先估计的初始状态为[1100],,,。取控制量为稳态工作点,实际的干扰(进料浓度、进料温度)情况如图3和图4所示。其中Ca0为均值为5.10,协方差为0.5的随机干扰;V0为均值为104.9,协方差为3的随机干扰。01020304050607080901002.533.544.555.566.577.58Ca0realmean图3实际的进料浓度010203040506070809010098101103105107109111113114V0realmean图4实际的进料温度经过卡尔曼滤波估计出的状态曲线如图5和图6所示。图中点划线表示估计值,实线表示实际状态。0510152025303540455000.511.522.533.544.55ca[mol/l]t[min]cacad图5组分A浓度估计值与实际值的比较05101520253035404550-0.200.20.40.60.811.2cb[mol/l]t[min]cbcbk图6组分B浓度估计值与实际值的比较由仿真结果可以看出,经过一段时间后卡尔曼滤波估计出的浓度值跟踪上实际的浓度值,可见估计效果明显。但在对组份B浓度的估计过程中卡尔曼估计值在刚开始时出现负值,原因是卡尔曼最优估计没有考虑关于干扰和状态的已知信息,对估计效果影响不大。4基于卡尔曼滤波的状态反馈控制器设计(DesignofStateFeedbackControllerbasedonKalmanFilter)线性二次型最优控制方法是20世纪60年代发展起来的一种普遍采用的最优控制系统设计方法。在工程实际中应用线性二次型最优控制是非常普遍的。这是因为,二次型性能指标有较为明确的物理概念;而且采用二次型性能指标在数学处理上比较简单,甚至能得到解析形式表达的线性反馈规律,可以实现状态的线性反馈。线性二次型调节器控制的闭环系统,其动态响应性能直接与加权矩阵Q和R的选取相关,只要选择合适,就能获得良好的控制效果。本文利用卡尔曼滤波估计出的状态设计状态反馈控制器。MATLAB控制工具箱中,直接提供线性二次型最优控制的函数有lqr和lqry。在这里利用状态反馈闭环控制,因此用lqr命令求解反馈增益K。lqr命令格式为:[K,S,E]=LQR(A,B,Q,R,N)。K为
本文标题:基于卡尔曼
链接地址:https://www.777doc.com/doc-5753730 .html