2、ROS机器人编程:从基础到实践

ROS机器人编程:从基础到实践

1. ROS的目标

在ROS相关研讨会上,常有人问将ROS与其他机器人软件平台(如OpenRTM、OPRoS、Player等)对比的问题。不过,简单对比意义不大,因为它们用途各异。作为ROS用户,我认为ROS的目标是“构建一个能让全球机器人软件开发实现协作的开发环境”。也就是说,ROS专注于在机器人研发中最大化代码复用,而非局限于所谓的机器人软件平台、中间件和框架。为实现这一目标,ROS具备以下特性:
- 分布式进程 :以最小可执行进程(节点)的形式编程,各进程独立运行并系统地交换数据。
- 包管理 :将具有相同目的的多个进程作为一个包进行管理,便于使用、开发、共享、修改和重新分发。
- 公共仓库 :每个包都公开到开发者首选的公共仓库(如GitHub),并指定其许可证。
- API :开发使用ROS的程序时,只需简单调用API并轻松插入到正在使用的代码中。从各章节介绍的源代码中可以看出,ROS编程与C++和Python差别不大。
- 支持多种编程语言 :ROS程序提供客户端库,支持Python、C++、Lisp等机器人领域流行的编程语言,以及JAVA、C#、Lua和Ruby等。这意味着开发者可以使用自己喜欢的编程语言开发ROS程序。

这些特性让用户能够建立一个全球协作的机器人软件开发环境,代码复用在机器人研发中也越来越普遍,这正是ROS的终极目标。

2. ROS的组件

ROS由以下组件构成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值