Робот-собака МОРС
  • Общая информация
  • Технические характеристики
  • Комплект поставки
  • Безопасность
  • Быстрый старт
  • Полезные ссылки
  • Обозначения
  • Настройка и обслуживание
    • Джойстик 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_hardware

ds4_teleop

Previousbhi360_imu_nodeNextpower_bridge

Last updated 7 months ago

Пакет ds4_teleop служит для получения данных с геймпада Dualshock 4 путем чтения данных с и пуликует топики и вызывает сервисы, необходимые для управления роботом. Так как модуль читает данные из пакета драйвера, то для его функционирования необходимо, чтобы модуль был предварительно запущен.

ROS API

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

Параметры

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

  • general

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

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

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

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

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

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

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

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

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

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

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

    • stride_height (по умолчанию: 0.05) - максимальная высота шага

  • 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.1) - максимально возможное смещение корпуса по оси 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) - максимальный угол отклонения коленных сочленений

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

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

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

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

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

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

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

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

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

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

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

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

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

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

status () - текущее состояние геймпада

set_feedback () - команды для геймпада, такие как цвет подсветки и вибрация

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

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

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

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

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

ds4_driver
ds4_driver
ds4_driver_msgs/Status
ds4_driver_msgs/Feedback
geometry_msgs/Twist
geometry_msgs/Twist
geometry_msgs/PoseArray
trajectory_msgs/JointTrajectoryPoint
std_msgs/Bool