ros-industrial / industrial_core

ROS-Industrial core communication packages (http://wiki.ros.org/industrial_core)
156 stars 181 forks source link

The timestamp of the RobotStatus is not filled. #97

Closed liborw closed 9 years ago

gavanderhoorn commented 9 years ago

Are you refering to the JointState messages published by the generic robot_state node in industrial_robot_client, or something else?

From what I can gather from industrial_robot_client/joint_relay_handler.cpp, lines 137 to 141, the header.stamp field is assigned a value.

  ...
  sensor_msgs::JointState tmp_sensor_state;
  tmp_sensor_state.header.stamp = ros::Time::now();
  ...
liborw commented 9 years ago

Sorry, I was refering to the RobotStatus (fixed in the title), published also by robot_state at least for the motoman robot.

industrial_robot_client/robot_status_relay_handler.cpp, lines 68 to 79:

...
industrial_msgs::RobotStatus status;
bool rtn = true;
status.drives_powered.val = TriStates::toROSMsgEnum(in.status_.getDrivesPowered());
status.e_stopped.val = TriStates::toROSMsgEnum(in.status_.getEStopped());
status.error_code = in.status_.getErrorCode();
status.in_error.val = TriStates::toROSMsgEnum(in.status_.getInError());
status.in_motion.val = TriStates::toROSMsgEnum(in.status_.getInMotion());
status.mode.val = RobotModes::toROSMsgEnum(in.status_.getMode());
status.motion_possible.val = TriStates::toROSMsgEnum(in.status_.getMotionPossible());
this->pub_robot_status_.publish(status);
...
gavanderhoorn commented 9 years ago

Hm, this has been fixed with the merge of #98. Somehow github didn't automatically close the issue.