AUBO SDK  0.26.0
arcs::common_interface::ForceControl Class Reference

#include <force_control.h>

Public Member Functions

 ForceControl ()
virtual ~ForceControl ()
int fcEnable ()
 Start force control
int fcDisable ()
 End force control
bool isFcEnabled ()
 Check if force control is enabled
int setTargetForce (const std::vector< double > &feature, const std::vector< bool > &compliance, const std::vector< double > &wrench, const std::vector< double > &limits, TaskFrameType type=TaskFrameType::FRAME_FORCE)
 Set force control reference (target) value
int setDynamicModel1 (const std::vector< double > &env_stiff, const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale)
 Set force control dynamics model
DynamicsModel fcCalDynamicModel (const std::vector< double > &env_stiff, const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale)
 Calculate force control dynamics model
int setDynamicModelSearch (const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale)
 Set force control dynamics model for hole searching scenario
int setDynamicModelInsert (const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale)
 Set force control dynamics model for insertion/extraction scenario
int setDynamicModelContact (const std::vector< double > &env_stiff, const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale)
 Set force control dynamics model for contact scenario
int setDynamicModel (const std::vector< double > &m, const std::vector< double > &d, const std::vector< double > &k)
 Set force control dynamics model
int fcSetSensorThresholds (const std::vector< double > &thresholds)
 Set force control thresholds
int fcSetSensorLimits (const std::vector< double > &limits)
 Set force control maximum force limits
std::vector< double > getFcSensorThresholds ()
 Get force control thresholds
std::vector< double > getFcSensorLimits ()
 Get maximum force limits
DynamicsModel getDynamicModel ()
 Get force control dynamics model
int setCondForce (const std::vector< double > &min, const std::vector< double > &max, bool outside, double timeout)
 Set force control termination condition: Force.
int setCondOrient (const std::vector< double > &frame, double max_angle, double max_rot, bool outside, double timeout)
 setCondOrient is used to set up an end condition for the tool orientation.
int setCondPlane (const std::vector< double > &plane, double timeout)
 Specify a valid force control plane, x-y plane, z direction is valid
int setCondCylinder (const std::vector< double > &axis, double radius, bool outside, double timeout)
 Specify a valid force control cylinder by providing the central axis and cylinder radius, and specify whether the inside or outside of the cylinder is valid.
int setCondSphere (const std::vector< double > &center, double radius, bool outside, double timeout)
 Specify a valid force control sphere by providing the center and radius, and specify whether the inside or outside of the sphere is valid.
int setCondTcpSpeed (const std::vector< double > &min, const std::vector< double > &max, bool outside, double timeout)
 setCondTcpSpeed is used to setup an end condition for the TCP speed.
int setCondDistance (double distance, double timeout)
 Force control termination condition - distance
int setCondAdvanced (const std::string &type, const std::vector< double > &args, double timeout)
 Advanced force control termination condition
int setCondActive ()
 Activate force control termination condition
bool isCondFullfiled ()
 Check if the force control termination condition has been fulfilled
int setSupvForce (const std::vector< double > &min, const std::vector< double > &max)
 setSupvForce is used to set up force supervision in Force Control.
int setSupvOrient (const std::vector< double > &frame, double max_angle, double max_rot, bool outside)
 setSupvOrient is used to set up an supervision for the tool orientation.
int setSupvPosBox (const std::vector< double > &frame, const Box &box)
 setSupvPosBox is used to set up position supervision in Force Control.
int setSupvPosCylinder (const std::vector< double > &frame, const Cylinder &cylinder)
int setSupvPosSphere (const std::vector< double > &frame, const Sphere &sphere)
int setSupvReoriSpeed (const std::vector< double > &speed_limit, bool outside, double timeout)
 setSupvReoriSpeed is used to set up reorientation speed supervision in Force Control.
int setSupvTcpSpeed (const std::vector< double > &speed_limit, bool outside, double timeout)
 setSupvTcpSpeed is used to set up TCP speed supervision in Force Control.
int setLpFilter (const std::vector< double > &cutoff_freq)
 Set low-pass filter
int resetLpFilter ()
 Reset low-pass filter
int speedChangeEnable (double ref_force)
 The speedChangeEnable is used to activate FC SpeedChange function with desired reference and recover behavior.
int speedChangeDisable ()
 Deactivate FC SpeedChange function.
int speedChangeTune (int speed_levels, double speed_ratio_min)
 speedChangeTune is used to set FC SpeedChange system parameters to a new value.
int setDamping (const std::vector< double > &damping, double ramp_time)
 setDamping is used to tune the damping in the force control coordinate systems.
int resetDamping ()
 Reset damping parameters
int softFloatEnable ()
 Enable soft float function.
int softFloatDisable ()
 Disable soft float function.
bool isSoftFloatEnabled ()
 Returns whether soft float is enabled
int setSoftFloatParams (bool joint_space, const std::vector< bool > &select, const std::vector< double > &stiff_percent, const std::vector< double > &stiff_damp_ratio, const std::vector< double > &force_threshold, const std::vector< double > &force_limit)
 Set soft float parameters
int toolContact (const std::vector< bool > &direction)
 Detect contact between the tool and external objects
std::vector< double > getActualJointPositionsHistory (int steps)

Protected Attributes

void * d_ { nullptr }

Detailed Description

Definition at line 94 of file force_control.h.

Constructor & Destructor Documentation

◆ ForceControl()

arcs::common_interface::ForceControl::ForceControl ( )

◆ ~ForceControl()

virtual arcs::common_interface::ForceControl::~ForceControl ( )
virtual

Member Data Documentation

◆ d_

void* arcs::common_interface::ForceControl::d_ { nullptr }
protected

Definition at line 2616 of file force_control.h.


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