Что такое хороший симулятор робототехники?

Так что в настоящее время я провожу некоторые исследования в области робототехники, и у нас в лаборатории есть специальная рука, которую мы хотели бы смоделировать. Я провел небольшой поиск в гугле и википедии, и кажется, что существует достаточно много открытых и закрытых приложений для того, что мне нужно, таких как Gazebo, LpzRobots, Webots, RoboLogix и другие. Наши основные инструменты исследования находятся в C++ и взаимодействуют по сети.

Мой вопрос: есть ли у кого-нибудь опыт работы с симуляторами робототехники? Можете ли вы порекомендовать, к какому из них я должен стремиться, или я должен просто взять и начать писать свой с нуля? Моим основным использованием для этого будет тестирование планирования движения (поэтому я хотел бы иметь возможность точно контролировать положение робота, не беспокоясь о динамике) и тестирование динамики контроллера (как раз наоборот) для пользовательского робота с кинематической цепью.

4 ответа

У Microsoft Robotics есть MS Robotics Studio, которая представляет собой полный набор инструментов для роботов любого типа... БПЛА, БПЛА, Манипуляторов и т. Д.

Одним из таких инструментов является VSE (Visual Simulation Environment), основанная на механическом движке AGEIA, который позволяет моделировать не только кинематику вашего робота, но и моделирование датчиков и окружающей среды.

Они могут даже иметь 3D-модель руки, которую вы используете, я знаю, что у них есть модель для KUKA LBR3, например.

http://i.msdn.microsoft.com/Bb483076.image001(en-us,MSDN.10).jpg

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

С учетом сказанного, у меня был положительный опыт, это Gazebo и движок с открытой динамикой (если вы используете Matlab для симуляции). Я определенно рекомендовал бы использовать Беседку в сочетании с ROS. Они оба становятся все более стандартными и постоянно совершенствуются. Существуют уже существующие симуляции, на которых вы можете опираться, например, на неустойчивого робота (для двухколесных платформ с дифференциальным приводом) и PR2 (для платформ гуманоидного типа). Если вы просто хотите выполнять проверку столкновений и кинематику, то я бы порекомендовал использовать rviz и формат urdf в ROS. Очень легко начать и очень хорошо проверено.

Кстати, в прошлом я использовал Microsoft Robotics Developers Studio, и она не так хороша, как ROS. Я знаю, что у них есть новая версия, которая исправляет многие из их предыдущих проблем, но нет никакого смысла, потому что у нее нет обширной базы кода или сообщества, которое есть у ROS.

Если вы знакомы с языком программирования C++, WEBOTS, ROBOWORKS, V-REP являются как минимум тремя совместимыми с C++ программами моделирования. Полный список с роботизированным программным обеспечением моделирования здесь

Я недавно играл с SimSpark. Это платформа, которая используется в RoboCup 3D Simulated Soccer League.

Другие вопросы по тегам