ROS的重要概念--ros术语

  1. 主节点
    主节点负责节点和节点之间的连接和消息通信,类似于名称服务器(Name Server)。roscore是它的运行命令,当您运行主节点时,可以注册每个节点的名字,并根据需要获取信息。没有主节点,就不能在节点之间建立连接和信息交流(如话题和服务)。

  2. 节点
    节点(node)是指在ROS中运行的最小单元。可以把它看作一个可执行程序。节点在运行的同时,向主节点注册节点的名称、消息类型、URI地址和端口。基于这些信息,每个节点可以使用话题和服务与其它节点进行交换信息。

  3. 功能包
    功能包(package)是构成ROS的基本单元。ROS应用程序是以功能包为单位开发的。功能包至少拥有一个以上的节点或拥有用于运行其他功能包的节点的配置文件。

  4. 元功能包
    元功能包(metapackage)是一个具有共同目的的功能包的集合。

  5. 消息
    节点与节点之间是通过消息(message)来发送和接收数据的。消息可以是integer、floating、point、boolean等类型的变量,也可以是消息里包括消息的简单数据结构或列举消息的消息数组结构。根据不同的场景使用不同的消息传输方式:1、单向消息发送/接收方式的话题(topic);2、双向消息请求(request)/响应(response)方式的服务。

  6. 话题
    当publisher节点关于话题(topic)向主节点注册信息之后,它以消息的形式发布这个话题的广告。希望接收这个话题的subscriber节点在主节点获得以这个话题注册的publisher节点的信息。基于这个信息,subscriber节点直接连接到publisher节点,用话题来进行消息的发送和接收。

  7. 服务
    服务(service)消息通信是服务客户端(service client)和服务服务器(service server)之间的同步双向消息通信。服务客户端负责请求,服务服务器负责响应。

  8. 动作
    动作(action)消息通信和服务非常相似,不同的是,动作消息通信需要很长的时间来响应,并且中间需要反馈,还有一点不同的是动作是异步的。

种类区别
话题异步、单向、连续单向的发送/接收数据
服务同步、双向、需要对请求给出即时的响应
动作异步、双向、请求和响应之间的时间很长或需要中途反馈值
  1. rosrun
    rosrun是ROS的基本运行命令。用于在功能包中运行一个节点。

  2. roslaunch
    roslaunch允许运行多个确定的节点,使用*.launch文件来设置可执行的节点,基于可扩展标记语言(XML)。

  3. CMakeLists.txt
    ROS构建系统的catkin基本上使用了CMake,因此在功能包的CMakeLists.txt文件中描述着构建环境。

  4. package.xml
    包含功能包的信息的XML文件,描述着功能包的名称、作者、许可证、依赖包。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值