You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Joint velocities published to ROS are always 0, even when joints are moving.
Your environment
ROS Distro: Foxy
OS Version: Ubuntu 20.04
Source or Binary build? moveit2_tutorials @69a86aca , ros2 foxy installed from apt
Steps to reproduce
[Terminal 1] Launch move_group: ros2 launch moveit2_tutorials move_group.launch.py
[Terminal 2] Start monitoring: ros2 topic echo /joint_states
[Terminal 3] Start monitoring: ros2 topic echo /dynamic_joint_states
[Rviz or any other method] Move the manipulator: e.g., by setting Goal State to "random valid" in the MotionPlanning panel of rviz, and then commanding "Plan & Execute".
Expected behaviour
The /joint_states and /dynamic_joint_states topics get messages with valid position and non-zero velocity while the arm is moving.
Backtrace or Console output
This rosbag file includes all messages published to those two topics.
We can see that position values change properly, but all velocities are always 0.
so that in the code, has_velocity_state_interface_ is true, and the velocity values are populated with the current velocities read from the hardware.
By back-tracing, I found that JointTrajectoryController::read_state_from_hardware retrieves the current states including the velocities from joint_state_interface_[1], but I'm lost here as to where this reference object is being populated. Anyway, it's getting zeros for the velocities, which appears to be a bug.
Could you have a look at this? Thanks!
The text was updated successfully, but these errors were encountered:
I also have the same problem. When I subscribe to the /joint_states topic I can clearly observe the change in the joint positions, while both velocity and acceleration are zero.
I think this is probably because you are running a simulation (correct?) The joints jump to the specified angle immediately in simulation, with zero velocities. It should be different on a real robot.
Description
Joint velocities published to ROS are always 0, even when joints are moving.
Your environment
apt
Steps to reproduce
[Terminal 1] Launch move_group:
ros2 launch moveit2_tutorials move_group.launch.py
[Terminal 2] Start monitoring:
ros2 topic echo /joint_states
[Terminal 3] Start monitoring:
ros2 topic echo /dynamic_joint_states
[Rviz or any other method] Move the manipulator: e.g., by setting Goal State to "random valid" in the MotionPlanning panel of rviz, and then commanding "Plan & Execute".
Expected behaviour
The
/joint_states
and/dynamic_joint_states
topics get messages with valid position and non-zero velocity while the arm is moving.Backtrace or Console output
This rosbag file includes all messages published to those two topics.
We can see that position values change properly, but all velocities are always 0.
The joint controller (panda_arm_controller) does recognize both position and velocity state interfaces:
so that in the code,
has_velocity_state_interface_
istrue
, and the velocity values are populated with the current velocities read from the hardware.By back-tracing, I found that
JointTrajectoryController::read_state_from_hardware
retrieves the current states including the velocities fromjoint_state_interface_[1]
, but I'm lost here as to where this reference object is being populated. Anyway, it's getting zeros for the velocities, which appears to be a bug.Could you have a look at this? Thanks!
The text was updated successfully, but these errors were encountered: