Class MoveItHelper

java.lang.Object
edu.tufts.hrilab.moveit.util.MoveItHelper

public class MoveItHelper extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static 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[]
     
    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 state
    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)
     
    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)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • MoveItHelper

      public MoveItHelper()
  • Method Details

    • convertToDoubleArray

      public static double[] convertToDoubleArray(List<Double> list)
    • 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 point
      orientation - point's orientation
      offset_axis - direction to apply offset
      offset - (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

      public 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)
    • makeCarryingPathConstraints

      public 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)
    • makeCartesianPath

      public 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)
    • 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: