接口 IForceControlImp
- 所有已知实现类:
BaseForceControl,ForceControlModel
public interface IForceControlImp
-
方法概要
修饰符和类型方法说明描述: 力控初始化fcMonitor(boolean enable) 描述: 启动/关闭力控模块保护监控。fcStart()描述: 开始力控,fcInit()之后调用。fcStop()描述: 停止力控描述: 暂停搜索运动。描述: 重新开启暂停的搜索运动。setCartesianMaxVel(double[] velocity) 描述: 设置力控模式下, 机械臂末端相对基坐标系的最大速度setControlType(int type) 描述: 设置阻抗控制类型setForceCondition(double[] range, boolean isInside, double timeout) 描述: 设置与接触力有关的终止条件setJointMaxEnergy(double[] energy) 描述: 设置力控模式下轴最大动能。setJointMaxMomentum(double[] momentum) 描述: 设置力控模式下轴最大动量。setJointMaxVel(double[] velocity) 描述: 设置力控模式下的轴最大速度setLissajousOverlay(int plane, double amplify_one, double frequency_one, double amplify_two, double frequency_two, double phase_diff) 描述: 设置平面内的莉萨如搜索运动 设置阻抗控制类型为笛卡尔阻抗(即setControlType(1))之后, startOverlay()之前调用生效。描述: 设置力控模块使用的负载信息,fcStart()之后可调用。setPoseBoxCondition(Frame supervising_frame, double[] box, boolean isInside, double timeout) 描述: 设置与接触位置有关的终止条件setSineOverlay(int line_dir, double amplify, double frequency, double phase, double bias) 描述: 设置绕单轴旋转的正弦搜索运动。setTorqueCondition(double[] range, boolean isInside, double timeout) 描述: 设置与接触力矩有关的终止条件描述: 开启搜索运动。描述: 停止搜索运动激活前序设置的终止条件并等待,直到满足这些条件或者超时
-
方法详细资料
-
fcInit
描述: 力控初始化- 参数:
frame_type- 力控坐标系。工具工件坐标系使用setToolset()设置的坐标系- 返回:
- RobotResult 结果
-
fcStart
RobotResult fcStart()描述: 开始力控,fcInit()之后调用。 如需在力控模式下执行运动指令,fcStart()之后可执行。- 返回:
- RobotResult 结果
-
fcStop
RobotResult fcStop()描述: 停止力控- 返回:
- RobotResult 结果
-
setControlType
描述: 设置阻抗控制类型- 参数:
type- 0-关节阻抗 | 1-笛卡尔阻抗;- 返回:
- RobotResult 结果;
-
setLoad
描述: 设置力控模块使用的负载信息,fcStart()之后可调用。- 参数:
load- 负载- 返回:
- RobotResult 结果;
-
setSineOverlay
RobotResult setSineOverlay(int line_dir, double amplify, double frequency, double phase, double bias) 描述: 设置绕单轴旋转的正弦搜索运动。 设置阻抗控制类型为笛卡尔阻抗(即setControlType(1))之后, startOverlay()之前调用生效。 各机型的搜索运动幅值上限和搜索运动频率上限不同,请参考《xCore控制系统手册》 SetSineOverlay指令的说明。- 参数:
line_dir- 搜索运动参考轴: 0 - X | 1 - Y | 2 - Zamplify- 搜索运动幅值, 单位Nmfrequency- 搜索运动频率, 单位Hzphase- 搜索运动相位, 范围[0, PI], 单位弧度bias- 搜索运动偏置, 范围[0, 10], 单位Nm
-
setLissajousOverlay
RobotResult setLissajousOverlay(int plane, double amplify_one, double frequency_one, double amplify_two, double frequency_two, double phase_diff) 描述: 设置平面内的莉萨如搜索运动 设置阻抗控制类型为笛卡尔阻抗(即setControlType(1))之后, startOverlay()之前调用生效。- 参数:
plane- 搜索运动参考平面: 0 - XY | 1 - XZ | 2 - YZamplify_one- 搜索运动一方向幅值, 范围[0, 20], 单位Nmfrequency_one- 搜索运动一方向频率, 范围[0, 5], 单位Hzamplify_two- 搜索运动二方向幅值, 范围[0, 20]单位Nmfrequency_two- 搜索运动二方向频率, 范围[0, 5], 单位Hzphase_diff- 搜索运动两个方向相位偏差, 范围[0, PI], 单位弧度
-
startOverlay
RobotResult startOverlay()描述: 开启搜索运动。fcStart()之后调用生效 搜索运动为前序设置的 setSineOverlay()或 setLissajousOverlay()的叠加 -
stopOverlay
RobotResult stopOverlay()描述: 停止搜索运动 -
pauseOverlay
RobotResult pauseOverlay()描述: 暂停搜索运动。startOverlay()之后调用生效 -
restartOverlay
RobotResult restartOverlay()描述: 重新开启暂停的搜索运动。pauseOverlay()之后调用生效。 -
setForceCondition
描述: 设置与接触力有关的终止条件- 参数:
range- 各方向上的力限制 { X_min, X_max, Y_min, Y_max, Z_min, Z_max }, 单位N。 设置下限时, 负值表示负方向上的最大值; 设置上限时, 负值表示负方向上的最小值。isInside- true - 超出限制条件时停止等待; false - 符合限制条件时停止等待timeout- 超时时间, 范围[1, 600], 单位秒
-
setTorqueCondition
描述: 设置与接触力矩有关的终止条件- 参数:
range- 各方向上的力矩限制 { X_min, X_max, Y_min, Y_max, Z_min, Z_max }, 单位Nm。设置下限时, 负值表示负方向上的最大值; 设置上限时, 负值表示负方向上的最小值。isInside- true - 超出限制条件时停止等待; false - 符合限制条件时停止等待timeout- 超时时间, 范围[1, 600], 单位秒
-
setPoseBoxCondition
RobotResult setPoseBoxCondition(Frame supervising_frame, double[] box, boolean isInside, double timeout) 描述: 设置与接触位置有关的终止条件- 参数:
supervising_frame- 长方体所在的参考坐标系, 相对于外部工件坐标系。外部工件坐标系是通过setToolset()设置的, toolset.refbox- 定义一个长方体 { X_start, X_end, Y_start, Y_end, Z_start, Z_end }, 单位米isInside- true - 超出限制条件时停止等待; false - 符合限制条件时停止等待timeout- 超时时间, 范围[1, 600], 单位秒
-
waitCondition
RobotResult waitCondition()激活前序设置的终止条件并等待,直到满足这些条件或者超时 -
fcMonitor
描述: 启动/关闭力控模块保护监控。 设置监控参数后,不立即生效,调用fcMonitor(true)后开始生效,并且一直保持,直到调用fcMotion(false)后结束。 结束后保护阈值恢复成默认值,即仍然会有保护效果,关闭监控后不再是用户设置的参数。- 参数:
enable- true - 打开 | false - 关闭- 另请参阅:
-
setJointMaxVel() setJointMaxMomentum() setJointMaxEnergy()
-
setCartesianMaxVel
描述: 设置力控模式下, 机械臂末端相对基坐标系的最大速度- 参数:
velocity- 依次为:X Y Z [m/s], A B C [rad/s], 范围 >=0
-
setJointMaxVel
描述: 设置力控模式下的轴最大速度- 参数:
velocity- 轴速度 [rad/s],范围 >=0
-
setJointMaxMomentum
描述: 设置力控模式下轴最大动量。 计算方式:F*t,可以理解为冲量,F为力矩传感器读数,t为控制周期,如果超过30个周期都超过动量阈值则触发保护- 参数:
momentum- 轴动量 [N·s],范围 >=0
-
setJointMaxEnergy
描述: 设置力控模式下轴最大动能。 计算方式:F*v,可以理解为功率,F为力矩传感器读数,v为关节速度, 如果超过30个周期都超过动能阈值则触发保护- 参数:
energy- 动能 [N·rad/s],范围 >=0
-