Разностное уравнение дискретного фильтра 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Разностное уравнение дискретного фильтра

Поиск

Табличные вычисления

 

Суть табличный вычислений заключается в том, что вместо непосредственного вычисления функции, которые имеют конечное множество значений и аргументов, формируется таблица (массив), содержащие все значения этой функции для всего множества аргумента.

 

Известный пример табличных вычислений – таблицы Брадиса, которые содержат значения тригонометрических функций для конечного количества аргументов.

 

Соответственно, вычисление функции по таблице – это просто взятие элемента массива по адресу, соответствующему значению аргумента. Соответственно, эта операция выполняется гораздо быстрее любого вычисления.

 

При этом можно указать на то, что таблица конечная и значения функции посчитаны не для каждого аргумента.

 

Если требуется рассчитать значение функции для промежуточных значений (а как будет показано, ниже для калибровки этого не требуется), можно использовать линейную интерполяцию соседних значений.

Пусть для функции f(x) вычислена и записана таблица значений F[i], где i = 0..N-1 соответствует значению аргумента . Тогда значение функции f(x) для x=a, где  вычисляется как

,

т.к. при составлении таблицы обычно используется то условие, что , то

.

Если линейной интерполяции не достаточно, можно воспользоваться более сложными методами аппроксимации (например, методом наименьших квадратов), однако это сведет на нет все преимущества табличных вычислений.

Вообще, потребность в интерполяции свидетельствует о том, что таблица составлена неправильно – даже в том случае, если таблица задана свыше и ее точности не хватает, то никто не мешает составить новую таблицу, заполнив ее интерполированными значениями.

 

Тарировочные таблицы

 

Тарировочные таблицы – это таблично заданные тарировочные функции.

Их  размер задается точностью исходной информации. Так или иначе сигнал с датчика преобразуется в код АЦП с заданной разрядность. Это означает, что иных значений, кроме тех, что выдает АЦП, быть не может в принципе, поэтому таблица не может быть больше, чем максимальное значение кода АЦП (может быть меньше, если используется не весь диапазон сигнала), также очевидно, что интерполяция по аргументы (измеряемой величине) бессмысленна.

 

Если тарировочная таблица выполняет функцию только калибровки, то это одномерный массив.

В общем случае размерность массива определяется количеством компенсируемых факторов.

 

Например. Есть датчик давления, чьи показания зависят от температуры. При этом давление измеряется АЦП с разрешением 10 бит, а температура – 8 бит. Для хранения полной тарировочной таблицы необходим массив 1024х256.

 

Заполнение тарировочной таблицы можно произвести прямым опытным путем – устройство ставится на стенд, где создаются измеряемые величины (температура, давление и т.п.) и для каждого значащего кода измеряемой величины (кода после оцифровки) в таблицу заносятся реальные значения, определяемые по измерительным приборам стенда.

 

Очевидно, что чем больше измеряемых параметров и чем шире диапазон значений, тем больше измерений необходимо провести. Для нашего примера потребуется более 260 тысяч измерений.

 

Поскольку проведение экспериментов такого порядка крайне трудоемко, то на практике поступают следующим образом. Обычно вид характеристик известен, то есть известно, сколько нужно точек, чтобы правдоподобно восстановить всю характеристику. На стенде снимают показания в этих контрольных точках и формируют таблицу значениями, полученными интерполяцией данных между заданными точками. При этом часто используются полиномиальные аппроксимационные функции, метод наименьших квадратов, МНК.

МНК

Метод наименьших квадратов — метод нахождения оптимальных параметров линейной регрессии, таких, что сумма квадратов ошибок минимальна. Метод заключается в минимизации евклидовой нормы между двумя векторами — вектором восстановленных значений зависимой переменной и вектором фактических значений зависимой переменной.

Рассмотрим пример.

 

Задана выборка — таблица

Задана регрессионная модель — квадратичный полином

Назначенная модель является линейной. Для нахождения оптимального значения вектора параметров   выполняется следующая подстановка:

Тогда матрица  значений подстановок свободной переменной  будет иметь вид

Задан критерий качества модели: функция ошибки

Здесь вектор  . Требуется найти такие параметры , которые бы доставляли минимум этому функционалу,

Требуется найти такие параметры  , которые доставляют минимум  — норме вектора невязок .

Для того, чтобы найти минимум функции невязки, требуется приравнять ее производные к нулю. Производные данной функции по составляют

Это выражение также называется нормальным уравнением. Решение этой задачи должно удовлетворять системе линейных уравнений

то есть,

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

Коррекция нуля, обнуление

 

Из практики известно, что наибольшему паразитному влиянию подвержено положение нуля сигнала – дрейф нуля наиболее ярко выражен по сравнению с искажением линейности или угла наклона характеристики. Поэтому коррекция нуля может быть выведено как самостоятельная задача. Вообще говоря, чисто к коррекции нуля можно свести 70-80% задач калибровки сигналов датчиков.

 

Коррекция нуля, обнуление обычно является частью боевой работы системы, например, обнуление показаний высотомера на ЛА перед взлетом, пока он находится на земле.

 

Для коррекции дрейфа нуля необходимо привести систему в состояние, когда целевая измеряемая величина будет равна нулю, а величины паразитных факторов станут стабильными и соответствовать величинам, наблюдаемым при работе системы (например, прогрев бортовой аппаратуры).

 

Теперь надо измерить нулевой сигнал, который соответствует нулевой величине физического параметра и в дальнейшем вычитать его значение из всех показаний датчика.

 

Нулевой сигнал следует определять как математическое ожидание накопленной последовательной выборки показаний датчика. Длительность выборки определяется по частотному спектру сигнала (фактически спектру шума, так как полезный сигнал постоянен) и должна быть в 5-10 раз длиннее периода самой низкочастотной составляющей части спектра шумового сигнала. На практике это от 5 до 40 секунд.

 

Фильтрация

 

Ранее мы рассмотрели способы получения цифрового значения, соответствующего входному сигналу разной природы.

Важно понимать, что эти рассмотренные операция являются (в идеале) всего лишь преобразованием формы, не затрагивающей содержание (с известными оговорками естественно).

Эти сигналы помимо полезной составляющей несут в себе шум, который может мешать корректному функционированию алгоритма, опирающегося на этот измеряемый сигнал.

В лекции про АЦП мы говорили о фильтрации высокочастотного, не удовлетворяющего критерию Найквиста шума. Рассмотренный случай являет собой самый простой пример проявления шумов и способа борьбы с ним – шум лежит вне интересующей нас полосы частот. Гораздо сложнее, если этот шум находится внутри спектра полезного сигнала и не является постоянным.

Рассмотрим такой пример. Есть самолет с бензиновым двигателем.

Работа двигателя вызывает вибрации корпуса, причем с изменением оборотов частота этих колебаний меняется.

Усугубим ситуацию тем, что частота этих колебаний лежит внутри полосы гироприборов системы навигации и стабилизации.

В отличие от рассмотренного примера в лекции по АЦП, где у нас параметры фильтра прямо следовали из величины частоты дискретизации, в данном случае из-за изменчивости шума нельзя построить постоянный фильтр.

Для этого используются специальные алгоритмы фильтрации, цифровые фильтры.

 

Цифровые фильтры можно разделить на два основных класса – БИХ-фильтры и КИХ-фильтры.

Можно сделать вывод о том, что если есть передаточная характеристика дискретного фильтра, то:

Передаточная функция дискретного фильтра выражается через нули и полюса и не зависит от входных и выходных сигналов. Можно записать:

 

Откуда получаем уравнение вида:

 

Произведение полиномов можно получить численным методом путем вычисления линейной свертки коэффициентов исходных полиномов. Тогда мы можем раскрыть произведения полиномов левой и правой частей при помощи линейной свертки вида:

 

В выражении в квадратных скобках выделены коэффициенты полинома произведения, вычисленные через линейную свертку. Очевидно, что равенство двух полиномов будет если порядки этих полиномов равны, т.е.  и коэффициенты при соответствующих степенях полиномов также равны. Тогда можно приравнять то, что в квадратных скобках и получим:

 

Это выражение есть разностное уравнение дискретного фильтра. По аналогии с тем, что аналоговые фильтры могут быть описаны дифференциальными уравнениями, дискретные фильтры описываются разностными уравнениями.

Рассмотрим подробнее полученное разностное уравнение. Для этого перепишем его в виде:

 

Таким образом, очередной k - ый отсчет на выходе фильтра y(k) рассчитывается как взвешенная сумма задержанных входных отсчетов минус взвешенная сумма предыдущих выходных отсчетов. Очень важно, чтобы a0 был отличен от нуля, в противном случае сигнал на выходе будет бесконечным. Часто задают a0=1 для того чтобы «не таскать» за собой 1/a0. При этом коэффициенты дискретного фильтра в разностном уравнении bm=0, если m>N и am=0 если m>M. Количество коэффициентов am bm и задают порядок дискретного фильтра.

 



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 44; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.196 (0.007 с.)