Gazebo | Ignition | Community
Ask Your Question

mape1082's profile - activity

2018-04-04 08:10:57 -0600 received badge  Student (source)
2017-02-10 14:44:43 -0600 answered a question why my model seems to defy the gravity, and seems to be grabbed from the top when moving?

Answers given in the comments.

2017-02-10 14:44:04 -0600 received badge  Famous Question (source)
2017-02-10 14:43:51 -0600 answered a question Object rotates while grabbed by the gripper, tryint to lift it results in slip out.

It finally worked by increasing the inertia around 10 times the real one, and using the gazebo tags with references to the proper links.

2017-02-10 14:41:20 -0600 received badge  Famous Question (source)
2017-02-10 14:40:59 -0600 answered a question Can't get self_collide working

A bit late but it does work when you declare it for the entire model. Only that you have to do it inside a gazebo tag:

  <gazebo>
        <self_collide>1</self_collide>
 </gazebo

Regards

2016-12-29 05:32:17 -0600 received badge  Notable Question (source)
2016-12-27 16:07:52 -0600 received badge  Enthusiast
2016-12-21 16:36:09 -0600 received badge  Notable Question (source)
2016-12-21 11:54:56 -0600 commented question Object rotates while grabbed by the gripper, tryint to lift it results in slip out.

Hi hsu, I am using position controllers. (updated the description above). Do you think this may interfere? Thanks

2016-12-21 11:49:55 -0600 commented question why my model seems to defy the gravity, and seems to be grabbed from the top when moving?

Thanks. Yes, I do have position controllers (added the code to the description above). It is difficult to see how a position controller may affect the dynamics of the whole robot. If I have a position controller on a joint and I instruct the elbow to move 0.5 rad , then this should not make the model float in the air. However, will try see what other controllers I could use. Thanks for input.

2016-12-21 11:38:28 -0600 commented answer Object rotates while grabbed by the gripper, tryint to lift it results in slip out.

Thanks for your reply! Following your suggestion I used simple shape for the collision. Also defined most of the parameter you mentioned. However so far the behavior is similar. I stopped trying to grab the can ans switched to grab a rectangular bar, with same results. Any ideas? Thanks a lot.

2016-12-21 11:30:56 -0600 received badge  Popular Question (source)
2016-12-21 10:18:43 -0600 received badge  Popular Question (source)
2016-12-20 18:39:57 -0600 commented question why my model seems to defy the gravity, and seems to be grabbed from the top when moving?

Thanks a lot. I tried that, added simplified model of the robot for your reference. Followed examples (among them, the Husky robot on which they add empty links and also separate links which are intended for inertia declaration), and documentation, yet the behavior continues to be the same. don't find an explanation or how to remove this unwanted behavior.

2016-12-20 18:33:27 -0600 received badge  Editor (source)
2016-12-20 10:39:21 -0600 asked a question Object rotates while grabbed by the gripper, tryint to lift it results in slip out.

Dear all,

I am trying to have my robot arm be able to pick up an object, manually (by teleop) and dropping it. So far my efforts are unsuccessful.

Video

What settings I have to set the gripper to so that I can grab the can and lift it? I used the gazebo Gripper tag with no results. Ultimately I want to be able to pick up an apple from a try and drop it in a basket.

Here a pic of my robot: inertias and collisions

Any guidance is appreciated.

Edit: Code showing the definition of the finger and the corresponding joint:

 <link name="arm_gripper_finger_right_link">
<visual name="arm_gripper_finger_right">
  <origin rpy="0 0 0" xyz="-0.050841 0 0"/>
  <geometry>
    <box size="0.101682 0.02 0.02"/>
  </geometry>
  <material name="military"/>
</visual>
<!--      <visual>
    <origin xyz="${mox} ${moy} ${moz}" rpy="${ (rotate - 1)*PI/2} 0 ${rotate * 0.45}"/>
    <geometry>
      <mesh filename="${f}" scale="0.1 0.1 0.1"/>
    </geometry>
    <material name="military"/>
  </visual>-->
<collision>
  <origin rpy="0 0 0" xyz="-0.050841 0 0"/>
  <geometry>
    <box size="0.101682 0.02 0.02"/>
  </geometry>
  <surface>
    <friction>
      <ode>
        <mu>500</mu>
        <mu2>500</mu2>
        <fdir1>0 0 0</fdir1>
        <slip1>0</slip1>
        <slip2>0</slip2>
      </ode>
      <torsional>
        <ode/>
      </torsional>
    </friction>
    <bounce>
      <restitution_coefficient>0</restitution_coefficient>
      <threshold>100000</threshold>
    </bounce>
    <contact>
      <ode>
        <soft_cfm>0</soft_cfm>
        <soft_erp>0.2</soft_erp>
        <kp>1e+07</kp>
        <kd>1</kd>
        <max_vel>0</max_vel>
        <min_depth>0.001</min_depth>
      </ode>
    </contact>
  </surface>
</collision>
<inertial>
  <mass value="0.15"/>
  <inertia ixx="1e-05" ixy="0" ixz="0" iyy="0.00013424036405" iyz="0" izz="0.00013424036405"/>
  <!--Yields:
    <mass value="0.15"/>
    <inertia ixx="0.00029625" ixy="0" ixz="0" iyy="0.00029625" iyz="0" izz="3e-05"/> -->
  <!--Trying with values computed by Meshlab instead.-->
  <!--<inertia ixx="0.001874" ixy="0.001712" ixz="0" iyx="0.001712" iyy="0.005248" iyz="0" izz="0.005823"/>-->
</inertial>

</link> <joint name="arm_gripper_finger_right_joint" type="revolute"> <origin rpy="0 0 0.448798950513" xyz="-0.025 0.055 0"/> <parent link="arm_gripper_link"/> <child link="arm_gripper_finger_right_link"/> <axis xyz="0 0 1"/> <limit effort="0" lower="-0.74" upper="0.02" velocity="0.5"/> <dynamics damping="0.0" friction="0.0"/> </joint>

Edit: Controllers in use:

# Position Controllers ---------------------------------------
  arm_elbow_position_controller:
    type: position_controllers/JointPositionController
    joint: arm_elbow_joint
    pid: {p: 100.0, i: 0.01, d: 10.0}
  arm_forearm_position_controller:
    type: position_controllers/JointPositionController
    joint: arm_forearm_joint
    pid: {p: 100.0, i: 0.01, d: 10.0}
  arm_wrist_position_controller:
    type: position_controllers/JointPositionController
    joint: arm_wrist_joint
    pid: {p: 100.0, i: 0.01, d: 10.0}
  arm_gripper_left_position_controller:
    type: position_controllers/JointPositionController
    joint: arm_gripper_finger_left_joint
    pid: {p: 100.0, i: 0.01, d: 10.0}
  arm_gripper_right_position_controller:
    type: position_controllers/JointPositionController
    joint: arm_gripper_finger_right_joint
    pid: {p: 100.0, i: 0.01, d: 10.0}

Thanks!

2016-12-20 10:39:20 -0600 asked a question why my model seems to defy the gravity, and seems to be grabbed from the top when moving?

Dear all, I am new to ROS and Gazebo. I built a 4 wheeled model that I can control via a teleop program. I can also spawn the model with an arm on top of it, which includes a two finger gripper.

If I spawn the robot without the arm, then it would behave realistically (at least to my eyes) -aside from the fact the it seems to move by itself very little, and I confirmed this happens as well to the Husky model from Clearpath- therefore I believe this is normal. However, when I spawn the robot including the arm, and I command the robot to move forward or backwards, it behaves very strange:

image description

 It would seem as if someone is grabbing the arm, so the front or back wheels are lifted when moving to the front or to the back, accordingly. When I stop issuing the command, the vehicle will return slowly to full contact with ground. 

 If I make the mass of the whole arm including gripper, minimal, the behavior disappears, but then another problem occurs: If I try to grab a beer can with the gripper, the fingers would vibrate, shake and the can would almost be thrown away.

There may be something with the modeled physical properties of the wheeled base and/or the arm and the gripper which I cannot seem to fine tune properly.

Any guidance appreciated.

edit: URDF file: robot_issue.urdf.model World file: robot_issue.world

Test: In Translation mode, select the robot, move it up, and drop it. It can be seen how it falls slowly as if it was hold from the arm. If I remove the arm, it falls ok.

edit:

Video showing my robot side by side with the husky. I have compared frictions, gravity, and other settings and cannot find what makes them behave different in the same world.

I noticed something strange also, which happens with or without loading the arm. If I lift my robot and drop it , gazebo shows first it going quickly to the ground and then brings it back to the position it was, and then it lets it fall. This does not happen with the Husky.

Any ideas where to look at? Thanks