1、
新建工作空间ws/src
catkin_init_workspace
cd ~/ws
catkin_make
2、
cd ~/ws/src
catkin_create_pkg test roscpp std_msgs //test为文件夹,也是节点名字
在test文件夹中放入你的cpp文件
修改cmake文件
gedit ~/test_ws/src/test-cpp/CmakeLists.txt
更改:ws/src/pkg/cmakelist.txt
cmake_minimum_required(VERSION 3.0.2)
project(test)
find_package(catkin REQUIRED COMPONENTS roscpp std_msgs)
catkin_package()
include_directories( ${catkin_INCLUDE_DIRS})
add_executable(exe_a src/a.cpp) //exe_a是生成的可执行文件名字,在ws/devel/lib里
add_executable(exe_b src/b.cpp)
target_link_libraries(exe_a ${catkin_LIBRARIES})
target_link_libraries(exe_b ${catkin_LIBRARIES})
3、
在ws下编译catkin_make
source devel/setup.bash
$source devel/setup.bash 代码可以通过在.bashrc文件添加指令永久代替
.bashrc为隐藏文件,ctrl+h可以显示出来
启动roscore
rosrun test my.cpp
基础概念:
Nodes:一个可以与其他Nodes通过ROS通信的可执行代码
Messages:用来对着一个topic接收也叫订阅(subscribe)或者发布(publish)消息的数据结构
Topics:Nodes可以订阅(subscribe)一个Topic以接收数据,也可以对着一个Topic发布(publish)消息来发送数据
Master:Name service for ROS (i.e. helps nodes find each other)
rosout:ROS equivalent of stdout/stderr
roscore:Master + rosout + parameter server (parameter server will be introduced later)