学习赵虚左老师在B站的课程并自己做一个学习记录
1.整体执行步骤如下
1.1 首先,使用以下程序建立工作空间并进行初始化
mkdir -p catkin_ROS/src
cd catkin_ROS/
catkin_make
1.2 进入 src 中创建 ros 包并添加依赖
cd catkin_ROS/src
catkin_create_pkg helloworld roscpp rospy std_msgs
其中 helloworld 为自定义的ROS包名
建立了 helloworld 包,并在其中建立 src ,其中建立所含依赖,如:roscpp rospy std_msgs
之后右键进行建立新文本文档,并将其重新命名为 helloworld_c.cpp ,进入其中进行程序的编写,主要包含三部分:
注:如果右键无建立新文本文档可用下图步骤进行操作:
第一步:先打开主目录中的模板
第二步:在此界面下打开终端
第三步:输入下面这段命令:
sudo gedit 新建文本文档.txt
之后点击保存,可在主目录下的模板位置找到所建的新文本文档.txt文件。
2.编写程序部分:
第一部分是包含 ros 头文件
#include "ros/ros.h"
第二部分是编写 main 函数
int main(int argc , char *argv[]){
第三部分是初始化 ros 节点
ros::init(argc , argv , "hello_node");
第四部分是输出日志
ROS_INFO("helloworld!");
return 0;
}
整个编译好的代码如图所示:
3. 编写 CMakelist.txt
第一步进入此文件夹并选择如图位置的文件:
第二步对如图两部分进行修改:
注:
add_executable(hello src/helloworld_c.cpp)
target_link_libraries(hello
${catkin_LIBRARIES}$
)
两处代码中的 hello 可以替换任意的名称,保持一致即可!
4.再次编译
第一步:
cd catkin_ROS/
catkin_make
第二步:
还是在当前工作空间中输入
source ./devel/setup.bash
5. 程序执行
5.1 打开终端一
输入
roscore
5.2 打开终端二
输入
rosrun helloworld hello
注 :代码中的 hello 与 3. 编写 CMakelist.txt 中的注部分的 hello 部分一致
最后成功输出 hello world!