joints_kd

Сервис используется для дифференциальных коэффициентов Kd сервоприводов, когда robot_mode= 3, т.е. робот находится в режиме управления сервоприводами. Сервер работает в ноде locomotion_controller. Файл с разметкой сообщения сервиса JointsCmd находится в пакете mors. Если вы хотите вызывать сервис со стороннего компьютера, то вам нужно скачать этот пакет c Github в свое рабочее пространство ROS и затем произвести компиляцию.

Файл сервиса JointsCmd.srv имеет следующие поля:

float32[] cmd
---
int16 result		
string description  

cmd - массив из 12 значений Kd для каждого привода. Нумерация приводов идет согласно изображению в разделе Обозначения

result - ответ: 1 - если команда успешно получена и обработана, 0 - в случае ошибки.

description - описание ответа. В случае ошибки поле пустое, в случае успеха - сообщение "get kd"

Пример вызова сервиса через CLI

rosservice call /joints_kd "cmd: [0.0, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]"

При отправке это команды Kd привода бедра ноги R1 будет равно 0.5, Kd всех остальных приводов будет равно нулю.

Last updated