《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 顯示光電 > 設(shè)計應(yīng)用 > 基于MATLAB的CSTR過程仿真控制研究
基于MATLAB的CSTR過程仿真控制研究
2016年微型機與應(yīng)用第10期
方璐,,吳志剛,陳安鋼
(東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,,上海 201620)
摘要: 連續(xù)攪拌反應(yīng)釜(CSTR)在生產(chǎn)過程中得到了廣泛應(yīng)用。因其在實際生產(chǎn)過程中會受到許多不利因素的影響,不易實現(xiàn)面向性能的控制。以連續(xù)攪拌反應(yīng)釜為對象,,采用常規(guī)PID控制,為了達到實時修改模型參數(shù),,動態(tài)顯示控制曲線和變量數(shù)值的目的,,設(shè)計了GUI人機界面,使得用戶可以方便,、實時地對CSTR控制系統(tǒng)進行監(jiān)控,。
關(guān)鍵詞: CSTR 人機界面 PID
Abstract:
Key words :

  方璐,吳志剛,陳安鋼

 ?。|華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,,上海 201620)

       摘要:連續(xù)攪拌反應(yīng)釜(CSTR)在生產(chǎn)過程中得到了廣泛應(yīng)用。因其在實際生產(chǎn)過程中會受到許多不利因素的影響,不易實現(xiàn)面向性能的控制,。以連續(xù)攪拌反應(yīng)釜為對象,,采用常規(guī)PID控制,為了達到實時修改模型參數(shù),,動態(tài)顯示控制曲線和變量數(shù)值的目的,,設(shè)計了GUI人機界面,,使得用戶可以方便、實時地對CSTR控制系統(tǒng)進行監(jiān)控,。

  關(guān)鍵詞:CSTR,;人機界面;PID

0引言

  連續(xù)攪拌反應(yīng)釜(Continuous Stirred Tank Reactor, CSTR)作為一類化學(xué)反應(yīng)器,由于其成本低,、熱交換能力強和產(chǎn)品質(zhì)量穩(wěn)定等特點,成為生產(chǎn)聚合物的核心設(shè)備,在化工,、發(fā)酵、生物制藥,、石油生產(chǎn)等工業(yè)生產(chǎn)過程中得到了廣泛的應(yīng)用[1],。其示意圖如圖1所示?!?/p>

001.jpg

  在連續(xù)攪拌反應(yīng)釜系統(tǒng)中通過控制其內(nèi)部的工藝參數(shù)(如溫度,、濃度等)的穩(wěn)定,來保證反應(yīng)的正常進行,,其控制質(zhì)量直接影響到生產(chǎn)的效益和質(zhì)量指標(biāo),。連續(xù)攪拌反應(yīng)釜的對象是高度非線性的化學(xué)反應(yīng)系統(tǒng),一般用一組非線性常微分方程來描述該反應(yīng)釜的數(shù)學(xué)模型[2],。本實驗通過采用單回路控制系統(tǒng),,在回路中運用基于四階五級RungeKutta的PID控制算法,通過整定PID參數(shù)實現(xiàn)對被控變量的控制,。同時在控制系統(tǒng)中設(shè)置擾動,,模擬現(xiàn)場控制中所遇到的干擾。為了能夠?qū)崟r監(jiān)控工藝參數(shù),,本設(shè)計采用GUI人機界面,,動態(tài)顯示被控對象及狀態(tài)變量的控制結(jié)果。

1CSTR模型

  實驗針對的化學(xué)反應(yīng)是由環(huán)戊二烯(組分A)生成主產(chǎn)品環(huán)戊烯(組分B)和副產(chǎn)品二環(huán)戊二烯(組分D)以及由環(huán)戊烯繼續(xù)反應(yīng)生成的副產(chǎn)品環(huán)戊酮(組分C),?;瘜W(xué)反應(yīng)方程如下:

  Ak1Bk2C,2Ak3D?;谀芰渴睾愣?,該CSTR模型的理想動態(tài)特性可以由以下非線性微分方程組描述:

  5WGO1OBKN]0{2`%{4D828WH.png

  如上各參數(shù)中,CA為反應(yīng)器中物質(zhì)A的濃度,,CB反應(yīng)器中物質(zhì)B的濃度,,CA0為A的進料濃度,K1,、K2,、K3為3個化學(xué)反應(yīng)的反應(yīng)速率,V為物料A進料體積流量,,VR為反應(yīng)器體積,,T為反應(yīng)器溫度,,Tk為冷卻劑溫度,T0為反應(yīng)器入口溫度,,ΔHRAB,、ΔHRBC、ΔHRAD分別為K1,、K2,、K3反應(yīng)放出的熱量,ρ為反應(yīng)器液體密度,,Cρ為反應(yīng)器液體熱容,,Kw為冷卻套的傳熱系數(shù),AR冷卻套傳熱面積,,Ei為第i個反應(yīng)的反應(yīng)激活能量。

  該CSTR模型的常微分方程組由3個微分方程組成,,即將CA,、CB、T作為系統(tǒng)3個狀態(tài)變量建立微分方程,,取冷卻劑溫度Tk為控制系統(tǒng)的操作變量,,反應(yīng)器中物質(zhì)濃度CA作為被控變量,反應(yīng)器入口溫度T0和濃度CA0,、物料進料體積流量V是波動的,,可以作為外部的擾動。各參數(shù)的值如表1所示,。表1CSTR模型常微分方程組參數(shù)表變量名變量符號參數(shù)值單位物質(zhì)A進料體積流量V14.19L/h反應(yīng)器入口溫度T079.7℃物料A進料初始濃度CA05.1mol/L反應(yīng)放出的熱量ΔHRAB-4.2KJ/mol反應(yīng)放出的熱量ΔHRBC11KJ/mol反應(yīng)放出的熱量ΔHRAD41.85KJ/mol反應(yīng)器中液體的密度ρ0.934 2kg/L反應(yīng)器液體熱容Cρ3.01KJ/(kg·K)冷卻套的傳熱系數(shù)kw4 032KJ/(h·m2·K)冷卻套傳熱面積AR0.215m2反應(yīng)器體積VR10L反應(yīng)速率系數(shù)k101.287×1012h-1反應(yīng)速率系數(shù)k201.287×1012h-1反應(yīng)速率系數(shù)k309.043 2×109h-1反應(yīng)的反應(yīng)激活能量E1-9 758.3K反應(yīng)的反應(yīng)激活能量E2-9 758.3K反應(yīng)的反應(yīng)激活能量E3-8 560K

  根據(jù)CSTR模型的微分方程,,以反應(yīng)器溫度T、反應(yīng)器中物質(zhì)A的濃度CA,、反應(yīng)器中物質(zhì)B的濃度CB三者為狀態(tài)變量,,以冷卻劑Tk為控制變量,建立關(guān)于微分方程的M文件,。

2CSTR過程仿真控制研究

  2.1控制算法

  本實驗采用基于四階五級RungeKutta的PID控制算法,。四階五級RungeKutta算法是一種求解微分方程近似解的數(shù)值方法,實際上是間接使用泰勒級數(shù)法的一種計算方法,。該算法精度高,,能對誤差進行抑制。在區(qū)間[k,k+d]上用y(k)的值來估算或預(yù)測y(k+d)的值,得到預(yù)測值(k+d),,將此預(yù)測值作為反饋信號與期望設(shè)定值進行比較得出偏差,,作為PID控制的輸入,依照PID控制律來設(shè)定控制器的輸出,,完成對被控對象的控制,。

  MATLAB中的ode函數(shù)專門用于求解微分方程,,而ode45表示采用四階五級Runge-Kutta算法,它用四階方法提供候選解,,五階方法控制誤差,,是一種自適應(yīng)步長(變步長)的常微分方程數(shù)值解法,本實驗M文件中就采用ode45求解微分方程,。

  首先確定仿真的采樣時間,、起止時間以及每一步模型仿真的時間區(qū)間,并為龍格庫塔算法設(shè)定初始值,。

  然后初始化PID控制器,,并設(shè)定PID參數(shù)和設(shè)定值。經(jīng)過PID參數(shù)的調(diào)整,,得到Kc=0.03;Ti=4;Td=0.05,。

  最后運用循環(huán)語句的形式編寫基于四階五級RungeKutta法的PID控制算法。

  2.2添加擾動

  為模擬真實現(xiàn)場控制系統(tǒng)環(huán)境,,這里需要添加3個擾動:物質(zhì)A進料流量(QIn)擾動,,反應(yīng)器入口溫度擾動(To),物質(zhì)A進料濃度擾動(Ca0),。

  2.3控制結(jié)果

  將初始值設(shè)為y0=[0;1;80.7],,在控制系統(tǒng)的作用下最終達到穩(wěn)定,如圖2所示,。

  

002.jpg

  上排從左至右分別表示反應(yīng)器物質(zhì)A濃度(被控變量),,反應(yīng)器物質(zhì)B的濃度和反應(yīng)器溫度,即3個狀態(tài)變量,。下排從左至右分別表示冷卻劑的溫度(操縱變量)和控制誤差(即控制器的輸入),。可發(fā)現(xiàn)由于加了積分作用,,控制系統(tǒng)的余差為0,,并且控制效果較好。

3GUI界面的設(shè)計

  為了能夠?qū)崟r改變控制系統(tǒng)模型的參數(shù),,在程序運行過程中添加擾動,,并使被控對象及狀態(tài)變量的控制結(jié)果動態(tài)顯示,需要添加一個GUI界面來實現(xiàn)這些功能,。

  首先在命令窗口中鍵入guide,,GUIDE實際上是一套MATLAB工具箱[3]。啟動GUIDE后,,會出現(xiàn)GUIDE Quick Start 對話框,,選擇新建一個GUI界面,這里選用GUI with Axes and Menu模板,,點擊OK后進入版面設(shè)計窗口,。利用窗口左側(cè)的工具箱可以選擇需要添加的組件,,用來輸入擾動和采樣時間,同時顯示控制系統(tǒng)變量的數(shù)值和曲線,。完成版面設(shè)計后,,以CSTR_GUI文件名保存,此時設(shè)計內(nèi)容會保存在兩個文件中,,一個是FIG文件,,一個是M文件。GUI界面設(shè)計如圖3所示,。

  

003.jpg

  然后打開M文件CSTR_GUI.M,,對GUI進行編程。設(shè)置并啟動0.2 s定時器,,

  另外,,需要編寫定時器中斷響應(yīng)函數(shù)TimerCallback,里面包含對界面擾動參數(shù)和采樣時間的讀取,,同時實現(xiàn)對GUI人機界面中變量值的更新,。

4CSTR模型控制結(jié)果

  設(shè)定初始值:反應(yīng)器中物質(zhì)A的濃度CA=2.14 mol/L,反應(yīng)器中B的濃度CB=1.05 mol/L,,反應(yīng)器溫度T=80.7 ℃,即y0=[2.14;1.05;80.7],。

  在無擾動的情況下,,控制結(jié)果如圖4。

  

004.jpg

  此時PID參數(shù)為Kc=0.03,,Ti=4 s,,Td=0.05 s,從反應(yīng)器中物料A濃度曲線來看,,控制作用響應(yīng)速度快,,超調(diào)小,且沒有穩(wěn)態(tài)誤差,,控制效果較好,。由于CSTR模型控制系統(tǒng)是完全用MATLAB進行仿真的,曲線平穩(wěn)之后沒有出現(xiàn)任何波動,,這與實際現(xiàn)場控制狀況不太相同,。

  在控制系統(tǒng)達到穩(wěn)態(tài)之后,可以在GUI界面上對某一參加數(shù)上一擾動(例如增加5%的物質(zhì)A進料流量擾動),,觀察控制系統(tǒng)的調(diào)節(jié)能力,,如圖5所示。

  

005.jpg

006.jpg

  從圖5可以看出在加入進料流量擾動后,,反應(yīng)器中A濃度曲線出現(xiàn)一定程度的波動,,這一波動的大小受擾動值大小的影響,,但物質(zhì)A的濃度很快又恢復(fù)到設(shè)定值,說明控制系統(tǒng)有較強的調(diào)節(jié)能力,。另外還能發(fā)現(xiàn)當(dāng)進料流量增加5%后,,反應(yīng)器中物質(zhì)B的濃度在重新達到穩(wěn)態(tài)后并沒有回到原值(從1.046 8 mol/L增加到1.047 8 mol/L),同時反應(yīng)器的溫度也有所增加,,因此在通過改變進料流量改變物質(zhì)B濃度的時候,,需要注意反應(yīng)器的溫度,要避免觸碰到反應(yīng)器溫度的上下限,。

5結(jié)論

  本文基于MATLAB建立CSTR對象模型,,依據(jù)現(xiàn)實的生產(chǎn)環(huán)境以及各種干擾因素,通過整定PID參數(shù)完成對被控變量的控制,,取得良好的控制效果,。同時,為了達到實時修改模型參數(shù),、動態(tài)顯示控制曲線和變量數(shù)值的目的,,引入了GUI人機界面,使得用戶可以方便,、實時地對CSTR控制系統(tǒng)進行監(jiān)控,。此控制系統(tǒng)用于工業(yè)現(xiàn)場,對提升工作效率具有一定的實際意義,。

參考文獻

 ?。?] 陳申,蔣靜萍,,袁慧根.CSTR的非線性自適應(yīng)控制[J].信息與科學(xué),,1992,21(2):136144.

 ?。?] 劉松,,李東海,薛亞麗,,等.連續(xù)攪拌反應(yīng)釜系統(tǒng)的非線性魯棒控制[J].化工學(xué)報,,2008(2):3437.

  [3]劉文定.MATLAB/Simulink與過程控制系統(tǒng)[M].北京:機械工業(yè)出版社,,2011.


此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。