compensate gravity or effort limitation in gazebo
hello dears,
i am trying to learn ros_control 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/ii... i am just trying to control the model with EffortJointInterface/Jointgrouppositioncontroller, for this purpose i have change the hardware_interface in urdf to mentioned controller ans also changed max_effort = 300.0. other necessary information is in the yaml file such as blew:
joint_state_controller: type: joint_state_controller/JointStateController publish_rate: 50
my_controller: type: effort_controllers/JointGroupPositionController joints: - iiwa_joint_1 - iiwa_joint_2 - iiwa_joint_3 - iiwa_joint_4 - iiwa_joint_5 - iiwa_joint_6 - iiwa_joint_7
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???
I would suggest to check, if the parameters are really set correctly. You can use
rostopic echo /joint_controller/state
.