Технические науки/11. Робототехника
Канд.
физ.-мат. наук Нурсеитов Д.Б., Угай И.А., Бармашёв Р.И., Заурбеков Д.Л.
Национальная
научная лаборатория коллективного пользования информационных и космических
технологий Казахского национального технического университета имени К.И.
Сатпаева, Казахстан
ОБЗОР АЛГОРИТМОВ ОБХОДА ПРЕПЯТСТВИЙ,
ИСПОЛЬЗУЕМЫХ В РОБОТОТЕХНИКЕ
В современных условиях развития информационных
технологий, в последние десятилетия отрасль робототехники пользуется всё
большим вниманием учёных и научных подразделений. Так как научные исследования
данной категории являются актуальными по следующим причинам:
– применение роботов позволяет снизить финансовые
затраты, за счёт уменьшения количества рабочих мест;
– использование роботов позволяет увеличить
производительность разного рода производства или работ, в виду того, что
роботам нет необходимости в пище или отдыхе;
– использование роботов в производстве позволяет
исключить человеческий фактор.
В последнее время робототехника начала сильно развиваться
в такие отрасли, как военное дело, охрана специальных территорий, а также
патрулирование охраняемых территорий. При этом большая часть, разработанных
роботов, предназначенных для вышеперечисленных целей работает автономно, т.е.
без вмешательства человека.
В виду автономного функционирования данных роботов,
перед разработчиками возникает ряд проблем:
1. ориентация. Данная проблема является первоначальной
при создании подобных роботов, т.к. данные или знания о начальном
местоположении, точке назначения и маршруте движения, заложенные в
бизнес-логику робота не позволят достичь данной точки назначения при любом
отклонении, возникновении препятствия и т.д.;
2. препятствия. Данная проблема является неотъемлемой
частью в ориентации робота. Так как любое возникшее перед ним препятствие,
теоретически должно быть избегнуто роботом от столкновения, при этом не потеряв
маршрут к точке назначения.
В данной статье пойдет речь о существующих алгоритмах,
которые используются для избегания столкновения роботом с разного рода
препятствиями.
Сотрудниками Национальной научной лаборатории
коллективного пользования информационных и космических технологий КазНТУ имени
К.И. Сатпаева (далее – ННЛКП ИКТ) были проведены исследования алгоритмов обхода
препятствий, по результатам данных исследований была сформирована следующая
классификация всех алгоритмов:
– алгоритмы «гипотеза-тест». Суть данных алгоритмов
заключается в предположении пути-кандидата между начальной и конечной точками
траектории движения. Далее в наборе направлений вдоль заданного пути
тестируется возможность столкновений, если вероятность столкновения возрастает,
то с целью пути обхода исследуется препятствие, из-за которого столкновение
становится возможным. Затем весь процесс продолжается до успешного получения
результата;
– алгоритмы, основанные на штрафных функциях. Данные
алгоритмы основываются на определении штрафной функции для конфигурации робота,
с помощью которой кодируется наличие объектов на пути следования;
– алгоритмы, использующие скелетирование. При использовании
данной категории алгоритмов бизнес-логика робота сводит пространство к
одномерному представлению робота, для которого задача планирования пути без
столкновений становится значительно проще;
– алгоритмы с использованием нечёткой логики.
Алгоритмы, основанные на использовании нечёткой логики работают следующим
образом: во-первых, определяется множество нечётких инструкций, содержащих
понятия, формализуемые нечёткими множествами;
– алгоритмы, основанные на компьютеризированном зрении
робота. Данные алгоритмы основаны на изучении, анализе и оценке препятствия.
После которого система робота решает, как образом препятствие будет обойдено.
Примером алгоритма, основанного на
компьютеризированном зрении робота является коммерческий продукт компании «СМП
Роботикс» под названием Трал Патруль (смотреть рис. 1). Данный продукт поступил
на рынок в середине 2013 года [1].
Рис. 1. Трал Патруль.
По словам разработчиков и научного подразделения «СМП
Роботикс» в бортовом компьютере робота хранятся данные в виде карты со
множеством характеристик условий проезда. Более того, робот, многократно
проезжая по одним и тем же участкам, уточняет и накапливает данные, другими
словами самообучается. Непосредственное обнаружение препятствий, находящихся на
пути проезда робота, осуществляется посредством обработки видеоизображений от
двух разнесённых по горизонтали курсовых видеокамер. Эти изображения
представляют собой стереопару и их анализ позволяет вычислить карту глубины
наблюдаемого пространства. Затем алгоритм обработки стереоизображений строит dense disparity map, производит фильтрацию, исключающую ложные
сопоставления, и оставляет регионы с ярко выраженной текстурой (смотреть рис.
2) [2].
Рис. 2. Пример dense disparity map.
Применив к этим данным оригинальный алгоритм выделения
подстилающей поверхности, решаются две задачи:
1. определение вертикальных ворот возможных вариантов
проезда;
2. выявление пути или дороги непосредственно на
поверхности.
Непосредственно определение дороги на подстилающей
поверхности основывается на анализе и сравнении текстур изображения,
формировании карты подстилающих поверхностей и их сопоставления с физическим
«слепком» местности.
Данный алгоритм является самым трудоёмким в плане
вычислений, в виду этого на системе Трал Патруль для его расчёта используется параллельная
архитектура 16 ядерного процессора.
Одним из примеров применения алгоритмов с
использованием нечёткой логики является робот, полученный научным
подразделением Томского Политехнического Университета (смотреть рис. 3) [3].
Рис. 3. Внешний вид робота.
Для работы алгоритма, данные считываются с помощью
двух специальных ультразвуковых датчиков расстояния. Принцип работы данного
алгоритма при обнаружении препятствия заключается в следующем:
1. Определить приблизительный размер препятствия, т.е.
попадает ли он в зону обнаружения одного или двух датчиков;
2. В случае, если препятствие обнаружено одним из
датчиков. Происходит маневр уклонения препятствия, путём увеличения оборотов
колеса на стороне датчика, обнаружившего препятствия, а на противоположном
замедляется. Таким образом происходит плавный поворот, исключающий полную
остановку робота.
3. В случае обнаружения препятствия двумя датчиками.
Происходит маневр, заложенный в правилах нечёткой логики.
Данный алгоритм является менее трудоёмким в сравнении
с предыдущим, но имеет один существенный недостаток: ультразвуковой датчик,
используемый для получения данных о препятствии, не обладает необходимой
точностью при возникновении препятствия из мягкого материала (например: ткань).
Следующим примером алгоритма нечёткой логики является
другой прототип Томского Политехнического Университета (смотреть рис. 4) [3].
Рис. 4. Внешний вид прототипа.
Основным отличием от предыдущего является
использование инфракрасного датчика, в качестве дальномера. Принцип работы
алгоритма аналогичен предыдущему. За исключением, вместо использования двух
датчиков, используется один датчик, который путём его поворота сканирует
территорию на наличие объектов. Отсюда определяется с какой именно стороны
возникло препятствие.
Заключение
По проведенным исследованиям было выяснено, что самыми
распространёнными и эффективными алгоритмами обхода препятствий являются
алгоритмы следующих классов: алгоритмы, основанные на нечёткой логике и
алгоритмы, основанные на компьютеризированном зрении робота. Также
поверхностный анализ алгоритмов дал понять, что для реализации алгоритмов,
основанных на компьютеризированном зрении являются самыми трудоёмкими в
расчётах, что влечёт за собой существенные затраты на покупку дорогостоящих и
высокопроизводительных комплектующих.
[1] |
В. обозрение, «В России началось производство
робота-патрульного "Трал Патруль",» 2013 июля 30. [В Интернете].
Available:
http://topwar.ru/31434-v-rossii-nachalos-proizvodstvo-robota-patrulnogo-tral-patrul.html. |
[2] |
S. Robotics, «Технологии автоматического управления
движением наземного робота,» [В Интернете]. Available:
http://www.smprobotics.ru/technologies/. |
[3] |
Ч. А.А., «X Всероссийская научно-практическая
конференция,» в Обход препятствий
платформой на AVR микроконтроллере (Arduino UNO) с использованием
ультразвуковых датчиков, 2011. |
[4] |
А. Черных, «XIX Международная научно-практическая
конференция,» в Отслеживание и обход
препятствий платформой на микроконтроллере Arduino Uno с использованием
радара на ИК датчике, 2013. |