САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
КАФЕДРА КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ И СИСТЕМ
Короткова Нелли Юрьевна
Магистерская диссертация
Управление движением мобильного робота с
использованием визуальной информации в
обратной связи
Направление 02.04.02
Фундаментальные информатика и информационные технологии
Магистерская программа: ВМ.5501.2014 Автоматизация научных
исследований
Научный руководитель,
доктор физ.-мат. наук,
профессор
Веремей Е. И.
Санкт-Петербург
2016
Содержание
Введение .................................................................................................... 3
Постановка задачи ..................................................................................... 5
Обзор литературы ...................................................................................... 7
Глава 1. Математические модели робота и камеры .............................. 10
1.1. Математическая модель робота .................................................. 10
1.2. Математическая модель динамики изображения ..................... 11
Глава 2. Управление с использованием визуальной информации ....... 15
2.1. Базовый закон управления ......................................................... 15
2.2. Управление с многоцелевой структурой ................................... 17
2.3. Настройка корректора ................................................................ 18
2.4. Результаты моделирования ........................................................ 20
Глава 3. Управление скоростью робота ................................................. 25
3.1. Базовый закон управления ......................................................... 25
3.2. Управление с многоцелевой структурой ................................... 27
3.3. Настройка корректора ................................................................ 29
3.4. Результаты моделирования ........................................................ 31
Глава 4. Моделирование замкнутой системы ........................................ 35
Выводы ..................................................................................................... 39
Заключение .............................................................................................. 40
Список литературы ................................................................................. 41
2
Введение
Мобильные роботы применяются сегодня в различных отраслях
промышленности для решения достаточно широкого круга практических
задач, таких как исследование местности, проведение работ в опасных для
человека условиях, выполнение спасательных операций, т.д. Более того, все
большее распространение получают сервисные роботы, используемые в
быту, например, для уборки помещений.
Однако, на данный момент степень автономности роботов указанного
класса
невысока,
большинство
из
них
являются
дистанционно
управляемыми. Создание систем, позволяющих подобным аппаратам
функционировать без непосредственного участия оператора, самостоятельно
ориентироваться в окружающей среде и эффективно взаимодействовать с ней
является
важным
направлением
научных
исследований
в
области
робототехники.
Среди всего разнообразия доступных сенсоров в последнее время
видеокамеры все чаще используются в качестве основного источника данных
об окружающем мире. В первую очередь это обусловлено их доступностью и
сравнительно невысокой стоимостью. Кроме того, современные алгоритмы
компьютерного зрения позволяют использовать камеры для получения самых
разнообразных
данных,
не
ограничиваясь
значениями
отдельных
показателей. Информация, извлекаемая из последовательностей двумерных
или трехмерных изображений, может использоваться не только для
определения положения робота в пространстве или корректировки данных
GPS, но и, например, для оценки функциональности окружающих предметов,
определения присутствия рядом человека и т. д. Метод управления
аппаратами, основанный на использовании визуальных данных, известен как
Visual Servoing.
В данной работе рассмотрена задача управления мобильным наземным
роботом с использованием визуальной обратной связи. Предложен метод
3
синтеза обратной связи, позволяющей роботу занять желаемое положение по
отношению к интересующему объекту. При этом особое внимание уделено
обеспечению
устойчивости
движения
по
отношению
к
внешним
возмущениям, воздействующим как на сам робот, так и на объект,
используемый в качестве цели.
4
Постановка задачи
Рассмотрим мобильный колесный робот унициклического типа,
оборудованный камерой, жестко закрепленной на его корпусе так, что ее
оптическая ось направлена вперед по направлению движения и параллельна
плоскости, по которой передвигается робот (Рис. 1). В качестве получаемой с
камеры визуальной информации выступают координаты некоторой точки
реального объекта в плоскости изображения
s x p
yp .
T
Будем считать, что эта точка одинаково хорошо различима с любого ракурса.
Z
X
O
Y
Рис.1. Расположение камеры на корпусе робота и ее система координат OXYZ.
Поставим задачу о синтезе управления, обеспечивающего желаемое
положение равновесия s* x p
y p
T
по вектору s:
lim st s * .
t
Иными словами, необходимо перевести робот в такое положение на
плоскости,
чтобы
отслеживаемая
точка
на
получаемом
с
камеры
изображении приняла заданное положение s* на экране. Заметим, что при
задании объекта лишь одной точкой ее положение на изображении не
определяет
однозначно
положение
робота
на
плоскости.
Напротив,
существует множество положений, находясь в которых камера робота будет
фиксировать картинку, удовлетворяющую условию s s * . Будем считать все
эти положения удовлетворительными, а задачу решенной, когда s s * .
5
В процессе синтеза необходимо обеспечить:
асимптотическую устойчивость положения равновесия;
астатизм замкнутой системы по ошибке s s * ;
фильтрацию внешних возмущений по отношению к управляющему
воздействию.
6
Обзор литературы
Существует два основных подхода к управлению с использованием
визуальной информации, основы которых описаны в статье [1].
Первый из них, Image-Based Visual Servo (IBVS), основан на
использовании
при
построении
закона
управления
непосредственно
координат точек отслеживаемого объекта на изображении. Эти значения
могут быть получены напрямую с поступающей с камеры картинки при
помощи соответствующих алгоритмов компьютерного зрения: выделения
краев, углов, особых точек, отслеживания шаблона с использованием
дескрипторов [2]. Например, в статье [3] предложен вариант использования
дескриптора SIFT (Scale-Invariant Feature Transform) в рамках данной схемы.
Характерной особенностью второго подхода, Position-Based Visual
Servo (PBVS), является наличие дополнительного этапа оценки положения
камеры и объекта в пространстве и использование этих данных для
построения закона управления. Как правило, при этом требуется, чтобы были
известны внутренние параметры камеры, а также дополнительные сведения о
конфигурации рассматриваемого объекта, например, его 3D-модель. Данный
подход во многом полагается на алгоритмы компьютерного зрения,
относящиеся к разделу Structure from motion, позволяющие оценивать
геометрию
наблюдаемой
сцены
с
использованием
нескольких
ее
изображений.
В
статье
[4]
рассмотрен
ряд
методов
синтеза
управления,
объединяющих преимущества обоих подходов. В частности, описан
гибридный подход, предполагающий использование координат точек на
изображении для получения линейных составляющих скорости камеры и
оценку поворота по отношению к желаемому положению для задания
угловых составляющих. Также упоминается подход, основанный на
декомпозиции движения камеры по отдельным степеням свободы. При этом
вычисляемые на основе визуальной информации значения выбираются так,
7
чтобы изменение каждого из них соответствовало определенной степени
свободы камеры. Еще одной модификацией IBVS является использование
цилиндрических координат точек на изображении взамен Декартовых.
В работе [1] также рассмотрены основные вопросы устойчивости обоих
подходов. Кроме того, упомянута проблема сходимости функции ошибки
e s s * к локальному минимуму, не равному нулю. Более подробно этот
вопрос
рассмотрен
в
статье
[5].
Там
же
рассмотрена
проблема
вырожденности матрицы взаимодействия и предложено ее решение путем
использования при построении управления не просто координат точек на
изображении, а параметров прямых, соединяющих эти точки.
Упомянутые методы синтеза управления с использованием визуальной
информации требуют вычисления матрицы взаимодействия, для чего
необходимо, чтобы глубина наблюдаемой сцены была известна в каждый
момент времени. Однако, возможна оценка матрицы взаимодействия
непосредственно во время движения. Подобный регулятор предложен,
например, в работе [6]. Указанный метод не позволяет оценить истинное
значение матрицы взаимодействия, но обеспечивает сходимость координат
точек изображения к желаемым значениям, не требуя при этом калибровки
камеры, а также какой-либо другой дополнительной информации о
параметрах системы и геометрии наблюдаемой сцены.
Большинство работ рассматривает задачу использования визуальных
данных для управления роботами-манипуляторами, рабочий орган которых
имеет шесть степеней свободы. Для передвигающихся по плоскости
мобильных роботов количество степеней свободы ограничивается тремя. Их
колесные
варианты,
омниколесами,
имеют
за
исключением
только
два
аппаратов,
управляющих
оборудованных
воздействия
и,
соответственно, являются неполноприводными. Это означает, что указанные
подходы должны быть тем или иным образом адаптированы для управления
такими роботами.
Многие методы основаны на эпиполярной геометрии. Например, в
8
работе [7] во время движения робота текущее изображение соотносится с
желаемым и на обоих отслеживаются координаты эпиполярных точек вместо
точек самого объекта. При задании траекторий движения этих точек
рассматриваемая задача сводится к проблеме построения управления для
реализации этих траекторий.
Другое решение подобной задачи для колесного робота представлено в
работе [8]. Здесь предполагается, что ориентиром для робота служат две
точки, расположенные на одинаковой высоте на известном расстоянии друг
от друга. В качестве получаемой с изображения информации выступают
параметры окружности, проходящей через фактическую и желаемую
центральные точки между отслеживаемыми ориентирами. При этом
движение происходит по алгоритму, предусматривающему переключение на
промежуточную
цель
при
приближении
взаимодействия,
связывающей
скорости
к
вырожденной
изменения
матрицы
рассматриваемых
параметров и скорости робота.
В
статье
[9]
представлено
решение
задачи,
аналогичной
рассматриваемой в данной работе, для морских судов. В отличие от
большинства работ, посвященных управлению с визуальной обратной
связью,
здесь
предусмотрена
возможность
присутствия
внешних
возмущающих воздействий. Главной особенностью является использование
многоцелевой структуры управления. Помимо базового закона она включает
асимптотический наблюдатель и динамический корректор, который является
настраиваемым элементом системы. Корректор может быть включен или
выключен во время движения с целью обеспечения желаемых свойств
замкнутой системы. В качестве базового закона управления используется
классический подход IBVS для трех степеней свободы с использованием
двух точек в плоскости изображения.
9
Глава 1. Математические модели робота и камеры
Прежде чем перейти непосредственно к решению поставленной задачи,
введем в рассмотрение математические модели динамики робота и
изображения, которые будем использовать в дальнейшем.
1.1. Математическая модель робота
Динамика
рассматриваемого
мобильного
колесного
робота
описывается следующими уравнениями [10]:
M d r t ,
(1)
q Rq
Его положение в фиксированной земной системе координат задается
вектором q x
T
y , где (x, y) – координаты робота в горизонтальной
T
плоскости, а θ – угол поворота вокруг вертикальной оси. v – вектор
скоростей робота, компоненты которого определяют линейную и угловую
скорости соответственно. Матрица инерции M задается как
m 0
M
,
0 I
где m – масса робота, а I – момент инерции вокруг вертикальной оси.
Матрица R определяет отображение скоростей ν робота, представленных в
связанной с ним системе координат, в фиксированную земную систему
координат и задается как
cos 0
Rq sin 0 .
0
1
Вектор τ будем трактовать как управляющее воздействие, а d r t – внешнее
возмущающее воздействие.
Заметим,
что
мобильный
колесный
робот
относится
к
неполноприводным объектам управления. Он имеет три степени свободы по
10
положению в пространстве, но лишь два управляющих воздействия. Это
накладывает определенные ограничения на его возможные движения. В
частности, с очевидностью невозможно прямое движение вбок, т. е. в
направлении, перпендикулярном ориентации робота в данный момент. Более
того, рассматриваемая модель не допускает смещения в поперечном
направлении, в том числе и вследствие внешнего воздействия. Здесь
переменная d r t так же, как и вектор управления τ, состоит из двух
компонентов, соответствующих линейной и угловой составляющим. Поэтому
в дальнейшем, при рассмотрении математической модели динамики
изображения, будем считать, что камера также имеет только две скорости.
Доступными
для
непосредственного
измерения
будем
считать
фактические линейную и угловую скорости, т. е. вектор ν.
1.2. Математическая модель динамики изображения
В общем случае, согласно законам механики, движение точки
трехмерного пространства относительно камеры описывается следующими
уравнениями:
X v x y Z zY ,
Y v y z X x Z ,
(3)
Z v z xY y X ,
где
X
vx
vy
Y
Z
v z и x
– координаты точки в системе координат камеры,
y
z – соответственно линейные и угловые скорости
камеры.
Координаты рассматриваемой точки в нормированной плоскости
изображения определяются соотношениями
xp X / Z
.
s
y
Y
/
Z
p
(4)
Подставив их в (3), получим модель динамики изображения
11
~
s L s, Z ~
c ,
где ~
c v x
vy
vz
x
y
z – скорости камеры. Здесь матрица
T
1
0
~
L s, Z Z
0 1
Z
xp
Z
yp
Z
xp yp
1 x 2p
1 y 2p
xp yp
yp
xp
называется матрицей взаимодействия.
Z
v
X
O
ω
Y
Рис.2. Линейная (v) и угловая (ω) скорости робота в системе координат камеры.
Будем считать, что центры систем координат, связанных с роботом и
камерой совпадают. Тогда, поскольку робот передвигается в плоскости и
имеет только две скорости, большинство компонентов вектора ~
в данном
c
случае равны нулю. На рис. 2 изображены линейная и угловая скорости
робота, представленные в системе координат камеры. Таким образом,
получим уравнения движения точки в системе координат камеры
X y Z ,
Y 0 ,
(5)
Z v z y X
и соответствующую модель динамики этой точки в плоскости изображения
s Ls, Z c .
(6)
Здесь матрица взаимодействия задается как
12
xp
L s , Z Z
yp
Z
1 x 2p
.
xp yp
c определяет вектор скоростей камеры, который соотносится со скоростями
робота следующим образом:
vz v v
.
c c
y
c
(7)
Переменные vc и c здесь задают линейную и угловую скорости камеры
соответственно, этими обозначениями будем пользоваться в дальнейшем.
Для вычисления матрицы взаимодействия в произвольный момент
времени необходимо, чтобы текущая координата Z точки, т. е. ее глубина,
была известна. На практике она может быть получена рядом способов, в
частности:
непосредственно измерена при помощи дальномера;
оценена посредством стереозрения с использованием двух камер;
оценена с использованием двух изображений, полученных в ходе
движения,
если
помимо
наблюдаемой
точки
сцена
содержит
достаточно других особенностей, которые могут быть сопоставлены на
двух кадрах.
Далее будем считать глубину наблюдаемой точки известной, поэтому
систему (6) будем рассматривать совместно с третьим из уравнений (5).
Итак, с учетом внешнего возмущающего воздействия d c t получим
математическую модель динамики изображения
s L s, Z vc d c t ,
(8)
Z v z y X .
Заметим также, что на практике в качестве получаемой с камеры
информации мы будем иметь не координаты точки в нормированной
плоскости
изображения,
а
ее
координаты
на
самом
изображении,
выраженные в пикселях. Однако, для откалиброванной камеры, для которой
13
известна матрица ее внутренних параметров K, эти значения можно найти,
используя (4) и соотношение
X
xim
1
Y K yim ,
Z
1
где xim , yim – измеряемые координаты точки в пикселях.
14
Глава 2. Управление с использованием визуальной
информации
Решение поставленной задачи разобьем на два этапа. На первом
рассмотрим модель динамики изображения (8), считая входным сигналом
скорость камеры vc . Далее, синтезировав обратную связь для этой системы и
таким образом получив желаемую скорость робота * t , на втором этапе
обеспечим реализацию этой скорости для робота.
2.1. Базовый закон управления
Как было указано выше, динамика точки изображения задается
системой дифференциальных уравнений
s Ls, Z vc d c t .
(9)
Введем в рассмотрение вектор ошибки текущего изображения et st s * .
При движении камеры его изменение происходит согласно уравнениям
аналогичным (9):
e Ls, Z vc d c t .
Тогда
экспоненциальное
убывание
ошибки
(10)
в
случае
отсутствия
возмущающего воздействия, d c t 0 , будет обеспечиваться управлением
vc L1 s, Z Ke ,
(11)
где K – положительно определенная матрица размера 2 2 . Очевидно, что
построение управления вида (11) возможно лишь в случае обратимости
матрицы взаимодействия. Учитывая, что det L y p Z , данная матрица будет
являться вырожденной при y p 0 . Этому условию соответствуют точки,
находящиеся на той же высоте над плоскостью движения робота, что и
камера. Кроме того, при отсутствии возмущений, координата Y таких точек в
системе координат камеры будет всегда равна нулю, а значит, их координата
15
y p в плоскости изображения не несет никакой существенной информации о
движении робота. Таким образом, обеспечить существование обратной
матрицы можно выбором отслеживаемой точки, поэтому в дальнейшем
будем предполагать, что матрица взаимодействия невырождена.
На рис. 3а приведены графики изменения координаты наблюдаемой
точки при задании управления в виде (10), где
1.5
0.3 0
s*
, K
,
1
0
0
.
3
а на рис. 3б показаны сами управляющие сигналы.
а)
б)
Рис.3. а) Координаты наблюдаемой точки (s); б) управляющие сигналы (νc) при отсутствии
внешнего воздействия.
а)
б)
Рис.4. а) Координаты наблюдаемой точки (s); б) управляющие сигналы (νc) при
гармоническом внешнем воздействии.
На рис. 4 приведены аналогичные графики для тех же s* и K, но при
наличии внешнего воздействия. Такое возмущение может появиться,
например, вследствие колебаний наблюдаемой точки или погрешности ее
распознавания. Также к возмущениям подобного рода можно отнести
16
смещения и вибрации самой камеры, например при передвижении по
неровной поверхности, не связанные с изменением координаты робота. В
данном
примере
в
качестве
внешнего
воздействия
использован
гармонический сигнал частоты 0 0.8 рад/с.
По графикам видно, что после завершения переходного процесса точка
на экране продолжает совершать периодические колебания. Кроме того, сам
робот также не прекращает движение, стремясь удержать ее в желаемом
положении. Предпочтительнее была бы остановка робота с сохранением
точки на экране в положении s* в среднем, поскольку данное ее движение
уже не связано со смещением робота. В противном случае возникает вопрос
о том, в какой момент стоит отключить моторы и прекратить движение. В
этот момент, с одной стороны, необходимо, чтобы положение точки на
экране было достаточно близко к желаемому. С другой стороны, значения
управляющих сигналов должны быть достаточно близки к нулю, чтобы
робот, двигаясь по инерции, не отошел от желаемого положения. Поэтому
необходимо построение более сложной обратной связи, которая обеспечит
фильтрацию подобного рода возмущений.
2.2. Управление с многоцелевой структурой
Для решения поставленной задачи воспользуемся законом управления
с многоцелевой структурой, предложенным в работе [9].
Введем
обозначение
v Ls, Z vc ,
тогда
уравнение
динамики
изображения (9) примет вид
s v d c t .
(9')
Причем скорость камеры однозначно определяется этим значением:
vc L1 s, Z v .
Базовый закон управления (11) в этом случае задается соотношением
v Ke .
Закон
управления
с
многоцелевой
(11')
структурой
определяется
17
уравнениями
z v H ,
p p ,
(12)
p ,
v Kz .
Здесь первое уравнение задает асимптотический наблюдатель с вектором
состояния z E 2 , e z – ошибка оценивания. Второе и третье уравнения
определяют динамический корректор, который обеспечивает выполнение
требований
астатизма
и
фильтрации.
Последнее
уравнение
задает
управляющий сигнал, являющийся выходом регулятора.
В статье [9] доказано, что замкнутая система обладает свойством
устойчивости при условии гурвицевости характеристических полиномов
матриц –H, –K и α.
2.3. Настройка корректора
Как было указано выше,
функция
корректора
заключается
в
обеспечении астатизма замкнутой системы, а также фильтрующих свойств по
выходу v.
Доказано, что при постоянном возмущении
d c t d c 0
нулевое
положение равновесия по вектору ошибки e обеспечивается выполнением
условия
F 0 H K ,
(13)
где F s – передаточная матрица корректора.
Фильтрующие свойства корректора будем обеспечивать по отношению
к возмущению N частот n , n 1, N . Для этого необходимо, чтобы значение
частотной характеристики замкнутой системы для каждой из этих частот
было нулевым:
Fdv jn 0 ,
18
где Fdv s – передаточная матрица от входа d c , к выходу v. Это условие
выполняется, если
P1 s P2 s F s 0 ,
где
1
1
P1 s K Es K H , P2 s K Es K E .
Таким образом, получим условие фильтрации
F jn P21 jn P1 j n R n I n j , n 1, N .
(14)
Итак, для выполнения всех требований, предъявляемых к замкнутой
системе, необходимо соблюдение условий (13) и (14), а также гурвицевость
матриц –H, –K и α. Далее определим процедуру настройки корректора, т. е.
нахождения конкретных значений матриц α, β, γ и μ, которые обеспечат
выполнение указанных условий.
Сначала
зададим
размерность
вектора
состояния
фильтра
в
зависимости от количества частот, на которые производится настройка:
dim p 4 N .
Зададим матрицы корректора в виде
1
0
0
, 1
, 1
2 4 N 4 N
2 4 N 2
0
0
, 1 .
2 22 N
2 22
При этом система
p i i pi i ,
(15)
i i pi i , i 1,2 .
будет иметь смысл уравнений корректора для i-го канала управления.
Матрицы i определим в нормальной форме Фробениуса:
0
0
i
0
ai
N 1
1
0
0
1
0
a iN 2
0
a 1i
0
0
0 ,
1
a i0
19
где ani – вещественные положительные числа, которые по своей сути
являются настраиваемыми параметрами корректора. Также зададим матрицы
i :
i 0 0 1 .
Значения компонент матриц β и μ могут быть найдены, исходя из
условий (13) и (14). Выразим передаточную матрицу системы через α, β, γ и
μ:
1
Fi s i Es i i i .
Тогда условия астатизма и фильтрации можно записать следующей форме:
1
Fi 0 i i i i K i H i ,
1
Fi j n i Ejn i i i
Rin
(16)
I in
j,
где K i , H i , Rin и I in – i-тые строки соответствующих матриц. Перепишем
систему (16) в матричном виде, а также разобьем второе ее уравнение на
вещественную и мнимую части:
i i 1 1
K i H i
Re Qin 1 i
Rin
,
i
n
n
Im
Q
0
I
i
i
(17)
1
где Qin i Ejn i . Решив матричное уравнение (17) для всех i, т. е. для
обоих каналов управления, получим искомые значения матриц β и μ и таким
образом завершим настройку корректора.
2.4. Результаты моделирования
Продемонстрируем
работу
регулятора,
используя
для
этого
компьютерную модель динамики изображения в интегрированной среде
MATLAB-Simulink. Как и в приведенных выше примерах примем желаемые
координаты точки на экране и матрицу базового закона управления равными
1.5
0.3 0
s*
, K
.
1
0
0
.
3
20
Для начала продемонстрируем, как предлагаемый регулятор влияет на
динамику системы в отсутствие возмущений. Произведем настройку
корректора на одну частоту 0 0.8 рад/с. Матрицу асимптотического
наблюдателя примем равной
0.3 0
H
.
0 0.3
Значения ani для обоих каналов управления выберем такими, чтобы корни
характеристических
полиномов
матриц
i
были
равны
1 0.16 ,
2 0.164 .
а)
б)
Рис.5. а) Координаты наблюдаемой точки (s); б) управляющие сигналы (νc) при отсутствии
внешнего возмущения и использовании управления с многоцелевой структурой.
Результаты моделирования представлены в виде графиков на рис. 5.
Заметим, что применение корректора привело к увеличению длительности
переходного процесса, а также появлению перерегулирования. Чтобы этого
избежать, можно предусмотреть режим работы системы, при котором
динамический корректор отключен во время переходного процесса, и
управление
строится
только
на
основе
базового
закона
(11')
и
асимптотического наблюдателя v Kz . По истечении некоторого времени
после начала движения, когда точка на экране начинает совершать
периодические колебания около положения равновесия, корректор может
быть включен с целью остановки робота. Тогда управление будет строиться в
полной форме v Kz .
Далее рассмотрим движение системы при тех же параметрах
21
T
корректора и при постоянном возмущении d c 0 0.05 0.03 . График
координат
наблюдаемой
точки,
полученный
при
выключенном
динамическом корректоре, изображен на рис. 6а. В результате воздействия на
систему постоянного возмущения возникает постоянная ошибка по вектору
координат точки. График на рис. 6б иллюстрирует движение точки на экране
при включении корректора на сотой секунде после начала движения. В этот
момент времени возникает новый переходный процесс, в результате которого
значения координат точки сходятся к желаемым.
а)
б)
Рис.6. Координаты наблюдаемой точки при постоянном возмущении:
а) без использования динамического корректора;
б) при включении корректора с момента времени t=80 c.
Заметим, что статическая ошибка в данном случае, вероятно, будет
связана с перемещением отслеживаемой цели. Это означает, что оценка
глубины сцены посредством асимптотического наблюдателя на основе
уравнений (3) будет некорректна. Поэтому в случаях, когда предполагается
появление такой ошибки, предпочтительнее оценивать расстояние до цели
другими средствами или использовать при построении наблюдателя
дополнительную информацию о движении отслеживаемого объекта.
Рассмотрим динамику системы при гармоническом возмущении
частоты 0 0.8 рад/с, на которую производилась настройка корректора.
Случай построения управления в виде базового закона был рассмотрен ранее
в параграфе 2.1. Зададим время включения корректора t=80 c. По графику на
рис. 7а видно, что точка на экране все так же совершает периодические
22
колебания. Однако, в отличие от управляющего сигнала в виде одного только
базового закона управления (Рис. 4б), в данном случае после включения
корректора колебания скоростей прекращаются. Это означает, что по
завершении переходного процесса робот может быть полностью остановлен.
а)
б)
Рис.7. а) Координаты наблюдаемой точки (s); б) управляющие сигналы (νc) при
гармоническом возмущении и использовании управления с многоцелевой структурой.
В действительности возмущающие воздействия редко представимы
гармоническими функциями. Поэтому далее рассмотрим пример работы
системы при наличии более сложного возмущения, спектр которого
представлен на рис. 8. Пусть это возмущение имеет ту же основную частоту
0 0.8 рад/с, но при этом включает также составляющие других частот.
Рис.8. Спектр составного сигнала внешнего возмущения.
На рис. 9 представлены графики фактических скоростей робота и
управляющих сигналов. Динамический корректор так же, как и ранее, был
включен в момент времени t=80 c, однако, даже после этого наблюдаются
заметные колебания управляющих сигналов.
23
а)
б)
Рис.9. а) Координаты наблюдаемой точки (s); б) управляющие сигналы (νc) при составном
возмущении и использовании управления с настройкой на одну частоту ω0=0.8 рад/с.
Произведем настройку фильтра на три частоты
1 0.725 , 2 0.8 , 3 0.875 ,
задав корни характеристических полиномов матриц i корректора для обоих
каналов управления равными
1 0.16 , 2 0.164 , 3 0.168 , 4 0.172 , 5 0.176 , 6 0.18 .
Матрицы H и K оставим без изменений.
а)
б)
Рис.10. а) Координаты наблюдаемой точки (s); б) управляющие сигналы (νc) при
составном возмущении и использовании управления с настройкой на три частоты.
На рис. 10 представлены в виде графиков результаты работы системы с
такими настройками при составном возмущающем воздействии. Здесь в
момент включения фильтра возникает переходный процесс, по завершении
которого амплитуды управляющих сигналов сокращаются почти до нуля.
24
Глава 3. Управление скоростью робота
Выходом описанного в предыдущей главе регулятора изображения
являются желаемые линейная и угловая скорости камеры, выраженные в ее
собственной системе координат
T
c t vc t c t .
Учитывая соотношение (7) определим желаемую скорость робота как
T
* t v * t * t T vc t c t .
Рассмотрим задачу о построении регулятора, обеспечивающего
реализацию этих скоростей роботом:
lim t * t .
t
3.1. Базовый закон управления
При условии, что вектор ν, т. е. фактические скорости робота, доступен
к измерению, для решения поставленной подзадачи достаточно рассмотреть
только первое из уравнений (1):
M d r t .
(18)
Данное уравнение описывает динамику скорости робота в зависимости от
входа τ и внешнего возмущающего воздействия d r t . При этом второе
уравнение
будет
использоваться
исключительно
для
восстановления
траектории движения робота при моделировании.
Введем
в
рассмотрение
вектор
ошибки
текущей
скорости
ev t t * t . Тогда, используя (18), получим дифференциальное
уравнение, задающее динамику ошибки:
Mev M * d r t .
(19)
Введем обозначение M * и перепишем уравнение (19) в виде
Mev d r t .
(19')
25
Тогда экспоненциальное убывание ошибки при условии d r t 0 , будет
обеспечиваться управлением
K v ev ,
(20)
где K v – положительно определенная матрица размера 2 2 .
а)
б)
Рис.11. а) Скорости робота (ν); б) управляющие сигналы (τ) при отсутствии внешнего
воздействия.
Рассмотрим пример движения робота при задании закона управления в
виде (20). На рис. 11 приведены полученные скорости робота (а) и
соответствующие управляющие сигналы (б). В данном примере желаемые
скорости робота выбраны постоянными, а также задано значение матрицы
закона управления:
2
1 0
* t
, K v
.
10 180
0 0.1
а)
б)
Рис.12. а) Скорости робота (ν); б) управляющие сигналы (τ) при гармоническом внешнем
воздействии.
Далее смоделируем движение робота для тех же * и K v , но при
26
наличии гармонического возмущающего воздействия частоты 0 0.8 рад/с.
Такое возмущение может возникнуть, например, при движении по неровной
поверхности. В данном случае имеет значение то, что внешнее воздействие
влечет за собой не только смещение точки на экране, но и изменение
измеряемой скорости робота. Это демонстрирует рис. 12а: скорости на
графике
не
сходятся
к
постоянным
значениям
*,
а
совершают
гармонические колебания. То же самое наблюдается и на графике
управляющих сигналов (Рис. 12б).
а)
б)
Рис.13. а) Скорости робота (ν); б) управляющие сигналы (τ)
при желаемых скоростях ν*, заданных в виде гармонических функций,
и при отсутствии внешних возмущений.
Продемонстрируем также работу базового закона управления в том
случае, когда желаемые скорости не являются постоянными. В качестве
примера используем гармонические функции. По графику на рис. 13а видно,
что и в этом случае скорости робота сходятся к желаемым, причем
переходный процесс занимает около десяти секунд.
3.2. Управление с многоцелевой структурой
Для построения регулятора, обеспечивающего фильтрацию внешних
возмущающих воздействий, так же, как и в случае регулятора изображения,
воспользуемся управлением с многоцелевой структурой.
Асимптотический наблюдатель зададим в виде
Mzv H v v ,
(21)
27
где
z v E 2 – вектор состояния наблюдателя,
v ev zv
– ошибка
оценивания. Динамический корректор будет определяться уравнениями
p v v pv v v ,
(22)
v v pv v v .
Тогда с учетом динамической коррекции получим следующий закон
управления:
K v zv v .
(23)
Таким образом, уравнения (21), (22), (23) составляют регулятор скорости
робота,
настраиваемыми
параметрами
которого
являются
матрица
асимптотического наблюдателя H v , матрица базового закона управления K v ,
а также матрицы v , v , v , v корректора.
Определим условия, при которых обеспечивается
устойчивость
замкнутой системы. Рассмотрим первое из уравнений (22) совместно с
дифференциальным уравнением для ошибки оценивания v , которое можно
получить вычитанием уравнения (21) из (19'):
p v v pv v v ,
M v H v v d r t .
(24)
Данная система имеет каскадную структуру, т. е. может быть представлена в
виде
x1 f1 t , x1 g t , x1 , x2 x2 ,
x 2 f 2 t , x2 .
(25)
Согласно теореме об устойчивости каскадных систем, доказанной в работе
[11], система (24) будет являться асимптотически устойчивой, если:
1) система p v v p v асимптотически устойчива, что обеспечивается
гурвицевостью матрицы v ;
2) второе из уравнений (24) асимптотически устойчиво, чего можно
добиться, выбрав матрицу H v положительно определенной.
28
Далее рассмотрим систему (24) совместно с уравнением наблюдателя (21),
которое перепишем в развернутом виде, подставив на место и v
соответствующие выражения:
Mzv K v z v v pv v H v v .
(26)
Полученная система также имеет каскадную структуру, где (26)
соответствует первому из уравнений (25), а (24) – второму. Поскольку при
соблюдении указанных выше условий система (24) является асимптотически
устойчивой, то вся система будет асимптотически устойчива, если
дополнительно обеспечить асимптотическую устойчивость Mzv K v z v [11],
для чего матрицу K v необходимо выбрать положительно определенной.
3.3. Настройка корректора
Так
же,
как
и
в
предыдущей
главе,
осуществим
настройку
динамического корректора на фильтрацию постоянного возмущения, а также
периодических возмущений заданных частот.
Рассмотрим замкнутую систему
M v H v v d r t ,
Mzv H v v ,
(27)
K v zv Fv s v ,
где Fv s – передаточная матрица динамического корректора (22).
Рассмотрим
постоянное
возмущение
d r t d r 0 .
Тогда
имеем
следующее положение равновесия в системе (27):
0 H v v0 d r 0 ,
(28)
0 H v0 v0 ,
(29)
K v z v 0 Fv 0 v 0 .
(30)
В силу невырожденности матрицы H v , из (28) следует, что каждому
постоянному
возмущению
dr0
соответствует
постоянная
ошибка
29
v 0 H v1d r 0 . Тогда, подставив (30) в (29) и учитывая, что z v 0 ev 0 v 0 ,
получим следующее выражение для статической ошибки:
ev 0 K v1 K v H v Fv 0 v 0 .
Потребуем, чтобы значение ev 0 было нулевым для любого постоянного
значения v 0 , а следовательно, и для любого постоянного возмущения d r 0 .
Таким образом, получим условие астатизма замкнутой системы (27) по
вектору ev t по отношению ко входу d r t :
Fv 0 K v H v .
(31)
Далее выведем условия, обеспечивающие фильтрующие свойства
корректора по отношению к возмущению N частот n , n 1, N . Для этого
найдем передаточную функцию от Fd от входа d r t к выходу t и
потребуем
Fd jn 0 , n 1, N .
(32)
Уравнение наблюдателя можно записать в tf-форме
1
1
z v Ms K v H v v Ms K v Fv s v .
Тогда получим выражение закона управления
P1v s P2v s Fv s H s d r ,
где H s – передаточная матрица от d r к v ,
1
1
P1v s K v Ms K v H v , P2v s K v Ms K v E .
Таким образом, получим условие фильтрации
Fv jn P2v1 jn P1v jn Rvn I vn j , n 1, N .
(33)
Итак, для выполнения обеспечения астатизма и фильтрации замкнутой
системы, ее параметры должны удовлетворять условиям (31) и (33).
Устойчивость системы гарантируется выбором матрицы v гурвицевой, а
матриц H v и K v положительно определенными. При этом конкретные
значения матриц фильтра могут быть найдены способом, аналогичным
30
описанному в параграфе 2.3. посредством решения матричного уравнения
(17).
3.4. Результаты моделирования
Исследуем работу предлагаемого регулятора скорости робота с
использованием его компьютерной модели. Желаемые скорости зададим
постоянными, а также выберем значение матрицы базового закона
управления:
2
1 0
* t
, K v
.
10
180
0
0
.
1
Произведем
настройку
динамического
корректора
на
частоту
0 0.8 рад/с, задав конкретные значения остальных параметров. Возьмем
матрицу асимптотического наблюдателя равной
1 0
H v
.
0
0
.
1
Также зададим полюса фильтра равными 1 0.16 , 2 0.162 и получим
i
соответствующие значения avn
матриц vi .
а)
б)
Рис.14. а) Скорости робота (ν); б) управляющие сигналы (τ) при отсутствии внешнего
возмущения и использовании управления с многоцелевой структурой.
Рассмотрим динамику системы при использовании многоцелевого
управления и при отсутствии возмущений. По графикам на рис. 14 видно, что
использование предложенного регулятора ведет к увеличению длительности
переходного процесса и появлению перерегулирования. Однако, в отличие от
31
случая управления точкой на изображении, будем рассматривать режим
работы регулятора, при котором корректор включен с начала движения. Это
связано с тем, что возмущающие воздействия, влияющие на скорость робота,
скорее всего, будут связаны именно с его движением. Например, неровности
поверхности дороги могут вызвать смещение робота на плоскости, только
пока он движется, и не влияют на его скорость, когда он находится в
состоянии покоя.
а)
б)
Рис.15. а) Скорости робота (ν); б) управляющие сигналы в виде базового закона (τ)
при постоянном возмущении.
Рассмотрим, как будут изменяться скорости робота при наличии
T
постоянного возмущения d r 0 1 0.005 . Таким воздействием может быть,
например, ветер, вызывающий отклонение робота от выбранного курса.
Полученные результаты представлены в виде графиков на рис. 15. Можно
сделать вывод о том, что постоянное возмущение влечет за собой так же
постоянное отклонение фактических скоростей робота от желаемых.
а)
б)
Рис.16. а) Скорости робота (ν); б) управляющие сигналы (τ) при постоянном возмущении
и использовании управления с многоцелевой структурой.
32
Использование управления с многоцелевой структурой позволяет
устранить постоянную ошибку. Это демонстрируют графики на рис. 16
полученные для того же возмущения и указанных выше параметрах
регулятора.
Далее рассмотрим случай гармонического возмущения. В параграфе
3.1 приведен пример движения робота при наличии такого воздействия и
построении управления в виде базового закона (Рис. 12). В этом случае
указанное возмущение вызывает не только колебание фактических скоростей
робота около желаемых, но и гармоническое изменение управляющих
сигналов. Обратим внимание на то, что рассматриваемые воздействия, в
отличие от постоянных, сохраняет фактические скорости в среднем равными
желаемым. В этом случае предпочтительнее было бы игнорировать такие
возмущения с целью экономии ресурсов робота, что обеспечивается
предложенным регулятором (Рис. 17). Заметим, что при этом возрастает
амплитуда колебаний фактических скоростей по сравнению со случаем
использования базового управления, однако управляющие сигналы при этом
практически идентичны тем, что получены при отсутствии возмущения.
а)
б)
Рис.17. а) Скорости робота (ν); б) управляющие сигналы (τ) при гармоническом
возмущении и использовании управления с многоцелевой структурой.
Рассмотрим динамику системы под воздействием более сложного
возмущения, того же, что использовалось в соответствующем примере в
параграфе
2.4.
Графики,
полученные
с
использованием
корректора,
настроенного на одну частоту 0 0.8 рад/с приведены на рис. 18.
Смоделируем также динамику системы при том же возмущении, тех же
33
значениях матриц K v и H v , настроив корректор на три частоты
1 0.725 , 2 0.8 , 3 0.875 ,
с полюсами, равными
1 0.16 , 2 0.162 , 3 0.164 , 4 0.166 , 5 0.168 , 6 0.17 .
а)
б)
Рис.18. а) Скорости робота (ν); б) управляющие сигналы (τ) при составном возмущении и
использовании управления с настройкой на одну частоту ω0=0.455 рад/с.
а)
б)
Рис.19. а) Скорости робота (ν); б) управляющие сигналы (τ) при составном возмущении и
использовании управления с настройкой на три частоты.
Сравнив полученные результаты, можно сделать вывод, что настройка
корректора на три частоты позволяет более эффективно фильтровать
сложные возмущающие воздействия (Рис. 19б).
34
Глава 4. Моделирование замкнутой системы
В заключение, рассмотрим пример совместной работы регуляторов
изображения и скорости робота. С этой целью был построен имитационный
моделирующий
комплекс
в
среде
MATLAB-Simulink.
Общая
схема
компьютерной модели системы представлена на рис. 20.
Рис.20. Общая схема Simulink-модели замкнутой системы.
Предположим,
что
робот
начинает
движение
из
положения
T
q0 0 0 0 в фиксированной земной системе координат. Отслеживаемая
точка в системе координат, связанной с камерой, в начальный момент
T
времени имеет координаты p0 1 0.5 5 , что соответствует точке
T
s0 0.2 0.1
в
нормированной
плоскости
изображения.
В
фиксированной земной координат эта точка имеет координаты x 5 , y 1
по проекции на плоскость передвижения робота и находится на 0.5 фокусных
расстояний выше камеры. Желаемое положение точки выберем равным
T
s* 0 1 .
Зададим параметры регулятора изображения:
35
0.3 0
0.3 0
K
, H
;
0 0.3
0 0.3
частота настройки фильтра 0 0.8 рад/с;
собственные числа матриц i 1 0.16 , 2 0.164 для обоих
каналов управления;
начало работы динамического корректора с момента времени t 100 с;
возмущение в виде гармонического сигнала частоты 0 .
а)
б)
в)
г)
д)
Рис.21. Результаты совместной работы обоих регуляторов:
а) Координаты наблюдаемой точки (s);
б) желаемые скорости робота (ν*); в) фактические скорости робота (ν*);
г), д) линейная и угловая составляющие управляющего сигнала (τ).
36
Для управления скоростью робота будем использовать базовый
регулятор с асимптотическим наблюдателем без динамического корректора.
Будем считать, что возмущение, действующее на робот, отсутствуют.
Зададим матрицы базового закона и наблюдателя равными
1 0
1 0
K v
, H v
.
0 0.1
0 0.1
Рис.22. Траектория движения точки на экране.
Рис.23. Траектория движения робота.
На рис. 21 в виде графиков представлены полученные результаты.
Динамический корректор регулятора изображения обеспечивает фильтрацию
гармонического возмущения, с момента его включения колебания желаемых,
37
а как следствие, и фактических скоростей робота начинают угасать. Не
позднее сто пятидесятой секунды после начала движения их амплитуды, как
и значения управляющих сигналов, становятся достаточно малы, что
позволяет произвести полную остановку робота. При этом точка на
изображении
продолжает
совершать
гармонические
колебания.
Ее
траектория представлена на рис. 22, красной точкой обозначено ее желаемое
положение на экране.
На рис. 23 изображена полученная траектория движения робота.
Красной точкой обозначено положение отслеживаемой точки по проекции на
плоскость, в которой передвигается робот.
38
Выводы
Предложенный метод синтеза обратной связи позволяет перевести
мобильный колесный робот в такое положение, в котором наблюдаемая
точка на экране имеет заданные координаты. При этом обеспечена
асимптотическая устойчивость положения равновесия, астатизм замкнутой
системы, а также фильтрующие свойства по отношению к внешним
возмущениям, воздействующим как на сам робот, так и на изображение на
экране. Фильтрация обеспечивает полную остановку робота в заданном
положении, несмотря на наличие
внешних
возмущающих воздействий,
стремящихся вывести робот из указанного положения.
Круг направлений дальнейшей работы достаточно широк. Во-первых,
возможно
более
детальное
исследование
совместной
работы
обоих
регуляторов и разработка методов подбора их параметров с целью
обеспечения наилучшего качества движения.
Во-вторых, регулятор изображения в рамках данной работы использует
только одну точку на экране. Задание ее желаемых координат на
изображении не определяет однозначно соответствующее положение робота
на плоскости. Поэтому необходимо рассмотреть задачу использования
нескольких точек.
Наконец,
необходимо
принять
во
внимание
возможность
использования других, более совершенных методов построения базового
закона управления. При этом возникает задача доказательства устойчивости
замкнутой системы, а также адаптации динамического корректора для
работы совместно с новым базовым законом.
39
Заключение
В ходе выполнения выпускной квалификационной работы получены
следующие основные результаты, которые выносятся на защиту:
1. Разработан метод синтеза управления с многоцелевой структурой,
позволяющий перевести робот в положение, в котором наблюдаемая на
экране точка имеет заданные координаты.
2. Разработан метод синтеза управления с многоцелевой структурой,
обеспечивающий
реализацию
роботом
скоростей,
полученных
на
предыдущем этапе.
3. Построен
имитационный
моделирующий
комплекс
в
среде
MATLAB-Simulink, позволяющий имитировать как динамику точки на
изображении, так и движение робота.
4. Проведено исследование обоих регуляторов в различных режимах
функционирования.
40
Список литературы
1. Chaumette F., Hutchinson S. Visual servo control. I. Basic approaches //
Robotics & Automation Magazine, IEEE. 2006. Vol. 13. No. 4. P. 82–90.
2. Szeliski R. Computer vision: algorithms and applications. Springer Science &
Business Media, 2010.
3. Lang H., Wang Y., de Silva C. W. Vision based object identification and
tracking for mobile robot visual servo control // Control and Automation
(ICCA), 2010 8th IEEE International Conference on. IEEE, 2010. P. 92–96.
4. Chaumette F., Hutchinson S. Visual servo control. II. Advanced approaches
[Tutorial] //Robotics & Automation Magazine, IEEE. 2007. Vol. 14. No. 1.
P. 109–118.
5. Chaumette F. Potential problems of stability and convergence in image-based
and position-based visual servoing // The confluence of vision and control.
Springer London, 1998. P. 66–78.
6. Hosoda K., Asada M. Versatile visual servoing without knowledge of true
jacobian // Intelligent Robots and Systems' 94.'Advanced Robotic Systems and
the Real World', IROS'94. Proceedings of the IEEE/RSJ/GI International
Conference on. IEEE, 1994. Vol. 1. P. 186–193.
7. López-Nicolás G. et al. Nonholonomic epipolar visual servoing // Robotics and
Automation, 2006. ICRA 2006. Proceedings 2006 IEEE International
Conference on. IEEE, 2006. P. 2378–2384.
8. Hashimoto K., Noritsugu T. Visual servoing of nonholonomic cart // Robotics
and Automation, 1997. Proceedings., 1997 IEEE International Conference on.
IEEE, 1997. Vol. 2. P. 1719–1724.
9. Veremey E. I., Sotnikova M. V. Visual Image Based Dynamical Positioning
Using Control Laws with Multipurpose Structure // IFAC-PapersOnLine. 2015.
Vol. 48. No. 16. P. 184–189.
10. Siciliano B., Sciavicco L., Villani L., Oriolo G. Robotics: modelling, planning
and control. Springer, 2009. 632 p.
41
11. Panteley E., Loria A. On global uniform asymptotic stability of nonlinear timevarying systems in cascade // Systems & Control Letters. 1998. Vol. 33. No. 2.
P. 131–138.
42
Отзывы:
Авторизуйтесь, чтобы оставить отзыв