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
With the death of the one centralized parameter server to rule them all in ROS 2, it has become more cumbersome to have single instances of global parameters that everyone can use, i.e. often multiple nodes will need to individually load /robot_description into their parameter namespace.
robot_state_publisher gets around that problem by publishing a std_msgs::msg::String message with the entire URDF file that other files can then use.
Right now, rdf_loader requires that a parameter with the robot description is set AND that a separate parameter is set with the SRDF is set.
I find this most annoying when trying to plan from RViz, and you need to load the URDF/SRDF into the namespaces for both move_group and Rviz.
There are three different things that I think would make things easier:
RDFLoader allows for the parameter to be set for the URDF or reads it in from a topic.
RDFLoader publishes a std_msgs::msg::String with the SRDF
RDFLoader subscribes to the above String as an alternative to the parameter.
There's two tricky parts that I foresee:
Defining the RDFLoader constructor in a sufficiently concise way that allows for parameter or topic.
Making sure that a single instance RDFLoader doesn't subscribe to the topic it publishes.
The text was updated successfully, but these errors were encountered:
@DLu those are some very reasonable thoughts. We have actually considered using a publisher in the past along with other options. However, the publisher method can have several shortcomings including that it's hard to sync if we want to support dynamic updates.
With the death of the one centralized parameter server to rule them all in ROS 2, it has become more cumbersome to have single instances of global parameters that everyone can use, i.e. often multiple nodes will need to individually load
/robot_description
into their parameter namespace.robot_state_publisher
gets around that problem by publishing astd_msgs::msg::String
message with the entire URDF file that other files can then use.Right now,
rdf_loader
requires that a parameter with the robot description is set AND that a separate parameter is set with the SRDF is set.I find this most annoying when trying to plan from RViz, and you need to load the URDF/SRDF into the namespaces for both move_group and Rviz.
There are three different things that I think would make things easier:
RDFLoader
allows for the parameter to be set for the URDF or reads it in from a topic.RDFLoader
publishes astd_msgs::msg::String
with the SRDFRDFLoader
subscribes to the above String as an alternative to the parameter.There's two tricky parts that I foresee:
RDFLoader
constructor in a sufficiently concise way that allows for parameter or topic.RDFLoader
doesn't subscribe to the topic it publishes.The text was updated successfully, but these errors were encountered: