Assistance or advice appreciated: FIR filter design

Hi, This is something that's peripheral, but essential, to the overall project. I'd prefer to not have to go through the possibly significant
learning curve involved, rather to just get the answer. Maybe it's a 2 minute exercise for someone with the right software installed, or if someone could point me to a source of possible assistance elsewhere. Googling hasn't come up with a clear source, aside from a full consultancy approach which isn't warranted given that this is a one-off, once only thing.
I need to get coefficients for a FIR filter with the following characteristics:
Low pass. Attenuation > 75dB above 1500 Hz. Attenuation < 2 dB below 1200 Hz. No poles between 1200 and 1500 Hz. Information I have suggests 127 stages would be typical, that is a max due to computing constraints.
As with all my postings, not a homework question. Any suggestions would be greatly appreciated. TIA
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Noodnik wrote:

"Noodnik" sounds like a russian word which means "humdrum"
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

The yiddish interpretation is somewhat different, but same vein :-)
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On 12/29/2010 04:27 AM, Noodnik wrote:

You don't mention a sampling rate. You're going to need a delay of something like 10ms to get your attenuation -- does that fit with your sampling rate and your 127 stage filter?
Do this:
* Design a prototype filter frequency response. I like using a flat top equal to 1, a raised cosine for the transition region, and (obviously) zero for the stop band.
* Choose a length a good deal longer than your 127 taps. Computers are fast, choose at least several thousand.
* Put the frequency response into the sampled domain, i.e. express it as the vector that would come out of an FFT, with the first item = DC, and the last item almost = sampling rate. Make the thing symmetrical around DC and the sampling rate (i.e., pay attention to properly aliasing it).
* Take its inverse FFT
* Truncate the result to your 127 taps, pad it out with zeros, and take its FFT -- see if it still works for you.
* Enjoy, or not.
A "Full consultancy" approach for this filter, as you've specified it, should take me less than an hour to do, and less than two hours overall to put into a document & make it pretty -- assuming that you don't have to come back to me for modifications, clarifications, etc. That's a lot less than a weekend on the Oregon coast, so I don't see what's got you hot & bothered by it.
--

Tim Wescott
Wescott Design Services
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I would use a optimizing (minimizing program. It wouldn't take long. I am surprized that people don't have these progams already written and posted some play. It wouldn't take much time to do using Scilab.
Peter Nachtwey
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.