Введение
В робототехнике с каждым днём всё больше внимания уделяется управлению коллективами роботов: мультиагентным системам, алгоритмам стайного поведения, самоорганизации группы роботов и т.д. [3, 4, 5, 7]. Данное направление является наиболее перспективным, так как обладает рядом преимуществ: больший радиус действия, расширенный набор решаемых задач, более высокая вероятность достижения поставленной цели за счёт перераспределения задач между роботами группы в случае выхода из строя некоторых из них.
Получение информации по каналам обратных связей с любого уровня управления является важной составляющей процесса управления. Даже при использовании стайной стратегии управления, подразумевающей, что каждый робот стаи не имеет прямой информационной связи с другими роботами и функционирует в условиях информационного дефицита, контроль над ходом выполнения задачи стаей роботов позволит выявить причины отказа, появления конфликтных ситуаций и прочее. От своевременной передачи информации на верхний уровень управления зависит эффективность работы всей системы, так как выявленные нештатные ситуации могут потребовать незамедлительного вмешательства и корректировки работы.
Особенности беспроводных технологий
Основная проблема передачи данных в режиме реального времени заключается в загруженности информационных каналов, тем более, когда речь идёт об управлении достаточно большим коллективом роботов. Загруженность информационных каналов приводит к запаздываниям, задержкам в получении обратных связей от коллектива [4]. Это чревато задержками в принятии решений, ошибкам и даже потерей управления над всем коллективом.
Анализ широко распространённых в робототехнике технологий беспроводной передачи данных Bluetooth [2] и ZigBee [8] выявил несколько проблем в организации своевременной передачи данных от коллектива роботов. Во-первых, эти технологии основаны на передаче данных по принципу «от точки к точке» вне зависимости от топологии сети (Piconet, Mesh-сеть и т.д.). Это замедляет опрос всех агентов и требует больше вычислительных ресурсов робота из-за необходимости ретранслировать сообщения соседних роботов по сети. Во-вторых, это проблема локализации – данные технологии не способны отследить ориентацию в пространстве и местоположение мобильных роботов. Локализация роботов является одним из самых важных контролируемых параметров при управлении коллективом роботов. Таким образом, технологии беспроводной передачи данных, основанные на использовании радиоканала, не обеспечивают требуемых характеристик канала обратной связи.
Решение выявленной проблемы видится в использовании оптического канала обмена информацикй (таблица 1). Широкое использование систем технического зрения (СТЗ) в робототехнике позволяет легко организовать одно- и многокамерные системы наблюдения за рабочей областью коллектива роботов. Предлагается использовать один из элементов технологии расширенной реальности – оптические маркеры и построить на его базе знаковый (оптический) язык обмена информации, используя пространственно размещённые коды.
Таблица 1. Ключевые особенности беспроводных технологий передачи данных
№ |
Bluetooth, ZigBee |
СТЗ и маркеры расширенной реальности |
1 |
Опрос состояния системы растянут во времени [4] в виде последовательности отдельных операций коммуникации с каждым роботом. |
Параллельная, многопоточная передача данных. Есть возможность получить кадр состояния системы в отдельный момент времени (момент съёмки). |
2 |
Невозможность определения местоположения и ориентации мобильных роботов в пространстве. |
Точное определение координат мобильных роботов с помощью маркеров. |
3 |
Двунаправленная передача данных |
Использование в качестве дополнительного канала обратной связи |
В таблице 2 представлены возможности технологии расширенной реальности при решении разного рода задач управления коллективом роботов.
Таблица 2. Возможности технологии расширенной реальности
Задачи |
Применение |
Задачи пространственного размещения (поддержание «строя», соблюдение дистанций, обход «запрещённых» зон, следование за «ведущим»). |
Получение обобщённой информации о действиях всего коллектива в целом (локализация роботов, соблюдение дистанций). При этом на основе маркеров каждого робота система может сгенерировать общий (глобальный) маркер всего коллектива. |
Задачи инспектирования (обнаружение препятствий, следование к заданным координатам, поиск маяков). |
Обнаруженное мобильным роботом скрытое препятствие, нераспознанное камерой наблюдения, достраивается на карте, и в дальнейшем позволяет учитывать скрытые препятствия при построении маршрутов движения для других роботов коллектива. |
Задачи манипулирования небольшими объектами (захват, поворот, перенос объекта). |
Система может достроить виртуальный объект и визуализировать процесс его обработки роботом. |
Информационный маркер
Наиболее предпочтительным для прототипа разрабатываемой системы оптической передачи данных является использование технологии двумерных кодов [9] (QR-кодов, DataMatrix и других) для кодирования оперативной информации робота. Основное достоинство двумерных кодов – это лёгкое распознавание сканирующим оборудованием (в том числе даже web-камерой), что даёт возможность использования такого подхода в различных сферах деятельности: от бытового применения (с низкой разрешающей способностью) до контроля технологических операций.
Информационная ёмкость двумерного кода зависит от его размеров, которые в свою очередь ограничиваются разрешающей способностью видеокамеры СТЗ. Для гарантированного распознавания маркера необходимо иметь крупные размеры отдельных элементов двумерного кода, но чем крупнее эти элементы, тем меньше информации содержит маркер.
Разрешением противоречия «минимальный размер маркера – большая информационная ёмкость» стала разработка динамического двумерного кода. Динамический двумерный код – это специальный алгоритм формирования непрерывного пакета данных в виде нескольких последовательно отображаемых кадр за кадром двумерных кодов, где в каждом кадре присутствует часть информации предыдущего и следующего кадра, обеспечивающая целостность пакета при передаче.
Для коррекции ошибок при кодировании сообщения применяется алгоритм Рида –Соломона [6] со специальными параметрами кодирования, которые не требуют больших вычислительных ресурсов мобильных минироботов. Допустим мобильному роботу необходимо отправить сообщение, содержащее его идентификатор R=01; координаты относительно начального положения X=01, Y=02; направление N=3 (из восьми возможных); информацию с датчиков локации: O1=01100000b O2=01100010b O3=01100110b (по 1 байту для ближней, средней и дальней зоны обнаружения). Представим исходное сообщение в виде последовательности байт, сгруппированных по 4 на каждый кадр. При этом последний байт каждого кадра дублируется в следующем кадре для сохранения целостности пакета при передаче.
В кодах Рида – Соломона сообщение представляется в виде набора символов алфавита поля Галуа. Будем использовать поле Галуа GF(16), состоящее из 16 элементов и построенное с помощью полинома x4 + x + 1 и примитивного элемента a=2. Полезное сообщение каждого кадра пакета перемножается на порождающий многочлен g(x):
.
Построим порождающий многочлен для следующих параметров: общее количество символов N=15, в котором «полезное» количество символов K=9 (возведение в степень и умножение производятся по правилам полей Галуа):
g(x) = (x + 2)(x + 22)(x + 23)(x + 24)(x + 25)(x + 26) =
= x6 + 7x5 + 9x4 + 3x3 +12x2 +10x + 12.
Таким образом, полученное закодированное сообщение будет представлено в двоичном коде в виде чёрно-белых элементов матрицы двумерного кода (рисунок 1 (а)). Для сравнения закодируем то же самое исходное сообщение с помощью стандартного алгоритма, кода DataMatrix (рисунок 1 (б)).
Робототехнический комплекс и результаты эксперимента
Для тестирования и отладки различных способов кодирования двумерных кодов, а также организации коллективного взаимодействия роботов между собой был разработан специальный робототехнический комплекс [1]. Конструкция мобильных роботов экспериментального комплекса была спроектирована по модульному принципу, что позволило расширить круг задач, которые можно решать на данном комплексе. Каждый модуль фиксируется четырьмя металлическими стойками, которые обеспечивают жёсткость конструкции и надёжно фиксируют модули друг над другом. Электрическое соединение между модулями реализуется шлейфами с электрическими разъёмами, а универсальный протокол обмена между модулями позволяет подключать их в различной последовательности. Такой подход позволяет изменять характеристики робота в широких диапазонах, что делает их удобными и практичными для использования в научно-исследовательских целях.
Для индикации двумерных кодов используются полноцветные OLED-дисплеи (Organic Light Emitting Device) – индикаторы на основе органических светоизлучающих кристаллов. OLED-дисплеи, по сравнению с ЖК-дисплеями, обладают низким уровнем энергопотребления, высокой яркостью и контрастностью изображения, не требуют дополнительной подсветки и имеют широкий угол обзора (до 160–180 градусов как в горизонтальной, так и в вертикальной плоскости) без заметных искажений цветопередачи. Всё это облегчает обнаружение двумерного динамического маркера системой технического зрения даже в зашумлённой окружающей обстановке.
Как видно из рисунков 1 (а) и 1 (б), динамический двумерный код по сравнению с классическим DataMatrix кодом имеет больший геометрический размер отдельного элемента кода. Сравним возможности распознавания и декодирования двух кодов DataMatrix размерами 20 мм: 32х32 точек (рисунок 1 (б)) и 10х10 точек (аналогично отдельному кадру динамического кода, изображённому на рисунке 1 (а)). Программа Barcode Recognition Software v5.28 способна распознавать и декодировать двумерные коды в режиме потокового видео. Быстродействие V и качество сканирования E рассчитывалось на основе экспериментальных данных:
,
где R – общее количество распознанных кодов за время t (t=30 с.);
,
где D – количество успешно декодированных кодов за время t (t=30 с.).
Результаты представлены в таблице 3.
Таблица 3. Оценка быстродействия и качества сканирования двумерных кодов
Расстояние до камеры, мм |
Код 10х10 (20 мм) |
Код 32х32 (20 мм) |
||
V код/с |
E % |
V код/с |
E % |
|
150 |
4,03 |
100 |
3,10 |
96 |
170 |
4,03 |
100 |
1,76 |
90 |
190 |
4,00 |
100 |
1,53 |
87 |
210 |
4,00 |
100 |
0,26 |
0 |
510 |
1,76 |
100 |
0,00 |
0 |
530 |
1,00 |
96 |
0,00 |
0 |
Так как скорость распознавания объёмного DataMatrix кода (32х32 точки) ниже скорости распознавания отдельных кадров динамического кода (10х10 точек), то в среднем временные затраты на передачу всего пакета данных не столь велики. Но при этом достигается 100 % безошибочность декодирования и сохраняется компактность кода при любых объёмах передаваемых данных. Из приведённых данных видно, что безошибочное распознавание кадра динамического кода возможно на расстоянии в 2,5 раза дальше, чем статического кода. Таким образом, видеокамера, расположенная выше, может охватить бóльшую рабочую область.
Заключение
Предлагаемый способ организации канала обратной связи позволяет получать состояние всех элементов системы в любой момент времени за счёт одновременной передачи данных по оптическому каналу; принимать решения в режиме реального времени и своевременно реагировать на изменения ситуации.
Динамический двумерный код позволяет передавать данные в полном объёме на расстояние в 2,5 раза дальше, при этом скорость передачи пакета данных динамического кода соизмерима со скоростью распознавания объёмного статического кода.
Рецензенты:
Арьков В.Ю., д.т.н., профессор кафедры АСУ, ФГБОУ ВПО «Уфимский государственный авиационный технический университет», г. Уфа.
Мунасыпов Р.А., д.т.н., профессор кафедры «Техническая кибернетика», ФГБОУ ВПО «Уфимский государственный авиационный технический университет», г. Уфа.
Библиографическая ссылка
Алексеев А.Ю. ОПТИЧЕСКИЙ КАНАЛ БЕСПРОВОДНОЙ ПЕРЕДАЧИ ДАННЫХ КОЛЛЕКТИВА МОБИЛЬНЫХ РОБОТОВ // Современные проблемы науки и образования. – 2014. – № 1. ;URL: https://science-education.ru/ru/article/view?id=11922 (дата обращения: 21.11.2024).