Вычислите отфильтрованный вывод, отфильтруйте ошибку и отфильтруйте веса для данного входа, и желал сигнала с помощью RLS адаптивный алгоритм фильтра
Фильтрация / Адаптивные Фильтры
dspadpt3
Блок RLS Filter рекурсивно вычисляет оценку методом наименьших квадратов (RLS) КИХ-весов фильтра. Блок оценивает, что веса фильтра или коэффициенты, должны были преобразовать входной сигнал в желаемый сигнал. Соедините сигнал, который вы хотите отфильтровать к Входному порту. Входной сигнал может быть скаляром или вектор-столбцом. Соедините сигнал, который вы хотите смоделировать к Требуемому порту. Желаемый сигнал должен иметь совпадающий тип данных, сложность и размерности как входной сигнал. Выходной порт выводит отфильтрованный входной сигнал. Ошибочные выходы порта результат вычитания выходного сигнала желаемого сигнала.
Соответствующий фильтр RLS выражается в матричной форме как
где λ-1 обозначает обратную величину экспоненциального фактора взвешивания. Переменные следующие
Переменная | Описание |
---|---|
n | Индекс текущего времени |
u (n) | Вектор буферизированных входных выборок на шаге n |
Pn | Обратная ковариационная матрица на шаге n |
k (n) | Вектор усиления на шаге n |
Вектор касания фильтра оценивает на шаге n | |
y (n) | Отфильтрованный вывод на шаге n |
e (n) | Ошибка оценки на шаге n |
dN | Желаемый ответ на шаге n |
λ | Фактор упущения |
Реализация алгоритма в блоке оптимизирована путем использования симметрии обратной ковариационной матрицы P (n). Это сокращает общее число вычислений фактором два.
Используйте параметр Filter length, чтобы задать длину вектора весов фильтра.
Параметр Forgetting factor (0 to 1) соответствует λ в уравнениях. Это задает, как быстро фильтр “забывает” прошлую демонстрационную информацию. При установке λ = 1
задает бесконечную память. Как правило, , где L является длиной фильтра. Можно задать фактор упущения использование входного порта, Lambda, или ввести значение в параметр Forgetting factor (0 to 1) в Параметрах блоков: диалоговое окно RLS Filter.
Введите начальные веса фильтра, , как вектор или скаляр для параметра Initial value of filter weights. При вводе скаляр, блок использует скалярное значение, чтобы создать вектор весов фильтра. Этот вектор имеет длину, равную длине фильтра, и все ее значения равны скалярному значению.
Начальное значение P (n)
где вы задаете в параметре Initial input variance estimate.
Когда вы устанавливаете флажок Adapt port, порт Adapt появляется на блоке. Когда вход к этому порту является ненулевым, блочно-непрерывно обновления веса фильтра. Когда вход к этому порту является нулем, веса фильтра остаются в своих текущих значениях.
Когда это необходимо, чтобы сбросить значение весов фильтра к их начальным значениям, используйте параметр Reset input. Блок сбрасывает веса фильтра каждый раз, когда событие сброса обнаруживается в порте Reset. Уровень сигнала сброса должен быть тем же уровнем как вход сигнала данных.
Из списка Reset input выберите None
, чтобы отключить порт Reset. Чтобы включить порт Reset, выберите одно из следования из списка Reset input:
Rising edge
— Инициировал операцию сброса, когда вход Reset выполняет одно из следующих действий:
Повышения от отрицательной величины до положительного значения или нуля
Повышения от нуля до положительного значения, где повышение не является продолжением повышения от отрицательной величины, чтобы обнулить; смотрите следующую фигуру
Falling edge
— Инициировал операцию сброса, когда вход Reset выполняет одно из следующих действий:
Падения от положительного значения до отрицательной величины или нуля
Падения от нуля до отрицательной величины, где падение не является продолжением падения от положительного значения, чтобы обнулить; смотрите следующую фигуру
Either edge
— Инициировал операцию сброса, когда входом Reset является Rising edge
или Falling edge
, как описано выше
Non-zero sample
— Инициировал операцию сброса в каждом шаге расчета, что вход Reset не является нулем
Установите флажок Output filter weights, чтобы создать порт Wts на блоке. Для каждой итерации блок выводит текущие обновленные веса фильтра от этого порта.
Пример rlsdemo
иллюстрирует систему подавления помех, созданную вокруг блока RLS Filter.
Введите длину КИХ-вектора весов фильтра.
Выберите Dialog
, чтобы войти, значение для упущения включают Параметры блоков: диалоговое окно RLS Filter. Выберите Input port
, чтобы задать фактор упущения использование входного порта Lambda.
Войдите экспоненциальное взвешивание включают область значений 0
≤λ ≤ 1
. Значение 1
задает бесконечную память. Настраиваемый (Simulink).
Задайте начальные значения КИХ-весов фильтра.
Начальное значение 1/P (n).
Установите этот флажок, чтобы включить Адаптировать входной порт.
Установите этот флажок, чтобы включить входной порт Сброса.
Установите этот флажок, чтобы экспортировать веса фильтра от порта Wts.
Hayes, M.H. Статистическая цифровая обработка сигналов и моделирование. Нью-Йорк: John Wiley & Sons, 1996.
Плавающая точка двойной точности
Плавающая точка с одинарной точностью
Кальман адаптивный (устаревший) фильтр | DSP System Toolbox |
Фильтр LMS | DSP System Toolbox |
Блокируйте фильтр LMS | DSP System Toolbox |
Быстро блокируйте фильтр LMS | DSP System Toolbox |
Смотрите Адаптивные Фильтры в Simulink для сопутствующей информации.