5 from geometry_msgs.msg
import PoseStamped, Pose, Point
6 from std_msgs.msg
import Header
9 from py_binding_tools
import roscpp_init
11 roscpp_init(
"mtc_tutorial")
18 task.name =
"compute IK"
21 task.add(stages.CurrentState(
"current state"))
24 planner = core.PipelinePlanner()
25 task.add(stages.Connect(
"connect", [(group, planner)]))
30 generator = stages.GeneratePose(
"cartesian pose")
33 generator.setMonitoredStage(task[
"current state"])
36 pose = Pose(position=Point(z=0.2))
37 generator.pose = PoseStamped(header=Header(frame_id=
"panda_link8"), pose=pose)
42 computeIK = stages.ComputeIK(
"compute IK", generator)
43 computeIK.group = group
45 computeIK.ik_frame = PoseStamped(header=Header(frame_id=
"panda_link8"))
46 computeIK.max_ik_solutions = 4
48 props = computeIK.properties
50 props.configureInitFrom(core.Stage.PropertyInitializerSource.INTERFACE, [
"target_pose"])
58 task.publish(task.solutions[0])