前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解析ROS(机器人操作系统)

解析ROS(机器人操作系统)

作者头像
AI研习社
发布2019-05-14 17:09:28
1.5K0
发布2019-05-14 17:09:28
举报
文章被收录于专栏:AI研习社AI研习社
机器人是世间的新事物,每个人都想研究它。全名为机器人操作系统的ROS并不完全是一个操作系统,而是一个框架。如果你把机器人当作一座房子,那么ROS就像一个可以帮助一切运作的管道系统。ROS促进了代码的重用,因此我们不需要真正地处理已经构建的任务,而是将时间花在一些尚未解决的问题上。

在2007年,斯坦福人工智能实验室的人们意识到重用代码对社区有很大帮助时,ROS才开始活跃起来。之后,它搬到了硅谷的一个名为Willow Garage的孵化中心,在那里他们为进一步扩展它提供了大量资源,并实施了很好的测试。自2013以来,它由OSRF,即开源机器人基金会来管理。

为什么我们需要ROS?

  1. 建造任何事物 ROS具有适用于各种应用程序和硬件的软件包。人们可以使用这些包来构建围绕机器视觉的地图。
  2. 分布式系统 机器人的每个部件都由分布式信息系统连接。即使一个组件发生故障,也不会影响其他组件的工作。
  3. 独立于硬件 您完全可以自由决定要在Bot中使用哪些组件。ROS的设计还可以使其与运行在不同语言上的不同组件和子系统一起工作。
  4. 开源的ROS连接 ROS可以与其他流行的开源项目集成。举个例子,如果你想模拟一个机器人,你就用Gazebo。如果您想使用OpenCV的计算机视觉算法和程序,ROS将与所有这些集成在一起。
  5. 树莓派上的ROS ROS的开发使得其可以在不同的内核上运行。它也可以在树莓派运行,但是官方版本的Raspbian不支持它。Linux发行版可以安装在树莓派并支持ROS。

与其他付费或专有的框架相比,ROS是一个开源框架。ROS也有很好的社区支持,这使得它适合对机器人感兴趣的初学者。

ROS的结构

ROS的工作依赖三个主要部分:

  1. 主站:它是一个节点声明和注册服务,使得节点能够找到彼此并交换数据。
  2. 节点:节点是可执行文件的实例。节点可以是传感器、电机、处理器或监控算法。开始运行的每个节点都向主节点自我声明。节点可以是订阅服务器或发布服务器,例如,发布服务器节点1是一个摄像头,它将摄像头源作为输出,而订阅服务器节点1是一个笔记本电脑,它请求它的订阅源。为了帮助发送这些数据,主题会出现在图片中。
  3. 主题:主题是基于订阅及发布系统的数据传输系统。一个或多个节点可以将数据发布到主题,剩余节点可以读取该主题的数据。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI研习社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么我们需要ROS?
  • ROS的结构
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档