- 【1】在使用ROS发布或者订阅消息之前,必须要使用命令
roscore
将这个ROS内核启动才行; - 【2】当编写好相关文件之后,一定要返回到ROS工程目录下,进行编译,具体操作是:
$ cd ~/catkin_ws
$ catkin_make
$ source ~/catkin_ws/devel/setup.bash
- 【3】当使用roscd 语句提示:无法找到相应的ros包的时候,采用
echo "export ROS_PACKAGE_PATH"=~/ <文件名> /:"$ROS_PACKAGE_PATH " >> ~/.bashrc
问题就可以得到解决 - 【4】一般而言,一个ROS工作空间包括:
-(1)src 文件夹: 一般包括ROS包(launch文件+msg文件+src文件+srv文件+头文件)+CMakeLists.txt文件+package.xml文件
-(2)build 文件夹:用来存放编译过程的文件
-(3)devel 文件夹:用来存放目标文件(如setup.bash)
ROS文件空间的基本组成
ROS包的基本组成
- 【5】node是ROS操作系统中的最小单位,当我们需要打开多个node节点的时候会,我们必须采用master来进行管理。
roscore //表示启动ros的master节点
- 【6】rosrun语句的基本命令格式为:
$ rosrun pkg_name node_name //表示的是运行某个包中的节点
- 【7】下图详细展示了如何查看rosnode的相关信息:
- 【8】launch文件:通常我们需要开启很多个节点(Node)才能实现机器人某个功能(如摄像头采集信息,处理信息,对这些信息做出相应判断等),这时我们就直接使用roslaunch命令来实现这个过程:
$ roslaunch pkg_name file_name.launch
该文件的编写规则遵循:xml文件的编写格式。
【9】在ROS系统中,通信方式是其核心概念,主要包括四种方式:topic主题,service服务,parameter service参数服务器,actionlib动作库
(1)详细介绍topic类型的通信方式:是一种单向、异步,实时的、多对多的通信方式,一般有一个publisher和多个subscriber。
(2)常见的topic操作指令包括:
(3)详细介绍Message的通信结构:
类似于结构体类型的变量
基本的操作命令包括: