ROS系统

ROS(Robot Operating System)

在调试SLAM程序时,数据来源有三种:传感器,数据集,bag文件。

若手里没有相应传感器,就需要用虚拟的数据来跑SLAM,其中最方便的当属利用ROS下的bag文件发布topic,然后SLAM程序就可以监视topic发出的数据,就像使用真实的传感器采集数据一样。

中文ROS维基  http://wiki.ros.org/cn

ROS入门教程-安装并配置ROS环境(Kinetic 版本)

功能包/软件包(Packages)

在 ROS 中,所有软件都被组织为软件包的形式,称为 ROS 软件包或功能包,有时也简称为包。 ROS 软件包是一组用于实现特定功能的相关文件的集合,包括可执行文件和其他支持文件。

查看软件包列表和定位软件包 使用下行命令,可以获取所有已安装的ROS软件包列表清单 
rospack list
要找到一个软件包的目录,使用 rospack find 命令:
rospack find package-name
当然,有时你并不知道(或不记得)感兴趣的软件包的完整名称,这时使用 rospack 命令非常方便, 因为该命令支持 tab 命令补全。例如,你可以键入
rospack find turtle
查看软件包: 要查看软件包目录下的文件,使用如下命令:
rosls package-name
如果想“访问”某软件包目录,可以将当前目录切换至此软件包目录,使用如下命令:
roscd package-name

节点管理器(The Master)

ROS 的一个基本目标是使机器人专家设计的很多称为节点(node) 的几乎相对独立的小程序能够同时运行。为此,这些节点必须能够彼此通信。 ROS 中实现通信的关键部分就是 ROS 节点管理器。要启动节点管理器,使用如下命令:roscore  。这个命令非常简单易用: roscore 命令不带任何参数,也无需任何配置。
节点管理器应该在使用 ROS 的全部时间内持续运行。一个合理的工作流程是在一个终端启动 roscore,然后打开其他终端运行其他程序。除非你已经完成 ROS 的相关工作,否则一般没有理由终止 roscore 命令。当结束时,可以通过在 roscore 终端键入 Ctrl-C停止节点管理器

节点(Nodes)

一旦启动roscore后,便可以运行ROS程序了。 ROS程序的运行实例被称为节点(node)。
 

话题

ROS节点之间进行通信所利用的最重要的机制就是消息传递。在ROS中,消息有组织地存放在话题里。消息传递的理念是:当一个节点想要分享信息时,它就会发布(publish)消息到对应的一个或者多个话题;当一个节点想要接收信息时,它就会订阅(subscribe)它所需要的一个或者多个话题。 ROS节点管理器负责确保发布节点和订阅节点能找到对方;而且消息是直接地从发布节点传递到订阅节点,中间并不经过节点管理器转交。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值