phasedelay

Функция расчета фазовой задержки цифрового фильтра.

Синтаксис:

phasedelay(num, respsize, resparr).
phasedelay(num, den, respsize, resparr).

Аргументы:

Имя Тип данных Описание
num array Массив коэффициентов числителя фильтра
den array Массив коэффициентов знаменателя фильтра
respsize integer Размер массива значений фазовой задержки, задается в промежутке от 1 до 16384
resparr array Выходной массив значений фазовой задержки фильтра

Описание:

phasedelay(num, respsize, resparr) – функция расcчитывает значения фазовой задержки для фильтра в классе КИХ цепей на основе коэффициентов числителя;

phasedelay(num, den, respsize, resparr) – функция рассчитывает значения фазовой задержки для фильтра в классе БИХ цепей на основе коэффициентов числителя и знаменателя;

Алгоритм расчета состоит из следующих ключевых операций:

  1. Расчёт передаточной характеристики фильтра;
  2. Расчёт фазо-частотной характеристики (ФЧХ);
  3. Расчёт значений частотной сетки;
  4. Расчёт значений фазовой задержки на основе значений ФЧХ и частотной сетки.

Подробное описание фазовой задержки представлено в [1].

Результат:

Имя Тип данных Описание
resparr array Массив значений фазовой задержки фильтра

Пример:

var   Order: Integer, // Порядок фильтра
   Type: String, // Тип фильтра   
   Cutoff: Double, // Частота среза фильтра    
   RespSize: Double, // Размер массива фазовой задержки  
   Num: Array = 10#0, // Числитель
   Den: Array = 10#0; // Знаменатель
output   RespArr: Array = 10#0;// Результирующий массив значений фазовой задержки
Order = 9;
Cutoff = 0.3;
Type = "low";
RespSize = 10;
butter(Num, Den, Order, Cutoff, Type);
phasedelay(Num, Den, RespSize, RespArr);

В результате в массивах Num и Den будут записаны коэффициенты числителя и знаменателя цифрового НЧ-фильтра Баттерворта 9-го порядка с нормированной частотой среза 0.3, которые будет использованы для расчёта фазовой задержки, значения которой в свою очередь будут записаны в массив RespArr

Результат выполнения функции:

RespArr = [0 5.76429207639863 6.17871803046954 7.49862308627215 7.80163239976092 7.07000700967438 6.35100151232904 5.74421027215441 5.24532116494361 4.83632104054139];

Дополнительные материалы

  1. Сергиенко А.Б. Цифровая обработка сигналов СПб, БХВ-Петербург, 2011, 768 стр.