ShadowHandUtilityLibrary
Classes | Public Member Functions | Public Attributes | List of all members
shadow_finger::Finger Struct Reference

Utility struct for managing each finger of Shadow Hand. Contains all the information about the Finger instance, including joint limits, MoveGroup, MoveIt plan, and joint control publishers. More...

#include "include/shadowlibs/shadow_finger.hpp"

Collaboration diagram for shadow_finger::Finger:
Collaboration graph
[legend]

Classes

struct  BioTac
 Utility struct for managing the BioTac sensor attached to each finger. Holds the pressure and impedance data obtained from the sensor. More...
 

Public Member Functions

 Finger (std::string &finger_name, ros::NodeHandle &node_handle)
 Constructor for each finger. Requires name of finger and a ROS node handle reference. Everything else is populated by constructor. More...
 
std::string getFingerName ()
 Getter function for finger name. More...
 
std::tuple< float, float > jointLimitsFromName (std::string &joint_name)
 Get joint limits from joint name, from vector of tuples populated by getFingerJointLimits() More...
 
shadow_finger::Finger::BioTac getBioTacPressure ()
 Get populated struct containing BioTac pressure data. More...
 
shadow_finger::Finger::BioTac getBioTacImpedance ()
 Get populated struct containing BioTac impedance data. More...
 
shadow_finger::Finger::BioTac getBioTacImpedancePressure ()
 Get populated struct containing BioTac pressure and impedance data. More...
 
float getFSRValue ()
 Get FSR value. More...
 

Public Attributes

ros::NodeHandle _node_handle
 The ROS node handle. More...
 
std::string _finger_name
 The name of this finger instance. More...
 
int _biotac_id
 The index of the BioTac sensor. More...
 
std::vector< std::string > _joint_names
 Vector of strings of all joints in this finger. More...
 
std::vector< std::tuple< float, float > > _joint_limits
 Vector of tuples of joint limits of each joint in finger. More...
 
moveit::planning_interface::MoveGroupInterface _finger_move_group
 MoveGroupInterface for this finger. More...
 
moveit::planning_interface::MoveGroupInterface::Plan _plan
 MoveIt plan generated for this finger. More...
 
shadow_planning::PlanningOptions _planning_options
 
std::vector< ros::Publisher > _joint_controller_publishers
 Vector of ROS publishers, for sending control data for each joint in finger. More...
 
std::string _fsr_topic
 Subscriber topic for getting FSR data for finger. More...
 

Detailed Description

Utility struct for managing each finger of Shadow Hand. Contains all the information about the Finger instance, including joint limits, MoveGroup, MoveIt plan, and joint control publishers.

Constructor & Destructor Documentation

shadow_finger::Finger::Finger ( std::string &  finger_name,
ros::NodeHandle &  node_handle 
)
inline

Constructor for each finger. Requires name of finger and a ROS node handle reference. Everything else is populated by constructor.

Parameters
finger_nameName of the finger
node_handleROS node handle reference

Member Function Documentation

shadow_finger::Finger::BioTac shadow_finger::Finger::getBioTacImpedance ( )

Get populated struct containing BioTac impedance data.

Returns
shadow_finger::Finger::BioTac struct
shadow_finger::Finger::BioTac shadow_finger::Finger::getBioTacImpedancePressure ( )

Get populated struct containing BioTac pressure and impedance data.

Returns
shadow_finger::Finger::BioTac struct
shadow_finger::Finger::BioTac shadow_finger::Finger::getBioTacPressure ( )

Get populated struct containing BioTac pressure data.

Returns
shadow_finger::Finger::BioTac struct
std::string shadow_finger::Finger::getFingerName ( )
inline

Getter function for finger name.

Returns
String with the finger name
float shadow_finger::Finger::getFSRValue ( )

Get FSR value.

std::tuple<float, float> shadow_finger::Finger::jointLimitsFromName ( std::string &  joint_name)
inline

Get joint limits from joint name, from vector of tuples populated by getFingerJointLimits()

Parameters
joint_nameName of the joint whose limits are to be fetched
Returns
tuple containing upper and lower limits of joint

Member Data Documentation

shadow_finger::Finger::_biotac_id

The index of the BioTac sensor.

shadow_finger::Finger::_finger_move_group

MoveGroupInterface for this finger.

shadow_finger::Finger::_finger_name

The name of this finger instance.

shadow_finger::Finger::_fsr_topic

Subscriber topic for getting FSR data for finger.

shadow_finger::Finger::_joint_controller_publishers

Vector of ROS publishers, for sending control data for each joint in finger.

shadow_finger::Finger::_joint_limits

Vector of tuples of joint limits of each joint in finger.

shadow_finger::Finger::_joint_names

Vector of strings of all joints in this finger.

shadow_finger::Finger::_node_handle

The ROS node handle.

shadow_finger::Finger::_plan

MoveIt plan generated for this finger.

shadow_planning::PlanningOptions shadow_finger::Finger::_planning_options

The documentation for this struct was generated from the following files: