Наглядные отличия между пятью движками физики в симуляторе Capelliasim (бывший V-Rep)
https://youtu.be/3_hI7v0zBLI
#simulation #physics #vrep
https://youtu.be/3_hI7v0zBLI
#simulation #physics #vrep
YouTube
5 Physics engines in CoppeliaSim Simulator
This video shows a visual comparison between the 5 physics engines supported in CoppeliaSim: MuJoCo, Bullet, ODE, Vortex and Newton.
CoppeliaSim can be downloaded from https://www.coppeliarobotics.com
CoppeliaSim can be downloaded from https://www.coppeliarobotics.com
Реально-виртуальный континуум
Если Вы хотите использовать технологии виртуальной реальности или какие-либо иные симуляции, то, так или иначе, придётся эту самую виртуальность определять в своём софте. Поначалу в Robossembler мы пытались реализовать архитектуру, в которой управляющее ПО робота могло бы быть перенесено с минимальными издержками из компьютера разработчика, где оно работает с симуляцией, непосредственно на рабочую машину (типа deploy). Процесс перехода мы сделали дискретным и разделили на три уровня восприятия: виртуальный без датчиков(роботу известно полное состояние мира), с виртуальными датчиками и реальностью. Подробнее об этом в видео по таймкоду.
Однако, по мере рассмотрения реальных жизненных ситуаций, оказалось, что такой подход имеет свои ограничения. Например, каким образом описать ситуацию, когда у нас есть реальный датчик (например, 3D-сканер), но при этом самого реального робота нет, а есть только его виртуальная модель? А ведь такой сценарий всё равно лучше, чем полностью виртуальный - мы сканируем захватываемый роботом предмет, достраиваем её модель в виртуальной среде и хватаем роботом. А ведь таких комбинаций реальных и не очень систем может быть бесчётное множество!
Всё это натолкнуло нас на мысли об отказе от дискретной модели перехода от виртуальности к реальности и поиску альтернативного способа описания. Одним из таких способов является модель Пола Милграма (нет, не нобелевский лауреат по экономике, другой) - реально-виртуальный континуум - способ описания плавного перехода от полной виртуальности к полной реальности через дополненную виртуальность (AV, когда элементы реального мира добавляются в симуляцию) и дополненную реальность (AR, когда элементы виртуального мира добавляются в реальность). Рассмотрение подобного рода модели для решения задач сборки натолкнула нас на ряд других отнологических/терминологических проблем - например, как назвать процесс объединения образа предмета в будущем с образом предмета в настоящем? Вот есть целевое состояние системы "предмет перемещён" и есть его виртуальный образ, а есть текущее состояние "предмет где-то стоит в другом месте". По ходу перемещения предмета (в реальности или виртуальности - неважно) мы сопоставляем текущее состояние с будущим и когда они начинают друг с другом совпадать, то мы считаем наш план осуществлённым. Виртуальность как раз и хороша тем, что позволяет строить будущие состояния, тогда как реальность у нас - одна единственная. Событие совпадения запланированного и текущего один из наших разработчиков назвал merge (слияние). Если проводить аналогию с git, то создавая ветку в репозитории, мы формируем будущее состояние кода, а когда сливаем эту ветку в основную, то соединяем их вместе - делаем будущее состояние текущим.
Могут появиться и другие термины, описывающие подобного рода модель на практике. Поживём-увидим. Очень интересное на мой взгляд направление, сильно переплетённое с фундаментальными представлениями об информации и мире в целом.
#vr #ar #simulation
Если Вы хотите использовать технологии виртуальной реальности или какие-либо иные симуляции, то, так или иначе, придётся эту самую виртуальность определять в своём софте. Поначалу в Robossembler мы пытались реализовать архитектуру, в которой управляющее ПО робота могло бы быть перенесено с минимальными издержками из компьютера разработчика, где оно работает с симуляцией, непосредственно на рабочую машину (типа deploy). Процесс перехода мы сделали дискретным и разделили на три уровня восприятия: виртуальный без датчиков(роботу известно полное состояние мира), с виртуальными датчиками и реальностью. Подробнее об этом в видео по таймкоду.
Однако, по мере рассмотрения реальных жизненных ситуаций, оказалось, что такой подход имеет свои ограничения. Например, каким образом описать ситуацию, когда у нас есть реальный датчик (например, 3D-сканер), но при этом самого реального робота нет, а есть только его виртуальная модель? А ведь такой сценарий всё равно лучше, чем полностью виртуальный - мы сканируем захватываемый роботом предмет, достраиваем её модель в виртуальной среде и хватаем роботом. А ведь таких комбинаций реальных и не очень систем может быть бесчётное множество!
Всё это натолкнуло нас на мысли об отказе от дискретной модели перехода от виртуальности к реальности и поиску альтернативного способа описания. Одним из таких способов является модель Пола Милграма (нет, не нобелевский лауреат по экономике, другой) - реально-виртуальный континуум - способ описания плавного перехода от полной виртуальности к полной реальности через дополненную виртуальность (AV, когда элементы реального мира добавляются в симуляцию) и дополненную реальность (AR, когда элементы виртуального мира добавляются в реальность). Рассмотрение подобного рода модели для решения задач сборки натолкнула нас на ряд других отнологических/терминологических проблем - например, как назвать процесс объединения образа предмета в будущем с образом предмета в настоящем? Вот есть целевое состояние системы "предмет перемещён" и есть его виртуальный образ, а есть текущее состояние "предмет где-то стоит в другом месте". По ходу перемещения предмета (в реальности или виртуальности - неважно) мы сопоставляем текущее состояние с будущим и когда они начинают друг с другом совпадать, то мы считаем наш план осуществлённым. Виртуальность как раз и хороша тем, что позволяет строить будущие состояния, тогда как реальность у нас - одна единственная. Событие совпадения запланированного и текущего один из наших разработчиков назвал merge (слияние). Если проводить аналогию с git, то создавая ветку в репозитории, мы формируем будущее состояние кода, а когда сливаем эту ветку в основную, то соединяем их вместе - делаем будущее состояние текущим.
Могут появиться и другие термины, описывающие подобного рода модель на практике. Поживём-увидим. Очень интересное на мой взгляд направление, сильно переплетённое с фундаментальными представлениями об информации и мире в целом.
#vr #ar #simulation
Давно не следил за темой, а тем временем... Unity Robotics Hub стоит нетронутый три года подряд. Не пошла тема, видать.
https://github.com/Unity-Technologies/Unity-Robotics-Hub
#unity #robotics #simulation
https://github.com/Unity-Technologies/Unity-Robotics-Hub
#unity #robotics #simulation
GitHub
GitHub - Unity-Technologies/Unity-Robotics-Hub: Central repository for tools, tutorials, resources, and documentation for robotics…
Central repository for tools, tutorials, resources, and documentation for robotics simulation in Unity. - Unity-Technologies/Unity-Robotics-Hub