Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Некоторые методы (алгоритмы) обработки сигналов



 

Алгоритмы систем управления работают на основе сигналов от датчиков в реальном времени.

Сигналы могут обладать следующими «недостатками»:

· Зашумленность,

· Низкая частота измерений,

· Низкое разрешение сигнала,

· Нелинейность чувствительного элемента,

· Взаимозависимость нескольких сигналов.

 

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

 

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

 

Типы обработки сигналов условно разделим на следующие:

· Калибровка сигнала

· Компенсация сигнала

· Аппроксимация сигнала (интерполяция и экстраполяция).

· Фильтрация сигнала (обработка во временной или частотной областях).

 

Первые два типа представляют собой совокупность средств для коррекции статической характеристики датчика.

 

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

 

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

 

Все типы обработки сигналов опираются на следующие операции и методы.

Аппроксимация сигнала – расширение ряда значений функции путем вычисления промежуточных значений (интерполяция) или предсказания следующих значений по предыдущим (экстраполяция).

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

Первые довольно сложны алгоритмически, но позволяют также сгладить случайные возмущения сигнала, вторые просты, но могут подчеркнуть шум.

 

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

 

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

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

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

 

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

Применяется для подавления шумов и согласования спектра сигнала.

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

 

Очевидно, что вторая группа алгоритмов не является алгоритмами реального времени.

Калибровка сигнала

 

Калибровка сигнала – приведение статической характеристики к желаемому виду.

 

В общем случае под «желаемым видом» подразумевают прямую, проходящую через 0 координат.

 

При этом требование к прохождению характеристики через 0 является технически необходимым, а требование к линейности упрощает согласование с программно-задающим устройством.

 

Компенсация сигнала

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

 

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

 

Устранение этого нежелательного влияния и есть компенсация.

 

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

 

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

 

Существует два подхода к реализации компенсатора: аналитический и табличный.

 

Суть аналитического подхода состоит в следующем:

Задана аналитически исходная статическая характеристика , где x – измеряемая величина, - вектор паразитных факторов.

 

Требуется найти такую функцию F, чтобы выполнялось условию: .

 

Недостатками метода являются:

· математическая сложность решения задачи.

· неточность исходного описания.

· физические изъяны датчиков, измеряющих .

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

 

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

 

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

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

 

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

 

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

 

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

 

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

 

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

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

,

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

.

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

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

 

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

 

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

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

 

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

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

 

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

 

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

 

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

 

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

МНК

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

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

 

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

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

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

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

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

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

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

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

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

то есть,

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

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

 

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

 

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

 

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

 

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

 

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

 

Фильтрация

 

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

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

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

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

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

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

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

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

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

 

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


Поделиться:



Последнее изменение этой страницы: 2019-05-08; Просмотров: 327; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.055 с.)
Главная | Случайная страница | Обратная связь