ASCO Aerial Autonomy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | List of all members
VisualServoingControllerArmConnector Class Reference

A visual servoing controller that uses a tracker output as feedback and moves the arm to a goal pose relative to the tracked target. More...

#include <visual_servoing_controller_arm_connector.h>

Inheritance diagram for VisualServoingControllerArmConnector:
Inheritance graph
[legend]
Collaboration diagram for VisualServoingControllerArmConnector:
Collaboration graph
[legend]

Public Member Functions

 VisualServoingControllerArmConnector (BaseTracker &tracker, parsernode::Parser &drone_hardware, ArmParser &arm_hardware, RelativePoseController &controller, tf::Transform camera_transform, tf::Transform arm_transform)
 Constructor. More...
 
virtual ~VisualServoingControllerArmConnector ()
 Destructor. More...
 
bool getTrackingPoseArmFrame (tf::Transform &tracking_pose)
 Get the tracking pose of the tracker in the arm frame. More...
 
- Public Member Functions inherited from ControllerHardwareConnector< std::tuple< tf::Transform, tf::Transform >, tf::Transform, tf::Transform >
 ControllerHardwareConnector (Controller< std::tuple< tf::Transform, tf::Transform >, tf::Transform, tf::Transform > &controller, HardwareType hardware_type)
 ControlHardwareConnector runs the controller and sends the commands to hardware. More...
 
virtual void run ()
 Extracts sensor data, run controller and send data back to hardware. More...
 
void setGoal (tf::Transformgoal)
 Set the goal for controller. More...
 
tf::Transform getGoal () const
 Get the goal for controller. More...
 
HardwareType getHardwareType ()
 Return the type of hardware (HardwareType) used by the controller. More...
 
ControllerStatus getStatus () const
 Provide the status of the controller. More...
 
- Public Member Functions inherited from AbstractControllerHardwareConnector
virtual ~AbstractControllerHardwareConnector ()
 Destructor to get polymorphism. More...
 

Protected Member Functions

virtual bool extractSensorData (std::tuple< tf::Transform, tf::Transform > &sensor_data)
 Extracts pose data from ROI. More...
 
virtual void sendHardwareCommands (tf::Transform controls)
 Send position commands to hardware. More...
 

Additional Inherited Members

- Protected Attributes inherited from ControllerHardwareConnector< std::tuple< tf::Transform, tf::Transform >, tf::Transform, tf::Transform >
HardwareType hardware_type_
 Type of hardware controlled by the controller. More...
 

Detailed Description

A visual servoing controller that uses a tracker output as feedback and moves the arm to a goal pose relative to the tracked target.

Constructor & Destructor Documentation

VisualServoingControllerArmConnector::VisualServoingControllerArmConnector ( BaseTracker tracker,
parsernode::Parser &  drone_hardware,
ArmParser &  arm_hardware,
RelativePoseController controller,
tf::Transform  camera_transform,
tf::Transform  arm_transform 
)
inline

Constructor.

virtual VisualServoingControllerArmConnector::~VisualServoingControllerArmConnector ( )
inlinevirtual

Destructor.

Member Function Documentation

bool VisualServoingControllerArmConnector::extractSensorData ( std::tuple< tf::Transform, tf::Transform > &  sensor_data)
protectedvirtual

Extracts pose data from ROI.

Parameters
sensor_dataPose of arm end effector and pose of tracked object in arm frame
Returns
true if able to extract ROI position

Implements ControllerHardwareConnector< std::tuple< tf::Transform, tf::Transform >, tf::Transform, tf::Transform >.

bool VisualServoingControllerArmConnector::getTrackingPoseArmFrame ( tf::Transform &  tracking_pose)

Get the tracking pose of the tracker in the arm frame.

Parameters
tracking_vectorReturned tracking pose
Returns
True if successful and false otherwise
void VisualServoingControllerArmConnector::sendHardwareCommands ( tf::Transform  controls)
protectedvirtual

Send position commands to hardware.

Parameters
controlsposition command to send to arm

Implements ControllerHardwareConnector< std::tuple< tf::Transform, tf::Transform >, tf::Transform, tf::Transform >.


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