...
2. Управление манипулятором принципиально ничем не отличается от выполнения скриптов на роботе v4
3. Примеры команд Пример команды по управлению:
/left_arm_controller/command [trajectory_msgs/JointTrajectory] | Данный топик позволяет управлять контроллером управлять контроллером положения левой руки. В контроллер левой руки входят суставы: left_arm_1_joint, left_arm_2_joint, left_arm_3_joint, left_arm_4_joint, left left_arm_5_joint, left_arm_6_joint, left_arm_7_joint. В данный топик публикуются сообщения с типом trajectory типом trajectory_msgs/ JointTrajectory которые JointTrajectory которые имеют следующую структуру:
Блок кода |
---|
language | bash |
---|
title | Структура сообщения |
---|
linenumbers | true |
---|
collapse | true |
---|
| [std_msgs/Header] header # http://docs.ros.org/api/std_msgs/html/msg/Header.html
uint32 seq
time stamp # время должно быть синхронно с временем ros
string frame_id # не используется
string[] joint_names # массив имен джойнов которым будет подаваться задание для управления.
trajectory_msgs/JointTrajectoryPoint[] points
# точки траектории в которой находятся позиции, скорости, ускорения и сила (так как контроллер для управления
# рук работает в режиме управления позицией, то нужно
# указывать только позиции для каждого джойнта). если тип джойнта revolute или continuous положение задается в радианах. если
#если тип джойнта prismatic положение задается в метрах.
float64[] positions # массив позиций каждого джойнта размерность массива и порядок этих позиций должны совпадать
# с размерностью и порядком джойнтов в массиве joint_names.
float64[] velocities
float64[] accelerations
float64[] effort
duration time_from_start # время завершения команды. контролер рассчитает траекторию
#траекторию от текущего положения джойнтов до желаемого за время t(i) - t(i-1). |
Блок кода |
---|
language | bash |
---|
title | Пример |
---|
linenumbers | true |
---|
collapse | true |
---|
| $ rostopic pub /left_arm_controller/command trajectory_msgs/JointTrajectory "header: auto
joint_names:
- 'left_arm_4_joint'
points:
- positions: [1.57]
time_from_start: {secs: 1, nsecs: 0}
- positions: [0.0]
time_from_start: {secs: 6, nsecs: 0}" -1 |
Информация |
---|
После запуска данной команды, робот согнет левый локтевой сустав, в течении 1ой секунды, на 90 градусов. Затем, в течении 5ти секунд вернет локтевой сустав обратно в положение 0 градусов. |
|
---|
...