First, we show how to use known design specifications to determine filter order and 3dB cut-off



Similar documents
Digital Signal Processing IIR Filter Design via Impulse Invariance

Digital Signal Processing Complete Bandpass Filter Design Example

Design of Efficient Digital Interpolation Filters for Integer Upsampling. Daniel B. Turek

Lecture 9. Poles, Zeros & Filters (Lathi 4.10) Effects of Poles & Zeros on Frequency Response (1) Effects of Poles & Zeros on Frequency Response (3)

ROUTH S STABILITY CRITERION

Understanding Poles and Zeros

ELEN E4810: Digital Signal Processing Topic 8: Filter Design: IIR

24 Butterworth Filters

Positive Feedback and Oscillators

DSP-I DSP-I DSP-I DSP-I

NAPIER University School of Engineering. Electronic Systems Module : SE32102 Analogue Filters Design And Simulation. 4 th order Butterworth response

Transition Bandwidth Analysis of Infinite Impulse Response Filters

Design of FIR Filters

Section 1.1 Linear Equations: Slope and Equations of Lines

Chapter 8 - Power Density Spectrum

Sophomore Physics Laboratory (PH005/105)

How to Design 10 khz filter. (Using Butterworth filter design) Application notes. By Vadim Kim

2.161 Signal Processing: Continuous and Discrete Fall 2008

Em bedded DSP : I ntroduction to Digital Filters

Partial Fractions. Combining fractions over a common denominator is a familiar operation from algebra:

Zeros of a Polynomial Function

5.1 Radical Notation and Rational Exponents

EE 508 Lecture 11. The Approximation Problem. Classical Approximations the Chebyschev and Elliptic Approximations

UNIVERSITY OF CALIFORNIA, SAN DIEGO Electrical & Computer Engineering Department ECE Fall 2010 Linear Systems Fundamentals

Bode Diagrams of Transfer Functions and Impedances ECEN 2260 Supplementary Notes R. W. Erickson

CHAPTER 8 ANALOG FILTERS

S-DOMAIN ANALYSIS: POLES, ZEROS, AND BODE PLOTS

Σ _. Feedback Amplifiers: One and Two Pole cases. Negative Feedback:

Root Locus. E(s) K. R(s) C(s) 1 s(s+a) Consider the closed loop transfer function:

ECE 3510 Final given: Spring 11

3.2. Solving quadratic equations. Introduction. Prerequisites. Learning Outcomes. Learning Style

3.1. RATIONAL EXPRESSIONS

MA107 Precalculus Algebra Exam 2 Review Solutions

3.1. Solving linear equations. Introduction. Prerequisites. Learning Outcomes. Learning Style

Part IB Paper 6: Information Engineering LINEAR SYSTEMS AND CONTROL Dr Glenn Vinnicombe HANDOUT 3. Stability and pole locations.

SIGNAL PROCESSING & SIMULATION NEWSLETTER

Filter Comparison. Match #1: Analog vs. Digital Filters

Zero: If P is a polynomial and if c is a number such that P (c) = 0 then c is a zero of P.

19 LINEAR QUADRATIC REGULATOR

Introduction to IQ-demodulation of RF-data

BALTIC OLYMPIAD IN INFORMATICS Stockholm, April 18-22, 2009 Page 1 of?? ENG rectangle. Rectangle

QUADRATIC EQUATIONS EXPECTED BACKGROUND KNOWLEDGE

POLYNOMIAL FUNCTIONS

Section 9.5: Equations of Lines and Planes

Chapter 16. Active Filter Design Techniques. Excerpted from Op Amps for Everyone. Literature Number SLOA088. Literature Number: SLOD006A

The Calculation of G rms

4. How many integers between 2004 and 4002 are perfect squares?

3.3. Solving Polynomial Equations. Introduction. Prerequisites. Learning Outcomes

Laboratory #5: RF Filter Design

3.6. Partial Fractions. Introduction. Prerequisites. Learning Outcomes

Lecture 7: Finding Lyapunov Functions 1

SMT 2014 Algebra Test Solutions February 15, 2014

The Z transform (3) 1

Math 0980 Chapter Objectives. Chapter 1: Introduction to Algebra: The Integers.

Algebra 2 Chapter 1 Vocabulary. identity - A statement that equates two equivalent expressions.

chapter Introduction to Digital Signal Processing and Digital Filtering 1.1 Introduction 1.2 Historical Perspective

Analog IIR Filter Design

Nonlinear Systems and Control Lecture # 15 Positive Real Transfer Functions & Connection with Lyapunov Stability. p. 1/?

14: FM Radio Receiver

IIR Half-band Filter Design with TMS320VC33 DSP

is identically equal to x 2 +3x +2

LM833,LMF100,MF10. Application Note 779 A Basic Introduction to Filters - Active, Passive,and. Switched Capacitor. Literature Number: SNOA224A

n 2 + 4n + 3. The answer in decimal form (for the Blitz): 0, 75. Solution. (n + 1)(n + 3) = n lim m 2 1

Biggar High School Mathematics Department. National 5 Learning Intentions & Success Criteria: Assessing My Progress

MATLAB Control System Toolbox Root Locus Design GUI

9.4. The Scalar Product. Introduction. Prerequisites. Learning Style. Learning Outcomes

Week 13 Trigonometric Form of Complex Numbers

Solving Rational Equations

SWISS ARMY KNIFE INDICATOR John F. Ehlers

Introduction to Bode Plot

MATH 4552 Cubic equations and Cardano s formulae

Year 9 set 1 Mathematics notes, to accompany the 9H book.

Continued Fractions and the Euclidean Algorithm

Controller Design in Frequency Domain

Frequency Response of Filters

Engineering Sciences 22 Systems Summer 2004

5. Factoring by the QF method

Answers to Basic Algebra Review

Trigonometric Functions: The Unit Circle

BJT Amplifier Circuits

Linear Equations and Inequalities

Use bandpass filters to discriminate against wide ranges of frequencies outside the passband.

88 CHAPTER 2. VECTOR FUNCTIONS. . First, we need to compute T (s). a By definition, r (s) T (s) = 1 a sin s a. sin s a, cos s a

THE COMPLEX EXPONENTIAL FUNCTION

TTT4110 Information and Signal Theory Solution to exam

Problem Set V Solutions

SUMMARY. Additional Digital/Software filters are included in Chart and filter the data after it has been sampled and recorded by the PowerLab.

1 Review of Least Squares Solutions to Overdetermined Systems

Transmission Lines. Smith Chart

Domain of a Composition

Examples of Functions

Trend and Seasonal Components

Arc Length and Areas of Sectors

EQUATIONS and INEQUALITIES

Polynomial and Rational Functions

1.7. Partial Fractions Rational Functions and Partial Fractions. A rational function is a quotient of two polynomials: R(x) = P (x) Q(x).

LINEAR INEQUALITIES. Mathematics is the art of saying many things in many different ways. MAXWELL

3.1 Solving Systems Using Tables and Graphs

Equations, Inequalities & Partial Fractions

Transcription:

Butterworth Low-Pass Filters In this article, we describe the commonly-used, n th -order Butterworth low-pass filter. First, we show how to use known design specifications to determine filter order and 3dB cut-off frequency. Then, we show how to determine filter poles and the filter transfer function. Along the way, we describe the use of common Matlab Signal Processing Toolbox functions that are useful in designing Butterworth low-pass filters. The squared magnitude function for an n th -order Butterworth low-pass filter is H (j Ω ) = H (j Ω)H (j Ω ) =, (-) + Ω Ω 2 a a a 2n (j / j c) where constant is the 3dB cut-off frequency. Magnitude H a (jω is depicted by Figure. It is easy to show that the first 2n- derivatives of H a (jω 2 at Ω = 0 are equal to zero. For this reason, we say that the Butterworth response is maximally flat at Ω = 0. Furthermore, H a (Ω) Magnitude.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0. 0.0 n = 2 n = 4 n = 6 0.0 0.5.0.5 2.0 2.5 3.0 Ω/ Figure : Magnitude response of an ideal n th -order Butterworth filter. Page of 0

the derivative of the magnitude response is always negative for positive Ω, the magnitude response is monotonically decreasing with Ω. For Ω >>, the magnitude response can be approximated by 2 H a (j Ω). (-2) 2n ( Ω / Ω ) c Butterworth Filter Design Procedure We start with specifications for the filter. Usually, the specifications are given as ) Ω the pass-band edge, p 2) Ω the stop-band edge, s 3) H a( j Ω p) =, the maximum pass-band attenuation or ripple, 2 +ε (-3) 4) H a( j Ω s) =, the minimum stop-band attenuation or ripple. A These four pieces of known information must be used to compute filter order n, 3dB cut-off frequency and filter transfer function H a (jω). For example, this is the approach used by the Butterworth design functions in the Matlab Signal Processing Toolbox. The third specification in (-3) can be used to write H a(j Ω p) = =, (-4) 2n 2 + ( Ωp/ ) +ε Page 2 of 0

a result that leads to (Ω p / ) 2n = ε 2 and the requirement log ε n = log Ωp log Ω, (-5) c a single equation in the unknowns and n. Equation (-5) can be used to write log log log n = Ωp ε. (-6) We need a second equation in the unknowns and n. This second equation is obtained from the fourth of (-3), a specification on the stop band. At stop-band edge, we have 2 H a(j Ω s) = = 2n 2 + ( Ωs/ Ωc) A, (-7) a result that leads to (Ω p / ) 2n = A 2 or 2 log A n = log Ωp log Ω. (-8) c This second equation in the unknowns and n can be used to write log log log A n 2 = Ωs. (-9) Page 3 of 0

With (-5) and (-8), we have two equations in the unknowns and n. To solve these, substitute (-9) into (-5) and obtain log ε n =, (-0) 2 log Ωp log Ω s + log A n a result that can be solved for log ε 2 A n =, (-) Ωp log Ω s a simple formula for the necessary filter order n. Of course, in the likely event that (-) yields a fractional value, it must be rounded up to the next integer value, so that n is a positive integer. Using the just-determined integer value of n, we can solve for by using either (-6) or (-9). If (-6) is used, we will meet the third specification (the pass-band specification) in (-3) and possibly exceed (because we may have rounded up to obtain an integer for n) the fourth specification (the stop-band specification). On the other hand, if (-9) is used to calculate, we will meet the stop-band specification and possibly exceed the pass-band specification. The Matlab Signal Processing Toolbox function Buttord uses the just-outlined approach. Using the Matlab definitions Wp for the pass-band edge in radians/second Ws for the stop-band edge in radians/second Rp for the maximum pass-band ripple (the attenuation, in db, at Wp) Rs for the minimum stop-band ripple (the attenuation, in db, at Ws), Page 4 of 0

we compute filter-order n and 3dB down frequency Wc with the command-line statement [n,wc] = buttord(wp,ws,rp,rs, s ) (-2) Matlab rounds up (-) to determine n and uses (-9) to compute Wc. So, buttord selects n and Wc to meet the stop-band specification and (possibly) exceed the pass-band specification. Filter Transfer Function H a (jω) Next, we must obtain the transfer function H a (jω) for the just-computed values of n and. Note that we require impulse response h a (t) to be real-valued and causal. This requirement leads to Ω j t jωt H a (j Ω ) = h 0 a(t)e dt = h 0 a(t)e dt = H a( j Ω), (-3) so that H a(j Ω)H a( j Ω ) =. (-4) 2n + (j Ω / j ) Note that there is no real value of Ω for which H a (Ω) =. That is, H a (jω) has no poles on the jω-axis of the complex s-plane. We require the filter to be causal and stable. Causality requires h a (t) = 0, t < 0. Causality and stability require Page 5 of 0

h 0 a (t) dt <. (-5) Causality and stability requires that the time-invariant filter have all of its poles in the left-half of the complex s-plane (no jω-axis, or right-half-plane poles). The region of convergence for H a (s) is of the form Re(s) > σ for some σ < 0, see Figure 2. Hence, H a (s) can be obtained from H a (jω), the Fourier transform of the impulse response, by replacing s with jω. In (-4), replace jω with s to obtain H a(s)h a( s) =. (-6) 2n + (s/ j ) As can be seen from inspection of (-6), the poles of H a (s)h a (-s) are the roots of + (s/j ) = 0. That is, each pole must be one of the numbers /2n sp = j Ωc( ). (-7) Im to +j σ Region of Convergence for H a (s) to Re to j Figure 2: Region of convergence for transform H a (s), the s-domain transfer function of a n th - order Butterworth filter. Value σ < 0 depends on cut-off frequency and filter order n. All poles of H a (s) must have a real part that is less than, or equal to, σ. Page 6 of 0

There are 2n distinct values of s p ; they are found by multiplying the 2n roots of - by the complex constant j. The 2n roots of - are obtained easily. Complex variable z is a 2n root of - if 2n z =. (-8) Clearly, z must have unity magnitude and phase π/2n, modulo 2π. Hence, the 2n roots of - form the set π { + π }. (-9) 2n n k, k = 0,, 2,, 2n- Multiply these roots of - by j to obtain the poles of H a (s)h a (-s). This produces π π π { } pk = + + k, k = 0,, 2,, 2n-. (-20) 2 2n n as the poles of H a (s)h a (-s). Notice that p 0, p,, p n- are in the left-half of the complex plane, while p n,, p 2n- are in the right-half plane. In the complex plane, these poles are on a circle (called the Butterworth Circle) of radius, and they are spaced π/n radians apart in angle. The poles given by (-20) are ) symmetric with respect to both axes, 2) never fall on the jω axis, 3) a pair falls on the real axis for n odd but not for n even, 4) lie on the Butterworth circle of radius where they are spaced π/n radians apart in angle, and Page 7 of 0

5) half of their number are in the right-half plane and half are in the left-half-plane. Using (-20), we can write pp 0 p H 2n a(s)h a( s) = =. (-2) 2n + (s/ j Ω (s p c) 0)(s p ) (s p 2n ) Since the poles of H a (s) are in the left-half plane, we factor (-2) to produce n ( ) p 0 p p H n a (s) =, (-22) (s p 0)(s p ) (s p n ) the transfer function of the n th -order Butterworth filter. So far, we have required a unity DC gain for the filter (i.e., H a (0) = ). However, any DC gain can be obtained by simply multiplying (-22) by the correct constant. Example: Determine the transfer function for a unity-dc-gain, third-order Butterworth filter with a cut-off frequency of = radian/second. The Butterworth circle, and 6 poles of H a (s)h a (-s), are depicted by Figure 3. The poles of H a (s) are given by (-20); these numbers are p 2 0 = { π /2 +π /6} = π, p 3 = { π /2 +π /6 +π /3} = π, p 2 2 = { π /2 +π /6+ 2 π /3} = π. 3 (-23) Finally, the s-domain transfer function is given by Page 8 of 0

2π/3 Im π/3 π π/3 0 Re -2π/3 -π/3 Figure 3: S-plane Butterworth circle of radius = for a third-order filter. H a (s) = (s 2π)(s π)(s 2π) = 3 2 s + 2s + 2s+ 3 3 (-24) Example: The Matlab Signal Processing Toolbox has several powerful functions that are useful for designing Butterworth (and other types of) filters. For example, the code N = 3; W = ; [num,den] = butter(n,w, s ) will design the 3 rd -order Butterworth filter that is discussed in the previous example. N is the filter order. W is the 3dB cut-off frequency, num is a 3 vector of numerator coefficients, and dom is a 3 vector of denominator coefficients (the coefficient vectors are ordered highest to lowest power of s). To try out butter, one can type [num,den]=butter(3,,'s') at the Matlab command prompt to obtain >> [num,den]=butter(3,,'s') Page 9 of 0

num = 0 0 0.0000 den =.0000 2.0000 2.0000.0000 >> Notice that Matlab returns numerator and denominator polynomial coefficients that agree with the right-hand side of (-24). Page 0 of 0