Main Content

LQG 조절기 설계하기

LQG 설계의 한 예로 다음과 같은 조절 문제를 살펴보겠습니다.

목표는 0 부근에서 플랜트 출력 y를 조절하는 것입니다. 입력 외란 d는 파워 스펙트럼 밀도(PSD)가 10rad/s 아래에 집중된 저주파입니다. LQG 설계를 위해 입력 외란은 다음 그림에 나와 있듯이 차단이 10rad/s인 저역통과 필터를 구동하는 백색 잡음으로 모델링됩니다.

문제를 단순화하기 위해 이 잡음은 분산이 1인 가우스 백색 잡음으로 모델링됩니다.

다음 그림은 성형 필터의 보드 크기를 보여줍니다.

저역통과 필터의 보드 크기

얼마간의 측정 잡음 n이 있습니다. 잡음의 강도는 다음과 같습니다.

E(n2)=0.01

다음과 같은 비용 함수를 사용하여

J(u)=0(10y2+u2)dt

조절 성능과 제어 비용 사이의 상호 절충을 지정합니다. 다음 방정식은 개루프 상태공간 모델을 나타냅니다.

x˙=Ax+Bu+Bd(stateequations)y=Cx+n(measurements)

여기서 (A,B,C)는 100/(s2+s+100)의 상태공간 실현입니다.

다음 명령은 이 문제에 대한 최적의 LQG 조절기 F(s)를 설계합니다.

sys = ss(tf(100,[1 1 100])) % State-space plant model

% Design LQ-optimal gain K
K = lqry(sys,10,1)	 % u = -Kx minimizes J(u)

% Separate control input u and disturbance input d
P = sys(:,[1 1]);
% input [u;d], output y

% Design Kalman state estimator Kest.
Kest = kalman(P,1,0.01)

% Form LQG regulator = LQ gain + Kalman filter.
F = lqgreg(Kest,K)

위 명령은 LQG 조절기 F(s)의 상태공간 모델 F를 반환합니다. lqry, kalman, lqgreg 함수는 이산 플랜트에 적용할 경우 이산시간 LQG 설계를 수행합니다.

설계를 검증하려면 feedback을 사용하여 루프를 닫고, 저역통과 필터를 만들어서 폐루프 시스템에 대해 직렬로 추가하고, impulse 함수를 사용하여 개루프 임펄스 응답과 폐루프 임펄스 응답을 비교하십시오.

% Close loop
clsys = feedback(sys,F,+1)
% Note positive feedback.

% Create the lowpass filter and add it in series with clsys.
s = tf('s');
lpf= 10/(s+10) ;
clsys_fin = lpf*clsys;

% Open- vs. closed-loop impulse responses
impulse(sys,'r--',clsys_fin,'b-')

위 명령은 이 예제의 개루프 임펄스 응답과 폐루프 임펄스 응답을 비교하는 다음 Figure를 생성합니다.

개루프 임펄스 응답과 폐루프 임펄스 응답의 비교

참고 항목

|

관련 항목