当前位置: 首页 > news >正文

机器人系统ros2-开发学习实践16-RViz 用户指南

RViz 是 ROS(Robot Operating System)中的一个强大的 3D
可视化工具,用于可视化机器人模型、传感器数据、路径规划等。以下是RViz用户指南,帮助你了解如何使用RViz来进行机器人开发和调试。

启动可视化工具

ros2 run rviz2 rviz2

当 RViz 首次启动时,您将看到此窗口:

在这里插入图片描述

中间的大黑窗口是 3D 视图(因为什么都看不到所以是空的)。左边是显示列表,它会显示您已加载的所有显示。目前它只包含全局选项和网格,我们稍后会讲到。右边是其他一些面板,如下所述。

显示器

显示器是在 3D 世界中绘制某些内容的东西,并且可能在显示器列表中提供一些选项。例如点云、机器人状态等。

添加新显示器

要添加显示,请单击底部的添加按钮:
在这里插入图片描述

这将弹出新的显示对话框:

在这里插入图片描述

顶部的列表包含显示类型。类型详细说明了此显示将可视化哪种数据。中间的文本框提供了所选显示类型的描述。最后,您必须为显示指定一个唯一的名称。例如,如果您的机器人上有两个激光扫描仪,您可以创建两个名为“激光底座”和“激光头”的显示器。Laser Scan

显示属性

在这里插入图片描述

显示状态

每个显示都有自己的状态,以帮助您了解一切是否正常。状态可以是:OK、、或。状态在显示标题的背景颜色中指示,也可以在状态类别中看到,如果显示已展开,您可以查看Warning:ErrorDisabled

在这里插入图片描述
类别Status还扩展以显示特定状态信息。此信息对于不同的显示器是不同的,并且消息应该是不言自明的。


内置显示类型

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/47c737024e414a3ca128c5a60bd6483f.png

配置

不同的显示器配置通常适用于可视化器的不同用途。例如,对完整 PR2 有用的配置不一定对测试车有用。为此,可视化器允许您加载和保存不同的配置。

配置包含:

  • 显示器 + 其属性

  • 工具属性

  • 3D 可视化的视点和设置

视图面板

可视化器中有许多不同类型的相机可供选择。

在这里插入图片描述
相机类型包括不同的相机控制方式和不同类型的投影(正交与透视)。

轨道相机(默认)

轨道摄像机只是围绕焦点旋转,同时始终注视该点。移动摄像机时,焦点会显示为一个小圆盘:

在这里插入图片描述

控制:

  • 鼠标左键:单击并拖动以围绕焦点旋转。

  • 鼠标中键:单击并拖动可在由相机的上和右向量形成的平面中移动焦点。移动的距离取决于焦点 - 如果焦点上有一个物体,并且您单击该物体的上方,该物体将停留在鼠标下方。

  • 鼠标右键:单击并拖动以放大/缩小焦点。向上拖动放大,向下拖动缩小。

  • 滚轮:放大/缩小焦点

FPS(第一人称)相机

FPS 相机是第一人称相机,因此它会旋转,就像您用头部看一样。

控制:

  • 鼠标左键:单击并拖动以旋转。按住 Control 键并单击以拾取鼠标下方的对象并直接查看它。

  • 鼠标中键:单击并拖动以沿着相机的上下矢量形成的平面移动。

  • 鼠标右键:单击并拖动以沿相机的前向矢量移动。向上拖动向前移动,向下拖动向后移动。

  • 滚轮:向前/向后移动。

自上而下的正交

自上而下的正交相机始终沿 Z 轴(在机器人框架中)向下看,并且是正交视图,这意味着物体不会随着距离变远而变小。

控制:

  • 鼠标左键:单击并拖动以绕 Z 轴旋转。

  • 鼠标中键:单击并拖动可沿 XY 平面移动相机。

  • 鼠标右键:单击并拖动以放大图像。

  • 滚轮:缩放图像。

XY 轨道

与轨道相机相同,焦点限制在 XY 平面内。

控制:

  • 参见轨道相机。

第三人称跟随者

相机保持朝向目标框架的恒定视角。与 XY 轨道相反,如果目标框架偏航,相机就会转动。例如,如果您正在对有角落的走廊进行 3D 映射,这可能会很方便。

控制:

  • 参见轨道相机。

自定义视图

视图面板还允许您创建不同的命名视图,这些视图会被保存并可在其中切换。视图由目标框架、相机类型和相机姿势组成。您可以通过单击视图面板的“保存”按钮来保存视图。

在这里插入图片描述

配置选项解释

Current View
当前选定的视图类型及其配置参数。以下是Orbit视图的具体参数说明:

  • Near Clip Distance: 最近裁剪距离,表示相机能看到的最近距离。默认值为0.01。
  • Invert Z Axis: 反转Z轴。选中此选项会使Z轴向下。
  • Target Frame: 目标框架,视图将相对于该框架进行渲染。通常设置为。
  • Distance: 相机与焦点之间的距离。默认值为10。
  • Focal Shape Size: 焦点形状的大小。默认值为0.05。
  • Focal Shape Fixed Size: 焦点形状固定大小。选中此选项将使焦点形状始终保持相同大小。
  • Yaw: 水平旋转角度,表示绕垂直轴的旋转。
  • Pitch: 垂直旋转角度,表示绕水平轴的旋转。
  • Focal Point: 焦点坐标,表示相机将围绕的中心点。默认值为0; 0; 0。

坐标系

RViz 使用 tf 变换系统将数据从其到达的坐标系转换为全局参考系。在可视化工具中,有两个坐标系很重要,即目标坐标系和固定坐标系。

固定框架

这两个框架中最重要的是固定框架。固定框架是用来表示框架的参考框架world。这通常是map、 或world或类似的东西,但也可以是,例如,你的里程计框架。

如果错误地将固定框架设置为机器人的底座,那么机器人曾经见过的所有物体都会出现在机器人前方,位于相对于检测到它们的机器人的位置。为了获得正确的结果,固定框架不应相对于世界移动。

如果改变固定框架,所有当前显示的数据都会被清除,而不是重新转换。

目标框架

目标坐标系是相机视图的参考坐标系。例如,如果您的目标坐标系是地图,您将看到机器人在地图上行驶。如果您的目标坐标系是机器人的底座,机器人将保持在同一位置,而其他所有物体都相对于它移动。

工具

可视化工具的工具栏上有许多工具可供使用。以下部分将简要介绍这些工具。您可以在“帮助”->“显示帮助面板”下找到更多信息。

在这里插入图片描述

2D 姿态估计

此工具可让您设置初始姿势以播种定位系统(在initialposeROS 主题上发送)。单击地面上的某个位置并拖动以选择方向。可以在面板中更改输出主题。Tool Properties

在这里插入图片描述
此工具与导航堆栈配合使用。

键盘快捷键:p

2D 导航目标

此工具可让您设置 ROS 主题上发送的目标goal_pose。单击地面上的某个位置并拖动以选择方向。可以在面板中更改输出主题。Tool Properties

在这里插入图片描述

此工具与导航堆栈配合使用。

键盘快捷键:g

发布点

发布点工具可让您在可视化工具中选择一个对象,然后该工具将根据框架发布该点的坐标。结果显示在底部,就像测量工具一样,但也发布在主题上clicked_point。

在这里插入图片描述

键盘快捷键:u

时间

在模拟器中运行时,“时间”面板非常有用,因为它允许您查看已过去的 ROS 时间,以及已过去的(即实际)时间。时间面板还允许您重置可视化工具的内部时间状态,这将重置所有显示以及 tf 的内部数据缓存。Wall Clock

在这里插入图片描述

如果您没有在模拟中运行,时间面板几乎毫无用处。在大多数情况下,它可以关闭,您可能甚至不会注意到(除了为 rviz
的其余部分留出更多的屏幕空间)。

相关文章:

机器人系统ros2-开发学习实践16-RViz 用户指南

RViz 是 ROS(Robot Operating System)中的一个强大的 3D 可视化工具,用于可视化机器人模型、传感器数据、路径规划等。以下是RViz用户指南,帮助你了解如何使用RViz来进行机器人开发和调试。 启动可视化工具 ros2 run rviz2 rviz2…...

安全测试 之 安全漏洞 CSRF

1. 背景 安全测试是在功能测试的基础上进行的,它验证软件的安全需求,确保产品在遭受恶意攻击时仍能正常运行,并保护用户信息不受侵犯。 2. CSRF 定义 CSRF(Cross-Site Request Forgery),中文名为“跨站请…...

交易中的预测和跟随

任何的交易决策,一定是基于某种推理关系的,这种推理关系是基于t时刻之前的状态,得到t时刻之后的结果,我们基于这种推理关系,根据当前的状态,形成了未来结果的某种预期,然后基于这种预期采取相应…...

vs2022专业版永久密钥

vs2022专业版永久密钥: vs2022专业版永久密钥: Visual Studio 2022 Enterprise:VHF9H-NXBBB-638P6-6JHCY-88JWH Visual Studio 2022 Professional:TD244-P4NB7-YQ6XK-Y8MMM-YWV2J...

MongoDB环境搭建

一.下载安装包 Download MongoDB Community Server | MongoDB 二、双击下载完成后的安装包开始安装,除了以下两个部分需要注意操作,其他直接next就行 三.可视化界面安装 下载MongoDB-compass,地址如下 MongoDB Compass Download (GUI) | M…...

数据结构【队列】

队列的的概念 队列是一种特殊的线性表,特殊之处在于它只允许在表的头部进行删除操作,而在表的尾部进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中…...

微信小程序上架,AI类目审核(AI问答、AI绘画、AI换脸)

小程序对于生成式AI类目的产品上架审核较为严格,这也是近两年新增了几个类目,一旦小程序中涉及生成式AI相关的内容,如果你选择相应类目,但审核被划归为这一类,都需要准备此类目的审核,才能正常上架。 如果…...

Vue3学习记录(第一天)

Vue3学习记录_第一天 背景说明记录Vue3实现响应式前端的反射前端对象的属性赋值Vue3响应式实现过程稿前端移除对象的属性 背景 本次学习主要是看视频学习, 没有跟练, 但是很多知识点感觉又容易忘记. 所以通过笔记的方式输出一下. 说明 估计只能自己看懂, 如果能提供一些其他…...

springboot+vue+mybatis房屋租贷系统+PPT+论文+讲解+售后

本论文系统地描绘了整个网上房屋租赁系统的设计与实现,主要实现的功能有以下几点:管理员;首页、个人中心、房屋类型管理、房屋租赁管理、会员管理、订单信息管理、合同信息管理、退房评价管理、管理员管理,系统管理,前…...

Day30 登录界面设计

​ 本章节,实现了登录界面窗口设计 一.准备登录界面图片素材(透明背景图片) 把准备好的图片放在 Images 文件夹下面,格式分别是 .png和 .icoico 图片,右键属性,生成操作选 内容 png 图片,右键属性,生成操作选 资源 选中 login.png图片鼠标右键,选择属性。生成的操作选…...

VOJ 迷阵突围 题解 次短路径 dijkstra算法

迷阵突围 题目描述 小明陷入了坐标系上的一个迷阵,迷阵上有 n 个点,编号从 1 到 n 。小明在编号为 1 的位置,他想到编号为 n 的位置上。小明当然想尽快到达目的地,但是他觉得最短的路径可能有风险,所以他会选择第二短…...

Oracle SQL详解

Oracle SQL是一种用于管理和操作Oracle数据库的编程语言。以下是一些基本的Oracle SQL语法和建表建用户的详解。 创建用户 在Oracle中,创建用户通常需要具有足够权限的用户(通常是具有DBA角色的用户)。以下是一个创建用户的例子:…...

产业,到底需要什么大模型?

[ 产业究竟需要怎样的大模型?关于这个问题,本文作者便提出了他的看法,并总结了产业大模型目前阶段的三点落地挑战。一起来看看,或许可以帮助你更好地理解大模型与行业、与产业的融合。 写下这篇的起因,是前不久的一件事…...

每日5题Day17 - LeetCode 81 - 85

每一步向前都是向自己的梦想更近一步,坚持不懈,勇往直前! 第一题:81. 搜索旋转排序数组 II - 力扣(LeetCode) class Solution {public boolean search(int[] nums, int target) {int n nums.length;if (n…...

后端开发面经系列 --中望C++面经

中望C面经,全部内容! 公众号:阿Q技术站 文章目录 中望C面经,全部内容!一面 8.15 时长45min1、介绍项目相关2、gdb怎么调试的?打断点用什么指令?3、gcc的编译过程4、cmake添加头文件搜索路径用…...

德国西门子论未来质量管理 - 如何与明天相遇?

未来制造业的质量 -- 如何用软件方案满足质量要求 作者:Bill Butcher 翻译&编辑:数字化营销工兵 【前言】在Frost&Sullivan最近发表的一份白皮书中,他们讨论了制造业的质量投资。质量是制造过程的关键要素,但似乎比其他…...

webpack快速入门---webpack的安装和基本使用

webpack是什么 本质上,webpack 是一个用于现代 JavaScript 应用程序的 静态模块打包工具。当 webpack 处理应用程序时,它会在内部从一个或多个入口点构建一个 依赖图(dependency graph),然后将你项目中所需的每一个模块组合成一个或多个 bund…...

后端开发面经系列 -- 华为C++一面面经

HUAWEI – C一面面经 公众号:阿Q技术站 来源:https://www.nowcoder.com/feed/main/detail/b8113ff340d7444985b32a73c207c826 1、计网的协议分几层?分别叫什么? OSI七层模型 物理层 (Physical Layer): 负责物理设备之间的原始比…...

csrf漏洞与ssrf漏洞

环境:用kali搭建的pikachu靶场 一.CSRF 1.CSRF漏洞简介 跨站请求伪造(CSRF)漏洞是一种Web应用程序安全漏洞,攻击者通过伪装成受信任用户的请求来执行未经授权的操作。这可能导致用户在不知情的情况下执行某些敏感操作&#xff0…...

AWS EC2服务器开启root密码,SSH登录

1) EC2 Instance Connect连接,更改root密码 sudo passwd root 2)接着切换到切换到 root 身份,编辑 SSH 配置文件 $ sudo -i$ vi /etc/ssh/sshd_configPasswordAuthentication no,把 no 改成 yes #PermitRootLogin prohibit-passw…...

R语言AI模型部署方案:精准离线运行详解

R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

第25节 Node.js 断言测试

Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合

在汽车智能化的汹涌浪潮中,车辆不再仅仅是传统的交通工具,而是逐步演变为高度智能的移动终端。这一转变的核心支撑,来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒(T-Box)方案:NXP S32K146 与…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

Java毕业设计:WML信息查询与后端信息发布系统开发

JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发,实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构,服务器端使用Java Servlet处理请求,数据库采用MySQL存储信息&#xff0…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分:体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分:体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...