Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 16

UNIVERSITY OF THE EAST

COLLEGE OF ENGINEERING
ELECTRONICS AND COMMUNICATION ENGINEERING DEPARTMENT

EXPERIMENT NO.2
POLES AND ZEROES OF TRANSFER FUNCTION, FIR AND IIR FILTERS

NEC 3106/ECE 1
MONDAY/8:30 - 11:30

SUBMITTED BY: SUBMITTED TO:


PAMILOZA, EDUARDO II M. ENGR. MICHAEL S. MATIAS
20140162829
NIETES, CHRISTIAN FRANCIS
20140168985
INTRODUCTION:

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.

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).

IN DIGITAL PROCESSING, AN FIR FILTER IS A TIME-CONTINUOUS FILTER THAT IS


INVARIANT WITH TIME. THIS MEANS THAT THE FILTER DOES NOT DEPEND ON THE
SPECIFIC POINT OF TIME, BUT RATHER DEPENDS ON THE TIME DURATION. THE
SPECIFICATION OF THIS FILTER USES A TRANSFER FUNCTION WHICH HAS A
FREQUENCY RESPONSE WHICH WILL ONLY PASS THE DESIRED FREQUENCIES OF THE
INPUT. THIS TYPE OF FILTER IS NON-RECURSIVE, WHICH MEANS THAT THE OUTPUT
CAN BE COMPLETELY DERIVED AT FROM A COMBINATION OF THE INPUT WITHOUT
ANY RECURSIVE VALUES OF THE OUTPUT. THIS MEANS THAT THERE IS NO FEEDBACK
LOOP THAT FEEDS THE NEW OUTPUT THE VALUES OF PREVIOUS OUTPUTS. THIS IS
AN ADVANTAGE OVER RECURSIVE FILTERS SUCH AS IIR FILTER (INFINITE IMPULSE
RESPONSE) IN THE APPLICATIONS THAT REQUIRE A LINEAR PHASE RESPONSE
BECAUSE IT WILL PASS THE INPUT WITHOUT A PHASE DISTORTION.
INFINITE IMPULSE RESPONSE (IIR) IS A PROPERTY APPLYING TO MANY LINEAR TIME-
INVARIANT SYSTEMS THAT ARE DISTINGUISHED BY HAVING AN IMPULSE RESPONSE
H(T) WHICH DOES NOT BECOME EXACTLY ZERO PAST A CERTAIN POINT, BUT
CONTINUES INDEFINITELY. THIS IS IN CONTRAST TO A FINITE IMPULSE RESPONSE
(FIR) SYSTEM IN WHICH THE IMPULSE RESPONSE DOES BECOME EXACTLY ZERO AT
TIMES T > T FOR SOME FINITE T, THUS BEING OF FINITE DURATION. COMMON
EXAMPLES OF LINEAR TIME-INVARIANT SYSTEMS ARE MOST ELECTRONIC AND
DIGITAL FILTERS. SYSTEMS WITH THIS PROPERTY ARE KNOWN AS IIR SYSTEMS OR
IIR FILTERS.

IN PRACTICE, THE IMPULSE RESPONSE, EVEN OF IIR SYSTEMS, USUALLY


APPROACHES ZERO AND CAN BE NEGLECTED PAST A CERTAIN POINT. HOWEVER THE
PHYSICAL SYSTEMS WHICH GIVE RISE TO IIR OR FIR RESPONSES ARE DISSIMILAR,
AND THEREIN LIES THE IMPORTANCE OF THE DISTINCTION. FOR INSTANCE, ANALOG
ELECTRONIC FILTERS COMPOSED OF RESISTORS, CAPACITORS, AND/OR INDUCTORS
(AND PERHAPS LINEAR AMPLIFIERS) ARE GENERALLY IIR FILTERS. ON THE OTHER
HAND, DISCRETE-TIME FILTERS (USUALLY DIGITAL FILTERS) BASED ON A TAPPED
DELAY LINE EMPLOYING NO FEEDBACK ARE NECESSARILY FIR FILTERS. THE
CAPACITORS (OR INDUCTORS) IN THE ANALOG FILTER HAVE A "MEMORY" AND THEIR
INTERNAL STATE NEVER COMPLETELY RELAXES FOLLOWING AN IMPULSE (ASSUMING
THE CLASSICAL MODEL OF CAPACITORS AND INDUCTORS WHERE QUANTUM
EFFECTS ARE IGNORED). BUT IN THE LATTER CASE, AFTER AN IMPULSE HAS
REACHED THE END OF THE TAPPED DELAY LINE, THE SYSTEM HAS NO FURTHER
MEMORY OF THAT IMPULSE AND HAS RETURNED TO ITS INITIAL STATE; ITS IMPULSE
RESPONSE BEYOND THAT POINT IS EXACTLY ZERO.

PROCEDURES, DATA SHEETS, AND OBSERVATION:

PROCEDURE A: POLES AND ZEROES

1. ENCODE THE FOLLOWING SCILAB PROGRAM. CHECK APPROPRIATELY THE


PUNCTUATION MARKS USED IN THE SYNTAX TO AVOID ERRORS.

--> //FORM SYSTEM FROM ZEROS, POLES AND GAIN


--> //SISO CASE
--> Z11=[1 -0.5];P11=[-3+2*%I -3-2*%I -2];K11=1;
--> S11=ZPK(Z11,P11,K11,"C")
--> SUBPLOT (2 ,2 ,1)
--> PLZR(S11)
2. OBSERVE THE PROPERTY OF THE GENERATED OUTPUT SIGNAL. IDENTIFY THE
POLES AND ZEROES IN THE GRAPH. ILLUSTRATE (OR COPY) THE GENERATED
SIGNAL AND RECORD YOUR OBSERVATIONS.

3. ENCODE THE FOLLOWING NEXT SET OF SYNTAX.

--> //MIMO CASE


--> Z21=0.3;P21=[-3+2*%I -3-2*%I];K21=1.5;
--> S21=ZPK(Z21,P21,K21,"C")
--> S=ZPK({Z11 [ ];Z21 1},{P11,0;P21 -3},[K11 1;K21 1],"C")
--> SUBPLOT (2 ,2 ,2)
--> PLZR(S11)

4. OBSERVE THE PROPERTY OF THE GENERATED OUTPUT SIGNAL. IDENTIFY THE


POLES AND ZEROES IN THE GRAPH. ILLUSTRATE (OR COPY) THE GENERATED
SIGNAL AND RECORD YOUR OBSERVATIONS.

THE POLES[(-3,2),(-3,0),(-3,-2)] ZEROES[(-0.5,0),(1,0)]. THE POLES ONLY


HAVE AN IMAGINARY NUMBERS.

5. ENCODE THE FOLLOWING NEXT SET OF SYNTAX WHICH REFERS TO THE THIRD
ORDER, LOW-PASS, IIR FILTER.

--> HZ=IIR(4,'LP','BUTT',[.25 0],[0 0])


-->PLZR(HZ)

6. OBSERVE THE PROPERTY OF THE GENERATED OUTPUT SIGNAL. IDENTIFY THE


POLES AND ZEROES IN THE GRAPH. ILLUSTRATE (OR COPY) THE GENERATED
SIGNAL AND RECORD YOUR OBSERVATIONS.
THIS OUTPUT, MIMO CASE. THERE ARE TWO FUNCTIONS AND AS THE LOWPASS
IIR FILTER IS APPLIED. THE CIRCLES OF THE OUTPUT ALTERED THE POLES AND
ZEROES.

7. ENCODE THE FOLLOWING NEXT SET OF SYNTAX WHICH REFERS TO THE THIRD
ORDER, LOW-PASS, IIR FILTER.

-->CLEAR;
-->CLC;
-->XDEL( );
-->S = POLY(0,'S');
-->NUM = POLY([0, 10*%I, -10*%I], 'S', 'R')
-->DEN=POLY([-0.5+5*%I, -0.5-5*%I, -3, -4],'S', 'R')
-->H=2*NUM./DEN
-->SYSH=SYSLIN('C',H);
-->PLZR(SYSH)

8. OBSERVE THE PROPERTY OF THE GENERATED OUTPUT SIGNAL. IDENTIFY THE


POLES AND ZEROES IN THE GRAPH. ILLUSTRATE (OR COPY) THE GENERATED
SIGNAL AND RECORD YOUR OBSERVATIONS.
POLES[(-0.5-5i),(-0.5+5i),(-3,-4)] ZEROES[(10),(0),(-10)], THE ZEROES ARE ALL REAL VALUES,
WHILE THE POLES HAVE IMAGINARY VALUES.

PROCEDURE B: FIR FILTERS


1. ENCODE THE FOLLOWING SCILAB PROGRAM. CHECK APPROPRIATELY THE
PUNCTUATION MARKS USED IN THE SYNTAX TO AVOID ERRORS.

--> CLOSE;
--> M = INPUT('ENTER THE ODD FILTER LENGTH ='); //FILTER LENGTH

2. ENTER A VALUE OF 11. THEN CONTINUE TO TYPE THE NEXT SET OF SYNTAX.

--> //DIGITAL CUTOFF FREQUENCY [LOWER CUTOFF, UPPER CUTOFF]


--> WC = INPUT('ENTER THE DIGITAL CUTOFF FREQUENCY =');

3. ENTER THE VALUE [%PI/4,3*%PI/4]. THEN CONTINUE TO TYPE THE NEXT SET OF
SYNTAX.

--> WC2 = WC(2)


--> WC1 = WC(1)
--> TUO = (M-1)/2 //CENTER VALUE
--> HD = ZEROS(1,M);
--> W = ZEROS(1,M);
--> FOR N = 1:11
> IF (N == TUO+1)
> HD(N) = (WC2-WC1)/%PI;
> ELSE
>N
> HD(N) = (SIN(WC2*((N-1)-TUO)) -SIN(WC1*((N-1)-TUO)))/(((N-1)-TUO)*%PI);
> END
> IF(ABS(HD(N))<(0.00001))
> HD(N)=0;
> END
> END
--> HD;
--> //RECTANGULAR WINDOW
--> FOR N = 1:M
> W(N) = 1;
> END
--> //WINDOWING FITLER COEFFICIENTS
--> H = HD.*W;
--> DISP(H,'FILTER COEFFICIENTS ARE')
--> [HZM,FR]=FRMAG(H,256);
--> HZM_DB = 20*LOG10(HZM)./MAX(HZM);

--> SUBPLOT(2,1,1)
--> PLOT(2*FR,HZM)
--> XLABEL('NORMALIZED DIGITAL FREQUENCY W');
--> YLABEL('MAGNITUDE');
--> TITLE('FREQUENCY RESPONSE 0F FIR BPF USING RECTANGULAR WINDOW')
--> XGRID(1)
--> SUBPLOT(2,1,2)
--> PLOT(2*FR,HZM_DB)
--> XLABEL('NORMALIZED DIGITAL FREQUENCY W');
--> YLABEL('MAGNITUDE IN DB');

--> TITLE('FREQUENCY RESPONSE 0F FIR BPF USING RECTANGULAR WINDOW')


--> XGRID(1)

4. ILLUSTRATE (OR COPY) THE GENERATED SIGNAL. WHAT CATEGORY OF FILTER


IS DISPLAYED? RECORD YOUR OBSERVATIONS.

THE GENERATED SIGNALS CATEGORY OF FILTER IS AN FIR PARAMETRIC


FILTER.
5. RUN AGAIN THE PROGRAM BUT THIS TIME USING 20 FOR THE ODD FILTER
LENGTH AND [%PI/6,3*%PI/6] FOR DIGITAL CUT-OFF FREQUENCY.

6. ILLUSTRATE (OR COPY) THE GENERATED SIGNAL. RECORD YOUR


OBSERVATIONS.

THE OUTPUT IN THE UPPER OUTPUT SHOWS THE MAGNITUDE WITH RESPECT
TO FREQUENCY. THE LOWER OUTPUT SHOWS THE MAGNITUDE TO FREQUENCY WITH
RESPECT TO DB

7. RUN AGAIN THE PROGRAM BUT THIS TIME USING 30 FOR THE ODD FILTER
LENGTH AND [%PI/8,3*%PI/8] FOR DIGITAL CUT-OFF FREQUENCY.

8. ILLUSTRATE (OR COPY) THE GENERATED SIGNAL. RECORD YOUR


OBSERVATIONS.

9. ENCODE THE FOLLOWING SCILAB PROGRAM:

--> CLOSE;
--> CLEAR;
--> FP = INPUT("ENTER THE PASSBAND EDGE FREQUENCY IN HZ=")

10. ENTER A VALUE OF 1,500. THEN CONTINUE TO TYPE THE NEXT SYNTAX.
--> DELF = INPUT("ENTER THE TRANSITION WIDTH IN HZ =")

11. ENTER A VALUE OF 500. THEN CONTINUE TO TYPE THE NEXT SYNTAX.

--> A = INPUT("ENTER THE STOP BAND ATTENUATION IN DB =")

12. ENTER A VALUE OF 50. THEN CONTINUE TO TYPE THE NEXT SYNTAX.

--> FS = INPUT("ENTER THE SAMPLING FREQUENCY IN HZ=")

13. ENTER A VALUE OF 8000. THEN CONTINUE TO TYPE THE NEXT SET OF SYNTAX.
--> M = (A-7.95)/(14.36*DELF/FS) //FILTER LENGTH
--> M = CEIL(M);
--> WC = ((FP+DELF/2)/FS)*%PI; //DIGITAL CUTOFF FREQUENCY
--> TUO = (M-1)/2 //CENTER VALUE
--> FOR N = 1:M
> IF (N == TUO+1)
> HD(N) = WC/%PI;
> ELSE
> HD(N) = SIN(WC*((N-1)-TUO))/(((N-1)-TUO)*%PI);
> END
> END
--> //RECTANGULAR WINDOW
--> FOR N = 1:M
> W(N) = 1;
5
> END
--> //WINDOWING FITLER COEFFICIENTS
--> H = HD.*W;
--> DISP(H,'FILTER COEFFICIENTS ARE')
--> [HZM,FR]=FRMAG(H,256);
--> HZM_DB = 20*LOG10(HZM)./MAX(HZM);
--> SUBPLOT(2,1,1)
--> PLOT(2*FR,HZM)
--> XLABEL('NORMALIZED DIGITAL FREQUENCY W');
--> YLABEL('MAGNITUDE');
--> TITLE('FREQUENCY RESPONSE 0F FIR LPF USING RECTANGULAR WINDOW')
--> XGRID(1)
--> SUBPLOT(2,1,2)
--> PLOT(2*FR,HZM_DB)
--> XLABEL('NORMALIZED DIGITAL FREQUENCY W');
--> YLABEL('MAGNITUDE IN DB');
--> TITLE('FREQUENCY RESPONSE 0F FIR LPF USING RECTANGULAR WINDOW')
--> XGRID(1)

14. OBSERVE THE PROPERTY OF THE GENERATED SIGNAL. ILLUSTRATE (OR COPY)
THE GENERATED SIGNAL. WHAT CATEGORY OF FILTER IS DISPLAYED?
RECORD YOUR OBSERVATIONS.

15. RUN AGAIN THE PROGRAM BUT THIS TIME USING FOLLOWING SETS OF VALUES
RESPECTIVELY: 2500, 200, 25, 8000.
16. ILLUSTRATE (OR COPY) THE GENERATED SIGNAL. RECORD YOUR
OBSERVATIONS.

17. RUN AGAIN THE PROGRAM BUT THIS TIME USING FOLLOWING SETS OF VALUES
RESPECTIVELY: 3500, 1350, 40, 8000.

18. ILLUSTRATE (OR COPY) THE GENERATED SIGNAL. RECORD YOUR


OBSERVATIONS.

PROCEDURE C: IIR FILTERS


1. ENCODE THE FOLLOWING SCILAB PROGRAM. CHECK APPROPRIATELY THE
PUNCTUATION MARKS USED IN THE SYNTAX TO AVOID ERRORS.

--> HZ=IIR(3,'BP','ELLIP',[.15 .25],[.08 .03]);


--> [HZM,FR]=FRMAG(HZ,256);
--> PLOT2D(FR',HZM')
--> XTITLE('DISCRETE IIR FILTER BAND PASS 0.15<FR<0.25 ',' ',' ');

2. OBSERVE THE PROPERTY OF THE GENERATED SIGNAL. ILLUSTRATE (OR COPY)


THE GENERATED SIGNAL. WHAT CATEGORY OF FILTER IS DISPLAYED?
RECORD YOUR OBSERVATIONS.

3. ADD THE FOLLOWING SYNTAX TO SHOW THE RESPONSE. OBSERVE THE


RESULT.

--> Q=POLY(0,'Q');
6
--> HZD=HORNER(HZ,1/Q)

4. WRITE DOWN THE GENERATED OUTPUT. THIS REPRESENTS THE NUMBER OF


POLES AND ZEROES THE FILTER HAVE.

5. RUN AGAIN THE PROGRAM OF STEP#1 BUT THIS TIME USING [.1 .45] INSTEAD OF
[.15 .25]. APPLY PROPER LABELLING OF THE PLOTTED GRAPH.

6. ILLUSTRATE (OR COPY) THE GENERATED SIGNAL. RECORD YOUR


OBSERVATIONS.

7. RUN AGAIN THE PROGRAM OF STEP#1 BUT THIS TIME REPLACING USING [.08 .03]
BY [.04 .12]. APPLY PROPER LABELLING OF THE PLOTTED GRAPH.

8. ILLUSTRATE (OR COPY) THE GENERATED SIGNAL. RECORD YOUR


OBSERVATIONS.

9. RUN AGAIN THE PROGRAM OF STEP#1 BUT THIS TIME REPLACING USING [.08 .03]
BY [.03 .001]. APPLY PROPER LABELLING OF THE PLOTTED GRAPH.

10. ILLUSTRATE (OR COPY) THE GENERATED SIGNAL. RECORD YOUR


OBSERVATIONS.
DIAGRAMS / ILLUSTRATION:

PAMILOZA, EDUARDO II M.

I.

PROC A. OBSERVE AND IDENTIFY POLES AND ZEROES


PROC A. OBSERVE AND IDENTIFY POLES AND ZEROES III

PROC A. OBSERVE AND IDENTIFY POLES AND ZEROES IV


II.

PROC B. ILLUSTRATE. WHAT CATEGORY OF FILTER.

PROC B. ILLUSTRATE. WHAT CATEGORY OF FILTER. VALUES OF 20 AND PI 6.3 AND 6


PROC B. ILLUSTRATE. WHAT CATEGORY OF FILTER. VALUES OF 30 AND PI 8.3 AND 8

III.

ANSWER TO THE REPORT:


1. BASED ON PROCEDURE A, HOW DOES THE CHOICE OF WINDOW
AFFECTS THE DESIGN PROCESS?

THE CHOICE OF WINDOWS HELPS DECREASE THE RIPPLES OF THE


OUTPUT THAT LEAD THE FREQUENCY RESPONSE IN DISCONTINUITY.

2. REFERRING TO PROCEDURE B, WHAT IS THE EFFECT OF VARYING THE


PARAMETER 0.15 AND 0.25 IN THE PROGRAM?

THE OUTPUT WAVEFORM EXPANDED WHEN THE PARAMETERS VARIED.


WHEN THE PARAMETER INCREASED THE OUTPUT EXPANDED.

3. HOW THE PARAMETER 0.08 AND 0.03 AFFECTS THE GENERATED OUTPUT
WAVEFORM OF PROCEDURE B?

WHEN THE PARAMETERS ARE CHANGED, IT AFFECTS THE RIPPLE


STOPBAND OF THE GENERATED OUTPUT WAVEFORM

4. DESCRIBE THE NUMBER OF POLES AND ZEROES GENERATED IN


PROCEDURE C, STEPS 1 TO 4.
5. IDENTIFY THE ZEROES, POLES AND GAIN IN STEP7 OF PROCEDURE C.

POLES [-0.5-5I.-0.5+5I,-3-4] ZEROES[-10,0,10]


.
6. DESCRIBE THE CONCEPT OF (A) STABLE SYSTEM AND (B) NON-CAUSAL SYSTEM.

(A) STABLE SYSTEM - THE SYSTEM IS STABLE WHEN THE ZEROES AND POLES
ARE ON THE RIGHT SIDE OF THE CARTESIAN PLANE WHEN PLOTTED.
(B) NON-CAUSAL SYSTEM - ON-CAUSAL OR ACAUSAL SYSTEM, AND A SYSTEM
THAT DEPENDS SOLELY ON FUTURE INPUT VALUES IS AN ANTICAUSAL SYSTEM.

7. IN WHAT APPLICATIONS DOES (A) FIR AND (B) IIR FILTERS ARE USED?

FIR FILTERS ARE USED FOR TAPPING OF A HIGHER-ORDER, AND IIR FILTERS
ARE BETTER FOR TAPPING OF LOWER-ORDERS, SINCE IIR FILTERS MAY BECOME
UNSTABLE WITH TAPPING HIGHER-ORDERS. FIR STANDS FOR FINITE IR FILTERS,
WHEREAS IIR STANDS FOR INFINITE IR FILTERS. IIR AND FIR FILTERS ARE UTILIZED
FOR FILTRATION IN DIGITAL SYSTEMS. FIR FILTERS ARE MORE WIDELY IN USE,
BECAUSE THEY DIFFER IN RESPONSE. FIR FILTERS HAVE ONLY NUMERATORS
WHEN COMPARED TO IIR FILTERS, WHICH HAVE BOTH NUMERATORS AND
DENOMINATORS.

REFERENCE:

HTTPS://EN.WIKIBOOKS.ORG/WIKI/CONTROL_SYSTEMS/POLES_AND_ZEROS #:~:TEXT=P
OLES%20AND%20ZEROS%20OF%20A,HOW%20WELL%20THE%20SYSTEM
%20PERFORMS.

HTTPS://EN.WIKIPEDIA.ORG/WIKI/FIR_TRANSFER_FUNCTION#:~:TEXT=FIR%20(FINITE
%20IMPULSE%20RESPONSE)%20LINEAR%20FILTERS,-IN%20DIGITAL
%20PROCESSING&TEXT=THIS%20MEANS%20THAT%20THE%20FILTER,DESIRED
%20FREQUENCIES%20OF%20THE%20INPUT.

HTTP://WWW.DIFFERENCEBETWEEN.NET/SCIENCE/DIFFERENCE-BETWEEN-IIR-AND-
FIR-FILTERS/#:~:TEXT=FIR%20FILTERS%20ARE%20USED%20FOR,FOR%20FILTRATION
%20IN%20DIGITAL%20SYSTEMS.

You might also like