ROS不需要完全重新开发已有的系统和程序,而是通过加入一些标准化的代码就能对已有的非ROS程序进行ROS化的转化。并且很多通用的工具和软件都有提供,因此可以专注于自己感兴趣或想要做出贡献的部分,这反而可以节省开发和维护所需的时间。对于通过ROS对机器人进行操控的方式存在五大特点,分别列出如下所述:

  1. 程序的可重用性
    专注于自己想要开发的部分,对剩下的功能可以下载相关功能包来使用。相反,也可以将自己开发出来的程序和其他人分享,让他们也可以使用。

  2. 是基于通信的程序
    为了提供一种服务,很多时候在同一个框架里编写很多程序:从传感器或舵机的硬件驱动到传感、识别和动作等所有种类的程序。但为了重用机器人软件,根据每个处理器的用途将其分成更小的部分。根据平台的不同,我们将此称为组件化或节点化。必须由划分为最小执行单元的节点之间发送和接受数据,而平台具有关于该数据通信的所有一般信息。并且,这与最小的单位进程连接到网络的物联网(IOT)的概念一致,因此可以用作物联网平台。并且,被划分成最小执行单元的程序可以进行小单元的调试,这非常有助于找出错误。

  3. 提供开发工具
    ROS提供调试相关的工具-2维绘图和3维视觉化工具RViz,所以无需亲手准备机器人开发所需的开发工具,可以直接拿来使用。例如,在机器人开发中,可视化机器人的模型的情况比较多,通过遵守规定的信息格式,可以直接确认机器人的模型,并且还提供3D仿真器,因此易于扩展到仿真实验。另外,最近比较受人关注的点云形式也可以从因特尔的RealSense或微软的Kinect获得的3D距离信息转化过来。此外,实验中使用的数据可以被记录下来,因此需要的时候随时都可以重现实验当时的情况。像这样,ROS的一个重要特点是通过为机器人开发提供必要的软件工具,使开发的便利性达到最大化。

  4. 活跃的开发者社区
    至今比较封闭的机器人学界和机器人业界都因为前述的功能而走向重视互相之间的合作的方向。其目的可能各自相异,但实际的合作正在通过这种软件平台发生着。其核心是开源软件平台的社区。

  5. 生态系统的形成
    起初,各种硬件技术泛滥,却没有能整合它们的操作系统。在这种情况下,各种软件平台已经出现,最受瞩目的ROS现在已经开始构建生态系统。这个正在形成的生态系统里,机器人硬件领域的开发者、ROS 开发运营团队、应用软件开发者以及用户也能像机器人公司和传感器公司一样从中收益。

ros机器人软件平台的五大特点相关推荐

  1. ROS:机器人软件平台(一)

    ROS:机器人软件平台(一) 导论 ROS简介 "ROS是一个开放源代码的机器人元操作系统.它提供了我们对操作系统期望的服务,包括硬件抽象.低级设备控制.常用功能的实现.进程之间的消息传递以 ...

  2. ROS机器人编程学习(一)——机器人软件平台

    前言: 今天是2020年9月1日,Slender博客正式启用!从新的学年开始从头记录每一阶段的学习进程,有时间的话也会把以往的学习内容整理放上来. 今天开始从头学习<ROS机器人编程>(哦 ...

  3. ROSCon 2016视频和幻灯片发布 ROS机器人操作系统重要参考资料

    ROSCon 2016视频和幻灯片发布 By Tully Foote on 十月19,2016 7:28 AM 全部PPT下载地址:http://pan.baidu.com/s/1gf2sn2F RO ...

  4. ROS机器人程序设计(原书第2版).

    机器人设计与制作系列 ROS机器人程序设计 (原书第2版) Learning ROS for Robotics Programming,Second Edition 恩里克·费尔南德斯(Enrique ...

  5. ROS机器人星火计划公开课总结

    非常荣幸参加了两次星火计划公开课(上海站), 感谢NXROBO.EXBOT以及所有支持ROS机器人星火计划的小伙伴们. ----废话开始,与课程总结无关,可跳过---- 在国内20多年的求学生涯以及2 ...

  6. ROS机器人操作系统学习笔记(一)--基本概念

    ROS机器人操作系统学习教程(一)–基本概念 1. 基本概念 1.1 ROS背景 机器人操作系统(Robot Operating System, ROS)是一个应用于机器人上的操作系统,它操作方便.功 ...

  7. ROS机器人入门-环境搭建

    ROS 简介 ROS 是机器人操作系统(Robot Operating System)的英文缩写. ROS 是用于编写机器人软件程序的一种具有高度灵活性的软件架构. ROS 图标 : ROS 是开源的 ...

  8. Ros机器人/物联网操作系统

    综合技术栈 计算机 (微控制器)(OpenCR) 网络 (实时数据处理) 视觉 嵌入式 传感器 驱动器 (舵机控制) 固件开发 (FPGA) 自动驾驶 SLAM 即时定位与地图构建 应用 嵌入式系统 ...

  9. ROS 机器人操作系统进阶实战

    ROS(Robot Operating System) 是一个开源的机器人操作系统,目的是提供开发平台.工具及生态给开发人员,可以让开发人员快速开发.本课程通过精心设计的案例,分析技术要点.理解运行原 ...

最新文章

  1. jquery.each读取json数据
  2. lovely desktop
  3. JDBC——入门知识【转】
  4. 标书中如何正确描述所用的统计学方法
  5. Win10 Bash/WSL调试Linux环境下的.NET Core应用程序
  6. javax.ws.rs.Path注解@Path的工作原理解析
  7. young people can also be a leader
  8. css3实现带有简单动画按钮导航
  9. win系统删除,已经注册的服务
  10. 使用ldconfig命令将/usr/local/lib加入到默认库
  11. ES6新特性_Promise封装Ajax请求---JavaScript_ECMAScript_ES6-ES11新特性工作笔记026
  12. Linux sed 批量替换多个文件中的字符串【转载】
  13. 如何通过eclipse查看、阅读hadoop2.4源码
  14. IAST 初探:博采众长、精准定位、DevOps友好
  15. STM32硬件编程_学习思路
  16. python显示灰度图像,Python读取图像并显示灰度图的实现
  17. ❌ Exiting due to GUEST_PROVISION: Failed to cache ISO: unable to cache ISO:
  18. 基于ssm的房屋出租网
  19. 2018年上半年软考信息安全工程师上午真题及答案解析
  20. 基于TensorFlow的歌曲曲风变换

热门文章

  1. web的常见的性能优化方法
  2. 关于STM32G系列MCU芯片烧录挂掉解决方法
  3. AB test 中的AA test有什么作用?
  4. 调用Mathpix API 自制Mathpix snipping (每月1000次免费!!!)
  5. 使用迅雷下载百度云盘大文件方法
  6. 使用MediaMuxer裁剪视频
  7. 关于物联网网关你了解多少?
  8. 啤酒行业实施ERP案例
  9. 经典的机器学习columnTransformer 示例,用于预处理在线文章 SOV 预测的数据
  10. [文摘20110724]徐鹤宁 语录