Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: LIII Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 31 мая 2017 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Комиссаров А.А., Курочкин В.В. ИСПОЛЬЗОВАНИЕ ФИЛЬТРА КАЛМАНА ДЛЯ ФИЛЬТРАЦИИ ЗНАЧЕНИЙ, ПОЛУЧАЕМЫХ С ДАТЧИКОВ // Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ: сб. ст. по мат. LIII междунар. студ. науч.-практ. конф. № 5(52). URL: https://sibac.info/archive/technic/5(52).pdf (дата обращения: 29.11.2024)
Проголосовать за статью
Конференция завершена
Эта статья набрала 55 голосов
Дипломы участников
У данной статьи нет
дипломов

ИСПОЛЬЗОВАНИЕ ФИЛЬТРА КАЛМАНА ДЛЯ ФИЛЬТРАЦИИ ЗНАЧЕНИЙ, ПОЛУЧАЕМЫХ С ДАТЧИКОВ

Комиссаров Алексей Александрович

магистрант кафедры электроэнергетики и автоматики БГТУ им. В. Г. Шухова,

РФ, г. Белгород

Курочкин Владислав Валерьевич

магистрант кафедры электроэнергетики и автоматики БГТУ им. В. Г. Шухова,

РФ, г. Белгород

Семернин Андрей Николаевич

научный руководитель,

канд. техн. наук, доцент кафедры электроэнергетики и автоматики БГТУ им. В. Г. Шухова,

РФ, г. Белгород

 

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

Одним из эффективных алгоритмов фильтрации является фильтр Калмана. Фильтр Калмана - рекурсивный фильтр, оценивающий вектор состояния динамической системы, используя ряд неполных и зашумленных измерений [2]. Фильтр Калмана использует динамическую модель системы (к примеру, физический закон движения), управляющие воздействия и множество последовательных измерений для формирования оптимальной оценки состояния. Алгоритм состоит из двух повторяющихся фаз: предсказание и корректировка. На первом этапе рассчитывается предсказание состояния в последующий момент времени (с учетом неточности их измерения). На втором, новая информация с датчика корректирует предсказанное значение (также с учетом неточности и зашумленности этой информации).

На этапе предсказания происходит:

  1. Предсказание состояния системы:

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

  1. Предсказание ошибки ковариации:

где  – предсказание ошибки;   – ошибка в предыдущий момент времени;  – ковариация шума процесса.

На этапе корректировки происходит:

  1. Вычисление усиления Калмана:

где  – усиление Калмана;   – матрица измерений, отображающая отношение измерений и состояний;  – ковариация шума измерения.

  1. Обновление оценки с учётом измерения :

где  – измерение в текущий момент времени.

  1. Обновление ошибки ковариации:

где  – матрица идентичности.

Если состояние системы описывается одной переменной, то  = 1, а матрицы вырождаются в обычные уравнения.

Чтобы наглядно продемонстрировать эффективность фильтра Калмана, был проведён эксперимент с датчиком громкости AVR PIC KY-037, который подключен к микроконтроллеру Arduino Uno. На рисунке 1 представлен график показаний датчика без применения фильтра (линия 1). Хаотичные колебания значения на выходе датчика свидетельствуют о наличии шумов.

 

Рисунок 1. График показаний датчика без применения фильтра

 

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

Расчёт переменной  произведём в программе Microsoft Excel 2010. Для этого необходимо рассчитать среднеквадратичное отклонение для выборки значений показаний датчика.  = 0,62.  подбирается в зависимости от требуемого уровня фильтрации, принимаем  = 0,001. На рисунке 2 второй линией представлен график показаний датчика с применением фильтра.

 

Рисунок 2. График показаний датчика с применением фильтра Калмана

 

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

Однако у фильтра Калмана есть существенный недостаток. Если измеряемая датчиком величина может резко изменяться, отфильтрованные показания датчика не будут изменяться так же быстро, как измеряемая величина. На рисунке 3 показана реакция фильтра Калмана на скачок измеряемой величины.

 

Рисунок 3. Реакция фильтра Калмана на скачок измеряемой величины

 

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

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

 

 

Список литературы:

  1. ГОСТ 17657—79. Передача данных. Термины и определения. – Москва: Изд-во стандартов, 2005. – 2 с.
  2. Фильтр Калмана // Википедия. [2008—2017]. Дата обновления: 26.04.2017. URL: http://ru.wikipedia.org/?oldid=85061599 (дата обращения: 21.05.2017).
Проголосовать за статью
Конференция завершена
Эта статья набрала 55 голосов
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.