Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 4 Следующий »

1. Для работы манипулятора потребуется ПК с установленными:


- Ubuntu 18.04 x64
- ROS
- ПО робота
(Образ предоставит Promobot)


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_arm_5_joint,  left_arm_6_joint, left_arm_7_joint. 
В данный топик публикуются сообщения с типом trajectory_msgs/JointTrajectory которые имеют следующую структуру:
Структура сообщения
[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).
Пример
$ 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 градусов.




  • Нет меток