INDEX

Function: SFB_PROJ


Purpose. Computes a state feedback by projection of the open-loop eigenstructure.

Synopsis.

[k,V,W,pol] = sfb_proj(sys,Tr,Damp[,key[,C_ratio]]);

Description. The closed-loop poles are automatically chosen from the design parameters which are the minimum damping ratio (Damp) and the settling time (Tr). The right eigenvectors corresponding to eigenvalues satisfying the settling time and damping ratio requirements are re-assigned as they are. For other open-loop poles that need to be shifted, assignment of right eigenvectors is made by projection of the open-loop ones.

Input arguments

 sys LTI system (see ss.m). The matrices sys.c and sys.d are ignored.
 Tr Settling time.
 Damp Minimum damping ratio for closed-loop eigenvalues (0 < Damp < 1).
 key Is a string equal to 'p' for orthogonal projection of all eigenvectors, or equal to 'm' for minimum energy assignment (default: key = 'm').
 C_ratio If the controllability degree of some eigenvalue is less than the maximum controllability degree divided by C_ratio, this eigenvalue is not shifted. Default value C_ratio = 100.

Output arguments

 k State feedback.
 V,W,pol Assigned eigenstructure.

See also: fb_prop, sob_proj, sfb_ins


Example. Design of two state feedback gains such that the damping ratio becomes larger than 0.707 and the settling time less than 15 seconds. First design by open-loop projection, second by minimum energy assignment.
   randn('seed',0); rand('seed',0);
   sys = rss(6,6,3);

   Tr = 15; Damp = 0.707;
   kp = sfb_proj(sys,Tr,Damp,'p');
   km = sfb_proj(sys,Tr,Damp,'m');
   norm(km)
   norm(kp)
The norm of the gain obtained with option 'm' is usually (not always) smaller than with option 'p'. For this example we obtain norm(km) = 5.79 and norm(kp) = 12.8.