visual-tracking-control
|
VisualServoingIDL IDL Interface to ServerVisualServoing functionalities. More...
#include <VisualServoingIDL.h>
Public Member Functions | |
VisualServoingIDL () | |
virtual bool | init_facilities (const bool use_direct_kin) |
Initialize support modules and connections to perform a visual servoing task. More... | |
virtual bool | reset_facilities () |
Reset support modules and connections to perform the current initialized visual servoing task. More... | |
virtual bool | stop_facilities () |
Stop and disconnect support modules and connections used for visual servoing. More... | |
virtual bool | go_to_px_goal (const std::vector< std::vector< double > > &vec_px_l, const std::vector< std::vector< double > > &vec_px_r) |
Set the goal points on both left and right camera image plane and start visual servoing. More... | |
virtual bool | go_to_pose_goal (const std::vector< double > &vec_x, const std::vector< double > &vec_o) |
Set the goal point (3D for the position + 4D axis-angle for the orientation) and start visual servoing. More... | |
virtual bool | set_modality (const std::string &mode) |
Set visual servoing operating mode between: More... | |
virtual bool | set_visual_servo_control (const std::string &control) |
Set visual servo control law between: More... | |
virtual bool | set_control_point (const std::string &point) |
Set the point controlled during visual servoing. More... | |
virtual std::vector< std::string > | get_visual_servoing_info () |
Return useful information for visual servoing. More... | |
virtual bool | set_go_to_goal_tolerance (const double tol) |
Set visual servoing goal tolerance. More... | |
virtual bool | check_visual_servoing_controller () |
Check once whether the visual servoing controller is running or not. More... | |
virtual bool | wait_visual_servoing_done (const double period, const double timeout) |
Wait until visual servoing reaches the goal. More... | |
virtual bool | stop_controller () |
Ask for an immediate stop of the visual servoing controller. More... | |
virtual bool | set_translation_gain (const double K_x_1, const double K_x_2) |
Set the translation gains of the visual servoing control algorithm. More... | |
virtual bool | set_max_translation_velocity (const double max_x_dot) |
Set the maximum translation velocity of the visual servoing control algorithm (same for each axis). More... | |
virtual bool | set_translation_gain_switch_tolerance (const double K_x_tol) |
Set the tolerance, in pixels, at which the translation control law swithces its gain value. More... | |
virtual bool | set_orientation_gain (const double K_o_1, const double K_o_2) |
Set the orientation gains of the visual servoing control algorithm. More... | |
virtual bool | set_max_orientation_velocity (const double max_o_dot) |
Set the maximum angular velocity of the axis-angle velocity vector of the visual servoing control algorithm. More... | |
virtual bool | set_orientation_gain_switch_tolerance (const double K_o_tol) |
Set the tolerance, in pixels, at which the orientation control law swithces its gain value. More... | |
virtual std::vector< std::vector< double > > | get_3D_goal_positions_from_3D_pose (const std::vector< double > &x, const std::vector< double > &o) |
Helper function: extract four Cartesian points lying on the plane defined by the frame o in the position x relative to the robot base frame. More... | |
virtual std::vector< std::vector< double > > | get_goal_pixels_from_3D_pose (const std::vector< double > &x, const std::vector< double > &o, const std::string &cam) |
Helper function: extract four 2D pixel points lying on the plane defined by the frame o in the position x relative to the robot base frame. More... | |
virtual bool | quit () |
Gently close the visual servoing device, deallocating resources. More... | |
virtual bool | stored_init (const std::string &label) |
Initialize the robot to an initial position. More... | |
virtual bool | stored_go_to_goal (const std::string &label) |
Set the robot visual servoing goal. More... | |
virtual bool | get_goal_from_sfm () |
Get goal point from SFM module. More... | |
virtual bool | read (yarp::os::ConnectionReader &connection) override |
virtual std::vector< std::string > | help (const std::string &functionName="--all") |
VisualServoingIDL IDL Interface to ServerVisualServoing functionalities.
Definition at line 17 of file VisualServoingIDL.h.
VisualServoingIDL::VisualServoingIDL | ( | ) |
|
virtual |
Check once whether the visual servoing controller is running or not.
Reimplemented in VisualServoingServer.
|
virtual |
Helper function: extract four Cartesian points lying on the plane defined by the frame o in the position x relative to the robot base frame.
x | a 3D vector which is filled with the actual position (x, y, z) [m]. |
o | a 4D vector which is filled with the actual orientation using axis-angle representation (xa, ya, za) and (theta) [rad]. |
Reimplemented in VisualServoingServer.
|
virtual |
Get goal point from SFM module.
The point is taken by clicking on a dedicated 'yarpview' GUI and the orientation is hard-coded.
Reimplemented in VisualServoingServer.
|
virtual |
Helper function: extract four 2D pixel points lying on the plane defined by the frame o in the position x relative to the robot base frame.
x | a 3D vector which is filled with the actual position (x, y, z) [m]. |
o | a 4D vector which is filled with the actual orientation using axis-angle representation (xa, ya, za) and (theta) [m]/[rad]. |
cam | either "left" or "right" to select left or right camera. |
Reimplemented in VisualServoingServer.
|
virtual |
Return useful information for visual servoing.
Reimplemented in VisualServoingServer.
|
virtual |
Set the goal point (3D for the position + 4D axis-angle for the orientation) and start visual servoing.
vec_x | a 3D vector which contains the (x, y, z) Cartesian coordinates of the goal. |
vec_o | a 4D vector which contains the (x, y, z) axis and theta angle of rotation of the goal. |
Reimplemented in VisualServoingServer.
|
virtual |
Set the goal points on both left and right camera image plane and start visual servoing.
vec_px_l | a collection of four 2D vectors which contains the (u, v) coordinates of the pixels within the left image plane. |
vec_px_r | a collection of four 2D vectors which contains the (u, v) coordinates of the pixels within the right image plane. |
|
virtual |
|
virtual |
Initialize support modules and connections to perform a visual servoing task.
This method must be called before any other visual servoing methods. Returns upon successful or failure setup.
use_direct_kin | instruct the visual servoing control to either use direct kinematic or an estimated/refined pose of the end-effector. |
Reimplemented in VisualServoingServer.
|
virtual |
Gently close the visual servoing device, deallocating resources.
Reimplemented in VisualServoingServer.
|
overridevirtual |
|
virtual |
Reset support modules and connections to perform the current initialized visual servoing task.
Returns upon successful or failure setup.
Reimplemented in VisualServoingServer.
|
virtual |
Set the point controlled during visual servoing.
point | label of the point to control. |
Reimplemented in VisualServoingServer.
|
virtual |
Set visual servoing goal tolerance.
tol | the tolerance in pixel. |
Reimplemented in VisualServoingServer.
|
virtual |
Set the maximum angular velocity of the axis-angle velocity vector of the visual servoing control algorithm.
max_x_dot | the maximum allowed angular velocity [rad/s]. |
Reimplemented in VisualServoingServer.
|
virtual |
Set the maximum translation velocity of the visual servoing control algorithm (same for each axis).
max_x_dot | the maximum allowed velocity for x, y, z coordinates [m/s]. |
Reimplemented in VisualServoingServer.
|
virtual |
Set visual servoing operating mode between:
mode | a label referring to one of the three operating mode, i.e. 'position', 'orientation' or 'pose'. |
Reimplemented in VisualServoingServer.
|
virtual |
Set the orientation gains of the visual servoing control algorithm.
The two values are used, respectively, when the end-effector is far away from and close to the goal.
Reimplemented in VisualServoingServer.
|
virtual |
Set the tolerance, in pixels, at which the orientation control law swithces its gain value.
Reimplemented in VisualServoingServer.
|
virtual |
Set the translation gains of the visual servoing control algorithm.
The two values are used, respectively, when the end-effector is far away from and close to the goal.
Reimplemented in VisualServoingServer.
|
virtual |
Set the tolerance, in pixels, at which the translation control law swithces its gain value.
Reimplemented in VisualServoingServer.
|
virtual |
Set visual servo control law between:
mode | a label referring to one of the three visual servo controls, i.e. 'position', 'orientation' or 'pose'. |
Reimplemented in VisualServoingServer.
|
virtual |
Ask for an immediate stop of the visual servoing controller.
[wait for reply]
Reimplemented in VisualServoingServer.
|
virtual |
Stop and disconnect support modules and connections used for visual servoing.
This method must be called when visual servoing is no longer needed or a new visual servoing task need to be initialized.
Reimplemented in VisualServoingServer.
|
virtual |
Set the robot visual servoing goal.
The goals are stored on an external file and are referenced by a unique label.
label | a label referring to one of the available goals; the string shall be one of the available modes returned by the get_info() method. |
Reimplemented in VisualServoingServer.
|
virtual |
Initialize the robot to an initial position.
The initial positions are stored on an external file and are referenced by a unique label.
label | a label referring to one of the available initial positions; the string shall be one of the available modes returned by the get_info() method. |
Reimplemented in VisualServoingServer.
|
virtual |
Wait until visual servoing reaches the goal.
[wait for reply]
period | the check time period [s]. |
timeout | the check expiration time [s]. If timeout <= 0 (as by default) the check will be performed without time limitation. |
Reimplemented in VisualServoingServer.