00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 import rospy
00036 import actionlib
00037 from control_msgs.msg import FollowJointTrajectoryAction, FollowJointTrajectoryGoal
00038 from trajectory_msgs.msg import JointTrajectoryPoint
00039
00040 rospy.init_node('send_motion')
00041 r_client = actionlib.SimpleActionClient('/rarm_controller/follow_joint_trajectory_action', FollowJointTrajectoryAction)
00042 l_client = actionlib.SimpleActionClient('/larm_controller/follow_joint_trajectory_action', FollowJointTrajectoryAction)
00043 h_client = actionlib.SimpleActionClient('/head_controller/follow_joint_trajectory_action', FollowJointTrajectoryAction)
00044 c_client = actionlib.SimpleActionClient('/torso_controller/follow_joint_trajectory_action', FollowJointTrajectoryAction)
00045 r_client.wait_for_server()
00046 l_client.wait_for_server()
00047 h_client.wait_for_server()
00048 c_client.wait_for_server()
00049
00050
00051 r_msg = FollowJointTrajectoryGoal()
00052 r_msg.trajectory.header.stamp = rospy.Time.now() + rospy.Duration(0.2)
00053 r_msg.trajectory.joint_names = ['RARM_JOINT0', 'RARM_JOINT1', 'RARM_JOINT2', 'RARM_JOINT3', 'RARM_JOINT4', 'RARM_JOINT5']
00054 r_msg.trajectory.points.append(JointTrajectoryPoint(positions=[0,0,-2.1,0,0,0], time_from_start = rospy.Duration(0.1)))
00055 r_msg.trajectory.points.append(JointTrajectoryPoint(positions=[0,0,-2.1,0,0,0], time_from_start = rospy.Duration(2)))
00056 r_msg.trajectory.points.append(JointTrajectoryPoint(positions=[0,0,-1.6,0,0,0], time_from_start = rospy.Duration(3)))
00057
00058 l_msg = FollowJointTrajectoryGoal()
00059 l_msg.trajectory.header.stamp = rospy.Time.now() + rospy.Duration(0.2)
00060 l_msg.trajectory.joint_names = ['LARM_JOINT0', 'LARM_JOINT1', 'LARM_JOINT2', 'LARM_JOINT3', 'LARM_JOINT4', 'LARM_JOINT5']
00061 l_msg.trajectory.points.append(JointTrajectoryPoint(positions=[0,0,-2.1,0,0,0], time_from_start = rospy.Duration(0.1)))
00062 l_msg.trajectory.points.append(JointTrajectoryPoint(positions=[0,0,-2.1,0,0,0], time_from_start = rospy.Duration(2)))
00063 l_msg.trajectory.points.append(JointTrajectoryPoint(positions=[0,0,-1.6,0,0,0], time_from_start = rospy.Duration(3)))
00064
00065
00066 r_client.send_goal(r_msg)
00067 l_client.send_goal(l_msg)
00068
00069 r_client.wait_for_result()
00070 l_client.wait_for_result()
00071
00072
00073 h_msg = FollowJointTrajectoryGoal()
00074 h_msg.trajectory.header.stamp = rospy.Time.now() + rospy.Duration(0.2)
00075 h_msg.trajectory.joint_names = ['HEAD_JOINT0', 'HEAD_JOINT1']
00076 h_msg.trajectory.points.append(JointTrajectoryPoint(positions=[ 1.0, 0.0], time_from_start = rospy.Duration(1)))
00077 h_msg.trajectory.points.append(JointTrajectoryPoint(positions=[-1.0,-0.2], time_from_start = rospy.Duration(2)))
00078 h_msg.trajectory.points.append(JointTrajectoryPoint(positions=[ 0.0, 0.2], time_from_start = rospy.Duration(3)))
00079 h_msg.trajectory.points.append(JointTrajectoryPoint(positions=[ 0.0, 0.0], time_from_start = rospy.Duration(4)))
00080
00081 h_client.send_goal(h_msg)
00082 h_client.wait_for_result()
00083
00084
00085 c_msg = FollowJointTrajectoryGoal()
00086 c_msg.trajectory.header.stamp = rospy.Time.now() + rospy.Duration(0.2)
00087 c_msg.trajectory.joint_names = ['CHEST_JOINT0']
00088 c_msg.trajectory.points.append(JointTrajectoryPoint(positions=[ 1.0], time_from_start = rospy.Duration(1)))
00089 c_msg.trajectory.points.append(JointTrajectoryPoint(positions=[-1.0], time_from_start = rospy.Duration(2)))
00090 c_msg.trajectory.points.append(JointTrajectoryPoint(positions=[ 0.0], time_from_start = rospy.Duration(3)))
00091
00092 c_client.send_goal(c_msg)
00093 c_client.wait_for_result()
00094
00095 rospy.loginfo("done")
00096
00097