Вычислите отфильтрованный выход, отфильтруйте ошибку и отфильтруйте веса для данного входа, и желал сигнала с помощью RLS адаптивный алгоритм фильтра
Фильтрация / Адаптивные Фильтры
dspadpt3
Блок RLS Filter рекурсивно вычисляет оценку методом наименьших квадратов (RLS) КИХ-весов фильтра. Блок оценивает, что веса фильтра или коэффициенты, должны были преобразовать входной сигнал в желаемый сигнал. Соедините сигнал, который вы хотите отфильтровать к Input port. Входной сигнал может быть скаляром или вектор-столбцом. Соедините сигнал, который вы хотите смоделировать к Требуемому порту. Желаемый сигнал должен иметь совпадающий тип данных, сложность и размерности как входной сигнал. Выходной порт выводит отфильтрованный входной сигнал. Ошибочные выходы порта результат вычитания выходного сигнала желаемого сигнала.
Соответствующий фильтр 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 Используя Нормированный Адаптивный Фильтр LMS для сопутствующей информации.