vacuum gripper is not working

asked 2023-06-30 00:12:26 -0600

huhahaha gravatar image

I was looking for a solution based on the last post. As a result of searching for the cause of not sticking to the wall, it was inferred that the vacuum gripper's plugin did not work properly, and it was confirmed through the test model. can you tell me where I need to improve for the gripper plugin to work? The source code is below. The python code was used from the link above. https://answers.ros.org/question/4169...

grippertest.urdf.xacro code

<?xml version="1.0"?>
<robot name="gripper" xmlns:xacro="http://ros.org/wiki/xacro" >
    <xacro:include filename="$(find wallclimb)/urdf/grippertest.gazebo.xacro"/>
    <xacro:property name="base_W" value="0.1"/>
    <xacro:property name="base_D" value="0.1"/>
    <xacro:property name="base_H" value="0.1"/>
    <xacro:property name="base_M" value="0.1"/>

    <xacro:property name="vacuum_R" value="0.05"/>
    <xacro:property name="vacuum_H" value="0.05"/>
    <xacro:property name="vacuum_M" value="0.01"/>

    <xacro:macro name="base_inertia" params="m w d h">
        <inertial>
            <origin xyz="0 0 0" rpy="0 0 0" />  
            <mass value="${m}"/>
            <inertia ixx="${(m/12) * (d*d + h*h)}" ixy = "0" ixz = "0" iyy="${(m/12) * (w*w + h*h)}" iyz = "0" izz="${(m/12) * (w*w + d*d)}"/> 
        </inertial>
    </xacro:macro>

    <xacro:macro name="vacuum_front_inertia" params="m r h">
        <inertial>
            <origin xyz="0.0625 0 0" rpy="0 0 0"/>   
            <mass value="${m}"/>
            <inertia ixx="${(m/12) * (3*r*r + h*h)}" ixy = "0" ixz = "0" iyy="${(m/12) * (3*r*r + h*h)}" iyz = "0" izz="${(m/12) * (r*r)}"/> 
        </inertial>
    </xacro:macro>

    <link name="base_footprint"/>

    <joint name="base_joint" type="fixed">
        <parent link="base_footprint"/>
        <child link="base_link"/>
        <origin xyz="0.0 0.0 0.0" rpy="0 0 0"/>
    </joint>

    <link name="base_link">
        <visual>
            <geometry>
                <mesh filename="package://wallclimb/mesh/gripper_test1.stl" scale="0.001 0.001 0.001"/>
            </geometry>
            <origin rpy="0 0 0" xyz="0 0 0"/>
            <material name="yellow">
                <color rgba="1 1 0 1"/>
            </material>
        </visual>

        <collision>
            <geometry>
                <mesh filename="package://wallclimb/mesh/gripper_test1.stl" scale="0.001 0.001 0.001"/>
            </geometry>
            <origin rpy="0 0 0" xyz="0 0 0"/>
        </collision>

        <xacro:base_inertia m="${base_M}" w="${base_W}" d="${base_D}" h="${base_H}"/>
    </link>

    <joint name="vacuum_front_joint" type="revolute">
        <parent link="base_link"/>
        <child link="vacuum_front_link"/>
        <origin xyz="0.075 0 0.05" rpy="0 3.14 0"/>
        <axis xyz="1 0 0"/>
        <limit effort="10" velocity="50" lower="0" upper="0"/>
        <dynamics damping="0.0" friction="10"/>
    </joint>

    <link name="vacuum_front_link">
        <gravity>0</gravity>
        <visual>
            <geometry>
                <mesh filename="package://wallclimb/mesh/gripper_test2.stl" scale="0.001 0.001 0.001"/>
            </geometry>
            <origin rpy="0 0 0" xyz="-0.075 0 -0.05"/> ...
(more)
edit retag flag offensive close merge delete