Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Webots - это бесплатный 3D- симулятор робота с открытым исходным кодом, используемый в промышленности, образовании и исследованиях.

Проект Webots стартовал в 1996 году и первоначально был разработан доктором Оливье Мишелем из Швейцарского федерального технологического института ( EPFL ) в Лозанне , Швейцария, а затем с 1998 года Cyberbotics Ltd. в качестве проприетарного лицензионного программного обеспечения. С декабря 2018 года он выпускается под бесплатной лицензией Apache 2 с открытым исходным кодом . [1]

Webots включает в себя большую коллекцию свободно изменяемых моделей роботов, датчиков, исполнительных механизмов и объектов. Кроме того, также можно создавать новые модели с нуля или импортировать их из программного обеспечения 3D CAD. При разработке модели робота пользователь указывает как графические, так и физические свойства объектов. Графические свойства включают форму, размеры, положение и ориентацию, цвета и текстуру объекта. Физические свойства включают массу, коэффициент трения, а также постоянные пружины и демпфирования . В программе присутствует простая гидродинамика.

Webots использует ответвление ODE ( Open Dynamics Engine ) для обнаружения столкновений и моделирования динамики твердого тела. Библиотека ODE позволяет точно моделировать физические свойства объектов, такие как скорость, инерция и трение.

Webots включает в себя набор датчиков и исполнительных механизмов, часто используемых в роботизированных экспериментах, например, лидары, радары, датчики приближения, датчики света, сенсорные датчики, GPS , акселерометры , камеры, излучатели и приемники, серводвигатели (вращательные и линейные), датчик положения и силы , Светодиоды, захваты, гироскопы, компас, IMU и т. Д.

Программы контроллера робота могут быть написаны вне Webots на языках C , C ++ , Python , ROS , Java и MATLAB с использованием простого API.

Webots предлагает возможность делать снимки экрана и записывать имитационные фильмы. Миры Webots хранятся в кроссплатформенных файлах .wbt, формат которых основан на языке VRML . Также можно импортировать и экспортировать миры или объекты Webots в формате VRML. Пользователи могут взаимодействовать с выполняющейся симуляцией в любое время, т. Е. Можно перемещать роботов и другой объект с помощью мыши во время симуляции. Веботы могут транслировать моделирование в веб-браузеры с помощью WebGL .

Моделирование Robotis-Op3in Webots
Моделирование Pioneer 3-AT (Adept Mobile Robots), установленного с помощью SICK LMS 291, в Webots
Моделирование Pioneer 3-DX (Adept Mobile Robots) в Webots
Имитационная модель робота PR2 в Webots.
Имитационная модель робота Khepera III с захватом в Webots.
Имитационная модель робота-саламандры в Webots с деформируемой кожей.
Имитационная модель робота Boston Dynamics Atlas в Webots.

Веб-интерфейс [ править ]

С 18 августа 2017 года веб-сайт robotbenchmark.net предлагает бесплатный доступ к серии тестов робототехники, основанных на моделировании Webots, через веб-интерфейс Webots. Экземпляры Webot работают в облаке, а 3D-виды отображаются в браузере пользователя. С помощью этого веб-интерфейса пользователи могут программировать роботов на Python и изучать управление роботами с помощью пошаговой процедуры.

Пример программирования контроллера [ править ]

Это простой пример программирования контроллера C / C ++ с помощью Webots: тривиальное поведение предотвращения столкновений. Сначала робот движется вперед, затем при обнаружении препятствия он некоторое время вращается вокруг себя, а затем возобновляет движение вперед.

#include  <webots / robot.h>#include  <webots / Difference_wheels.h>#include  <webots / distance_sensor.h>#define TIME_STEP 64int  main ()  {  // инициализировать Webots  wb_robot_init (); // получить дескриптор и включить датчик расстояния  WbDeviceTag  ds  =  wb_robot_get_device ( "ds" );  wb_distance_sensor_enable ( ds ,  TIME_STEP ); // контур управления в  то время как  ( 1 )  {  // считываем датчики  двойной  v  =  wb_distance_sensor_get_value ( DS ); // если обнаружено препятствие  if  ( v  >  512 )  {  // развернуться  wb_differential_wheels_set_speed ( -600 ,  600 );  }  else  {  // идем прямо  wb_differential_wheels_set_speed ( 600 ,  600 );  }  // запускаем шаг моделирования  wb_robot_step ( TIME_STEP );  } возврат  0 ; }

Основные области применения [ править ]

  • Быстрое прототипирование колесных и ножных роботов
  • Исследование движения роботов [2]
  • Интеллект роя (моделирование нескольких роботов) [3] [4]
  • Искусственная жизнь и эволюционная робототехника
  • Моделирование адаптивного поведения [5] [6]
  • Самостоятельная реконфигурация модульной робототехники [7]
  • Экспериментальная среда для компьютерного зрения
  • Обучение и соревнования по программированию роботов

Включенные модели роботов [ править ]

Полный и актуальный список представлен в руководстве пользователя Webots.

  • AIBO ERS7 и ERS210, [8] Sony Corporation
  • БИОЛОИД (собака), Роботис [9]
  • Boe-Bot
  • ДАРВИН-ОП, Роботис
  • Электронная шайба
  • Hemisson
  • HOAP-2, Fujitsu Limited
  • iCub , Консорциум RobotCub
  • iRobot Create , iRobot
  • Катана IPR, Neuronics AG
  • Мобильный робот Хепера I, II, III, K-Team Corporation
  • КХР-2ХВ, ХР-3ХВ, Кондо
  • Коала, K-Team Corporation
  • Lego Mindstorms (модель RCX Rover)
  • Магеллан
  • Nao V2, V3, Aldebaran Robotics
  • MobileRobots Inc Pioneer 2, Pioneer 3-DX, Pioneer 3-AT
  • Puma 560, Unimate
  • Разведчик 2
  • Креветка III, BlueBotics SA
  • Surveyor SRV-1, Surveyor Corporation
  • youBot, КУКА

Поддержка кросс-компиляции и удаленного управления [ править ]

  • Электронная шайба
  • DARwIn-OP и Robotis OP2
  • НАО
  • Тимио II

См. Также [ править ]

  • ROS
  • Электронная шайба

Ссылки [ править ]

  1. ^ «Версия R2019a - Webots становится открытым исходным кодом» . Киберботика. 2018.
  2. ^ «Размещение рук во время движения четвероногих в гуманоидном роботе: динамический системный подход» (PDF) . Биологически вдохновленная группа робототехники. 2007 г.
  3. ^ «Распределенная адаптация в поиске нескольких роботов с использованием оптимизации роя частиц» . Группа Роевых Интеллектуальных Систем. 2008 г.
  4. ^ «Сборка конфигураций в сетевой робототехнической системе: пример реконфигурируемой интерактивной настольной лампы» (PDF) . DISAL - Лаборатория распределенных интеллектуальных систем и алгоритмов. 2008 г.
  5. ^ Луи-Эммануэль Мартине, Денис Шейнихович, Карим Бенченане и Анджело Арлео (2011) Пространственное обучение и планирование действий в модели префронтальной кортикальной сети, PLoS Comput Biol 7 (5): e1002045. DOI : 10.1371 / journal.pcbi.1002045
  6. ^ Маннелла Ф., Миролли М., Бальдассар Г., Вычислительная модель роли ядер миндалины во втором порядке кондиционирования. В M. Asada et al. (ред.), От животных к аниматам 10: Труды Десятой Международной конференции по моделированию адаптивного поведения (SAB2008), стр. 321-330. LNAI 5040 Берлин: Springer.
  7. ^ «Активный механизм соединения для модульных самоконфигурируемых робототехнических систем на основе физической фиксации» (PDF) . Биологически вдохновленная группа робототехники. 2008 г.
  8. ^ «Aibo и веботы: моделирование, беспроводное дистанционное управление и передача контроллера» (PDF) . Биологически вдохновленная группа робототехники. 2006 г.
  9. ^ Биолоид

Внешние ссылки [ править ]

  • Киберботика