如果搜索如何使用ROS,搜索结果肯定是先建立工作空间,在创建功能包等等步骤,但其实不需要这么麻烦。
在Python中使用ROS,只需要在Pycharm的Project Structure中的Add Content Root加入ros的packages就可以了,如下图
在C++的项目中使用ROS,只需要在CMakeLists.txt中加入
find_package( OpenCV REQUIRED )
find_package(catkin REQUIRED)set(cv_bridge_DIR /usr/local/share/cv_bridge/cmake)find_package(catkin REQUIRED COMPONENTSroscpprospysensor_msgsstd_msgscv_bridgeimage_transport
)include_directories(
${PROJECT_SOURCE_DIR}/include
${OpenCV_INCLUDE_DIRS}
${catkin_INCLUDE_DIRS}
)set(SRC_LIST
./src/这里放所有自己写的cpp文件.cpp
)add_executable(main ${SRC_LIST})target_link_libraries( main
${OpenCV_LIBS}
${catkin_LIBRARIES}
)
在CMakeLists.txt中引用catkin的相关package就可以了,set cv_bridge_DIR是因为cv_bridge会跟自己的OpenCV冲突,要自己下载一个cv_bridge的包,编译,安装,在引用这个自己编译的cv_bridge就可以了。
在Python和C++的项目中分别定义节点,publisher, subsriber,订阅相同的topic就可以实现python和C++的ROS节点的通讯。