Package edu.tufts.hrilab.moveit.util
Class MoveItHelper
java.lang.Object
edu.tufts.hrilab.moveit.util.MoveItHelper
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
appendGoalConstrains
(edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints constraints, edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints newConstraints) static javax.vecmath.Point3d
calcTargetGraspPoint
(javax.vecmath.Point3d grasp_point, javax.vecmath.Quat4d grasp_orientientation, float grasp_offset) Move point by gripper_offset amount in direction of orientation's negative x-axis (based on gripper's coordinate frame).static javax.vecmath.Point3d
calcTargetOffset
(javax.vecmath.Point3d point, javax.vecmath.Quat4d orientation, javax.vecmath.Vector3d offset_axis, float offset) Move point by offset amount in direction of specified offset_axis.static edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory
combineTrajectories
(edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory jt1, edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory jt2, double fraction_of_first) static double[]
convertToDoubleArray
(List<Double> list) static edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints
makeCarryingPathConstraints
(edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose start_pose, double angle_tolerance, String target_link, String base_link) static edu.tufts.hrilab.diarcros.msg.moveit_msgs.GetCartesianPathRequest
makeCartesianPath
(edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose pose, edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose newPose, String target_link, String base_link, String group) static edu.tufts.hrilab.diarcros.msg.moveit_msgs.MotionPlanRequest
makeDefaultMotionPlanRequest
(double planningTime) Construct a basic MotionPlanRequest.static edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints
makeGoalConstraints
(edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose pose, double pos_tolerance, double angle_tolerance, String target_link, String base_link) static edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints
makeJointConstraints
(edu.tufts.hrilab.diarcros.msg.moveit_msgs.RobotState robot_state, List<String> joints_to_use) Make joint constraints from the robot state, using only the specified joints.static edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints
makeJointConstraints
(List<String> joint_names, edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectoryPoint joint_traj_point, List<String> joints_to_use) Make joint constraints from a list of joint names and joint trajectory points.static edu.tufts.hrilab.diarcros.msg.moveit_msgs.MotionPlanRequest
makeMotionPlanRequest
(edu.tufts.hrilab.diarcros.msg.moveit_msgs.RobotState robot_state, edu.tufts.hrilab.diarcros.msg.sensor_msgs.JointState joint_state, double planningTime) The above function, but now with input from your current statestatic edu.tufts.hrilab.diarcros.msg.moveit_msgs.MotionPlanRequest
makeRequest
(String group_name, List<edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints> goalConstraints, edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints pathConstraints, edu.tufts.hrilab.diarcros.msg.moveit_msgs.TrajectoryConstraints trajectoryConstraints, List<String> jointNames, edu.tufts.hrilab.diarcros.msg.sensor_msgs.JointState jointState, edu.tufts.hrilab.diarcros.msg.moveit_msgs.RobotState robotState, double planningTime, int maxPlanningAttempts) static ArrayList<edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose>
makeStraightPath
(edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose start_pose, edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose end_pose) static javax.vecmath.Quat4d
slerp
(double fraction, javax.vecmath.Quat4d value1, javax.vecmath.Quat4d value2) static void
smoothCartesianRotation
(edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory jt) static edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory
sortTrajectory
(edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory jt)
-
Constructor Details
-
MoveItHelper
public MoveItHelper()
-
-
Method Details
-
convertToDoubleArray
-
calcTargetGraspPoint
public static javax.vecmath.Point3d calcTargetGraspPoint(javax.vecmath.Point3d grasp_point, javax.vecmath.Quat4d grasp_orientientation, float grasp_offset) Move point by gripper_offset amount in direction of orientation's negative x-axis (based on gripper's coordinate frame).- Parameters:
grasp_point
- grasp point on object- Returns:
-
calcTargetOffset
public static javax.vecmath.Point3d calcTargetOffset(javax.vecmath.Point3d point, javax.vecmath.Quat4d orientation, javax.vecmath.Vector3d offset_axis, float offset) Move point by offset amount in direction of specified offset_axis.- Parameters:
point
- 3D pointorientation
- point's orientationoffset_axis
- direction to apply offsetoffset
- (amount to translate along offset_axis)- Returns:
-
smoothCartesianRotation
public static void smoothCartesianRotation(edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory jt) -
sortTrajectory
public static edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory sortTrajectory(edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory jt) -
combineTrajectories
public static edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory combineTrajectories(edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory jt1, edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectory jt2, double fraction_of_first) -
makeRequest
public static edu.tufts.hrilab.diarcros.msg.moveit_msgs.MotionPlanRequest makeRequest(String group_name, List<edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints> goalConstraints, edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints pathConstraints, edu.tufts.hrilab.diarcros.msg.moveit_msgs.TrajectoryConstraints trajectoryConstraints, List<String> jointNames, edu.tufts.hrilab.diarcros.msg.sensor_msgs.JointState jointState, edu.tufts.hrilab.diarcros.msg.moveit_msgs.RobotState robotState, double planningTime, int maxPlanningAttempts) -
appendGoalConstrains
public static void appendGoalConstrains(edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints constraints, edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints newConstraints) -
makeGoalConstraints
-
makeCarryingPathConstraints
-
makeCartesianPath
-
makeStraightPath
public static ArrayList<edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose> makeStraightPath(edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose start_pose, edu.tufts.hrilab.diarcros.msg.geometry_msgs.Pose end_pose) -
slerp
public static javax.vecmath.Quat4d slerp(double fraction, javax.vecmath.Quat4d value1, javax.vecmath.Quat4d value2) -
makeJointConstraints
public static edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints makeJointConstraints(edu.tufts.hrilab.diarcros.msg.moveit_msgs.RobotState robot_state, List<String> joints_to_use) Make joint constraints from the robot state, using only the specified joints.- Parameters:
robot_state
-joints_to_use
- joints to use -- uses all if null- Returns:
-
makeJointConstraints
public static edu.tufts.hrilab.diarcros.msg.moveit_msgs.Constraints makeJointConstraints(List<String> joint_names, edu.tufts.hrilab.diarcros.msg.trajectory_msgs.JointTrajectoryPoint joint_traj_point, List<String> joints_to_use) Make joint constraints from a list of joint names and joint trajectory points. The joint names and traj point's position fields must be of the same length. Use to joints_to_use arg to filter for desired joints.- Parameters:
joint_names
-joint_traj_point
-joints_to_use
- joints to use -- uses all if null- Returns:
-
makeDefaultMotionPlanRequest
public static edu.tufts.hrilab.diarcros.msg.moveit_msgs.MotionPlanRequest makeDefaultMotionPlanRequest(double planningTime) Construct a basic MotionPlanRequest. User must still call setGroupName and setGoalConstraints as well as override any other optional parameters.- Parameters:
planningTime
- amount of time allowed for planning a trajectory- Returns:
-
makeMotionPlanRequest
public static edu.tufts.hrilab.diarcros.msg.moveit_msgs.MotionPlanRequest makeMotionPlanRequest(edu.tufts.hrilab.diarcros.msg.moveit_msgs.RobotState robot_state, edu.tufts.hrilab.diarcros.msg.sensor_msgs.JointState joint_state, double planningTime) The above function, but now with input from your current state- Parameters:
robot_state
-joint_state
-planningTime
- amount of time allowed for planning a trajectory- Returns:
-