Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How to select Active Low Pass Filter for ADC Antialiasing

Status
Not open for further replies.

Kannan26nov88

Newbie level 4
Newbie level 4
Joined
Jun 16, 2014
Messages
7
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Visit site
Activity points
54
while selecting low pass filter for ADC antialiasing, I am confused among different types of active filters like Butterworth, bessel, Sallen-Key etc... .

Please suggest me which one is good.
 

Depends upon your antialiasing requirements.

What is the highest signal frequency versus the sample frequency?
What is the noise/spurious signal level outside the signal passband?
What is the A/D sample resolution?

If you have the answers to those questions, then you can determine the filter requirements.
 

Thanks for your reply

The highest signal frequency would be maximum of 100Hz (output of hall effect current sensor) and the sampling frequecy of selected ADC is 250KHz.

Noise signal outside the signal passband may be in the range of KHz due to DC to DC power supply switching frequecy, which is used to power the sensor.

A/D resolution is 16bit.
 

So that means you likely want a filter that rolls off above 100Hz and has at least 16-bits of attenuation (-96dB) at the power supply switching frequency. Do you know what that frequency is?
 

I am confused among different types of active filters like Butterworth, bessel, Sallen-Key etc... .

What is the difference between flat-sceeen TV, colour-TV and a Sony-TV set?
Sorry for this joke.

You cannot compare Butterworth and Sallen-Key filters.
The first one (Butterworth) describes a certain form of the transfer function (maximally flat) and the second one (Sallen-Key) is a certain circuit topology.
But if you are a newcomer regarding analog filters it is perhaps helpful to know the terminology and the meaning of some terms..
 

Thanks for joke and information.

Yes, Iam new to analog filters.
Pls share if you have more information.
 

I think, it is best to answer first Chrutschow´s questions.
 

Yes i want filter that rolls off above 100Hz and the power supply switching frequency is 160 to 250kHz.
 

The types of filters used to prevent aliasing in ADC's in theory are called Nyquist filters, which define the stop bandwidth fSTOP must be <= 1/2 of the sampling rate.

The implementation however is a tradeoff between distortion from noise above fSTOP , group delay distortion in the passband, amplitude ripple in the passband and degree of complexity with higher order filters.

The names for different filters have existed for many decades such as Cauer, Gaussian, Chebychev etc. Each is optimized for one of these tradeoffs.
First you define , the signal and then the noise to determine what is critical for the filter properties, such as ;

- limits of bandwidth, normally the 3dB fBW,
- the ripple in the passband, which increases in cycles according to higher order filters but the amount of ripple is traded off with steepness of the skirts of the filter
- one measure is the ratio of fstop to fBW or in other words the slope in dB/Hz.
- non-linear phase shift in the passband and its derivative time delay if unequal which produces jitter on the data edges,
- linear phase filters are often used for data filters.
- A special class of these have ringing with zero jitter at the time interval boundary where all data pattern zero crossings coexist called Raised Cosine filters.

For analog data, where voltage accuracy is desired, then the lowest ripple in the passband is traded off with the order of filter like 5,6 or 7th order filters for telephony to get 3.5kHZ bandwidth in an 8KHz sample rate. Ripple of 0.5dB, 1dB 2 dB 3 dB are examples in the passband.

The bandstop depth is determined by the desired accuracy, SNR, ADC resolution etc so fSTOp may be specified for example as 60,80, 100dB or something in between.

SAW filters are useful for creating very high order order filters with one of these characteristics due to tight process control unattainable with 5% passive components or even 1% parts.

This is what your specification show look like, which is the first step to define with upper and lower tolerances on each value.

1. Passband Ripple [dB]
2. fBW [f, -3dB]
3. fSTOP [f, dB]


Nyquist filter.jpg
 

The highest signal frequency would be maximum of 100Hz (output of hall effect current sensor) and the sampling frequecy of selected ADC is 250KHz.
I wonder if this is the whole truth. To caluclate a sampling frequency of 250 kHz, the ADC has to be operated continuously at this rate with no samples discarded. This sounds unusually for a 100 Hz bandwidth signal and probably won't be achievable with a µP. Or is it an oversampling ADC that has 250 kHz input sampling frequency and outputs data at much lower rate.

The filter passband specification is important in two regards:
- AC components to be passed without attenuation
- behaviour in time domain

The latter might inpose an additional filter constraint, e.g. no-overshoot, maximum setting time
 

Hi,

all the previous posts are OK.

In my eyes this is a bit overkill. With the given values of 100 Hz max. signal frequency and 250kHz sampling frequency the external anlog anti aliasing filter is very simple.
The usefull frequency is 100Hz the max. allowed frequency is 125kHz. This gives a rate of 1250:1.

Audio:
With CD audio signals you want 20kHz signal frequency with a sample rate of 44.1 kHz. (max. freq 22.05kHz)
This gives a rate of 1.1 : 1 that is way more difficult to achieve.

With your application:
The worst case is at an unwanted frequency of 249900 Hz giving an alias frequency of 100Hz.
(All frequencies from 100Hz up to 125kHz are un-aliased and can be filtered with software. Frequencies of 125kHz up to 249900 Hz give alias frequencies (125kHz down to 100Hz) that can be filtered with software.
Frequencies from 249900 to 250100 Hz give aliasfrequencies in the desired signal spectrum. These are the bad ones...

Lets assume the unwanted frequency is 10% of full scale amplitude and you want to attenuate it to less than one LSB. You need an attenuation of 76 dB. ( = 65536 x 10%)
first order solution:
The worst case is at 249900Hz and you have a simple RC filtering you need 76/6 = 12 octaves distance. This a factor of 6700.
250000/6700 = 37Hz,
---> filtering with first order is not possible because fc is within your wanted frequency.

So lets use a 2nd order filter. So it is 76/12 = 6 octaves of distance. A factor of 82. A cutoff frequency of 3.05 kHz.

100Hz signal and on the other side 3kHz. Thats fine.
---> Meet in the middle and use 550Hz second order low pass.

This is just an estimation. no exact calculation - i know. Your cutoff is far away from your upper wanted frequency, so the filter type (bessel, butterworth, linkwitz-riley, chebeychev....) is not that important.
Simple hardware and a bit of digital filtering....(that is necessary with the other post´s solutions, too)

Good luck

Klaus
 

You can use Filter Free from Nuhertz to help you design your filter. There is a free and a paid version of the program. The free can design up to 3rd order filters. You can download it from here

**broken link removed**
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top