4. 目标点与路径创建

在 RobotStudio 中,路径优化的第一步不是调参数,而是把“机器人要经过哪些位置”准确地表达出来。目标点(robtarget)是路径的最小组成单元,它同时携带位置、姿态和轴配置信息。路径创建的质量直接决定后续速度、转弯区、碰撞检测能否顺利执行。本节围绕四种目标点获取方式展开:示教、手动输入坐标、从 CAD 模型提取、以及路径点属性设置,并说明它们各自适用的工程场景。

一、目标点的数据结构:为什么不能只记 XYZ

一个 robtarget 由四部分组成:平移量 trans(x、y、z,单位 mm)、旋转量 rot(四元数 q1~q4)、轴配置 conf(cfx、cfy、cfz、cf4)、外部轴 extax。很多初学者只关注 XYZ,结果在回放时出现“机器人绕远路”或“腕部翻转”的报警,根源往往在 conf 和 rot。例如同一空间位置,工具姿态不同,机器人可能选择完全不同的关节组合。因此在创建目标点时,必须同时确认姿态与轴配置,而不是只把 TCP 移到点上。

判断目标点是否“可用”的三个基本条件:位置可达、姿态可达、轴配置与前后点连续。三者缺一,路径在自动生成时就会报错或产生突变。

二、示教目标点:最贴近现场的方式

示教是在 RobotStudio 的虚拟示教器中,用“手动操纵”把机器人 TCP 移动到期望位置,再点击“示教”记录当前点。操作顺序建议为:先选工具坐标系(如 tool0 或自定义焊枪工具),再选工件坐标系(wobj),然后用摇杆或关节/线性模式移动,最后确认姿态后示教。关键点在于:示教前必须明确当前激活的工件坐标系,否则记录下来的坐标会落在错误的参考系里。

示教得到的点默认姿态来自当前机器人姿态,因此天然满足可达性,但姿态未必是工艺最优。例如焊接时希望焊枪始终垂直于焊缝,就需要在示教后进入“修改位置/修改姿态”对话框,用重定向(reorient)功能绕 TCP 调整姿态,而不是重新移动位置。示教法的优点是直观、可达性有保证;缺点是效率低,且难以保证多个点之间的姿态一致性。

三、手动输入坐标:批量与精确控制的入口

当路径点来自图纸、测量报告或算法输出时,手动输入坐标更高效。在“新建目标点”对话框中直接填写 trans 与 rot,或通过“从文件导入”批量生成。下面是一个典型的目标点定义示例:

CONST robtarget pPick :=
  [[320.5, -150.0, 480.2],
   [0.7071, 0, 0.7071, 0],
   [0, 0, 0, 0],
   [9E9, 9E9, 9E9, 9E9, 9E9, 9E9]];

CONST robtarget pPlace :=
  [[620.0, 180.0, 350.0],
   [0.5, 0.5, 0.5, 0.5],
   [0, 0, 0, 0],
   [9E9, 9E9, 9E9, 9E9, 9E9, 9E9]];

其中 9E9 表示外部轴未使用。手动输入时最容易出错的是四元数:它不是欧拉角,不能凭直觉填写。若已知绕 Z 轴旋转 90°,对应四元数为 [0.7071, 0, 0, 0.7071];绕 X 轴 180° 为 [0, 1, 0, 0]。建议先用姿态计算工具换算,再粘贴进目标点,避免手算错误导致姿态翻转。

四、从 CAD 模型提取路径点

RobotStudio 支持在 3D 环境中直接捕捉 CAD 几何特征生成目标点。常用做法是:导入工件模型后,使用“创建目标点”工具,在边、顶点、圆心或曲面上点击捕捉,系统自动读取该点的坐标并生成 robtarget。对于焊缝、涂胶轨迹这类连续曲线,可先用“创建路径”沿边或曲线生成一串点,再统一调整间距与姿态。

从 CAD 提取的优点是位置精度高、与设计模型一致;风险是 CAD 坐标系与机器人工作站坐标系不一致。导入模型时必须确认其原点与朝向,必要时用“设定位置”把模型对齐到工件坐标系。若模型单位是英寸而工作站用毫米,还需做单位换算,否则路径会整体缩放约 25.4 倍。

目标点创建与路径点属性设置关系图 示教目标点 手动操纵 + 示教按钮 手动输入坐标 trans / rot / conf CAD 模型提取 捕捉边 / 顶点 / 曲线 批量导入 CSV / 程序文件 robtarget 数据结构 trans: x, y, z (mm) rot: q1, q2, q3, q4 conf: cfx, cfy, cfz, cf4 extax: 外部轴 路径点属性设置 速度 speeddata 转弯区 zonedata 工具 tool / 工件 wobj 运动类型 MoveJ / MoveL / MoveC 到位精度 fine / zone 生成可执行路径 → 仿真验证

五、路径点属性设置:让点“会运动”

目标点本身只是位置,路径点属性才决定机器人如何到达它。在示教器中选中某个点,可设置以下属性:

  • 运动类型:MoveJ 用于大范围空走,关节插补、速度快但轨迹不可控;MoveL 用于直线工艺段,如焊接、涂胶;MoveC 用于圆弧过渡。
  • 速度:以 speeddata 表示,如 [500, 30, 5000, 1000],分别对应 TCP 速度、重定位速度、外轴速度、外轴重定位速度。工艺段通常取 50~200 mm/s。
  • 转弯区:zonedata 决定经过该点时是否精确停止。fine 表示精确到位,适合起弧点、抓取点;zone 如 z50 表示提前 50 mm 开始过渡,适合连续轨迹。
  • 工具与工件:每个点可绑定 tool 与 wobj,若整条路径一致,建议在指令层统一指定,避免逐点修改。

一个常见的错误是整条路径全部用 fine。这样机器人会在每个点完全停止,节拍大幅增加,且频繁启停会加剧机械磨损。正确做法是:只在工艺关键点(起弧、收弧、抓取、放置)使用 fine,其余过渡点使用合适的 zone 值。zone 值过大会切角,导致实际轨迹偏离设计路径,需要通过仿真观察 TCP 轨迹与设计曲线的偏差。

六、创建后的检查要点

路径点创建完成后,不要立即生成程序。建议按以下顺序检查:第一,在“路径”视图中逐个查看目标点,确认姿态箭头方向符合工艺要求;第二,用“跳转到目标点”功能让机器人移动到该点,观察是否可达、是否与夹具干涉;第三,检查相邻点的 conf 是否连续,若出现轴配置跳变,需手动调整或改用 MoveJ 过渡;第四,运行一次单步仿真,观察转弯区处的实际轨迹。只有这四项都通过,路径才具备进入速度优化与节拍分析的条件。

从 CAD 提取的点默认不带轴配置信息,首次使用时系统会自动求解 conf。若求解结果与前后点不连续,机器人可能在运行中突然改变腕部姿态。建议对 CAD 提取的路径点逐段做单步验证,必要时手动锁定 conf。

总结来说,示教适合现场调试与可达性验证,手动输入适合精确与批量场景,CAD 提取适合复杂曲面与设计驱动路径,而路径点属性设置则把“点”变成“可执行的轨迹”。四者配合使用,才能为后续的路径优化打下可靠基础。