Ask Your Question
0

Panda falls down in gazebo after spawning [closed]

asked 2018-11-23 12:32:14 -0500

mvish7 gravatar image

updated 2018-11-24 09:49:13 -0500

Hello, I'm following ROS_Control tutorial and adapting all the instructions for panda robot. I have generated the Gazebo compatible of URDF of panda from Moveot setup assistance and i'm editing it as per the ROS_Control_tutorial. After getting spawned in Gazebo robot falls down on the floor.

Update:-

After creating the fixed joint between world and the base link robot is bolted to the world frame. but the new problem is now the robot oscillates automatically once it is spawned to gazebo(robot arm moves front and back, then robot arm from link 1 and above falls down on the ground).after creating a fixed joint

I have already tried to adjust the p-i-d controlling gain(initially set them to 0 and then manipulated) but no luck

any suggestions on this??

Below is the URDF file i'm using, I have already tried changing gravity of links and added friction and damping for the joints but no luck.

<?xml version="1.0" ?>
<!-- =================================================================================== -->
<!-- |    This document was autogenerated by xacro from /opt/ros/kinetic/share/franka_description/robots/panda_arm_hand.urdf.xacro | -->
<!-- |    EDITING THIS FILE BY HAND IS NOT RECOMMENDED                                 | -->
<!-- =================================================================================== -->
<robot name="panda" xmlns:xacro="http://www.ros.org/wiki/xacro">
    <!-- Used for fixing robot to Gazebo 'base_link' -->
    <link name="world"/>

    <joint name="fixed" type="fixed">
      <parent link="world"/>
      <child link="panda_link0"/>
    </joint>

    <link name="panda_link0">
        <visual>
            <geometry>
                <mesh filename="package://franka_description/meshes/visual/link0.dae" />
            </geometry>
        </visual>
        <collision>
            <geometry>
                <mesh filename="package://franka_description/meshes/collision/link0.stl" />
            </geometry>
        </collision>

<inertial>
            <mass value="0.1" />
            <inertia ixx="0.03" iyy="0.03" izz="0.03" ixy="0.0" ixz="0.0" iyz="0.0" />
        </inertial>

    </link>
    <link name="panda_link1">
        <visual>
            <geometry>
                <mesh filename="package://franka_description/meshes/visual/link1.dae" />
            </geometry>
        </visual>
        <collision>
            <geometry>
                <mesh filename="package://franka_description/meshes/collision/link1.stl" />
            </geometry>
        </collision>

<inertial>
            <mass value="0.1" />
            <inertia ixx="0.03" iyy="0.03" izz="0.03" ixy="0.0" ixz="0.0" iyz="0.0" />
        </inertial>

    </link>
    <joint name="panda_joint1" type="revolute">
        <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-2.8973" soft_upper_limit="2.8973" />
        <origin rpy="0 0 0" xyz="0 0 0.333" />
        <parent link="panda_link0" />
        <child link="panda_link1" />
        <axis xyz="0 0 1" />
        <dynamics damping="0"/>
        <dynamics friction="0"/>
        <limit effort="87" lower="-2.8973" upper="2.8973" velocity="2.1750" />
    </joint>
    <link name="panda_link2">
        <visual>
            <geometry>
                <mesh filename="package://franka_description/meshes/visual/link2.dae" />
            </geometry>
        </visual>
        <collision>
            <geometry>
                <mesh filename="package://franka_description/meshes/collision/link2.stl" />
            </geometry>
        </collision>

<inertial>
            <mass value="0.1" />
            <inertia ixx="0.03" iyy="0.03" izz="0.03" ixy="0.0" ixz="0.0" iyz="0.0" />
        </inertial>

    </link>
    <joint name="panda_joint2" type="revolute">
        <safety_controller k_position="100.0" k_velocity="40.0" soft_lower_limit="-1.7628" soft_upper_limit="1.7628" />
        <origin rpy="-1.57079632679 0 0" xyz="0 0 0" />
        <parent link="panda_link1" />
        <child link="panda_link2" />
        <axis xyz="0 0 1" />
        <dynamics damping="0"/>
        <dynamics friction="0"/>
        <limit effort="87" lower="-1.7628" upper="1.7628" velocity="2.1750" />
    </joint>
    <link name="panda_link3">
        <visual>
            <geometry>
                <mesh filename="package://franka_description/meshes ...
(more)
edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by mvish7
close date 2018-11-24 09:49:37.446003

Comments

Thank you for your answer. Robot base is now bolted to the world frame. but the new problem is now the robot oscillates automatically once it is spawned to gazebo(robot arm moves front and back, then robot arm from link 1 and above falls down on the ground). any suggestions on this??

mvish7 gravatar imagemvish7 ( 2018-11-24 08:49:50 -0500 )edit

Glad it's working. But can you please create a new question for the next problem and we'll address it there. This site is a repository of questions and solutions, it doesn't work if the goal posts are moving.

PeteBlackerThe3rd gravatar imagePeteBlackerThe3rd ( 2018-11-24 09:40:28 -0500 )edit

sure. I'll create a new question and i'll keep this in mind.

mvish7 gravatar imagemvish7 ( 2018-11-24 09:48:41 -0500 )edit

Thanks. I'll have a look now.

PeteBlackerThe3rd gravatar imagePeteBlackerThe3rd ( 2018-11-24 11:44:48 -0500 )edit

Hello mvish7, hope you are good. Since, i am working with panda too, and when i launch it in Gazebo with fixed base, its floating like the one shown in your image. Can you please tell me, how did you fix it?

SunnyKatyara gravatar imageSunnyKatyara ( 2019-06-19 15:29:19 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2018-11-23 13:10:57 -0500

You need to create a fixed joint between world and panda_link0 to 'bolt' your robot to the floor so to speak. Apart from that it looks okay.

edit flag offensive delete link more

Comments

Hello mvish7, hope you are good. Since, i am working with panda too, and when i launch it in Gazebo with fixed base, its floating like the one shown in your image. Can you please tell me, how did you fix it?

SunnyKatyara gravatar imageSunnyKatyara ( 2019-06-19 16:59:07 -0500 )edit
1

@SunnyKatyara: This is happening most probably due to PID gains. You can follow ROS_Control Gazebo tutorial and find the section tune PID gains. Using Tuned PID gains solved the issue for me.

mvish7 gravatar imagemvish7 ( 2019-06-20 09:02:04 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2018-11-23 12:32:14 -0500

Seen: 417 times

Last updated: Nov 24 '18