|
| | ForceControl () |
| virtual | ~ForceControl () |
| int | fcEnable () |
| | 使能力控。 fcEnable 被用于使能力控。 在力控被使能的同时, fcEnable 用于定义力控的坐标系,并调整力和力矩的阻尼。 如果在 fcEnable 中未指定坐标系, 则会创建一个默认的力控制坐标系,其方向与工作对象坐标系相同。 所有力控制监管功能都被 fcEnable 激活。
|
| int | fcDisable () |
| | 失能力控。 fcDisable 被用于失能力控。 在成功失能力控之后,机器人将回到位置控制模式。
|
| bool | isFcEnabled () |
| | 判断力控是否被使能
|
| 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) |
| | 设置力控参考(目标)值
|
| int | setDynamicModel1 (const std::vector< double > &env_stiff, const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale) |
| | 设置力控动力学模型
|
| DynamicsModel | fcCalDynamicModel (const std::vector< double > &env_stiff, const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale) |
| | 计算力控动力学模型
|
| int | setDynamicModelSearch (const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale) |
| | 设置力控搜孔场景下的动力学模型
|
| int | setDynamicModelInsert (const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale) |
| | 设置力控插/拔孔场景下的动力学模型
|
| int | setDynamicModelContact (const std::vector< double > &env_stiff, const std::vector< double > &damp_scale, const std::vector< double > &stiff_scale) |
| | 设置力控接触场景下的动力学模型
|
| int | setDynamicModel (const std::vector< double > &m, const std::vector< double > &d, const std::vector< double > &k) |
| | 设置力控动力学模型
|
| int | fcSetSensorThresholds (const std::vector< double > &thresholds) |
| | 设置力控阈值
|
| int | fcSetSensorLimits (const std::vector< double > &limits) |
| | 设置力控最大受力限制
|
| std::vector< double > | getFcSensorThresholds () |
| | 获取力控阈值
|
| std::vector< double > | getFcSensorLimits () |
| | 获取最大力限制
|
| DynamicsModel | getDynamicModel () |
| | 获取力控动力学模型
|
| int | setCondForce (const std::vector< double > &min, const std::vector< double > &max, bool outside, double timeout) |
| | 设置力控终止条件:力,当测量的力在设置的范围之内,力控算法将保持运行,直到设置的条件不满足,力控将退出
|
| int | setCondOrient (const std::vector< double > &frame, double max_angle, double max_rot, bool outside, double timeout) |
| | 设置力控终止条件:姿态,当测量的姿态在设置的范围之内,力控算法将保持运行,直到设置的条件不满足,力控将退出.
|
| int | setCondPlane (const std::vector< double > &plane, double timeout) |
| | 指定力控有效平面,x-y平面,z方向有效
|
| int | setCondCylinder (const std::vector< double > &axis, double radius, bool outside, double timeout) |
| | 指定力控有效圆柱体,提供中心轴和圆柱半径,可以指定圆柱内部还是外部
|
| int | setCondSphere (const std::vector< double > ¢er, double radius, bool outside, double timeout) |
| | 指定力控有效球体,提供球心和半径,可以指定球体内部还是外部
|
| int | setCondTcpSpeed (const std::vector< double > &min, const std::vector< double > &max, bool outside, double timeout) |
| | 设置TCP速度的终止条件。该条件可通过调用FCCondWaitWhile指令激活, 在指定条件为真时,程序将等待并保持执行。这样可以使参考力、力矩和运动继续, 直到速度超出指定范围。
|
| int | setCondDistance (double distance, double timeout) |
| | 力控终止条件-距离
|
| int | setCondAdvanced (const std::string &type, const std::vector< double > &args, double timeout) |
| | 高级力控终止条件
|
| int | setCondActive () |
| | 激活力控终止条件
|
| bool | isCondFullfiled () |
| | 力控终止条件是否已经满足
|
| int | setSupvForce (const std::vector< double > &min, const std::vector< double > &max) |
| | setSupvForce 用于在力控中设置力监督。监督在通过 FCAct 指令激活力控时被激活。
|
| int | setSupvOrient (const std::vector< double > &frame, double max_angle, double max_rot, bool outside) |
| | setSupvOrient 用于设置工具姿态的监督条件。 当通过 FCAct 指令激活力控时,监督条件被激活。
|
| int | setSupvPosBox (const std::vector< double > &frame, const Box &box) |
| | setSupvPosBox 用于在力控中设置位置监督。监督在通过 FCAct 指令激活力控时被激活。 位置监督通过为TCP定义空间体积来设置。一旦激活,如果TCP超出该体积,监督将停止执行。
|
| 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 用于在力控中设置重新定向速度监督。监督在通过 FCAct 指令激活力控时被激活。
|
| int | setSupvTcpSpeed (const std::vector< double > &speed_limit, bool outside, double timeout) |
| | setSupvTcpSpeed 用于在力控中设置TCP速度监督。监督在通过 FCAct 指令激活力控时被激活。 TCP速度监督通过定义工作对象坐标系各方向上的最小和最大速度限制来设置。 一旦激活,如果检测到过高的TCP速度值,监督将停止执行。
|
| int | setLpFilter (const std::vector< double > &cutoff_freq) |
| | 设置低通滤波器
|
| int | resetLpFilter () |
| | 重置低通滤波器
|
| int | speedChangeEnable (double ref_force) |
| | speedChangeEnable 用于激活 FC SpeedChange 功能,并设置期望的参考力和恢复行为。 当 FC SpeedChange 功能被激活时,机器人速度会根据测量信号与参考值的接近程度自动降低或提高。
|
| int | speedChangeDisable () |
| | 停用 FC SpeedChange 功能。
|
| int | speedChangeTune (int speed_levels, double speed_ratio_min) |
| | speedChangeTune 用于将 FC SpeedChange 系统参数设置为新值。
|
| int | setDamping (const std::vector< double > &damping, double ramp_time) |
| | setDamping 用于在力控坐标系中调整阻尼。可调参数包括扭矩x方向到扭矩z方向的阻尼(见第255页)以及力x方向到力z方向的阻尼(见第254页)。
|
| int | resetDamping () |
| | 重置阻尼参数
|
| int | softFloatEnable () |
| | 启用软浮动功能。
|
| int | softFloatDisable () |
| | 停用软浮动功能。
|
| bool | isSoftFloatEnabled () |
| | 返回是否开启了软浮动
|
| 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) |
| | 设置软浮动参数
|
| int | toolContact (const std::vector< bool > &direction) |
| | 检测工具和外部物体的接触
|
| std::vector< double > | getActualJointPositionsHistory (int steps) |