Robotics StackExchange | Archived questions

compensate gravity or effort limitation in gazebo

hello dears,

i am trying to learn roscontrol according to whole information that i got form internet, i faced to the strange behaviour in gazebo to compensate the gravity. the model is IIWA14 according to the link below: https://github.com/CNR-STIIMA-IRAS/iiwastack/tree/fri i am just trying to control the model with EffortJointInterface/Jointgrouppositioncontroller, for this purpose i have change the hardwareinterface in urdf to mentioned controller ans also changed maxeffort = 300.0. other necessary information is in the yaml file such as blew:

jointstatecontroller: type: jointstatecontroller/JointStateController publish_rate: 50

mycontroller: type: effortcontrollers/JointGroupPositionController joints: - iiwajoint1 - iiwajoint2 - iiwajoint3 - iiwajoint4 - iiwajoint5 - iiwajoint6 - iiwajoint7

pid:
  iiwa_joint_1: {p: 800.0, i: 100, d: 10.0, i_clamp_min: -10000, i_clamp_max: 10000}
  iiwa_joint_2: {p: 1000.0, i: 10.0, d: 1.0, i_clamp_min: -10000, i_clamp_max: 10000}
  iiwa_joint_3: {p: 800.0, i: 100, d: 10.0, i_clamp_min: -10000, i_clamp_max: 10000}
  iiwa_joint_4: {p: 500.0, i: 90, d: 10.0, i_clamp_min: -10000, i_clamp_max: 10000}
  iiwa_joint_5: {p: 800.0, i: 100, d: 10.0, i_clamp_min: -10000, i_clamp_max: 10000}
  iiwa_joint_6: {p: 800.0, i: 100, d: 10.0, i_clamp_min: -10000, i_clamp_max: 10000}
  iiwa_joint_7: {p: 800.0, i: 100, d: 10.0, i_clamp_min: -10000, i_clamp_max: 10000}

publish_rate: 50   

( i have to say that i did some changes into the main cpp file up to can read yaml file in this way)

so , max_effort of the all joints are 300.0 while gazebo is launched but joint2 is saturated to more or less 20.0 (in another terminal /iiwa/jointastate )under command data: [0.0 , 0.0 , 1.0 , -1.0 , 0.0 , 0.0 , 0.0] or any other command robot falls down . i could not find the reason. may i ask you guide me please???

Asked by arya on 2019-03-19 07:31:36 UTC

Comments

I would suggest to check, if the parameters are really set correctly. You can use rostopic echo /joint_controller/state.

Asked by m.bahno on 2021-05-13 06:44:49 UTC

Answers