羅雄麟 左瑞香 許 鋒
(中國石油大學(xué)自動化研究所,北京 102249)
化工工業(yè)生產(chǎn)的復(fù)雜性要求工程師對化工過程進(jìn)行實(shí)時(shí)監(jiān)控。通常在生產(chǎn)過程還未達(dá)到穩(wěn)態(tài)就又有了新的輸入變化,導(dǎo)致輸入變量的持續(xù)動態(tài)變化,將這種輸入變量不斷切換變化的控制方式稱為化工切換控制。對于化工過程切換控制的仿真稱之為化工切換控制仿真。不同于系統(tǒng)達(dá)到穩(wěn)態(tài)后才可以改變輸入變量或子系統(tǒng)的傳統(tǒng)切換控制,化工切換控制的切換點(diǎn)為非穩(wěn)態(tài)點(diǎn),切換點(diǎn)左導(dǎo)數(shù)不為0(只有切換點(diǎn)為穩(wěn)態(tài)點(diǎn)時(shí),切換點(diǎn)左導(dǎo)數(shù)才為0)。例如文獻(xiàn)[1~3]中無論是升溫過程的多??刂啤⒋髸r(shí)滯化工過程的控制方案切換控制還是冷凝器的工況切換控制,在發(fā)生切換時(shí)系統(tǒng)均未達(dá)到穩(wěn)態(tài)。
通過對實(shí)際化工切換控制的研究發(fā)現(xiàn),由于控制系統(tǒng)的非線性及響應(yīng)延遲等特性,使得系統(tǒng)控制量發(fā)生變化時(shí)系統(tǒng)的響應(yīng)輸出并未立即發(fā)生變化,而是有一段延遲,使得響應(yīng)曲線在切換點(diǎn)處連續(xù)、平滑。因此,響應(yīng)曲線上切換點(diǎn)處不但要求函數(shù)連續(xù),而且各階導(dǎo)數(shù)也應(yīng)連續(xù)。而在現(xiàn)有的切換控制仿真中,無論是優(yōu)化計(jì)算最優(yōu)切換時(shí)間點(diǎn)[4~7]還是控制方法的應(yīng)用仿真[8,9],都只考慮了切換前后狀態(tài)相同——函數(shù)連續(xù)性,忽略了切換點(diǎn)的導(dǎo)數(shù)連續(xù)性,一般誤認(rèn)為是左導(dǎo)數(shù)為0,即初始斜率為0,導(dǎo)致錯(cuò)誤的研究結(jié)果。
筆者提出一種新的化工切換控制仿真算法,在切換點(diǎn)處不僅考慮子系統(tǒng)的函數(shù)連續(xù)性,還考慮了導(dǎo)數(shù)的連續(xù)性,將前一子系統(tǒng)的末端狀態(tài)和末端斜率作為下一子系統(tǒng)的初始狀態(tài)和初始斜率,保證切換點(diǎn)處的連續(xù)性。通過實(shí)例仿真發(fā)現(xiàn),在引入導(dǎo)數(shù)連續(xù)性的化工切換控制仿真算法后切換控制曲線在切換點(diǎn)處緩和、平滑,提高了化工切換控制仿真結(jié)果的精確度和曲線的逼真性。
在化工過程中由于生產(chǎn)或工藝的要求在修改輸入變量值時(shí)系統(tǒng)通常還未達(dá)到穩(wěn)態(tài)。將這種未達(dá)到穩(wěn)態(tài)就先行切換的方式稱之為動態(tài)切換,反之,將處于穩(wěn)態(tài)情況下的切換稱之為穩(wěn)態(tài)切換。在圖1所示的切換方式中,A點(diǎn)為穩(wěn)態(tài)點(diǎn),B、C為非穩(wěn)態(tài)點(diǎn)。
圖1 化工過程切換分析
定義1 化工切換控制中,在切換點(diǎn)t處,要求系統(tǒng)狀態(tài)滿足x(t+)=x(t-)=x(t),即系統(tǒng)狀態(tài)在t處的左極限等于右極限,這里將其定義為切換點(diǎn)的函數(shù)連續(xù)性。
設(shè)化工切換控制系統(tǒng)為:
(1)
其中,子系統(tǒng)微分方程fj=Ajx(t)+Bju(t),j=1,2,…,N。其中N為子系統(tǒng)個(gè)數(shù);u為常量或變量,u=[u1,u2,…,uN];t=[t0,t1,…,tN]。步長h=(tj-tj-1)/n,n為運(yùn)算步數(shù)。令N=3,切換時(shí)刻分別為t1、t2?;谝陨蟽蓚€(gè)定義分步遞推化工切換控制算法。遞推算法中Mj,i(j=1,2,…,N;i=0,1,2,…,n)表示第j個(gè)子系統(tǒng)中化工切換仿真算法第i步對應(yīng)的變量M的值。
當(dāng)t0≤t≤t1時(shí)。初始時(shí)刻t=t0,初始狀態(tài)x(t0)=x0,執(zhí)行以下化工切換控制遞推算法:
整理以上每個(gè)子系統(tǒng)遞推算法可知,化工切換控制算法在j=1時(shí)與普通仿真算法無異:
(2)
(3)
同理可以得到三階、四階化工切換控制算法。
目前,基于控制量(例如Bang-Bang控制)或基于子系統(tǒng)的切換控制采用傳統(tǒng)的數(shù)值仿真算法,只考慮了定義1[3~6]而忽略了定義2的重要性。為方便分析筆者提出的化工切換控制仿真算法和傳統(tǒng)切換控制仿真算法的區(qū)別,引入二階Runge-Kutta遞推公式[10]:
(4)
圖2 化工切換控制仿真與RK算法仿真
范德波爾方程[4~7](van der Pol equation)為:
初始狀態(tài)x0=[1 1],u在-1和+1之間切換,u={-1,1,-1,…},達(dá)到末端狀態(tài)xT=[0 0]。采用四階化工切換控制仿真算法,步長h=0.1。參照kaya的最優(yōu)切換時(shí)間段計(jì)算方法得,切換次數(shù)N=1時(shí)的最優(yōu)切換駐留時(shí)間向量為[0.68349 2.40806],N=2時(shí)最優(yōu)駐留時(shí)間向量為[0.70949 2.69502 0.53937]。圖3為范德波爾方程在化工切換控制算法和普通RK法下從x0到xT的狀態(tài)圖。
圖3 系統(tǒng)切換控制狀態(tài)
以文獻(xiàn)[11,12]中的3個(gè)子系統(tǒng)切換為例,子系統(tǒng)狀態(tài)方程分別為:
其中,t0=0,tf=3,初始狀態(tài)x0=[4 4]。依據(jù)文獻(xiàn)選取兩組切換控制方式:t1=1,t2=2,u=0.5;t1=0.59395,t2=2.78328,u=0,兩種方法的切換控制狀態(tài)如圖4所示。
由圖3、4可以看出,無論是控制量切換還是子系統(tǒng)切換,基于化工切換算法思想的切換控制仿真得到的系統(tǒng)狀態(tài)曲線在切換點(diǎn)處切換相對平滑;而傳統(tǒng)切換算法下系統(tǒng)曲線在切換點(diǎn)處,切換陡峭,有尖角出現(xiàn),不符合實(shí)際應(yīng)用中切換控制的特性,且兩者的結(jié)果差值均在30%以上。
圖4 基于子系統(tǒng)切換的狀態(tài)
以Henson和Seborg的串級連續(xù)攪拌釜式反應(yīng)器(CSTR)為例進(jìn)行仿真。假設(shè)系統(tǒng)完全混合并且物理參數(shù)是常值,這一過程有一個(gè)混合了反應(yīng)物和溶劑的進(jìn)料流、一個(gè)輸出流和一個(gè)冷卻水流。qc為冷卻水流量,q為進(jìn)料流量,C1、C2為出口濃度,T1、T2為出口溫度。假設(shè)流量在整個(gè)過程中維持恒定。系統(tǒng)如圖5所示。
圖5 串級CSTR系統(tǒng)
反應(yīng)器體積V1=V2=100L,進(jìn)料濃度Cf=1mol/L,進(jìn)料流量q=100L/min,進(jìn)料溫度Tf=350K,冷卻水溫度Tcf=350K,反應(yīng)速率常數(shù)k0=7.2×1010min-1,R為理想氣體常數(shù),E/R=10000K,E為活化能,密度ρ=ρc=1000g/L,UA1=UA2=1.67×106J/min,反應(yīng)熱ΔH=-4.78×104J/mol,U、A為熱交換系數(shù)和面積,比熱cp=cpc=0.239J/(gK)。
狀態(tài)變量x、系統(tǒng)輸出y和操作變量u定義為x=[C1,T1,C2,T2]T,y=T2,u=qc。設(shè)實(shí)際過程的初始狀態(tài)x=[0.085,442,0.005,450]T。
CSTR中的物料平衡方程為:
CSTR中的能量平衡方程為:
選擇兩組控制量u=[180,35]和u=[120,20]分別進(jìn)行切換控制,其切換控制狀態(tài)如圖6所示。
圖6 串級CSTR切換控制狀態(tài)
從圖6中可以看出,在化工切換控制仿真算法下的仿真曲線較平滑,更符合實(shí)際化工生產(chǎn)過程中的切換控制曲線特性。
通過對實(shí)際化工切換控制的研究發(fā)現(xiàn),化工切換控制要求在切換點(diǎn)處必須考慮函數(shù)連續(xù)性和導(dǎo)數(shù)連續(xù)性,因此,依據(jù)化工切換控制的這一特性提出新的化工過程切換控制算法。通過理論和仿真實(shí)例對比發(fā)現(xiàn),該方法使得系統(tǒng)在切換點(diǎn)處過渡平滑,提高了仿真結(jié)果近似實(shí)際控制系統(tǒng)控制結(jié)果的精確性。