Прикрепите объект stati c к ссылке робота через плагин Gazebo world - PullRequest
0 голосов
/ 20 июня 2020

У меня проблемы с созданием плагина World для симулятора Gazebo.

У меня есть манипулятор roboti c, который отвечает за то, чтобы собирать некоторые ящики и перемещать их в определенных c местах . Чтобы смоделировать захват, я просто хочу жестко прикрепить коробки (которые являются статичными c моделями) к рабочему элементу робота и отсоединить их, когда они будут на месте.

Я не тем не менее, может выполнить эту простую задачу. Я нашел функцию AttachStaticModel из класса physics::Model; Я использую его следующим образом:

robotModelPtr->AttachStaticModel(boxModelPtr, offset);

, используя в качестве смещения ignition::math::Pose3d() или boxLinkPtr->WorldPose() - robotLinkPtr->WorldPose(), но он ничего не делает.

Затем я попытался вручную создать фиксированное соединение между box и робот, как:

robotModelPtr->CreateJoint("connection", "fixed", robotLinkPtr, boxLinkPtr)

Но в результате ящик улетает.

Box SDF состоит из узла обзора и узла столкновения, оба они используют a .dae me sh.

Любые предложения были бы очень признательны. Большое спасибо.

1 Ответ

0 голосов
/ 22 июня 2020

Мне не удалось использовать функцию AttachStaticModel. В любом случае, для своих целей я просто создал мировой плагин, который поддерживает указатели на модель бокса и ссылку на конечный эффектор робота и соответствующим образом изменяет положение модели бокса при каждом событии обновления мира.

...