0
$\begingroup$

For my bachelor project I have to be able to remote control a ur10e robot with gripper in VR. The robot has an adaptive plate attached to its flange, so that it can hold a camera and the gripper. For the VR simulation I use unity and the urdf importer plugin. I could generate the urdf files for the robot and gripper but I only have a STEP(Download files-> Universal Robots-> Mounting CAD-> Coupling and adapter plates) file of the connection piece.

Through previous forum posts I have found out to convert the STEP in dae and stl files and include them in a xacro file

<?xml version="1.0" ?>
<robot name="adapter">

  <link name="world"/>
  <link name="adapter">
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://ur_description/urdf/plate/meshes/Gripper_Adapter.dae" scale="1 1 1"/>
      </geometry>
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0.05"/>
      <geometry>
        <mesh filename="package://ur_description/urdf/plate/meshes/Gripper_Adapter.stl" scale="1 1 1"/>
      </geometry>
    </collision>
  </link>
</robot>

But when I try to transform this xacro to a urdf with the command:

ros2 run xacro xacro $(ros2 pkg prefix ur_description)/share/ur_description/urdf/plate/adapter.urdf.xacro \
name:=adapter > adapter.urdf

It fails. Could anyone please give me some advice? I would appreciate it!

$\endgroup$
2
  • $\begingroup$ What means it fails? Could you please add the error/console output? $\endgroup$ Oct 29, 2023 at 13:43
  • $\begingroup$ After rebooting my PC it suddenly worked and I could generate the urdf. I am sorry but I can't remember the error output. $\endgroup$
    – Lapiz
    Oct 30, 2023 at 9:47

1 Answer 1

0
$\begingroup$

First and foremost you miss the joints between links, every link needs a joint connection it to another link (can be fixed to the the world).

Beside that, if you want a functional gripper for simulation this setup won't work either. For a functional gripper you need to have a link for both fingers with a joint so you can control the joint with a movegroup. I would suggest taking a look into the panda arm and how the gripper is defined there.

$\endgroup$
1
  • $\begingroup$ Thanks for your answer! I figured that I would need three joints to connect the adapter to the arm, camera and gripper. But I was not sure how it works in relation with the model. When I specify those joints how do I tell they are at the right position of the model? I was thinking of creating a complete urdf then use the moveit setup assistance to generate the msg files so that I can use it in unity $\endgroup$
    – Lapiz
    Oct 30, 2023 at 9:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.