VIEWS: 56 PAGES: 194 CATEGORY: Childrens Literature POSTED ON: 1/19/2010
1 Internal Model Principle
1. Internal Model Principle 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y • α(z) = least common multiple of the unstable poles of Rc(z) and of V (z), 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y • α(z) = least common multiple of the unstable poles of Rc(z) and of V (z), all polynomials in z −1 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y • α(z) = least common multiple of the unstable poles of Rc(z) and of V (z), all polynomials in z −1 • Let there be no common factors between α(z) and B(z) 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y • α(z) = least common multiple of the unstable poles of Rc(z) and of V (z), all polynomials in z −1 • Let there be no common factors between α(z) and B(z) • Can ﬁnd a controller Gc(z) for servo/tracking (following Rc ) 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y • α(z) = least common multiple of the unstable poles of Rc(z) and of V (z), all polynomials in z −1 • Let there be no common factors between α(z) and B(z) • Can ﬁnd a controller Gc(z) for servo/tracking (following Rc) and regulation (rejection of disturbance V ) 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y • α(z) = least common multiple of the unstable poles of Rc(z) and of V (z), all polynomials in z −1 • Let there be no common factors between α(z) and B(z) • Can ﬁnd a controller Gc(z) for servo/tracking (following Rc) and regulation (rejection of disturbance V ) if Rc contains α, 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y • α(z) = least common multiple of the unstable poles of Rc(z) and of V (z), all polynomials in z −1 • Let there be no common factors between α(z) and B(z) • Can ﬁnd a controller Gc(z) for servo/tracking (following Rc) and regulation (rejection of disturbance V ) if Rc contains α, say, Rc = αR1: 1. Internal Model Principle v r − e Gc (z) = Sc Rc u G(z) = B A y • α(z) = least common multiple of the unstable poles of Rc(z) and of V (z), all polynomials in z −1 • Let there be no common factors between α(z) and B(z) • Can ﬁnd a controller Gc(z) for servo/tracking (following Rc) and regulation (rejection of disturbance V ) if Rc contains α, say, Rc = αR1: v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) Digital Control 1 Kannan M. Moudgalya, Autumn 2007 2. Internal Model Principle - Regulation 2. Internal Model Principle - Regulation v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) 2. Internal Model Principle - Regulation v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) Sc 1 B Y (z) = R1 α A R Sc 1 B 1+ R1 α A 2. Internal Model Principle - Regulation v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) 1 R1 α A Y (z) = R+ V Sc 1 B Sc 1 B 1+ 1+ R1 α A R1 α A Sc 1 B 2. Internal Model Principle - Regulation v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) 1 R1 α A Y (z) = R+ V Sc 1 B Sc 1 B 1+ 1+ R1 α A R1 α A Sc B = R R1Aα + ScB Sc 1 B 2. Internal Model Principle - Regulation v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) 1 R1 α A Y (z) = R+ V Sc 1 B Sc 1 B 1+ 1+ R1 α A R1 α A Sc B R1Aα bV = R+ R1Aα + ScB R1Aα + ScB αaV Sc 1 B 2. Internal Model Principle - Regulation v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) 1 R1 α A Y (z) = R+ V Sc 1 B Sc 1 B 1+ 1+ R1 α A R1 α A Sc B R1Aα bV = R+ R1Aα + ScB R1Aα + ScB αaV • Unstable pole present in α gets cancelled Sc 1 B 2. Internal Model Principle - Regulation v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) 1 R1 α A Y (z) = R+ V Sc 1 B Sc 1 B 1+ 1+ R1 α A R1 α A Sc B R1Aα bV = R+ R1Aα + ScB R1Aα + ScB αaV • Unstable pole present in α gets cancelled • Regulation problem veriﬁed Digital Control Sc 1 B 2 Kannan M. Moudgalya, Autumn 2007 3. Internal Model Principle - Servo 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) Y (z) = Sc B R1Aα + ScB R+ R1Aα R1Aα + ScB V 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = Sc B R1Aα 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B R1Aα 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B = 1− R1Aα + ScB R Sc B R1Aα 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B = 1− R1Aα + ScB R= R1Aα bR Sc B R1Aα R1Aα + ScB αaR 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B R1Aα bR R= = 1− R1Aα + ScB R1Aα + ScB αaR • Unstable poles of Rc are cancelled by zeros of α. Sc B R1Aα 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B R1Aα bR R= = 1− R1Aα + ScB R1Aα + ScB αaR • Unstable poles of Rc are cancelled by zeros of α. • Can choose Rc and Sc such that R1Aα + ScB has roots within the unit circle Sc B R1Aα 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B R1Aα bR R= = 1− R1Aα + ScB R1Aα + ScB αaR • Unstable poles of Rc are cancelled by zeros of α. • Can choose Rc and Sc such that R1Aα + ScB has roots within the unit circle (pole placement) Sc B R1Aα 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B R1Aα bR R= = 1− R1Aα + ScB R1Aα + ScB αaR • Unstable poles of Rc are cancelled by zeros of α. • Can choose Rc and Sc such that R1Aα + ScB has roots within the unit circle (pole placement) • IM Principle: Sc B R1Aα 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B R1Aα bR R= = 1− R1Aα + ScB R1Aα + ScB αaR • Unstable poles of Rc are cancelled by zeros of α. • Can choose Rc and Sc such that R1Aα + ScB has roots within the unit circle (pole placement) • IM Principle: unstable poles of V , Rc appear in loop Sc B R1Aα 3. Internal Model Principle - Servo v(n) r(n) − e(n) Gc = Sc αR1 u(n) G= B A y(n) R+ V R1Aα + ScB R1Aα + ScB Servo problem: assume V = 0: Y (z) = E(z) = R(z) − Y (z) Sc B R1Aα bR R= = 1− R1Aα + ScB R1Aα + ScB αaR • Unstable poles of Rc are cancelled by zeros of α. • Can choose Rc and Sc such that R1Aα + ScB has roots within the unit circle (pole placement) • IM Principle: unstable poles of V , Rc appear in loop thro’ α 3 Kannan M. Moudgalya, Autumn 2007 Sc B R1Aα Digital Control 4. Internal Stability 4. Internal Stability r(n) + e(n) gc(n) u(n) g(n) y(n) − 4. Internal Stability r(n) + e(n) gc(n) u(n) g(n) y(n) − • Notion in UG classes: output has to be stable 4. Internal Stability r(n) + e(n) gc(n) u(n) g(n) y(n) − • Notion in UG classes: output has to be stable • Output being stable is not suﬃcient 4. Internal Stability r(n) + e(n) gc(n) u(n) g(n) y(n) − • Notion in UG classes: output has to be stable • Output being stable is not suﬃcient • Every signal in the loop should be bounded 4. Internal Stability r(n) + e(n) gc(n) u(n) g(n) y(n) − • Notion in UG classes: output has to be stable • Output being stable is not suﬃcient • Every signal in the loop should be bounded • If any signal is unbounded, will result in saturation / overﬂow / explosion 4. Internal Stability r(n) + e(n) gc(n) u(n) g(n) y(n) − • Notion in UG classes: output has to be stable • Output being stable is not suﬃcient • Every signal in the loop should be bounded • If any signal is unbounded, will result in saturation / overﬂow / explosion • When every signal is bounded, called internal stability 4. Internal Stability r(n) + e(n) gc(n) u(n) g(n) y(n) − • Notion in UG classes: output has to be stable • Output being stable is not suﬃcient • Every signal in the loop should be bounded • If any signal is unbounded, will result in saturation / overﬂow / explosion • When every signal is bounded, called internal stability • If output is stable and if there is no unstable pole-zero cancellation, internal stability Digital Control 4 Kannan M. Moudgalya, Autumn 2007 5. Unstb. Pole-Zero Cancel. = No Int. Stability 5. Unstb. Pole-Zero Cancel. = No Int. Stability r2 r1 + − e1 n2 Gc = d2 + + e2 G= n1 d1 y 5. Unstb. Pole-Zero Cancel. = No Int. Stability r2 r1 + − e1 n2 Gc = d2 + + e2 G= n1 d1 y 1 + GG E1 = G c c E2 1 + Gc G 1 − 1 + GGc R1 R2 1 1 + Gc G G 5. Unstb. Pole-Zero Cancel. = No Int. Stability r2 r1 + − e1 n2 Gc = d2 + + e2 G= n1 d1 y 1 + GG E1 1 + GGc R1 c = G R2 1 c E2 1 + Gc G 1 + Gc G n1d2 d 1 d2 n n + d d − n n + d d R1 2 1 2 1 2 = 1 n d 1 2 R2 d 1 d2 2 1 n1n2 + d1d2 n1n2 + d1d2 1 − G 5. Unstb. Pole-Zero Cancel. = No Int. Stability r2 r1 + − e1 n2 Gc = d2 + + e2 G= n1 d1 y 1 + GG E1 1 + GGc R1 c = G R2 1 c E2 1 + Gc G 1 + Gc G n1d2 d 1 d2 n n + d d − n n + d d R1 2 1 2 1 2 = 1 n d 1 2 R2 d 1 d2 2 1 n1n2 + d1d2 n1n2 + d1d2 Suppose d1, n2 have a common factor: 1 − G 5. Unstb. Pole-Zero Cancel. = No Int. Stability r2 r1 + − e1 n2 Gc = d2 + + e2 G= n1 d1 y 1 + GG E1 1 + GGc R1 c = G R2 1 c E2 1 + Gc G 1 + Gc G n1d2 d 1 d2 n n + d d − n n + d d R1 2 1 2 1 2 = 1 n d 1 2 R2 d 1 d2 2 1 n1n2 + d1d2 n1n2 + d1d2 Suppose d1, n2 have a common factor: d1 = (z + a)d1 n2 = (z + a)n2 Digital Control 1 − G 5 Kannan M. Moudgalya, Autumn 2007 6. Unstable Pole-Zero Cancellation = No Internal Stability Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Assume stability of TE Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Assume stability of TE = 1 1 + GGc Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Assume stability of TE = 1 1 + GGc = d1 d2 d1d2 + n1n2 Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Assume stability of TE = 1 1 + GGc = d1 d2 d1d2 + n1n2 T.F. between R2 and Y can be shown to be unstable. Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Assume stability of TE = 1 1 + GGc = d1 d2 d1d2 + n1n2 T.F. between R2 and Y can be shown to be unstable. Let R1 = 0. Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Assume stability of TE = 1 1 + GGc = d1 d2 d1d2 + n1n2 T.F. between R2 and Y can be shown to be unstable. Let R1 = 0. Y R2 = G 1 + GGc = n1d2 (d1d2 + n1n2)(z + a) Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Assume stability of TE = 1 1 + GGc = d1 d2 d1d2 + n1n2 T.F. between R2 and Y can be shown to be unstable. Let R1 = 0. Y R2 = G 1 + GGc = n1d2 (d1d2 + n1n2)(z + a) It is unstable Unstable Pole-Zero Cancellation = No Internal Stability Assume the cancellation of z + a, n1(z) (z + a)n2(z) G(z) = , Gc(z) = (z + a)d1(z) d2(z) 6. with |a| > 1. Assume stability of TE = 1 1 + GGc = d1 d2 d1d2 + n1n2 T.F. between R2 and Y can be shown to be unstable. Let R1 = 0. Y R2 Digital Control = G 1 + GGc = n1d2 (d1d2 + n1n2)(z + a) 6 Kannan M. Moudgalya, Autumn 2007 It is unstable and a bounded signal injected at R2 will produce an unbounded signal at Y 7. Forbid Unstable Pole-Zero Cancellation: Loop Variable 7. Forbid Unstable Pole-Zero Cancellation: Loop Variable • Internal stability = all variables in loop are bounded for bounded external inputs at all locations 7. Forbid Unstable Pole-Zero Cancellation: Loop Variable • Internal stability = all variables in loop are bounded for bounded external inputs at all locations • Can be checked by the following closed loop diagram 7. Forbid Unstable Pole-Zero Cancellation: Loop Variable • Internal stability = all variables in loop are bounded for bounded external inputs at all locations • Can be checked by the following closed loop diagram r2 r1 + − e1 + n2 Gc = d2 + e2 n1 d1 y G= 7. Forbid Unstable Pole-Zero Cancellation: Loop Variable • Internal stability = all variables in loop are bounded for bounded external inputs at all locations • Can be checked by the following closed loop diagram r2 r1 + − e1 + n2 Gc = d2 + e2 n1 d1 y G= • Can show that Output is stable + no pole-zero cancellation = internal stability Digital Control 7 Kannan M. Moudgalya, Autumn 2007 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: G(z −1) = z B(z −1) −k A(z −1) =z b0 + b1z −1 + b2z −2 + · · · −k 1 + a1z −1 + a2z −2 + · · · 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: G(z −1) = z B(z −1) −k A(z −1) =z b0 + b1z −1 + b2z −2 + · · · −k 1 + a1z −1 + a2z −2 + · · · • Controller not realizable ⇒ 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: G(z −1) = z 1 + a1z −1 + a2z −2 + · · · • Controller not realizable ⇒ there is a common factor z −1 between plant and controller B(z −1) −k A(z −1) =z b0 + b1z −1 + b2z −2 + · · · −k 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: G(z −1) = z 1 + a1z −1 + a2z −2 + · · · • Controller not realizable ⇒ there is a common factor z −1 between plant and controller • z −1 = 0 ⇒ B(z −1) −k A(z −1) =z b0 + b1z −1 + b2z −2 + · · · −k 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: G(z −1) = z 1 + a1z −1 + a2z −2 + · · · • Controller not realizable ⇒ there is a common factor z −1 between plant and controller • z −1 = 0 ⇒ z = ∞, an unstable pole B(z −1) −k A(z −1) =z b0 + b1z −1 + b2z −2 + · · · −k 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: G(z −1) = z 1 + a1z −1 + a2z −2 + · · · • Controller not realizable ⇒ there is a common factor z −1 between plant and controller • z −1 = 0 ⇒ z = ∞, an unstable pole • If unstable pole-zero cancellation is forbidden while designing controllers, B(z −1) −k A(z −1) =z b0 + b1z −1 + b2z −2 + · · · −k 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: G(z −1) = z 1 + a1z −1 + a2z −2 + · · · • Controller not realizable ⇒ there is a common factor z −1 between plant and controller • z −1 = 0 ⇒ z = ∞, an unstable pole • If unstable pole-zero cancellation is forbidden while designing controllers, z −1 cannot appear in the denominator of the controller B(z −1) −k A(z −1) =z b0 + b1z −1 + b2z −2 + · · · −k 8. Forbid Unstable Pole-Zero Cancellation ⇒ Get Causality Not possible to realize this controller: 1 + z −1 Gc = z −1 All sampled systems have at least one delay: G(z −1) = z 1 + a1z −1 + a2z −2 + · · · • Controller not realizable ⇒ there is a common factor z −1 between plant and controller • z −1 = 0 ⇒ z = ∞, an unstable pole • If unstable pole-zero cancellation is forbidden while designing controllers, z −1 cannot appear in the denominator of the controller - i.e., controller is realizable Digital Control B(z −1) −k A(z −1) =z b0 + b1z −1 + b2z −2 + · · · −k 8 Kannan M. Moudgalya, Autumn 2007 9. Delay Speciﬁcation for Realizability 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z b0 = 0. −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · b0 = 0. Suppose that we use a feedback controller of the form Gc(z) = z −d Sc(z) Rc(z) 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · b0 = 0. Suppose that we use a feedback controller of the form Gc(z) = z −d Sc (z) Rc(z) =z −d s0 + s1z −1 + · · · 1 + r1z −1 + · · · 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · b0 = 0. Suppose that we use a feedback controller of the form Gc(z) = z with s0 = 0 −d Sc (z) Rc(z) =z −d s0 + s1z −1 + · · · 1 + r1z −1 + · · · 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · b0 = 0. Suppose that we use a feedback controller of the form Gc(z) = z −d Sc (z) Rc(z) =z −d s0 + s1z −1 + · · · 1 + r1z −1 + · · · with s0 = 0 and d ≥ 0. 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · b0 = 0. Suppose that we use a feedback controller of the form Gc(z) = z −d Sc (z) Rc(z) =z −d s0 + s1z −1 + · · · 1 + r1z −1 + · · · with s0 = 0 and d ≥ 0. Closed loop transfer function: 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · b0 = 0. Suppose that we use a feedback controller of the form Gc(z) = z GGc 1 + GGc −d Sc (z) Rc(z) =z −d s0 + s1z −1 + · · · 1 + r1z −1 + · · · with s0 = 0 and d ≥ 0. Closed loop transfer function: T = 9. Delay Speciﬁcation for Realizability Closed loop delay has to be ≥ open loop delay: G(z) = z −k B(z) A(z) =z b0 + b1z −1 + · · · −k 1 + a1z −1 + · · · b0 = 0. Suppose that we use a feedback controller of the form Gc(z) = z GGc 1 + GGc b0s0 + (b0s1 + b1s0)z −1 + · · · 9 Kannan M. Moudgalya, Autumn 2007 −d Sc (z) Rc(z) =z −d s0 + s1z −1 + · · · 1 + r1z −1 + · · · with s0 = 0 and d ≥ 0. Closed loop transfer function: T = = z −k−d Digital Control 1 + (s1 + r1)z −1 + · · · + z −k−d(b0s0 + · · · ) 10. Delay Speciﬁcation for Realizability 10. Delay Speciﬁcation for Realizability T = z −k−d b0s0 + (b0s1 + b1s0)z −1 + · · · 1 + (s1 + r1)z −1 + · · · + z −k−d(b0s0 + · · · ) • Closed loop delay = k + d 10. Delay Speciﬁcation for Realizability T = z −k−d b0s0 + (b0s1 + b1s0)z −1 + · · · 1 + (s1 + r1)z −1 + · · · + z −k−d(b0s0 + · · · ) • Closed loop delay = k + d ≥ k 10. Delay Speciﬁcation for Realizability T = z −k−d b0s0 + (b0s1 + b1s0)z −1 + · · · 1 + (s1 + r1)z −1 + · · · + z −k−d(b0s0 + · · · ) • Closed loop delay = k + d ≥ k = open loop delay. 10. Delay Speciﬁcation for Realizability T = z −k−d b0s0 + (b0s1 + b1s0)z −1 + · · · 1 + (s1 + r1)z −1 + · · · + z −k−d(b0s0 + · · · ) • Closed loop delay = k + d ≥ k = open loop delay. • Can make it less only by d < 0, 10. Delay Speciﬁcation for Realizability T = z −k−d b0s0 + (b0s1 + b1s0)z −1 + · · · 1 + (s1 + r1)z −1 + · · · + z −k−d(b0s0 + · · · ) • Closed loop delay = k + d ≥ k = open loop delay. • Can make it less only by d < 0, but controller is unrealizable. Digital Control 10 Kannan M. Moudgalya, Autumn 2007 11. Example: What if Wrong Delay is Speciﬁed? 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 Recall the standard closed loop transfer function: 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 Recall the standard closed loop transfer function: T = GGc/(1+ GGc). 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 Recall the standard closed loop transfer function: T = GGc/(1+ GGc). Solving for Gc, 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 Recall the standard closed loop transfer function: T = GGc/(1+ GGc). Solving for Gc, and substituting for T , G 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 Recall the standard closed loop transfer function: T = GGc/(1+ GGc). Solving for Gc, and substituting for T , G Gc = 1 T G1 − T 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 Recall the standard closed loop transfer function: T = GGc/(1+ GGc). Solving for Gc, and substituting for T , G Gc = 1 T G1 − T = 1 1 − 0.5z −1 z −1 1 − (a + 1)z −1 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 Recall the standard closed loop transfer function: T = GGc/(1+ GGc). Solving for Gc, and substituting for T , G Gc = 1 T G1 − T = 1 1 − 0.5z −1 z −1 1 − (a + 1)z −1 This controller is unrealizable, 11. Example: What if Wrong Delay is Speciﬁed? Design a controller for the plant 1 −2 G=z 1 − 0.5z −1 so that the overall system has smaller delay: T =z −1 1 1 − az −1 Recall the standard closed loop transfer function: T = GGc/(1+ GGc). Solving for Gc, and substituting for T , G Gc = 1 T G1 − T = 1 1 − 0.5z −1 z −1 1 − (a + 1)z −1 11 Kannan M. Moudgalya, Autumn 2007 This controller is unrealizable, no matter what a is. Digital Control 12. Speciﬁcations - Step Response 12. Speciﬁcations - Step Response Give unit step input in r. Output y should have 12. Speciﬁcations - Step Response Give unit step input in r. Output y should have 1. small rise time 12. Speciﬁcations - Step Response Give unit step input in r. Output y should have 1. small rise time 2. small overshoot 12. Speciﬁcations - Step Response Give unit step input in r. Output y should have 1. small rise time 2. small overshoot 3. small settling time 12. Speciﬁcations - Step Response Give unit step input in r. Output y should have 1. small rise time 2. small overshoot 3. small settling time 4. small steady state error 12. Speciﬁcations - Step Response y(n) Give unit step input in r. Output y should have 1. small rise time 2. small overshoot 3. small settling time 4. small steady state error n e(n) n 12. Speciﬁcations - Step Response y(n) Give unit step input in r. Output y should have 1. small rise time 2. small overshoot 3. small settling time 4. small steady state error n e(n) n Error e(n) of the following form satisﬁes the requirements: 12. Speciﬁcations - Step Response y(n) Give unit step input in r. Output y should have 1. small rise time 2. small overshoot 3. small settling time 4. small steady state error n e(n) n Error e(n) of the following form satisﬁes the requirements: e(n) = ρn cos ωn, 0<ρ<1 12. Speciﬁcations - Step Response y(n) Give unit step input in r. Output y should have 1. small rise time 2. small overshoot 3. small settling time 4. small steady state error n e(n) n Error e(n) of the following form satisﬁes the requirements: e(n) = ρ cos ωn, n Im(z) × ω Re(z) × ρ 0<ρ<1 Digital Control 12 Kannan M. Moudgalya, Autumn 2007 13. Speciﬁcations - Step Response 13. y(n) Speciﬁcations - Step Response n e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one n e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero Procedure: e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero Procedure: User will specify the following: e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero Procedure: User will specify the following: 1. a maximum allowable fall time < Nr e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero Procedure: User will specify the following: 1. a maximum allowable fall time < Nr 2. a maximum allowable undershoot < ε e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero Procedure: User will specify the following: 1. a maximum allowable fall time < Nr 2. a maximum allowable undershoot < ε 3. a minimum required decay ratio < δ e(n) n Im(z) × ω Re(z) × ρ e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero Procedure: User will specify the following: 1. a maximum allowable fall time < Nr 2. a maximum allowable undershoot < ε 3. a minimum required decay ratio < δ e(n) n Im(z) × ω Re(z) × ρ • We will develop a method to determine ρ a ω satisfying the above requirements e(n) = ρn cos ωn 0<ρ<1 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero Procedure: User will specify the following: 1. a maximum allowable fall time < Nr 2. a maximum allowable undershoot < ε 3. a minimum required decay ratio < δ e(n) n Im(z) × ω Re(z) × ρ • We will develop a method to determine ρ a ω satisfying the above requirements e(n) = ρn cos ωn 0<ρ<1 • Calculate trans. fn. between e(n) - r(n 13. y(n) Speciﬁcations - Step Response 1. initial error is one 2. decaying oscillations about zero n 3. steady state error is zero Procedure: User will specify the following: 1. a maximum allowable fall time < Nr 2. a maximum allowable undershoot < ε 3. a minimum required decay ratio < δ e(n) n Im(z) × ω Re(z) × ρ • We will develop a method to determine ρ a ω satisfying the above requirements • Back calculateKannan controllerAutumn 2007 the M. Moudgalya, Gc(z) 13 e(n) = ρn cos ωn 0<ρ<1 Digital Control • Calculate trans. fn. between e(n) - r(n 14. Small Fall Time in Error 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 Error becomes zero, i.e., 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 Error becomes zero, i.e., e(n) = 0. 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 Error becomes zero, i.e., e(n) = 0. for the ﬁrst time when 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 Error becomes zero, i.e., e(n) = 0. for the ﬁrst time when π ωn = 2 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 Error becomes zero, i.e., e(n) = 0. for the ﬁrst time when π ωn = 2 π ⇒n= 2ω 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 Error becomes zero, i.e., e(n) = 0. for the ﬁrst time when π ωn = 2 π ⇒n= 2ω As want n < Nr , some given value, we get 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 Error becomes zero, i.e., e(n) = 0. for the ﬁrst time when π ωn = 2 π ⇒n= 2ω As want n < Nr , some given value, we get π < Nr 2ω 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 Error becomes zero, i.e., e(n) = 0. for the ﬁrst time when π ωn = 2 π ⇒n= 2ω As want n < Nr , some given value, we get π π < Nr ⇒ ω > 2ω 2Nr 14. Small Fall Time in Error e(n) = ρn cos ωn, 0<ρ<1 y(n) Error becomes zero, i.e., e(n) = 0. for the ﬁrst time when π ωn = 2 π ⇒n= 2ω As want n < Nr , some given value, we get π π < Nr ⇒ ω > 2ω 2Nr Digital Control n e(n) n Desired region: Im(z) Re(z) 14 Kannan M. Moudgalya, Autumn 2007 15. Small Undershoot 15. Small Undershoot e(n) = ρn cos ωn 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. when ωn = π 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. when ωn = π e(n)|ωn=π = ρn cos ωn|ωn=π 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. when ωn = π e(n)|ωn=π = ρn cos ωn|ωn=π = −ρn|ωn=π 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. when ωn = π e(n)|ωn=π = ρn cos ωn|ωn=π = −ρn|ωn=π = −ρπ/ω 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. when ωn = π e(n)|ωn=π = ρn cos ωn|ωn=π = −ρn|ωn=π = −ρπ/ω User speciﬁed maximum deviation = ε: 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. when ωn = π e(n)|ωn=π = ρn cos ωn|ωn=π = −ρn|ωn=π = −ρπ/ω User speciﬁed maximum deviation = ε: ρπ/ω < ε 15. Small Undershoot e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. when ωn = π e(n)|ωn=π = ρn cos ωn|ωn=π = −ρn|ωn=π = −ρπ/ω User speciﬁed maximum deviation = ε: ρπ/ω < ε, ρ < εω/π 15. Small Undershoot y(n) e(n) = ρn cos ωn When does it reach ﬁrst min.? de/dn = 0 • Not applicable, because n is an integer • Look for a simpler expression • Reaches min. approx. when ωn = π e(n)|ωn=π = ρ cos ωn|ωn=π = −ρn|ωn=π = −ρπ/ω User speciﬁed maximum deviation = ε: ρπ/ω < ε, Digital Control n e(n) n n Desired region: Im(z) Re(z) ρ < εω/π 15 Kannan M. Moudgalya, Autumn 2007 16. Small Decay Ratio 16. Small Decay Ratio e(n) = ρn cos ωn 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn • First overshoot occurs at ωn 2π π 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π <δ e(n)|ωn=π 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π δ = 0.5 1/4 decay. 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π δ = 0.5 1/4 decay. δ = 0.25 1/8 decay. 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π δ = 0.5 1/4 decay. δ = 0.25 1/8 decay. ρ2π/ω <δ π/ω ρ 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π δ = 0.5 1/4 decay. δ = 0.25 1/8 decay. ρ2π/ω < δ ⇒ ρπ/ω < δ ρπ/ω 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π δ = 0.5 1/4 decay. δ = 0.25 1/8 decay. ρ2π/ω < δ ⇒ ρπ/ω < δ ⇒ ρ < δ ω/π ρπ/ω 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π δ = 0.5 1/4 decay. δ = 0.25 1/8 decay. ρ2π/ω < δ ⇒ ρπ/ω < δ ⇒ ρ < δ ω/π ρπ/ω • Small undershoot: ρ < εω/π . 16. Small Decay Ratio e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π δ = 0.5 1/4 decay. δ = 0.25 1/8 decay. ρ2π/ω < δ ⇒ ρπ/ω < δ ⇒ ρ < δ ω/π ρπ/ω • Small undershoot: ρ < εω/π . Usually ε < δ 16. Small Decay Ratio y(n) e(n) = ρn cos ωn Ratio of two successive peak/trough to be small • First undershoot in e(n) occurs at ωn π • First overshoot occurs at ωn 2π Want this ratio to be less than user speciﬁed δ: e(n)|ωn=2π ρn|ωn=2π <δ⇒ n <δ e(n)|ωn=π ρ |ωn=π δ = 0.5 1/4 decay. δ = 0.25 1/8 decay. Desired region: Im(z) ρ2π/ω < δ ⇒ ρπ/ω < δ ⇒ ρ < δ ω/π Re(z) ρπ/ω e(n) n n • Small undershoot: ρ < εω/π . Usually ε < δ • Small undershoot satisﬁes fast decay Digital Control 16 Kannan M. Moudgalya, Autumn 2007 17. Overall Requirements 17. Overall Requirements Im(z) Re(z) 17. Overall Requirements Im(z) Im(z) Re(z) Re(z) 17. Overall Requirements Im(z) Im(z) Im(z) Re(z) Re(z) Re(z) Desired region by the current approach 17. Overall Requirements Im(z) Im(z) Im(z) Re(z) Re(z) Re(z) Desired region by the current approach Im(z) Re(z) Obtained by discretization of continuous domain result (Astrom and Wittenmark) Digital Control 17 Kannan M. Moudgalya, Autumn 2007 18. Desired Transfer Function 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, E(z) = z(z − r cos ω) z 2 − 2zr cos ω + r 2 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, E(z) = z(z − r cos ω) z 2 − 2zr cos ω + r 2 For step input R(z). 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, E(z) = z(z − r cos ω) z 2 − 2zr cos ω + r 2 For step input R(z). Transfer function between R(z)-E(z): 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, E(z) = z(z − r cos ω) z 2 − 2zr cos ω + r 2 E(z) R(z) For step input R(z). Transfer function between R(z)-E(z): TE (z) = 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, E(z) = z(z − r cos ω) z 2 − 2zr cos ω + r 2 E(z) R(z) z(z − r cos ω) z 2 − 2zr cos ω + r 2 z−1 z For step input R(z). Transfer function between R(z)-E(z): TE (z) = = 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, E(z) = z(z − r cos ω) z 2 − 2zr cos ω + r 2 E(z) z(z − r cos ω) z−1 z For step input R(z). Transfer function between R(z)-E(z): TE (z) = = R(z) z 2 − 2zr cos ω + r 2 (z − 1)(z − r cos ω) z 2 − 2zr cos ω + r 2 = 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, E(z) = z(z − r cos ω) z 2 − 2zr cos ω + r 2 E(z) z(z − r cos ω) z−1 z For step input R(z). Transfer function between R(z)-E(z): TE (z) = = R(z) z 2 − 2zr cos ω + r 2 (z − 1)(z − r cos ω) = z 2 − 2zr cos ω + r 2 One approach: equate this to 1/(1 + GGc) 18. Desired Transfer Function Desired error to a step input is e: e(n) = r n cos ωn Taking Z-transform, E(z) = z(z − r cos ω) z 2 − 2zr cos ω + r 2 E(z) z(z − r cos ω) z−1 z For step input R(z). Transfer function between R(z)-E(z): TE (z) = = R(z) z 2 − 2zr cos ω + r 2 (z − 1)(z − r cos ω) = z 2 − 2zr cos ω + r 2 One approach: equate this to 1/(1 + GGc) and calculate Gc Digital Control 18 Kannan M. Moudgalya, Autumn 2007 19. Desired Transfer Function 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 z(1 − r cos ω) + (r 2 − r cos ω) = z 2 − 2zr cos ω + r 2 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 z(1 − r cos ω) + (r 2 − r cos ω) = z 2 − 2zr cos ω + r 2 −1 ) −1 ψ(z =z φcl (z −1) 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 z(1 − r cos ω) + (r 2 − r cos ω) = z 2 − 2zr cos ω + r 2 −1 ) −1 ψ(z =z φcl (z −1) • One approach: equate this to GGc/(1 + GGc), 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 z(1 − r cos ω) + (r 2 − r cos ω) = z 2 − 2zr cos ω + r 2 −1 ) −1 ψ(z =z φcl (z −1) • One approach: equate this to GGc/(1 + GGc), ﬁnd Gc 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 z(1 − r cos ω) + (r 2 − r cos ω) = z 2 − 2zr cos ω + r 2 −1 ) −1 ψ(z =z φcl (z −1) • One approach: equate this to GGc/(1 + GGc), ﬁnd Gc • Can’t do it exactly - will use part of this approach 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 z(1 − r cos ω) + (r 2 − r cos ω) = z 2 − 2zr cos ω + r 2 −1 ) −1 ψ(z =z φcl (z −1) • One approach: equate this to GGc/(1 + GGc), ﬁnd Gc • Can’t do it exactly - will use part of this approach • We will mainly make use of φcl and not ψ 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 z(1 − r cos ω) + (r 2 − r cos ω) = z 2 − 2zr cos ω + r 2 −1 ) −1 ψ(z =z φcl (z −1) • One approach: equate this to GGc/(1 + GGc), ﬁnd Gc • Can’t do it exactly - will use part of this approach • We will mainly make use of φcl and not ψ • TY (1) = 1 19. Desired Transfer Function Transfer function between setpoint R(z) and actual output Y (z): TY (z) = 1 − TE (z) z 2 − zr cos ω − z + r cos ω =1− z 2 − 2zr cos ω + r 2 z(1 − r cos ω) + (r 2 − r cos ω) = z 2 − 2zr cos ω + r 2 −1 ) −1 ψ(z =z φcl (z −1) • One approach: equate this to GGc/(1 + GGc), ﬁnd Gc • Can’t do it exactly - will use part of this approach • We will mainly make use of φcl and not ψ • TY (1) = 1 ⇒ No steady state oﬀset between Y and R Digital Control 19 Kannan M. Moudgalya, Autumn 2007