ROS_Lessons_Learned - RicoJia/notes GitHub Wiki
========================================================================
========================================================================
- Want Gazebo to publish
/joint_state
. Conclusions:- By default, Gazebo does not publish
/joint_state
. One needsJointStateController
to publish it. - However, from source code, we cannot remap the topic name
/joint_state
: Link. One potential solution is changing Gazebo'sns
. But gazebo does not allow it. - Therefore, it seems that we can only publish /joint_states from Gazebo, which seems to be one bottleneck of the plugin
-
moveit!
andjoint_state_publisher
can be easily remapped -
Lessons Learned
- Not gettting all command topics: DO NOT READ ephemeral topics, such as topic list. Read from services, or rosparams
-
rosrun ... __ns:=
is the correct way to launch node in namespace - MQTT not publishing the joint values in the right order:
- Thought we can let Gazebo/Esp32 first publish joint states, motion controller follow the order
- In gazebo, we have put hand and arm joints together.
- But we have two topics: /hand, /arm. So publishing the two separately will require muxing at the end
- **Lesson learned: ** stick to the same paradigm. If they're separate, stick to it
- By default, Gazebo does not publish