ROS程序设计系列 - 4.ROS Programming

1. 源由

继续学习ROS编程,本章主要是一些基本组件和概念。并结合示例代码进行阐述。

2. 概念

2.1 ROS services

传统的RPC请求/回复交互在分布式系统中通常是必需的。请求/回复通过服务完成,服务由一对消息定义:一个用于请求,另一个用于回复。

提供服务的ROS节点在一个字符串名称下提供服务,客户端通过发送请求消息并等待回复来调用服务。这种服务模式看起来像是Windows/Linux下的远程过程调用。
在这里插入图片描述
基本模型:Request/Response
在这里插入图片描述

2.2 ROS actions

在这里插入图片描述
基本模型:Goal/Result/Feedback

在这里插入图片描述

2.3 ROS time

系统时间虽然好,但是在ROS开发中常用的是ROS time,这个时间被广泛应用与ROS程序中,便于后续模拟和回放。

在这里插入图片描述

2.4 ROS bags

rosbag包提供了一个用于处理包的命令行工具,以及用于在C++和Python中读写包的代码API。在rosbag包之外,从groovy版本开始,还有一个GUI客户端rqt_bag。

在这里插入图片描述

2.5 Debugging

在这里插入图片描述

3. 常见应用

  • ROS Parameters
  • Dynamic Reconfigure
  • Topics
  • Services
  • Action

在这里插入图片描述

4. 示例

4.1 运行

在这里插入图片描述在这里插入图片描述

4.2 代码

在这里插入图片描述在这里插入图片描述

5. 视频课程

Programming for Robotics, Lecture 4 Programming for ROS B

6. 补充

以下主要介绍了一些实际应用场景(机器狗、车、挖掘机):

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值