0% found this document useful (0 votes)
197 views33 pages

07 Poles and Zeros of Transfer Function

The document discusses poles and zeros of transfer functions and their effects on system stability. It provides examples of determining poles and zeros from transfer functions manually and using Matlab. Poles correspond to the roots of the denominator polynomial and zeros to the roots of the numerator polynomial. The locations of poles and zeros characterize the system response. Poles in the left half plane lead to stability while poles in the right half plane lead to instability. Matlab commands like tf2zp and pzmap are used to determine and plot poles and zeros from transfer functions.

Uploaded by

Ryan Vasquez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
197 views33 pages

07 Poles and Zeros of Transfer Function

The document discusses poles and zeros of transfer functions and their effects on system stability. It provides examples of determining poles and zeros from transfer functions manually and using Matlab. Poles correspond to the roots of the denominator polynomial and zeros to the roots of the numerator polynomial. The locations of poles and zeros characterize the system response. Poles in the left half plane lead to stability while poles in the right half plane lead to instability. Matlab commands like tf2zp and pzmap are used to determine and plot poles and zeros from transfer functions.

Uploaded by

Ryan Vasquez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 33

Process Control Matlab Exercise No.

Poles and Zeros of a Transfer Function


1. Objective:

The activity aims to determine the poles and zeros of a transfer function manually and numerically using
matlab.
2. Intended Learning Outcomes (ILOs):
The students shall be able to:
understand the effects of poles and zeros of a transfer function in the stability of system.
3. Discussion:

Poles and zeros of a transfer function are the frequencies for which the value of the denominator and
numerator of transfer function becomes zero respectively. The values of the poles and the zeros of a system
determine whether the system is stable, and how well the system performs. Control systems, in the most
simple sense, can be designed simply by assigning specific values to the poles and zeros of the system.
Physically realizable control systems must have a number of poles greater than or equal to the number of
zeros. Systems that satisfy this relationship are called Proper.

The poles and zeros are properties of the transfer function, and therefore of the differential equation
describing the input-output system dynamics. Together with the gain constant K they completely characterize
the differential equation, and provide a complete description of the system.

The transfer function completely represents a system differential equation, its poles and zeros effectively
define the system response. In particular the system poles directly define the components in the
homogeneous response.

Time-Domain Relationships

Let's say that we have a transfer function with 3 poles:

The poles are located at s = -l, -m, -n. Now, we can use partial fraction expansion to separate out the transfer
function:

Using the inverse transform on each of these component fractions (looking up the transforms in our table), we
get the following:
But, since s is a complex variable, l m and n can all potentially be complex numbers, with a real part (σ) and
an imaginary part (jω). If we just look at the first term:

Using Euler's Equation on the imaginary exponent, we get:

And taking the real part of this equation, we are left with our final result:

We can see from this equation that every pole will have an exponential part, and a sinusoidal part to its
response. We can also go about constructing some rules:

1. if σl = 0, the response of the pole is a perfect sinusoid (an oscillator)

if ωl = 0, the response of the pole is a perfect exponential.

if σl > 0, the exponential part of the response will decay towards zero.

if σl < 0, the exponential part of the response will rise towards infinity.
From the last two rules, we can see that all poles of the system must have negative real parts, and therefore
they must all have the form (s + l) for the system to be stable.

What are Poles and Zeros


Let's say we have a transfer function defined as a ratio of two polynomials:

Where N(s) and D(s) are simple polynomials. Zeros are the roots of N(s) (the numerator of the transfer
function) obtained by setting N(s) = 0 and solving for s.

Poles are the roots of D(s) (the denominator of the transfer function), obtained by setting D(s) = 0 and solving
for s. Because of our restriction above, that a transfer function must not have more zeros than poles, we can
state that the polynomial order of D(s) must be greater than or equal to the polynomial order of N(s).
Consider the transfer function:

We define N(s) and D(s) to be the numerator and denominator polynomials, as such:

We set N(s) to zero, and solve for s:

So we have a zero at s → -2. Now, we set D(s) to zero, and solve for s to obtain the poles of the
equation:

And simplifying this gives us poles at: -i/2 , +i/2. Remember, s is a complex variable, and it can therefore take
imaginary and real values.

Effects of Poles and Zeros


As s approaches a zero, the numerator of the transfer function (and therefore the transfer function itself)
approaches the value 0. When s approaches a pole, the denominator of the transfer function approaches
zero, and the value of the transfer function approaches infinity. An output value of infinity should raise an
alarm bell for people who are familiar with BIBO stability.
The locations of the poles, and the values of the real and imaginary parts of the pole determine the response
of the system. Real parts correspond to exponentials, and imaginary parts correspond to sinusoidal values.
Addition of poles to the transfer function has the effect of pulling the root locus to the right, making the system
less stable. Addition of zeros to the transfer function has the effect of pulling the root locus to the left, making
the system more stable.
The Pole-Zero Plot
A system is characterized by its poles and zeros in the sense that they allow reconstruction of the input/output
differential equation. In general, the poles and zeros of a transfer function may be complex, and the system
dynamics may be represented graphically by plotting their locations on the complex s-plane, whose axes
represent the real and imaginary parts of the complex variables. Such plots are known as pole-zero plots. It is
usual to mark a zero location by a circle (◦)and a pole location a cross (×). The location of the poles and zeros
provide qualitative insights into the response characteristics of a system. Many computer programs are
available to determine the poles and zeros of a system from the transfer function.
4. Resources:
Matlab
5. Procedure:
1. The transfer function of the linear system described by the differential equation is

Is

which may be written in factored form

Determine the single real zero , the pair of real poles and gain constant K.. Show your answers in the Data
and Results.

2. For a system that has a pair of complex conjugate poles p1,p2 =−1±j2, a single real zero z1 =−4,
and a gain factor K= 3. Determine the transfer function and the differential equation representing
the system. Show your answers in the corresponding cells under the Data and Results.

3. Consider the s-plane as shown below with the x-axis that corresponds to the real part and the y-axis that
corresponds to imaginary part. It is a pole-zero plot of a typical third order system.

Identify the one real pole, a complex conjugate pair, a single real zero and its gain constant K. Determine its
transfer function and the equivalent differential equation. Show your answers in the corresponding cells under
the Data and Results.

4. To find the zeros, poles and gain and to plot the poles and zeros to verify that they are in the expected
locations. represented by the transfer function:

b = [2 3];
a = [1 1/sqrt(2) 1/4];
fvtool(b,a,'polezero')
[b,a] = eqtflength(b,a);
[z,p,k] = tf2zp(b,a)
text(real(z)+.1,imag(z),'Zero')
text(real(p)+.1,imag(p),'Pole')

Show the results in the corresponding cell under the Data and Results.

5.To plot the poles and zeros of the continuous-time system represented by the transfer function:

>> H = tf([2 5 1],[1 3 5])


>> pzmap(H)
>> grid on
Show the results in the corresponding cell under the Data and Results.

6. For the following systems, determine the transfer function and its characteristics together with its
corresponding differential equation. Show also pole-zero map of each of them. Show your answers in the
corresponding cells under the Data and Results.
A
b

Course: ECE 006 Feedback and Control Systems Laboratory Exercise No.: 7
Group No.: N/A Section: CH42FB1
Group Members: Date Performed: September 21, 2019
Date Submitted: September 28, 2019
Instructor:

6. Data and Results:


Procedure Results
1 Single real zero Matlab Command Window:
>>b = [2 1];
>> a = [1 5 6];
>> [b,a] = eqtflength(b,a);
>> [z,p,k] = tf2zp(b,a)

z=

0
-0.5000
Pair of real poles p=

-3.0000
-2.0000
Gain constant K k=

2
2 Transfer function H(s) = S+4 / (S+1)(S+2)
Differential equation (d^2y/dt^2) + (3dy/dt) + (2y) = (du/dt) + 4
3 One real pole P = +2,-2
Complex conjugate pole pair Matlab Command Window:
>> b = [1 2];
>> a = [1 0 -4];
>> fvtool(b,a,'polezero')
>> [b,a] = eqtflength(b,a);
>> [z,p,k] = tf2zp(b,a)
>> text(real(z) +.1,imag(z),'Zero')
>> text(real(p) +.1,imag(p),'Pole')
Pole-Zero Plot:

Single real zero Z = -2


Gain constant K K=1
Transfer function H(s) = (S+2 )/ (S^2 – 4)
Differential equation (d^2y/dt^2) - (2y) = (du/dt) + 2
4 Real pole/s Matlab Command Window:
>> b = [2 3];
>> a = [1 1/sqrt(2) 1/4];
>> fvtool(b,a,'polezero')
>> [b,a] = eqtflength(b,a);
>> [z,p,k] = tf2zp(b,a)
>> text(real(z) +.1,imag(z),'Zero')
>> text(real(p) +.1,imag(p),'Pole')
Matlab Output:
p=

-0.3536 + 0.3536i
-0.3536 - 0.3536i
Complex conjugate pole pair

Real zero/s Z=

0
-1.5000
Gain constant K
K=

5 MatLab Command Window:


>> H =tf([2 5 1],[1 3 5])
H=
2 s^2 + 5 s + 1
s^2 + 3 s + 5

Continuous-time transfer function.

>> pzmap(H)
>> grid on

Pole-Zero Map
Procedure 6a

Transfer Function H(s) =


s^4 - 5 s^2 + 21 s + 27
s^6 - 13 s^4 - 3 s^3 + 60 s^2 + 6 s - 51

Reduction using Matlab:


>> num=[0 1];
>> den=[1 1];
>> H1=tf(num,den)

H1 =
1
s+1

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 2];
>> H2=tf(num,den)
H2 =
1
s+2

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 3];
>> H3=tf(num,den)

H3 =
1
s+3

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 -1];
>> G1=tf(num,den)

G1 =
1
s-1

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 -2];
>> G2=tf(num,den)

G2 =
1
s-2

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 -3];
>> G3=tf(num,den)

G3 =
1
s-3

Continuous-time transfer function.

>> A=G2*G3

A=
1
s^2 - 5 s + 6

Continuous-time transfer function.

>> B=feedback(A,H1)

B=
s+1
s^3 - 4 s^2 + s + 7

Continuous-time transfer function.

>> C=B+H2

C=
s^3 - 3 s^2 + 4 s + 9
s^4 - 2 s^3 - 7 s^2 + 9 s + 14

Continuous-time transfer function.

>> D=feedback(C,H3)
D=

s^4 - 5 s^2 + 21 s + 27
s^5 + s^4 - 12 s^3 - 15 s^2 + 45 s + 51

Continuous-time transfer function.

>> E=D*G1

E=
s^4 - 5 s^2 + 21 s + 27
s^6 - 13 s^4 - 3 s^3 + 60 s^2 + 6 s - 51

Continuous-time transfer function.


Real zeros Matlab Command Window:
>> b = [1 0 -5 21 27];
>> a = [1 0 -13 -3 60 6 -51];
>> fvtool(b,a,'polezero')
>> [b,a] = eqtflength(b,a);
>> [z,p,k] = tf2zp(b,a)
>> [z,p,k] = tf2zp(b,a)
>> text(real(z)+.1,imag(z),'Zero')
>> text(real(p)+.1,imag(p),'Pole')

Matlab Output:
z=
0.0000 + 0.0000i
0.0000 + 0.0000i
2.0372 + 2.0560i
2.0372 - 2.0560i
-3.0000 + 0.0000i
-1.0743 + 0.0000i
Real poles p=
-2.5144 + 0.8482i
-2.5144 - 0.8482i
2.5532 + 0.4496i
2.5532 - 0.4496i
-1.0776 + 0.0000i
1.0000 + 0.0000i

Complex Poles Pole-Zero Plot:


Differential Equation (d^4u/dt^4) – 5(d^2u/dt^2) + 21(du/dt) + 27 = d^6y/dt^6 –
13(d^4y/dt^4) – 3(d^3y/dt^3) + 60(d^2y/dt^2) +6(dy/dt) -51y
Pole-Zero Map Matlab Command Window:
>> E=tf([1 0 -5 21 27],[1 0 -13 -3 60 6 -51]);
>> pzmap(E)
>> grid on
Matlab Output:

Procedure 6b
Transfer Function H(s) =
s^3 + 6 s^2 + 11 s + 6
s^6 - 12 s^4 + s^3 + 37 s^2 - 8 s - 40
Reduction using Matlab:
>> num=[0 1];
>> den=[1 1];
>> H1=tf(num,den)
H1 =
1
s+1

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 2];
>> H2=tf(num,den)

H2 =
1
s+2

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 3];
>> H3=tf(num,den)

H3 =
1
s+3
Continuous-time transfer function.

>> num=[0 1];


>> den=[1 -1];
>> G1=tf(num,den)

G1 =
1
s-1

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 -2];
>> G2=tf(num,den)
G2 =
1
s-2

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 -3];
>> G3=tf(num,den)

G3 =
1
s-3
Continuous-time transfer function.

>> A=feedback(G2,H2)

A=
s+2
s^2 - 3

Continuous-time transfer function.

>> B=feedback(G3,H3)

B=

s+3
s^2 - 8

Continuous-time transfer function.

>> C=A*G1

C=
s+2
s^3 - s^2 - 3 s + 3

Continuous-time transfer function.

>> D=feedback(C,H1)
D=
s^2 + 3 s + 2
s^4 - 4 s^2 + s + 5

Continuous-time transfer function.

>> E=D*B

E=

s^3 + 6 s^2 + 11 s + 6
s^6 - 12 s^4 + s^3 + 37 s^2 - 8 s - 40

Continuous-time transfer function.


Real zeros Matlab Command Window:
>> b=[1 6 11 6];
>> a=[1 0 -12 1 37 -8 -40];
>> fvtool(b,a,'polezero')
>> [b,a]=eqtflength(b,a);
>> [z,p,k]=tf2zp(b,a)
>> text(real(z)+.1,imag(z),'Zero')
>> text(real(p)+.1,imag(z),'Pole')

Matlab Output:

z=

0
0
0
-3.0000
-2.0000
-1.0000
Real poles p=

2.8284 + 0.0000i
1.4565 + 0.5413i
1.4565 - 0.5413i
-2.8284 + 0.0000i
-1.6808 + 0.0000i
-1.2321 + 0.0000i

Complex Poles Pole-Zero Plot:

Differential Equation (d^3u/dt^3) + 6(d^2u/dt^2) + 11(du/dt) + 6 = (d^6y/dt^6) -


12(d^4y/dt^4)+3(d^3y/dt^3)+37(d^2y/dt^2)–8(dy/dt)- 40y
Pole-Zero Map Matlab Command Window:
>> E = tf([1 6 11 6],[1 0 -12 1 37 -8 -40]);
>> pzmap(E)
>> grid on
Matlab Output:

Procedure 6c

Transfer Function H(s)=


s^2 - s - 2
s^5 - 3 s^4 - 4 s^3 + 15 s^2 - 2 s - 20
Reduction using Matlab:
>> num=[0 1];
>> den=[1 1];
>> H=tf(num,den)

H=
1
s+1

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 2];
>> Kc=tf(num,den)
Kc =
1
s+2
Continuous-time transfer function.
>> num=[0 1];
>> den=[1 -1];
>> G1=tf(num,den)
G1 =
1
s-1

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 -2];
>> G2=tf(num,den)
G2 =
1
s-2

Continuous-time transfer function.

>> num=[0 1];


>> den=[1 -3];
>> G3=tf(num,den)

G3 =
1
s-3

Continuous-time transfer function.

>> A=feedback(G1,G2)

A=
s-2
s^2 - 3 s + 3

Continuous-time transfer function.

>> B=A*Kc*G3
B=

s-2
s^4 - 4 s^3 + 15 s - 18

Continuous-time transfer function.

>> C=feedback(B,H)

C=

s^2 - s - 2
s^5 - 3 s^4 - 4 s^3 + 15 s^2 - 2 s - 20

Continuous-time transfer function.


Real zeros Matlab Command Window:
>> b=[1 -1 -2];
>> a=[1 -3 -4 15 -2 -20];
>> fvtool(b,a,'polezero')
>> [b,a]=eqtflength(b,a);
>> [z,p,k]=tf2zp(b,a)
>> text(real(z)+.1,imag(z),'Zero')
>> text(real(p)+.1,imag(p),'Pole')
Matlab Output:
z=

0
0
0
2
-1

Real poles p=

2.9832 + 0.0000i
1.5305 + 0.8814i
1.5305 - 0.8814i
-1.9317 + 0.0000i
-1.1126 + 0.0000i
Complex Poles Pole-Zero Plot:
Differential Equation d^2u/dt^2 – du/dt – 2 = (d^5y/dt^5) – 3(d^4y/dt^4) – 4(d^3y/dt^3)
+ 15(d^2y/dt^2) – 2(dy/dt) -20y
Pole-Zero Map Matlab Command Window:
>> C=tf([1 -1 -2],[1 -3 -4 15 -2 -20])

C=

s^2 - s - 2
s^5 - 3 s^4 - 4 s^3 + 15 s^2 - 2 s - 20

Continuous-time transfer function.

>> pzmap(C)
>> grid on

Matlab Output:
Procedure 6d

Transfer Function H(s) =


s^3 + 6 s^2 + 11 s + 6
s^7 - 4 s^6 - 13 s^5 + 53 s^4 + 43 s^3 - 188 s^2 - 26 s + 146
Reduction using Matlab:
>> num = [0 1];
>> den = [1 1];
>> H1 = tf(num, den)

H1 =
  1
 s+1
Continuous-time transfer function.

>> num = [0 1];


>> den = [1 2];
>> H2 = tf(num, den)
H2 =
  1
 s+2
Continuous-time transfer function.

>> num = [0 1];


>> den = [1 3];
>> H3 = tf(num, den)

H3 =
  1
 s+3
Continuous-time transfer function.

>> num = [0 1];


>> den = [1 -1];
>> G1 = tf(num, den)

G1 =
  1
 s-1
Continuous-time transfer function.
>> num = [0 1];
>> den = [1 -2];
>> G2 = tf(num, den)

G2 =
  1
 s-2
Continuous-time transfer function.

>> num = [0 1];


>> den = [1 -3];
>> G3 = tf(num, den)

G3 =
  1
 s-3
Continuous-time transfer function.
>> num = [0 1];
>> den = [1 -4];
>> G4 = tf(num, den)

G4 =
  1
 s-4
Continuous-time transfer function.

>> A = feedback(G3, H3)

A=
   s + 3
  s^2 - 8
Continuous-time transfer function.

>> B = G2*A

B=
     s+3
  s^3 - 2 s^2 - 8 s + 16
Continuous-time transfer function.

>> C = feedback(B, H2)

C=
      s^2 + 5 s + 6
  s^4 - 12 s^2 + s + 35
Continuous-time transfer function.

>> D = C*G1*G4
D=
                     s^2 + 5 s + 6
  s^6 - 5 s^5 - 8 s^4 + 61 s^3 - 18 s^2 - 171 s + 140 
Continuous-time transfer function.
l>> E = feedback(D, H1)

E=
                     s^3 + 6 s^2 + 11 s + 6
  s^7 - 4 s^6 - 13 s^5 + 53 s^4 + 43 s^3 - 188 s^2 - 26 s + 146
Continuous-time transfer function.
Real zeros Matlab Command Window:
>> b = [1 6 11 6];
>> a = [1 -4 -13 53 43 -188 -26 146];
>> fvtool(b,a,'polezero')
>> [b,a] = eqtflength(b,a);
>> [z,p,k] = tf2zp(b,a)
>> text(real(z) +.1,imag(z),'Zero')
>> text(real(p) +.1,imag(p),'Pole')
Matlab Output:
z=
0
0
0
0
-3.0000
-2.0000
-1.0000
Real poles p=
3.9714
-2.8202
-2.0618
-1.0086
2.6936
2.1363
1.0893
Complex Poles Pole-Zero Plot:
Differential Equation (d^7y/dt^7) – 4(d^6y/dt^6) – 13(d^5y/dt^5) + 53(d^4y/dt^4) -
43(d^3y/dt^3) – 188(d^2y/dt^2) – 26(dy/dt) + 146y = (d^3u/dt^3)
+ 6(d^2u/dt^2) + 11(du/dt) + 6
Pole-Zero Map Matlab Command Window:
>>H = tf ([1 6 11 6], [1 -4 -13 53 43 -188 -26 146]);
>>pzmap(H)
>>grid on
Matlab Output:

7. Conclusion:
I therefore conclude that Matlab can be utilized to decide the poles and zeros of an exchange work. In this
laboratory exercise, I able to determine the poles and zeros of a Transfer Function Manually and numerically
utilizing matlab. Understanding it Manually is very tedious; yet by utilizing Matlab, we just need to know the
right directions (codes) to think of the right answer. Besides, the impacts of poles and zeros of an exchange
work in the security of framework can be comprehended in leading this Lab Exercise.

8. Assessment (Rubric for Laboratory Performance):


TECHNOLOGICAL INSTITUTE OF THE PHILIPPINES
RUBRIC FOR LABORATORY PERFORMANCE

CRITERIA BEGINNER ACCEPTABLE PROFICIENT SCORE


1 2 3
I. Laboratory Skills

Manipulative Members do not Members occasionally Members always


Skills demonstrate needed skills. demonstrate needed skills. demonstrate needed skills.
Members are able to set-up Members are able to set-up
Experimental Set- Members are unable to set-
the materials with the material with minimum
up up the materials.
supervision. supervision.
Member do not Members occasionally Members always
Process Skills demonstrate targeted demonstrate targeted demonstrate targeted
process skills. process skills. process skills.
Members follow safety
Members do not follow Members follow safety
Safety Precautions precautions most of the
safety precautions. precautions at all times.
time.
II. Work Habits
Time
Members finish ahead of
Management / Members do not finish on Members finish on time
time with complete data
Conduct of time with incomplete data. with incomplete data.
and time to revise data.
Experiment
Members do not know their Members have defined Members are on tasks and
tasks and have no defined responsibilities most of the have defined responsibilities
Cooperative and
responsibilities. Group time. Group conflicts are at all times. Group conflicts
Teamwork
conflicts have to be settled cooperatively managed are cooperatively managed
by the teacher. most of the time. at all times.
Clean and orderly
Clean and orderly workplace
Neatness and Messy workplace during workplace with occasional
at all times during and after
Orderliness and after the experiment. mess during and after the
the experiment.
experiment.
Members require
Ability to do Members require Members do not need to be
occasional supervision by
independent work supervision by the teacher. supervised by the teacher.
the teacher.
Other Comments / Observations: TOTAL SCORE

RATING = ( ) x 100%
Evaluated by:
____________________________________________
Printed Name and Signature of Faculty Member Date: ___________________________

You might also like