前言
学习了ROS2 humble之后,做项目的过程中发现很多想要使用的插件基本都是支持ROS1的,如果想要使用那么必须自己去移植。这对于一个仅仅学习ROS2的人来说实在很困难。因此有必要去学习ROS1。
老规矩,先查看一个完整的ROS1的文件系统是怎么样的,然后看看运行一个简单的Hello world
样例是如何操作的。
ROS1文件系统
1 | WorkSpace --- 自定义的工作空间 |
其中,
devel
文件夹类似于ROS2里面的install
文件夹
运行一个Hello World
程序操作流程(C++为例)
- 1.创建工作空间并初始化
1 | mkdir -p ty_ros_ws(自定义空间名称)/src |
- 2.进入 src 创建 ros 包并添加依赖
1 | cd src |
其中 roscpp、rospy 与 std_msgs是依赖包。
- 3.进入 hello_vscode(自定义ROS包名)包里面的src,创建
C++
文件,名为:Hello_vscode_c.cpp
。然后写入下面的内容:
1 | #include "ros/ros.h" |
- 4.调整配置文件
CMakeList.txt
1 | add_executable(hello_vscode_c(一般使用步骤3的源文件名,当然也可以自己舍弃其他的但是不建议) src/hello_vscode_c.cpp(步骤3的源文件名.cpp) |
5.编译:进入ty_ros_ws(自定义空间名称),然后
catkin_make
编译6.在终端运行
roscore
7.再打开一个新的终端
source ./devel/setup.bash
rosrun hello_vscode(包名) hello_vscode_c(设置的可执行文件名,一般是源文件名)
8.控制台打印:
1 | Hello from Felix! |
参考内容:
- 赵虚左BiliBili里面的ROS1教程