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社区中的新闻、图片、视频

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/6688.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【设计模式】13、template 模板模式

文章目录 十三、template 模板模式13.1 ppl13.1.1 目录层级13.1.2 ppl_test.go13.1.3 ppl.go13.1.4 llm_ppl.go13.1.5 ocr_ppl.go 十三、template 模板模式 https://refactoringguru.cn/design-patterns/template-method 如果是一套标准流程, 但有多种实现, 可以用 template …

Py脚本_文件分类

最近发现通过Edge和chrome或者其他浏览器下载的文件都存放在一个地方就很繁琐,于是翻找以前的脚本来归纳这些文件,虽然有IDM下载独有会自动分类,但是相信很多同学都在一个文件里找文件,这次就写个Py脚本来实现这个功能。 # -*- c…

k8s集群安装

目录 部署步骤概览 1、基础环境部署 2、docker环境部署 3、配置k8s集群 4、集群初始化 5、安装dashboard软件 写在前面:本文安装单点master多node的k8s集群,主要用于k8s学习或k8s环境测试;部署的是1.23版本,在1.24版本起&am…

stm32单片机开发四、USART“串口通信“

串口的空闲状态时高电平,起始位是低电平,来打破空闲状态的高电平 必须要有停止位,停止位一般为一位高电平 串口常说的数据为8N1,其实就是8个数据位(固定的),N就是none,也就是0个校验…

【Linux 网络】网络基础(一)(局域网、广域网、网络协议、TCP/IP结构模型、网络传输、封装和分用)-- 详解

一、计算机网络的发展背景 1、网络的定义 网络是指将多个计算机或设备通过通信线路、传输协议和网络设备连接起来,形成一个相互通信和共享资源的系统。 (1) 独立模式 独立模式 : 计算机之间相互独立。 (2)…

数据结构——二叉树链式结构的实现(下)

二叉树找值找为x的结点 找值不简单吗?轻轻松松拿捏,大部分同学都会写出这样的代码 但这种代码有问题,因为没有把查找结果返回给上一层,没有用返回值接收。 当找到3时返回给了上一层,但并没有用返回值接收,…

Rust 生命周期浅谈

1. 简述 Rust 中的每一个引用都有其 生命周期(lifetime),也就是引用保持有效的作用域。大部分时候生命周期是隐含并可以推断的,正如大部分时候类型也是可以推断的一样。类似于当因为有多种可能类型的时候必须注明类型,…

大数据面试题(九):Hive的高频面试考点(值得收藏)

文章目录 Hive的高频面试考点 一、Hive中两个大表实现join的操作,简单描述一下

书接上文,助力智能化诊断高质提效,基于轻量级CNN模型MobileNet开发构建人体手骨X光骨骼骨龄分析识别系统

骨龄是骨骼年龄的简称,需要借助于骨骼在X光摄像中的特定图像来确定。通常要拍摄左手手腕部位的X光片,医生通过X光片观察来确定骨龄。这在临床上是一件非常消耗精力和时间的一项放射临床工作。写一个骨龄可能要10多分钟去完成。如果一天要写几十个骨龄&am…

【汇编语言】中断及外部设备操作

【汇编语言】中断及外部设备操作 文章目录 【汇编语言】中断及外部设备操作前言一、中断及其处理中断的概念8086内中断中断处理程序案例:系统中的0号中断中断过程 二、编制中断处理程序中断处理程序及其结构编制中断处理程序——以除法错误中断为例do0子程序应该放在…

基础I/O--文件系统

文章目录 回顾C文件接口初步理解文件理解文件使用和并认识系统调用open概述标记位传参理解返回值 closewriteread总结 文件描述符fd0&1&2理解 回顾C文件接口 C代码&#xff1a; #include<stdio.h> int main() { FILE *fpfopen("log.txt",&…

《MySQL45讲》读书笔记

重建表 alter table t engine InnoDB&#xff08;也就是recreate&#xff09;&#xff0c;而optimize table t 等于recreateanalyze&#xff0c;让表大小变小 重建表的执行流程 建立一个临时文件&#xff0c;扫描表 t 主键的所有数据页&#xff1b;用数据页中表 t 的记录生…

mac通过termius连接Linux服务器

mac上安装 linux系统 如果有 linux服务器账号密码&#xff0c;那么上一步可忽略&#xff1b; 比如&#xff1a;直接连接阿里云或腾讯云账号 1. 安装termius 链接: https://pan.baidu.com/s/1iYsZPZThPizxqtkLPT89-Q?pwdbw6j 提取码: bw6j 官网 Termius - SSH platform for …

【C++】STL — vector的接口讲解 +详细模拟实现

前言: 本章我们将学习STL中另一个重要的类模板vector… vector是表示可变大小数组的序列容器。就像数组一样&#xff0c;vector也采用的连续存储空间来存储元素。但是又不像数组&#xff0c;它的大小是可以动态改变的本质讲&#xff0c;vector使用动态分配数组来存储它的元素v…

配电室智能巡检机器人

近年来&#xff0c;生产过程高度自动化&#xff0c;各工矿企业关键场所需定期巡检维护。但目前巡检主要靠人工&#xff0c;既耗时费力效率又低&#xff0c;且受环境等因素影响&#xff0c;巡检难以全面规范&#xff0c;隐患或问题易被忽视。在此情况下&#xff0c;如何利用现有…

ElasticSearch02(DSL查询文档,DSL处理结果,RestClient查询,旅游案例,数据聚合)【全详解】

目录 一、DSL查询文档 1. 说明 2. 文本检索 3. 精确查询 4. 地理坐标查询 5. 复合查询 6. 课堂演示 7. 小结 二、DSL处理结果 1. 排序 2. 分页 3. 高亮 4. 课堂演示 5. 小结 三、RestClient查询 1.快速入门 2.match查询 3.精确查询 4.布尔查询 5. 算分函数…

锁相环原理解析

在计算机和嵌入式系统中&#xff0c;常常要用锁相环来倍频&#xff0c;那么&#xff0c;锁相环是如何倍频的&#xff0c;其原理又是什么呢&#xff1f; 目录 1. 锁相环基本概念与构成1.1 鉴相器1.2 低通滤波器1.3 压控振荡器 2. 锁相环如何实现倍频3. 锁相环也会失效&#xff…

【前端学习——正则】

https://www.bilibili.com/video/BV1da4y1p7iZ/?spm_id_from333.337.search-card.all.click&vd_source5cef5968d539682b683e7d01b00ad01b 学习网站 https://github.com/ziishaned/learn-regex/blob/master/translations/README-cn.md

Bookends for Mac:文献管理工具

Bookends for Mac&#xff0c;一款专为学术、研究和写作领域设计的文献管理工具&#xff0c;以其强大而高效的功能深受用户喜爱。这款软件支持多种文件格式&#xff0c;如PDF、DOC、RTF等&#xff0c;能够自动提取文献的关键信息&#xff0c;如作者、标题、出版社等&#xff0c…

在M1芯片安装鸿蒙闪退解决方法

在M1芯片安装鸿蒙闪退解决方法 前言下载鸿蒙系统安装完成后&#xff0c;在M1 Macos14上打开闪退解决办法接下来就是按照提示一步一步安装。 前言 重新安装macos系统后&#xff0c;再次下载鸿蒙开发软件&#xff0c;竟然发现打不开。 下载鸿蒙系统 下载地址&#xff1a;http…