с 01.01.2011 по настоящее время
Курск, Курская область, Россия
ВАК 05.02.2000 Машиностроение и машиноведение
УДК 62 Инженерное дело. Техника в целом. Транспорт
ГРНТИ 55.30 Робототехника
ОКСО 15.03.06 Мехатроника и роботехника
ББК 30 Техника и технические науки в целом
ТБК 50 Технические науки в целом
BISAC TEC037000 Robotics
Процессом комплексирования информации называется объединение данных для определения текущего состояния объекта (процесса/системы) или прогнозирования его состояния. Комплексирование информации способствует увеличению робастности управления робототехнической или мехатронной системой, а также точности обработки информации системой. В работе рассматривается один из методов комплексирования бортовых данных робота на примере данных мобильного гусеничного робота. Основная цель статьи – продемонстрировать, как можно получить матрицы Якоби функции процесса и матрицы Якоби функции наблюдений системы мобильного робота для последующего комплексирования данных наблюдателем состояния, построенного на основе фильтра Калмана и выполняющего преобразование бортовых данных робота в элементы вектора состояния системы мобильного робота. Каждый ненулевой элемент матрицы Якоби функции наблюдений системы является весовым коэффициентом, определяющим вклад соответствующего этому весовому коэффициенту элемента вектора выхода системы в результат комплексирования информации, вычисляемого фильтром Калмана – наблюдателем состояния. Фильтр Калмана является рекуррентным алгоритмом фильтрации данных в дискретных системах, описанных в пространстве состояний. Особенностью фильтра Калмана как наблюдателя состояния некоторой системы является предположение, что на состояние системы оказывает воздействие гауссовский «белый» шум.
мобильный робот, комплексирование данных, робототехника, фильтр Калмана, матрица Якоби
Введение. Системы управления движением мобильной робототехники являются сложными комплексами электронного оборудования, которое обеспечивает сбор и обработку информации о состоянии робота в целом и его отдельных подсистем, а также выполняет планирование действий мобильного робота и формирование управляющих приводами и актюаторами сигналов [1–3].
Сбор данных об окружающем мобильный робот пространстве в сочетании с воздействием робота на внешнюю среду (динамическое восприятие) по-прежнему остается лучшим способом восприятия недетерминированного пространства. Решающее значение имеет качество необработанной информации (данных), собранной от множества датчиков робота. Основными качественными свойствами информации являются: объективность, достоверность, полнота, точность, актуальность.
И.Л. Ермолов в своей работе [4] определяет комплексирование данных мобильным роботом как формирование обобщенной информации на основе более чем одного источника данных.
В системе мобильного робота процесс комплексирования данных датчиков осуществляется одним или более бортовыми вычислителями – процессорами и микроконтроллерами. Процессоры и микроконтроллеры дополнительно выполняют фильтрацию и нормализацию данных от отдельных датчиков.
Комплексирование данных увеличивает точность обработки информации бортовым вычислителем [5]. Комплексирование данных похоже на проведение эксперимента для того, чтобы установить итеративно значение некоторой величины с требуемой для эксперимента точностью. Входные данные (необработанные предварительно данные – англ. raw data) для дальнейшего комплексирования могут быть многомерными и иметь форму массивов размерностью (количеством измерений) m. Многие методы обработки данных размерностью m применимы для обработки данных, имеющих меньшую, чем m, размерность. Часто требуется предварительное преобразование информации разнотипных датчиков, так как их принципы действия основаны на разных физических эффектах.
Процесс комплексирования данных мобильной робототехнической системы предоставляет новую информацию, что не может быть реализовано отдельными датчиками мобильного робота. Данный метод делает возможным снизить количество каналов для передачи потоков данных, чем в случае использования индивидуальных каналов информации от каждого из датчиков, также позволяет снизить требования к вычислительным мощностям бортовых вычислителей высшего уровня управления роботом.
Комплексирование данных может быть выполнено наблюдателями состояния, построенных на основе цифрового фильтра Калмана. Алгоритмы, реализующие работу цифрового фильтра Калмана, получили своё название в честь Р.Э. Калмана, который является одним из основных создателей этого фильтра [6]. Первые работы Р.Э. Калмана, описывающие работу фильтра, появились в 1959–1960 гг. Данный фильтр называют фильтром Стратоновича-Калмана-Бьюси, так как первый фильтр является частным случаем нелинейного фильтра, который был создан советским математиком Р.Л. Стратоновичем [7]. Р.Э. Калман и Р.С. Бьюси в 1960–1961 гг. опубликовали работы, описывающие фильтр для непрерывного времени [8, 9]. Фильтр Калмана представляет собой фильтр, имеющий бесконечную импульсную характеристику.
Алгоритм цифрового фильтра Калмана является рекуррентным алгоритмом фильтрации информации дискретных систем, описанных в пространстве состояний, и также может быть использован в качестве наблюдателя состояния процесса или системы. Алгоритм фильтра Калмана может обработать всю информацию, которая ему была предоставлена – это могут быть все измерения с разными уровнями точности, используемые для оценки текущих значений требуемых величин, при этом учитывая: знания о динамике всей системы и её измерительных устройств, статистическое описание шумов, действующих в системе, погрешности измерений, оценку неопределенности состояния динамической системы, любые доступные данные об исходных значениях интересующих величин. Алгоритм цифрового фильтра Калмана комплексирует все доступные данные измерений, а также предшествующую (априорную) информацию о системе/процессе и работе измерительных устройств для получения оценки значений требуемых переменных так, чтобы была статистически минимизирована ошибка данной оценки.
Различные алгоритмы фильтра Калмана, в том числе алгоритм фильтра Калмана для нелинейных систем – расширенный фильтр Калмана (англ. Extended Kalman filter – EKF, далее РФК), широко применяется в навигационных системах различных наземных транспортных средств, надводных и подводных судов и кораблей, летательных и космических аппаратов, ракет, робототехнике. Так как для использования алгоритма РФК требования к вычислительной мощности бортовых вычислителей являются высокими, а также необходим большой объем оперативной памяти для вычислений, долгое время алгоритм РФК имел незначительную, специализированную область применения [10].
РФК представляет собой субоптимальный алгоритм фильтрации данных, используемый, как правило, для работы с нелинейными системами. Отличием РФК от линейного фильтра Калмана является принятие нелинейной модели оцениваемой системы или процесса. РФК использует линеаризованные нелинейные функции состояния и наблюдений с последующим выполнением алгоритма линейного фильтра Калмана. Для алгоритма РФК с целью минимизации ошибок выполнения необходимо на стадии инициализации задать корректные начальные значения векторам и матрицам.
Использование алгоритма цифрового РФК в системе управления робототехнической системой позволяет осуществить фильтрацию и/или комплексирование данных для получения контекстных сведений о текущем состоянии системы/процесса робота [11–13].
Наблюдатель (наблюдатель состояния) – вычислитель значений элементов вектора состояния системы. Наблюдатели применяются в системах автоматического управления объектами, чьи математические модели описаны в пространстве состояний.
Пространство состояний – метрическое пространство, каждый элемент которого полностью определяет состояние системы или процесса во времени [14].
Порядок наблюдателя определяется числом элементов вектора состояния управляемого объекта, восстановленных и наблюдаемых в модели наблюдателя.
Опишем модель движения мобильного гусеничного робота как некоторой управляемой системы выражениями – уравнением (1) состояния системы и уравнением (2) наблюдений:
, (1)
, (2)
где – вектор размерностью n состояния (системы);
– вектор размерностью e управления (воздействий на систему);
– вектор размерностью m выхода (системы);
– определяемая задачей комплексирования гладкая нелинейная векторная функция процесса (системы) размерностью n, имеющая частные производные первого порядка по всем переменным в окрестностях некоторой точки (x(k), u(k));
– определяемая задачей комплексирования гладкая нелинейная векторная функция наблюдений размерностью m, имеющая частные производные первого порядка по всем переменным в окрестностях некоторой точки (x(k));
k – некоторый текущий момент времени;
(k + 1) – следующий момент времени.
Предположим, что данная нелинейная модель управляемой системы известна и может быть линеаризована посредством матриц Якоби [15, 16]:
, (3)
, (4)
, (5)
где – квадратная матрица Якоби частных производных функции процесса (изменения состояния) по аргументу x (далее матрица Якоби уравнения состояния), размерность матрицы n×n;
– прямоугольная матрица Якоби частных производных функции процесса (изменения состояния) по аргументу u, размерность матрицы n×e;
– прямоугольная матрица Якоби частных производных функции наблюдений по аргументу x (далее матрица Якоби уравнения наблюдений), размерность матрицы m×n;
– элементы вектора ;
– элементы вектора ;
F1(•), …, Fn(•) – элементы векторной функции F(•);
H1(•), …, Hm(•) – элементы векторной функции H(•).
Для задачи комплексирования РФК мы не учитываем управляющие воздействия на систему, поэтому, используя матрицы (3) и (5), выражения (1) и (2) примут вид:
, (6)
. (7)
Добавив влияние шумов случайного процесса и измерения на систему, уравнения (1) и (2) запишем в виде выражений (8) и (9) соответственно:
, (8)
, (9)
где – вектор размерностью n модели шума случайного процесса, который описывает случайный характер изменения системы в момент , подчиняется закону нормального распределения, и характеризуется ковариационной матрицей Q(k) – матрицей ковариаций шума процесса размерностью n×n.
– вектор размерностью m модели шума измерения в момент , характеризующегося ковариационной матрицей R(k) – матрицей ковариаций ошибок измерения размерностью m×m.
Для функций и уравнений (8) и (9) справедливы выражения:
, . (10)
Комплексирование информации РФК выполняется заданными конкретной задачей функциями , являющихся элементами функции :
, (11)
где – элементы вектора ,
– нелинейные функции всех или части элементов .
Каждый ненулевой элемент матрицы является весовым коэффициентом (весом), определяющим вклад соответствующего этому весовому коэффициенту элемента вектора y(k) в результат комплексирования информации, вычисляемого расширенным фильтром Калмана – наблюдателем состояния.
Постановка задачи. В настоящее время сфера применения мобильной робототехники, обладающей гусеничным движителем, чрезвычайно широка и объясняется очевидными преимуществами гусеничного движителя, среди которых можно выделить: надежность и относительную простоту конструкции движителя, высокие маневренность, проходимость, грузоподъемность. Перечисленные преимущества сделали транспортные средства, построенные на основе гусеничных шасси преобладающими для использования по бездорожью.
Мобильный робот с гусеничным движителем перемещается в плоскости прямоугольной системы координат XOY (рис. 1). Цифрами на схеме навигации мобильного робота (рис. 1) обозначены: 1 – корпус робота, 2 – левая гусеница робота, 3 – правая гусеница робота. Точкой C обозначен геометрический центр робота. Величина B является расстоянием между продольными осями левой и правой гусениц мобильного робота. Местоположение робота на плоскости определяет и задает командный центр, оснащенный стационарным лидаром. Данный лидар установлен в точке O прямоугольной системы координат XOY.
Рис. 1. Схема навигации мобильного робота с гусеничным движителем
Командный центр отправляет бортовой системе управления роботом значения требуемых координат положения корпуса робота, формируя, таким образом, требуемую траекторию движения робота. В задаче не рассматривается возможность скольжения гусениц по опорной поверхности. Принимается, что робот перемещается по опорной поверхности, обладающей постоянной и равномерно зернистой шероховатостью. Командный центр определяет текущие координаты робота и задает его требуемые координаты в полярной системе координат. Требуемые координаты положения робота имеют формат:
,
где – текущий момент времени;
– расстояние OC от лидара командного центра до мобильного робота (радиальная координата);
– угол между осью OX и прямой OC (угловая координата).
Бортовая система управления роботом преобразует данные, полученные от командного центра, в требуемые прямоугольные координаты XC и YС геометрического центра C мобильного робота (рис. 1):
(12)
Скорость вращения корпуса робота относительно точки C вычисляется, следуя выражению:
, (13)
где – предыдущий момент времени;
– период времени между моментом времени (k – 1) и моментом времени k;
– угол поворота вектора линейной скорости VC центра корпуса мобильного робота относительно оси OX в текущий момент времени k;
– угол поворота вектора линейной скорости VC центра корпуса мобильного робота относительно оси OX в предыдущий момент времени.
Величина вычисляется следующим образом:
, (14)
где и – проекции вектора линейной скорости VC центра корпуса робота на оси OX и OY соответственно:
(15)
где – период времени между моментом времени и моментом времени .
Значение скорости VC центра корпуса робота может быть найдено, используя одно из выражений:
(16)
Вектор состояния x(k) определим следующим образом:
, (17)
где
, (18)
. (19)
Величины и являются угловыми скоростями вращения ведущих колес левой и правой гусениц робота соответственно. В выражении (18) величинами VL и VR обозначены линейные скорости движения звеньев левой и правой гусениц соответственно относительно корпуса робота.
Таким образом, элементы вектора оценки состояния обозначим как
. (20)
Величина представляет собой среднее арифметическое значений и , а величина является их суммой, причем в данной сумме значение участвует с противоположным знаком.
Величина R – радиус ведущих колес левой и правой гусениц робота.
Задача заключается в получении матрицы Якоби функции процесса и матрицы Якоби функции наблюдений для комплексирования величин и в элементы вектора состояния x(k).
Решение задачи. Вектор выхода системы y(k) определим следующим образом:
. (21)
Определим векторную функцию процесса F(x(k)) и векторную функцию наблюдений H(x(k)):
, (22)
. (23)
Получим матрицу Якоби функции процесса и матрицу Якоби функции наблюдений:
, (24)
. (25)
В решении рассматриваемой задачи элементы матриц Якоби и являются постоянными.
Для вычисления действительных значений координат положения робота в системе координат XOY воспользуемся следующими выражениями:
, (26)
, (27)
,……………… (28)
где и – действительные значения угла поворота вектора линейной скорости центра корпуса мобильного робота относительно оси OX в текущий момент времени k и предыдущий момент времени (k – 1) соответственно;
и – действительные значения координаты X центра корпуса робота в текущий момент времени k и предыдущий момент времени (k – 1) соответственно;
и – действительные значения координаты Y центра корпуса робота в текущий момент времени k и предыдущий момент времени (k – 1) соответственно.
Практическая реализация. Для проведения вычислительных и натурных экспериментов комплексирования бортовых данных мобильного робота был разработан стенд системы управления мобильным роботом, выполняющей комплексирование бортовых данных (рис. 2), главными составляющими частями которого являются четыре модуля системы управления и плата межсоединений (шин) модулей системы управления.
Комплексирование бортовых данных мобильного робота может выполняться каждым устройством – модулем, подключенным к шине команд и шине данных системы управления мобильным роботом [17]. Каждый такой модуль системы управления содержит несколько вычислителей (например, многоядерный процессор/микроконтроллер), обеспечивающих выполнение функций, основными из которых являются:
- опрос датчиков физических величин,
- запись, хранение, чтение и копирование данных энергозависимой и энергонезависимой памяти,
- отправка и прием команд,
- отправка и прием данных,
- комплексирование данных, хранящихся в регистрах одного модуля,
- выполнение заданных математических операций над регистрами данных одного модуля,
- интерфейс для подключения приемо-передающего устройства для передачи команд и данных между модулем системы управления и внешним устройством (например, персональным компьютером),
- настройка работы некоторого модуля системы управления каким-либо другим устройством в т.ч. внешним в соответствии с задачей управления,
- линейное масштабирование значений регистров данных в соответствии с задачей управления,
- управление исполнительными устройствами (актюаторами и приводами) по команде от другого модуля системы управления или автоматическое (по результатам комплексирования данных или математических операций над регистрами данных одного модуля).
В каждом модуле системы управления часть регистров данных, в соответствии с текущими настройками конкретного модуля, участвует в процессе комплексирования данных: резервируются регистры для входных данных (элементов вектора выхода системы) и выходных данных (результатов комплексирования – элементов вектора оценки состояния системы) процедуры комплексирования.
Рис. 2. Экспериментальный стенд системы управления мобильным роботом:
1 – модули системы управления, 2 – плата межсоединений модулей системы управления,
3 – кабели шины данных, 4 – кабели шины команд, 5 – корпус-стойка
В состав каждого из четырех модулей системы управления входят (рис. 3):
- материнская плата модуля,
- плата Texas Instruments LAUNCHXL-F28379D с двухъядерным цифровым сигнальным контроллером TMS320F28379D,
- группа разъемов для подключения до 12 силовых (драйверных) схем управления актюаторами/приводами,
- группа разъемов для подключения до 16 аналоговых датчиков физических величин с напряжениями электропитания 3,3 В и 5 В,
- микросхема энергонезависимой cегнетоэлектрической оперативной памяти (F-RAM – англ. ferroelectric random access memory) Cypress FM24CL64B-G объемом 64 кбит (8 кбайт) с напряжением электропитания 3,3 В,
- группа разъемов интерфейса I2C с напряжением электропитания 3,3 В для подключения до 2 внешних устройств,
- микросхема последовательной энергонезависимой памяти – электрически стираемое перепрограммируемое постоянное запоминающее устройство (EEPROM – англ. electrically erasable programmable read-only memory) Microchip 24LC256-I/P объемом 256 кбит (32 кбайт) с напряжением электропитания 3,3 В,
- разъем 8P8C (англ. 8 Position 8 Contact – 8-ми позиционный 8-ми контактный) для подключения модуля к шине данных системы управления,
- DIP-переключатель для задания индивидуального 4-битного адреса модуля в рамках системы управления,
- разъем 8P8C для подключения модуля к шине команд системы управления,
- микросхемы приемопередатчиков интерфейса RS-485 Maxim Integrated MAX3485EPA с напряжением электропитания 3,3 В,
- группа разъемов интерфейса SCI/UART с напряжением электропитания 3,3 В для подключения до 2 внешних устройств.
Структурная схема модуля системы управления приведена на рис. 4. Основой модуля является цифровой сигнальный контроллер Texas Instruments TMS320F28379D, установленный на отладочной плате Texas Instruments LAUNCHXL-F28379D.
Основные характеристики контроллера TMS320F28379D:
- гарвардская архитектура,
- два вычислительных ядра (процессора) и два программируемых математических сопроцессора (компания Texas Instruments для данных сопроцессоров ввела название Control Law Accelerator – CLA),
- максимальное быстродействие: 800 MIPS (англ. million instructions per second – миллион операций в секунду),
- максимальная частота работы: 200 МГц,
- поддержка MAC-операций (операций совмещённого умножения-сложения, англ. multiply-accumulate operation) над 16- и 32-разрядными числами.
Периферийными устройствами, установленными на плате модуля, являются микросхемы энергонезависимой памяти и микросхемы приемопередатчиков интерфейса RS-485, подключенные к контроллеру TMS320F28379D посредством интерфейсов I2C и SCI/UART соответственно (рис. 4).
Рис. 3. Модуль системы управления мобильным роботом
Рис. 4. Структурная схема модуля системы управления
Шина команд и шина данных модулей системы управления реализованы с использованием аппаратного последовательного интерфейса RS-485 стандарта ANSI TIA/EIA-485 (англ. ANSI – American National Standards Institute – Американский национальный институт стандартов, англ. TIA/EIA – Telecommunications Industry Association and Electronic Industries Alliance – Ассоциация телекоммуникационной отрасли и Альянс электронной промышленности). Физический уровень данного интерфейса – дифференциальный сигнал, передающийся по «витой» паре проводов: неинвертирующей линии (A) и инвертирующей линии (B), что обеспечивает высокую устойчивость передаваемого сигнала к синфазной помехе. Шина команд и шина данных кроме неинвертирующей и инвертирующей линий интерфейса RS-485 включают в себя линии электропитания модулей системы управления: 0 В («земля») и +5 В (рис. 5). Каждый модуль имеет возможность получать электропитание посредством шины команд и/или шины данных, а также имеет выводы для подключения внешнего источника электропитания напряжением 5 В. При подключении внешнего источника электропитания модуль передает электропитание на остальные модули через шину команд и/или шину данных.
Рис. 5. Назначение выводов кабелей шины команд и шины данных модулей системы управления
Для подключения персонального компьютера к отдельному модулю или группе модулей системы управления (например, с целью управления модулем или для его настройки) применяется преобразователь интерфейса USB (англ. Universal Serial Bus – универсальная последовательная шина) в интерфейс шин модулей системы управления (RS-485) (рис. 6). Данный преобразователь интерфейса подключается к одному из разъемов 8P8C платы межсоединений модулей системы управления (рис. 2) или к одному из разъемов 8P8C модуля системы управления 8, 10 (рис. 3).
Рис. 6. Преобразователь интерфейса USB в интерфейс шин модулей системы управления
c максимальным значением напряжения сигнала 3,3 В
Максимальная скорость передачи данных приемопередатчиками MAX3485EPA интерфейса RS-485 составляет 10 Мбит/сек (1,25 Мбайт/сек). Интерфейсы SCI/UART контроллера TMS320F28379D каждого модуля программно настроены на скорость передачи данных, равную 115200 бит/сек (≈0,014 Мбайт/сек) – данная скорость используется из-за её поддержки большинством современных коммуникационных устройств.
В рамках системы управления каждому модулю присваивается индивидуальный 4-битный адрес, используемый для идентификации модуля при передаче команд и данных по соответствующим информационным шинам. Данный адрес задается аппаратно с помощью DIP-переключателя 9 (рис. 3). Диапазон возможных адресов каждого модуля – от 0 до 15. Для внешних управляющих устройств (например, персонального компьютера) зарезервирован адрес 255. Максимальное число индивидуальных адресов устройств, одновременно включенных в систему управления, равно 255: адреса от 0 до 255. При назначении одинаковых адресов группе модулей возможна широковещательная передача информации от модуля или внешнего управляющего устройства, которые подключены к шине команд и/или шине данных, данной группе.
Все типы памяти – оперативной и энергонезависимой (кроме flash-памяти контроллера TMS320F28379D, предназначенной для хранения управляющей микропрограммы) модулей имеют организацию в виде регистров (ячеек). Размер каждого регистра равен 5 байт.
Модуль системы управления обладает группой разъемов 3 (рис. 3) для подключения до 12 силовых (драйверных) схем управления актюаторами/приводами. Каждый разъем включает в себя выводы:
- «GND» (сокр. англ. ground – «земля») – 0 В,
- «PWM» (англ. pulse-width modulation – широтно-импульсная модуляция) – вывод одного из каналов встроенного в контроллер TMS320F28379D 16-разрядного генератора ШИМ частотой 20 кГц,
- «DIRA» (сокр. англ. direction A – направление А) – вывод линии реверсирования движения актюатора/привода,
- «DIRB» (сокр. англ. direction B – направление B) – вывод линии реверсирования движения актюатора/привода.
На выводы «DIRA» и «DIRB» поступают сигналы с напряжением логического уровня LVTTL (англ. Low voltage TTL – транзисторно-транзисторная логика с низким напряжением) относительно вывода «GND», где: напряжение 0…0,4 В соответствует логическому «нулю», а напряжение 2,4…3,3 В соответствует логической «единице». Комбинации значений сигналов логического уровня LVTTL на выводах «DIRA» и «DIRB» и соответствующие им направления движения актюатора/привода приведены в таблице 1.
Таблица 1
Комбинации значений сигналов логического уровня на выводах «DIRA» и «DIRB»
и соответствующие им направления движения актюатора/привода
Значение сигнала логического уровня на выводе «DIRA» |
Значение сигнала логического уровня на выводе «DIRB» |
Направление движения актюатора/привода |
0 |
0 |
движение отсутствует |
1 |
0 |
прямое движение |
0 |
1 |
обратное (реверсное) движение |
Модуль системы управления оснащен группой разъемов 4 (рис. 3) для подключения до 16 аналоговых датчиков физических величин с напряжениями электропитания 3,3 В и 5 В. Каждый разъем включает в себя выводы:
- «ADC» (ADC – англ. analog-to-digital converter – аналого-цифровой преобразователь, АЦП) – вывод одного из 16 каналов 16-разрядного встроенного в контроллер TMS320F28379D аналого-цифрового преобразователя,
- «GND» (сокр. англ. ground – «земля») – 0 В,
- «3.3V» – +3,3 В для электропитания аналогового датчика относительно вывода «GND»,
- «5V» – +5 В для электропитания аналогового датчика относительно вывода «GND».
Для проведения эксперимента с применением рассматриваемой системы управления для мобильного робота с гусеничным движителем была выбрана требуемая траектория движения робота (рис. 7), насчитывающая 8000 точек, и принимались следующие параметры:
– радиус ведущих колес левой и правой гусениц робота R = 0,12 м;
– максимальная угловая скорость вращения ведущих колес гусениц робота
= 2 рад/с (19 об/мин);
– расстояние между продольными осями левой и правой гусениц мобильного робота B = 0,5 м (рис. 1).
Для РФК были заданы ковариационные матрицы Q(k) и R(k) [12], являющиеся диагональными и скалярными со значениями своих ненулевых элементов, равными 10-5.
В данной системе управления мобильным роботом РФК является наблюдателем состояния x(k) (17) робота. Текущие значения скоростей и определяются датчиками – энкодерами, установленными на валах ведущих колес гусениц робота.
Рис. 7. Требуемая траектория движения робота, сформированная отдельными точками
Результаты эксперимента представлены абсолютными значениями ошибок и , определяемых как
, (29)
, (30)
где и – требуемые координаты X и Y центра корпуса робота соответственно;
и – действительные значения координат X и Y центра корпуса робота соответственно;
p – некоторая точка требуемой/действительной траектории;
| • | – операция определения абсолютной величины (модуля) некоторого числа.
Неравномерность значений и (рис. 8) объясняется различной кривизной требуемой траектории движения мобильного робота (рис. 7).
Рис. 8. Значения и
Выводы. Широкое внедрение комплексной обработки информации в системах управления робототехническими системами позволяет интенсифицировать информационно-алгоритмическое направление обеспечения и повышения автономности мобильных роботов.
Цифровые линейный и расширенный фильтры Калмана во время своей работы делают большой объем вычислений. При работе расширенного фильтра Калмана существенно увеличиваются требования к вычислительной мощности бортового вычислительного устройства робота по сравнению с функционированием линейного фильтра Калмана. Повышение размерностей векторов и матриц приводит к росту вычислительных затрат на работу алгоритма.
Каждый отличный от нуля элемент матрицы является весовым коэффициентом (весом), определяющим вклад соответствующего этому весовому коэффициенту элемента вектора y(k) в результат комплексирования информации, вычисляемого фильтром Калмана – наблюдателем состояния . Расположение ненулевых элементов в матрице определяется задачей комплексирования информации.
Для выполнения успешного процесса комплексирования (объединения) данных требуются:
– соответствующие наблюдаемым физическим величинам данные,
– достаточные частота опроса информации от датчиков физических величин и разрешающая способность датчиков,
– высокие диапазоны измеряемых датчиками величин и надежность датчиков,
– при использовании наблюдателей, построенных на основе фильтров Калмана, наличие в сигналах датчиков шумов, вероятность которых соответствует закону нормального распределения.
1. Подураев Ю.В. Основы мехатроники: учебное пособие. Москва: МГТУ «Станкин», 2000. 105 с.
2. Юревич Е.И. Сенсорные системы в робототехнике: учебное пособие. Санкт-Петербург: Изд-во Политехн. ун-та, 2013. 100 с.
3. Бусленко Н.П. Моделирование сложных систем. Москва: Наука, 1978. 400 с.
4. Ермолов И.Л. Расширение функциональных возможностей мобильных технологических роботов путем повышения уровня их автономности с использованием иерархической комплексной обработки бортовых данных: диссертация доктора технических наук. Москва, 2012 г. 350 с.
5. White F.E. Data Fusion Lexicon. The Data Fusion Subpanel of the Joint Directors of Laboratories, Technical Panel for C3, Naval Ocean Systems Center, San Diego, 1991. 13 p.
6. Kalman R.E. A New Approach to Linear Filtering and Prediction Problems // Transactions of the ASME (American Society of Mechanical Engineers), Journal of Basic Engineering. 1960. Vol. 82 (1). Pp. 35-45. DOI:https://doi.org/10.1115/1.3662552.
7. Стратонович Р.Л. К теории оптимальной нелинейной фильтрации случайных функций // Теория вероятностей и ее применения. 1959. Т. 4, № 2. С. 239-242.
8. Kalman R.E., Busy R.S. New Results in Linear Filtering and Prediction Theory // Transactions of the ASME (American Society of Mechanical Engineers), Journal of Basic Engineering. 1961. Vol. 83 (1). Pp. 95-108. DOI:https://doi.org/10.1115/1.3658902.
9. Bar-Shalom Y., Li X.R., Kirubarajan T. Estimation with Applications to Tracking and Navigation: Theory Algorithms and Software. John Wiley & Sons, 2001. 584 p.
10. Волынский М.А., Гуров И.П., Ермолаев П.А., Скаков П.С. Анализ вычислительной сложности рекуррентных алгоритмов обработки данных в оптической когерентной томографии // Вестник информационных технологий, механики и оптики. 2014. №6. С. 35-40.
11. Безмен П.А. Алгоритм фильтра Калмана для комплексирования данных в системе управления мобильным роботом // Фундаментальные и прикладные проблемы техники и технологии, 2019. №3. С. 82-87.
12. Безмен П.А. Комплексирование данных системы управления мобильным роботом с использованием расширенного фильтра Калмана // Известия Юго-Западного государственного университета. 2019. №2. С. 53-64. DOI:https://doi.org/10.21869/2223-1560-2019-23-2-53-64.
13. Dailey D.J., Harn P., Lin P.-J. ITS Data Fusion: Final Research Report, Research Project T9903. Washington State Department of Transportation, 1996, 103 p.
14. Александров А.Г., Артемьев В.М., Афанасьев В.Н., Ашимов А.А., Белоглазов И.И., Буков В.Н., Земляков С.Н., Казакевич В.В., Красовский А.А., Медведев Г.А., Растригин Л.А., Рутковский В.Ю., Юсупов Р.М., Ядыкин И.Б., Якубович В.А. Справочник по теории автоматического управления. Москва: Наука. Гл. ред. физ.-мат. лит., 1987. 712 с.
15. Певзнер Л.Д. Теория систем управления. Москва: Издательство Московского государственного горного университета, 2002. 472 с.
16. Gyorgy K. The LQG Control Algorithms for Nonlinear Dynamic Systems // Procedia Manufacturing. 2019. Vol. 32. Pp. 553-563. DOI:https://doi.org/10.1016/j.promfg.2019.02.252.
17. Пат. 2715370, Российская Федерация, МПК G 05 В15/02. Архитектура системы управления мобильным роботом / П.А. Безмен; заявитель и патентообладатель Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ). № 2019108807; заявл. 27.03.2019; опубл. 26.02.2020, Бюл. № 6. 11 с.