РАЗРАБОТКА И ИМПЛЕМЕНТАЦИЯ СИСТЕМЫ УПРАВЛЕНИЯ И СЦЕНАРИЕВ АВТОНОМНОГО ДВИЖЕНИЯ МОБИЛЬНОГО РОБОТА АВРОРА ЮНИОР
|
ВВЕДЕНИЕ 5
1 ОБЗОР ЛИТЕРАТУРЫ 9
2 СИСТЕМА УПРАВЛЕНИЯ ЦЕПЯМИ ПОСТАВОК 20
2.1 Задачи систем управления цепями поставок 21
2.2 Автоматизация задач SCM систем 22
2.3 Кейс: проблема последнего километра 23
2.4 Идея решения кейса 25
2.4.1 Доказательство целесообразности решения 25
2.4.2 Описание предлагаемого решения 27
2.4.3 Требования к решению 28
2.4.4 Альтернативные решения 30
3 ПРОГРАММНЫЙ ИНСТРУМЕНТАРИЙ 33
3.1 ROS 33
3.2 Gazebo 34
3.3 Rviz 35
4 МОДЕЛИРОВАНИЕ МОБИЛЬНОГО РОБОТА «ЮНИОР» 36
4.1 Мобильный робот Аврора «Юниор 37
4.1.1 Физические характеристики робомобиля 39
4.2 Моделирование основных элементов робомобиля 39
4.3 Суставы, моторы и трансмиссия модели 40
4.4 Симуляция датчиков 42
4.5 Настройка ПИД регуляторов модели робота 43
4.5.1 Понятие ПИД регулятора 43
4.5.2 Метод Зиглера-Никольса для настройки ПИД регулятора 46
4.5.3 Настройка ПИД регулятора для модели 47
5 ОРГАНИЗАЦИЯ КОНТРОЛЯ МОДЕЛИ РОБОТА «ЮНИОР» 50
5.1 Принцип рулевого управления и геометрии Акерманна 50
5.2 Разработка контроля рулевого управления модели робота 51
6 СИСТЕМА НАВИГАЦИИ ДЛЯ МОБИЛЬНОГО РОБОТА «ЮНИОР» 54
6.1 Система навигации в ROS 54
6.1.1 Модуль move_base 56
6.1.2 Необходимые компоненты системы навигации 57
6.2 Преобразование сигналов системы навигации в сигналы управления
робомобилем 58
6.3 Корректировка данных с лазера модели робота 58
6.4 Конфигурация локального планировщика 59
6.4.1 Конфигурация робота 62
6.4.2 Точность конечной позиции 63
6.4.3 Конфигурация траектории 63
6.4.4 Конфигурация препятствий 65
6.4.5 Параметры оптимизации 67
6.4.6 Конфигурация планирования в особых топологиях 68
6.4.7 Другие параметры 69
6.5 Конфигурация глобального планировщика 70
6.6 Конфигурация карт стоимости планировщика 71
6.6.1 Понятие карты стоимости 71
6.6.2 Общая конфигурация карт стоимостей 74
6.6.3 Конфигурация глобальной карты стоимости 75
6.6.4 Конфигурация локальной карты стоимости 75
6.7 Апробация системы навигации в Rviz 76
7 КОНЦЕПЦИЯ РЕШЕНИЯ КЕЙСА 78
7.1 Создание мира в Gazebo 78
7.2 Апробация автономной навигации робота в точки доставок 79
8 ДАЛЬНЕЙШИЕ ПЛАНИРУЕМЫЕ ИССЛЕДОВАНИЯ 81
8.1 Разработка системы управления движением робомобиля 81
8.2 Имплементация ROS пакетов системы навигации 82
8.3 Апробация задачи последнего километра в искусственных городских условиях 83
ЗАКЛЮЧЕНИЕ 85
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 87
ПРИЛОЖЕНИЯ 95
1 ОБЗОР ЛИТЕРАТУРЫ 9
2 СИСТЕМА УПРАВЛЕНИЯ ЦЕПЯМИ ПОСТАВОК 20
2.1 Задачи систем управления цепями поставок 21
2.2 Автоматизация задач SCM систем 22
2.3 Кейс: проблема последнего километра 23
2.4 Идея решения кейса 25
2.4.1 Доказательство целесообразности решения 25
2.4.2 Описание предлагаемого решения 27
2.4.3 Требования к решению 28
2.4.4 Альтернативные решения 30
3 ПРОГРАММНЫЙ ИНСТРУМЕНТАРИЙ 33
3.1 ROS 33
3.2 Gazebo 34
3.3 Rviz 35
4 МОДЕЛИРОВАНИЕ МОБИЛЬНОГО РОБОТА «ЮНИОР» 36
4.1 Мобильный робот Аврора «Юниор 37
4.1.1 Физические характеристики робомобиля 39
4.2 Моделирование основных элементов робомобиля 39
4.3 Суставы, моторы и трансмиссия модели 40
4.4 Симуляция датчиков 42
4.5 Настройка ПИД регуляторов модели робота 43
4.5.1 Понятие ПИД регулятора 43
4.5.2 Метод Зиглера-Никольса для настройки ПИД регулятора 46
4.5.3 Настройка ПИД регулятора для модели 47
5 ОРГАНИЗАЦИЯ КОНТРОЛЯ МОДЕЛИ РОБОТА «ЮНИОР» 50
5.1 Принцип рулевого управления и геометрии Акерманна 50
5.2 Разработка контроля рулевого управления модели робота 51
6 СИСТЕМА НАВИГАЦИИ ДЛЯ МОБИЛЬНОГО РОБОТА «ЮНИОР» 54
6.1 Система навигации в ROS 54
6.1.1 Модуль move_base 56
6.1.2 Необходимые компоненты системы навигации 57
6.2 Преобразование сигналов системы навигации в сигналы управления
робомобилем 58
6.3 Корректировка данных с лазера модели робота 58
6.4 Конфигурация локального планировщика 59
6.4.1 Конфигурация робота 62
6.4.2 Точность конечной позиции 63
6.4.3 Конфигурация траектории 63
6.4.4 Конфигурация препятствий 65
6.4.5 Параметры оптимизации 67
6.4.6 Конфигурация планирования в особых топологиях 68
6.4.7 Другие параметры 69
6.5 Конфигурация глобального планировщика 70
6.6 Конфигурация карт стоимости планировщика 71
6.6.1 Понятие карты стоимости 71
6.6.2 Общая конфигурация карт стоимостей 74
6.6.3 Конфигурация глобальной карты стоимости 75
6.6.4 Конфигурация локальной карты стоимости 75
6.7 Апробация системы навигации в Rviz 76
7 КОНЦЕПЦИЯ РЕШЕНИЯ КЕЙСА 78
7.1 Создание мира в Gazebo 78
7.2 Апробация автономной навигации робота в точки доставок 79
8 ДАЛЬНЕЙШИЕ ПЛАНИРУЕМЫЕ ИССЛЕДОВАНИЯ 81
8.1 Разработка системы управления движением робомобиля 81
8.2 Имплементация ROS пакетов системы навигации 82
8.3 Апробация задачи последнего километра в искусственных городских условиях 83
ЗАКЛЮЧЕНИЕ 85
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 87
ПРИЛОЖЕНИЯ 95
В последние 20-25 лет появилась область робототехники, которая сосредоточена на разработке новых автомобилей, называемых интеллектуальными транспортными средствами (ТС). На сегодняшний день автомобиль является одним из самых важных изобретений двадцатого века. В мире насчитывается более 800 миллионов автомобилей, и ожидается, что это число удвоится в ближайшие десять лет [1]. Это обстоятельство повлекло за собой активную разработку методов автоматизации типовых задач, выполняемых людьми в процессе вождения.
Определим интеллектуальное транспортное средство как транспортное средство, оснащенное устройствами восприятия, принятия решения и контроля, которые позволяют автоматизировать задачи вождения. В задачи вождения включаются: безопасное следование полосам движения по правилам дорожного движения; объезд всевозможных препятствий, включая обгон других транспортных средств; отслеживание поведения окружающих объектов c оценкой вероятности возникновения опасной ситуаций на дороге; следование по маршруту, определённому пользователем. Такое решение разрабатывается для обеспечения безопасности и удобства пассажиров.
Интеграция интеллектуальных ТС в жизнь человечества находится на начальном уровне. Технологии и методы для беспилотных транспортных средств все еще находятся на стадии апробации в реальных условиях. Разработка интеллектуальных беспилотных автомобилей является популярным
направлением исследований среди крупных автомобильных компаний BMW [2], Tesla [3], а также ИТ-компаний - Яндекс [4], Google [5], Baidu (проект Apollo) [6], Uber [7].
Применение автономных ТС в других задачах (помимо перевозки пассажиров) так же вызывает интерес крупных инвестиционных компаний. Исследования ведутся в таких отраслях экономики, как:
• сельское хозяйство,
• добыча полезных ископаемых,
• строительство,
• поисково-спасательные работы,
• многие другие [1] [8].
Основной мотивацией для автоматизации такого типа задачи как управление ТС является снижение расходов на персонал, увеличение количества времени работы и исключение негативных человеческих факторов. Вопрос о целесообразности применения труда человека или робота, не имеет универсального ответа и рассматривается индивидуально в каждом частном случае.
Важно отметить, что с течением времени технология роботизации ТС нашла применение в области менеджмента и логистики - системе управления цепями поставок (далее SCM система) [9]. В частности, в последнее время актуальным становится решение задачи последнего километра, т.е. доставка товара со склада непосредственно конечному получателю [10]. В связи с желанием сократить ресурсные и временные затраты на доставку в конечные точки традиционным способом (человек-курьер), транспортные компании рассматривают альтернативные подходы, использующие беспилотные транспортные средства: беспилотные летательные аппараты (БЛА) и
беспилотные наземные роботы (БНР) [11].
В данной работе рассматривается решение задачи последнего километра на основе мобильного робота российской компании «Юниор», включающее создание реалистичной модели робота, и последующая апробация модели для решения задачи доставки. Этап создания модели включает в себя как компьютерное моделирование, так и разработку системы управления роботом, включая проектирование контроллеров приводов и системы автономной навигации и ориентирования. Подробное обоснование поставленных задач приводится главах 2 и 4.
Необходимо отметить, что для робота «Юниор» отсутствует компьютерная модель для моделирования реалистичного поведения. Производителем робота предоставляются только базовые пакеты для управления движением колес робота и доступа к показаниям бортовых датчиков робота для использования в системе ROS. Вследствие этого, данная работа несет существенную научно-практическую новизну, реализуя реалистичную модель робота, систему автономной навигации и пример технологического решения проблемы последнего километра.
Данная работа состоит из нескольких этапов:
1) Обзор литературы. Изучение и анализ научных работ по тематике беспилотного транспорта и методов решения интеллектуальных задач для мобильных роботов.
2) Система управления цепями поставок. Этот этап включает определение понятий и перечня решаемых задач. Подробный анализ задач, которые могут быть эффективно решены методами робототехники. Формулировка решения кейса доставки товаров на базе мобильного робота «Юниор».
3) Модель мобильного робота «Юниор». Этот этап содержит описание процесса моделирования робота для среды Gazebo, включая определение значения параметров ПИД регулятора для каждого из приводов.
4) Система управления роботом «Юниор». Расширение модели робота набором нод, отвечающих за высокоуровневый контроль рулевыми и приводными колесами робота.
5) Система автономной навигации мобильного робота «Юниор». Конфигурирование подходящих и реализация отсутствующих необходимых элементов системы автономной навигации для робота «Юниор».
6) Моделирование решения кейса доставки. Использование разработанной системы для моделирования варианта решения задачи последнего километра.
7) Выводы и планируемые исследования. Выводы о проделанной работе, направления последующих исследований и смежных тем.
Определим интеллектуальное транспортное средство как транспортное средство, оснащенное устройствами восприятия, принятия решения и контроля, которые позволяют автоматизировать задачи вождения. В задачи вождения включаются: безопасное следование полосам движения по правилам дорожного движения; объезд всевозможных препятствий, включая обгон других транспортных средств; отслеживание поведения окружающих объектов c оценкой вероятности возникновения опасной ситуаций на дороге; следование по маршруту, определённому пользователем. Такое решение разрабатывается для обеспечения безопасности и удобства пассажиров.
Интеграция интеллектуальных ТС в жизнь человечества находится на начальном уровне. Технологии и методы для беспилотных транспортных средств все еще находятся на стадии апробации в реальных условиях. Разработка интеллектуальных беспилотных автомобилей является популярным
направлением исследований среди крупных автомобильных компаний BMW [2], Tesla [3], а также ИТ-компаний - Яндекс [4], Google [5], Baidu (проект Apollo) [6], Uber [7].
Применение автономных ТС в других задачах (помимо перевозки пассажиров) так же вызывает интерес крупных инвестиционных компаний. Исследования ведутся в таких отраслях экономики, как:
• сельское хозяйство,
• добыча полезных ископаемых,
• строительство,
• поисково-спасательные работы,
• многие другие [1] [8].
Основной мотивацией для автоматизации такого типа задачи как управление ТС является снижение расходов на персонал, увеличение количества времени работы и исключение негативных человеческих факторов. Вопрос о целесообразности применения труда человека или робота, не имеет универсального ответа и рассматривается индивидуально в каждом частном случае.
Важно отметить, что с течением времени технология роботизации ТС нашла применение в области менеджмента и логистики - системе управления цепями поставок (далее SCM система) [9]. В частности, в последнее время актуальным становится решение задачи последнего километра, т.е. доставка товара со склада непосредственно конечному получателю [10]. В связи с желанием сократить ресурсные и временные затраты на доставку в конечные точки традиционным способом (человек-курьер), транспортные компании рассматривают альтернативные подходы, использующие беспилотные транспортные средства: беспилотные летательные аппараты (БЛА) и
беспилотные наземные роботы (БНР) [11].
В данной работе рассматривается решение задачи последнего километра на основе мобильного робота российской компании «Юниор», включающее создание реалистичной модели робота, и последующая апробация модели для решения задачи доставки. Этап создания модели включает в себя как компьютерное моделирование, так и разработку системы управления роботом, включая проектирование контроллеров приводов и системы автономной навигации и ориентирования. Подробное обоснование поставленных задач приводится главах 2 и 4.
Необходимо отметить, что для робота «Юниор» отсутствует компьютерная модель для моделирования реалистичного поведения. Производителем робота предоставляются только базовые пакеты для управления движением колес робота и доступа к показаниям бортовых датчиков робота для использования в системе ROS. Вследствие этого, данная работа несет существенную научно-практическую новизну, реализуя реалистичную модель робота, систему автономной навигации и пример технологического решения проблемы последнего километра.
Данная работа состоит из нескольких этапов:
1) Обзор литературы. Изучение и анализ научных работ по тематике беспилотного транспорта и методов решения интеллектуальных задач для мобильных роботов.
2) Система управления цепями поставок. Этот этап включает определение понятий и перечня решаемых задач. Подробный анализ задач, которые могут быть эффективно решены методами робототехники. Формулировка решения кейса доставки товаров на базе мобильного робота «Юниор».
3) Модель мобильного робота «Юниор». Этот этап содержит описание процесса моделирования робота для среды Gazebo, включая определение значения параметров ПИД регулятора для каждого из приводов.
4) Система управления роботом «Юниор». Расширение модели робота набором нод, отвечающих за высокоуровневый контроль рулевыми и приводными колесами робота.
5) Система автономной навигации мобильного робота «Юниор». Конфигурирование подходящих и реализация отсутствующих необходимых элементов системы автономной навигации для робота «Юниор».
6) Моделирование решения кейса доставки. Использование разработанной системы для моделирования варианта решения задачи последнего километра.
7) Выводы и планируемые исследования. Выводы о проделанной работе, направления последующих исследований и смежных тем.
Данная работа предлагает концепцию решения проблемы последнего километра. Проблема последнего километра описывает задачу доставки товара из единой транспортной точки в конечную точку назначения. Так как серьезные затраты на осуществление доставок в конечную точку являются проблемой многих транспортных компаний, в настоящий момент разрабатываются пути решения этой проблемы. Одно из инновационных направлений - использование роботов в качестве автономных интеллектуальных агентов, которые будут доставлять товары в несколько точек в населенном пункте.
Робот «Юниор» является малоразмерным мобильным роботом с рулевой системой управления. Такая система управления присутствует в полно-размерных автомобилях. Дополнительно, в робомобиле присутствует верхняя крышка, под которой располагается пространство для возможного хранения товаров для доставки. Такой мобильный робот является потенциальным решением для поставленной задачи. Однако для её решения необходимо разработать соответствующее базовое и специфичное цели программное обеспечение робота: создание модели робота, настройка системы навигации, апробация решения последнего километра в симуляции. Необходимость разработки базового ПО заключается в том, что компания- производитель предоставляет минимальный набор ROS-пакетов, которые позволяют только получать данные с датчиков и посылать команды на моторы робота.
Для создания модели робота использовался симулятор Gazebo, интегрированный в ROS. Созданная модель соответствует реальным размерам робота, его массовым характеристикам элементами, наличию сенсоров. По завершении этапа моделирования была подготовлена и написана научная публикация для международной конференции «International Conference on
Artificial Life and Robotics» ICAROB [58]. Статья была принята к печати и будет индексирована в БД Scopus.
Далее для модели робота был настроен Система навигации (глобальный планировщик, локальный планировщик, конфигурации карт стоимостей), проведены первичные эксперименты в симуляции. Для будущей апробации задачи последнего километра был создан виртуальный мир с имитацией городской среды и девятью различными целями в нем.
Предложенное решение демонстрирует концепт автоматизированного последнего километра и может быть развит как полноценный проект на реальном роботе «Юниор». Идеи и план по дальнейшей реализации рассмотрены в главе
8. Весь исходный код, использованная литература и статья для ICAROB 2019 загружены в систему контроля версий GitLab: http://gititis.kpfu.ru/XEN/lirs- development-junior-car.
Робот «Юниор» является малоразмерным мобильным роботом с рулевой системой управления. Такая система управления присутствует в полно-размерных автомобилях. Дополнительно, в робомобиле присутствует верхняя крышка, под которой располагается пространство для возможного хранения товаров для доставки. Такой мобильный робот является потенциальным решением для поставленной задачи. Однако для её решения необходимо разработать соответствующее базовое и специфичное цели программное обеспечение робота: создание модели робота, настройка системы навигации, апробация решения последнего километра в симуляции. Необходимость разработки базового ПО заключается в том, что компания- производитель предоставляет минимальный набор ROS-пакетов, которые позволяют только получать данные с датчиков и посылать команды на моторы робота.
Для создания модели робота использовался симулятор Gazebo, интегрированный в ROS. Созданная модель соответствует реальным размерам робота, его массовым характеристикам элементами, наличию сенсоров. По завершении этапа моделирования была подготовлена и написана научная публикация для международной конференции «International Conference on
Artificial Life and Robotics» ICAROB [58]. Статья была принята к печати и будет индексирована в БД Scopus.
Далее для модели робота был настроен Система навигации (глобальный планировщик, локальный планировщик, конфигурации карт стоимостей), проведены первичные эксперименты в симуляции. Для будущей апробации задачи последнего километра был создан виртуальный мир с имитацией городской среды и девятью различными целями в нем.
Предложенное решение демонстрирует концепт автоматизированного последнего километра и может быть развит как полноценный проект на реальном роботе «Юниор». Идеи и план по дальнейшей реализации рассмотрены в главе
8. Весь исходный код, использованная литература и статья для ICAROB 2019 загружены в систему контроля версий GitLab: http://gititis.kpfu.ru/XEN/lirs- development-junior-car.



