| эта статья возможно содержит оригинальные исследования. Пожалуйста Улучши это от проверка заявленные претензии и добавление встроенные цитаты. Заявления, содержащие только оригинальные исследования, следует удалить. (Август 2014 г.) (Узнайте, как и когда удалить этот шаблон сообщения) |
А симулятор робототехники симулятор, используемый для создания приложения для физического робот независимо от конкретной машины, что позволяет сэкономить средства и время. В некоторых случаях эти приложения можно перенести на физического робота (или перестроить) без изменений.
Период, термин симулятор робототехники может относиться к нескольким различным приложениям моделирования робототехники. Например, в мобильная робототехника Приложения, поведенческая робототехника Симуляторы позволяют пользователям создавать простые миры из твердых объектов и источников света и программировать роботов для взаимодействия с этими мирами. Моделирование на основе поведения позволяет выполнять действия, которые являются более биологическими по своей природе по сравнению с симуляторами, которые являются более двоичными или вычислительными. Кроме того, симуляторы, основанные на поведении, могут «учиться» на ошибках и демонстрировать антропоморфный качество упорства.
Одно из самых популярных приложений для симуляторов робототехники - 3D моделирование и рендеринг робота и его окружения. В этом типе программного обеспечения для робототехники есть симулятор, который является виртуальным роботом, который способен имитировать движение реального робота в реальной рабочей среде. Некоторые тренажеры робототехники используют физический движок для более реалистичного движения робота. Использование симулятора робототехники для разработки программы управления робототехникой настоятельно рекомендуется независимо от того, доступен ли настоящий робот или нет. Симулятор позволяет удобно писать программы робототехники и отлаженный в автономном режиме с финальной версией программы, протестированной на реальном роботе. В первую очередь это относится к промышленный робот только для приложений, поскольку успех автономного программирования зависит от того, насколько реальная среда робота похожа на смоделированную среду.
На основе сенсора Действия робота гораздо сложнее моделировать и / или программировать в автономном режиме, поскольку движение робота зависит от мгновенных показаний датчика в реальном мире.
Функции
Современные тренажеры, как правило, обладают следующими характеристиками:
- Быстрое прототипирование роботов
- Использование собственного симулятора в качестве инструмента для создания.
- Использование внешних инструментов.
- Физические движки для реалистичных движений. Большинство тренажеров используют Пуля, ODE или PhysX.
- Реалистичный 3d-рендеринг. Стандартные инструменты 3D-моделирования или сторонние инструменты могут использоваться для создания сред.
- Динамические тела роботов со сценариями. C, C ++, Perl, Python, Ява, URBI, MATLAB языки, используемые веботами, Python используется Gazebo.
Симуляторы
Среди новейших технологий, доступных сегодня для программирования, есть те, которые используют виртуальное моделирование. Моделирование с использованием виртуальных моделей рабочей среды и самих роботов может дать преимущества как компании, так и программисту. Использование моделирования снижает затраты, и роботов можно программировать в автономном режиме, что исключает время простоя сборочной линии. Действия роботов и сборочные детали можно визуализировать в трехмерной виртуальной среде за несколько месяцев до того, как будут созданы прототипы. Написать код для моделирования также проще, чем написать код для физического робота. Хотя переход к виртуальному моделированию программирования роботов - это шаг вперед в разработке пользовательского интерфейса, многие такие приложения находятся только в зачаточном состоянии.
Главная Информация
Программного обеспечения | Разработчики | Статус разработки | Лицензия | Механизм 3D-рендеринга | Физический движок | 3D модельер | Поддерживаемые платформы |
---|
Беседка | Фонд робототехники с открытым исходным кодом (OSRF) | Активный | Apache 2.0 | ОГРЭ | ODE /Пуля /Симбоди /DART | Внутренний | Linux, macOS, Windows |
---|
РобоДК | РобоДК | Активный | Проприетарный | OpenGL | Плагин Gravity | Внутренний | Linux, macOS, Windows, Android, iOS, Debian |
---|
SimSpark | O. Obst et al. (+26) | Активный | GNU GPL (v2) | Внутренний | ODE | Никто | Linux, macOS, Windows |
Webots | Cyberbotics Ltd. | Активный | Apache 2.0 | Внутренний (WREN) | Вилка ODE | Внутренний | Linux, macOS, Windows |
---|
OpenRAVE | Сообщество OpenRAVE | Активный | GNU LGPL | Coin3D /OpenSceneGraph | ODE /Пуля | Внутренний | Linux, macOS, Windows |
Программного обеспечения | Разработчики | Статус разработки | Лицензия | Механизм 3D-рендеринга | Физический движок | 3D модельер | Поддерживаемые платформы |
---|
Техническая информация
Программного обеспечения | Основной язык программирования | Поддержка форматов | Расширяемость | Внешние API | Промежуточное ПО для робототехники поддержка | Основной пользовательский интерфейс | Безголовое моделирование |
---|
Беседка | C ++ | SDF[1]/ URDF[2], OBJ, STL, Collada | Плагины (C ++) | C ++ | ROS, Player, Sockets (сообщения protobuf) | GUI | да |
---|
РобоДК | Python | SLDPRT, SLDASM, ШАГ, OBJ, STL, 3DS, Collada, VRML, URDF, Носорог_3D, ... | API[3], Подключаемый интерфейс[4] | Python, C / C ++, C #, Matlab, ... | Разъем | GUI | Неизвестно |
---|
SimSpark | C ++, Ruby | Графики сцены Ruby | Моды (C ++) | Сеть (sexpr ) | Розетки (sexpr ) | GUI, сокеты | Неизвестно |
---|
Webots | C ++ | WBT, VRML, X3D, 3DS, Блендер, BVH, Collada, FBX, STL, OBJ, URDF | API, протоколы, плагины (C / C ++) | C, C ++, Python, Java, Matlab, ROS | Розетки, ROS, NaoQI | GUI | да[5] |
---|
OpenRAVE | C ++, Python | XML, VRML, OBJ, Collada | Плагины (C ++), API | C / C ++, Python, Matlab | Розетки, РОС, ЯРП | GUI, сокеты | да |
---|
Программного обеспечения | Основной язык программирования | Поддержка форматов | Расширяемость | Внешние API | Поддержка роботизированного промежуточного программного обеспечения | Основной пользовательский интерфейс | Безголовое моделирование |
---|
Инфраструктура
Поддержка
Качество кода
Программного обеспечения | Проверка статического кода | Проверка стиля | Тестовая система (ы) | Покрытие тестовой функции | Покрытие Test Branch | Строки кода | Строки комментариев | Непрерывная интеграция |
---|
Беседка | cppcheck[33] | cpplint[33] | gtest и qtest[33] | 77.0%[33] | 53.3%[33] | 320 тыс.[33] | 106 тыс.[33] | Дженкинс[33] |
---|
РобоДК | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно |
---|
SimSpark | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно |
---|
Webots | cppcheck[34] | clang-формат[35] | модульные тесты[36] | 100% функций API[37] | мастер[38], развивать[39] | ~ 200 тыс. | ~ 50 тыс. | Трэвис[40], AppVeyor[41], GitGuardian[42], Действия Github |
---|
OpenRAVE | Неизвестно | Неизвестно | Нос питона | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Дженкинс[43] |
---|
Программного обеспечения | Проверка статического кода | Проверка стиля | Тестовая система (ы) | Покрытие тестовой функции | Покрытие Test Branch | Строки кода | Строки комментариев | Непрерывная интеграция |
---|
Функции
Программного обеспечения | CAD в движение | Динамическое предотвращение столкновений | Относительные конечные эффекты | Автономное программирование | Потоковое управление оборудованием в реальном времени |
---|
Беседка | Неизвестно | да | да | да | да |
---|
РобоДК | да | да | да | да | да |
---|
SimSpark | Неизвестно | Нет | Неизвестно | Нет | Нет |
---|
Webots | Неизвестно | да | да | да | да |
---|
OpenRAVE | Неизвестно | Нет | Неизвестно | Нет | Нет |
---|
Программного обеспечения | CAD в движение | Динамическое предотвращение столкновений | Относительные конечные эффекты | Автономное программирование | Управление потоковой передачей в реальном времени |
---|
Семейства роботов
Программного обеспечения | UGV (наземный мобильный робот) | БПЛА (воздушные роботы) | АНПА (подводные роботы) | Роботизированные руки | Роботизированные руки (имитация хватания) | Гуманоидные роботы | Человеческие аватары | Полный список |
---|
Беседка | да[44] | да[45] | да[46] | да[47] | да[48] | да[49] | да[50] | |
---|
РобоДК | Нет | Нет | Нет | да[51] | Нет | Нет | Нет | да[52] |
---|
SimSpark | да | Нет | Нет | Может быть | Может быть | да | Нет | |
---|
Webots | да | да | да[53] | да | да | да[54] | да | да[55] |
---|
OpenRAVE | да | Неизвестно | Неизвестно | да | да | да | да | |
---|
Программного обеспечения | UGV (наземный мобильный робот) | БПЛА (воздушные роботы) | АНПА (подводные роботы) | Роботизированные руки | Роботизированные руки (имитация хватания) | Гуманоидные роботы | Человеческие аватары | Полный список |
---|
Поддерживаемые приводы
Программного обеспечения | Типовые кинематические цепи | Движение, управляемое силой | Полный список | Круговые кинематические цепи | Кинематически избыточные цепи | Бифуркационные кинематические цепи |
---|
Беседка | да | да | | да | да | да |
---|
РобоДК | Неизвестно | Неизвестно | | Неизвестно | Неизвестно | Неизвестно |
---|
SimSpark | да | Нет | Эффекторы SimSpark | Неизвестно | Неизвестно | Неизвестно |
---|
Webots | да | да | Приводы Webots | да | да | да |
---|
OpenRAVE | да | да | Суставов,Дополнительные приводы | да[56] | да | да[57] |
---|
Программного обеспечения | Типовые кинематические цепи | Движение, управляемое силой | Полный список | Круговые кинематические цепи | Кинематически избыточные цепи | Бифуркационные кинематические цепи |
---|
Поддерживаемые датчики
Программного обеспечения | Одометрия | ИДУ | Столкновение | GPS | Монокулярные камеры | Стерео камеры | Камеры глубины | Всенаправленные камеры | 2D лазерные сканеры | 3D лазерные сканеры | Полный список |
---|
Беседка | да | да | да[58] | да | да[59] | да | да | да | да[60] | да[60] | |
---|
РобоДК | Неизвестно | Неизвестно | Неизвестно | Неизвестно | Неизвестно | да | да | да | да | да | |
---|
SimSpark | да | да | да[61] | Частичное[62] | да | Частичное | Неизвестно | Неизвестно | Нет | Нет | Восприятия SimSpark |
---|
Webots | да | да | да | да | да | да | да | да | да | да | Датчики Webots |
---|
OpenRAVE | да | да | да | да | да | да | да | Неизвестно | да | да | |
---|
Программного обеспечения | Одометрия | ИДУ | Столкновение | GPS | Монокулярные камеры | Стерео камеры | Камеры глубины | Всенаправленные камеры | 2D лазерные сканеры | 3D лазерные сканеры | Полный список |
---|
использованная литература
внешние ссылки
UWSim