学习资料:https://sychaichangkun.gitbooks.io/ros-tutorial-icourse163/content/chapter1/
1、Linux下的编译器:gcc/g++ , Makefile , Cmake , …
ROS对Cmake进行拓展 — Catkin(对cmake , make指令进行封装)
2、Catkin编译与工作空间
编译流程:catkin workspace包括src\build\dev三部分,编译从左到右进行。
工作空间创建代码:
$ mkdir -p ~/catkin_ws/src #直接创建到第二层级的src目录
$ cd ~/catkin_ws/ #打开工作空间
$ catkin_make #初始化工作空间
查看工作空间结构
$ cd ~/catkin_ws
$ sudo apt install tree
$ tree
3、ROS通信架构
ROS的通信架构包括数据处理、进程运行、参数的传递等。
1)最小单元节点Node,节点管理器Node Master
2)ROS的“发动机”launch文件
3)ROS的通信方式有四种:
Topic话题:【Publish / Scribe】【单向通信】【点对点】【连续、高频的数据发布(实时、周期)】【异步】【一对多/多对多】
Service服务:【Service / Client】【Request / Reply】【偶尔使用的功能/具体的任务(一次性、)】【同步】【一对一/多对一】
Parameter Service参数服务器(字典)
rosparam set param_key param_value ***设置参数 ***
rosparam get param_key 显示参数
rosparam load file_name 从文件加载参数
rosparam dump file_name 保存参数到文件
rosparam delete 删除参数
rosparam list 列出参数名称
Actionlib动作库:可以随时被查看过程进度,也可以终止请求。