Skip to main content

Chapter 4 · 10 hours

Design and Compensation of Discrete Time Control System

IOE past exam questions

Past questions and answers

38 questions set from this chapter, 7 of them more than once. Most asked first.

  • Asked 6 times
  • 2082 Chaitra (new course) · 5 marks
  • 2082 Chaitra · 5 marks
  • 2082 Kartik · 5 marks
  • 2078 Chaitra · 8 marks
  • 2074 Bhadra · 8 marks
  • 2071 Magh · 8 marks

Consider the digital filter defined by G(z)=(2+2.2z⁻¹+0.2z⁻²)/(1+0.4z⁻¹-0.12z⁻²) (equivalently GD(z)=(2z²+2.2z+0.2)/(z²+0.4z-0.12)). Realize this filter in the ladder scheme.

Answer

In ladder programming, G(z)G(z) is written as a continued fraction in zz:

G(z)=A0+1B1z+1A1+1B2z+1A2G(z) = A_0 + \cfrac{1}{B_1z + \cfrac{1}{A_1 + \cfrac{1}{B_2z + \cfrac{1}{A_2}}}}

Each 1/(Biz)1/(B_iz) becomes a delay z−1/Biz^{-1}/B_i, and each AiA_i becomes a constant gain.

Write the filter in positive powers of zz:

G(z)=2+2.2z−1+0.2z−21+0.4z−1−0.12z−2=2z2+2.2z+0.2z2+0.4z−0.12G(z) = \frac{2 + 2.2z^{-1} + 0.2z^{-2}}{1 + 0.4z^{-1} - 0.12z^{-2}} = \frac{2z^2 + 2.2z + 0.2}{z^2 + 0.4z - 0.12}

Step 1: Constant term A0A_0

G(z)=2+(2z2+2.2z+0.2)−2(z2+0.4z−0.12)z2+0.4z−0.12=2+1.4z+0.44z2+0.4z−0.12G(z) = 2 + \frac{(2z^2+2.2z+0.2) - 2(z^2+0.4z-0.12)}{z^2+0.4z-0.12} = 2 + \frac{1.4z + 0.44}{z^2 + 0.4z - 0.12}

So A0=2A_0 = 2.

Step 2: B1B_1

z2+0.4z−0.121.4z+0.44=11.4z+0.0857z−0.121.4z+0.44\frac{z^2+0.4z-0.12}{1.4z+0.44} = \frac{1}{1.4}z + \frac{0.0857z - 0.12}{1.4z+0.44}

So B1=1/1.4=0.7143B_1 = 1/1.4 = 0.7143. The remainder is 0.4z−0.3143z=0.0857z0.4z - 0.3143z = 0.0857z (exactly 3z/353z/35).

Step 3: A1A_1

1.4z+0.440.0857z−0.12=1.40.0857+0.44+16.333(0.12)0.0857z−0.12=16.333+2.40.0857z−0.12\frac{1.4z+0.44}{0.0857z-0.12} = \frac{1.4}{0.0857} + \frac{0.44 + 16.333(0.12)}{0.0857z - 0.12} = 16.333 + \frac{2.4}{0.0857z-0.12}

So A1=49/3=16.333A_1 = 49/3 = 16.333.

Step 4: B2B_2 and A2A_2

0.0857z−0.122.4=0.0357z−0.05=B2z+1A2\frac{0.0857z - 0.12}{2.4} = 0.0357z - 0.05 = B_2z + \frac{1}{A_2}

So B2=1/28=0.0357B_2 = 1/28 = 0.0357 and A2=−1/0.05=−20A_2 = -1/0.05 = -20.

G(z)=2+10.7143z+116.333+10.0357z+1−20G(z) = 2 + \cfrac{1}{0.7143z + \cfrac{1}{16.333 + \cfrac{1}{0.0357z + \cfrac{1}{-20}}}}
A0A_0B1B_1A1A_1B2B_2A2A_2
20.714316.3330.0357−20

Ladder block diagram

X(z)--o-----------------[A0]--------------->(S)--> Y(z)
      |                                      ^
      v +                                    | Y1
     (S1)-->[z^-1/B1]-------------o----------+
      ^ -                         | +
      |                           v
      o<--E1--[1/A1]<----------- (S2)
      |                           ^ -
      v +                         |
     (S3)-->[z^-1/B2]-------------o Y2
      ^ -                         |
      |                           |
      +<--E2--[1/A2]<-------------+

Signal equations (these define the ladder diagram; oo marks a take-off point):

Y1=z−1B1(X−E1),E1=1A1(Y1−Y2)Y2=z−1B2(E1−E2),E2=1A2Y2Y=A0X+Y1\begin{aligned} Y_1 &= \tfrac{z^{-1}}{B_1}(X - E_1), & E_1 &= \tfrac{1}{A_1}(Y_1 - Y_2) \\ Y_2 &= \tfrac{z^{-1}}{B_2}(E_1 - E_2), & E_2 &= \tfrac{1}{A_2}Y_2 \\ Y &= A_0X + Y_1 \end{aligned}

With the values: 1/B1=1.41/B_1 = 1.4, 1/A1=0.06121/A_1 = 0.0612, 1/B2=281/B_2 = 28, 1/A2=−0.051/A_2 = -0.05.

Simulating these equations gives the same impulse response as the original difference equation y(k)=−0.4y(k−1)+0.12y(k−2)+2x(k)+2.2x(k−1)+0.2x(k−2)y(k) = -0.4y(k-1) + 0.12y(k-2) + 2x(k) + 2.2x(k-1) + 0.2x(k-2). The realization needs only 2 delays.

  • Asked 3 times
  • 2082 Chaitra · 12 marks
  • 2076 Bhadra · 12 marks
  • 2073 Bhadra · 12 marks

Design a digital controller such that the compensated system should have damping ratio ζ=0.5 and settling time tₛ=2 s using root locus approach. [Figure: unity-feedback loop: R(s) → summing junction → E(s) → sampler (T = 0.2) → digital controller → ZOH → 1/s(s+2) → C(s)]

Answer

Step 1: Desired closed-loop poles

From the specifications ζ=0.5\zeta = 0.5 and ts=2t_s = 2 s (2% criterion, ts=4/ζωnt_s = 4/\zeta\omega_n):

ζωn=4ts=2,ωn=4 rad/sωd=ωn1−ζ2=3.464 rad/s\begin{aligned} \zeta\omega_n &= \frac{4}{t_s} = 2, \qquad \omega_n = 4\ \text{rad/s} \\ \omega_d &= \omega_n\sqrt{1-\zeta^2} = 3.464\ \text{rad/s} \end{aligned}

With T=0.2T = 0.2 s, the samples per cycle are ωs/ωd=31.42/3.464≈9\omega_s/\omega_d = 31.42/3.464 \approx 9.

∣z∣=e−ζωnT=e−0.4=0.6703∠z=ωdT=0.6928 rad=39.69∘z1,2=0.6703∠±39.69∘=0.5158±j0.4281\begin{aligned} |z| &= e^{-\zeta\omega_nT} = e^{-0.4} = 0.6703 \\ \angle z &= \omega_dT = 0.6928\ \text{rad} = 39.69^\circ \\ z_{1,2} &= 0.6703\angle \pm 39.69^\circ = 0.5158 \pm j0.4281 \end{aligned}

Step 2: Plant pulse transfer function

G(z)=(1−z−1) Z[1s2(s+2)]=(2T−1+e−2T)z+(1−e−2T−2Te−2T)4(z−1)(z−e−2T)=0.01758(z+0.8753)(z−1)(z−0.6703)\begin{aligned} G(z) &= (1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s^2(s+2)}\right] = \frac{(2T-1+e^{-2T})z + (1-e^{-2T}-2Te^{-2T})}{4(z-1)(z-e^{-2T})} \\ &= \frac{0.01758(z + 0.8753)}{(z-1)(z-0.6703)} \end{aligned}

Step 3: Angle deficiency at z1=0.5158+j0.4281z_1 = 0.5158 + j0.4281

FactorAngle at z1z_1
zero at −0.8753-0.8753+17.11∘+17.11^\circ
pole at 11−138.52∘-138.52^\circ
pole at 0.67030.6703−109.85∘-109.85^\circ
Total ∠G(z1)\angle G(z_1)−231.26∘-231.26^\circ

The angle condition requires −180∘-180^\circ, so the controller must add +51.26∘+51.26^\circ of phase lead.

Step 4: Lead controller

Take GD(z)=Kz−αz−βG_D(z) = K\dfrac{z-\alpha}{z-\beta}. Put the zero on the plant pole, α=0.6703\alpha = 0.6703, to cancel it. This zero adds +109.85∘+109.85^\circ. The pole must then contribute 109.85∘−51.26∘=58.59∘109.85^\circ - 51.26^\circ = 58.59^\circ:

β=0.5158−0.4281tan⁡58.59∘=0.2543\beta = 0.5158 - \frac{0.4281}{\tan 58.59^\circ} = 0.2543

Step 5: Gain from the magnitude condition

After cancellation, the open-loop function is 0.01758K(z+0.8753)(z−1)(z−0.2543)\dfrac{0.01758K(z+0.8753)}{(z-1)(z-0.2543)}, and ∣GDG∣=1|G_DG| = 1 at z1z_1:

K=∣z1−1∣ ∣z1−0.2543∣0.01758 ∣z1+0.8753∣=0.6464×0.50170.01758×1.4555=12.67K = \frac{|z_1-1|\,|z_1-0.2543|}{0.01758\,|z_1+0.8753|} = \frac{0.6464 \times 0.5017}{0.01758 \times 1.4555} = 12.67 GD(z)=12.67 z−0.6703z−0.2543G_D(z) = 12.67\,\frac{z - 0.6703}{z - 0.2543}

Step 6: Check

GD(z)G(z)=0.2228(z+0.8753)(z−1)(z−0.2543)Characteristic eq.:z2−1.0316z+0.4493=0\begin{aligned} G_D(z)G(z) &= \frac{0.2228(z + 0.8753)}{(z-1)(z-0.2543)} \\ \text{Characteristic eq.:}\quad z^2 &- 1.0316z + 0.4493 = 0 \end{aligned}

The roots are z=0.5158±j0.4281z = 0.5158 \pm j0.4281, the desired poles. ✔ This is a second-order closed loop, so the poles are exactly dominant.

Static velocity error constant:

Kv=lim⁡z→1(1−z−1)GDGT=10.2⋅0.2228×1.87530.7457=2.80 s−1K_v = \lim_{z\to1}\frac{(1-z^{-1})G_DG}{T} = \frac{1}{0.2}\cdot\frac{0.2228 \times 1.8753}{0.7457} = 2.80\ \text{s}^{-1}

Answer: GD(z)=12.67z−0.6703z−0.2543G_D(z) = 12.67\dfrac{z-0.6703}{z-0.2543}, a lead compensator, with Kv=2.80 s−1K_v = 2.80\ \text{s}^{-1}.

  • Asked 3 times
  • 2081 Chaitra · 12 marks
  • 2074 Bhadra · 12 marks
  • 2082 Kartik · 12 marks

Design a digital PI controller such that the dominant closed loop poles have damping ratio ζ=0.5, sampling period T = 1 and ωd/ωₛ=1/10 (10 samples per cycle of sinusoidal oscillation) and dead time of 2 sec. Also find Kᵥ and eₛₛ in response to unit ramp input. [Figure: unity-feedback loop: sampler → GD(z) → ZOH (1-e⁻ᵀˢ)/s → e⁻²ˢ/(s+1) → output]

Answer

Step 1: Plant pulse transfer function (T=1T = 1 s)

The dead time of 2 s is exactly 2T2T, so it becomes z−2z^{-2}:

G(z)=z−2(1−z−1) Z[1s(s+1)]=z−2(1−e−1)z−11−e−1z−1=0.6321z2(z−0.3679)\begin{aligned} G(z) &= z^{-2}(1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s(s+1)}\right] = z^{-2}\frac{(1-e^{-1})z^{-1}}{1-e^{-1}z^{-1}} \\ &= \frac{0.6321}{z^2(z - 0.3679)} \end{aligned}

Step 2: Desired dominant poles

With 10 samples per cycle, ωdT=2π/10=36∘\omega_dT = 2\pi/10 = 36^\circ, and

∣z∣=exp⁡(−2πζ1−ζ2⋅ωdωs)=exp⁡(−2π(0.5)0.866⋅110)=0.6958z1=0.6958∠36∘=0.5629+j0.4090\begin{aligned} |z| &= \exp\left(-\frac{2\pi\zeta}{\sqrt{1-\zeta^2}}\cdot\frac{\omega_d}{\omega_s}\right) = \exp\left(-\frac{2\pi(0.5)}{0.866}\cdot\frac{1}{10}\right) = 0.6958 \\ z_1 &= 0.6958\angle 36^\circ = 0.5629 + j0.4090 \end{aligned}

Step 3: PI controller and angle condition

GD(z)=KP+KI1−z−1=Kz−αz−1,K=KP+KI,  α=KPKP+KIG_D(z) = K_P + \frac{K_I}{1-z^{-1}} = K\frac{z-\alpha}{z-1}, \qquad K = K_P + K_I,\; \alpha = \frac{K_P}{K_P+K_I}

Angles at z1z_1:

FactorAngle
double pole at origin (z2z^2)−2(36∘)=−72∘-2(36^\circ) = -72^\circ
pole at 0.36790.3679−64.51∘-64.51^\circ
controller pole at 11−136.91∘-136.91^\circ
Sum of pole angles−273.41∘-273.41^\circ

For −180∘-180^\circ, the controller zero must contribute +93.41∘+93.41^\circ:

α=0.5629−0.4090tan⁡93.41∘=0.5629+0.0244=0.5873\alpha = 0.5629 - \frac{0.4090}{\tan 93.41^\circ} = 0.5629 + 0.0244 = 0.5873

Step 4: Gain KK

K=∣z1∣2 ∣z1−0.3679∣ ∣z1−1∣0.6321 ∣z1−0.5873∣=0.4841×0.4531×0.59860.6321×0.4097=0.5070K = \frac{|z_1|^2\,|z_1-0.3679|\,|z_1-1|}{0.6321\,|z_1-0.5873|} = \frac{0.4841 \times 0.4531 \times 0.5986}{0.6321 \times 0.4097} = 0.5070 GD(z)=0.5070 z−0.5873z−1G_D(z) = 0.5070\,\frac{z - 0.5873}{z - 1} KP=Kα=0.2977,KI=K(1−α)=0.2093K_P = K\alpha = 0.2977, \qquad K_I = K(1-\alpha) = 0.2093

Step 5: KvK_v and steady-state error for a ramp

Kv=lim⁡z→1(1−z−1)GD(z)G(z)T=K(1−α)T⋅0.63211−0.3679=0.2093×1=0.2093 s−1ess=1Kv=4.78\begin{aligned} K_v &= \lim_{z\to1}\frac{(1-z^{-1})G_D(z)G(z)}{T} = \frac{K(1-\alpha)}{T}\cdot\frac{0.6321}{1-0.3679} = 0.2093 \times 1 = 0.2093\ \text{s}^{-1} \\ e_{ss} &= \frac{1}{K_v} = 4.78 \end{aligned}

Check: the closed-loop characteristic equation z3(z−1)−0.3679z2(z−1)+0.3205(z−0.5873)=0z^3(z-1) - 0.3679z^2(z-1) + 0.3205(z-0.5873) = 0 has roots 0.5629±j0.40900.5629 \pm j0.4090, 0.75620.7562 and −0.5141-0.5141. The desired pair is obtained. The real pole at 0.7562 is close to the PI zero at 0.5873 and partly cancelled by it, but it makes the response a little slower than the pair alone suggests.

Answer: GD(z)=0.5070z−0.5873z−1G_D(z) = 0.5070\dfrac{z-0.5873}{z-1} (that is, KP=0.2977K_P = 0.2977, KI=0.2093K_I = 0.2093), with Kv=0.2093 s−1K_v = 0.2093\ \text{s}^{-1} and ess=4.78e_{ss} = 4.78 for a unit ramp.

  • Asked 2 times
  • 2082 Chaitra · 3 marks
  • 2077 Chaitra · 4 marks

Realize the given digital controller by series programming: G(z)=4(z-1)(z²+1.2z+1)/((z+0.1)(z²-0.3z+0.8)).

Answer

In series (cascade) programming, G(z)G(z) is factored into first- and second-order sections. Each section is realized by standard programming, and the sections are connected in cascade.

Step 1: Factor into sections (divide each factor by the highest power of zz)

G(z)=4⋅1−z−11+0.1z−1⏟G1(z)⋅1+1.2z−1+z−21−0.3z−1+0.8z−2⏟G2(z)G(z) = 4\cdot\underbrace{\frac{1 - z^{-1}}{1 + 0.1z^{-1}}}_{G_1(z)}\cdot\underbrace{\frac{1 + 1.2z^{-1} + z^{-2}}{1 - 0.3z^{-1} + 0.8z^{-2}}}_{G_2(z)}

Step 2: Difference equations

Section 1: G1=W1/XG_1 = W_1/X with

  • w1(k)=x(k)−0.1w1(k−1)w_1(k) = x(k) - 0.1w_1(k-1)
  • y1(k)=w1(k)−w1(k−1)y_1(k) = w_1(k) - w_1(k-1)

Section 2: input y1y_1, intermediate w2w_2

  • w2(k)=y1(k)+0.3w2(k−1)−0.8w2(k−2)w_2(k) = y_1(k) + 0.3w_2(k-1) - 0.8w_2(k-2)
  • y(k)=4[w2(k)+1.2w2(k−1)+w2(k−2)]y(k) = 4\big[w_2(k) + 1.2w_2(k-1) + w_2(k-2)\big]

Step 3: Block diagram (two standard-programmed sections in cascade)

Section 1, G1(z)G_1(z):

x(k)-->(S)------------o--[1]-------->(S)--> y1(k)
        ^             |               ^
        |          [z^-1]             |
        |             | w1(k-1)       |
        +<[-0.1]------o--[-1]---------+

Section 2, G2(z)G_2(z), followed by the gain 4:

y1(k)-->(S)------------o--[1]-------->(S)->[4]-> y(k)
         ^             |               ^
         |          [z^-1]             |
         |             | w2(k-1)       |
        (S)<[0.3]------o--[1.2]------>(S)
         ^             |               ^
         |          [z^-1]             |
         |             | w2(k-2)       |
         +<[-0.8]------o--[1]----------+

The realization uses only 1+2=31 + 2 = 3 delay elements, the minimum for a third-order filter. The overall gain 4 can be placed at either end.

Why series programming

  • A coefficient error in one section moves only that section's poles and zeros. The structure is less sensitive to coefficient quantization than direct programming of the whole third-order polynomial.
  • The complex poles z=0.15±j0.882z = 0.15 \pm j0.882 (with ∣z∣=0.894|z| = 0.894) are kept together in one real-coefficient second-order section.
  • Asked 2 times
  • 2081 Chaitra · 5 marks
  • 2078 Chaitra · 4 marks

Consider the digital filter defined by parallel programming: Y(z)/X(z)=4(z-1)(z²+1.2z+1)/((z+0.1)(z²-0.3z+0.8)).

Answer

In parallel programming, G(z)G(z) is expanded into partial fractions in z−1z^{-1}. Each term is realized separately (first- or second-order), and the outputs are added.

Step 1: Write in powers of z−1z^{-1}

Y(z)X(z)=4(1−z−1)(1+1.2z−1+z−2)(1+0.1z−1)(1−0.3z−1+0.8z−2)\frac{Y(z)}{X(z)} = \frac{4(1-z^{-1})(1+1.2z^{-1}+z^{-2})}{(1+0.1z^{-1})(1-0.3z^{-1}+0.8z^{-2})}

The numerator and denominator have equal degree. So there is a constant term, plus a first-order term for the real pole and a second-order term for the complex pair, z=0.15±j0.882z = 0.15 \pm j0.882.

Step 2: Partial fractions (let w=z−1w = z^{-1})

G=C0+C11+0.1w+D0+D1w1−0.3w+0.8w2G = C_0 + \frac{C_1}{1+0.1w} + \frac{D_0 + D_1w}{1 - 0.3w + 0.8w^2}
  • C0=lim⁡w→∞G=4(−1)(1)(0.1)(0.8)=−50C_0 = \lim_{w\to\infty} G = \dfrac{4(-1)(1)}{(0.1)(0.8)} = -50
  • C1=4(1−w)(1+1.2w+w2)1−0.3w+0.8w2∣w=−10=4(11)(89)84=46.619C_1 = \dfrac{4(1-w)(1+1.2w+w^2)}{1-0.3w+0.8w^2}\Big|_{w=-10} = \dfrac{4(11)(89)}{84} = 46.619
  • D0D_0 and D1D_1: at w=0w = 0, 4=−50+46.619+D04 = -50 + 46.619 + D_0, so D0=7.381D_0 = 7.381. At w=1w = 1 (that is, z=1z = 1, where G=0G = 0): 0=−50+46.6191.1+7.381+D11.50 = -50 + \dfrac{46.619}{1.1} + \dfrac{7.381 + D_1}{1.5}, so D1=4.0476D_1 = 4.0476.
Y(z)X(z)=−50+46.6191+0.1z−1+7.381+4.0476z−11−0.3z−1+0.8z−2\frac{Y(z)}{X(z)} = -50 + \frac{46.619}{1 + 0.1z^{-1}} + \frac{7.381 + 4.0476z^{-1}}{1 - 0.3z^{-1} + 0.8z^{-2}}

Check: At z=2z = 2, both forms give the same value. At z→∞z \to \infty: −50+46.619+7.381=4-50 + 46.619 + 7.381 = 4. ✔

Step 3: Difference equations of the branches

  • y1(k)=−50x(k)y_1(k) = -50x(k)
  • w2(k)=x(k)−0.1w2(k−1)w_2(k) = x(k) - 0.1w_2(k-1), and y2(k)=46.619 w2(k)y_2(k) = 46.619\,w_2(k)
  • w3(k)=x(k)+0.3w3(k−1)−0.8w3(k−2)w_3(k) = x(k) + 0.3w_3(k-1) - 0.8w_3(k-2), and y3(k)=7.381w3(k)+4.0476w3(k−1)y_3(k) = 7.381w_3(k) + 4.0476w_3(k-1)
  • y(k)=y1(k)+y2(k)+y3(k)y(k) = y_1(k) + y_2(k) + y_3(k)

Step 4: Block diagram

Overall structure:

        +-------------[-50]-------------+ y1
        |                               v
x(k)-o--+-->[ 46.619/(1+0.1z^-1) ]--->(S)--> y(k)
        |                       y2      ^
        +-->[ second-order branch ]-----+ y3

Branch 2:

x(k)-->(S)------------o--[1]-------->(S)->[46.619]-> y2(k)
        ^             |
        |          [z^-1]
        |             | w2(k-1)
        +<[-0.1]------o

Branch 3:

x(k)-->(S)------------o--[7.381]---->(S)--> y3(k)
        ^             |               ^
        |          [z^-1]             |
        |             | w3(k-1)       |
       (S)<[0.3]------o--[4.0476]-----+
        ^             |
        |          [z^-1]
        |             | w3(k-2)
        +<[-0.8]------o

Total delays: 1+2=31 + 2 = 3, the minimum for a third-order controller. A coefficient error in one branch affects only that branch's pole(s).

  • Asked 2 times
  • 2071 Magh · 10 marks
  • 2070 Magh · 12 marks

Design a digital controller such that the compensated system should have damping ratio ζ=0.5 and settling time = 2 seconds of the following system using root locus approach. [Figure: unity-feedback loop: R(s) → summing junction → E(s) → sampler (period T) → digital controller G₁*(s) → ZOH → 1/s(s+1) → C(s)]

Answer

The sampling period is not given, so we choose it first.

Step 1: Desired poles and choice of TT

From ζ=0.5\zeta = 0.5 and ts=4/(ζωn)=2t_s = 4/(\zeta\omega_n) = 2 s:

ζωn=2,ωn=4 rad/s,ωd=41−0.25=3.464 rad/s\zeta\omega_n = 2, \quad \omega_n = 4\ \text{rad/s}, \quad \omega_d = 4\sqrt{1-0.25} = 3.464\ \text{rad/s}

Choose T=0.2T = 0.2 s. Then ωs=2π/T=31.4\omega_s = 2\pi/T = 31.4 rad/s, giving about 9 samples per damped cycle. This is fast enough (the usual rule is at least 8–10), and the ZOH adds little phase lag.

∣z∣=e−ζωnT=e−0.4=0.6703∠z=ωdT=0.6928 rad=39.69∘z1,2=0.5158±j0.4281\begin{aligned} |z| &= e^{-\zeta\omega_nT} = e^{-0.4} = 0.6703 \\ \angle z &= \omega_dT = 0.6928\ \text{rad} = 39.69^\circ \\ z_{1,2} &= 0.5158 \pm j0.4281 \end{aligned}

Step 2: Plant with ZOH

G(z)=(1−z−1) Z[1s2(s+1)]=(T−1+e−T)z+(1−e−T−Te−T)(z−1)(z−e−T)=0.01873(z+0.9355)(z−1)(z−0.8187)\begin{aligned} G(z) &= (1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s^2(s+1)}\right] = \frac{(T-1+e^{-T})z + (1-e^{-T}-Te^{-T})}{(z-1)(z-e^{-T})} \\ &= \frac{0.01873(z + 0.9355)}{(z-1)(z-0.8187)} \end{aligned}

Step 3: Angle condition at z1z_1

FactorAngle
zero at −0.9355-0.9355+16.44∘+16.44^\circ
pole at 11−138.52∘-138.52^\circ
pole at 0.81870.8187−125.28∘-125.28^\circ
Total−247.36∘-247.36^\circ

The angle deficiency is 247.36∘−180∘=67.36∘247.36^\circ - 180^\circ = 67.36^\circ, so a lead controller is needed.

Step 4: Lead controller GD(z)=Kz−αz−βG_D(z) = K\dfrac{z-\alpha}{z-\beta}

Cancel the slow plant pole with the zero: α=0.8187\alpha = 0.8187, which adds +125.28∘+125.28^\circ. The controller pole must give 125.28∘−67.36∘=57.92∘125.28^\circ - 67.36^\circ = 57.92^\circ:

β=0.5158−0.4281tan⁡57.92∘=0.2474\beta = 0.5158 - \frac{0.4281}{\tan 57.92^\circ} = 0.2474

Step 5: Gain

K=∣z1−1∣ ∣z1−0.2474∣0.01873 ∣z1+0.9355∣=0.6464×0.50530.01873×1.5131=11.52K = \frac{|z_1-1|\,|z_1-0.2474|}{0.01873\,|z_1+0.9355|} = \frac{0.6464 \times 0.5053}{0.01873 \times 1.5131} = 11.52 GD(z)=11.52 z−0.8187z−0.2474G_D(z) = 11.52\,\frac{z - 0.8187}{z - 0.2474}

Step 6: Check

The open loop is 0.2158(z+0.9355)(z−1)(z−0.2474)\dfrac{0.2158(z+0.9355)}{(z-1)(z-0.2474)}. The characteristic equation is z2−1.0316z+0.4493=0z^2 - 1.0316z + 0.4493 = 0, whose roots are 0.5158±j0.42810.5158 \pm j0.4281. ✔

Kv=1Tlim⁡z→1(1−z−1)GDG=0.2158×1.93550.2×0.7526=2.78 s−1K_v = \frac{1}{T}\lim_{z\to1}(1-z^{-1})G_DG = \frac{0.2158 \times 1.9355}{0.2 \times 0.7526} = 2.78\ \text{s}^{-1}

Answer (for T=0.2T = 0.2 s): GD(z)=11.52z−0.8187z−0.2474G_D(z) = 11.52\dfrac{z-0.8187}{z-0.2474}. The closed-loop poles are at 0.5158±j0.42810.5158 \pm j0.4281 (ζ=0.5\zeta = 0.5, ts=2t_s = 2 s), and Kv=2.78 s−1K_v = 2.78\ \text{s}^{-1}. A different TT changes the numbers but not the method.

  • Asked 2 times
  • 2080 Chaitra · 12 marks
  • 2075 Bhadra · 12 marks

Design a digital proportional-plus-derivative controller for the plant as shown in figure below. It is desired that the damping ratio ζ of the dominant closed loop poles be 0.5 and the undamped natural frequency be 4 rad/sec. The sampling period is 0.1 sec. [Figure: R(z) → summing junction → sampler (T) → digital PD controller → ZOH (1-e⁻ᵀˢ)/s → 1/s² → C(z); feedback path H(s) (unity in the 2080 paper)]

Answer

Step 1: Plant with ZOH (T=0.1T = 0.1 s)

G(z)=(1−z−1) Z[1s3]=(1−z−1)T2z(z+1)2(z−1)3=T2(z+1)2(z−1)2=0.005(z+1)(z−1)2G(z) = (1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s^3}\right] = (1-z^{-1})\frac{T^2z(z+1)}{2(z-1)^3} = \frac{T^2(z+1)}{2(z-1)^2} = \frac{0.005(z+1)}{(z-1)^2}

Step 2: Desired closed-loop poles

With ζ=0.5\zeta = 0.5 and ωn=4\omega_n = 4:

ζωn=2,ωd=40.75=3.464 rad/s∣z∣=e−ζωnT=e−0.2=0.8187∠z=ωdT=0.3464 rad=19.85∘z1=0.7701+j0.2780\begin{aligned} \zeta\omega_n &= 2, \qquad \omega_d = 4\sqrt{0.75} = 3.464\ \text{rad/s} \\ |z| &= e^{-\zeta\omega_nT} = e^{-0.2} = 0.8187 \\ \angle z &= \omega_dT = 0.3464\ \text{rad} = 19.85^\circ \\ z_1 &= 0.7701 + j0.2780 \end{aligned}

Step 3: Digital PD controller

GD(z)=KP+KD(1−z−1)=(KP+KD)z−αz=Kz−αz,α=KDKP+KDG_D(z) = K_P + K_D(1-z^{-1}) = (K_P+K_D)\frac{z - \alpha}{z} = K\frac{z-\alpha}{z}, \qquad \alpha = \frac{K_D}{K_P+K_D}

Step 4: Angle condition at z1z_1

FactorAngle
plant zero at −1-1+8.92∘+8.92^\circ
double plant pole at 11−2(129.59∘)=−259.19∘-2(129.59^\circ) = -259.19^\circ
controller pole at 00−19.85∘-19.85^\circ
Sum−270.11∘-270.11^\circ

For a total of −180∘-180^\circ, the controller zero must give +90.11∘+90.11^\circ:

α=0.7701−0.2780tan⁡90.11∘=0.7706\alpha = 0.7701 - \frac{0.2780}{\tan 90.11^\circ} = 0.7706

The zero lies almost directly below the desired pole.

Step 5: Magnitude condition

K=∣z1∣ ∣z1−1∣20.005 ∣z1+1∣ ∣z1−0.7706∣=0.8187×0.360720.005×1.7918×0.2780=42.78K = \frac{|z_1|\,|z_1-1|^2}{0.005\,|z_1+1|\,|z_1-0.7706|} = \frac{0.8187 \times 0.3607^2}{0.005 \times 1.7918 \times 0.2780} = 42.78 GD(z)=42.78 z−0.7706z=42.78 (1−0.7706z−1)G_D(z) = 42.78\,\frac{z - 0.7706}{z} = 42.78\,(1 - 0.7706z^{-1})

Step 6: PD gains

KP+KD=42.78,KD=Kα=32.97,KP=K(1−α)=9.81K_P + K_D = 42.78, \qquad K_D = K\alpha = 32.97, \qquad K_P = K(1-\alpha) = 9.81

Step 7: Check

1+GDG=0  ⇒  z3−1.7861z2+1.0491z−0.1648=01 + G_DG = 0 \;\Rightarrow\; z^3 - 1.7861z^2 + 1.0491z - 0.1648 = 0

The roots are z=0.7701±j0.2780z = 0.7701 \pm j0.2780 (the desired pair) and z=0.2459z = 0.2459. The third pole is much closer to the origin, so it decays fast, and the complex pair is dominant. ✔

Answer: GD(z)=42.78z−0.7706zG_D(z) = 42.78\dfrac{z-0.7706}{z}, i.e. KP=9.81K_P = 9.81 and KD=32.97K_D = 32.97. The difference equation is u(k)=42.78e(k)−32.97e(k−1)u(k) = 42.78e(k) - 32.97e(k-1).

  • 2080 Chaitra · 8 marks

Realize the given digital filter by ladder programming: G(z)=(2+2.2z⁻¹+0.2z⁻²)/(1+0.4z⁻¹-0.1z⁻²).

Answer

In positive powers of zz:

G(z)=2+2.2z−1+0.2z−21+0.4z−1−0.1z−2=2z2+2.2z+0.2z2+0.4z−0.1G(z) = \frac{2 + 2.2z^{-1} + 0.2z^{-2}}{1 + 0.4z^{-1} - 0.1z^{-2}} = \frac{2z^2 + 2.2z + 0.2}{z^2 + 0.4z - 0.1}

Ladder programming expands G(z)G(z) as:

G(z)=A0+1B1z+1A1+1B2z+1A2G(z) = A_0 + \cfrac{1}{B_1z + \cfrac{1}{A_1 + \cfrac{1}{B_2z + \cfrac{1}{A_2}}}}

Step 1: A0A_0

G(z)=2+(2z2+2.2z+0.2)−2(z2+0.4z−0.1)z2+0.4z−0.1=2+1.4z+0.4z2+0.4z−0.1G(z) = 2 + \frac{(2z^2+2.2z+0.2) - 2(z^2+0.4z-0.1)}{z^2+0.4z-0.1} = 2 + \frac{1.4z + 0.4}{z^2 + 0.4z - 0.1}

Step 2: B1B_1

z2+0.4z−0.11.4z+0.4=0.7143z+0.1143z−0.11.4z+0.4\frac{z^2 + 0.4z - 0.1}{1.4z + 0.4} = 0.7143z + \frac{0.1143z - 0.1}{1.4z + 0.4}

The remainder is 0.4z−0.7143(0.4)z=0.1143z0.4z - 0.7143(0.4)z = 0.1143z (exactly 4z/354z/35). So B1=0.7143B_1 = 0.7143.

Step 3: A1A_1

1.4z+0.40.1143z−0.1=12.25+0.4+12.25(0.1)0.1143z−0.1=12.25+1.6250.1143z−0.1\frac{1.4z + 0.4}{0.1143z - 0.1} = 12.25 + \frac{0.4 + 12.25(0.1)}{0.1143z - 0.1} = 12.25 + \frac{1.625}{0.1143z - 0.1}

So A1=12.25A_1 = 12.25.

Step 4: B2B_2 and A2A_2

0.1143z−0.11.625=0.07033z−0.06154=B2z+1A2\frac{0.1143z - 0.1}{1.625} = 0.07033z - 0.06154 = B_2z + \frac{1}{A_2}

So B2=0.07033B_2 = 0.07033 and A2=−16.25A_2 = -16.25.

G(z)=2+10.7143z+112.25+10.07033z+1−16.25G(z) = 2 + \cfrac{1}{0.7143z + \cfrac{1}{12.25 + \cfrac{1}{0.07033z + \cfrac{1}{-16.25}}}}
A0A_0B1B_1A1A_1B2B_2A2A_2
20.714312.250.07033−16.25

Ladder block diagram

X(z)--o-----------------[A0]--------------->(S)--> Y(z)
      |                                      ^
      v +                                    | Y1
     (S1)-->[z^-1/B1]-------------o----------+
      ^ -                         | +
      |                           v
      o<--E1--[1/A1]<----------- (S2)
      |                           ^ -
      v +                         |
     (S3)-->[z^-1/B2]-------------o Y2
      ^ -                         |
      |                           |
      +<--E2--[1/A2]<-------------+

Signal equations of the ladder (oo = take-off point, (S) = summer):

Y1=z−1B1(X−E1),E1=1A1(Y1−Y2)Y2=z−1B2(E1−E2),E2=1A2Y2Y=A0X+Y1\begin{aligned} Y_1 &= \tfrac{z^{-1}}{B_1}(X - E_1), & E_1 &= \tfrac{1}{A_1}(Y_1 - Y_2) \\ Y_2 &= \tfrac{z^{-1}}{B_2}(E_1 - E_2), & E_2 &= \tfrac{1}{A_2}Y_2 \\ Y &= A_0X + Y_1 \end{aligned}

Numerical gains: 1/B1=1.41/B_1 = 1.4, 1/A1=0.081631/A_1 = 0.08163, 1/B2=14.221/B_2 = 14.22, 1/A2=−0.061541/A_2 = -0.06154.

Substituting back reproduces G(z)G(z) exactly, so the realization is correct. It uses two delay elements.

  • 2076 Bhadra · 2+6 marks

Higher order pulse transfer functions are generally realized by decomposing it in to several lower order pulse transfer function why? Consider a digital filter shown below. Realize this filter in ladder scheme. G(z)=(2+2.2z⁻¹+0.2z⁻²)/(1+0.4z⁻¹-0.12z⁻²)

Answer

Why higher-order pulse transfer functions are decomposed

A high-order G(z)G(z) realized directly (direct or standard programming) is very sensitive to coefficient errors. The controller coefficients are stored with finite word length. A small rounding error in one coefficient of a high-order denominator can move all the poles a lot, even outside the unit circle, and make the filter unstable. So the transfer function is split into first- and second-order blocks (series, parallel or ladder programming):

  • A coefficient error then affects only the one or two poles of that block.
  • The structure is less sensitive to quantization, and the computations are better conditioned.
  • Low-order blocks are easier to program, test and scale.

Ladder realization

Write the filter in positive powers of zz:

G(z)=2+2.2z−1+0.2z−21+0.4z−1−0.12z−2=2z2+2.2z+0.2z2+0.4z−0.12G(z) = \frac{2 + 2.2z^{-1} + 0.2z^{-2}}{1 + 0.4z^{-1} - 0.12z^{-2}} = \frac{2z^2 + 2.2z + 0.2}{z^2 + 0.4z - 0.12}

In ladder programming, G(z)G(z) is expanded as a continued fraction:

G(z)=A0+1B1z+1A1+1B2z+1A2G(z) = A_0 + \cfrac{1}{B_1z + \cfrac{1}{A_1 + \cfrac{1}{B_2z + \cfrac{1}{A_2}}}}

Each 1/(Biz)1/(B_iz) is realized by a delay z−1/Biz^{-1}/B_i, and each AiA_i by a constant.

Step 1: A0A_0.

G(z)=2+1.4z+0.44z2+0.4z−0.12G(z) = 2 + \frac{1.4z + 0.44}{z^2 + 0.4z - 0.12}

So A0=2A_0 = 2.

Step 2: B1B_1.

z2+0.4z−0.121.4z+0.44=0.7143z+0.0857z−0.121.4z+0.44\frac{z^2 + 0.4z - 0.12}{1.4z + 0.44} = 0.7143z + \frac{0.0857z - 0.12}{1.4z + 0.44}

So B1=1/1.4=0.7143B_1 = 1/1.4 = 0.7143.

Step 3: A1A_1.

1.4z+0.440.0857z−0.12=16.333+2.40.0857z−0.12\frac{1.4z + 0.44}{0.0857z - 0.12} = 16.333 + \frac{2.4}{0.0857z - 0.12}

So A1=49/3=16.333A_1 = 49/3 = 16.333.

Step 4: B2B_2 and A2A_2.

0.0857z−0.122.4=0.0357z−0.05\frac{0.0857z - 0.12}{2.4} = 0.0357z - 0.05

So B2=1/28=0.0357B_2 = 1/28 = 0.0357 and A2=−1/0.05=−20A_2 = -1/0.05 = -20.

G(z)=2+10.7143z+116.333+10.0357z−0.05G(z) = 2 + \cfrac{1}{0.7143z + \cfrac{1}{16.333 + \cfrac{1}{0.0357z - 0.05}}}
A0A_0B1B_1A1A_1B2B_2A2A_2
20.714316.3330.0357−20

Ladder diagram:

X(z)--o-----------------[A0]--------------->(S)--> Y(z)
      |                                      ^
      v +                                    | Y1
     (S1)-->[z^-1/B1]-------------o----------+
      ^ -                         | +
      |                           v
      o<--E1--[1/A1]<----------- (S2)
      |                           ^ -
      v +                         |
     (S3)-->[z^-1/B2]-------------o Y2
      ^ -                         |
      |                           |
      +<--E2--[1/A2]<-------------+

Signal equations of the ladder (oo = take-off point, (S) = summer):

Y1=z−1B1(X−E1),E1=1A1(Y1−Y2)Y2=z−1B2(E1−E2),E2=1A2Y2Y=A0X+Y1\begin{aligned} Y_1 &= \tfrac{z^{-1}}{B_1}(X - E_1), & E_1 &= \tfrac{1}{A_1}(Y_1 - Y_2) \\ Y_2 &= \tfrac{z^{-1}}{B_2}(E_1 - E_2), & E_2 &= \tfrac{1}{A_2}Y_2 \\ Y &= A_0X + Y_1 \end{aligned}

With the values: 1/B1=1.41/B_1 = 1.4, 1/A1=0.061221/A_1 = 0.06122, 1/B2=281/B_2 = 28, 1/A2=−0.051/A_2 = -0.05. Only two delays are needed.

The ladder needs only two delays. Because of its continued-fraction structure, it has low sensitivity to coefficient rounding.

  • 2073 Magh · 6 marks

Consider the digital filter defined by G(z)=(2+2.2z⁻¹+0.2z⁻²)/(1+0.4z⁻¹-0.12z⁻²). Realize this filter in the parallel scheme.

Answer

In parallel programming, G(z)G(z) is expanded into partial fractions in z−1z^{-1}, and each term is realized as a separate branch.

Step 1: Factor the denominator

1+0.4z−1−0.12z−2=(1+0.6z−1)(1−0.2z−1)1 + 0.4z^{-1} - 0.12z^{-2} = (1 + 0.6z^{-1})(1 - 0.2z^{-1})

The poles are z=−0.6z = -0.6 and z=0.2z = 0.2.

Step 2: Partial fractions

The numerator and denominator have the same degree in z−1z^{-1}, so

G(z)=C0+C11−0.2z−1+C21+0.6z−1G(z) = C_0 + \frac{C_1}{1 - 0.2z^{-1}} + \frac{C_2}{1 + 0.6z^{-1}}

Let w=z−1w = z^{-1}.

C0=lim⁡w→∞2+2.2w+0.2w21+0.4w−0.12w2=0.2−0.12=−1.6667C1=2+2.2w+0.2w21+0.6w∣w=5=2+11+54=4.5C2=2+2.2w+0.2w21−0.2w∣w=−5/3=2−3.6667+0.55561.3333=−0.8333\begin{aligned} C_0 &= \lim_{w\to\infty}\frac{2 + 2.2w + 0.2w^2}{1 + 0.4w - 0.12w^2} = \frac{0.2}{-0.12} = -1.6667 \\ C_1 &= \frac{2 + 2.2w + 0.2w^2}{1 + 0.6w}\Big|_{w=5} = \frac{2 + 11 + 5}{4} = 4.5 \\ C_2 &= \frac{2 + 2.2w + 0.2w^2}{1 - 0.2w}\Big|_{w=-5/3} = \frac{2 - 3.6667 + 0.5556}{1.3333} = -0.8333 \end{aligned} G(z)=−1.6667+4.51−0.2z−1−0.83331+0.6z−1G(z) = -1.6667 + \frac{4.5}{1 - 0.2z^{-1}} - \frac{0.8333}{1 + 0.6z^{-1}}

Check at z−1=0z^{-1} = 0: −1.6667+4.5−0.8333=2-1.6667 + 4.5 - 0.8333 = 2. ✔

Step 3: Difference equations

  • w1(k)=x(k)+0.2w1(k−1)w_1(k) = x(k) + 0.2w_1(k-1)
  • w2(k)=x(k)−0.6w2(k−1)w_2(k) = x(k) - 0.6w_2(k-1)
  • y(k)=−1.6667x(k)+4.5w1(k)−0.8333w2(k)y(k) = -1.6667x(k) + 4.5w_1(k) - 0.8333w_2(k)

Step 4: Block diagram

Overall structure (three branches added):

        +-------------[-1.6667]-------------+
        |                                   v
x(k)-o--+-->[ 4.5/(1-0.2z^-1) ]----------->(S)--> y(k)
        |                                   ^
        +-->[ -0.8333/(1+0.6z^-1) ]---------+

Branch 1:

x(k)-->(S)------------o--[1]-------->(S)->[4.5]-> y1(k)
        ^             |
        |          [z^-1]
        |             | w1(k-1)
        +<[0.2]-------o

Branch 2:

x(k)-->(S)------------o--[1]-------->(S)->[-0.8333]-> y2(k)
        ^             |
        |          [z^-1]
        |             | w2(k-1)
        +<[-0.6]------o

Two delays are used, one per pole.

  • 2072 Asoj · 8 marks

Consider the digital filter defined by G(z)=(2+2.2z⁻¹+0.2z⁻²)/(1+0.4z⁻¹-0.12z⁻²). Realize this filter in the parallel scheme and ladder scheme.

Answer

Given:

G(z)=2+2.2z−1+0.2z−21+0.4z−1−0.12z−2G(z) = \frac{2 + 2.2z^{-1} + 0.2z^{-2}}{1 + 0.4z^{-1} - 0.12z^{-2}}

(a) Parallel scheme

In parallel programming, G(z)G(z) is expanded into partial fractions in z−1z^{-1}, and each term is realized as a separate branch.

Step 1: Factor the denominator

1+0.4z−1−0.12z−2=(1+0.6z−1)(1−0.2z−1)1 + 0.4z^{-1} - 0.12z^{-2} = (1 + 0.6z^{-1})(1 - 0.2z^{-1})

The poles are z=−0.6z = -0.6 and z=0.2z = 0.2.

Step 2: Partial fractions The numerator and denominator have the same degree in z−1z^{-1}, so

G(z)=C0+C11−0.2z−1+C21+0.6z−1G(z) = C_0 + \frac{C_1}{1 - 0.2z^{-1}} + \frac{C_2}{1 + 0.6z^{-1}}

Let w=z−1w = z^{-1}.

C0=lim⁡w→∞2+2.2w+0.2w21+0.4w−0.12w2=0.2−0.12=−1.6667C1=2+2.2w+0.2w21+0.6w∣w=5=2+11+54=4.5C2=2+2.2w+0.2w21−0.2w∣w=−5/3=2−3.6667+0.55561.3333=−0.8333\begin{aligned} C_0 &= \lim_{w\to\infty}\frac{2 + 2.2w + 0.2w^2}{1 + 0.4w - 0.12w^2} = \frac{0.2}{-0.12} = -1.6667 \\ C_1 &= \frac{2 + 2.2w + 0.2w^2}{1 + 0.6w}\Big|_{w=5} = \frac{2 + 11 + 5}{4} = 4.5 \\ C_2 &= \frac{2 + 2.2w + 0.2w^2}{1 - 0.2w}\Big|_{w=-5/3} = \frac{2 - 3.6667 + 0.5556}{1.3333} = -0.8333 \end{aligned} G(z)=−1.6667+4.51−0.2z−1−0.83331+0.6z−1G(z) = -1.6667 + \frac{4.5}{1 - 0.2z^{-1}} - \frac{0.8333}{1 + 0.6z^{-1}}

Check at z−1=0z^{-1} = 0: −1.6667+4.5−0.8333=2-1.6667 + 4.5 - 0.8333 = 2. ✔

Step 3: Difference equations

  • w1(k)=x(k)+0.2w1(k−1)w_1(k) = x(k) + 0.2w_1(k-1)
  • w2(k)=x(k)−0.6w2(k−1)w_2(k) = x(k) - 0.6w_2(k-1)
  • y(k)=−1.6667x(k)+4.5w1(k)−0.8333w2(k)y(k) = -1.6667x(k) + 4.5w_1(k) - 0.8333w_2(k)

Step 4: Block diagram Overall structure (three branches added):

        +-------------[-1.6667]-------------+
        |                                   v
x(k)-o--+-->[ 4.5/(1-0.2z^-1) ]----------->(S)--> y(k)
        |                                   ^
        +-->[ -0.8333/(1+0.6z^-1) ]---------+

Branch 1:

x(k)-->(S)------------o--[1]-------->(S)->[4.5]-> y1(k)
        ^             |
        |          [z^-1]
        |             | w1(k-1)
        +<[0.2]-------o

Branch 2:

x(k)-->(S)------------o--[1]-------->(S)->[-0.8333]-> y2(k)
        ^             |
        |          [z^-1]
        |             | w2(k-1)
        +<[-0.6]------o

Two delays are used, one per pole.

(b) Ladder scheme

Write the filter in positive powers of zz:

G(z)=2+2.2z−1+0.2z−21+0.4z−1−0.12z−2=2z2+2.2z+0.2z2+0.4z−0.12G(z) = \frac{2 + 2.2z^{-1} + 0.2z^{-2}}{1 + 0.4z^{-1} - 0.12z^{-2}} = \frac{2z^2 + 2.2z + 0.2}{z^2 + 0.4z - 0.12}

In ladder programming, G(z)G(z) is expanded as a continued fraction:

G(z)=A0+1B1z+1A1+1B2z+1A2G(z) = A_0 + \cfrac{1}{B_1z + \cfrac{1}{A_1 + \cfrac{1}{B_2z + \cfrac{1}{A_2}}}}

Each 1/(Biz)1/(B_iz) is realized by a delay z−1/Biz^{-1}/B_i, and each AiA_i by a constant.

Step 1: A0A_0.

G(z)=2+1.4z+0.44z2+0.4z−0.12G(z) = 2 + \frac{1.4z + 0.44}{z^2 + 0.4z - 0.12}

So A0=2A_0 = 2.

Step 2: B1B_1.

z2+0.4z−0.121.4z+0.44=0.7143z+0.0857z−0.121.4z+0.44\frac{z^2 + 0.4z - 0.12}{1.4z + 0.44} = 0.7143z + \frac{0.0857z - 0.12}{1.4z + 0.44}

So B1=1/1.4=0.7143B_1 = 1/1.4 = 0.7143.

Step 3: A1A_1.

1.4z+0.440.0857z−0.12=16.333+2.40.0857z−0.12\frac{1.4z + 0.44}{0.0857z - 0.12} = 16.333 + \frac{2.4}{0.0857z - 0.12}

So A1=49/3=16.333A_1 = 49/3 = 16.333.

Step 4: B2B_2 and A2A_2.

0.0857z−0.122.4=0.0357z−0.05\frac{0.0857z - 0.12}{2.4} = 0.0357z - 0.05

So B2=1/28=0.0357B_2 = 1/28 = 0.0357 and A2=−1/0.05=−20A_2 = -1/0.05 = -20.

G(z)=2+10.7143z+116.333+10.0357z−0.05G(z) = 2 + \cfrac{1}{0.7143z + \cfrac{1}{16.333 + \cfrac{1}{0.0357z - 0.05}}}
A0A_0B1B_1A1A_1B2B_2A2A_2
20.714316.3330.0357−20

Ladder diagram:

X(z)--o-----------------[A0]--------------->(S)--> Y(z)
      |                                      ^
      v +                                    | Y1
     (S1)-->[z^-1/B1]-------------o----------+
      ^ -                         | +
      |                           v
      o<--E1--[1/A1]<----------- (S2)
      |                           ^ -
      v +                         |
     (S3)-->[z^-1/B2]-------------o Y2
      ^ -                         |
      |                           |
      +<--E2--[1/A2]<-------------+

Signal equations of the ladder (oo = take-off point, (S) = summer):

Y1=z−1B1(X−E1),E1=1A1(Y1−Y2)Y2=z−1B2(E1−E2),E2=1A2Y2Y=A0X+Y1\begin{aligned} Y_1 &= \tfrac{z^{-1}}{B_1}(X - E_1), & E_1 &= \tfrac{1}{A_1}(Y_1 - Y_2) \\ Y_2 &= \tfrac{z^{-1}}{B_2}(E_1 - E_2), & E_2 &= \tfrac{1}{A_2}Y_2 \\ Y &= A_0X + Y_1 \end{aligned}

With the values: 1/B1=1.41/B_1 = 1.4, 1/A1=0.061221/A_1 = 0.06122, 1/B2=281/B_2 = 28, 1/A2=−0.051/A_2 = -0.05. Only two delays are needed.

  • 2081 Chaitra · 3 marks

Realize the given digital controller by direct programming: Y(z)/X(z)=(6z²+7z)/(10z³-6z²+7z+5).

Answer

Direct programming realizes the difference equation exactly as written. It uses one chain of delays for past inputs and another for past outputs.

Step 1: Write in powers of z−1z^{-1}

Divide the numerator and denominator by 10z310z^3:

Y(z)X(z)=0.6z−1+0.7z−21−0.6z−1+0.7z−2+0.5z−3\frac{Y(z)}{X(z)} = \frac{0.6z^{-1} + 0.7z^{-2}}{1 - 0.6z^{-1} + 0.7z^{-2} + 0.5z^{-3}}

Step 2: Difference equation

y(k)=0.6y(k−1)−0.7y(k−2)−0.5y(k−3)+0.6x(k−1)+0.7x(k−2)y(k) = 0.6y(k-1) - 0.7y(k-2) - 0.5y(k-3) + 0.6x(k-1) + 0.7x(k-2)

Step 3: Block diagram (direct programming)

x(k)
  o              (S)--------------o--> y(k)
  |               ^               |
[z^-1]            |             [z^-1]
  | x(k-1)        |               | y(k-1)
  o--[0.6]------>(S)<[0.6]--------o
  |               ^               |
[z^-1]            |             [z^-1]
  | x(k-2)        |               | y(k-2)
  o--[0.7]------>(S)<[-0.7]-------o
                  ^               |
                  |             [z^-1]
                  |               | y(k-3)
                  +<[-0.5]--------o
  • The left delay chain stores x(k−1)x(k-1) and x(k−2)x(k-2). The right chain stores y(k−1)y(k-1), y(k−2)y(k-2) and y(k−3)y(k-3).
  • Feed-forward gains are 0.6 and 0.7. Feedback gains are +0.6+0.6, −0.7-0.7 and −0.5-0.5 (the negatives of the denominator coefficients).
  • There is no direct path from x(k)x(k) to y(k)y(k), because the z0z^0 term of the numerator is zero.
  • Direct programming needs m+n=2+3=5m + n = 2 + 3 = 5 delays. Standard programming would need only 3.
  • 2079 Chaitra · 8 marks

Consider the digital filter defined by G(z)=(6z²+7z)/(10z³+6z²+7z+5). Realize this filter in the standard and series scheme.

Answer

Divide by 10z310z^3:

G(z)=6z2+7z10z3+6z2+7z+5=0.6z−1+0.7z−21+0.6z−1+0.7z−2+0.5z−3G(z) = \frac{6z^2 + 7z}{10z^3 + 6z^2 + 7z + 5} = \frac{0.6z^{-1} + 0.7z^{-2}}{1 + 0.6z^{-1} + 0.7z^{-2} + 0.5z^{-3}}

(a) Standard programming

Introduce an intermediate variable W(z)=X(z)/(denominator)W(z) = X(z)/(\text{denominator}):

w(k)=x(k)−0.6w(k−1)−0.7w(k−2)−0.5w(k−3)y(k)=0.6w(k−1)+0.7w(k−2)\begin{aligned} w(k) &= x(k) - 0.6w(k-1) - 0.7w(k-2) - 0.5w(k-3) \\ y(k) &= 0.6w(k-1) + 0.7w(k-2) \end{aligned}
x(k)-->(S)------------o
        ^             |
        |          [z^-1]
        |             | w(k-1)
       (S)<[-0.6]-----o--[0.6]------>(S)--> y(k)
        ^             |               ^
        |          [z^-1]             |
        |             | w(k-2)        |
       (S)<[-0.7]-----o--[0.7]--------+
        ^             |
        |          [z^-1]
        |             | w(k-3)
        +<[-0.5]------o

Only n=3n = 3 delays are used, the minimum number.

(b) Series programming

Factor the denominator. Its real root, found numerically, is z=−0.6697z = -0.6697:

10z3+6z2+7z+5=10(z+0.6697)(z2−0.0697z+0.7467)10z^3 + 6z^2 + 7z + 5 = 10(z + 0.6697)(z^2 - 0.0697z + 0.7467)

The quadratic has complex roots 0.0348±j0.86340.0348 \pm j0.8634, so it is kept as one second-order block. The numerator is 6z2+7z=6z(z+1.1667)6z^2 + 7z = 6z(z + 1.1667). So

G(z)=0.6⋅11+0.6697z−1⏟G1⋅z−1+1.1667z−21−0.0697z−1+0.7467z−2⏟G2G(z) = 0.6\cdot\underbrace{\frac{1}{1 + 0.6697z^{-1}}}_{G_1}\cdot\underbrace{\frac{z^{-1} + 1.1667z^{-2}}{1 - 0.0697z^{-1} + 0.7467z^{-2}}}_{G_2}

Check: 0.6(z−1+1.1667z−2)=0.6z−1+0.7z−20.6(z^{-1} + 1.1667z^{-2}) = 0.6z^{-1} + 0.7z^{-2}, and (1+0.6697z−1)(1−0.0697z−1+0.7467z−2)=1+0.6z−1+0.7z−2+0.5z−3(1 + 0.6697z^{-1})(1 - 0.0697z^{-1} + 0.7467z^{-2}) = 1 + 0.6z^{-1} + 0.7z^{-2} + 0.5z^{-3}. ✔

Difference equations:

  • w1(k)=x(k)−0.6697w1(k−1)w_1(k) = x(k) - 0.6697w_1(k-1), and y1(k)=0.6w1(k)y_1(k) = 0.6w_1(k)
  • w2(k)=y1(k)+0.0697w2(k−1)−0.7467w2(k−2)w_2(k) = y_1(k) + 0.0697w_2(k-1) - 0.7467w_2(k-2)
  • y(k)=w2(k−1)+1.1667w2(k−2)y(k) = w_2(k-1) + 1.1667w_2(k-2)

Block G1G_1 (with gain 0.6):

x(k)-->(S)------------o--[1]-------->(S)->[0.6]-> y1(k)
        ^             |
        |          [z^-1]
        |             | w1(k-1)
        +<[-0.6697]---o

Block G2G_2:

y1(k)-->(S)------------o
         ^             |
         |          [z^-1]
         |             | w2(k-1)
        (S)<[0.0697]---o--[1]-------->(S)--> y(k)
         ^             |               ^
         |          [z^-1]             |
         |             | w2(k-2)       |
         +<[-0.7467]---o--[1.1667]-----+

The series form also uses 3 delays. Each block is first- or second-order, so it is less sensitive to coefficient rounding.

  • 2076 Bhadra · 4 marks

Realize the given digital controller by direct programming: Y(z)/X(z)=(6z²+7z+16)/(10z³+8z²+9z+15).

Answer

Step 1: Write in powers of z−1z^{-1}

Divide the numerator and denominator by 10z310z^3:

Y(z)X(z)=0.6z−1+0.7z−2+1.6z−31+0.8z−1+0.9z−2+1.5z−3\frac{Y(z)}{X(z)} = \frac{0.6z^{-1} + 0.7z^{-2} + 1.6z^{-3}}{1 + 0.8z^{-1} + 0.9z^{-2} + 1.5z^{-3}}

Step 2: Difference equation

y(k)=−0.8y(k−1)−0.9y(k−2)−1.5y(k−3)+0.6x(k−1)+0.7x(k−2)+1.6x(k−3)y(k) = -0.8y(k-1) - 0.9y(k-2) - 1.5y(k-3) + 0.6x(k-1) + 0.7x(k-2) + 1.6x(k-3)

Step 3: Block diagram (direct programming)

x(k)
  o              (S)--------------o--> y(k)
  |               ^               |
[z^-1]            |             [z^-1]
  | x(k-1)        |               | y(k-1)
  o--[0.6]------>(S)<[-0.8]-------o
  |               ^               |
[z^-1]            |             [z^-1]
  | x(k-2)        |               | y(k-2)
  o--[0.7]------>(S)<[-0.9]-------o
  |               ^               |
[z^-1]            |             [z^-1]
  | x(k-3)        |               | y(k-3)
  o--[1.6]------>(S)<[-1.5]-------o
  • The input delay chain gives x(k−1)x(k-1), x(k−2)x(k-2), x(k−3)x(k-3), with gains 0.6, 0.7, 1.6.
  • The output delay chain gives y(k−1)y(k-1), y(k−2)y(k-2), y(k−3)y(k-3), fed back with gains −0.8-0.8, −0.9-0.9, −1.5-1.5.
  • All products are added in the summer column to give y(k)y(k). There is no direct x(k)x(k) term.

Direct programming uses 3+3=63 + 3 = 6 delays. (The denominator has roots −1.1507-1.1507 and 0.1754±j1.12820.1754 \pm j1.1282, which are outside the unit circle, so this filter is unstable as given. The question asks only for its realization.)

  • 2075 Baisakh · 8 marks

Realize the digital filter by ladder programming: G(z)=(128z⁻³+224z⁻²+106z⁻¹+11)/(128z⁻³+160z⁻²+34z⁻¹+1).

Answer

Assumption: the textbook form of this filter has positive powers of zz:

G(z)=128z3+224z2+106z+11128z3+160z2+34z+1G(z) = \frac{128z^3 + 224z^2 + 106z + 11}{128z^3 + 160z^2 + 34z + 1}

This gives a stable filter (poles −0.9895-0.9895, −0.2254-0.2254, −0.0350-0.0350) and integer ladder constants. If the z−kz^{-k} form is used literally, the same continued-fraction steps apply but the constants are not integers.

For a third-order filter, ladder programming expands G(z)G(z) as:

G(z)=A0+1B1z+1A1+1B2z+1A2+1B3z+1A3G(z) = A_0 + \cfrac{1}{B_1z + \cfrac{1}{A_1 + \cfrac{1}{B_2z + \cfrac{1}{A_2 + \cfrac{1}{B_3z + \cfrac{1}{A_3}}}}}}

Step 1: A0A_0

G(z)=1+64z2+72z+10128z3+160z2+34z+1G(z) = 1 + \frac{64z^2 + 72z + 10}{128z^3 + 160z^2 + 34z + 1}

So A0=1A_0 = 1.

Step 2: B1B_1

128z3+160z2+34z+164z2+72z+10=2z+16z2+14z+164z2+72z+10\frac{128z^3 + 160z^2 + 34z + 1}{64z^2 + 72z + 10} = 2z + \frac{16z^2 + 14z + 1}{64z^2 + 72z + 10}

So B1=2B_1 = 2.

Step 3: A1A_1

64z2+72z+1016z2+14z+1=4+16z+616z2+14z+1\frac{64z^2 + 72z + 10}{16z^2 + 14z + 1} = 4 + \frac{16z + 6}{16z^2 + 14z + 1}

So A1=4A_1 = 4.

Step 4: B2B_2

16z2+14z+116z+6=z+8z+116z+6\frac{16z^2 + 14z + 1}{16z + 6} = z + \frac{8z + 1}{16z + 6}

So B2=1B_2 = 1.

Step 5: A2A_2

16z+68z+1=2+48z+1\frac{16z + 6}{8z + 1} = 2 + \frac{4}{8z + 1}

So A2=2A_2 = 2.

Step 6: B3B_3 and A3A_3

8z+14=2z+14\frac{8z + 1}{4} = 2z + \frac{1}{4}

So B3=2B_3 = 2 and A3=4A_3 = 4.

G(z)=1+12z+14+1z+12+12z+14G(z) = 1 + \cfrac{1}{2z + \cfrac{1}{4 + \cfrac{1}{z + \cfrac{1}{2 + \cfrac{1}{2z + \cfrac{1}{4}}}}}}
A0A_0B1B_1A1A_1B2B_2A2A_2B3B_3A3A_3
1241224

Ladder block diagram

X(z)--o-----------------[A0]--------------->(S)--> Y(z)
      |                                      ^
      v +                                    | Y1
     (S1)-->[z^-1/B1]-------------o----------+
      ^ -                         | +
      |                           v
      o<--E1--[1/A1]<----------- (S2)
      |                           ^ -
      v +                         |
     (S3)-->[z^-1/B2]-------------o Y2
      ^ -                         | +
      |                           v
      o<--E2--[1/A2]<----------- (S4)
      |                           ^ -
      v +                         |
     (S5)-->[z^-1/B3]-------------o Y3
      ^ -                         |
      |                           |
      +<--E3--[1/A3]<-------------+

Signal equations of the ladder (oo = take-off point, (S) = summer):

Y1=z−1B1(X−E1),E1=1A1(Y1−Y2)Y2=z−1B2(E1−E2),E2=1A2(Y2−Y3)Y3=z−1B3(E2−E3),E3=1A3Y3Y=A0X+Y1\begin{aligned} Y_1 &= \tfrac{z^{-1}}{B_1}(X - E_1), & E_1 &= \tfrac{1}{A_1}(Y_1 - Y_2) \\ Y_2 &= \tfrac{z^{-1}}{B_2}(E_1 - E_2), & E_2 &= \tfrac{1}{A_2}(Y_2 - Y_3) \\ Y_3 &= \tfrac{z^{-1}}{B_3}(E_2 - E_3), & E_3 &= \tfrac{1}{A_3}Y_3 \\ Y &= A_0X + Y_1 \end{aligned}

With the values: 1/B1=0.51/B_1 = 0.5, 1/A1=0.251/A_1 = 0.25, 1/B2=11/B_2 = 1, 1/A2=0.51/A_2 = 0.5, 1/B3=0.51/B_3 = 0.5, 1/A3=0.251/A_3 = 0.25. Three delays are used.

Simulating these equations gives the same impulse response as G(z)G(z).

  • 2075 Bhadra · 6 marks

Assume that a digital filter is given by the following difference equation: y(k)+a₁y(k-1)+a₂y(k-2)=b₁x(k)+b₂x(k)+b₂x(k-1). Draw block diagrams for the filters using (i) standard programming and (ii) ladder programming.

Answer

The difference equation as printed has a typo. It is read as the standard second-order filter

y(k)+a1y(k−1)+a2y(k−2)=b0x(k)+b1x(k−1)+b2x(k−2)y(k) + a_1y(k-1) + a_2y(k-2) = b_0x(k) + b_1x(k-1) + b_2x(k-2) G(z)=Y(z)X(z)=b0+b1z−1+b2z−21+a1z−1+a2z−2=b0z2+b1z+b2z2+a1z+a2G(z) = \frac{Y(z)}{X(z)} = \frac{b_0 + b_1z^{-1} + b_2z^{-2}}{1 + a_1z^{-1} + a_2z^{-2}} = \frac{b_0z^2 + b_1z + b_2}{z^2 + a_1z + a_2}

(i) Standard programming

Let W(z)=X(z)/(1+a1z−1+a2z−2)W(z) = X(z)/(1 + a_1z^{-1} + a_2z^{-2}):

w(k)=x(k)−a1w(k−1)−a2w(k−2)y(k)=b0w(k)+b1w(k−1)+b2w(k−2)\begin{aligned} w(k) &= x(k) - a_1w(k-1) - a_2w(k-2) \\ y(k) &= b_0w(k) + b_1w(k-1) + b_2w(k-2) \end{aligned}
x(k)-->(S)------------o--[b0]------->(S)--> y(k)
        ^             |               ^
        |          [z^-1]             |
        |             | w(k-1)        |
       (S)<[-a1]------o--[b1]------->(S)
        ^             |               ^
        |          [z^-1]             |
        |             | w(k-2)        |
        +<[-a2]-------o--[b2]---------+

Only 2 delays are used, the minimum for second order.

(ii) Ladder programming

Expand as a continued fraction:

G(z)=A0+1B1z+1A1+1B2z+1A2G(z) = A_0 + \cfrac{1}{B_1z + \cfrac{1}{A_1 + \cfrac{1}{B_2z + \cfrac{1}{A_2}}}}

Define c1=b1−a1b0c_1 = b_1 - a_1b_0, c2=b2−a2b0c_2 = b_2 - a_2b_0, d=a1c1−c2d = a_1c_1 - c_2 and e=c2−a2c12de = c_2 - \dfrac{a_2c_1^2}{d}. Then:

G(z)=b0+c1z+c2z2+a1z+a2A0=b0,B1=1c1,A1=c12d,B2=dc1e,A2=ea2\begin{aligned} G(z) &= b_0 + \frac{c_1z + c_2}{z^2 + a_1z + a_2} \\ A_0 &= b_0, \quad B_1 = \frac{1}{c_1}, \quad A_1 = \frac{c_1^2}{d}, \quad B_2 = \frac{d}{c_1e}, \quad A_2 = \frac{e}{a_2} \end{aligned}
X(z)--o-----------------[A0]--------------->(S)--> Y(z)
      |                                      ^
      v +                                    | Y1
     (S1)-->[z^-1/B1]-------------o----------+
      ^ -                         | +
      |                           v
      o<--E1--[1/A1]<----------- (S2)
      |                           ^ -
      v +                         |
     (S3)-->[z^-1/B2]-------------o Y2
      ^ -                         |
      |                           |
      +<--E2--[1/A2]<-------------+
y1(k)=1B1[x(k−1)−e1(k−1)],e1(k)=1A1[y1(k)−y2(k)]y2(k)=1B2[e1(k−1)−e2(k−1)],e2(k)=1A2y2(k)y(k)=A0x(k)+y1(k)\begin{aligned} y_1(k) &= \tfrac{1}{B_1}[x(k-1) - e_1(k-1)], & e_1(k) &= \tfrac{1}{A_1}[y_1(k) - y_2(k)] \\ y_2(k) &= \tfrac{1}{B_2}[e_1(k-1) - e_2(k-1)], & e_2(k) &= \tfrac{1}{A_2}y_2(k) \\ y(k) &= A_0x(k) + y_1(k) \end{aligned}

Example: For b0=2b_0 = 2, b1=2.2b_1 = 2.2, b2=0.2b_2 = 0.2, a1=0.4a_1 = 0.4, a2=−0.12a_2 = -0.12: c1=1.4c_1 = 1.4, c2=0.44c_2 = 0.44, d=0.12d = 0.12, e=2.4e = 2.4. This gives A0=2A_0 = 2, B1=0.7143B_1 = 0.7143, A1=16.33A_1 = 16.33, B2=0.0357B_2 = 0.0357, A2=−20A_2 = -20.

  • 2073 Bhadra · 8 marks

Realize the given digital controller by ladder programming whose transfer function is (8z³+7z²+10z+6)/(4z³+6z²+9z+10).

Answer

Ladder programming expands G(z)G(z) as a continued fraction:

G(z)=A0+1B1z+1A1+1B2z+1A2+1B3z+1A3G(z) = A_0 + \cfrac{1}{B_1z + \cfrac{1}{A_1 + \cfrac{1}{B_2z + \cfrac{1}{A_2 + \cfrac{1}{B_3z + \cfrac{1}{A_3}}}}}}

with G(z)=8z3+7z2+10z+64z3+6z2+9z+10G(z) = \dfrac{8z^3 + 7z^2 + 10z + 6}{4z^3 + 6z^2 + 9z + 10}.

Step 1: A0=8/4=2A_0 = 8/4 = 2

G(z)=2+−5z2−8z−144z3+6z2+9z+10G(z) = 2 + \frac{-5z^2 - 8z - 14}{4z^3 + 6z^2 + 9z + 10}

Step 2: B1B_1

4z3+6z2+9z+10−5z2−8z−14=−0.8z+−0.4z2−2.2z+10−5z2−8z−14\frac{4z^3 + 6z^2 + 9z + 10}{-5z^2 - 8z - 14} = -0.8z + \frac{-0.4z^2 - 2.2z + 10}{-5z^2 - 8z - 14}

So B1=−0.8B_1 = -0.8.

Step 3: A1A_1

−5z2−8z−14−0.4z2−2.2z+10=12.5+19.5z−139−0.4z2−2.2z+10\frac{-5z^2 - 8z - 14}{-0.4z^2 - 2.2z + 10} = 12.5 + \frac{19.5z - 139}{-0.4z^2 - 2.2z + 10}

So A1=12.5A_1 = 12.5.

Step 4: B2B_2

−0.4z2−2.2z+1019.5z−139=−0.02051z+−5.0513z+1019.5z−139\frac{-0.4z^2 - 2.2z + 10}{19.5z - 139} = -0.02051z + \frac{-5.0513z + 10}{19.5z - 139}

So B2=−0.02051B_2 = -0.02051.

Step 5: A2A_2

19.5z−139−5.0513z+10=−3.8604+−100.396−5.0513z+10\frac{19.5z - 139}{-5.0513z + 10} = -3.8604 + \frac{-100.396}{-5.0513z + 10}

So A2=−3.8604A_2 = -3.8604.

Step 6: B3B_3 and A3A_3

−5.0513z+10−100.396=0.05031z−0.09961\frac{-5.0513z + 10}{-100.396} = 0.05031z - 0.09961

So B3=0.05031B_3 = 0.05031 and A3=−1/0.09961=−10.04A_3 = -1/0.09961 = -10.04.

A0A_0B1B_1A1A_1B2B_2A2A_2B3B_3A3A_3
2−0.812.5−0.02051−3.86040.05031−10.04

Ladder block diagram

X(z)--o-----------------[A0]--------------->(S)--> Y(z)
      |                                      ^
      v +                                    | Y1
     (S1)-->[z^-1/B1]-------------o----------+
      ^ -                         | +
      |                           v
      o<--E1--[1/A1]<----------- (S2)
      |                           ^ -
      v +                         |
     (S3)-->[z^-1/B2]-------------o Y2
      ^ -                         | +
      |                           v
      o<--E2--[1/A2]<----------- (S4)
      |                           ^ -
      v +                         |
     (S5)-->[z^-1/B3]-------------o Y3
      ^ -                         |
      |                           |
      +<--E3--[1/A3]<-------------+

Signal equations of the ladder (oo = take-off point, (S) = summer):

Y1=z−1B1(X−E1),E1=1A1(Y1−Y2)Y2=z−1B2(E1−E2),E2=1A2(Y2−Y3)Y3=z−1B3(E2−E3),E3=1A3Y3Y=A0X+Y1\begin{aligned} Y_1 &= \tfrac{z^{-1}}{B_1}(X - E_1), & E_1 &= \tfrac{1}{A_1}(Y_1 - Y_2) \\ Y_2 &= \tfrac{z^{-1}}{B_2}(E_1 - E_2), & E_2 &= \tfrac{1}{A_2}(Y_2 - Y_3) \\ Y_3 &= \tfrac{z^{-1}}{B_3}(E_2 - E_3), & E_3 &= \tfrac{1}{A_3}Y_3 \\ Y &= A_0X + Y_1 \end{aligned}

Numerical gains: 1/B1=−1.251/B_1 = -1.25, 1/A1=0.081/A_1 = 0.08, 1/B2=−48.751/B_2 = -48.75, 1/A2=−0.25901/A_2 = -0.2590, 1/B3=19.8751/B_3 = 19.875, 1/A3=−0.09961/A_3 = -0.0996.

The expansion was checked by substituting back. It reproduces G(z)G(z) exactly, and the ladder's impulse response matches the direct difference equation. Three delays are used.

  • 2071 Bhadra · 5 marks

Construct the block diagram for the following pulse-transfer function system (a digital filter) by direct programming: G(z)=(2-0.6z⁻¹)/(1+0.5z⁻¹).

Answer

Step 1: Difference equation

Y(z)X(z)=2−0.6z−11+0.5z−1  ⇒  Y(z)(1+0.5z−1)=X(z)(2−0.6z−1)\frac{Y(z)}{X(z)} = \frac{2 - 0.6z^{-1}}{1 + 0.5z^{-1}} \;\Rightarrow\; Y(z)(1 + 0.5z^{-1}) = X(z)(2 - 0.6z^{-1}) y(k)=−0.5y(k−1)+2x(k)−0.6x(k−1)y(k) = -0.5y(k-1) + 2x(k) - 0.6x(k-1)

Step 2: Direct programming block diagram

Each delayed input and output term is formed with its own delay element and added in a summer:

x(k)
  o--[2]-------->(S)--------------o--> y(k)
  |               ^               |
[z^-1]            |             [z^-1]
  | x(k-1)        |               | y(k-1)
  o--[-0.6]----->(S)<[-0.5]-------o
  • Feed-forward: x(k)x(k) with gain 2, and x(k−1)x(k-1) with gain −0.6-0.6.
  • Feedback: y(k−1)y(k-1) with gain −0.5-0.5.
  • Direct programming uses 1+1=21 + 1 = 2 delays.

For comparison, standard programming needs only one delay: w(k)=x(k)−0.5w(k−1)w(k) = x(k) - 0.5w(k-1) and y(k)=2w(k)−0.6w(k−1)y(k) = 2w(k) - 0.6w(k-1).

The pole at z=−0.5z = -0.5 is inside the unit circle, so the filter is stable.

  • 2068 Magh · 8 marks

Realize system having pulse transfer function G(z)=(z+3)(z²-2z+10)/((z-5)(z²-z+8)) by series programming.

Answer

In series programming, the pulse transfer function is split into a cascade of first- and second-order sections. Each section is realized by standard programming.

Step 1: Split into sections (in powers of z−1z^{-1})

G(z)=1+3z−11−5z−1⏟G1(z)⋅1−2z−1+10z−21−z−1+8z−2⏟G2(z)G(z) = \underbrace{\frac{1 + 3z^{-1}}{1 - 5z^{-1}}}_{G_1(z)}\cdot\underbrace{\frac{1 - 2z^{-1} + 10z^{-2}}{1 - z^{-1} + 8z^{-2}}}_{G_2(z)}

The quadratics have complex roots, so they stay as one second-order section with real coefficients.

Step 2: Difference equations

Section 1 (input xx, output y1y_1):

  • w1(k)=x(k)+5w1(k−1)w_1(k) = x(k) + 5w_1(k-1)
  • y1(k)=w1(k)+3w1(k−1)y_1(k) = w_1(k) + 3w_1(k-1)

Section 2 (input y1y_1, output yy):

  • w2(k)=y1(k)+w2(k−1)−8w2(k−2)w_2(k) = y_1(k) + w_2(k-1) - 8w_2(k-2)
  • y(k)=w2(k)−2w2(k−1)+10w2(k−2)y(k) = w_2(k) - 2w_2(k-1) + 10w_2(k-2)

Step 3: Block diagram

Section 1:

x(k)-->(S)------------o--[1]-------->(S)--> y1(k)
        ^             |               ^
        |          [z^-1]             |
        |             | w1(k-1)       |
        +<[5]---------o--[3]----------+

Section 2:

y1(k)-->(S)------------o--[1]-------->(S)--> y(k)
         ^             |               ^
         |          [z^-1]             |
         |             | w2(k-1)       |
        (S)<[1]--------o--[-2]------->(S)
         ^             |               ^
         |          [z^-1]             |
         |             | w2(k-2)       |
         +<[-8]--------o--[10]---------+
x(k) --> [ G1(z) ] --y1(k)--> [ G2(z) ] --> y(k)

A total of 3 delays are used. The order of the sections can be swapped.

Note: The poles are z=5z = 5 and z=0.5±j2.78z = 0.5 \pm j2.78 (with ∣z∣=2.83|z| = 2.83), all outside the unit circle. So this system is unstable, although it can still be realized.

  • 2068 Jestha · 8 marks

Realize the following transfer function by series programming: X(z)=(z+1)(z²+3z+7)/((z-2)(z²+z+9)).

Answer

In series programming, X(z)X(z) (the given pulse transfer function) is split into cascaded low-order sections. Each section is realized by standard programming.

Step 1: Sections in powers of z−1z^{-1}

X(z)=1+z−11−2z−1⏟G1(z)⋅1+3z−1+7z−21+z−1+9z−2⏟G2(z)X(z) = \underbrace{\frac{1 + z^{-1}}{1 - 2z^{-1}}}_{G_1(z)}\cdot\underbrace{\frac{1 + 3z^{-1} + 7z^{-2}}{1 + z^{-1} + 9z^{-2}}}_{G_2(z)}

Both quadratics have complex roots, so each is kept as one second-order factor.

Step 2: Difference equations

Let u(k)u(k) be the input and y(k)y(k) the output.

Section 1:

  • w1(k)=u(k)+2w1(k−1)w_1(k) = u(k) + 2w_1(k-1)
  • y1(k)=w1(k)+w1(k−1)y_1(k) = w_1(k) + w_1(k-1)

Section 2:

  • w2(k)=y1(k)−w2(k−1)−9w2(k−2)w_2(k) = y_1(k) - w_2(k-1) - 9w_2(k-2)
  • y(k)=w2(k)+3w2(k−1)+7w2(k−2)y(k) = w_2(k) + 3w_2(k-1) + 7w_2(k-2)

Step 3: Block diagram

Section 1:

u(k)-->(S)------------o--[1]-------->(S)--> y1(k)
        ^             |               ^
        |          [z^-1]             |
        |             | w1(k-1)       |
        +<[2]---------o--[1]----------+

Section 2:

y1(k)-->(S)------------o--[1]-------->(S)--> y(k)
         ^             |               ^
         |          [z^-1]             |
         |             | w2(k-1)       |
        (S)<[-1]-------o--[3]-------->(S)
         ^             |               ^
         |          [z^-1]             |
         |             | w2(k-2)       |
         +<[-9]--------o--[7]----------+
u(k) --> [ G1(z) ] --y1(k)--> [ G2(z) ] --> y(k)

Three delay elements are used. Each section can be scaled and checked separately.

Note: The poles z=2z = 2 and z=−0.5±j2.96z = -0.5 \pm j2.96 lie outside the unit circle, so the system is unstable. The series structure is still a valid realization.

  • 2067 Mangsir · 10 marks

Realize the following transfer function by ladder programming: X(z)=(z³+4z²+10z+7)/(z³+3z²+11z+18).

Answer

Ladder programming expands X(z)=z3+4z2+10z+7z3+3z2+11z+18X(z) = \dfrac{z^3 + 4z^2 + 10z + 7}{z^3 + 3z^2 + 11z + 18} as a continued fraction:

G(z)=A0+1B1z+1A1+1B2z+1A2+1B3z+1A3G(z) = A_0 + \cfrac{1}{B_1z + \cfrac{1}{A_1 + \cfrac{1}{B_2z + \cfrac{1}{A_2 + \cfrac{1}{B_3z + \cfrac{1}{A_3}}}}}}

Step 1: A0=1A_0 = 1

X(z)=1+z2−z−11z3+3z2+11z+18X(z) = 1 + \frac{z^2 - z - 11}{z^3 + 3z^2 + 11z + 18}

Step 2: B1B_1

z3+3z2+11z+18z2−z−11=z+4z2+22z+18z2−z−11\frac{z^3 + 3z^2 + 11z + 18}{z^2 - z - 11} = z + \frac{4z^2 + 22z + 18}{z^2 - z - 11}

So B1=1B_1 = 1.

Step 3: A1A_1

z2−z−114z2+22z+18=0.25+−6.5z−15.54z2+22z+18\frac{z^2 - z - 11}{4z^2 + 22z + 18} = 0.25 + \frac{-6.5z - 15.5}{4z^2 + 22z + 18}

So A1=0.25A_1 = 0.25.

Step 4: B2B_2

4z2+22z+18−6.5z−15.5=−0.6154z+12.4615z+18−6.5z−15.5\frac{4z^2 + 22z + 18}{-6.5z - 15.5} = -0.6154z + \frac{12.4615z + 18}{-6.5z - 15.5}

So B2=−0.6154B_2 = -0.6154.

Step 5: A2A_2

−6.5z−15.512.4615z+18=−0.5216+−6.111112.4615z+18\frac{-6.5z - 15.5}{12.4615z + 18} = -0.5216 + \frac{-6.1111}{12.4615z + 18}

So A2=−0.5216A_2 = -0.5216.

Step 6: B3B_3 and A3A_3

12.4615z+18−6.1111=−2.0392z−2.9455\frac{12.4615z + 18}{-6.1111} = -2.0392z - 2.9455

So B3=−2.0392B_3 = -2.0392 and A3=−1/2.9455=−0.3395A_3 = -1/2.9455 = -0.3395.

A0A_0B1B_1A1A_1B2B_2A2A_2B3B_3A3A_3
110.25−0.6154−0.5216−2.0392−0.3395

Exact values: B2=−8/13B_2 = -8/13, A2=−169/324A_2 = -169/324, B3=−1458/715B_3 = -1458/715, A3=−55/162A_3 = -55/162.

Ladder block diagram

X(z)--o-----------------[A0]--------------->(S)--> Y(z)
      |                                      ^
      v +                                    | Y1
     (S1)-->[z^-1/B1]-------------o----------+
      ^ -                         | +
      |                           v
      o<--E1--[1/A1]<----------- (S2)
      |                           ^ -
      v +                         |
     (S3)-->[z^-1/B2]-------------o Y2
      ^ -                         | +
      |                           v
      o<--E2--[1/A2]<----------- (S4)
      |                           ^ -
      v +                         |
     (S5)-->[z^-1/B3]-------------o Y3
      ^ -                         |
      |                           |
      +<--E3--[1/A3]<-------------+

Signal equations of the ladder (oo = take-off point, (S) = summer):

Y1=z−1B1(X−E1),E1=1A1(Y1−Y2)Y2=z−1B2(E1−E2),E2=1A2(Y2−Y3)Y3=z−1B3(E2−E3),E3=1A3Y3Y=A0X+Y1\begin{aligned} Y_1 &= \tfrac{z^{-1}}{B_1}(X - E_1), & E_1 &= \tfrac{1}{A_1}(Y_1 - Y_2) \\ Y_2 &= \tfrac{z^{-1}}{B_2}(E_1 - E_2), & E_2 &= \tfrac{1}{A_2}(Y_2 - Y_3) \\ Y_3 &= \tfrac{z^{-1}}{B_3}(E_2 - E_3), & E_3 &= \tfrac{1}{A_3}Y_3 \\ Y &= A_0X + Y_1 \end{aligned}

Gains in the diagram: 1/B1=11/B_1 = 1, 1/A1=41/A_1 = 4, 1/B2=−1.6251/B_2 = -1.625, 1/A2=−1.9171/A_2 = -1.917, 1/B3=−0.49041/B_3 = -0.4904, 1/A3=−2.94551/A_3 = -2.9455.

Substituting back reproduces X(z)X(z) exactly. Three delays are used.

  • 2079 Chaitra · 12 marks

Consider the digital control system shown in figure below. In the z plane, design a digital controller such that the dominant closed-loop poles have a damping ratio of 0.5 and a settling time of 2 seconds. The sampling period is assumed to be 0.2 sec. Also, obtain the static velocity error constant of the system. [Figure: unity-feedback loop: r(t) → summing junction → e(t) → sampler → e(kT) → digital controller → ZOH → 1/s(s+2) → C(t)]

Answer

Step 1: Desired closed-loop poles

With ζ=0.5\zeta = 0.5 and ts=4/(ζωn)=2t_s = 4/(\zeta\omega_n) = 2 s:

ζωn=2,ωn=4,ωd=3.464 rad/s\zeta\omega_n = 2, \quad \omega_n = 4, \quad \omega_d = 3.464\ \text{rad/s}

With T=0.2T = 0.2 s:

∣z∣=e−0.4=0.6703,∠z=ωdT=39.69∘z1,2=0.5158±j0.4281\begin{aligned} |z| &= e^{-0.4} = 0.6703, \qquad \angle z = \omega_dT = 39.69^\circ \\ z_{1,2} &= 0.5158 \pm j0.4281 \end{aligned}

Step 2: ZOH + plant 1/[s(s+2)]1/[s(s+2)]

G(z)=(2T−1+e−2T)z+(1−e−2T−2Te−2T)4(z−1)(z−e−2T)=0.01758(z+0.8753)(z−1)(z−0.6703)G(z) = \frac{(2T-1+e^{-2T})z + (1-e^{-2T}-2Te^{-2T})}{4(z-1)(z-e^{-2T})} = \frac{0.01758(z + 0.8753)}{(z-1)(z-0.6703)}

Step 3: Angle deficiency

At z1z_1: the zero gives +17.11∘+17.11^\circ, the pole at 1 gives −138.52∘-138.52^\circ, and the pole at 0.6703 gives −109.85∘-109.85^\circ. The total is −231.26∘-231.26^\circ. The controller must supply +51.26∘+51.26^\circ (lead).

Step 4: Lead controller GD(z)=Kz−αz−βG_D(z) = K\dfrac{z-\alpha}{z-\beta}

Choose α=0.6703\alpha = 0.6703 to cancel the plant pole. This contributes +109.85∘+109.85^\circ. The controller pole must then contribute 109.85∘−51.26∘=58.59∘109.85^\circ - 51.26^\circ = 58.59^\circ:

β=0.5158−0.4281tan⁡58.59∘=0.2543\beta = 0.5158 - \frac{0.4281}{\tan 58.59^\circ} = 0.2543

Step 5: Gain

K=∣z1−1∣ ∣z1−0.2543∣0.01758 ∣z1+0.8753∣=0.6464×0.50170.01758×1.4555=12.67K = \frac{|z_1-1|\,|z_1-0.2543|}{0.01758\,|z_1+0.8753|} = \frac{0.6464 \times 0.5017}{0.01758 \times 1.4555} = 12.67 GD(z)=12.67 z−0.6703z−0.2543G_D(z) = 12.67\,\frac{z - 0.6703}{z - 0.2543}

Step 6: Check

GDG=0.2228(z+0.8753)(z−1)(z−0.2543)G_DG = \frac{0.2228(z + 0.8753)}{(z-1)(z-0.2543)}

The characteristic equation z2−1.0316z+0.4493=0z^2 - 1.0316z + 0.4493 = 0 gives z=0.5158±j0.4281z = 0.5158 \pm j0.4281. ✔

Step 7: Static velocity error constant

Kv=lim⁡z→1(1−z−1)GD(z)G(z)T=10.2⋅0.2228(1+0.8753)1−0.2543=5×0.41780.7457=2.80 s−1\begin{aligned} K_v &= \lim_{z\to1}\frac{(1-z^{-1})G_D(z)G(z)}{T} = \frac{1}{0.2}\cdot\frac{0.2228(1 + 0.8753)}{1 - 0.2543} \\ &= 5 \times \frac{0.4178}{0.7457} = 2.80\ \text{s}^{-1} \end{aligned}

Answer: GD(z)=12.67z−0.6703z−0.2543G_D(z) = 12.67\dfrac{z-0.6703}{z-0.2543} and Kv=2.80 s−1K_v = 2.80\ \text{s}^{-1}. The steady-state error for a unit ramp is 1/Kv=0.3571/K_v = 0.357.

  • 2082 Chaitra (new course) · 9 marks

Consider a digital control system shown in figure below. The plant is a second order system described as G(s)=1/s(s+1). The sampling period of the system is taken to be T = 1 s. Design a digital controller such that the dominant closed loop poles of the system will have damping ratio ζ=0.5 and number of samples per cycle of damped sinusoidal oscillation to be 8. Following the design, obtain the unit step response of the designed system and static velocity error constant Kᵥ. [Figure: unity-feedback loop: R(s) → summing junction → sampler (T = 1 s) → digital controller → ZOH → G(s) → Y(s)]

Answer

Step 1: Plant pulse transfer function (T=1T = 1 s)

G(z)=(1−z−1) Z[1s2(s+1)]=0.3679z+0.2642(z−1)(z−0.3679)=0.3679(z+0.7183)(z−1)(z−0.3679)G(z) = (1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s^2(s+1)}\right] = \frac{0.3679z + 0.2642}{(z-1)(z-0.3679)} = \frac{0.3679(z + 0.7183)}{(z-1)(z-0.3679)}

Step 2: Desired poles

With 8 samples per cycle, ωdT=2π/8=45∘\omega_dT = 2\pi/8 = 45^\circ, and

∣z∣=exp⁡(−2πζ1−ζ2⋅18)=e−0.4534=0.6354z1,2=0.6354∠±45∘=0.4493±j0.4493\begin{aligned} |z| &= \exp\left(-\frac{2\pi\zeta}{\sqrt{1-\zeta^2}}\cdot\frac{1}{8}\right) = e^{-0.4534} = 0.6354 \\ z_{1,2} &= 0.6354\angle \pm 45^\circ = 0.4493 \pm j0.4493 \end{aligned}

Step 3: Angle condition

FactorAngle at z1z_1
zero at −0.7183-0.7183+21.05∘+21.05^\circ
pole at 11−140.79∘-140.79^\circ
pole at 0.36790.3679−79.73∘-79.73^\circ
Total−199.47∘-199.47^\circ

The controller must add +19.47∘+19.47^\circ, so a lead compensator is needed.

Step 4: Lead controller GD(z)=Kz−0.3679z−βG_D(z) = K\dfrac{z-0.3679}{z-\beta}

The zero cancels the plant pole at 0.3679 and adds +79.73∘+79.73^\circ. The controller pole must contribute 79.73∘−19.47∘=60.26∘79.73^\circ - 19.47^\circ = 60.26^\circ:

β=0.4493−0.4493tan⁡60.26∘=0.1926\beta = 0.4493 - \frac{0.4493}{\tan 60.26^\circ} = 0.1926

Step 5: Gain

K=∣z1−1∣ ∣z1−0.1926∣0.3679 ∣z1+0.7183∣=0.7107×0.51750.3679×1.2511=0.7991K = \frac{|z_1-1|\,|z_1-0.1926|}{0.3679\,|z_1+0.7183|} = \frac{0.7107 \times 0.5175}{0.3679 \times 1.2511} = 0.7991 GD(z)=0.7991 z−0.3679z−0.1926G_D(z) = 0.7991\,\frac{z - 0.3679}{z - 0.1926}

Step 6: Closed-loop pulse transfer function

GDG=0.2940(z+0.7183)(z−1)(z−0.1926)C(z)R(z)=0.2940z+0.2112z2−0.8986z+0.4038\begin{aligned} G_DG &= \frac{0.2940(z + 0.7183)}{(z-1)(z-0.1926)} \\ \frac{C(z)}{R(z)} &= \frac{0.2940z + 0.2112}{z^2 - 0.8986z + 0.4038} \end{aligned}

The poles are 0.4493±j0.44930.4493 \pm j0.4493, as desired. ✔

Step 7: Unit step response

With R(z)=z/(z−1)R(z) = z/(z-1), the difference equation is c(k)=0.8986c(k−1)−0.4038c(k−2)+0.2940r(k−1)+0.2112r(k−2)c(k) = 0.8986c(k-1) - 0.4038c(k-2) + 0.2940r(k-1) + 0.2112r(k-2), where r(k)=1r(k) = 1:

kk012345678910
c(k)c(k)00.2940.7691.0781.1631.1151.0380.9870.9730.9810.994

The maximum overshoot is about 16.3% at k=4k = 4, which matches ζ=0.5\zeta = 0.5. One damped cycle takes about 8 samples, and c(∞)=1c(\infty) = 1 (type-1 system).

Step 8: Static velocity error constant

Kv=lim⁡z→1(1−z−1)GDGT=0.2940×1.71831×(1−0.1926)=0.626 s−1K_v = \lim_{z\to1}\frac{(1-z^{-1})G_DG}{T} = \frac{0.2940 \times 1.7183}{1 \times (1 - 0.1926)} = 0.626\ \text{s}^{-1}

Answer: GD(z)=0.7991z−0.3679z−0.1926G_D(z) = 0.7991\dfrac{z-0.3679}{z-0.1926}. The step response overshoots by 16.3% and settles to 1, and Kv=0.626 s−1K_v = 0.626\ \text{s}^{-1}.

  • 2073 Magh · 12 marks

Using the root locus method in z-plane determine a digital controller for a system shown below so that the dominant closed loop poles of the compensated system will have damping ratio of 0.5 and number of samples per cycle of damped sinusoidal oscillation to be 8. Assume that the sampling period T as 0.2 sec. [Figure: unity-feedback loop: R(z) → summing junction → sampler → digital controller → zero order hold → 1/s(s+1) → C(z)]

Answer

Step 1: Desired dominant poles

With 8 samples per cycle, ωdT=2π/8=45∘\omega_dT = 2\pi/8 = 45^\circ, and

∣z∣=exp⁡(−2πζ1−ζ2⋅ωdωs)=exp⁡(−2π(0.5)0.866⋅18)=0.6354z1,2=0.4493±j0.4493\begin{aligned} |z| &= \exp\left(-\frac{2\pi\zeta}{\sqrt{1-\zeta^2}}\cdot\frac{\omega_d}{\omega_s}\right) = \exp\left(-\frac{2\pi(0.5)}{0.866}\cdot\frac18\right) = 0.6354 \\ z_{1,2} &= 0.4493 \pm j0.4493 \end{aligned}

With T=0.2T = 0.2 s, this means ωd=ωs/8=3.927\omega_d = \omega_s/8 = 3.927 rad/s, ωn=4.534\omega_n = 4.534 rad/s, and ts≈4/(ζωn)=1.76t_s \approx 4/(\zeta\omega_n) = 1.76 s.

Step 2: Plant with ZOH (T=0.2T = 0.2 s)

G(z)=(T−1+e−T)z+(1−e−T−Te−T)(z−1)(z−e−T)=0.01873z+0.01752(z−1)(z−0.8187)=0.01873(z+0.9355)(z−1)(z−0.8187)\begin{aligned} G(z) &= \frac{(T-1+e^{-T})z + (1-e^{-T}-Te^{-T})}{(z-1)(z-e^{-T})} = \frac{0.01873z + 0.01752}{(z-1)(z-0.8187)} \\ &= \frac{0.01873(z + 0.9355)}{(z-1)(z-0.8187)} \end{aligned}

Step 3: Angle deficiency at z1z_1

FactorAngle
zero at −0.9355-0.9355+17.98∘+17.98^\circ
pole at 11−140.79∘-140.79^\circ
pole at 0.81870.8187−129.43∘-129.43^\circ
Total−252.24∘-252.24^\circ

The deficiency is 72.24∘72.24^\circ, so a lead compensator is needed.

Step 4: Controller GD(z)=Kz−0.8187z−βG_D(z) = K\dfrac{z-0.8187}{z-\beta}

The zero cancels the pole at 0.8187 and adds +129.43∘+129.43^\circ. The controller pole must then contribute 129.43∘−72.24∘=57.19∘129.43^\circ - 72.24^\circ = 57.19^\circ:

β=0.4493−0.4493tan⁡57.19∘=0.1596\beta = 0.4493 - \frac{0.4493}{\tan 57.19^\circ} = 0.1596

Step 5: Gain

K=∣z1−1∣ ∣z1−0.1596∣0.01873 ∣z1+0.9355∣=0.7107×0.53460.01873×1.4559=13.93K = \frac{|z_1-1|\,|z_1-0.1596|}{0.01873\,|z_1+0.9355|} = \frac{0.7107 \times 0.5346}{0.01873 \times 1.4559} = 13.93 GD(z)=13.93 z−0.8187z−0.1596G_D(z) = 13.93\,\frac{z - 0.8187}{z - 0.1596}

Step 6: Check

GDG=0.2610(z+0.9355)(z−1)(z−0.1596)G_DG = \frac{0.2610(z + 0.9355)}{(z-1)(z-0.1596)}

The characteristic equation is z2−0.8986z+0.4038=0z^2 - 0.8986z + 0.4038 = 0, with roots 0.4493±j0.44930.4493 \pm j0.4493. ✔

Kv=1T⋅0.2610×1.93551−0.1596=3.01 s−1K_v = \frac{1}{T}\cdot\frac{0.2610 \times 1.9355}{1 - 0.1596} = 3.01\ \text{s}^{-1}

Answer: GD(z)=13.93z−0.8187z−0.1596G_D(z) = 13.93\dfrac{z-0.8187}{z-0.1596}, a lead compensator, with Kv≈3.0 s−1K_v \approx 3.0\ \text{s}^{-1}.

  • 2078 Chaitra · 12 marks

Design a suitable digital controller that includes an integral control action. The design specifications are that the damping ratio of the closed loop poles be 0.5 and there will be at least eight samples per cycle of the damped sinusoidal oscillations. The sampling time is assumed to be 0.2 sec. [Figure: unity-feedback loop: R(z) → summing junction → sampler (T) → digital controller → (1-e⁻ᵀˢ)/s → 10/((s+1)(s+5)) → C(z)]

Answer

Step 1: Plant with ZOH (T=0.2T = 0.2 s)

10s(s+1)(s+5)=2s−2.5s+1+0.5s+5G(z)=(1−z−1)[2zz−1−2.5zz−e−0.2+0.5zz−e−1]=0.1371z+0.0921(z−0.8187)(z−0.3679)=0.1371(z+0.6714)(z−0.8187)(z−0.3679)\begin{aligned} \frac{10}{s(s+1)(s+5)} &= \frac{2}{s} - \frac{2.5}{s+1} + \frac{0.5}{s+5} \\ G(z) &= (1-z^{-1})\left[\frac{2z}{z-1} - \frac{2.5z}{z-e^{-0.2}} + \frac{0.5z}{z-e^{-1}}\right] \\ &= \frac{0.1371z + 0.0921}{(z-0.8187)(z-0.3679)} = \frac{0.1371(z + 0.6714)}{(z-0.8187)(z-0.3679)} \end{aligned}

Step 2: Desired poles

With ζ=0.5\zeta = 0.5 and 8 samples per cycle:

∣z∣=exp⁡(−2π(0.5)0.866⋅18)=0.6354,∠z=45∘,z1=0.4493+j0.4493|z| = \exp\left(-\frac{2\pi(0.5)}{0.866}\cdot\frac18\right) = 0.6354, \quad \angle z = 45^\circ, \quad z_1 = 0.4493 + j0.4493

Step 3: Try PI alone

Integral action requires a controller pole at z=1z = 1. With a PI controller K(z−0.8187)/(z−1)K(z-0.8187)/(z-1) cancelling the slow plant pole, the angle at z1z_1 is:

+21.85∘⏟zero −0.6714−140.79∘⏟pole 1−79.73∘⏟pole 0.3679=−198.67∘\underbrace{+21.85^\circ}_{\text{zero } -0.6714} \underbrace{-140.79^\circ}_{\text{pole } 1} \underbrace{-79.73^\circ}_{\text{pole } 0.3679} = -198.67^\circ

This is not −180∘-180^\circ. There is 18.67∘18.67^\circ too much lag, so PI alone cannot place the poles. A lead part is added, which makes the controller PID-like.

Step 4: Controller with integral + lead action

GD(z)=K(z−0.8187)(z−0.3679)(z−1)(z−β)G_D(z) = K\frac{(z - 0.8187)(z - 0.3679)}{(z-1)(z-\beta)}

Both plant poles are cancelled. The angle condition at z1z_1 is:

21.85∘−140.79∘−∠(z1−β)=−180∘  ⇒  ∠(z1−β)=61.06∘21.85^\circ - 140.79^\circ - \angle(z_1 - \beta) = -180^\circ \;\Rightarrow\; \angle(z_1-\beta) = 61.06^\circ β=0.4493−0.4493tan⁡61.06∘=0.2009\beta = 0.4493 - \frac{0.4493}{\tan 61.06^\circ} = 0.2009

Step 5: Gain

K=∣z1−1∣ ∣z1−0.2009∣0.1371 ∣z1+0.6714∣=0.7107×0.51340.1371×1.2074=2.204K = \frac{|z_1-1|\,|z_1-0.2009|}{0.1371\,|z_1+0.6714|} = \frac{0.7107 \times 0.5134}{0.1371 \times 1.2074} = 2.204 GD(z)=2.204 (z−0.8187)(z−0.3679)(z−1)(z−0.2009)G_D(z) = 2.204\,\frac{(z-0.8187)(z-0.3679)}{(z-1)(z-0.2009)}

Step 6: Check

GDG=0.3022(z+0.6714)(z−1)(z−0.2009)G_DG = \frac{0.3022(z + 0.6714)}{(z-1)(z-0.2009)}

The characteristic equation is z2−0.8986z+0.4038=0z^2 - 0.8986z + 0.4038 = 0, with roots z=0.4493±j0.4493z = 0.4493 \pm j0.4493. ✔ That is ζ=0.5\zeta = 0.5 with exactly 8 samples per cycle.

Kv=1T⋅0.3022×1.67141−0.2009=3.16 s−1K_v = \frac{1}{T}\cdot\frac{0.3022 \times 1.6714}{1 - 0.2009} = 3.16\ \text{s}^{-1}

The pole at z=1z = 1 gives zero steady-state error for a step input.

Answer: GD(z)=2.204(z−0.8187)(z−0.3679)(z−1)(z−0.2009)G_D(z) = 2.204\dfrac{(z-0.8187)(z-0.3679)}{(z-1)(z-0.2009)}, with Kv=3.16 s−1K_v = 3.16\ \text{s}^{-1}.

  • 2077 Chaitra · 12 marks

Consider a digital control system shown below. By choosing a reasonable sampling period T, design a digital PI controller such that the dominant closed loop poles have a damping ratio ζ of 0.5 and the number of samples per cycle of damped sinusoidal oscillation is 10. Also find the static velocity error constant. [Figure: unity-feedback loop: R(z) → summing junction → sampler (T) → digital PI controller → (1-e⁻ᵀˢ)/s → e⁻⁵ˢ/(s+0.4) → C(z)]

Answer

Step 1: Choice of sampling period

The plant has time constant 1/0.4=2.51/0.4 = 2.5 s and dead time 5 s. Choose T=2.5T = 2.5 s:

  • The dead time is then exactly 2T2T, giving a clean z−2z^{-2}.
  • e−0.4T=e−1e^{-0.4T} = e^{-1}, which gives simple numbers.
  • With 10 samples per cycle, the oscillation period is 25 s. This is reasonable for a process with 5 s dead time.

A smaller TT such as 1 s is not suitable. The dead time becomes z−5z^{-5}, the phase lag at the desired point exceeds what a single PI zero can make up, and the angle condition cannot be met.

G(z)=z−2(1−z−1) Z[1s(s+0.4)]=z−2⋅(1−e−1)0.4⋅z−11−e−1z−1=1.5803z2(z−0.3679)\begin{aligned} G(z) &= z^{-2}(1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s(s+0.4)}\right] = z^{-2}\cdot\frac{(1-e^{-1})}{0.4}\cdot\frac{z^{-1}}{1-e^{-1}z^{-1}} \\ &= \frac{1.5803}{z^2(z - 0.3679)} \end{aligned}

Step 2: Desired poles (ζ = 0.5, 10 samples per cycle)

∣z∣=exp⁡(−2π(0.5)0.866⋅110)=0.6958,∠z=36∘,z1=0.5629+j0.4090|z| = \exp\left(-\frac{2\pi(0.5)}{0.866}\cdot\frac{1}{10}\right) = 0.6958, \qquad \angle z = 36^\circ, \qquad z_1 = 0.5629 + j0.4090

Step 3: PI controller GD(z)=Kz−αz−1G_D(z) = K\dfrac{z-\alpha}{z-1}

Angles at z1z_1:

  • double pole at origin: −72∘-72^\circ
  • pole at 0.3679: −64.51∘-64.51^\circ
  • pole at 1: −136.91∘-136.91^\circ

The sum is −273.41∘-273.41^\circ, so the PI zero must add +93.41∘+93.41^\circ:

α=0.5629−0.4090tan⁡93.41∘=0.5873\alpha = 0.5629 - \frac{0.4090}{\tan 93.41^\circ} = 0.5873

Step 4: Gain

K=∣z1∣2 ∣z1−0.3679∣ ∣z1−1∣1.5803 ∣z1−0.5873∣=0.4841×0.4531×0.59861.5803×0.4097=0.2028K = \frac{|z_1|^2\,|z_1-0.3679|\,|z_1-1|}{1.5803\,|z_1-0.5873|} = \frac{0.4841 \times 0.4531 \times 0.5986}{1.5803 \times 0.4097} = 0.2028 GD(z)=0.2028 z−0.5873z−1G_D(z) = 0.2028\,\frac{z - 0.5873}{z - 1}

so KP=Kα=0.1191K_P = K\alpha = 0.1191 and KI=K(1−α)=0.0837K_I = K(1-\alpha) = 0.0837.

Step 5: Static velocity error constant

Kv=lim⁡z→1(1−z−1)GDGT=12.5⋅K(1−α)⋅1.58031−0.3679=0.0837×2.52.5=0.0837 s−1\begin{aligned} K_v &= \lim_{z\to1}\frac{(1-z^{-1})G_DG}{T} = \frac{1}{2.5}\cdot K(1-\alpha)\cdot\frac{1.5803}{1-0.3679} \\ &= \frac{0.0837 \times 2.5}{2.5} = 0.0837\ \text{s}^{-1} \end{aligned}

The steady-state error for a unit ramp is 1/Kv=11.91/K_v = 11.9.

Check: the closed-loop roots are 0.5629±j0.40900.5629 \pm j0.4090 (as designed), 0.75620.7562 and −0.5141-0.5141. The real pole near the PI zero (0.5873) is only partly cancelled and adds a slow tail.

Answer (with T=2.5T = 2.5 s): GD(z)=0.2028z−0.5873z−1G_D(z) = 0.2028\dfrac{z-0.5873}{z-1} and Kv=0.0837 s−1K_v = 0.0837\ \text{s}^{-1}.

  • 2072 Asoj · 12 marks

Consider the digital control system as shown in figure below, where the plant is of the first order and has a dead time of 5 second. By choosing reasonable sampling time T, design a digital PI controller such that the dominant closed loop poles have a damping ratio ζ of 0.5 and the number of samples per cycle of damped oscillation is 10. After the controller is designed, determine the response of the system to a unit step input. [Figure: unity-feedback loop: r(t)/R(z) → summing junction → sampler (δT = T) → digital PI controller → ZOH → e⁻⁵ˢ/(s+0.4) → c(t)/C(z)]

Answer

A digital PI controller GD(z)=Kp+Ki1−z−1=Kz−az−1G_D(z)=K_p+\dfrac{K_i}{1-z^{-1}}=K\dfrac{z-a}{z-1} is designed by the root-locus (angle and magnitude) method in the z-plane. The plant is Gp(s)=e−5ss+0.4G_p(s)=\dfrac{e^{-5s}}{s+0.4} (time constant 2.5 s, dead time 5 s).

Choice of sampling period

  • The dead time should be a whole number of sampling periods, so T=5/NT = 5/N.
  • Ten samples per cycle fixes the angle of the desired pole at ωdT=2π/10=36∘\omega_d T = 2\pi/10 = 36^\circ, whatever T is. Each sample of delay (z−1z^{-1}) then adds 36∘36^\circ of phase lag at that pole.
  • With T=1T = 1 s (N=5N = 5) the delay alone gives 5×36∘=180∘5\times36^\circ = 180^\circ. The poles at z=1z=1 and z=e−0.4z=e^{-0.4} add more than 180∘180^\circ again, and one PI zero cannot make up the difference, so no PI controller exists.
  • Choose T=2.5T = 2.5 s: this equals the plant time constant, the dead time is 2T2T, and the angle condition can be met.

Pulse transfer function of the plant (with ZOH)

With e−0.4T=e−1=0.3679e^{-0.4T}=e^{-1}=0.3679:

G(z)=z−2(1−z−1) Z[1s(s+0.4)]=z−2 (1−e−1)/0.4z−e−1=1.5803z2(z−0.3679)\begin{aligned} G(z) &= z^{-2}(1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s(s+0.4)}\right] = z^{-2}\,\frac{(1-e^{-1})/0.4}{z-e^{-1}}\\ &= \frac{1.5803}{z^{2}(z-0.3679)} \end{aligned}

Desired closed-loop poles

∣z∣=exp⁡(−2πζ101−ζ2)=exp⁡(−0.6283×0.50.8660)=0.6958z1=0.6958∠36∘=0.5629+j0.4090\begin{aligned} |z| &= \exp\left(-\frac{2\pi\zeta}{10\sqrt{1-\zeta^2}}\right) = \exp\left(-\frac{0.6283\times0.5}{0.8660}\right) = 0.6958\\ z_1 &= 0.6958\angle 36^\circ = 0.5629 + j0.4090 \end{aligned}

(This gives ωd=0.2513\omega_d = 0.2513 rad/s and ωn=0.2902\omega_n = 0.2902 rad/s.)

Angle condition

Open loop: GD(z)G(z)=1.5803K(z−a)z2(z−0.3679)(z−1)G_D(z)G(z) = \dfrac{1.5803K(z-a)}{z^2(z-0.3679)(z-1)}. Pole angles at z1z_1:

PoleAngle at z1z_1
z=0z=0 (double)2×36∘=72.0∘2\times36^\circ = 72.0^\circ
z=0.3679z=0.367964.5∘64.5^\circ
z=1z=1136.9∘136.9^\circ
Total273.4∘273.4^\circ

The zero must give 273.4∘−180∘=93.4∘273.4^\circ - 180^\circ = 93.4^\circ:

a=0.5629−0.4090tan⁡93.4∘=0.5873a = 0.5629 - \frac{0.4090}{\tan 93.4^\circ} = 0.5873

Magnitude condition

K=∣z12(z1−0.3679)(z1−1)1.5803(z1−0.5873)∣=0.2028K = \left|\frac{z_1^2(z_1-0.3679)(z_1-1)}{1.5803(z_1-0.5873)}\right| = 0.2028 GD(z)=0.2028(z−0.5873)z−1=0.1191+0.08371−z−1G_D(z) = \frac{0.2028(z-0.5873)}{z-1} = 0.1191 + \frac{0.0837}{1-z^{-1}}

So Kp=Ka=0.1191K_p = Ka = 0.1191 and Ki=K(1−a)=0.0837K_i = K(1-a) = 0.0837.

Unit-step response

C(z)R(z)=0.3204(z−0.5873)z4−1.3679z3+0.3679z2+0.3204z−0.1882\frac{C(z)}{R(z)} = \frac{0.3204(z-0.5873)}{z^4-1.3679z^3+0.3679z^2+0.3204z-0.1882}

Closed-loop poles: 0.5629±j0.40900.5629\pm j0.4090 (designed), 0.75620.7562 and −0.5141-0.5141. Solving the difference equation with r(k)=1r(k)=1:

k0–23456781012152029
c(kT)00.3200.5710.7950.9070.9580.9620.9470.9570.9870.9971.000
  • Output is zero for 3 samples (2 for the dead time, 1 for ZOH plus computation).
  • The extra real pole at 0.7562 slows the final approach, so the response rises to about 0.96, dips slightly and creeps up to 1 with almost no overshoot.
  • Because of the integral action, steady-state error to a step is zero: c(∞)=1c(\infty)=1. Kv=K(1−a)(1.5803)/[T(1−0.3679)]=0.0837 s−1K_v = K(1-a)(1.5803)/[T(1-0.3679)] = 0.0837\ \text{s}^{-1}.

Answer: T=2.5T = 2.5 s, GD(z)=0.2028(z−0.5873)/(z−1)G_D(z) = 0.2028(z-0.5873)/(z-1) (Kp=0.1191K_p = 0.1191, Ki=0.0837K_i = 0.0837); the step response settles at 1 with zero steady-state error.

  • 2075 Baisakh · 16 marks

A control system block diagram shown in figure below is of satellite communication system. Design a lead compensator D(z) to stabilize a satellite position. The sampling rate of digital controller is 10 samples per second. Consider design criteria: (i) damping ratio must be greater than 0.6, (ii) damped natural frequency should not exceed 1 Hz i.e. ωd<0.1ωₙ, and the time constant for the closed loop control system should be less than 0.5 second with 5% criterion for settling time. [Figure: summing junction → D(z) → ZOH → 0.02/s (volts to rps) → 1/s (rps to rev) → output; feedback through gain 360 (degrees) to the negative input; sampler T = 0.1 s; sketch of a satellite dish]

Answer

The satellite is a double integrator. With proportional control alone the loop is only marginally stable, so a lead compensator D(z)=Kz−az−bD(z)=K\dfrac{z-a}{z-b} (b<ab<a) is designed by the z-plane root-locus method.

Plant and loop gain

The loop is ZOH, then 0.02/s0.02/s, then 1/s1/s, then the feedback gain 360. The loop transfer function is

Gp(s)=0.02×360s2=7.2s2,T=0.1 sG_p(s) = \frac{0.02\times360}{s^2} = \frac{7.2}{s^2}, \qquad T = 0.1\ \text{s}

For a ZOH followed by 1/s21/s^2:

G(z)=(1−z−1) Z[7.2s3]=7.2 T2(z+1)2(z−1)2=0.036(z+1)(z−1)2\begin{aligned} G(z) &= (1-z^{-1})\,\mathcal{Z}\left[\frac{7.2}{s^3}\right] = 7.2\,\frac{T^2(z+1)}{2(z-1)^2}\\ &= \frac{0.036(z+1)}{(z-1)^2} \end{aligned}

The two poles at z=1z=1 give two branches that leave the unit circle, so the uncompensated system cannot be stabilised by gain alone.

Translating the specifications

  • ζ>0.6\zeta > 0.6: choose ζ=0.707\zeta = 0.707.
  • Time constant 1/(ζωn)<0.51/(\zeta\omega_n) < 0.5 s (5% settling time 3/ζωn<1.53/\zeta\omega_n < 1.5 s): choose σ=ζωn=3 s−1\sigma = \zeta\omega_n = 3\ \text{s}^{-1}, so the time constant is 0.333 s and ts≈1t_s \approx 1 s.
  • ωd≤0.1 ωs=0.1(2π/0.1)=2π\omega_d \le 0.1\,\omega_s = 0.1(2\pi/0.1) = 2\pi rad/s (1 Hz): with ζ=0.707\zeta=0.707, ωd=σ=3\omega_d = \sigma = 3 rad/s (0.48 Hz). This is satisfied.

So ωn=4.243\omega_n = 4.243 rad/s and

∣z1∣=e−σT=e−0.3=0.7408,∠z1=ωdT=0.3 rad=17.19∘z1=0.7077+j0.2189\begin{aligned} |z_1| &= e^{-\sigma T} = e^{-0.3} = 0.7408, \quad \angle z_1 = \omega_d T = 0.3\ \text{rad} = 17.19^\circ\\ z_1 &= 0.7077 + j0.2189 \end{aligned}

Angle deficiency

FactorAngle at z1z_1
zero at z=−1z=-1+7.31∘+7.31^\circ
double pole at z=1z=1−2×143.16∘=−286.33∘-2\times143.16^\circ = -286.33^\circ
Plant total−279.02∘-279.02^\circ

The compensator must add −180∘−(−279.02∘)=+99.02∘-180^\circ - (-279.02^\circ) = +99.02^\circ of phase lead.

Placing the zero and pole

Put the zero at a=0.8a = 0.8 (near z=1z=1, which reduces the pull of the double pole):

  • angle of (z1−0.8)(z_1-0.8) is 112.85∘112.85^\circ
  • the pole must give 112.85∘−99.02∘=13.83∘112.85^\circ - 99.02^\circ = 13.83^\circ:
b=0.7077−0.2189tan⁡13.83∘=−0.1816b = 0.7077 - \frac{0.2189}{\tan 13.83^\circ} = -0.1816

Gain

K=∣(z1−1)2(z1+0.1816)0.036(z1+1)(z1−0.8)∣=8.294K = \left|\frac{(z_1-1)^2(z_1+0.1816)}{0.036(z_1+1)(z_1-0.8)}\right| = 8.294 D(z)=8.294(z−0.8)z+0.1816D(z) = \frac{8.294(z-0.8)}{z+0.1816}

Check

  • Characteristic equation (z−1)2(z+0.1816)+0.2986(z+1)(z−0.8)=0(z-1)^2(z+0.1816) + 0.2986(z+1)(z-0.8) = 0 has roots 0.7077±j0.21890.7077 \pm j0.2189 (designed) and 0.10440.1044 (fast, negligible).
  • Simulated step response (T = 0.1 s): settles within 5% in about 1.1 s, which meets ts<1.5t_s < 1.5 s. The peak is about 1.36 at t=0.5t = 0.5 s. This overshoot is larger than ζ=0.707\zeta=0.707 alone predicts because of the closed-loop zeros at 0.8 and −1, which are usual for a type-2 loop.
  • The acceleration constant is Ka=10.1 s−2K_a = 10.1\ \text{s}^{-2}, so steady-state error is zero for step and ramp commands.
 r -->(+)-->[D(z)]-->[ZOH]-->[0.02/s]-->[1/s]--+--> c
       ^-                                       |
       +-----------------[360]<-----------------+

Answer: D(z)=8.294 z−0.8z+0.1816D(z) = 8.294\,\dfrac{z-0.8}{z+0.1816}, giving dominant poles 0.7077±j0.21890.7077\pm j0.2189 (ζ=0.707\zeta=0.707, ωn=4.24\omega_n=4.24 rad/s, time constant 0.33 s).

  • 2075 Bhadra · 4 marks

Discuss the situations where you prefer phase lag/lead controllers and PID controllers.

Answer

Lag/lead compensators and PID controllers both reshape the loop, but each fits a different situation.

Prefer a phase-lead compensator when

  • the system is stable but has a poor transient response (low phase margin, large overshoot, slow rise);
  • you need a higher bandwidth and faster response, and some extra noise sensitivity is acceptable;
  • the plant has an integrator or a double integrator (e.g. satellite or position servo) that needs phase lead to stabilise it.

Prefer a phase-lag compensator when

  • the transient response is already satisfactory but the steady-state error is too large (low KpK_p, KvK_v);
  • low-frequency gain must be raised without changing the crossover frequency much;
  • high-frequency noise must be attenuated, and a slower response is acceptable.

A lag–lead compensator is used when both the transient and the steady-state response must be improved.

Prefer a PID controller when

  • the plant model is not accurately known and the controller must be tuned on site (Ziegler–Nichols rules, for example);
  • zero steady-state error to a step is needed (integral action) together with damping (derivative action);
  • the plant is a process plant (temperature, pressure, flow, level) with slow dynamics or dead time, where PID is the industry standard;
  • the controller must be simple, with three parameters an operator can understand.
SituationPreferred controller
Good steady state, poor transientLead
Good transient, poor steady stateLag
Both poor, model knownLag–lead
Model unknown, tuning in fieldPID
Process plants with dead timePI / PID
Noisy measurementLag or PI (avoid D)
  • 2072 Asoj · 6 marks

Write down the general procedures for frequency response design in discrete time control system.

Answer

Frequency-response design of a discrete-time system is done in the w-plane. The bilinear transformation maps the unit circle of the z-plane onto the imaginary axis of the w-plane, so the usual Bode-diagram methods can be used.

Procedure

  1. Find the pulse transfer function of the plant with the zero-order hold: G(z)=(1−z−1) Z[Gp(s)/s]G(z) = (1-z^{-1})\,\mathcal{Z}[G_p(s)/s].
  2. Transform to the w-plane with the bilinear transformation: z=1+(T/2)w1−(T/2)w,G(w)=G(z)∣z=1+Tw/21−Tw/2z = \frac{1 + (T/2)w}{1 - (T/2)w}, \qquad G(w) = G(z)\Big|_{z=\frac{1+Tw/2}{1-Tw/2}} Write G(w)G(w) in time-constant form. The fictitious frequency ν\nu (w=jνw=j\nu) is related to the actual frequency by ν=2Ttan⁡ωT2\nu = \frac{2}{T}\tan\frac{\omega T}{2}.
  3. Choose the controller gain KK to meet the static error constant (KpK_p, KvK_v or KaK_a), using lim⁡w→0\lim_{w\to0} in the w-plane, which gives the same constants as in the s-plane.
  4. Draw the Bode diagram of KG(jν)KG(j\nu) and read the uncompensated gain crossover frequency, phase margin and gain margin.
  5. Select the compensator GD(w)=1+τw1+ατwG_D(w) = \dfrac{1+\tau w}{1+\alpha\tau w}:
    • lead (α<1\alpha<1): needed phase ϕm=PMrequired−PMexisting+5∘ to 12∘\phi_m = \text{PM}_{\text{required}} - \text{PM}_{\text{existing}} + 5^\circ\text{ to }12^\circ; sin⁡ϕm=1−α1+α\sin\phi_m = \frac{1-\alpha}{1+\alpha}; place ϕm\phi_m at the new crossover where ∣KG(jν)∣=α|KG(j\nu)| = \sqrt{\alpha}; τ=1/(νcα)\tau = 1/(\nu_c\sqrt{\alpha});
    • lag (α>1\alpha>1 in this form): put the new crossover where the phase gives the required PM, and place the corner frequencies one decade below it.
  6. Check the compensated Bode diagram for phase margin, gain margin and bandwidth. Repeat step 5 if needed.
  7. Transform back to the z-plane with w=2T z−1z+1w = \frac{2}{T}\,\frac{z-1}{z+1} to get GD(z)G_D(z), which is then realised as a difference equation in the computer.
  8. Verify with the closed-loop step response (simulation), and check that the sampling period is small compared with the closed-loop bandwidth (8–10 samples per cycle).
 G(s) --ZOH--> G(z) --bilinear--> G(w) --Bode--> GD(w)
                                                   |
       GD(z)  <---------- w = (2/T)(z-1)/(z+1) ----+

Points to remember

  • The w-plane magnitude is not bounded at ν→∞\nu \to \infty as in the s-plane: G(w)G(w) usually has a zero at w=2/Tw = 2/T (non-minimum phase), which adds lag at high frequency.
  • Since ν≈ω\nu \approx \omega for ωT≪1\omega T \ll 1, the design reads like a continuous-time design when sampling is fast.
  • 2072 Magh · 16 marks

Design a digital controller for the system shown below. Use the Bode diagram approach in s plane. The design specifications are that the phase margin be 55°, the gain margin be at least 10 dB and the static velocity error constant be 5 sec⁻¹. The sampling period is specified as 0.1 sec. [Figure: unity-feedback loop: R(z) → summing junction → sampler → digital controller → ZOH → plant 1/s(s+2) → C(z)]

Answer

The design is done in the w-plane (bilinear transformation), where the Bode diagram can be used as in the s-plane. A lead compensator GD(w)=K1+τw1+ατwG_D(w) = K\dfrac{1+\tau w}{1+\alpha\tau w} is used.

Step 1: Pulse transfer function of the plant

With T=0.1T = 0.1 s and e−0.2=0.8187e^{-0.2} = 0.8187:

G(z)=(1−z−1) Z[1s2(s+2)]=0.004683z+0.004381(z−1)(z−0.8187)=0.004683(z+0.9355)(z−1)(z−0.8187)\begin{aligned} G(z) &= (1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s^2(s+2)}\right]\\ &= \frac{0.004683z + 0.004381}{(z-1)(z-0.8187)} = \frac{0.004683(z+0.9355)}{(z-1)(z-0.8187)} \end{aligned}

Step 2: Transform to the w-plane

Substitute z=1+0.05w1−0.05wz = \dfrac{1+0.05w}{1-0.05w}:

G(w)=0.5(1−w20)(1+w600.4)w (1+0.5017w)G(w) = \frac{0.5\left(1-\frac{w}{20}\right)\left(1+\frac{w}{600.4}\right)}{w\,(1+0.5017w)}

Step 3: Gain for Kv=5K_v = 5

Kv=lim⁡w→0w GD(w)G(w)=K×0.5=5  ⇒  K=10K_v = \lim_{w\to0} w\,G_D(w)G(w) = K\times0.5 = 5 \;\Rightarrow\; K = 10

Step 4: Uncompensated Bode data (10 G(jν)10\,G(j\nu))

ν\nu (rad/s)12461020
Magnitude (dB)13.05.0−4.9−11.2−19.2−29.1
Phase (deg)−119.4−140.6−164.4−177.8−194.3−217.4

Gain crossover is at ν=2.88\nu = 2.88 rad/s and the phase margin is only 26.8°. About 28° or more of lead is needed. The w-plane zero at w=20w=20 adds extra lag at high frequency, so a larger lead is needed than in a continuous design.

Step 5: Lead compensator

Choose the compensator zero to cancel the plant pole at w=−1.993w = -1.993, so τ=0.5017\tau = 0.5017. Then reduce α\alpha until PM = 55°:

α\alphaNew crossover νc\nu_cPMGM
0.254.4748.6°12.3 dB
0.204.6552.3°12.3 dB
0.174.7655.0°12.3 dB
GD(w)=10 1+0.5017w1+0.0853wG_D(w) = 10\,\frac{1 + 0.5017w}{1 + 0.0853w}

Compensated loop: GD(w)G(w)=5(1−w/20)(1+w/600.4)w(1+0.0853w)G_D(w)G(w) = \dfrac{5(1-w/20)(1+w/600.4)}{w(1+0.0853w)}. Phase margin = 55°, phase crossover at ν=15.7\nu = 15.7 rad/s, gain margin = 12.3 dB (≥ 10 dB).

Step 6: Back to the z-plane

Substitute w=2Tz−1z+1=20z−1z+1w = \dfrac{2}{T}\dfrac{z-1}{z+1} = 20\dfrac{z-1}{z+1}:

GD(z)=10 1+10.033z−1z+11+1.706z−1z+1=40.78 z−0.8187z−0.2608\begin{aligned} G_D(z) &= 10\,\frac{1+10.033\frac{z-1}{z+1}}{1+1.706\frac{z-1}{z+1}} = 40.78\,\frac{z-0.8187}{z-0.2608} \end{aligned}

Check of KvK_v

Kv=1Tlim⁡z→1(z−1)GD(z)G(z)=10.1×40.78×0.18130.7392×0.0090630.1813=5.0 s−1K_v = \frac{1}{T}\lim_{z\to1}(z-1)G_D(z)G(z) = \frac{1}{0.1}\times40.78\times\frac{0.1813}{0.7392}\times\frac{0.009063}{0.1813} = 5.0\ \text{s}^{-1}

Answer: GD(z)=40.78 z−0.8187z−0.2608G_D(z) = 40.78\,\dfrac{z-0.8187}{z-0.2608}, giving PM ≈ 55°, GM ≈ 12.3 dB and Kv=5 s−1K_v = 5\ \text{s}^{-1}.

  • 2071 Bhadra · 6 marks

Draw root locus plot for the given system below. [Figure: unity-feedback loop: R(s)=1/s → summing junction → sampler (T = 0.5 sec) → ZOH → 1/s(s+1) → C(s)]

Answer

The root locus is drawn in the z-plane for the open-loop pulse transfer function with gain K in the forward path.

Open-loop pulse transfer function

With T=0.5T = 0.5 s and e−0.5=0.6065e^{-0.5} = 0.6065:

G(z)=K(1−z−1) Z[1s2(s+1)]=K (T−1+e−T)z+(1−e−T−Te−T)(z−1)(z−e−T)=K(0.1065z+0.0902)(z−1)(z−0.6065)=0.1065K(z+0.8467)(z−1)(z−0.6065)\begin{aligned} G(z) &= K(1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s^2(s+1)}\right] = K\,\frac{(T-1+e^{-T})z + (1-e^{-T}-Te^{-T})}{(z-1)(z-e^{-T})}\\ &= \frac{K(0.1065z + 0.0902)}{(z-1)(z-0.6065)} = \frac{0.1065K(z+0.8467)}{(z-1)(z-0.6065)} \end{aligned}
  • Open-loop poles: z=1z = 1, z=0.6065z = 0.6065
  • Open-loop zero: z=−0.8467z = -0.8467 (the other branch ends at −∞-\infty)

Construction

  1. Real-axis locus: between 0.6065 and 1, and to the left of −0.8467.
  2. Breakaway / break-in points from dK/dz=0dK/dz = 0, where K=−(z−1)(z−0.6065)0.1065(z+0.8467)K = -\dfrac{(z-1)(z-0.6065)}{0.1065(z+0.8467)}: z2+1.6935z−1.9667=0  ⇒  z=0.7915  (K=0.221),z=−2.4850  (K=61.7)z^2 + 1.6935z - 1.9667 = 0 \;\Rightarrow\; z = 0.7915\ \ (K = 0.221),\quad z = -2.4850\ \ (K = 61.7)
  3. Complex part: for one real zero and two real poles the complex part is a circle centred at the zero: centre =−0.8467= -0.8467, radius =(1+0.8467)(0.6065+0.8467)=1.638= \sqrt{(1+0.8467)(0.6065+0.8467)} = 1.638.
  4. Crossing of the unit circle: characteristic equation z2+(0.1065K−1.6065)z+(0.6065+0.0902K)=0z^2 + (0.1065K - 1.6065)z + (0.6065 + 0.0902K) = 0 For complex roots ∣z∣2=0.6065+0.0902K=1|z|^2 = 0.6065 + 0.0902K = 1, so Kc=4.36K_c = 4.36. The roots are then z=0.571±j0.821z = 0.571 \pm j0.821 (angle 55.2°, ω=1.93\omega = 1.93 rad/s).

Sketch

              Im
              |      . unit circle
          .   |   x  <- K=4.36, z=0.57+j0.82
      .       |       .
    o---------+----x--x---> Re
  -2.48  -0.85|  0.61 | 1
  break-in  zero      breakaway 0.79
      .       |       .
          .   |   x  <- K=4.36
              |
  circle: centre -0.85, radius 1.64

Result

  • For 0<K<0.2210 < K < 0.221: two real closed-loop poles between 0.6065 and 1 (overdamped).
  • For 0.221<K<61.70.221 < K < 61.7: complex poles on the circle. They lie inside the unit circle only while K<4.36K < 4.36.
  • The system is stable for 0<K<4.360 < K < 4.36; at K=4.36K = 4.36 it oscillates at about 1.93 rad/s.
  • The input R(s)=1/sR(s) = 1/s does not change the locus; it only decides the step response.
  • 2071 Bhadra · 5 marks

Explain how PID controller is realized in discrete time domain. Discuss the role of P, I and D parts.

Answer

A digital PID controller is obtained by replacing the integral and derivative of the analog PID law with sums and differences of the sampled error e(kT)e(kT).

Analog PID law

m(t)=K[e(t)+1Ti∫0te(t) dt+Tdde(t)dt]m(t) = K\left[e(t) + \frac{1}{T_i}\int_0^t e(t)\,dt + T_d\frac{de(t)}{dt}\right]

Discretization

  • Integral by the trapezoidal rule, derivative by the backward difference:
m(kT)=K{e(kT)+TTi∑h=1ke((h−1)T)+e(hT)2+TdT[e(kT)−e((k−1)T)]}m(kT) = K\left\{e(kT) + \frac{T}{T_i}\sum_{h=1}^{k}\frac{e((h-1)T)+e(hT)}{2} + \frac{T_d}{T}\big[e(kT)-e((k-1)T)\big]\right\}
  • Taking the z-transform:
M(z)E(z)=GD(z)=KP+KI1−z−1+KD(1−z−1)KP=K−KT2Ti,KI=KTTi,KD=KTdT\begin{aligned} \frac{M(z)}{E(z)} = G_D(z) &= K_P + \frac{K_I}{1-z^{-1}} + K_D(1-z^{-1})\\ K_P = K - \frac{KT}{2T_i},\quad K_I &= \frac{KT}{T_i},\quad K_D = \frac{KT_d}{T} \end{aligned}

Realization (velocity / recursive form)

Multiplying by (1−z−1)(1-z^{-1}) gives an algorithm that needs only the last two errors and the last output:

m(k)=m(k−1)+(KP+KI+KD)e(k)−(KP+2KD)e(k−1)+KDe(k−2)m(k) = m(k-1) + (K_P+K_I+K_D)e(k) - (K_P+2K_D)e(k-1) + K_De(k-2)
          +--> [ KP ] -----------------+
          |                            v
 e(k) ----+--> [ KI/(1-z^-1) ] ---->( + )---> m(k)
          |                            ^
          +--> [ KD(1-z^-1) ] ---------+

The computer runs this equation once every sampling period, and the D/A converter with a zero-order hold applies m(k)m(k) to the plant.

Role of each part

  • P (proportional): gives an output proportional to the present error. A larger KPK_P makes the response faster and reduces steady-state error, but too much gain causes overshoot and instability.
  • I (integral): adds a pole at z=1z=1 and accumulates past error. It removes steady-state error to a step (raises the system type by one) but adds phase lag, so it can make the response more oscillatory. Anti-windup is needed when the actuator saturates.
  • D (derivative): responds to the rate of change of error, so it anticipates future error. It adds damping, reduces overshoot and improves stability, but it amplifies high-frequency measurement noise. It is often applied to the measured output instead of the error, with a filter.
  • 2068 Magh · 16 marks

Design a digital controller for the system shown in figure below so that dominant closed loop poles of the system will have damping ratio of 0.5. It is required that the peak time of the response tₚ≤ 1.2 sec. Assume sampling time T = 0.2 sec. [Figure: unity-feedback loop: R(z) → summing junction → sampler → digital controller → m*(kT) → ZOH → 1/s(s+1) → C(z)]

Answer

A lead-type digital controller GD(z)=Kz−αz−βG_D(z) = K\dfrac{z-\alpha}{z-\beta} is designed by the z-plane root-locus method. Its zero cancels the slow plant pole.

Plant pulse transfer function (T=0.2T = 0.2 s)

With e−0.2=0.8187e^{-0.2} = 0.8187:

G(z)=(1−z−1) Z[1s2(s+1)]=(T−1+e−T)z+(1−e−T−Te−T)(z−1)(z−e−T)=0.01873(z+0.9355)(z−1)(z−0.8187)\begin{aligned} G(z) &= (1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s^2(s+1)}\right] = \frac{(T-1+e^{-T})z + (1-e^{-T}-Te^{-T})}{(z-1)(z-e^{-T})}\\ &= \frac{0.01873(z+0.9355)}{(z-1)(z-0.8187)} \end{aligned}

Desired dominant poles

tp=πωd=1.2⇒ωd=2.618 rad/sωn=ωd1−0.52=3.023 rad/s,ζωn=1.511∣z∣=e−ζωnT=e−0.3023=0.7391,∠z=ωdT=0.5236 rad=30∘z1=0.6401+j0.3696\begin{aligned} t_p &= \frac{\pi}{\omega_d} = 1.2 \Rightarrow \omega_d = 2.618\ \text{rad/s}\\ \omega_n &= \frac{\omega_d}{\sqrt{1-0.5^2}} = 3.023\ \text{rad/s},\quad \zeta\omega_n = 1.511\\ |z| &= e^{-\zeta\omega_nT} = e^{-0.3023} = 0.7391, \quad \angle z = \omega_dT = 0.5236\ \text{rad} = 30^\circ\\ z_1 &= 0.6401 + j0.3696 \end{aligned}

That is 12 samples per cycle of damped oscillation, which is adequate.

Angle deficiency

FactorAngle at z1z_1
zero at −0.9355-0.9355+13.20∘+13.20^\circ
pole at 11−134.24∘-134.24^\circ
pole at 0.81870.8187−115.80∘-115.80^\circ
Total−236.84∘-236.84^\circ

The controller must add +56.84∘+56.84^\circ.

Controller zero and pole

  • Zero at α=0.8187\alpha = 0.8187 cancels the plant pole and removes its −115.80∘-115.80^\circ.
  • Then the controller pole must give 13.20∘−134.24∘−θβ=−180∘13.20^\circ - 134.24^\circ - \theta_\beta = -180^\circ, so θβ=58.96∘\theta_\beta = 58.96^\circ:
β=0.6401−0.3696tan⁡58.96∘=0.4177\beta = 0.6401 - \frac{0.3696}{\tan 58.96^\circ} = 0.4177

Gain

K=∣(z1−1)(z1−0.4177)0.01873(z1+0.9355)∣=7.340K = \left|\frac{(z_1-1)(z_1-0.4177)}{0.01873(z_1+0.9355)}\right| = 7.340 GD(z)=7.340 z−0.8187z−0.4177G_D(z) = 7.340\,\frac{z-0.8187}{z-0.4177}

Check

  • Characteristic equation: z2−1.2802z+0.5463=0z^2 - 1.2802z + 0.5463 = 0, roots 0.6401±j0.36960.6401 \pm j0.3696, which is the design point.
  • Step response: c(kT)=0, 0.138, 0.442, 0.757, 0.994, 1.125, 1.163, 1.141, …c(kT) = 0,\ 0.138,\ 0.442,\ 0.757,\ 0.994,\ 1.125,\ 1.163,\ 1.141,\ \ldots. The peak is 1.163 at t=6T=1.2t = 6T = 1.2 s, so tp≤1.2t_p \le 1.2 s is met.
  • Velocity error constant:
Kv=1Tlim⁡z→1(z−1)GD(z)G(z)=7.340×0.036250.2×(1−0.4177)=2.28 s−1K_v = \frac{1}{T}\lim_{z\to1}(z-1)G_D(z)G(z) = \frac{7.340\times0.03625}{0.2\times(1-0.4177)} = 2.28\ \text{s}^{-1}

Answer: GD(z)=7.340 z−0.8187z−0.4177G_D(z) = 7.340\,\dfrac{z-0.8187}{z-0.4177}, giving closed-loop poles 0.6401±j0.36960.6401\pm j0.3696 (ζ=0.5\zeta=0.5, tp=1.2t_p=1.2 s).

  • 2068 Jestha · 16 marks

Consider the system shown below. Design a digital controller such that the dominant closed loop poles of the system will have damping ratio ζ of 0.55. It is required that the peak time of the response be 1.2 sec. Assume that the sampling period T be 0.2. Also obtain Kᵥ for the designed system. [Figure: unity-feedback loop: r(t)/R(z) → summing junction → sampler → digital controller → (1-e⁻ᵀˢ)/s → 1/s(s+1) → c(t)/C(z)]

Answer

A lead-type digital controller GD(z)=Kz−αz−βG_D(z)=K\dfrac{z-\alpha}{z-\beta} is designed by the root-locus method in the z-plane. Its zero cancels the plant pole at e−Te^{-T}.

Plant pulse transfer function (T=0.2T = 0.2 s)

G(z)=(1−z−1) Z[1s2(s+1)]=0.01873(z+0.9355)(z−1)(z−0.8187)G(z) = (1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s^2(s+1)}\right] = \frac{0.01873(z+0.9355)}{(z-1)(z-0.8187)}

Desired dominant poles

ωd=πtp=π1.2=2.618 rad/sωn=2.6181−0.552=3.135 rad/s,ζωn=1.724∣z∣=e−1.724×0.2=0.7083,∠z=2.618×0.2=0.5236 rad=30∘z1=0.6134+j0.3542\begin{aligned} \omega_d &= \frac{\pi}{t_p} = \frac{\pi}{1.2} = 2.618\ \text{rad/s}\\ \omega_n &= \frac{2.618}{\sqrt{1-0.55^2}} = 3.135\ \text{rad/s},\quad \zeta\omega_n = 1.724\\ |z| &= e^{-1.724\times0.2} = 0.7083,\quad \angle z = 2.618\times0.2 = 0.5236\ \text{rad} = 30^\circ\\ z_1 &= 0.6134 + j0.3542 \end{aligned}

Angle condition

FactorAngle at z1z_1
zero at −0.9355-0.9355+12.88∘+12.88^\circ
pole at 11−137.50∘-137.50^\circ
pole at 0.81870.8187−120.10∘-120.10^\circ
Total−244.72∘-244.72^\circ

The angle deficiency is 64.72∘64.72^\circ, so lead compensation is needed.

  • Place the controller zero at α=0.8187\alpha = 0.8187 to cancel the plant pole.
  • The controller pole angle must be θβ=12.88∘−137.50∘+180∘=55.38∘\theta_\beta = 12.88^\circ - 137.50^\circ + 180^\circ = 55.38^\circ:
β=0.6134−0.3542tan⁡55.38∘=0.3689\beta = 0.6134 - \frac{0.3542}{\tan 55.38^\circ} = 0.3689

Gain from the magnitude condition

K=∣(z1−1)(z1−0.3689)0.01873(z1+0.9355)∣=7.582K = \left|\frac{(z_1-1)(z_1-0.3689)}{0.01873(z_1+0.9355)}\right| = 7.582 GD(z)=7.582 z−0.8187z−0.3689G_D(z) = 7.582\,\frac{z-0.8187}{z-0.3689}

Check

  • Closed-loop characteristic equation: z2−1.2269z+0.5018=0z^2 - 1.2269z + 0.5018 = 0, roots 0.6134±j0.35420.6134 \pm j0.3542.
  • Step response peak c=1.126c = 1.126 at k=6k = 6, i.e. tp=1.2t_p = 1.2 s.

Velocity error constant

Kv=1Tlim⁡z→1(z−1)GD(z)G(z)=10.2⋅7.582×0.01873(1.9355)1−0.3689=2.18 s−1\begin{aligned} K_v &= \frac{1}{T}\lim_{z\to1}(z-1)G_D(z)G(z) = \frac{1}{0.2}\cdot\frac{7.582\times0.01873(1.9355)}{1-0.3689}\\ &= 2.18\ \text{s}^{-1} \end{aligned}

So the steady-state error to a unit ramp is 1/Kv=0.4591/K_v = 0.459.

Answer: GD(z)=7.582 z−0.8187z−0.3689G_D(z) = 7.582\,\dfrac{z-0.8187}{z-0.3689}; Kv=2.18 s−1K_v = 2.18\ \text{s}^{-1}.

  • 2067 Mangsir · 16 marks

Consider the system shown below. Design a digital PI controller such that the dominant closed loop poles have a damping ratio of 0.55 and number of samples per cycle of damped oscillation is 10. Also find Kᵥ for the designed system. [Figure: unity-feedback loop: R(z) → summing junction → sampler → GD(z) → (1-e⁻ᵀˢ)/s → e⁻²ˢ/(s+2) → C(z)]

Answer

A digital PI controller GD(z)=Kp+Ki1−z−1=Kz−az−1G_D(z) = K_p + \dfrac{K_i}{1-z^{-1}} = K\dfrac{z-a}{z-1} is designed with the root-locus angle and magnitude conditions. The sampling period is not given; T=1T = 1 s is assumed. It makes the 2 s dead time exactly two samples and allows a feasible PI design.

Plant pulse transfer function

With e−2T=e−2=0.1353e^{-2T} = e^{-2} = 0.1353:

G(z)=z−2(1−z−1) Z[1s(s+2)]=z−2 (1−e−2)/2z−e−2=0.4323z2(z−0.1353)\begin{aligned} G(z) &= z^{-2}(1-z^{-1})\,\mathcal{Z}\left[\frac{1}{s(s+2)}\right] = z^{-2}\,\frac{(1-e^{-2})/2}{z-e^{-2}}\\ &= \frac{0.4323}{z^2(z-0.1353)} \end{aligned}

Desired dominant poles

10 samples per cycle gives ωdT=2π/10=36∘\omega_dT = 2\pi/10 = 36^\circ:

∣z∣=exp⁡(−ζ1−ζ2⋅2π10)=exp⁡(−0.55×0.62830.8352)=0.6611z1=0.6611∠36∘=0.5349+j0.3886\begin{aligned} |z| &= \exp\left(-\frac{\zeta}{\sqrt{1-\zeta^2}}\cdot\frac{2\pi}{10}\right) = \exp\left(-\frac{0.55\times0.6283}{0.8352}\right) = 0.6611\\ z_1 &= 0.6611\angle36^\circ = 0.5349 + j0.3886 \end{aligned}

Angle condition

PoleAngle at z1z_1
double pole at 072.00∘72.00^\circ
pole at 0.135344.21∘44.21^\circ
PI pole at 1140.12∘140.12^\circ
Total256.33∘256.33^\circ

The PI zero must contribute 256.33∘−180∘=76.33∘256.33^\circ - 180^\circ = 76.33^\circ:

a=0.5349−0.3886tan⁡76.33∘=0.4403a = 0.5349 - \frac{0.3886}{\tan 76.33^\circ} = 0.4403

Magnitude condition

K=∣z12(z1−0.1353)(z1−1)0.4323(z1−0.4403)∣=0.8540K = \left|\frac{z_1^2(z_1-0.1353)(z_1-1)}{0.4323(z_1-0.4403)}\right| = 0.8540 GD(z)=0.8540 z−0.4403z−1=0.3760+0.47801−z−1G_D(z) = 0.8540\,\frac{z-0.4403}{z-1} = 0.3760 + \frac{0.4780}{1-z^{-1}}

So Kp=Ka=0.3760K_p = Ka = 0.3760 and Ki=K(1−a)=0.4780K_i = K(1-a) = 0.4780.

Check

Characteristic equation: z4−1.1353z3+0.1353z2+0.3692z−0.1626=0z^4 - 1.1353z^3 + 0.1353z^2 + 0.3692z - 0.1626 = 0, with roots 0.5349±j0.38860.5349 \pm j0.3886 (designed), 0.64350.6435 and −0.5780-0.5780. Step response: c(k)=0,0,0,0.369,0.626,0.867,0.970,1.020,1.015,1.003,…→1c(k) = 0, 0, 0, 0.369, 0.626, 0.867, 0.970, 1.020, 1.015, 1.003, \ldots \to 1. The peak is about 2% and there is zero steady-state error.

Velocity error constant

Kv=1Tlim⁡z→1(1−z−1)GD(z)G(z)=K(1−a)×0.4323T(1−0.1353)=0.4780×0.43230.8647=0.239 s−1\begin{aligned} K_v &= \frac{1}{T}\lim_{z\to1}(1-z^{-1})G_D(z)G(z) = \frac{K(1-a)\times0.4323}{T(1-0.1353)}\\ &= \frac{0.4780\times0.4323}{0.8647} = 0.239\ \text{s}^{-1} \end{aligned}

The steady-state error to a unit ramp is 1/Kv=4.181/K_v = 4.18.

Answer: GD(z)=0.8540 z−0.4403z−1G_D(z) = 0.8540\,\dfrac{z-0.4403}{z-1} (Kp=0.376K_p = 0.376, Ki=0.478K_i = 0.478, with T = 1 s); Kv=0.239 s−1K_v = 0.239\ \text{s}^{-1}.

  • 2068 Magh · 4 marks

Write a short note on phase-lead/phase-lag compensator.

Answer

A compensator is an extra block placed in the loop to change the root locus or the frequency response so that the specifications are met. Its digital form is

GD(z)=K z−zcz−pcG_D(z) = K\,\frac{z - z_c}{z - p_c}

Phase-lead compensator

  • The zero is nearer to z=1z = 1 than the pole (pc<zcp_c < z_c), so it gives positive phase, at most ϕm\phi_m where sin⁡ϕm=1−α1+α\sin\phi_m = \frac{1-\alpha}{1+\alpha} (w-plane form 1+τw1+ατw\frac{1+\tau w}{1+\alpha\tau w}, α<1\alpha<1).
  • It moves the root locus to the left (towards the origin of the z-plane), so it increases phase margin, damping and bandwidth.
  • Result: faster response and less overshoot, but more high-frequency noise.

Phase-lag compensator

  • The pole is nearer to z=1z = 1 than the zero (pc>zcp_c > z_c), both close to 1. It gives negative phase but high low-frequency gain.
  • It raises the static error constants (KpK_p, KvK_v) by about 1−pc1−zc\frac{1-p_c}{1-z_c} without much change to the transient response.
  • Result: lower steady-state error and less noise, but a slower response.
FeatureLeadLag
Phase addedPositiveNegative
Main effectTransient responseSteady-state error
BandwidthIncreasesDecreases
NoiseAmplifiedAttenuated
Pole–zero orderZero closer to z=1Pole closer to z=1

A lag–lead compensator combines the two when both transient and steady-state performance must be improved.

  • 2068 Magh · 4 marks

Write a short note on advantage of digital filter.

Answer

A digital filter is a filter carried out as a difference equation on sampled data in a processor, e.g. y(k)=−a1y(k−1)+b0x(k)+b1x(k−1)y(k) = -a_1y(k-1) + b_0x(k) + b_1x(k-1). In control systems the digital controller itself is a digital filter.

Advantages

  • Flexibility: the characteristics are changed by editing coefficients or software, with no rewiring.
  • No drift: performance does not change with temperature, ageing or component tolerance, unlike R, L, C and op-amp circuits.
  • Accuracy and repeatability: set by word length; every unit built behaves identically.
  • Complex and adaptive filters: linear phase (FIR), very sharp cut-offs, notch filters and adaptive or time-varying filters are easy to build.
  • Very low frequencies can be handled without the huge capacitors an analog filter would need.
  • Multiplexing: one processor can filter many channels.
  • Storage and integration: data can be stored, and filtering, control, logging and communication run in the same computer.
  • No impedance-matching or loading problems between stages.

Limitations

Sampling and quantization errors, aliasing (an anti-aliasing analog filter is still needed), a limited bandwidth set by the sampling rate, and a computation delay.

Questions from Old Question Collection (EE 652) (NCE Library scans of IOE Digital Control System papers, 2067 Mangsir to 2082 Chaitra), 2080 course papers (ENEE 304) (New-course (ENEE 304) regular paper, 2082 Chaitra) and Question bank (ioesolutions) (IOE Digital Control System papers, 2067 Mangsir to 2075 Baisakh; used for the second pages of the 2068 Magh and 2068 Jestha papers). Answers are written for this site; check them against your class notes.

Chapter titles and hours from the IOE syllabus ↗