ShadowHandUtilityLibrary
shadow_planning.hpp
Go to the documentation of this file.
1 //
2 // Created by kganguly on 5/3/19.
3 //
4 
5 #pragma once
6 
8 
15 namespace shadow_planning {
22 geometry_msgs::Pose getRandomPose(
23  moveit::planning_interface::MoveGroupInterface &move_group_interface,
24  std::string &frame_name);
25 
38  moveit::planning_interface::MoveGroupInterface &move_group_interface,
39  std::string &target_name,
40  moveit::planning_interface::MoveGroupInterface::Plan &plan);
41 
43 bool planToNamedTarget(shadow_finger::Finger &finger, std::string &target_name);
44 
57 bool planToPoseTarget(
59  moveit::planning_interface::MoveGroupInterface &move_group_interface,
60  geometry_msgs::Pose &target_pose, std::string &reference_frame,
61  moveit::planning_interface::MoveGroupInterface::Plan &plan,
62  std::string &end_effector_name);
63 
76  moveit::planning_interface::MoveGroupInterface &move_group_interface,
77  std::string &reference_frame,
78  moveit::planning_interface::MoveGroupInterface::Plan &plan,
79  std::map<std::string, double> &joint_targets);
80 
88  std::vector<double> &targetJointAngles);
89 
96 bool executePlan(std::vector<ros::Publisher> &controller_pubs,
97  moveit::planning_interface::MoveGroupInterface::Plan &plan);
98 
100 bool executePlan(shadow_finger::Finger &finger);
101 
108 
111 }; // namespace shadow_planning
bool planToNamedTarget(shadow_planning::PlanningOptions &options, moveit::planning_interface::MoveGroupInterface &move_group_interface, std::string &target_name, moveit::planning_interface::MoveGroupInterface::Plan &plan)
Construct plan to a given "named" target, these are obtained from predefined RViz names...
Definition: shadow_planning.cpp:18
Utility functions for managing groups of fingers of Shadow Hand. Constructs "Hand" class of shared po...
Definition: shadow_hand.hpp:18
bool planToPoseTarget(shadow_planning::PlanningOptions &options, moveit::planning_interface::MoveGroupInterface &move_group_interface, geometry_msgs::Pose &target_pose, std::string &reference_frame, moveit::planning_interface::MoveGroupInterface::Plan &plan, std::string &end_effector_name)
Construct plan to a given Pose target.
Definition: shadow_planning.cpp:75
bool executePlan(std::vector< ros::Publisher > &controller_pubs, moveit::planning_interface::MoveGroupInterface::Plan &plan)
Execute plan for a given plan given its list of controllers.
Definition: shadow_planning.cpp:154
void executePlanAsync(shadow_finger::Finger &finger)
Execute plan for a given Finger asynchronously, where multiple Fingers can be executed simultaneously...
Definition: shadow_planning.cpp:236
void moveFingerJoints(shadow_finger::Finger &finger, std::vector< double > &targetJointAngles)
Move all joints in fingers by given angle (in degrees). Directly use joint publishers to set target c...
Definition: shadow_planning.cpp:187
Struct to set planning parameters for MoveIt planning.
Definition: shadow_planning_options.hpp:15
Utility struct for managing each finger of Shadow Hand. Contains all the information about the Finger...
Definition: shadow_finger.hpp:137
bool planToJointTargets(shadow_planning::PlanningOptions &options, moveit::planning_interface::MoveGroupInterface &move_group_interface, std::string &reference_frame, moveit::planning_interface::MoveGroupInterface::Plan &plan, std::map< std::string, double > &joint_targets)
Construct plan to given Joint target.
Definition: shadow_planning.cpp:116
geometry_msgs::Pose getRandomPose(moveit::planning_interface::MoveGroupInterface &move_group_interface, std::string &frame_name)
Construct random target pose for a given planning group.
Definition: shadow_planning.cpp:7
Utility functions for planning and execution routines to control the ShadowHand.