Робот-собака МОРС
  • Общая информация
  • Технические характеристики
  • Комплект поставки
  • Безопасность
  • Быстрый старт
  • Полезные ссылки
  • Обозначения
  • Настройка и обслуживание
    • Джойстик RadioLink T8S
    • Зарядка батареи
    • Выключение робота
    • Подключение к роботу по сети
      • Параметры точки доступа
      • Подключение через SSH
      • Подключение через Remote Desktop Protocol (RDP)
      • Подключение через SFTP
      • Настройка VSCode
    • Подключение робота к Интернету
    • Подключение к ROS на роботе
    • Установка ПО
    • Графический интерфейс
    • Ubuntu-сервис
    • Смена пароля пользователя
    • Обновление дампа памяти BLDC драйвера 10А
    • Замена приводного ремня
    • Переинициализация приводов
    • Подключение дополнительных устройств
      • Подключение головы VBRoboHead
      • Подключение видеокамеры Intel Realsense D435i
      • Подключение видеокамеры Luxonis OAK-D Lite
      • Подключение лидара RPLIDAR A1M8-R5
    • Обновление управляющего ПО
    • Возврат к заводским настройкам
    • Устранение неполадок
  • Симуляция
    • Описание имитационной модели
    • Параметры файла bringup_sim.launch
    • Подключение джойстиков к ПК
    • ROS-параметры
    • OpenAI Gymnasium
  • Устройство робота
    • Электроника
    • Программное обеспечение
    • Файлы и папки в системе
    • Советы по разработке собственного ПО
    • Примеры
    • ROS-пакеты
      • mors_hardware
        • bhi360_imu_node
        • ds4_teleop
        • power_bridge
        • radiolink_teleop
        • status_tracker
      • mors_base
        • champ_msgs
        • cmd_commutator
        • joy_converter
        • locomotion_controller
        • log_writer
        • mors
        • servo_state_lcm2ros
        • servo_cmd_ros2lcm
      • mors_pc
        • robogui
        • mors_sim
    • ROS-топики
    • ROS-сервисы
      • robot_mode
      • robot_action
      • stride_height
      • joints_kp
      • joints_kd
    • LCM-каналы
Powered by GitBook
On this page
  1. Устройство робота

ROS-топики

Контроллер управления роботом, являясь ROS-системой, активно использует топики для обмена сообщениями между своими модулями. Рассмотрим базовые команды для получения информации о топиках.

Для вывода списка всех топиков, работающих в системе робота, в командной строке введите:

rostopic list

Чтобы посмотреть, как ноды взаимодействуют между собой, используйте команду:

rqt_graph

Чтобы увидеть тип сообщения, паблишера и подписчика определенного топика, введите команду:

rostopic info /topic_name

Чтобы вывести только тип сообщения, введите:

rostopic type /topic_name

Если вам нужно посмотреть поля какого определенного сообщения, введите:

rosmsg show msg_name

Для мониторинга передаваемых данных в топике введите:

rostopic echo /topic_name

Для отправки данных в определенный топик, сипользуйте следующий шаблон:

rostopic pub /topic_name topic_type "data"

Например, чтобы отправить что-то в топик cmd_vel, введите:

rostopic pub /joy_converter/cmd_vel geometry_msgs/Twist "linear:
  x: 0.0
  y: 0.0
  z: 0.0
angular:
  x: 0.0
  y: 0.0
  z: 0.0" 

Список всех топиков

Ниже перечислим все топики, работающие по умолчанию при старте файла bringup.launch (по умолчанию запущен на бортовом компьютере робота):

/diagnostics (diagnostics_msgs/DiagnosticArray) - часть модуля joy, не используется в контроллере робота

/disable (std_msgs/Bool) - если True, то блокирует всех, кто на него подписан. В данном случае блокируются ноды locomotion_controller и radiolink_teleop

/hmi/beeper (power_bridge/HMIBeeper) - управляет пищалкой в роботе

/hmi/led (/power_bridge/HMILed) - управляет светодиодом на кнопке питания

/joy (/sensor_msgs/Joy) - выдает состояние джойстика

/joy/set_feedback (unknown_type) - отправляет команды на джойстик. Часть модуля joy, не используется в контроллере робота.

/power/buttons (power_bridge/PowerButtons) - получает информацию о нажатых пользовательской кнопки и кнопки экстренного прекращения работы

/rosout - системный топик для публикации логово

/rosout_agg - системный топик для публикации логово

/tf - топик для отслеживания положения и ориентации систем координат робота

/tf_static - топик для отслеживания положения и ориентации систем координат робота

Previousmors_simNextROS-сервисы

Last updated 8 months ago

/bat () - состояние питания робота

/cmd_pose () - желаемые положения и ориентация корпуса робота

/cmd_vel () - желаемая скорость перемещения робота

/cur_device () - текущее подключенное устройство. 1 - голова, 2 - Radiolink T8S, 3 - модуль навигации, 4 - Robogui, 0 - ни одного устройства.

/ef_position/command () - желаемые положения ступней ног робота

/ef_position/states () - текущее положение стоп робота

/foot_contacts () - показывает, когда нога находится в фазе опоры

/gui/cmd_pose () - желаемые положения и ориентация корпуса робота

/gui/cmd_vel () - желаемая скорость перемещения робота

/gui/ef_position/command () - желаемые положения ступней ног робота

/gui/joint_group_position_controller/command () - желаемое угловое положение сочленений робота

/gui/status () - статус готовности программы к работе

/imu/data - выдает отфильтрованные данные об ориентации, угловой скорости и линейном ускорении корпуса робота

/imu/mag - вектор магнитного поля

/imu/raw - сырые необработанные данные с IMU

/imu/temp - температура микросхемы IMU

/joint_group_position_controller/command () - желаемое угловое положение сочленений робота

/joint_states () - состояние всех электроприводов робота (угол, скорость момент)

/head/cmd_pose () - желаемые положения и ориентация корпуса робота

/head/cmd_vel () - желаемая скорость перемещения робота

/head/ef_position/command () - желаемые положения ступней ног робота

/head/joint_group_position_controller/command () - желаемое угловое положение сочленений робота

/head/status () - статус готовности программы к работе

/lcm/servo_cmd () - показывает, какие команды были отправлены на сервоприводы

/nav/cmd_pose () - желаемые положения и ориентация корпуса робота

/nav/cmd_vel () - желаемая скорость перемещения робота

/nav/ef_position/command () - желаемые положения ступней ног робота

/nav/joint_group_position_controller/command () - желаемое угловое положение сочленений робота

/nav/status () - статус готовности программы к работе

/radiolink/cmd_pose () - желаемые положения и ориентация корпуса робота

/radiolink/cmd_vel () - желаемая скорость перемещения робота

/radiolink/ef_position/command () - желаемые положения ступней ног робота

/radiolink/joint_group_position_controller/command () - желаемое угловое положение сочленений робота

/radiolink/status () - статус наличия соединения с геймпадом. True - если соединение установлено, False - если соединение отсутствует.

sensor_msgs/BatteryState
geometry_msgs/Twist
geometry_msgs/Twist
std_msgs/UInt8
geometry_msgs/PoseArray
geometry_msgs/PoseArray
champ_msgs/ContactStamped
geometry_msgs/Twist
geometry_msgs/Twist
geometry_msgs/PoseArray
trajectory_msgs/JointTrajectoryPoint
std_msgs/Bool
(sensor_msgs/Imu)
(sensor_msgs/MagneticField)
(sensor_msgs/Imu)
(sensor_msgs/Temperature)
trajectory_msgs/JointTrajectoryPoint
sensor_msgs/JointState
geometry_msgs/Twist
geometry_msgs/Twist
geometry_msgs/PoseArray
trajectory_msgs/JointTrajectoryPoint
std_msgs/Bool
geometry_msgs/Twist
geometry_msgs/Twist
geometry_msgs/PoseArray
trajectory_msgs/JointTrajectoryPoint
std_msgs/Bool
geometry_msgs/Twist
geometry_msgs/Twist
geometry_msgs/PoseArray
trajectory_msgs/JointTrajectoryPoint
std_msgs/Bool
trajectory_msgs/JointTrajectoryPoint