Научная статья на тему 'МОДИФИЦИРОВАННЫЙ АЛГОРИТМ ПЕРЕМЕЩЕНИЯ МОБИЛЬНОГО РОБОТА НА НЕИЗВЕСТНОЙ МЕСТНОСТИ ДЛЯ СКАНИРОВАНИЯ ПОВЕРХНОСТИ'

МОДИФИЦИРОВАННЫЙ АЛГОРИТМ ПЕРЕМЕЩЕНИЯ МОБИЛЬНОГО РОБОТА НА НЕИЗВЕСТНОЙ МЕСТНОСТИ ДЛЯ СКАНИРОВАНИЯ ПОВЕРХНОСТИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
37
7
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОБИЛЬНЫЙ РОБОТ / АЛГОРИТМ ПОЛНОГО ПОКРЫТИЯ / НЕИЗВЕСТНАЯ ТЕРРИТОРИЯ / СКАНИРОВАНИЕ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Плаксин Сергей Игоревич

Рассматривается модифицированный алгоритм полного покрытия. Алгоритм позволяет мобильному роботу получать маршрут, следуя которому будет проведено полное сканирование неизвестной территории, а также его адаптировать при обнаружении новых препятствий. Алгоритм разработан на основе алгоритма PT с применением алгоритма D* для работы на заранее неизвестной территории.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Плаксин Сергей Игоревич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MODIFIED ALGORITHM FOR MOBILE ROBOT NAVIGATION IN UNKNOWN TERRITORY FOR TERRAIN MAPPING

The paper considers a modified full coverage algorithm. This algorithm allows the mobile robot to create a route, following which all unknown territory will be mapped, as well as adapt it when new obstacles are detected. Algorithm was created on the basis of the PT algorithm using the D* algorithm to work with territory unknown beforehand.

Текст научной работы на тему «МОДИФИЦИРОВАННЫЙ АЛГОРИТМ ПЕРЕМЕЩЕНИЯ МОБИЛЬНОГО РОБОТА НА НЕИЗВЕСТНОЙ МЕСТНОСТИ ДЛЯ СКАНИРОВАНИЯ ПОВЕРХНОСТИ»

8. Кочетков Ю.А., Киселев Г.Г., Коркина С.В., Старикова А.Г. Снижение аварийности, связанной со столкновениями автотракторной техники с железнодорожным подвижным составом // Актуальные проблемы автотранспортного комплекса: Межвузовский сборник научных статей международным участием. Самара, 01-05 апреля 2014 года / Ответственный редактор О.М. Батищева. Самара: Самарский государственный технический университет, 2014. С. 166-170.

9. Воеводина С.П., Киселев Г.Г. Комплексный информационный подход для предупреждения аварийных ситуаций на железнодорожных переездах // Обеспечение безопасности движения как перспективное направление совершенствования транспортной инфраструктуры: Материалы Международной студенческой научно-практической конференции, Нижний Новгород, 07 апреля 2022 года. Нижний Новгород: Филиал федерального государственного бюджетного образовательного учреждения высшего образования «Самарский государственный университет путей сообщения» в г. Нижнем Новгороде, 2022. С. 74-78.

10. Федухин А.В., Муха А.А. Информационный подход к повышению безопасности движения на железнодорожных переездах // Математические машины и системы. 2015. № 4. С. 145-151.

Киселев Геннадий Геннадьевич, канд. техн. наук, доцент, velesik@mail.ru, Россия, Самара, Самарский государственный университет путей сообщения

IMPROVING THE EFFICIENCY OF THE SECURITY SYSTEM AT RAILWAY CROSSINGS SUMMARY

G.G. Kiselev

The article gives an idea of improving and increasing the level of traffic safety at railway crossings. The aspect in the direction of improving traffic safety at railway crossings with the use of information technologies based on liquid crystal information screens allowing to inform in advance about the situation at railway crossings is investigated. The ways of expanding the functionality of automatic crossing signalling in order to improve traffic safety, by means of additional signalling and sensors installed at railway crossings, are considered.

Key words: railway crossing, crossing at the same level, traffic safety, information content, signal-informing complex.

Kiselev Gennadi Gennadievich, candidate of technical sciences, docent, velesik@mail.ru, Russia, Samara State Transport University

УДК 681.5

DOI: 10.24412/2071-6168-2022-12-152-156

МОДИФИЦИРОВАННЫЙ АЛГОРИТМ ПЕРЕМЕЩЕНИЯ МОБИЛЬНОГО РОБОТА НА НЕИЗВЕСТНОЙ МЕСТНОСТИ ДЛЯ СКАНИРОВАНИЯ ПОВЕРХНОСТИ

С.И. Плаксин

Рассматривается модифицированный алгоритм полного покрытия. Алгоритм позволяет мобильному роботу получать маршрут, следуя которому будет проведено полное сканирование неизвестной территории, а также его адаптировать при обнаружении новых препятствий. Алгоритм разработан на основе алгоритма PT с применением алгоритма D* для работы на заранее неизвестной территории.

Ключевые слова: мобильный робот, алгоритм полного покрытия, неизвестная территория, сканирование.

При сканировании местности важную роль играет построение такого маршрута робота, который позволит ему просканировать всю территорию наиболее коротким путём. Решение такой задачи может усложняться тем, что на карте могут находится заранее неизвестные препятствия.

Важным является разработка алгоритма, позволяющего мобильному роботу строить маршрут, перемещаясь по которому сканер на роботе сможет полностью покрыть исследуемую территорию, а также адаптировать маршрут при обнаружении новых препятствий. Такой маршрут должен обеспечивать безопасность робота и снижение кол-ва повторного сканирования одной и той же территории.

Мобильный робот проводит первое сканирование окружающей среды из начального положения и использует эти данные для первого обновления изначально пустой карты высот. Для сканирования территории используется радар. Зная местоположения робота, высоту установки радара на роботе и определённого им расстояния до объектов можно достаточно точно определить местоположение объекта для построения карты высот [1]. Затем робот определяет следующую точку сканирования в соответствии с алгоритмом, проложит к ней путь и проследует к ней по маршруту. Эти действия повторяются до тех

пор, пока не просканирована вся доступная территория для этого робота. После окончания сканирования могут оставаться неисследованные части из-за низкой проходимости текущего робота. Т.к. карта заранее неизвестна, то карта местности с маршрутом должна перестраиваться в зависимости от изменений после обновления карты высот.

Карта представляет окружающую среду в виде двухмерной сетки с клетками [2], которые имеют одинаковый размер и числовое значение веса представляющее информацию о реальной территории, которой она соответствует. Карта местности используется для определения проходимой территории и построения маршрута, за счёт аппроксимации получаемой во время сканирования карты высот в соответствующих квадратах, имеющих одинаковый размер [3]. Каждая клетка соответствует части реальной территории площадью в форме квадрата, где проходимость клетки задаётся максимальной высотой поверхности на этой территории. Уменьшение размеров квадратов территории, которым соответствует каждая клетка, увеличивает точность маршрута, но и пропорционально увеличивает количество таких клеток. Т.к. изначально территория нам неизвестна, то начальная карта местности будет пустой и лишь иметь данные о размере исследуемой территории введённой пользователем для ограничения зоны исследования.

Рассмотрим карту местности подробнее на примере с круглым роботом 0.25 м (рис. 1).

В данном примере за одну клетку берётся квадрат территории со стороной 0.05 м. Круглый робот R представлен красным кругом с диаметром 5 клеток. Препятствия обозначены чёрным цветом, а остальные клетки окрашены для отображения значения их веса. В связи с размерами робота выбрано безопасное расстояние до препятствия Ь0 = 3 кл за счёт увеличения размер препятствий во все стороны, обеспечивая тем самым вокруг робота безопасную квадратную зону со стороной 2* Ь0 + 1. В зависимости от габаритов робота и требований безопасности Ь0 может меняться, однако использование безопасной квадратной зоны со стороной меньшей диаметра робота может привести к столкновениям с препятствиями. Использование более высоких значений увеличит манёвренность, позволяя использовать более плавные повороты. Бесконечностью обозначается вес непроходимых клеток, а вес Ж остальных клеток определяется наибольшим значением соседних клеток и уменьшается на 1. Непроходимыми являются те клетки, которые имеют слишком большую для проходимости робота высоту, например, дерево для наземного робота. Плавно уменьшащийся вес от до 1 позволяет определять близость к препятствию. В примере используется = 3 кл.

X, ш

О_ 0.2______0.4_______0.6.______0.8___ 1 1.2 1.4____1.6

0.2

0.4

0.6

8 0.8 1

1.2

1.4

1.6

Рис. 1. Карта, представленная в виде двумерной сетки

Предлагаемый алгоритм полного покрытия сочетает и модифицирует в себе алгоритм D* от Stentz [4] и алгоритм РТ от 2еИшку [5]. Алгоритм D* это динамическая версия алгоритма А* [6], позволяющий строить маршрут между двумя точками и легко его корректировать при изменении карты [7]. Алгоритм РТ основан на волновом алгоритме и позволяет построить путь через все клетки статичной карты. Предлагаемый алгоритм полного покрытия дополняет алгоритм РТ за счёт замены волнового алгоритма на алгоритм D*, позволяя более быстро менять маршрут в часто изменяющейся среде, не пересчитывая параметры абсолютно всех клеток. Работа модифицированного алгоритма полного покрытия разделена на следующие 4 этапа: этап инициализации, этап поиска пути, этап перемещения и этап адаптации.

штм Уужшшш

■■■■ 'ЛШШШШ

■■■■ ■■■■ ввв^в ИЯЯЯШ

■нив ■■■■■■■■ ■■■■■■■■■■■■■■■■■■»■в ■■■■■■■■■■■■■■■■■■■■■■я штшпмштяшлъжшштш'аяпъжл Ж'Л ВВП шшшшшштш■■■»■■■¡■^■и ввввввввввншцвшввв 'ошжсж' "/ш № ш: ■ №ъ\т '¿ЖПМ %вввв ■■■■■ ■■■■■ ■■■■а ъ.яяяя 8ВВВВ ■ ■■■■ ■■■■я

■ ■■■ НИИ ■■■я штат тм 1НВ ГТг" %!ВВ^В ■ ■■■■

ЯЯЖШ ШЧШ'Л'ОМЪЖ ! о

ттяя шттШ'ШГ 0

в^вв шв 0 вввв

■■■■ 1

■ ■■■ 2 ■■■■■ в^в%вввв%вввввввввазвввв%;в%в^вв тмштшшкммжт^^ш». хтт ттшъжтшттт шгввввввввв»

□СЮ

□па □шо

I I

ч.

Вас ото

I. |В I

[□(п . р 6. о|а г о о --'И7

оаа Вра г

ах а

□Яр ппшв оЛоооеао пВввевип □□□□□с

О

111(1

Рис. 2. Поэтапное построение маршрута сканирования

Этап инициализации происходит до начала движения робота. Аналогично алгоритму D* обходятся все клетки на карте и для каждой определяются следующие параметры:

1. К — сумма расстояний до начальной и конечной клеток без учёта препятствий. Используется для определения отклонения от кратчайшей прямой между этими клетками.

2. Ь — длина пути до цели маршрута. Позволяет определять кратчайший путь до этой цели.

3. V — посещена ли клетка. Используется для снижения повторного перемещения по одной и той же территории.

4. — просканирована ли клетка. Позволяет ограничивать повторное сканирование, за счёт поиска пути через неисследованную территорию.

5. А — указатель на соседнюю клетку предка с наименьшим Ь. Используется для снижения повторных вычислений кратчайшего пути.

В итоге взвешенная карта представляется как древовидный граф, где каждой вершине соответствует клетка на карте с её параметрами и у каждой есть один предок А. Что позволяет при появлении новых препятствий быстро отрезать одну ветвь и прививать её к другой, изменяя при этом только параметры всех вершин первой ветви. После окончания этапа инициализации следует этап поиска пути.

Этап поиска пути заключается в пошаговом строительстве маршрута прокрывающего всю карту. В начала текущая вершина с устанавливается на место робота. Все клетки в квадратной зоне с центром в с и стороной Ьу = 2* Ь0 + 1 помечаются как посещённые, а в зоне со стороной ¿5 = где это радиус сканера робота, помечаются как просканированные. Далее выбираются не просканированные достижимые клетки кандидаты р на расстоянии +1 от с в каждом из четырёх направлений. Следующей точкой маршрута становится р с наименьшим Ь. Если р нет, то из с запускается дополнительный алгоритм D* для поиска и определения маршрута до ближайшей просканированной клетки, граничащей с не просканированной. В итоге после получения маршрута алгоритм переходит к этапу перемещения. Если же не осталось больше не просканированных достижимых вершин в графе, то алгоритм завершает свою работу. Пример работы на рис. 2.

Этап перемещения отвечает за движение робота к следующей точке маршрута для сканирования местности. Алгоритм перемещения зависит от типа робота. Мобильный робот поочерёдно получает координаты из списка клеток маршрута, что позволяет ему следовать маршруту. Если робот не направлен в сторону полученных координат, то поворачивается на месте в нужную сторону за счёт реверсивного поворота. После выравнивания на цель мобильный робот начинает движение вперёд, за счёт поворота обоих моторов в одну сторону. Если направление робота отклонилось больше заданного значения, то производится реверсивный поворот для корректировки направления. Как только расстояние между координатами мобильного робота и координатами узловой точки маршрута достигает заданного значения оба мотора останавливаются. Если робот получает следующие координаты, то эти действия повторяются. Для получения угла а на который нужно мобильному роботу повернуться, чтобы добраться из текущего положения в точке А (х1, у1) до определённой точки В (х2, у2) (рис. 3) [8], используется формула 1.

а^ап

ВС АС

^ап

У2~У 1

(1)

Рис. 3. Графическое отображение искомого угла а

Этап адаптации происходит при изменении веса на карте и заключается в переопределении для обновлённых клеток и их соседей параметров и предков. В древовидном графе все изменившиеся клетки обходятся по возрастанию Ь и К. Для всех веток клеток Ь, где корень имеет указатель А на клетки, которые стали препятствиями, очищаются и переопределяются указатель А и ключевые параметры как алгоритме D*. Если среди Ь остались не переопределённые клетки, то по возрастанию обходятся алгоритмом

D* переопределённые Ь. Если даже после этого остались не переопределённые вершины Ь, то они рассматриваются как недостижимые. После этого все вершины, ставшие препятствиями или недостижимыми, удаляются из графа. После чего происходит повторный этап поиска пути по обновлённой карте. Пример работы этапа адаптации приведён на рис. 4.

f • 6 i 8

3 4 5 - 6

2 3 4 5 6

1 f 3 4 5

о Щ 2 • 4

□□□ПИ

□пппп

ППППП U_Z_JH

□□□□и □□ппп □nunc]

C_Zji

о Ш 2 ' 3)4 0 1 2 ' 3 I 4

Рис. 4. Адаптация карты при обнаружении препятствий

Таким образом, был разработан модифицированный алгоритм полного покрытия. Алгоритм создаёт маршрут для мобильного робота, перемещение по которому будет проведено сканирование заданной территории. Появление в процессе движения новых препятствий на заранее неизвестной карте сделало невозможным одноразовый просчёт всего маршрута, для чего был создан этап адаптации маршрута к новым изменениям. Перерасчёт значений на всей карте при появлении каждого нового препятствия является трудоёмким процессом, поэтому клетки карты представлены в виде древовидной структуры, что позволяет перестраивать лишь задетую изменениями часть карты. Для снижения вероятности столкновения робота вокруг препятствий создаётся буферная зона на карте в соответствии с габаритами этого робота.

Список литературы

1. Rouveure R., Faure P. Monod M. PELICAN: Panoramic millimeter-wave radar for perception in mobile robotics applications, Part 1: Principles of FMCW radar and of 2D image construction. Robotics and Autonomous Systems, 2016.

2. Seder M., Petrovi'c I. Dynamic window based approach to mobile robot motion control in the presence of moving obstacles. In IEEE ICRA'07, 2007. 1986-1991.

3. Fankhauser P., Bloesch M., Gehring C., Hutter M. and Siegwart R. Robot-Centric Elevation Mapping with Uncertainty Estimates. Climbing and Walking Robots (CLAWAR), 2014.

4. Stentz A. Optimal and efficient path planning for partially-known environments. In IEEE ICRA'94, 1994. С. 3310-3317.

5. Zelinsky A., Jarvis R., Byrne J., Yuta S. Planning paths of complete coverage of an unstructured environment by a mobile robot. In Int. Conf. on Advanced Robotics (ICAR'93), 1993. P. 533-538.

6. Koenig S., Likhachev M., and Furcy D. (2005). Lifelong Planning A*. 2005. 62 p.

7. Stentz A. The Focused D* Algorithm for Real-Time Replanning. Proceedings of the International Joint Conference on Artificial Intelligence: 1995. P. 1652-1659.

8. Алешин Б.С., Веремеенко К.К., Черноморский А.И. Ориентация и навигация подвижных объектов. М.: Физматлит, 2006. 424 с.

Плаксин Сергей Игоревич, магистр, SergPl4xin@yandex.ru, Россия, Тула, Тульский государственный университет

MODIFIED ALGORITHM FOR MOBILE ROBOT NAVIGATION IN UNKNOWN TERRITORY FOR TERRAIN MAPPING

S.I. Plaksin

The paper considers a modified full coverage algorithm. This algorithm allows the mobile robot to create a route, following which all unknown territory will be mapped, as well as adapt it when new obstacles are detected. Algorithm was created on the basis of the PT algorithm using the D* algorithm to work with territory unknown beforehand.

Key words: mobile robot, complete coverage algorithm, unknown terrain, mapping.

Plaksin Sergei Igorevich, magister, SergPl4xin@yandex.ru, Russia, Tula, Tula State University

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.