Работа выполнена при финансовой поддержке гранта «Кандидаты наук РАН» Фонда содействия отечественной науке, гранта РФФИ 05-01-97906-р_агидель_а и программы № 16 фундаментальных исследований ОЭММПУ РАН.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Даринцев О.В., Мигранов А.Б. Виртуальный имитатор технологического комплекса сборки микросистем // Вестник компьютерных и информационных технологий. 2006.
- № 10 - С. 19 - 25.
2. Даринцев О.В., Мигранов А.Б. Манипуляционные микроробототехнические системы и проблемы производства гибридных МЭМС // Нано- и микросистемная техника. 2005.
- №2. С. 38-44.
3. Феррара А., Мак-Дональд М. Программирование Web-сервисов для .NET. / СПб.: Пи-тер-BHV, 2003.
4. Белоусов И.Р., Сазонов В.В., Чебуков С.Ю. Опыт разработки и использования системы управления роботом-манипулятором через сеть Интернет // Труды научной школы-конференции “Мобильные роботы и мехатронные системы”. М.: МГУ. С. 217-226.
С.Б. Симонов
РЕШЕНИЕ ЗАДАЧИ ВИЗУАЛЬНОГО УПРАВЛЕНИЯ С ОБРАТНОЙ СВЯЗЬЮ ПО ПОЛОЖЕНИЮ В РОБОТИЗИРОВАННОЙ СИСТЕМЕ НАВЕДЕНИЯ НА ЦЕЛЬ
Визуальные системы управления роботами обеспечивают обратную связь по относительному положению рабочего органа робота. Они используют алгоритм интерактивного позиционирования, базирующегося на формировании и обработке визуальной информации об окружающей среде. Если образ, полученный с камеры, используется для определения положения объекта в пространстве, и эти параметры используются для управляющего воздействия, то такие системы называют визуальными системами с обратной связью по положению [1].
Раньше практическое приложение этой задачи было относительно небольшим (траектография, обнаружение и контроль объектов на подвижной ленте транспортера) [2], однако в настоящий момент в связи с развитием вычислительной техники эта задача возникает во многих интеллектуальных робототехнических системах. В частотности, ведутся исследования в следующих направлениях: интеллектуальные следящие системы технического зрения (ИССТЗ) [4], дистанционное управление подвижными роботами по видеопотоку внешней камеры [5], позиционирование манипулятора по видеоизображению и других.
На рис. 1 показана обобщенная схема управления системы визуального управления с обратной связью по положению [1]. Внутренний контур обратной связи относится к системе позиционирования манипулятора. Внешний контур — визуальная обратная связь по положению.
В идеальном случае связь между положением объекта в пространстве и его отображением 1(K) линейна. К сожалению, на практике такой ситуации достигнуть сложно. Отвлекаясь от качества видеосигнала, можно считать, что на отображение влияют следующие явления [2].
Эффект параллакса.
Геометрическая аберрация (увеличивается по мере удаления объекта от оптической оси).
Эффект нарушения фокусировки: точечному объекту соответствует образ с ненулевым значением площади.
Хой(1)
Регулятор
Управление звеньями манипулятора в замкнутом контуре
Е(К) Обработка изображения и выделение признаков '
1(К)
Восприятие
изображения
Помехи
Рис. 1. Схема управления системы с визуальной обратной связью по положению
При рассмотрении трехмерных объектов имеет место эффект глубины поля. Одной из составляющих ИССТЗ является роботизированная система наведения манипулятора на цель с визуальным управлением с обратной связью по положению. Рис. 2 иллюстрирует задачу наведения на цель по видеосигналу.
а) Видеокамера Автомат
Видеокадр сопровождение цели
Манипулятор
Угловые скорости поворота платформы
Наведение на цель
Координаты маркера цели
ведения
Рис. 2. Решение задачи наведения на цель по видеосигналу: схема взаимодействия элементов наведения (а), видеокадр с метками наведения (б), система координат на панели оператора (в), система координат камеры (г)
Манипулятор представляет собой поворотную платформу с двумя степенями свободы, которая обеспечивает позиционирование по вертикали и горизонтали. Камера расположена на манипуляторе. В системе используется цифровая видеокамера высокого разрешения (1024x768 точек) с частотой 10 кадр./сек. Обработка изображения и формирование управляющего воздействия выполнятся на специализированном компьютере с процессором РеШшш 3 - 1 ГГц. Управляющее воздействие задается угловыми скоростями приводов поворотной платформы.
По видеоряду, получаемому от камеры, алгоритм наведения должен рассчитать такие угловые скорости наведения по углам а и в (рис. 2, г), чтобы за минимальное время совместить маркер наведения с маркером цели (рис. 2, б, в). Цель представляет собой объект, который может перемещаться в пространстве. Расстояние между камерой и объектом произвольно и может меняться во время перемещения объекта. Маркеру наведе-
ния соответствует точка на кадре, координаты которой не меняются в процессе работы системы, - обычно центр кадра. Маркер цели, напротив, постоянно смещается в кадре по мере поворота видеокамеры и перемещения цели (области анализа) в пространстве. Координаты цели на каждом кадре определяет автомат сопровождения цели (АСЦ). Для корректной работы АСЦ поворот камеры должен осуществляться плавно.
С частотой, равной частоте кадров видеокамеры, на вход алгоритма наведения цели передаются координаты цели Хц и Уц. После расчета алгоритм выдает угловые скорости наведения по вертикали и горизонтали в систему управления приводами поворотной платформы видеокамеры. Таким образом, алгоритм работает итеративно, вместе с обработкой каждого кадра.
Поскольку обработка изображения и выделение признаков выполняются в процессе движения манипулятора, следует при их выполнении принимать в расчет скорость этого движения. Особенно важны два аспекта оказываемого этим движением влияния: снижение точности (скоростная ошибка слежения) и устойчивости замкнутой системы позиционного управления.
Алгоритм наведения на цель является главным управляющим звеном системы и должен обеспечить качественное наведение как на подвижные, так и на неподвижные объекты.
Первый вариант разработанного алгоритма показан на рис. 3. Алгоритм очень прост в реализации и учитывает лишь разность координат цели и маркера. Формирование управляющего воздействия в вертикальном и горизонтальном направлениях осуществляется отдельно по одному и тому же алгоритму. Величины рі, Р2, ютш и ютах задаются в качестве параметров и не меняются в процессе работы.
в - расстояние между парцельной маркой и маркой цели
Рис. 3. Формирование управляющего воздействия в простейшем решении задачи
наведения по видеосигналу
При большом удалении маркера наведения от маркера цели, камера начинает поворачиваться с максимальной скоростью ютах в направлении цели. Расстояние между маркерами сокращается. При сближении маркеров скорость наведения линейно замедляется. Наконец, когда координаты маркера наведения и цели находятся в одной окрестности, то алгоритм "удерживает” прицельный маркер в этой окрестности сохраняя минимальную скорость.
Скорость наведения по вертикали вычисляется аналогично.
Результаты проведенных испытаний показали, что в целом данный алгоритм подходит для наведения на неподвижные цели, но требует оптимизации по стабильности, точности и скорости наведения.
При наведении на неподвижный объект может наблюдаться эффект «колебаний». Прицельная марка находится слева и на удалении от марки цели. В следующий момент времени прицельная марка «проскакивает» цель и находится справа от цели на приблизительно таком же расстоянии, что и прежде. В худшем случае процесс про-скакивания цели может быть бесконечным. Этот эффект может быть устранен путем эвристического подбора параметров рі, Р2, ютіп и ютах. Увеличение максимальных скоростей ютш или ютах может привести к сбоям в АСЦ и большим колебаниям маркера наведения. Уменьшение максимальных скоростей увеличивает время наведения.
Приведенный выше алгоритм не решает задачу наведения на подвижные цели. Во-первых, значения максимальной скорости ютах может быть недостаточным для наведения на быстро движущуюся цель (ютах < юцели). Во-вторых, при сближении прицельного маркера с маркером цели алгоритм сводит скорость наведения к ют1п, а для подвижных целей скорость удержания должна соответствовать угловой скорости цели.
Для наведения по движущимся объектам алгоритм был модифицирован. Вместо линейного уменьшения скорости до ютш происходит уменьшение текущей скорости на некоторую фиксированную величину Лю. При попадании маркера наведения в окрестность маркера цели значение скорости сохраняется. Модифицированный алгоритм также имеет проблемы с эффектом «колебаний» и «убеганием» цели.
Опыт использования приведенного выше алгоритма помог уточнить требова -ния по функционированию алгоритма наведения и разработать более удачное решение задачи наведения.
Очевидно, что алгоритм должен быть универсальным, так как сам признак подвижной/неподвижной цели является неудобным и трудновыделимым. Движущаяся цель может остановиться, а неподвижная - начать движение. Алгоритм должен начинать движение платформы плавно, учитывать данные, полученные на предыдущих итерациях, накапливая знания о цели; оперативно изменять скорость наведения для ускоряющихся целей; быстро и без колебаний доводить марку до цели.
Для эффективного решения задачи наведения необходимо учитывать множество факторов, в том числе ограничения на скорости и ускорения наведения, накладываемые АСЦ и приводами поворотной платформы; задержки в обработке кадров и инерционность приводов наведения (рис. 4). Для точного учета задержек необходимо обеспечить их постоянство - система должна функционировать в режиме жесткого реального времени [3].
V V’ »
Т1- времена работы алгоритма наведения
1зп - задержка отработки приводов
^к - задержка формирования кадра и АСЦ
X -реальное расстояние между маркой наведения и маркой цели X’ - расстояние между маркой наведения и маркой цели с учетом задержки видеосигнала и АСЦ т - угловая скорость наведения, сформированная алгоритмом т' - угловая скорость наведения
Рис. 4. Временная диаграмма работы системы наведения
Для описания алгоритма наведения введем следующие обозначения:
Т - период поступления кадров и координат маркера цели на вход алгоритма, время между итерациями алгоритма, с.;
Т
о
ю - угловая скорость поворота камеры, рад/с;
X - расстояние между маркерами наведения и цели в кадре, пикселей;
Дюм - максимально допустимое изменение скорости за время Т, рад/с;
Ютах - максимальная угловая скорость рад/с;
юц - угловая скорость цели, рад/с.
Для наведения по горизонтали и вертикали используется один и тот же алгоритм. На каждой итерации оценивается расстояние между маркерами Х и вычисляется угловая скорость наведения ю’к, которая позволит сократить это расстояние до нуля к следующей итерации. Можно показать, что
wk = X(KT) +wk-1 ■ ~T Wk-1 ■ у -тЦ . (!)
Здесь К - коэффициент отношения смещения цели на экране к ее угловому перемещению, который может быть вычислен опытным путем;
w'k - угловая скорость (управляющее воздействие);
Шк-1 - текущая угловая скорость, сформированная на предыдущей итерации.
Формулы справедливы для небольших углов перемещения, т.е ю-T образуют небольшой угол. Предполагается, что пикселю видеокадра соответствует точечный угол по вертикали и по горизонтали, равный для всех пикселей. Точечный угол равен отношению угла обзора камеры к ее разрешающей способности по вертикали и горизонтали соответственно.
X = w- T ■ K;
K = X юст (2)
ЮюстТ
Однако приращение скорости ограничено максимально допустимым изменением скорости и максимальной допустимой скоростью:
К -wk-i| ; (3)
Wk £ Wmax .
Также необходимо заблаговременно снижать скорость перед приближением марки наведения к цели. Для этого строится таблица со значениями «расстояние -максимальная угловая скорость наведения» по формулам
X max,. = KT(аму ■ i + юч);
(4)
wmaxi =WMy ■i.
В таблице ищется соответствующая текущему расстоянию Х максимальная скорость ю max1 ( Xmax1+1<X<XmaXj).
Учитывая все приведенные выше ограничения, формируется соответствующая угловая скорость.
На первой итерации угловая скорость цели полагается равной нулю. Поскольку цель может изменить угловую скорость, то на каждых последующих итерациях делается уточняющая оценка угловой скорости цели:
, ДХ'-ДХ
w = KT +%. (5)
Здесь юц - угловая скорость цели на предыдущей итерации,
ДX - расчетное расстояние между целью и маркой,
ДX, - полученное расстояние между целью и маркой.
Схема алгоритма представлена на рис. 5.
Рис. 5. Блок-схема алгоритма наведения
Разработанный алгоритм наведения обеспечивает качественное наведение по подвижным и неподвижным целям. Алгоритм функционирует устойчиво, устранен эффект «колебаний». В то же время наведение происходит плавно и, как следствие, уменьшились ошибки АСЦ. Сократилось среднее время наведения. Обладая небольшой вычислительной нагрузкой, алгоритм обеспечивает качественное наведение в ИССТЗ.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Сандерсон А.С., Вейсс Л.И. Адаптивное визуальное управление роботами // Техническое зрение роботов / Под ред. А. Пью; Пер. с англ. Д.Ф. Миронова; Под ред. Г.Т. Ка-тыса. - М.: Машиностроение, 1987.
2. Кулон П.И., Ногарэ М. Использование телевизионной системы в замкнутой системе позиционного управления механизмами // Техническое зрение роботов / Под ред. А. Пью; Пер. с англ. Д.Ф. Миронова; Под ред. Г.Т. Катыса - М.: Машиностроение, 1987
3. Олссон Г., Пиани Д. Цифровые системы автоматизации и управления. - СПб.: Невский Диалект, 2001.
4. Martin B., Erhardt B. Challenges in Single Camera Remote Eye Tracking. - Institute for Neuroand Bioinformatics University of Lübeck, Germany // Communication by Gaze Interaction 2005, Copenhagen.
5. Chi-Farn Chen, Min-Hsin Chen. Object tracking and positioning on video images. - Center for Space and Remote Sensing Research, National Central University, Chung Li, TAIWAN // XXth ISPRS Congress, 12-23 July 2004, Istanbul.