ros2 基础学习 ros2 doctor 诊断工具(平台,版本,网络,环境,正在运行的系统)

67 篇文章 1 订阅
56 篇文章 49 订阅
本文介绍了如何使用ros2doctor工具检查ROS2的安装设置,包括平台、版本和网络等问题,并指导用户处理警告和错误,以及通过实例演示如何检查运行中的系统以找出潜在问题。
摘要由CSDN通过智能技术生成

简介

当ROS 2安装程序未按预期运行时,可以使用 ros2 doctor工具检查其设置。 ros2 doctor检查ROS 2的所有方面,包括平台,版本,网络,环境,正在运行的系统等,并警告您可能的错误和问题原因。
  ros2 doctor仅在Eloquent及更高的版本中可以使用。

ros2 doctor是ros2cli包的一部分。只要我们安装了ros2cli,我们就能够使用ros2 doctor,通常我们安装ros2的时候就安装了这个包。

检查您的安装设置

让我们使用ros2doctor工具检查一下您的ROS 2一般设置。首先,在新终端中source ROS 2安装文件,然后输入以下命令:

ros2 doctor

这会对所有安装模块进行检查,等待一会,并返回警告和错误。

如果您的ROS 2安装完好无损,则会看到类似下面的消息:

在这里插入图片描述

All checks passed

但是,返回一些警告消息并不罕见。一个“用户警告”并不意味着您的安装不可用;这很可能只是表明某些配置不理想。

如果您确实收到警告消息,它看起来会像下面这样:

<path>: <line>: UserWarning: <message>

大多数检查都被归类为警告而不是错误。主要由用户您自己决定ros2doctor返回的反馈消息的重要性。如果在您的安装设置中确实发现了不常见的错误,用“UserWarning:ERROR:”来指示,则认为检查不能通过。

您会在问题反馈列表后面看到一条类似于下面这样的消息:

1/3 checks failed
Failed modules: network

一个错误表明系统缺少对ROS 2至关重要的重要安装或功能。您应该解决这些错误,以确保系统正常运行。

检查系统

还可以检查一个运行中的ROS 2系统,以找出产生问题的可能原因。要查看ros2doctor工具在一个运行中的系统上的工作情况,让我们运行Turtlesim,它的各个节点之间都在积极地进行通信。

通过打开一个新终端、source ROS 2安装文件、并输入以下命令来启动该系统:

ros2 run turtlesim turtlesim_node

打开另一个终端并source ROS 2安装文件来运行teleop控制节点:

ros2 run turtlesim turtle_teleop_key

现在在它自己的终端中再次运行ros2 doctor。

ros2 doctor

您将会看到上次运行ros2doctor时遇到的在安装设置上的警告和错误(如果有的话)。后面会跟着与Turtlesim系统本身相关的一些新的警告消息:

UserWarning: Publisher without subscriber detected on
/turtle1/color_sensor.

UserWarning: Publisher without subscriber detected on /turtle1/pose.

似乎/turtlesim节点在将数据发布到两个尚未订阅的话题上,ros2 doctor工具认为这可能会出现问题。

如果运行命令来回显(echo)/color_sensor和/pose话题,则这些警告将会消失,因为发布者将会拥有订阅者。

在这里插入图片描述

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小海聊智造

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值