Home | Tutorials | Wiki | Issues
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Hi again,

I have compiled separately the ARIAC competition vacuum gripper plugin and I am using the following .xacro configuration:

<?xml version="1.0"?>
<robot xmlns:xacro="http://www.ros.org/wiki/xacro">

<xacro:macro name="create_vacuum_gripper" params="wrist_link link_no *origin">


  <joint name="vacuum_gripper_joint_${link_no}" type="revolute">
    <xacro:insert_block name="origin" />

    <axis xyz="0 0 1" />
    <limit lower="0" upper="0" effort="0" velocity="0" />
    <parent link="${wrist_link}" />
    <child link="vacuum_gripper_link_${link_no}" />

    <dynamics damping="0.0" friction="0.0"/>
  </joint>


  <link name="vacuum_gripper_link_${link_no}">
    <inertial>
      <origin xyz="0 0 0" rpy="0 0 0" />
      <inertia ixx="0.0000063" ixy="0" ixz="0"
               iyy="0.0000063" iyz="0"
               izz="0.000025" />
      <mass value="0.01" />
    </inertial>

    <visual>
      <origin xyz="0 0 0" rpy="0 0 0" />
      <geometry>
        <cylinder radius="0.05" length="0.01" />
      </geometry>
      <material name="SomeColor">
        <color rgba="1.0 0.0 0.0 1.0"/>
      </material>
    </visual>

    <collision>
      <origin xyz="0 0 0" rpy="0 0 0"/>
      <geometry>
        <cylinder radius="0.05" length="0.01"/>
      </geometry>
    </collision>
  </link>



  <gazebo reference="vacuum_gripper_link_${link_no}">
    <material>Gazebo/Black</material>
  </gazebo>

  <gazebo>
    <plugin name="ros_vacuum_gripper" filename="libROSVacuumGripperPlugin.so">
      <grasp_check>
        <detach_steps>40</detach_steps>
        <attach_steps>1</attach_steps>
        <min_contact_count>1</min_contact_count>
      </grasp_check>

      <suction_cup_link>vacuum_gripper_link_${link_no}</suction_cup_link>

      <robot_namespace>/trs/${link_no}</robot_namespace>
      <control_topic>gripper/control</control_topic>
      <state_topic>gripper/state</state_topic>
    </plugin>

    <!--plugin name="gazebo_ros_vacuum_gripper" filename="libgazebo_ros_vacuum_gripper.so">
      <robotNamespace>/trs/${link_no}</robotNamespace>
      <bodyName>vacuum_gripper_link_${link_no}</bodyName>
      <topicName>grasping</topicName>
      <maxForce>20</maxForce>
      <maxDistance>0.10</maxDistance>
      <minDistance>0.01</minDistance>
    </plugin-->
  </gazebo>

</xacro:macro>

</robot>

and then to use the above, I am using the following lines in my main .xacro

<xacro:create_vacuum_gripper wrist_link="${prefix}carriage" link_no="1">
    <origin xyz="-0.001 0 0.9" rpy="${90 * 0.0174533} 0 1.5708" />
</xacro:create_vacuum_gripper>

Whichever plugin I use (gazebo_ros_vacuum_gripper or ros_vacuum_gripper), I cannot secure a box object... :( Please if you have any ideas how these plugins work let me know.

Thank you!