跳到主要内容

16.1 软浮动功能

16.1.1 功能概述

软浮动功能可将机器人由刚性状态变为柔性状态。开启软浮动后,机器人在运动过程中若受到外力作用,末端会顺应外力产生偏移,使实际轨迹相对规划轨迹发生偏离;外力撤销后,在未重置规划起点的情况下,机器人会尝试回到规划轨迹。

实际轨迹与规划轨迹之间的偏差,与机器人所受外力的大小、方向,以及软浮动比例、最大偏离范围等配置密切相关:外力越大、对应方向越“软”,偏移通常越明显。

16.1.1

软浮动适用于抓取位与定位位存在偏差、装配贴合、压铸取件等场景,可在不依赖外部力传感器的情况下降低刚性接触对本体或工件造成损伤的风险。

软浮动相关参数通过工艺号进行管理。每套工艺包含坐标系、软浮动比例、最大偏离范围三项配置,系统最多可保存 16 套工艺(工艺号 1~16)。配置完成后,需先在界面中启用软浮动功能,再通过 RL 指令 SoftFloatStart / SoftFloatStop / SoftFollow 控制软浮动的开启、关闭与跟随。

  • SoftFloatStart 与 SoftFloatStop 需配对使用。

  • 软浮动开启期间,请勿在奇异点附近长时间作业;关闭软浮动前建议先撤销外力,以减小回弹或振动风险。

  • 软浮动与碰撞检测功能冲突:碰撞检测开启时不允许开启软浮动。

16.1.2 软浮动指令

软浮动提供以下三条 RL 指令:

  • SoftFloatStart:按指定工艺号开启软浮动

  • SoftFloatStop:关闭软浮动

  • SoftFollow:重置规划起点(软浮动跟随)

16.1.2.1 SoftFloatStart

说明

开启软浮动。指令执行后,机器人按指定工艺号中的坐标系、软浮动比例与最大偏离范围进入柔性状态;运动中若受到外力,实际轨迹可相对规划轨迹发生偏移。

定义

SoftFloatStart(SoftNum);
SoftNum,工艺号,取值范围 1~16,用于指定当前使用的软浮动工艺配置。

示例

例 1
MoveJ(p1, v100, z50, tool0);
SoftFloatStart(1);
MoveL(p2, v100, z50, tool0);
MoveL(p3, v100, z50, tool0);
SoftFloatStop();
MoveL(p4, v100, z50, tool0);
使用工艺号 1 开启软浮动,在 p2、p3 段运动中可受外力偏移;关闭后再运动至 p4。

注意

  • 使用前需在软浮动界面完成对应工艺号的参数配置,并打开右上角“启用”开关;未启用时执行该指令将提示告警。

  • 需与 SoftFloatStop 配对使用。

  • 碰撞检测开启时不允许开启软浮动。

工艺配置说明

每个工艺号均包含以下三项设置,最多可保存 16 套不同配置。

16.1.2

坐标系

软浮动参考坐标系可选:

  • 基坐标系(Base)

  • 工件坐标系(Wobj)

  • 工具坐标系(Tool)

软浮动比例与最大偏离范围均相对于所选坐标系进行解释。

软浮动比例

软浮动比例取值范围为 0~100,可在六个笛卡尔方向(X、Y、Z、A、B、C)上分别设置:

  • 值越大,表示该方向越“软”,越容易被外力推动

  • 值越小,表示该方向越“硬”,越难被外力推动

  • 值为 0 时,表示该方向不受外力影响

最大偏离范围

最大偏离范围表示机器人实际轨迹相对规划轨迹所允许的最大偏移量(界面中按 X、Y、Z 方向设置,单位为 mm)。软浮动过程中,实际轨迹与规划轨迹的偏差不应超出该范围。

当机器人运行速度较快,或工况(负载、摩擦、外力变化等)与调试条件差异较大时,实际偏差可能会轻微超出所设置的最大偏离范围。请结合现场工况合理设置范围值,并充分验证。

配置与启用步骤

  1. 选择工艺号(1~16)。

  2. 设置坐标系、各方向软浮动比例,以及 X/Y/Z 最大偏离范围。

  3. 点击界面右下角“保存”,将当前工艺写入控制器。

  4. 按需重复上述步骤,配置其余工艺号。

  5. 配置完成后,打开界面右上角“启用”开关。

  6. 在程序中调用 SoftFloatStart(工艺号) 即可按对应工艺开启软浮动。

16.1.2.2 SoftFloatStop

说明

关闭软浮动。程序运行到该指令时,软浮动结束,机器人不再继续以柔性方式响应外力。

定义

SoftFloatStop();
无参数。

示例

例 1
SoftFloatStart(1);
MoveL(p2, v100, z50, tool0);
SoftFloatStop();
关闭软浮动后,后续运动按常规刚性轨迹执行。

注意

  • 若关闭前未执行 SoftFollow,关闭时机器人会尝试回到规划轨迹;若此时仍有较大外力作用,可能无法顺利回位,甚至触发过流等错误。

  • 建议在外力撤销后再执行 SoftFloatStop。

16.1.2.3 SoftFollow

说明

软浮动跟随指令。执行后将当前实际位置重置为新的规划起点,使后续轨迹以当前位置为基准继续规划。

定义

SoftFollow();
无参数。

示例

例 1(关闭前重置规划起点)
SoftFloatStart(1);
MoveL(p2, v100, z50, tool0);
MoveL(p3, v100, z50, tool0);
SoftFollow();
SoftFloatStop();
MoveL(p4, v100, z50, tool0);
在 p3 段受外力偏移后执行 SoftFollow,将当前位置(假设为 p100)设为新的规划起点;随后 SoftFloatStop 不再尝试回到原规划点 p3,下一条 MoveL 从 p100 规划至 p4。

例 2(跟随后继续运动)
SoftFloatStart(1);
MoveL(p2, v100, z50, tool0);
SoftFollow();
MoveL(p3, v100, z50, tool0);
SoftFloatStop();
执行 SoftFollow 后,下一条运动指令以重置后的位置为起点;若外力仍然存在,将在新的规划基准上再次产生偏移。

注意

  • 不执行 SoftFollow 时:软浮动关闭或外力撤销后,机器人会尝试回到原规划位置。

  • 执行 SoftFollow 后:规划位置被重置为当前位置;软浮动关闭、外力撤销时,不再尝试回到重置前的规划位置。

  • 若 SoftFloatStop 的前一条指令是 SoftFollow,则关闭时机器人已处于新的规划轨迹上,一般不会再向旧规划点回弹。

典型用法对比:

  • 需要回到原规划轨迹:SoftFloatStart → 运动 → SoftFloatStop

  • 需要从偏移后的实际位置继续后续工序:SoftFloatStart → 运动 → SoftFollow → SoftFloatStop → 后续运动