acker: Pole placement gain selection using Ackermann's formula

Description Usage Arguments Details Examples

Description

Computes the Pole placement gain selection using Ackermann's formula.

Usage

1
acker(a, b, p)

Arguments

a

State-matrix of a state-space system

b

Input-matrix of a state-space system

p

closed loop poles

Details

K <- ACKER(A,B,P) calculates the feedback gain matrix K such that the single input system . x <- Ax + Bu

with a feedback law of u <- -Kx has closed loop poles at the values specified in vector P, i.e., P <- eigen(A - B * K).

This method is NOT numerically stable and a warning message is printed if the nonzero closed loop poles are greater than 10 in P.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
F <- rbind(c(0,1),c(0,0))
G <- rbind(0,1)
H <- cbind(1,0);
J <- 0
t <- 1
sys  <-  ss(F,G, H,J)
A  <-  c2d(sys,t);
j <- sqrt(as.complex(-1));
pc  <- rbind(0.78+0.18*j, 0.78-0.18*j)
K  <-  acker(A$A, A$B, pc)

Example output

Attaching package:controlThe following object is masked frompackage:stats:

    step

The following object is masked frompackage:base:

    append

Warning message:
In acker(A$A, A$B, pc) : Pole locations are more than 10% in error.

control documentation built on May 1, 2019, 7:33 p.m.