Робот-собака МОРС
  • Общая информация
  • Технические характеристики
  • Комплект поставки
  • Безопасность
  • Быстрый старт
  • Полезные ссылки
  • Обозначения
  • Настройка и обслуживание
    • Джойстик 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
  • ROS API
  • Параметры
  • Исходящие топики
  • Входящие топики
  • Вызываемые сервисы
  1. Устройство робота
  2. ROS-пакеты
  3. mors_pc

robogui

Previousmors_pcNextmors_sim

Last updated 8 months ago

Данный модуль является реализацией ПО с графическим пользовательским интерфейсом Robogui. О том, как работать с самой программой, можно почитать в разделе .

ROS API

ROS API состоит из config-файла, вызова сервисов, входящих и исходящих топиков.

Параметры

Файл параметров располагается в папке config

  • general

    • frequency (по умолчанию: 40) - частота, на которой работает модуль

  • cmd_topics - название публикуемых топиков

    • cmd_vel (по умолчанию: "gui/cmd_vel") - топик для публикации желаемой скорости движения робота

    • cmd_pose (по умолчанию: "gui/cmd_pose") - топик для публикации желаемых положения и ориентации корпуса

    • cmd_ef_pose (по умолчанию: "gui/ef_position/command") - топик для публикации желаемых положений ступней робота

    • cmd_joint_pose (по умолчанию: "gui/joint_group_position_controlle/command") - топик для публикации желаемых угловых положений сервоприводов

    • status (по умолчанию: "gui/status") - топик для публикации готовности программы к работе

  • state_topics - названия для входящих топиков

    • cur_device (по умолчанию: "cur_device") - имя топика с информацией о текущем подключенном наиболее приоритетном устройстве

    • joint_state (по умолчанию: "joint_states") - имя топика для получения информации о состоянии сочленений

    • imu_data (по умолчанию: "imu/data") - имя топика для получения информации о состоянии IMU

    • temperature_data (по умолчанию: "imu/temp") - имя топика для получения информации о температуре IMU

    • cmd_vel (по умолчанию: "cmd_vel") - топик для получения информации о желаемой скорости движения робота

    • cmd_pose (по умолчанию: "cmd_pose") - топик для получения информации о публикации желаемых положения и ориентации корпуса

    • cmd_ef_pose (по умолчанию: "ef_position/command") - топик для получения информации о желаемых положений ступней робота

    • cmd_joint_pose (по умолчанию: "joint_group_position_controlle/command") - топик для получения информации о желаемых угловых положений сервоприводов

    • ef_pose (по умолчанию: "ef_position/states") - топик для получения информации о текущих положения ступней ног

    • ll_cmd_joint_pos (по умолчанию: "lcm/servo_cmd") - топик для получения информации о том, какие команды отправляются на аппаратный уровень по протоколу LCM

  • gait - параметры для передвижения робота

    • max_speed_x (по умолчанию: 0.3) - максимальная желаемая скорость по оси X

    • max_speed_y (по умолчанию: 0.2) - максимальная желаемая скорость по оси Y

    • max_speed_z (по умолчанию: 0.8) - максимальный радиус поворота вокруг оси Z

  • pose - параметры для желаемых положений корпуса робота

    • max_angle_x (по умолчанию: 0.33) - максимально возможный угол поворота по крену

    • max_angle_y (по умолчанию: 0.33) - максимально возможный угол поворота по тангажу

    • max_angle_z (по умолчанию: 0.33) - максимально возможный угол рысканья

    • max_lin_x (по умолчанию: 0.1) - максимально возможное смещение корпуса по оси X

    • max_lin_y (по умолчанию: 0.1) - максимально возможное смещение корпуса по оси Y

    • max_lin_z (по умолчанию: 0.1) - максимально возможное смещение корпуса по оси Z в положительном направлении

    • min_lin_z (по умолчанию: 0.15) - максимально возможное смещение корпуса по оси Z в отрицательном направлении

  • ef - параметры для желаемых положений ступней робота

    • max_pos_x (по умолчанию: 0.05) - максимально возможное смещение ступни по оси X

    • max_pos_y (по умолчанию: 0.05) - максимально возможное смещение ступни по оси Y

    • max_pos_z (по умолчанию: 0.05) - максимально возможное смещение ступни по оси Z в положительном направлении

    • min_pos_z (по умолчанию: 0.05) - максимально возможное смещение ступни по оси Z в отрицательном направлении

  • joints - параметры для желаемых угловых положений сочленений робота

    • max_abad (по умолчанию: 1.57) - максимальный угол отклонения плечевых сочленений

    • max_hip (по умолчанию: 1.57) - максимальный угол отклонения бедренных сочленений

    • max_knee (по умолчанию: 1.57) - максимальный угол отклонения коленных сочленений

    • max_vel (по умолчанию: 5.0) - максимальная скорость сочленений

    • max_torq (по умолчанию: 5.0) - максимальный момент сочленений

    • max_kp (по умолчанию: 24.0) - максимальное значение пропорционального коэффициента обратной связи

    • max_kd (по умолчанию: 1.0) - максимальное значение дифференциального коэффициента обратной связи

  • modes - параметры режимов робота

    • walk (по умолчанию: 0) - какой номер присваивается режиму шагания

    • ef (по умолчанию: 1) - какой номер присваивается режиму перемещения ноги

    • body (по умолчанию: 2) - какой номер присваивается режиму перемешения корпуса

    • joint (по умолчанию: 3) - какой номер присваивается режиму вращения сочленений

Исходящие топики

Здесь описываются названия топиков, которые установлены в пакете по умолчанию.

Входящие топики

Вызываемые сервисы

  • robot_mode (QuadrupedCmd) - переключение между режимами управления роботом: шагание/корпус/ступни/сочленения.)

  • robot_action (QuadrupedCmd) - вызывает действия, совершаемые роботом, такие как встать, лечь, дать лапу.

  • stride_height (QuadrupedCmd) - задает максимальную высоту шага.

  • joints_kp (JointsCmd) - задает массив пропорциональных коэффициентов для сервоприводов.

  • joints_kd (JointsCmd) - задает массив дифференциальных коэффициентов для сервоприводов.

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

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

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

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

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

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

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

imu/data () - данные с IMU (линейное ускорение, угловая скорость, ориентация)

imu/temp () - температура IMU

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

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

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

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

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

lcm/servo_cmd () - команды на сервоприводы, отправляемые на аппаратный уровень по протоколу LCM

Графический интерфейс
geometry_msgs/Twist
geometry_msgs/Twist
geometry_msgs/PoseArray
trajectory_msgs/JointTrajectoryPoint
std_msgs/Bool
std_msgs/UInt8
sensor_msgs/JointState
sensor_msgs/Imu
sensor_msgs/Temperature
geometry_msgs/Twist
geometry_msgs/Twist
geometry_msgs/PoseArray
trajectory_msgs/JointTrajectoryPoint
geometry_msgs/PoseArray
trajectory_msgs
/JointTrajectoryPoint