ros / robot_state_publisher

Allows you to publish the state of a robot (i.e the position of its base and all joints) via the "tf" transform library
http://www.ros.org/wiki/robot_state_publisher
BSD 3-Clause "New" or "Revised" License
90 stars 168 forks source link

use_sim_time = false makes /robot_state_publisher die! #90

Open rahulbhadani opened 6 years ago

rahulbhadani commented 6 years ago

In ROS Melodic on Ubuntu 18.04 LTS, when I use <arg name="use_sim_time" default="false"/>, then robot state publisher dies with following messages:

terminate called after throwing an instance of 'std::runtime_error'
  what():  Duration is out of dual 32-bit range
[catvehicle/robot_state_publishercatvehicle-3] process has died [pid 5998, exit code -6, cmd /opt/ros/melodic/lib/robot_state_publisher/robot_state_publisher /joint_states:=/catvehicle/joint_states __name:=robot_state_publishercatvehicle __log:=/home/ivory/.ros/log/8f8c35ca-8f15-11e8-b7c7-8c1645b122d9/catvehicle-robot_state_publishercatvehicle-3.log].
log file: /home/ivory/.ros/log/8f8c35ca-8f15-11e8-b7c7-8c1645b122d9/catvehicle-robot_state_publishercatvehicle-3*.log

You can refer to https://github.com/rahulbhadani/catvehicle for the package I am using.

In catvehicle_empty.launch, set <arg name="use_sim_time" default="false"/> Step 1. roslaunch catvehicle catvehicle_empty.launch Step 2. roslaunch catvehicle catvehicle_custom.launch

sloretz commented 6 years ago

Hi @rahulbhadani, would you mind providing a minimal working example example?

I'm unable to reproduce with

<?xml version="1.0"?>
<launch>
  <param name="robot_description" textfile="$(find robot_state_publisher)/test/two_links_moving_joint.urdf" />

  <node pkg="robot_state_publisher" name="two_links_moving_joints_pub" type="state_publisher">
    <param name="use_sim_time" value="false"/>
  </node>
</launch>
rahulbhadani commented 6 years ago

I gave you the link of github repo. You can follow that to reproduce the scenario.