Skip to content

Latest commit

 

History

History
49 lines (35 loc) · 4.38 KB

x_03_ROS_debug_tools.md

File metadata and controls

49 lines (35 loc) · 4.38 KB

Средства отладки

Содержание

В этом разделе речь пойдет об инструментах ROS, которые позволяют нам при правильном их применении быстро и точно локализовать неполадки в работе наших програм.

rosnode и rostopic

Прежде чем искать неисправность в программах неплохо было бы узнать, а запущены ли они у нас. И если да, то как они работают. Первыя утилита - это rosnode. Среди ее функции можно выделить:

  • list - выводит список всех запущенных нод
  • info </node_name> - выводит информацию о ноды: список публикуемых и подписанных топиков, с чем эти топики связаны, адрес, где нода запущена
  • kill </node_name> - убивает выбранную ноду

Вторая утилита - это rostopic. Среди ее основные функции:

  • list - список всех активных топиков
  • info </topic_name> - выводит информацию о топике: его тип, какая ноду публикует и как на него подписана
  • hz </topic_name> - время обновления данных топика
  • pub </topic_name> - дает возможность отправить данные в топик из терминала
  • echo </topic_name> - прослушивает информацию из топика

rosbag

Данная утилита позволяет записывать и прогрывать информацию из топиков. Таким образом, спомощью нее появляется возможность записать определенные ситуации и позднее их воспероизвести и обработать.

rosbag record <topic0>...<topicN> - дает возможность записать в bag-файл выбранные топики rosbag record -a - записывает информацию из всех топиков rosbag play <bag_file_name> - проигрывает bag-файл

rqt

Эта утилита предоставляет графический интерфейс для других широко используемых програм отладки. Среди них особо удобными могут оказаться следующие:

  • rqt_graph - выводит на экран в виде диаграммы все существующие ноды и топики, позволяя отследить работу и связи всех запущенных программ.
  • rqt_tf_tree - выводит список активных фреймов (систем координат) робота (или модели)
  • rqt_top - выводит информацию о нодах: номер потока, процент занимаемой памяти, процент использования CPU. С помощью него также можно убить ноду.
  • rqt_topic - выводит информацию обо всех активных топиках, в том числе можно просматривать информацию в них.
  • rqt_reconfigure - позволяет динамически (в процессае работы) менять параметры (те, которые передаются при старте) запущенных нод. Данная функцию работает не всегда. Нода также должна поддерживать такую функцию.
  • rqt_publisher - предосталяет возможность в графическом интерфейсе вводить данные в существующие топики и публиковать их с заданной частотой
  • rqt_bag - графическое представление утилиты rosbag. Также дает возможность зуписывать и проигрывать выбранные топики.