Приведение модели робота в имитационную среду.

  • Home
  • blog
  • Приведение модели робота в имитационную среду.
blog image

Приведение модели нашего робота в имитационную среду.

Первой задачей было привести нашу трёхмерную модель робота к имитации так, что мы можем, наконец, начать экспериментировать с самостоятельным вождением в имитации. Gazebo является подходящим для нас окружением, поэтому нам нужно было определить нашу модель Робота в формате .dae. Изначально наша модель робота разрабатывалась при помощи Solid Edge ST2 в формате .stl, который потом был конвертирован в .dae с использованием Blender.

Для связи мы планируем широко использовать ROS. Первый вопрос, который возникает при использовании ROS и Gazebo, как вы желаете использовать их: локально или с использованием облачных платформ, таких как ROS Development studio.

Хотя разработка студии развития ROS уже была полезна для нас в плане обучения, на данном этапе мы решили продолжать с местной установкой. Второй вопрос касается того, какие версии использовать. ROS недавно опубликовали усовершенствованный вариант платформы ROS 2 версии Eloquent Elusor, приемлемым вариантом на данном этапе. Какой из них следует использовать? Мы обязательно вернёмся к этому позже, но сейчас остановимся на наиболее широко используемой версии ROS Melodic. Поэтому наша схема выглядит следующим образом:

Основываясь на этом прекрасном пособии по созданию виртуальной модели робота на колёсах Илона, мы создали первый имитационный прототип робота, который мог двигаться. Gazebo требует двух различных аспектов, определяемых для робота: визуальные эффекты, которые определяют внешний вид робота и столкновения, которые определяют фактическое физическое поле столкновения. Оба могут использовать одни и те же смешанные файлы, но, если размер файла большой, он может заметно замедлить имитацию. Поскольку наш файл .dae был свыше 600 Мб в размере, нам нужно было определить модель коллизий нашего робота с использованием простых геометрических форм (см. изображение ниже), тогда как зрительные образы были прямо импортированы из файла .dae. Поскольку файл, используемый для визуальных эффектов, всё равно огромен, то симуляция загружалась и работала заметно медленнее. Их полное удаление увеличило fps с ~10 до 60. Нам точно придётся сильно упростить нашу визуальную модель с тем, чтобы симуляция работала эффективно.

В Gazebo, физика робота определяется коллизиями (оранжевые) и текстурами с визуальными эффектами (белые).

Используя интеграцию ROS в Gazebo, нам удалось получить симуляцию робота, которым можно управлять при помощи телеопераций. Mecanum — колёса  делают робота голономичным, позволяя осуществлять “strafing”-движение, что сильно расширяет возможности робота. Движения этих колёс осуществлялись с использованием Planar Move Plugin

Мы провели короткий тест на движение и столкновения робота на симуляции парковки, который можно посмотреть ниже. Визуальная модель и столкновения со стеной в режиме стрейфинга всё ещё нереалистичны, так что есть вопросы, которыми мы займёмся далее. Но в целом, вождение стабильное, и робот уже может многое, так что мы теперь можем экспериментировать с датчиками, камерами и самостоятельным вождением!Mecynum

YouTube

By loading the video, you agree to YouTube's privacy policy.
Learn more

Load video

Начальный тест на вождение на симуляции парковки с использованием телеопераций ROS для управления роботом.