Open jacknlliu opened 6 years ago
For gazebo9 + ubuntu 18.04 + ROS melodic, there is still the same issue. It seems that the joint->GetAngle() doesn't work in gazebo9. Is there solution for this issue? Thanks. @
#if GAZEBO_MAJOR_VERSION >= 8
double position = joint->Position ( 0 );
#else
double position = joint->GetAngle ( 0 ).Radian();
#endif
joint_state_.name[i] = joint->GetName();
joint_state_.position[i] = position;
joint_state_.velocity[i] = velocity;
After robot and an object have a collision, and if the
joint trajectory controller
still sends joint positions to the robot, the/joint_states
will return the wrong data, even if the robot has been moved to another position! And thejoint_trajectory_controller/state
also return wrong data!/joint_states
can't return normal data from the current model state!/joint_states
:NOTE: the joint positions are too large and exceeds the joint limit!
How to fix it? Something related to gazebo_ros_control? We need the correct joint state to control the robot.
I used Ubuntu 16.04, ROS kinetic, and gazebo7.
https://github.com/ros-controls/ros_controllers/issues/313