Ask Your Question
4

end-effector pose constrained planning

asked 2014-06-19 12:59:21 -0500

Victor22 gravatar image

updated 2014-06-19 13:01:56 -0500

Hello: I am looking for end-effector pose constrained planning for the manipulator. I know that such functionalities have been provided in "MoveIt!" where you set your kinematics constraints and then give command to plan a path.

I believe that this type of end-effector constrained planning (in MoveIt!) is done in end-effector cartesian degree of freedom using Inverse Kinematics.

Can anyone please point me to: where this task-constrained code sits in OMPL (as MoveIt uses OMPL), or any pointer to the research paper of this implementation in MoveIt!

I want to understand how it is done and what are the steps involved in ROS implementation.

Thanks.

edit retag flag offensive close merge delete

Comments

Hello! I am also very interested in manipulator constraint motion planning, and have some problem about how moveit sent constraint information to ompl, and how ompl deal with it, if you have solve it, please help me, any help is very greatful!

Rob.Chen gravatar imageRob.Chen ( 2019-01-08 08:15:16 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
2

answered 2015-05-28 04:01:07 -0500

fivef gravatar image

updated 2019-03-04 06:23:19 -0500

Here is an example of how to use path constraints (here orientation constraints) with Moveit in Python:

from moveit_msgs.msg import RobotState, Constraints, OrientationConstraint

def init_upright_path_constraints(self,pose):

    self.upright_constraints = Constraints()
    self.upright_constraints.name = "upright"
    orientation_constraint = OrientationConstraint()
    orientation_constraint.header = pose.header
    orientation_constraint.link_name = self.arm.get_end_effector_link()
    orientation_constraint.orientation = pose.pose.orientation
    orientation_constraint.absolute_x_axis_tolerance = 0.4
    orientation_constraint.absolute_y_axis_tolerance = 0.4
    orientation_constraint.absolute_z_axis_tolerance = 0.4
    #orientation_constraint.absolute_z_axis_tolerance = 3.14 #ignore this axis
    orientation_constraint.weight = 1

    self.upright_constraints.orientation_constraints.append(orientation_constraint)


def enable_upright_path_constraints(self):
    self.arm.set_path_constraints(self.upright_constraints)

def disable_upright_path_constraints(self):
    self.arm.set_path_constraints(None)
edit flag offensive delete link more

Comments

from moveit_msgs.msg import RobotState, Constraints, OrientationConstraint is import line

danjo gravatar imagedanjo ( 2018-10-03 19:09:34 -0500 )edit

what is pose here?

Mehdi. gravatar imageMehdi. ( 2019-01-27 17:16:43 -0500 )edit

pose is the geometry_msgs/Pose of the endeffector right before you enable the path constraints.

fivef gravatar imagefivef ( 2019-03-04 06:26:11 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2014-06-19 12:59:21 -0500

Seen: 1,255 times

Last updated: Mar 04