У вашего фильтра слишком широкая полоса пропускания. Им разве что в 2 раза можно продецимировать или проинтерполировать, причем сигнал с полосой не больше +/-0,37 от частоты Найквиста (Fn). Фильтр должен иметь полосу пропускания такую, чтоб пролазил спектр сигнала, и обеспечивал нужное подавление на той частоте, где будет находиться копия сигнала (интерполяция) ну или то, что завернется на спектр сигнала (децимация). Т.е. в вашем случае для интерполяции в 8 раз полоса пропускания должна быть 10 кГц, а подавление начиная с частоты 41,25-10 = 31,25 кГц и выше. Замечу что частота дискретизации при расчете фильтра уже 330 кГц, а не 41.25. К тому же т. к. частота начала заграждения 31,25 кГц меньше частоты 8/5 Fn т.е. 33 кГц, то для децецимации в 5 раз дополнительная фильтрация не нужна. Во втором каскаде можно тоже обойтись одним фильтром, но подавление должно начинаться уже с частоты не выше 48 кГц-10 кГц=38 кГц, при частоте дискретизации (8/5 fs1)*8 = 528 кГц. И зачем такое большое подавление в 153 дБ??? По моему это перебор, хватит и 70 - 90 дБ. Кстати, использование fdatool в матлабе гораздо упрощает процедуру расчета фильтров. И не забывайте про полифазную реализацию фильтров, которая уменьшит вычислительные затраты
|