一、创建工作空间
1、ctr+alt+t打开终端
2、创建工作空间,工作空间名为'catkin_ws'
mkdir -p ~/catkin_ws/src
3、进入工作空间目录
cd ~/catkin_ws
4、初始化工作空间
catkin_make
5、设置环境变量
source devel/setup.bash
二、创建ROS包
1、进入src目录
cd ~/catkin_ws/src
2、创建新的ROS包,假设包名为'my_package',并且需要依赖'roscpp'和'std_msgs'
catkin_create_pkg my_package roscpp std_msgs
三、编写C++文件
1、进入包目录
cd ~/catkin_ws/src/my_package
2、创建’'src'目录(如果不存在)
mkdir src
3、在包的src目录下创建一个名为my_node.cpp的c++文件
touch src/my_node.cpp
4、编辑my_node.cpp文件,添加自己代码
#include <ros/ros.h>
int main(int argc, char** argv)
{
ros::init(argc, argv, "my_node");
ros::NodeHandle nh;
ROS_INFO("Hello, World!");
ros::spin();
return 0;
}
四、修改my_package包内的CMakeLists.txt和package.xml文件
1、编辑my_package包下的CMakeLists.txt(内容和上面节点对应)
nano CMakeLists.txt
## Declare a C++ executable
add_executable(my_node src/my_node.cpp)
## Specify libraries to link a library or executable target against
target_link_libraries(my_node
${catkin_LIBRARIES}
)
2、编辑package.xml(内容和上面依赖项对应,如果文件里面有就不需要添加第二部分的内容了)
nano package.xml
<build_depend>roscpp</build_depend>
<build_depend>std_msgs</build_depend>
<exec_depend>roscpp</exec_depend>
<exec_depend>std_msgs</exec_depend>
五、编译工作空间
1、返回工作空间根目录
cd ~/catkin_ws
2、编译工作空间
catkin_make
六、运行节点
1、打开两个终端A,B
2、在终端A运行
roscore
3、在终端B运行
(1)设置环境变量
source devel/setup.bash
(2)运行节点
rosrun my_package my_node