비선형 회분식 공정의 모델 예측 제어

이광순 김원철 진인식 이재형*

서강대학교 공과대학 화학공학과

*Auburn대학교 공과대학 화학공학과

Model Predictive Control for Nonlear Batch Process

Kwang Soon Lee  Won Cheol Kim  In Shik Jin  Jay H. Lee*

Department of Chem. Eng. , Sogang Univ.

*Department of Chem. Eng. , Auburn Univ. , U.S.A.

서론

회분식 공정이란 한정된 시간동안 운전이 지속되며, 일회의 운전이 후 같은 형태의 운전이 반복되는 공정으로서 그 중요성이 점차 강조되고 있는 공정이다.

이 회분식 공정을 위한 제어 기법에는 여러 가지가 있으나, 그 중 한가지 제어 기법으로는 회분식 공정의 반복 운전 특성을 이용한 모델 기반 반복 학습 제어 기법을 들 수가 있다. 모델 기반 반복 학습 제어란 기준 입출력 궤적을 주변으로 하는 편차 변수(deviation variable)에 대한 공정 모델로부터 기준 입력 궤적(nominal input trajectory)을 찾아내는 것이다.

그러나 모델 기반 반복 학습 제어는 일종의 열린 루프 제어로서 공정의 외란과 측정 오차에 대한 약점과 입력 변수의 수렴성이 보장되지 않을 수도 있는 단점을 갖는다.[1] 따라서 되먹임 제어기를 사용하여 보정하는 것이 필요하다.

상태 추정 모델 예측 제어기가 갖는 장점으로는 MIMO(Multi-Input Multi-Output) 공정에의 적용이 용이한 점, 입출력변수의 제약조건을 다룰 수 있다는 점이 있으나[2], 이를 회분식 공정에 적용할 경우 매 회분 조업마다 같은 결과밖에 얻을 수 없는 단점이 있다.

따라서 본 연구에서는 비선형 공정의 국부 선형 모델을 구하여 모델 기반 학습 예측 제어기를 설계하였으며, 위와 같은 단점을  보완하기 위해서 주어진 국부 선형 모델을 이용한 상태 추정 모델 예측 제어기를 이용하여 되먹임 제어계를 구성하여 공정의 외란과 측정오차가 주어지는 경우에도 우수한 제어 성능을 구현하고자 했다.

입력 신호에 대한 억제항을 도입하여 입력 변수의 수렴성을 제고시켰으며, 모델 예측 제어기의 적용으로 외란과 측정 오차의 영향을 최소화시키고자 하였다. 또한 제안한 제어기의 성능 향상을 위해 상태 추정기를 제안하였다. 제안한 제어기의 적용가능성 여부와 성능을 모사를 통해 검증하였다.

이론

1. 이차 성능 지수에 의한 모델 기반 학습 제어(Q-ILC)

N회의 샘플링으로 구성되는 회분 조업 시간 [0, 1, ... , N-1]에서 정의되는 MIMO 회분식 공정의 k번째 회분 조업의 입출력 관계식은 다음과 같이 표시할 수 있다. [eqn: rm {barY}_k]는 외란이 없는 경우의 출력이다.

[eqn: rm{Y_k ``=`` {barY}_k `+` W_k ``=`` NU ``(U_k , I_0,k )`+`W_k}]

()

[eqn: rm{Y^T ``=``bmatrix{y^T (0) &y^T (1)&cdots& y^T (N-1)}}```````~~` # rm{U^T ``=``bmatrix{u^T (0) &u^T (1)&cdots& u^T (N-1)}} ``````~~``# rm{{barY}^T ``=``bmatrix{{bary}^T (0) &{bary}^T (1)&cdots& {bary}^T (N-1)}}# rm{W^T ``=``bmatrix{w^T (0) &w^T (1)&cdots& w^T (N-1)}} ~~`]

()

[eqn: rm{G_k}]를 [eqn: NU]의 [eqn: rm{U_k}]주변에서의 선형 근사라고 가정하고 [eqn: rm{Y_d}]를 설정치라고 하면 다음과 같은 식의 표현이 가능하다.

[eqn: rm{{{barY}_k+1} ``=`` NU ``(U_k+1 , I_0,k+1 )``APPROX``NU ``(U_k , I_0,k )}} + rm{LEFT [{d{NU}}over {```dU_k ^T}}RIGHT ] `(U_k+1 - U_k )}]

[eqn: ~~~~~~~~~~~rm{``=``{barY}_k +`G_k`(U_k+1 - U_k )}]

(3)

여기서 다음과 같은 변수를 도입하면,

[eqn: rm {barE}_k ``=``Y_d - {barY}_k ~````# rm E_k ``=``Y_d - Y_k ~~ ````# rm Delta_b U_k+1 ``=``U_k+1 -U_k`]

(4)

다음의 표현이 가능하다. 여기서[eqn: rm V_k]는 공정 잡음을 나타낸다.

[eqn: rm {barE}_k+1 ``=`` {barE}_k - G_k Delta_b U_k+1 +V_k# rm E_k ``=`` {barE}_k + W_k ~~~~~~~~~~~~]

(5)

식 (6)으로  주어지는 목적함수에 근거하여 k번째 회분 조업후 k+1번째 회분 조업시의 오차를 추정, 이를 최소화시키는 [eqn: rm Delta_b U_k+1] 을 계산한다.[1,4]

[eqn: rm{min} atop {Delta_b U_k+1 } LEFT [J_k+1 = 1over2 LEFT {{{hatE}^T}_k+1|k Q_b,y {{hatE}}_k+1|k + Delta_b {U^T}_k+1 Q_b,u Delta_b U_k+1 RIGHT } RIGHT ]]

(6)

제한 조건이 없는 경우 k+1번째 입력신호는 다음과 같다.

[eqn: rm Delta_b U_k+1 ^Q ``=`` U_k+1 ^Q -U_k ``=``H_k {hatE}_k|k ~~ # rm H_k ``=``(G_k ^T Q_b,y G_k +Q_b,u )^-1 G_k ^T Q_b,y]

(7)

2. 회분식 공정을 위한 모델 예측 제어(Batch MPC)

주어진 공정 모델로부터 입출력 관계식을 구하면 다음과 같이 주어진다.[4]

[eqn: rm {hatE}_{k vert k} &=& {hatE}_{k vert k} ``+`` K``(E_k - {hatE}_{k vert k-1})# rm {hatE}_{k+1 vert k} &=& {hatE}_{k vert k} - G_k Delta_b U_k+1]

(8)

식 (8)으로 주어진 입출력 관계식으로부터 아래와 같은 관계식을 구성할 수 있다.

[eqn: rm ~~~{hat E}_{k+1 vert k+1} ~~~~~{hat E}_{k+1 vert k} ~~~~~~~~~~~~~K_k ~~~~~~~~~~~ E_k+1 -{hatE}_{k+1 vert k}]

[eqn: rm MATRIX {{1} #{} # {t}#{t+1} #{} #{t+p} #vdots} rm BMATRIX {{cdotscdotscdotscdotscdotscdots} #{{{hatE}^+}_k+1 (t)} # {cdotscdotscdotscdotscdotscdots }#{cdotscdotscdotscdotscdotscdots} #{{{hatepsilon}^+}_k+1 (t)} #{cdotscdotscdotscdotscdotscdots} #vdots} = rm BMATRIX {{cdotscdotscdotscdotscdotscdots} #{{{hatE}^-}_k+1 (t)} # {cdotscdotscdotscdotscdotscdots }#{cdotscdotscdotscdotscdotscdots} #{{{hatepsilon}^-}_k+1 (t)} #{cdotscdotscdotscdotscdotscdots} #vdots} + BMATRIX{ {}#{}# {cdotscdotscdotscdotscdotscdotscdots}# {cdotscdotscdotscdotscdotscdotscdots}# {KAPPA _1 (t) ~ KAPPA _2 (t) }# {cdotscdotscdotscdotscdotscdotscdots}#{vdots} } rm BMATRIX {{cdotscdotscdotscdotscdotscdotscdotscdotscdotscdotscdotscdots} #{{E_k+1 (t) -{hatE}^-}_k+1 (t)} # {cdotscdotscdotscdotscdotscdotscdotscdotscdotscdotscdotscdots }#{cdotscdotscdotscdotscdotscdotscdotscdotscdotscdotscdotscdots} #{{hatepsilon}_k+1 (t) -{{hatepsilon}^-} _k+1 (t)} #{cdotscdotscdotscdotscdotscdotscdotscdotscdotscdotscdotscdots} #vdots}#]

[eqn: rm {hat E}_{k+1 vert k} ~~~~~~~~{hat E}_{k vert k} ~~~~~~~~~~~~ G_k ~~~~~~~~DELTA_b bold u_{bold k+1}~~~~~~~~]

[eqn: rm MATRIX {{1} #{} # {t}#{t+1} #{} #{t+p} #vdots} rm BMATRIX {{cdotscdotscdotscdotscdotscdots} #{{{hatE}^-}_k+1 (t)} # {cdotscdotscdotscdotscdotscdots }#{cdotscdotscdotscdotscdotscdots} #{{{hatepsilon}^-}_k+1 (t)} #{cdotscdotscdotscdotscdotscdots} #vdots} = rm BMATRIX {{cdotscdotscdotscdotscdots} #{{{hatE}^+}_k (t)} # {cdotscdotscdotscdotscdots }#{cdotscdotscdotscdotscdots} #{{{hatepsilon}^+}_k (t)} #{cdotscdotscdotscdotscdots} #vdots} - BMATRIX{ {cdotscdotscdotscdotscdotscdotscdots}#{G_1,k (t) ~~~~ 0~~~}# {cdotscdotscdotscdotscdotscdotscdots}# {cdotscdotscdotscdotscdotscdotscdots}# {G_2,k (t) ~ G_3,k (t) }# {cdotscdotscdotscdotscdotscdotscdots}#{vdots} } BMATRIX {{cdotscdotscdotscdotscdotscdots} #{DELTA_b U_k+1 (t)} # {cdotscdotscdotscdotscdotscdots }# {cdotscdotscdotscdotscdotscdots} # {{DELTA_b u_k+1 (t})} #{cdotscdotscdotscdotscdotscdots} #vdots} rm MATRIX {{0} #{} # {t-1}#{t} #{} #{t+m}-1 #vdots}]

[eqn: rm{{hat epsilon}^p}_k+1 &=& {{hat epsilon}^-}_k+1 + KAPPA_1 (E_k+1 -{{hat E}^+}_k+1 )+KAPPA_2 `I(e_k+1 (t) -{{hat e}^-}_k+1 (t)) # rm{{hat E}^-}_k+1 &=&{{hat epsilon}^+}_k -G_2,k`` DELTA_b U_k+1# rm{{hat epsilon}^-}_k+1 &=& {{hat epsilon}^+}_k -G_2,k ``DELTA_b U_k+1 -G_3,k ``DELTA_b u_k+1]

(9)

위의 관계식들을 이용하여 다음과 같이 주어지는 목적함수를 최소화시키는 [eqn: rm DELTA_b u_k+1]를 구할 수 있다.

[eqn: rm{min} atop {Delta_b u_k+1 } LEFT [J_k+1 = 1over2 LEFT {{{hatepsilon}^pT}_k+1 Q {{hatepsilon}^p}_k+1 + Delta_b {u^T}_k+1 R Delta_b u_k+1 RIGHT } RIGHT ]]

(10)

제한조건이 없는 경우의 [eqn: rm DELTA_b u_k+1]는 다음과 같다.

[eqn: rm{epsilon^uc}_k+1 ~=& {{hat epsilon}^+}_k -G_2,k DELTA_b U_k+1+ KAPPA_1 (E_k+1 -{{hat E}^+}_k+1 )#&~+KAPPA_2 `I(e_k+1 (t) -{{hat e}^-}_k+1 (t))## rmDELTA_b u_k+1 ~=&({G^T}_3,k Q G_3,k ``+``R)^-1{G^T}_3,kQ{epsilon^uc}_k+1]

(11)

모사결과 및 토론

1. 지연 시간이 없는 이차 공정

제안한 반복 학습 제어기의 성능을 확인하기 위해서 다음의 예에 대하여 모사를 하였다.

전달 함수가 식 (12)으로 표현되고 공정 출력에 평균이 0이고 분산이 0.01인 백색 잡음이 섞여있는 공정에 대하여 식 (13)을 공정으로 알고 1의 샘플링 간격으로 제안된 제어기를 설계하였다.

[eqn: rm G(s)= &BMATRIX { {1.5 over {20s^2 `+`9s `+`1 } }& {-1.2 over {9s^2 `+`6s `+`1 } }# # { 1.0 over {25s^2 `+`10s `+`1 }}& {0.8 over {6s^2 `+`5s `+`1 } } } ,~~ rm G_m (s)= &BMATRIX { {1.2 over {17s^2 `+`8s `+`1 } }& {-1.0 over {10s^2 `+`7s `+`1 } }# # { 1.2 over {21s^2 `+`10s `+`1 }}& {1.0 over {4s^2 `+`4s `+`1 } } }]

(12) (13)

모사 결과, 제안된 제어기는 주어진 모델 오차와 측정 오차에도 불구하고 뛰어난 추적성능을 나타내고 있으며 공정 입력 쪽의 변화가 심하지 않음을 볼 수 있다. 또한, 모델 예측 제어기와의 결합으로 모델 오차가 있는 경우라도 첫 번째 회분 조업 때의 결과의 추적 성능이 우수함을 알 수 있다.

참고 문헌

1. 이광순, 김원철, 이재형, □선형 회분식 공정을 위한 이차 성능 지수에 의한 모    델 기반 반복 학습제어,□ ICASE, 2권 3호,(1996)

2. Jay H. Lee, "Model Predictive Control: A Tutorial," CRC Industrial           Electronics Handbook (1995)

3. Zheng H. Yu, Wei Li, Jay H. Lee and Mafred Morari, "State Estimation      based Model Predictive Control applied to Shell Control Problem: A case       study," Chemical Engineering Science. Vol. 49, No. 3 pp. 285-301 (1994)

4. Graham C. Goodwin and Kwai Sang Sin, Adaptive Filtering Prediction

and Control,Pretice Hall, N.J, 1984