[Démarrer avec ROS2] Introduction à rqt_console

  Bonjour à tous, je suis Brother Hu. À partir d'aujourd'hui, je vais passer un moment et commencer à passer de ROS1 à ROS2. Dans le dernier article, nous comprendrons le concept d '"Actions" dans ROS 2, jusqu'à présent la base de base la plus élémentaire Concept, nous avons tous partagé l'introduction. Puisque je suis aussi chez moi en vacances, dans cet article, nous allons présenter brièvement un outil très intéressant "rqt_console", qui peut encore nous aider à comprendre certaines nouvelles fonctionnalités de ROS2.

0 présentation

  "rqt_console" est un outil graphique pour afficher les messages de journal dans ROS 2. Généralement, les messages du journal sont affichés dans le terminal. En utilisant rqt_console, vous pouvez collecter ces messages au fil du temps, les visualiser de près de manière plus organisée, les filtrer, les enregistrer et même recharger les fichiers enregistrés pour les suivre à différents moments.

  Les nœuds utilisent des journaux pour générer des messages sur les événements et l'état de différentes manières. Leur contenu est généralement informatif pour le bien de l'utilisateur. L'intention d'un message de journal est définie par l'auteur du nœud et le contenu peut être écrit au moment de l'exécution.

1 départ

Démarrez rqt_console dans un nouveau terminal avec la commande :

ros2 run rqt_console rqt_console

La fenêtre rqt_console s'ouvrira :


  La première section de la console est l'endroit où les messages du journal du système sont affichés. Au milieu, vous pouvez choisir de filtrer les messages en excluant les niveaux de gravité. Vous pouvez également ajouter d'autres filtres d'exclusion à l'aide du bouton plus à droite. La section inférieure est utilisée pour mettre en surbrillance les messages contenant la chaîne que vous avez saisie. Vous pouvez également ajouter d'autres filtres dans cette section.
Maintenant, démarrez turtlesim dans un nouveau terminal avec la commande suivante :

ros2 run turtlesim turtlesim_node

2 message rqt_console

  Pour générer des messages de journal à afficher par rqt_console, laissez la tortue se cogner contre le mur. Dans un nouveau terminal, entrez la commande ros2 topic pub suivante (discutée en détail dans le tutoriel des rubriques) :

ros2 topic pub -r 1 /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0,y: 0.0,z: 0.0}}"

  Comme la commande ci-dessus publie des sujets à un rythme régulier, la tortue continue de frapper le mur. Dans rqt_console, vous verrez le même message, avec des gravités d'avertissement affichées à plusieurs reprises, comme ceci :

  Appuyez sur Ctrl + C dans le terminal exécutant la commande ros2 theme pub pour empêcher la tortue de frapper constamment le mur.

3 niveaux de journalisation

Les niveaux de journalisation de ROS 2 sont triés par gravité :

Fatal
Error
Warn
Info
Debug

Il n'y a pas de norme exacte pour ce que chaque niveau représente, mais il est prudent de supposer :

  • Fatal signifie que le système s'arrêtera pour tenter de se protéger contre les dommages.
  • Les messages d'erreur (Error) indiquent des problèmes majeurs qui n'endommagent pas nécessairement le système mais l'empêchent de fonctionner correctement.
  • Les messages d'avertissement (Warn) indiquent une activité inattendue ou des résultats indésirables qui peuvent représenter des problèmes plus profonds, mais qui n'affectent pas directement la fonctionnalité.
  • Les messages d'information (Info) indiquent les événements et les mises à jour d'état comme vérification visuelle que le système fonctionne comme prévu.
  • Les messages de débogage (Debug) détaillent l'ensemble du processus étape par étape d'exécution du système.

  Les niveaux des niveaux ci-dessus sont réduits à leur tour. Si vous définissez le niveau par défaut, vous ne pouvez voir que les informations dont le niveau par défaut et la gravité sont supérieurs au niveau par défaut. Sinon, les informations inférieures au niveau par défaut seront masquées.

  Le niveau par défaut est "Information". Vous ne verrez que les messages du niveau de gravité par défaut et supérieur. Habituellement, seuls les messages "debug" sont masqués, car ce sont les seuls à un niveau inférieur à "info". Par exemple, si vous définissez le niveau par défaut sur "Avertissement", vous ne verrez que les messages dont le niveau de gravité est "Avertissement, Erreur et Fatal".

3.1 Définir le niveau de journalisation par défaut

  Vous pouvez définir le niveau de journalisation par défaut la première fois que vous exécutez un nœud /turtlesim avec remappage. Saisissez la commande suivante dans le terminal :

ros2 run turtlesim turtlesim_node --ros-args --log-level WARN

  Désormais, vous ne verrez pas les avertissements initiaux au niveau des informations qui sont apparus dans la console la dernière fois que vous avez démarré turtlesim. En effet, les messages d'information ont une priorité inférieure à la nouvelle sévérité par défaut d'Avertir.

  rqtconsole est utile si vous devez examiner de près les messages de journalisation de votre système. Vous souhaiterez peut-être examiner les messages du journal pour diverses raisons, généralement pour découvrir ce qui s'est passé et la séquence des événements qui y ont conduit.

Ce qui précède est ce que je veux partager aujourd'hui. Correction d'erreurs, questions, communication : [email protected]

Je suppose que tu aimes

Origine blog.csdn.net/cau_weiyuhu/article/details/128734231
conseillé
Classement