Sie sind auf Seite 1von 5

BER: 4113 Digital Control Lab 6

Digital Control Example: Designing Pitch Controller using State-Space method


In this digital control version of the pitch controller problem, we will use the state-space method to design the digital controller. The, the state-space model for Pitch Controller: Modeling was derived as

The input (elevator deflection angle, delta e) will be 0.2 rad (11 degrees), and the output is the pitch angle (theta). The design requirements are

Overshoot: Less than 10% Rise time: Less than 2 seconds Settling time: Less than 10 seconds Steady-state error: Less than 2%

Discrete state-space
The first thing to do here is to convert the continuous state-space model to discrete statespace. To do this, we will use the MATLAB function c2d. To use c2d, we need to specify three arguments: state-space system, sampling time (Ts), and the 'method'. You should already be familiar with how to construct a system from A, B, C, and D matrices. The sampling time should be smaller than 1/(30*BW), where BW is the closed-loop bandwidth frequency. The method we will use is the zero-order hold. From the closed-loop Bode plot, the bandwidth frequency was determined to be approximately 2 rad/sec (see this yourself) . Thus, to be sure we have a small enough sampling time, we will use the sampling time of 1/100 sec/sample. Now we are ready to use the function c2d.

BER: 4113 Digital Control Lab 6

1. Create a new m-file, enter the following code and run your program:
A = [-0.313 -0.0139 0 56.7 B = [0.232; 0.0203; 0]; C = [0 0 1]; D = [0]; 56.7 -0.426 0]; 0; 0;

pitch = ss(A,B,C,D); Ts=1/100; pitch_d = c2d(pitch,Ts,'zoh')

2. Record the result . 3. From the matrices displayed, write the discrete state space model of the pitch controller.

Controllability and observability


The next step is to check the controllability and the observability of the system. For the system to be completely state controllable, the controllability matrix

must have the rank of n. The rank of the matrix is the number of independent rows (or columns). In the same token, for the system to be completely state observable, the observability matrix

must also have the rank of n. Since our controllability matrix and observability matrix are 3x3, the rank of both matrices must be 3. The MATLAB function rank can give you the rank of each matrices. 4. Create a new m-file, write your own program to prove that the discrete system is completely state controllable and observable.

BER: 4113 Digital Control Lab 6

Control design via pole placement


The schematic of a full-state feedback system is shown below.

where

K=Control matrix x=State matrix (alpha, q, theta) de=-Kx=input R=Reference

In the continuous pitch controller: state-space , the Linear Quadratic Regulator (LQR) method was used to find the control matrix (K). In this digital version, we will use the same LQR method. This method allows you to find the optimal control matrix that results in some balance between system errors and control effort. Please consult your control textbook for details. To use this LQR method, we need to find three parameters: Performance index matrix (R), state-cost matrix (Q), and weighting factor (p). For simplicity, we will choose the performance index matrix equals 1 (R=1), and the state-cost matrix (Q) equals to H' x H. The weighting factor (p) will be chosen by trial and errors. The state-cost matrix (Q) has the following structure
Q = 0 0 0 0 0 0 0 0 1

Now we are ready to find the control matrix (K) and see the response of the system. First, let the weighting factor (p) equal 50. 6. Enter the following commands to a new m-file and run it
t = 0:0.01:10; de = 0.2*ones(size(t)); F = [0.9968 -0.0001 0 G = [0.0024; 0.0002; 0.0001]; 0.05649 0.9957 0.5658 0 0 1];

BER: 4113 Digital Control Lab 6 H = [0 0 1]; J = [0]; p = 50; Q = [0 0 0 0 0 0 0 0 p]; [K] = dlqr(F,G,Q,1) Ts = 1/100; sys_cl = ss(F-G*K,G,H,J,Ts); [Y,T] = lsim(sys_cl,de); stairs(T,Y)

7. Print your plot. Did the response satisfies all of the design requirements? Explain your answer.

Reference input
Unlike other design methods, the full-state feedback system does not compare the output to the reference; instead, it compares all states multiplied by the control matrix (K*x) to the reference (see the schematic shown above). Thus, we should not expect to see the output equals to the input. To obtain the desired output, we need to scale the reference input so that the output equals to the reference. This can be easily done by introducing a feedforwarding scaling factor called Nbar. The basic schematic with the Nbar is shown below.

Unfortunately, we can not use our user-defined function rscale to find Nbar because it is defined for continuous systems. But we can find it by trial and error. 8. Create a new m-file and enter the following code:
t = 0:0.01:10; de = 0.2*ones(size(t)); F = [0.9968 -0.0001 0 G = [0.0024; 0.0002; 0.0001]; H = [0 0 1]; 0.05649 0.9957 0.5658 0 0 1];

BER: 4113 Digital Control Lab 6 J = [0]; p=50; Q = [0 0 0 0 0 0 0 0 p]; [K,S,E] = dlqr(F,G,Q,1) Nbar = 8; Ts = 1/100; sys_cl = ss(F-G*K,G*Nbar,H,J,Ts); [x] = lsim(sys_cl,de); stairs(t,x)

9. Record the response. 10. Change the Nbar to 6.95. Save and rerun m-file 11. Compare the the result with your previous plot. Comment the result ?

REPORT Your report should include result, observation, analysis, comment and conclusion.

Das könnte Ihnen auch gefallen