place
Pole assignment.
Syntax
K = place(A, B, P)
Inputs
- A
- The state matrix (n x n), where n is the number of states.
- B
- The input matrix (n x p), where p is the number of inputs.
- P
- The vector of the desired pole locations, with length = n.
Outputs
- K
- The feedback gain matrix.
Example
A=[0 1 0; 980 0 -2.8;0 0 -100];
B=[0;0;100];
C=[1 0 0];
t = 0:0.01:2; %Time Vector
u = zeros(size(t)); %Input vector
x0 = [0.01 0 0]; %Initial Condition
%-----Closed loop Poles location
p1 = -11 + 10i;
p2 = -10 - 11i;
p3 = -51;
K = place(A,B,[p1 p2 p3])
sys_cl = ss(A-B*K,B,C,0);
lsim(sys_cl,u,t,x0); % dynamic system response with arbitrary inputs
xlabel('Time (sec)');
ylabel('Ball Position (m)');
grid;
K = [Matrix] 1 x 3
-288.75357 -7.93214 -0.29000
Comments
Based on the SLICOT library function sb01bd.