kochigami / aldebaran_robot_ws

This repository is used for alebaran's robot programing memo
0 stars 1 forks source link

[naoqi_pose] functions of all topics, services in pose_controller & pose_manager.py #149

Closed kochigami closed 8 years ago

kochigami commented 8 years ago

pose_controller.py: simple action servers: /joint_trajectory: ALMotion angleInterpolation(jointnames, angles, time) pepper-interface.l uses it /joint_stiffness_trajectory: ALMotion stiffnessInterpolation(jointnames, stiffness, time, ) pepper-interface.l uses it /joint_angles_action: ALMotion angleInterpolationWithSpeed(jointnames, angles. speed) /body_pose_naoqi: ALRobotPosture move to predefined pose

subscribe topics: /joint_stiffness: ALMotion setStiffnesses(list(names), list(efforts)) /joint_angles: ALMotion set/changeAngles(list(names), list(angles)) pepper-interface.l uses it

services: /body_stiffness/enable: ALMotion stiffnessInterpolation /body_stiffness/disable: same /wakeup: ALMotion wakeup pepper-interface.l uses it /rest: same pepper-interface.l uses it /life/enable: ALAutonomousLife /life/disable: same

kochigami commented 8 years ago

pose_manager.py: ROS node to provide default poses

simple action server: /body_pose: execute

  1. readInPoses (read default poses from pose library)
  2. stopWalkSrv (stop robot's movement)
  3. trajectoryClient(from actionlib.SimpleActionClient("joint_trajectory", JointTrajectoryAction)).send_goal_and_wait(trajGoal, timeout)
kochigami commented 8 years ago

joint_trajectory is used in both. For Pepper, ALMotion setStiffnesses and stiffnessInterpolation are forbidden for its lower part, and therefore pepper-interface.l does not use /joint_stiffness.