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 градусов. |
---|