Цифровой фильтр очень важная часть ЦОС. Фактически, благодаря их превосходным характеристикам ЦОС стала так популярна. Как упоминалось во введении, фильтры имеют два использования: выделение сигнала и восстановление сигнала. Выделение сигнала необходимо, когда он загрязнен переотражениями, шумами или другими сигналами. Например, представьте прибор для измерения активности сердца ребенка в утробе матери. Исходный сигнал будет искажен дыханием и сердцебиением матери. Фильтр может быть использован для выделения этого сигнала так, что он сможет быть индивидуально проанализирован.
Восстановление сигнала используется, когда сигнал как-либо испорчен. Например, аудио запись, сделанная некачественной аппаратурой, может быть отфильтрована для лучшего представления действительного звучания. Другой пример, размытие изображения из-за неправильной фокусировки или дрожания камеры.
Проблем может быть решена либо аналоговым, либо цифровым фильтром. Какой лучше? Аналоговый фильтр дешевле, быстрее и имеет больший динамический диапазон, как по амплитуде, так и по частоте. Цифровой фильтр значительно превосходит его по уровню характеристик, которые могут быть достигнуты. Например, низкочастотный цифровой фильтр, представленный в главе 16, имеет коэффициент усиления 1±0,0002 от постоянного тока до 1000 Гц, и коэффициент усиления менее 0,0002 для частот выше 1001 Гц. Перепад целиком находится внутри только 1 герца. Не ожидайте этого от схем с операционным усилителем! Цифровые фильтры могут иметь характеристики в тысячи раз лучше, чем аналоговые фильтры. Это создает колоссальную разницу в подходе к проблемам фильтрации. Для аналоговых фильтров главное ограничение наблюдается со стороны электроники - точности и стабильности резисторов и емкостей. Для сравнения, цифровые фильтры так хороши, что зачастую эти параметры просто игнорируются. У них главные моменты сдвигаются в сторону ограничения по сигналам и теоретических вопросов, относящихся к обработке сигналов.
Обычно в ЦОС на входе фильтра и на выходе фильтра присутствуют сигналы временной области. Это вызвано тем, что сигналы обычно создаются отсчетами через регулярные интервалы времени. Но это не единственный способ получения отсчетов. Отсчеты могут получаться и через равные интервалы пространства. Например, представьте одновременное считывание информации из массива датчиков растяжения, расположенных через 1 сантиметр вдоль крыла самолета. Возможны многие другие области; однако, время и пространство наиболее типичны. Когда вы видите термин временная область в ЦОС, помните, что это может действительно означать отсчеты во времени, или может быть общее обозначение любой области, откуда поступают отсчеты
Как показано на рисунке 14-1, каждый линейный фильтр обладает импульсным откликом, ступенчатым откликом и частотным откликом (частотная характеристика). Каждый из этих откликов (характеристик) содержит полную информацию о фильтре, но в разной форме. Если один из них определен, то два других могут быть соответственно вычислены. Все три представления важны потому, что они описывают реакцию фильтра при разных условиях.
Наиболее прямой путь выполнения цифрового фильтра это свертка входного сигнала с импульсным откликом цифрового фильтра. Все возможные линейные фильтры могут быть выполнены таким способом. (Это должно быть очевидно. Если нет, то вы, возможно, не имеете основ для понимания этого раздела по созданию фильтров. Попробуйте еще раз посмотреть предыдущий раздел по основам ЦОС.) Когда импульсный отклик используется в этом способе, схема фильтра получает специальное название: ядро фильтра.
Имеется также и другой способ создания цифрового фильтра, называемый рекурсия. Этим способом фильтр создается с помощью свертки, каждый отсчет выходного сигнала вычисляется взвешиванием входных отсчетов и их сложением. Рекурсивный фильтр расширяет этот подход, используя кроме входных точек предыдущее вычисление выходной величины. Вместо ядра фильтра рекурсивный фильтр определяется набором рекурсивных коэффициентов. Этот метод будет детально обсуждаться в главе 19. Теперь важно усвоить, что все линейные фильтры имеют импульсный отклик, даже если вы не используете его при создании фильтра. Что бы найти импульсный отклик рекурсивного фильтра, просто подайте на его вход импульс и посмотрите, что будет на выходе. Импульсный отклик рекурсивного фильтра состоит из синусоид, амплитуда которых уменьшается по экспоненте. В принципе, это делает их импульсный отклик бесконечно длинным. Однако амплитуда, в конечном счете, падает ниже уровня шумов округления системы, и оставшиеся отсчеты могут быть проигнорированы. Благодаря такому импульсному отклику рекурсивные фильтры также называются фильтрами с бесконечным импульсным откликом (Infinite Impulse Response orIIR). Аналогично, фильтры, выполненные с помощью свертки, называются фильтрами с конечным импульсным откликом (Finite Impulse Response orFIR).
РИСУНОК 14-1
Параметры фильтра. Каждый линейный фильтр имеет импульсный отклик, ступенчатый отклик и частотный отклик. Ступенчатый отклик (b) может быть найден дискретным интегрированием импульсного отклика (а). Частотный отклик может быть найден из импульсного отклика с помощью БПФ. Он может быть отображен по линейной шкале (с), или по логарифмической (d).
Как вы знаете, импульсный отклик есть выходной сигнал системы, когда на ее вход подан импульс. Точно таким же образом, ступенчатый отклик есть выходной сигнал, когда на вход системы подана ступенька (скачок, отклик на скачок). Поскольку ступенька есть интеграл от импульса, ступенчатый отклик есть интеграл от импульсного отклика. Имеется два способа найти ступенчатый отклик: (1) подать ступенчатый сигнал на вход фильтра и посмотреть, что будет на выходе, или (2) проинтегрировать импульсный отклик. (Что бы быть математически корректными отметим: интегрирование используется для непрерывных сигналов, для дискретных сигналов используется дискретное интегрирование, т.е. текущая сумма [running sum]). Частотный отклик (частотная характеристика – АЧХ) может быть найдена применением ДПФ (используя алгоритм БПФ) к импульсному отклику. Это будет рассмотрено позже в этой главе. Частотный отклик может быть отображен по линейной шкале по вертикальной оси (с) или по логарифмической шкале (d) в децибелах. Линейная шкала лучше показывает дрожание в полосе пропускания и спад, в то время как логарифмическая шкала необходима, чтобы увидеть ослабление в полосе подавления.
Не помните, что такое децибелы? Быстро напомним. Бел (в честь Александра Грэхема Белла) означает, что мощность изменилась в десять раз. Например, электронная цепь, которая имеет коэффициент усиления 3 бела, производит сигнал в 10 ´ 10 ´ 10 = 1000 раз мощнее, чем на входе. Децибел (дБ) – одна десятая бела. Следовательно, величины в децибелах: -20 дБ, -10 дБ, 0 дБ, 10 дБ и 20 дБ означают отношение мощностей: 0,01, 0,1, 1, 10, и 100, соответственно. Другими словами, каждые десять децибел означают изменение мощности в десять раз.
Здесь есть зацепка: вы, обычно, хотите работать с амплитудой сигнала, а не с его мощностью. Например, представьте усилитель с 20 дБ усилением. По определению, это означает, что мощность сигнала будет увеличена в 100 раз. Поскольку амплитуда пропорциональна корню квадратному из мощности, то амплитуда выходного сигнала будет в 10 раз больше чем входного. Следовательно, 20 дБ соответствуют 100 кратному увеличению мощности и только 10 кратному увеличению амплитуды. Каждые двадцать децибел означают изменение амплитуды в десять раз. В формульном виде:
ФОРМУЛА 14-1
Определение децибелов. Децибел есть отношение двух сигналов. Отношение мощностей (P1 и P2) использует другую формулу, чем отношение амплитуд (A1 и A2).
Эти формулы используют логарифм по основанию 10. Однако, многие компьютерные языки могут работать только с логарифмами по основанию е (натуральный логарифм, записывается logex или lnx). Для натурального логарифма формулы могут быть модифицированы: dB = 4,342945 ln(P2/P1) и dB = 8,685890 ln(A2/A1).
Поскольку децибелы выражают отношение двух сигналов, они идеально подходят для описания коэффициента усиления системы, то есть, отношения между выходным и входным сигналами. Однако инженеры также используют децибелы для обозначения амплитуды (или мощности) выбранного сигнала по некоторым правилам. Например, термин dBV означает, что сигнал соотносится с 1 вольтовым среднеквадратическим сигналом. Подобным образом, dBm означает соотношение с сигналом, который выделяет 1 милливатт на 600 Ом нагрузке (около 0,78 вольт среднеквадратического сигнала).
Если вы еще ничего не поняли в децибелах, помните две вещи. Первое, -3 дБ означают, что амплитуда уменьшилась до 0,707 (и мощность, следовательно, понизилась до 0,5). Второе, помните следующие преобразования между децибелами и отношениями амплитуд: