陳彥豪 朱志宇
(江蘇科技大學(xué)電子信息學(xué)院 鎮(zhèn)江 212003)
隨著航海運(yùn)輸業(yè)的發(fā)展,船舶數(shù)量增多,船用柴油機(jī)產(chǎn)生的尾氣含有大量的氮氧化物,對(duì)大氣環(huán)境的污染日益加劇。對(duì)此,2016年起國(guó)際海事組織將強(qiáng)制實(shí)施嚴(yán)格TierⅢ標(biāo)準(zhǔn),船舶自身的柴油機(jī)缸內(nèi)燃燒技術(shù)已經(jīng)很難滿足相關(guān)的NOx排放指標(biāo)。選擇性催化還原(SCR)是一種機(jī)外凈化系統(tǒng),具有對(duì)硫不敏感性、高效、經(jīng)濟(jì)等優(yōu)點(diǎn),成為了減排的有效措施之一。
SCR系統(tǒng)的工作原理是當(dāng)排氣溫度達(dá)到一定時(shí),尿素泵提取32.5%的尿素水溶液,經(jīng)過(guò)噴嘴霧化作用后噴入管路,與排氣混合。尿素受熱分解出氨氣,吸附在催化器上與尾氣中的NOx反應(yīng),變成氮?dú)?,從而減少NOx的濃度。對(duì)于尿素噴射的控制,現(xiàn)今大多采用開環(huán)脈譜圖,通過(guò)對(duì)各種工況下NOx濃度的標(biāo)定,制定脈譜圖。這種方式控制簡(jiǎn)單,缺點(diǎn)在于脈譜圖標(biāo)定工作量大,精確控制需要考慮大量復(fù)雜的工況,催化劑老化后控制效果不佳。此外也有閉環(huán)PID控制,將排氣NOx濃度設(shè)定值與實(shí)際模型的輸出比較,誤差作為PID的輸入,調(diào)節(jié)尿素噴射量,但PID參數(shù)整定大多靠傳統(tǒng)經(jīng)驗(yàn),精確控制又成為一大難題。
因此,本文從催化還原反應(yīng)的動(dòng)態(tài)過(guò)程著手,建立催化器模型,計(jì)算尿素噴射量。在傳統(tǒng)PID控制的基礎(chǔ)上,設(shè)計(jì)基于粒子群優(yōu)化的模糊PID控制器,通過(guò)粒子群優(yōu)化模糊參數(shù),減小對(duì)專家經(jīng)驗(yàn)的依賴,進(jìn)而實(shí)現(xiàn)PID的自整定。通過(guò)Matlab仿真平臺(tái)對(duì)比結(jié)果,粒子群優(yōu)化后的控制器降低了超調(diào)量,縮短了調(diào)節(jié)時(shí)間,使系統(tǒng)的平穩(wěn)性得到了改善。
基于能量與質(zhì)量守恒定律[1],本文中推導(dǎo)出氣態(tài)NOx、氣態(tài)NH3、吸附態(tài)NH3以及溫度T的模型控制表達(dá)式,分別如式(1)~(4)。
其中:c NO x為NOx濃度(mol/m3);c N H3為NH3濃度(mol/m3);θN H3為NH3覆蓋度;n N O x,in為NOx流入摩爾流量(mol/s);T為平均溫度(K);m EG為排氣質(zhì)量流量(kg/s);n N H3,in為NH3流入摩爾流量(mol/s);Tin為入口排氣溫度(K);T amb為環(huán)境溫度(K);a1~a8參數(shù)定義如式(5)~(12)。
SCR催化器模型的參數(shù)可以通過(guò)查找相關(guān)資料獲得[2~4],相關(guān)參數(shù)如表1。
表1 SCR催化器模型參數(shù)
由式(1)~(4)以及相關(guān)參數(shù)在Simulink中建立相應(yīng)的氮氧化物、氨氣、儲(chǔ)氨、溫度模型,按照狀態(tài)量之間的關(guān)系進(jìn)行邏輯連接。催化器溫度影響反應(yīng)速率、反應(yīng)方式,將其反饋到其他三個(gè)模型,作為它們的輸入。氧化還原反應(yīng)主要是吸附在催化器上的氨氣進(jìn)行反應(yīng),儲(chǔ)氨模型的輸入為氮氧化物和氨氣模型的輸出,將儲(chǔ)氨反饋回輸入模型。四個(gè)模型共同組成SCR催化器模型,如圖1所示。
圖1 SCR催化器模型
首先,從氮氧化物傳感器讀取廢氣中NOx含量,根據(jù)NOx與NH3化學(xué)反應(yīng)系數(shù)比計(jì)算出還原NOx所需要的NH3理論值,最后依據(jù)尿素溶液的濃度和NH3之間的數(shù)量關(guān)系得到系統(tǒng)所需要的尿素噴射量[5]。
排氣中氮氧化物物質(zhì)的量是決定尿素噴射量的關(guān)鍵,也是控制器所要控制的量,使排放滿足指標(biāo)[6]。傳感器得到的氮氧化物數(shù)量值為濃度,而SCR系統(tǒng)模型是以質(zhì)量流量為計(jì)算單位,因此需要進(jìn)行濃度與質(zhì)量流量之間的單位換算,具體的換算公式如式(13)所示:
其中,m NO x為NOx質(zhì)量流量(mg/s);m EG為廢氣質(zhì)量流量(kg/h);M NO x為NOx摩爾質(zhì)量,其值為46(g/mol);M EG為廢氣摩爾質(zhì)量,其值為29(g/mol);v NO x,ppm廢氣中的濃度,單位為10-6;277.78為kg/h到mg/s的轉(zhuǎn)換系數(shù)。
NH3和NOx在催化器中進(jìn)行的選擇性還原反應(yīng),當(dāng)反應(yīng)溫度達(dá)到時(shí),主要是標(biāo)準(zhǔn)反應(yīng)和快速反應(yīng),由此可以知道,NH3和NOx的摩爾消耗比例1∶1。也就是說(shuō)減少1mol的氮氧化物理論上需要1mol的氨氣[7],由此可知所需NH3的理論值如式(14)所示:
其中,m N H3為NH3質(zhì)量流量(mg/s);M NH3為NH3摩爾質(zhì)量,其值為17(g/mol);f st為NH3與NOx的化學(xué)計(jì)量比。
1mol的尿素可以分解為2mol的NH3,而尿素溶液的質(zhì)量濃度為32.5%[8]。因此,尿素的理論需求量為
其中,m Adblue為理論尿素需求質(zhì)量流量(mg/s);M Adb lue為尿素摩爾質(zhì)量,其值為60(g/mol)。
經(jīng)典PID的公式如下:
式中,k p為比例系數(shù);k i為積分系數(shù);k d為微分系數(shù);u為被控對(duì)象的輸入。在工程應(yīng)用上PID的參數(shù)一般是靠經(jīng)驗(yàn)判斷,只是為了滿足工程基本需求,很難到達(dá)最佳的控制效果[9~10]。模糊PID可以根據(jù)輸出與目標(biāo)值的偏差,制定相應(yīng)的規(guī)則,使得三個(gè)參數(shù)可以自尋優(yōu),能有效改善系統(tǒng)的性能指標(biāo)。
本文提出的模糊控制器是將系統(tǒng)輸出氮氧化物濃度反饋值與設(shè)定值的偏差e以及偏差的變化率ec進(jìn)行處理,經(jīng)過(guò)模糊判決,得到相應(yīng)PID參數(shù)的三個(gè)增量Δk p、Δk i、Δk d,參數(shù)優(yōu)化后的表達(dá)式如下所示:
式中:k p0、k i0、k d0為k p、k i、k d的初始值。
在Matlab中建立模糊控制器,本文所采用的控制器具有2輸入3輸出,是一個(gè)二維控制器??刂破鞯念愋蜑镸amdani,去模糊方法為Centroid。隸屬度函數(shù)是模糊控制的應(yīng)用基礎(chǔ),根據(jù)SCR系統(tǒng)的特性,選擇Z型、三角型和S型三種函數(shù)作為輸入和輸出變量的隸屬度函數(shù)。
本文控制器的輸入/輸出變量模糊子集均采用7個(gè)變量值{負(fù)大(NB)、負(fù)中(NM)、負(fù)?。∟S)、零(ZO)、正?。≒S)、正中(PM)、正大(PB)}表示。e、ec論域的取值范圍為[-3,3],k p0、k io、k d o的論域分別為[-0.3,0.3],[-0.06,0.06],[-3,3]。模糊控制器規(guī)則按照下列原則制定:首先保證SCR系統(tǒng)運(yùn)行的穩(wěn)定性,NOx的排放濃度在限值以下,減少尾氣排放的超調(diào),降低污染,在此前提下縮短進(jìn)入穩(wěn)定狀態(tài)的時(shí)間,提升系統(tǒng)效率,結(jié)合專家經(jīng)驗(yàn),由輸入輸出變量關(guān)系給出模糊控制規(guī)則,如表2所示。
表2 模糊控制規(guī)則表
模糊PID控制器輸入輸出影響著系統(tǒng)的性能指標(biāo)[11],在控制器輸入加上量化因子k e、k e c,輸出加上一個(gè)比例因子k u,通過(guò)k e、k ec、k u參數(shù)的改變,對(duì)系統(tǒng)的響應(yīng)輸出產(chǎn)生影響。k e越大,能夠縮短系統(tǒng)調(diào)節(jié)時(shí)間,但k e過(guò)大時(shí),系統(tǒng)會(huì)不穩(wěn)定,出現(xiàn)超調(diào)振蕩,k e太小則系統(tǒng)響應(yīng)慢,調(diào)節(jié)時(shí)間增長(zhǎng)。k ec能改變系統(tǒng)的靈敏性,k ec大時(shí)系統(tǒng)較遲鈍,k ec小時(shí)系統(tǒng)靈敏,過(guò)小時(shí)會(huì)出現(xiàn)振蕩現(xiàn)象。比例因子k u影響著PID參數(shù)的增量,對(duì)系統(tǒng)響應(yīng)的影響最大,調(diào)節(jié)k u能明顯改善系統(tǒng)的響應(yīng)時(shí)間,k u較大時(shí),收斂速度快,過(guò)大會(huì)使系統(tǒng)不穩(wěn)定,出現(xiàn)振蕩,k u過(guò)小則會(huì)使調(diào)節(jié)時(shí)間過(guò)長(zhǎng)。粒子群算法可以解決k e、k ec、k u參數(shù)的自尋優(yōu),改善模糊控制器參數(shù)固定不變、主觀設(shè)定規(guī)則等缺點(diǎn),提高了系統(tǒng)的魯棒性。
粒子群算法具有代碼短,收斂快,易于實(shí)現(xiàn)等優(yōu)點(diǎn),其模仿鳥類覓食行為,通過(guò)群體成員的緊密配合和信息共享尋到最優(yōu)解[12~13]。每個(gè)需要被優(yōu)化的問(wèn)題都是解空間中的一個(gè)粒子,所有的粒子都有一個(gè)共同的適應(yīng)度函數(shù),通過(guò)比較各個(gè)粒子適應(yīng)度函數(shù)的值,得到個(gè)體極值與全局極值,每個(gè)粒子由速度決定它們運(yùn)行的方向和距離,通過(guò)迭代得出最優(yōu)解。
標(biāo)準(zhǔn)粒子群公式:
式中,ω稱為慣性權(quán)值,決定粒子與之前速度大小的跟蹤關(guān)系;v k是粒子的當(dāng)前速度向量;x k是當(dāng)前粒子的位置;pb est k表示粒子本身找到的最優(yōu)解的位置;gb est k表示整個(gè)種群目前找到最優(yōu)解的位置;c1和c2稱為學(xué)習(xí)因子;r1、r2為加速因子;c1r1,c2r2表示極值對(duì)粒子的吸引力大小。
積分性能指標(biāo)(ITAE)是根據(jù)時(shí)間與誤差絕對(duì)值的積分作為判定標(biāo)準(zhǔn)[14],能夠縮短系統(tǒng)的調(diào)節(jié)時(shí)間,減小超調(diào)量,保證穩(wěn)態(tài)誤差。作為評(píng)判系統(tǒng)動(dòng)態(tài)、靜態(tài)性能指標(biāo)的函數(shù),ITAE的實(shí)用性在工程上有廣泛應(yīng)用。具體公式如式(22)所示:
1)系統(tǒng)種群初始化,設(shè)定維度,種群規(guī)模、初始位置、初始速度、迭代次數(shù)、最小適應(yīng)值以及學(xué)習(xí)因子、加速因子、慣性權(quán)重因子。確定被優(yōu)化參數(shù)k e、k ec、k u的取值范圍;
2)根據(jù)式(22)計(jì)算每個(gè)粒子的適應(yīng)度;
3)比較每個(gè)粒子的適應(yīng)值,與pb est k作比較,如果小于pb est k,將其作為當(dāng)前最優(yōu)位置,更新pbest k;
4)將每個(gè)粒子的適應(yīng)值與全局最優(yōu)位置gbest k比較,如果小于gbest k,則代替gb est k,成為新的全局最優(yōu)位置;
5)根據(jù)式(20)和式(21)更新粒子的速度和位置;
6)如果迭代完成或者適應(yīng)值達(dá)到設(shè)定要求,則流程結(jié)束。要是沒(méi)有滿足結(jié)束條件,則返回第2步,繼續(xù)迭代;
7)將得到的全局最優(yōu)位置gb est k所對(duì)應(yīng)的量化因子k e、k ec以及比例因子k u帶回到模糊控制器中,對(duì)系統(tǒng)進(jìn)行控制,得到系統(tǒng)輸出響應(yīng),返回第2步繼續(xù)進(jìn)行;
算法流程如圖2所示[15]。
圖2 粒子群算法流程圖
SCR控制系統(tǒng),主要是根據(jù)排氣中NOx的濃度,排氣流量,溫度等參數(shù),計(jì)算出相應(yīng)的尿素理論需求量?;诹W尤簝?yōu)化模糊PID控制器能夠根據(jù)設(shè)定值濃度目標(biāo)值與排氣濃度反饋值之間的誤差以及誤差的微分,進(jìn)行模糊判決,得到PID參數(shù)的增益。通過(guò)粒子群對(duì)模糊輸入輸出增益k e、k ec、k u的迭代尋優(yōu),在一定條件下找到符合條件的最優(yōu)解。系統(tǒng)控制原理圖如圖3所示。
圖3 系統(tǒng)控制原理圖
在Matlab的Fuzzy Logic Toolbox中建立模糊控制器,選擇設(shè)定好的輸入輸出隸屬度函數(shù),設(shè)置相應(yīng)的論域。根據(jù)此前的表2制定模糊規(guī)則,將控制器保存在Matlab工作區(qū),并在Simulink中調(diào)用Fuzzy Logic Controller模塊,建立模糊控制系統(tǒng)。
將粒子群算法寫成M文件,取粒子的數(shù)量為40;迭代次數(shù)為100次;慣性權(quán)值ω取0.6;學(xué)習(xí)因子c1、c2取2,粒子的初始速度、位置和加速因子r1、r2由rand函數(shù)產(chǎn)生,在[0,1]中產(chǎn)生;粒子運(yùn)行的最大、最小速度2和-2;設(shè)為k e的取值范圍為[0,300];k ec的取值范圍為[0,300];k u的取值范圍為[0,50]。在程序中調(diào)用Simulink模塊,將k e、k ec、k u代入,計(jì)算每個(gè)粒子的適應(yīng)值,更新每個(gè)粒子的速度和位置,得到最優(yōu)的參數(shù)。如圖4所示。
圖4 粒子群優(yōu)化模糊PID控制系統(tǒng)仿真圖
設(shè)定柴油機(jī)的工況為90kW,轉(zhuǎn)速為1191r/min,得到排氣流量為636kg/h,氮氧化物濃度為907ppm,排氣進(jìn)口溫度為608.15K,所需要達(dá)到的排氣目標(biāo)值為285ppm。分別進(jìn)行經(jīng)典PID、模糊PID和粒子群優(yōu)化模糊PID控制系統(tǒng)仿真,仿真結(jié)果如圖5~7所示。
由圖5、6知,當(dāng)?shù)螖?shù)達(dá)到30次左右時(shí),適應(yīng)值趨于穩(wěn)定,k e、k e c、k u三個(gè)參數(shù)收斂。由圖7可知,在PID控制下,系統(tǒng)超調(diào)量大,雖然可以降低NOx的濃度,但過(guò)量噴射的尿素會(huì)使排氣中NH3濃度上升,造成污染,調(diào)節(jié)時(shí)間長(zhǎng)。采用模糊PID控制時(shí),較PID控制有所改善,減小了超調(diào)量,調(diào)節(jié)時(shí)間依然很長(zhǎng),控制效果還不是很理想。而采用粒子群優(yōu)化模糊PID控制基本上消除了超調(diào)量,并且大大提升了調(diào)節(jié)時(shí)間和上升時(shí)間,相比于前兩種控制器,系統(tǒng)性能得到了顯著改善。
圖5 粒子群算法適應(yīng)值
圖6 各參數(shù)曲線
圖7 PID、模糊PID、粒子群優(yōu)化模糊PID仿真曲線
對(duì)SCR系統(tǒng)進(jìn)行了催化器建模分析,尿素噴射計(jì)算并設(shè)計(jì)控制器。針對(duì)傳統(tǒng)PID控制存在的問(wèn)題,提出來(lái)模糊控制,解決PID參數(shù)自整定。在此基礎(chǔ)上,提出基于粒子群優(yōu)化的模糊控制器,解決了模糊規(guī)則,隸屬度函數(shù)固定不變所帶來(lái)的問(wèn)題。用過(guò)仿真比較可以看出本文所提出的粒子群優(yōu)化模糊PID控制器在SCR系統(tǒng)的超調(diào)量,上升時(shí)間,調(diào)節(jié)時(shí)間等方面均有著明顯的優(yōu)勢(shì),對(duì)系統(tǒng)的控制效果更為優(yōu)越。