六轴机器人模型制作

当您获得本文档时,可点击下载 robot_model.zip 压缩包。解压后其内容应包括:

image-20240416143216233

  • UR30_obj 文件夹:包含 UR30 已拆分的机器人各轴文件,OBJ 格式。

  • UR30_step 文件夹:包含 UR30 机器人 STEP 格式及参数的 PDF。

  • make_robot.xml:RVS 制作机器人模型 XML。

    make_robot.dashboard.xml 为相应的交互面板配置。

准备机器人模型关节

在使用 RVS 制作模型之前我们需要将机器人模型进行拆分,并将机器人模型的各轴文件类型进行转换等操作。在进行以上操作时,我们将会用到软件有:

  • NXUG:在本手册的操作中用于拆分机器人模型。(Windows 版本)

  • blender:在本手册的操作中主要用于调整机器人模型关节的尺寸。(Windows 版本)

点击软件下载获得以上两个软件的安装包以及配套的安装说明,按照安装说明进行安装即可。

一. 拆分机器人模型关节

  1. 打开 NXUG 软件,点击菜单栏文件打开。在打开窗口中设置文件类型为所有文件,然后选择机器人数模所在目录,鼠标双击要打开的数模文件。

    image-20240412143156835

  2. 加载机器人模型后,鼠标右键点击 3D 视图并选择适合窗口。然后鼠标左键双击坐标轴,将坐标系拖动到机器人基坐标系上。

    image-20240412143016807

  3. 调整坐标系的坐标轴朝向,使得视图中的坐标系与实际的基坐标系相符,如下图所示。

    Picture3

  4. 调整好坐标系后,鼠标右键点击视图窗口,然后鼠标点击确定锁定坐标轴,如下图所示。

    Picture4

  5. 导出机器人模型关节:点击菜单栏文件导出,选择 STL 格式。

    z1

  6. 在 STL 导出窗口中,点击导出至下面的目录选择按钮,选择要导出的目录并填写文件名(建议保存为 J0 到 J6 )。

    image-20240417161406854

  7. 在 3D 视图中选择要导出的关节部件,然后点击导出窗口的确定按钮,如下图所示。同样的,依次导出 J1 到 J6 所有关节。

    z3

二. 调整关节尺寸和文件格式

  1. 打开 Blender 软件,点击文件导入Stl

    Picture11

  2. 打开关节目录,选中所有关节,缩放参数改为 0.001,前进改为 -Z 向前,向上改为 Y 向上,然后点击 导入 STL ,如下图所示:

    image-20240417161716093

  3. 导入所有关节,关节显示在视图中,如下图所示:

    Picture12

  4. 导出关节:点击文件导出Wavefront(.obj)

    Picture13

  5. 选择保存路径,输入保存的文件名( J0.obj…… ),窗口右侧选中关节( J0…… ),选中文件视图窗口中仅导出选中的物体,点击导出 OBJ 。重复同样的操作,保存 J1 到 J6 。

    image-20240409173848560

生成机器人模型文件

  1. 打开 RVS 软件,并加载 make_robot.xml ,如下图所示。将机器人各个关节的 obj 和 mtl 文件,拷贝到当前 runtime 目录下的 data/UR30/(建议以实际机器人型号创建目录名)。同时修改 GenerateRobot  Group 属性面板上机器人品牌和机器人型号分别为 UR 和 UR30 。

    image-20240409174148073

  2. 修改 LoadRobot Group 中机器人模型文件参数,如下图所示。

    image-20240411152648055

  3. 将交互面板中最底部的 ZeroJoints 参数全部修改为 0 值。依次点击最顶部 GenerateLoadRobot 按钮,加载机器人关节的数模,如下图所示。修改交互面板的 RobotBase 参数对整个模型进行 Transform(若按照教程正确拆分关节则六个参数全为 0 ),使得 3D 视图中的原点坐标系(Pose[0, 0, 0, 0, 0, 0])与机器人实际的基坐标系完全相符。

    然后修改 GenerateRobot 属性面板上六个关节的旋转方向,使得与实际机器人各个关节的旋转方向相符。

    可打开 robodk.com 网站参考对应机器人的仿真模型。

    image-20240409174243554

  4. 打开 GenerateRobot 属性面板上的 PoseListView ,显示各个关节的旋转坐标系。各个关节的旋转方向即为旋转坐标系的坐标轴。根据机器人的 DH 参数值,修改交互面板中 ZeroPose1 到 ZeroPose6 的数值。这六个 ZeroPose 分别表示每个关节的旋转坐标系,在上一个关节的旋转坐标系中的相对坐标(第一关节则相对于机器人底座)。第一关节到第五关节通常只修改 X、Y、Z 的值,第六关节表示机器人的 TCP,还需要调整姿态角 RX、RY、RZ ,使得 TCP 的姿态与实际机器人相符,如下图所示。

    注意:交互面板中参数调整后,需要进行回车确认。

    image-20240409174410340

  5. 再次点击交互面板中的 GenerateLoadRobot ,重新生成和加载机器人模型。鼠标左键双击 3D 视图中的机器人,打开机器人面板,如下图所示。拖动关节轴点动的六个滑块,验证机器人各个关节的旋转中心轴和旋转方向是否正确。如果不正确,则返回第三步和第四步,修改对应的参数值。若关节轴点动的滑块无法拖动,则确认面板上关节滑块的最小值和最大值范围是否全为 0,验证阶段建议设置为 -360 到 360,即交互面板的 MinJoints 和 MaxJoints 值,可参考下一步骤。

    image-20240409174508758

  6. 设置交互面板中的 MinJoints、MaxJoints、HomeJoints 数值,分别表示实际机器人各个关节的角度范围(最小值和最大值)和 Home 位。建议参考 RoboDK的操作面板,也可以查看机器人文档。

    image-20240409174554623

  7. 当机器人数模姿态(上图)与机器人关节零位姿态(下图)不相同时(若相同则忽略此步骤),需要进行机器人的关节零位调整。机器人关节零位姿态可以参考实际的机器人,也可以参考 RoboDK 中的仿真模型。

    鼠标双击机器人,打开机器人面板,并拖动关节滑块,使得机器人到达零位姿态,将六个关节值填入交互面板中 ZeroJoints 列表。最后点击 GenerateLoadRobot 重新生成,验证机器人模型是否相符,若相符则机器人建模到此完成。

    image-20240409174642340

    image-20240409174752109

    image-20240409174908383