Поддержка Gazebo нового поколения #2
Labels
No labels
construct
design
doc
incident
integration
moveit
problem
programming
research
RL
schematics
test
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: robossembler/runtime#2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Промониторив многие туториалы, гайды и сравнения пришёл к выводу, что некоторые функции Ignition остаются недоработанными на данный момент и не имеют реализации в сравнении с классической Gazebo, но в тоже время Ignition Gazebo имеет ряд преимуществ.
<gravity>0</gravity>
в SDF применимом в Ignition Gazebo не работает, вот ссылка, это существенная проблема, иначе придётся рассчитывать коэффициенты PID регулирования к каждому звену манипулятора, также при различных инструментах;ros_ign_bridge
, что вполне реализуемо и в принципе инструмент вполне задокументирован и не является чёрным ящиком. Если сравнивать с классической Gazebo, то там интеграция она бесшовная и запустив ROS2 можно запросто загрузить робота в сцену из обычного топикаrobot_description
@movefasta
changed the description
changed the description
Предлагаю попробовать рассмотреть в качестве временной альтернативы Unity3D.
В данный момент Unity позволяет:
Недостатками являются:
Вот ещё проект, соединяющий напрямую ROS2 и Unity без веб-бриджа
https://github.com/RobotecAI/ros2-for-unity
На данный момент ros2-for-unity поддерживает только node publisher/subscriber и не поддерживает service, actions. См. https://github.com/RobotecAI/ros2cs/issues/1
@iakzhivov
changed title from {-Текущие проблемы реализации-} Ignition Gazebo для симуляции to {+Переход на+} Ignition Gazebo для симуляции
marked this issue as related to roboarm#5
mentioned in issue #17
assigned to @solid-sinusoid
changed title from Переход на Ignition Gazebo{- для симуляции-} to Переход на Ignition Gazebo
В ходе запуска и отладки обнаружилась ошибка в пакете
ign_ros2_control
Создали issue, ждём обратной связи
Ну проблема решена практически в поной мере, в данном ответе пишется особенность текущей реализации контроллеров, которые нужны для хорошей интеграцией с Ignition Gazebo.
То есть на данный момент препятствий переходу к Ignition Gazebo нет?
Препятствия остаются лишь в том, что не получается отправить команды контроллеру и робот в симуляции падает, всё никак не пойму в чём проблема. Вообще смотрю возможные аналоги, возможно нам придётся немного поменять точку зрения на Ignition. Основываясь на том, что нам придётся в той или иной мере интегирировать gym или universe для обучения с подкреплением, можно сделать вывод о том, что лучшим наверное будет рассмотреть mujoco, но его интеграция с ROS2 пока оставляет желать лучшего. В целом ROS2 нам нужен для более простой интеграции с железом. gym-ignition уже как 7 месяцев не обновлялся и кажется что не такой актуальный, если конечно он не является универсальным и подходить на все последние версии ignition. gym в mujoco в данный момент активно развиваются и я вижу больше перспектив в этом подходе.
changed title from П{-ереход на Ignition Gazebo-} to П{+оддержка Gazebo нового поколения+}
unassigned @solid-sinusoid
assigned to @solid-sinusoid
changed due date to January 23, 2023
changed time estimate to 40h
added 1m of time spent
removed the relation with roboarm#5
added 26h of time spent
Задача реализована в качестве докер контейнера со всем нашим функционалом. Необходимо открыть MR с нашим роботом и дополнительным функционалов в качестве #57 и минимальным набором для функционала для Gazebo Fortress симулятора.
Ссылка на докер для предварительного тестирования
Краткая инструкция. Взять файл по ссылкe
Необходима видеокарта и драйвера nvidia, а также nvidia-docker
@Splinter1984, я открою MR который будет содержать пример с нашим роботом, туда нужно будет добавить результаты #57
marked this issue as blocked by #57
Стоит учесть, что сборка работает на rolling. По хорошему бы использовать humble т.к. расширяясь, остальные пакеты могут быть нестабильны
Вот ишью по проблемы существования бинарников для gz_ros2_control для humble
https://github.com/ros-controls/gz_ros2_control/issues/82
Всем, кроме plansys?
Зачем там nvidia?
Plansys нет так как он нам и не нужен для этого. Кажется твоя цитата @movefasta была
Nvidia чтобы GUI в контейнере вывести, без этого графического интерфейса не будет. Пока что он нам нужен, убрать GUI уже рассматриваю не как мою задачу, а как задачу связанную с укомплектовкой в nix для автоматизированного рантайма
changed due date to January 31, 2023
added 3h of time spent
Проект запущен на humble полностью с небольшим изменением исходного кода gz_ros2_control
Следующий шаг: Исправляю нейминг всех папок и неймспейсов в репозитории, убираю лишнее, заливаю форк к себе исправленного gz_ros2_control и открываю MR
mentioned in merge request !27
Сборка нового Gazebo (gardens) в nix будет выполняться в рамках задачи https://gitlab.com/robossembler/nix-robossembler-overlay/-/issues/1