ROS nodelet 理解记录

发现网上许多的例子都是基于官网的例子,还需要做进一步的说明。

1. NODELET_DEBUG 是无法打印的信息的,需要使用NODELET_INFO

NODELET_DEBUG("Adding %f to get %f", value_, output->data);
2. cmake 需要添加如下
添加导出设置,因为nodelet 没有main 函数,不需要在build 模块添加可执行的定义,只需要在链接库中添加
if(catkin_EXPORTED_LIBRARIES)
  add_dependencies(nodelet_math ${catkin_EXPORTED_LIBRARIES})
endif()
 
在链接库中添加
add_library(nodelet_math src/plus.cpp)
target_link_libraries(nodelet_math ${catkin_LIBRARIES})
 
find_package(catkin REQUIRED COMPONENTS nodelet roscpp std_msgs)
 
catkin_package(
  LIBRARIES nodelet_math
  CATKIN_DEPENDS nodelet
)
 
 
packge.xml 需要添加
 
<build_depend>nodelet</build_depend>
<run_depend>nodelet</run_depend>
<export>
  <nodelet plugin="${prefix}/plus_nodelet.xml" />
</export>
 
plus_nodelet.xml 中需要注意 lib 后面的随便写
<library path="lib/libnodelet_math">
 
posted @ 2018-09-28 20:23  山之子  阅读(780)  评论(0编辑  收藏  举报