ROS是什么

一、ROS通信机制--松耦合分布式通信

1、核心概念

①节点(node)---软件模块

②节点管理器(ROS master)---控制中心,提供参数管理

③话题(topic)---异步通信机制,传输消息(message)

④服务(service)---同步通信机制,传输请求/应答数据

 

2、话题通信模型

3、服务通信模型

 相比于话题通信步骤减少了,是因为在第二步中master返回给listener的直接是一个TCP/IP的地址,话题通信返回的是RPC的地址。

4、话题VS服务

5、动作

①一种问答通信机制

②带有连续的反馈

③可以在任务过程中终止运行

④基于ROS的消息机制实现

action的接口

goal:发布任务目标

cancel:请求取消任务

status:通知客户端当前的状态

feedback:周期反馈任务运行的监控数据

result:向客户端发送任务的执行结果,只发布一次

二、ROS的开发工具

①命令行/编译器

②launch启动文件(通过XML文件实现多节点的配置和启动,可自启动ROS master)

③TF坐标变换库

TF功能包:可以求相对位置(如机器人中心坐标相对于全局坐标的位置、机器人嫁娶物体相对于机器人中心坐标系的位置)

TF坐标变换如何实现:广播TF变换,监听TF变换

④Qt工具箱

⑤Rviz(一款三维可视化工具,可以很好的兼容基于ROS软件框架的机器人平台)

⑥ Gazebo(一款功能强大的三维物理仿真平台)

具备强大的物理引擎、高质量的图形渲染、方便的编程与图形接口、开源免费

典型的应用场景包括(测试机器人算法、机器人设计、现实情境下的回溯测试)

Rviz只显示数据,负责渲染可视化,Gazebo创造数据,仿真

三、ROS应用功能

①导航框架

②SLAM

③Movelt!

④SMACH任务级状态机

............

四、ROS的生态系统

1、发行版(distribution):包括一系列带有版本号、可以直接安装的功能包

2、软件源(repository):ROS依赖于共享网络上的开源代码,不同组织机构可以开发或者共享自己的机器人软件

3、ROS wiki:记录ROS信息文档的主要论坛

4、邮件列表(Mailing list):交流ROS更新的主要渠道,同时也可以交流ROS开发的各种疑问

5、ROS Answers:咨询ROS相关问题的网站

6、博客(Blog):发布ROS社区中的新闻、图片、视频

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值