Webots

редактировать
Webots
Автономный автомобиль в Webots Автономный автомобиль в Webots
Разработчик (и) Cyberbotics Ltd.
Стабильная версия Webots R2020b, редакция 1/2 сентября 2020 г.
Репозиторий GitHub
Операционная система Windows 10, 64-разрядная версия Linux, Mac OS X 10.14, 10.13
Тип Симулятор робототехники
Лицензия Apache 2
Веб-сайтВеб-страница Cyberbotics

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

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

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. Пользователи могут взаимодействовать с запущенной симуляцией в любое время, то есть можно перемещать роботов и другой объект с помощью мыши во время симуляции. Webot может транслировать моделирование в веб-браузеры с помощью WebGL.

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

Содержание

  • 1 Веб-интерфейс
  • 2 Пример программирования контроллера
  • 3 Основные области применения
  • 4 Включенные модели роботов
  • 5 Поддержка кросс-компиляции и удаленного управления
  • 6 См. Также
  • 7 Ссылки
  • 8 Внешние ссылки

Веб-интерфейс

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

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

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

#include #include #include #define TIME_STEP 64 int main () {// инициализировать Webots wb_robot_init (); // получить дескриптор и включить датчик расстояния WbDeviceTag ds = wb_robot_get_device ("ds"); wb_distance_sensor_enable (ds, TIME_STEP); // цикл управления while (1) {// считываем датчики double 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); } return 0; }

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

Включены модели роботов

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

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

См. Также

Ссылки

Внешние ссылки

Викискладе есть медиафайлы, связанные с Webots.
Последняя правка сделана 2021-06-20 10:34:27
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте