• ROS学习笔记1-引言


    该学习笔记参考ROS官方wiki的内容,见:http://wiki.ros.org/ROS/Introduction

    1. 什么是ROS
      ROS的全称是Robot Operating System,即机器人操作系统,他能提供类似操作系统的一些功能:硬件抽象、底层设备控制、通用功能的实现、进程间消息传递和包管理等。
      同时提供了工具来获取、编译、编写并在不同计算机上运行代码。ROS不同于通用的操作系统Windows或Linux这些,他更像一个通用的机器人软件框架。
      ROS在运行时通过进程间的对等(Peer2Peer)网络通信使节点之间进行松耦合,ROS支持多种不同调用方式,包括基于服务(Service)的RPC方式通信(远程过程调用)、通过主题(Topic)进行异步数据流通信以及通过参数服务器(Parameter Server)进行数据存储,ROS不是一个实时框架,但是可以和实时代码进行集成。
    2. ROS的目标
      ROS的主要目标是为了代码共享和协作,本质是方便独立开发和代码重用。目标详述如下:
      • 轻薄(Thin):不会对main()函数进行封装,这样可以使ROS中使用的代码便于集成到其它软件框架中。
      • 不可知(agnostic)ROS库:合适的开发方式是使用干净的接口编写功能代码作为ROS库。
      • 语言无关:ROS框架可以在任何现代语言中实现,已经在Python,C++和LISP中实现,也有在Java和Lua中写的实验库。
      • 易于测试:ROS有内建的测试框架rostest便于进行测试。
      • 不同尺度:ROS也适合与大规模的实时系统和进程的开发。
    3. 操作系统
      ROS当前只支持基于Unix的操作系统,例如Linux和Mac OS,以后也有可能移植到Windows,但是现在还没有做这部分工作。
  • 相关阅读:
    102. 教程:重装谷歌浏览器的教程
    IGBT知识普及
    [刷机资源] 荣耀8 E5 B391 V2 ROM集合 Xposed DPI调整等 N多自定义功能 Kangvip@HRT( 2017-9-28)
    ITPUB附件下载免输验证码 (实际下载地址的规则)
    花生壳内网穿透不再支持国外IP!
    golang 如何开发windows窗口界面
    golang 热重启
    强化go get命令
    go mod get go-git timeout
    golang单一职责原则接口设计例子
  • 原文地址:https://www.cnblogs.com/spyplus/p/11423265.html
Copyright © 2020-2023  润新知