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

servo_cmd_ros2lcm

Previousservo_state_lcm2rosNextmors_pc

Last updated 8 months ago

Модуль получает из ROS команды для электроприводов робота (угол, скорость, момент) и передает их в LCM.

ROS API

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

Параметры

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

  • frequency (по умолчанию: 500) - частота работы модуля

  • ros_joint_cmd_topic (по умолчанию: "joint_group_position_controller/command") - название ROS-топика для передачи желаемых значений на приводы

  • lcm_joint_cmd_topic (по умолчанию: "SERVO_CMD") - название LCM-канала, по которому передаются команды на приводы

  • joint_order (по умолчанию: [3, 5, 4, 9, 11, 10, 0, 2, 1, 6, 8, 7]) - порядок нумерации приводов. Если в вашем ROS-пакете, управляющем роботом, порядок отличается от , то проще всего изменить его здесь, не изменяя ваш модуль управления.

  • joint_directions (по умолчанию: [ 1, -1, -1, 1, 1, 1, -1, -1, -1, -1, 1, 1]) - направления движения приводов. 1 - против часовой стрелки, -1 - по часовой стрелке. Порядок приводов является для робота. Если в вашем ROS-пакете, управляющем роботом, направления от стандартного принятого в роботе, то проще всего изменить его здесь, не изменяя ваш модуль управления.

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

  • joint_group_position_controller/command () - команды для электроприводов робота (угол, скорость, момент, Kp, Kd)

LCM API

Формат LCM-сообщения:

struct servo_cmd_msg
{
    float timestamp; // временная метка

    float position[12]; // угловое положение [рад]
    float velocity[12]; // угловая скорость [рад/сек]
    float torque[12]; // момент [Н м]
    float kp[12]; // пропорциональный коэффициент
    float kd[12]; // дифференциальный коэффициент
}
стандартного
стандартным
trajectory_msgs/JointTrajectoryPoint