通信配置及示例程序使用

本节介绍三菱 iQ-R 系列 PLC(带外置模块 RJ71EIP91)与梅卡曼德软件系统进行 EtherNet/IP 通信。

所需软硬件

硬件

  • PLC:

    • 三菱 iQ-R 系列 PLC(带外置模块 RJ71EIP91),本示例使用三菱 RCPU R00 机型 PLC。

    • 三菱电源模块 R61P,主基板 R33B。

  • 工控机:已安装标准 PCI-e 通讯板卡 HMS IXXAT INpact 40。

  • USB Type-A 转 USB mini-B 数据线,用于 PLC 程序下载。

  • 交换机和网线。

硬件连接如下图所示。

../../../../_images/hardware_connection8.png

软件

软件

说明

安装位置

GX Works3 1.081K

三菱 PLC 编程软件

用于三菱 PLC 编程的计算机

SW1DN-EIPCT-BD 01B

EtherNet/IP 配置软件

用于三菱 PLC 编程的计算机

梅卡曼德系统软件版本为 1.7.0 及以上

Mech-Mind 软件系统

工控机

HMS IPconfig

设定通讯板卡的IP地址

工控机

除了上述软件外,请将下列文件复制到已安装 GX Works3 的计算机中:

  • EDS 文件:005A002B003A0100.EDS:用于提供工控机在 EtherNet/IP 网络中的身份信息。

    EDS 文件位于梅卡曼德系统软件安装路径下的 Mech-Center/Robot_Interface/EthernetIP 文件夹下。

  • PLC 例程文件 iQ-R_RJ71EIP91.usl,该文件包含以下用户库:

    • M_RJ71EIP91_Class1SetOutputData_00A:使用 Class1 通信,获取指定连接的输入数据;

    • M_RJ71EIP91_Class1GetInputData_00A:使用 Class1 通信,设置指定连接的输出数据;

    • CameraSignalsMove:视觉系统信号传送;

    • CameraTest:视觉系统测试;

    • MM_XXX_XXX 功能块:用于实现各种接口指令的功能。

    例程文件位于梅卡曼德系统软件安装路径下的 Mech-Center/Robot_Interface/EthernetIP/Programming Samples/MITSUBISHI iQ-R PLC EthernetIP 文件夹下。

配置工控机及启动通信

检查工控机通信板卡及驱动

  1. 在工控机 PCI-e 插槽中,确认已安装 INpact EIP 从站 PCIe 板卡。

    ../../../../_images/install_communication_board1.png
  2. 在工控机上,鼠标右键单击 Windows 图标,打开设备管理器,确认已安装板卡驱动软件 VCI4 INpact PCIe。

    ../../../../_images/device_manager1.png

设置 Mech-Vision 中“机器人与通信配置”

  1. 单击 Mech-Vision 工具栏中 机器人与接口配置

  2. 单击 选择机器人 下拉框,选择 品牌机器人 ,然后单击 选择机器人型号 ,选择具体机器人型号,单击 下一步

  3. 通信方式 下,进行如下操作:

    • “接口类型”选择 标准接口

    • “协议” 选择 ETHERNET IP

    • 单击 应用

    ../../../../_images/deployment_settings_12.png
  4. 在 Mech-Vision 主界面,确认工具栏中的接口服务已开启。

    ../../../../_images/deployment_settings_22.png

设定工控机通信板卡 IP 地址

  1. 使用一根网线将工控机的一个网口和 IXXAT INpact 通信板卡网口连接。

    注意

    在设定通信板卡并成功通信后,临时网线便可取消。

  2. 打开 HMS IPconfig 软件,单击扫描,取消勾选 “Retrieve IP Settings Dynamically from a DHCP server” ,并设定板卡 IP 地址和子网掩码,然后单击 Apply 确认并退出软件。

    ../../../../_images/set_ip5.png

创建和配置 PLC 工程

创建 PLC 工程

  1. 打开 GX Works3 软件,单击工具栏中的 新建项目 。在新建窗口中,将系列设为 RCPU ,将机型设为 R00 ,将程序语言设为 梯形图 ,然后单击 确定

    ../../../../_images/create_plc_11.png
  2. 添加模块 窗口,单击 设置更改

    ../../../../_images/create_plc_21.png

    选项 窗口,在“使用模块标签”后的下拉框中,选择 ,单击 确定 。返回 添加模块 窗口,再次单击 确定

    ../../../../_images/create_plc_31.png
  3. 在左侧 连接目标 窗口的 当前连接目标 下,双击 Connection

    ../../../../_images/create_plc_41.png
  4. 弹出 连接目标指定 Connection 窗口。

    1. 计算机侧选择 串行 USB ;可编程控制器侧选择 CPU模块 ,工程 CPU 类型将自动填充为 RCPU

    2. 单击 CPU 模块直接连接设置 。在弹出窗口中,选择 USB ,单击

    3. 返回 连接目标设定 Connection 窗口,单击 通信测试 。若弹窗提示 已成功与 R00CPU 连接 ,则表示计算机中 GX Works3 软件与硬件 PLC 通信成功。

    4. 单击连接目标指定 Connection 窗口的 确定 ,返回 GX Works3 软件窗口。

    ../../../../_images/create_plc_51.png
  5. 在左侧导航窗口,展开 参数 ,双击 系统参数 ,弹出 系统参数 窗口。

    1. 系统参数 窗口的 I/O 分配设置选项卡下,选中 基板/电源/扩展电缆设置 ,单击“基板号/基本”后的选择按钮,弹出 型号选择 窗口。

    2. 型号选择 窗口,按照实际情况选择主基板模块和电源模块型号,单击 确定

      ../../../../_images/create_plc_6.png
    3. 弹出如下提示窗口,单击 确定

      ../../../../_images/create_plc_7.png
    4. 系统参数 窗口的 I/O 分配设置选项下,选中 I/O分配设置 ,单击“插槽0”后的选择按钮,弹出 添加新模块 窗口。

    5. 添加新模块 窗口,模块类型选择 网络模块 ,模块型号选择 RJ71EIP91 ,单击 确定

      ../../../../_images/create_plc_8.png
    6. 弹出如下窗口,单击 确定

      ../../../../_images/create_plc_9.png
  6. 在左侧导航窗口,展开 参数 ,双击新添加的 0000:RJ71EIP91 ,弹出 模块参数 窗口。

    1. 模块参数 窗口,选中 基本设置 ,展开 自节点设置 ,双击 IP 地址空白处。

    2. IP地址设置 窗口,设定 IP 地址和子网掩码后,单击 确定

    ../../../../_images/create_plc_10.png

下载 PLC 硬件配置至 PLC

  1. 在左侧导航窗口,选中 程序,单击菜单栏 转换 ‣ 全部转换

    ../../../../_images/configure_plc_1.png
  2. 全部转换 窗口,单击 选项设置 ,弹出 选项 窗口。

    ../../../../_images/configure_plc_2.png
    1. 选项 窗口,单击左侧 基本设置 ,“执行全部转换时,重新分配标签”选择“ ”,单击 确定

    2. 返回 全部转换 窗口,单击 确定

    ../../../../_images/configure_plc_3.png
  3. 程序转换成功后,单击菜单栏 在线 ‣ 写入至可编程控制器

    ../../../../_images/configure_plc_4.png
  4. 在线数据操作 窗口,选择 写入 选项卡,单击 参数+程序 ,然后单击 执行

    ../../../../_images/configure_plc_5.png
    1. 弹出如下提示窗口,单击

      ../../../../_images/configure_plc_6.png
    2. 确保安全的前提下,单击

      ../../../../_images/configure_plc_7.png
    3. 是否覆盖 窗口,单击 全部是

      ../../../../_images/configure_plc_8.png
    4. 下载成功后,弹出如下提示窗口,确保安全的前提下,单击

      ../../../../_images/configure_plc_9.png
    5. 已完成 窗口,单击 确定 。返回 在线数据操作 窗口,单击 关闭

      ../../../../_images/configure_plc_10.png
  5. 重新上电 PLC 设备使配置生效。

安装及配置 EDS 文件

  1. 返回 0000:RJ71EIP91 模块参数 窗口,双击 EtherNet/IP Configuration Tool 图标,启动 EIP Configuration Tool for RJ71EIP91 配置软件。

    ../../../../_images/install_file_1.png
  2. 弹出 Add New Element 窗口,填写 RJ71EIP91 模块的 IP 地址,需与 GX Works3 内“0000:RJ71EIP91模块参数”设定的 IP 地址保持一致,单击 确定

    ../../../../_images/install_file_2.png
  3. EIP Configuration Tool for RJ71EIP91 窗口,展开 Device Library ,右键单击 EtherNet/IP Devices ,左键单击 Add ,弹出 EDS Management 窗口。

    ../../../../_images/install_file_3.png
    1. EDS Management 窗口,单击 下一页

      ../../../../_images/install_file_4.png
    2. 单击 Browse ,弹出打开窗口,选择相应 EDS 文件后(需要提前从工控机复制该文件),单击 下一页

      ../../../../_images/install_file_5.png
    3. 单击 下一页

      ../../../../_images/install_file_6.png
    4. 单击 完成

      ../../../../_images/install_file_7.png
  4. EDS 文件添加成功后,展开 EtherNet/IP Device ,右键单击 Ixxat INpact EtherNet/IP(TM) 设备,左键单击 Insert in Configuration 以加入 EtherNet IP 网络。 Ixxat INpact EtherNet/IP(TM) 配置窗口将弹出。

    ../../../../_images/install_file_8.png
    1. General 选项卡下,设定视觉系统从站 IP 地址(该地址与 HMS IPConfig 中的 IP 地址相同,本例中设定为 192.168.1.10)。

      ../../../../_images/install_file_9.png
    2. Connection 选项卡下,单击 General ,将 Input Mode 的值修改为 “Point to Point” ,并记录 Input Size 和 Output Size 通讯数据长度,最后单击 OK

      ../../../../_images/install_file_10.png

下载 PLC EtherNet/IP 网络配置至 PLC

  1. 确认添加“Ixxat INpact EtherNet/IP(TM)”设备成功,如下图中所示出现设备选项。单击工具栏中 Online command 图标。

    ../../../../_images/download_file_1.png
  2. 弹窗提示“在线前是否保存配置”,单击 ,进入在线模式。

    ../../../../_images/download_file_2.png
  3. 在线模式 下,单击工具栏中 Download the current configuration in the module 图标,将当前设置的参数写入 EtherNet/IP 通讯模块 RJ71EIP91。

    ../../../../_images/download_file_3.png
    1. 在弹窗中,勾选 configuration.apa,表示配置文件(*.apa)可下载,方便后续上传并重新编辑配置文件(*.apa)。单击 Download

      ../../../../_images/download_file_4.png
    2. 弹出如下提示窗口,单击 确定

      ../../../../_images/download_file_5.png
  4. 重新上电 PLC 单元使配置生效。

导入例程文件并下载 PLC 程序至 PLC

导入 Mech-Mind 例程文件

注意

导入和测试 Mech-Mind 例程文件,请使用新建的 PLC 工程;如需添加到已存在的 PLC 工程中,建议先创建新工程,再进行导入和测试,最后复制到已存在的工程中。

  1. 返回 GX Works3 软件窗口,在菜单栏中,依次单击 工程 ‣ 库操作 ‣ 登录至库一览 ‣ 用户库

    ../../../../_images/import_file_11.png

    弹出如下窗口,单击 确定

    ../../../../_images/import_file_21.png
  2. 将用户库登录至一览 窗口,选择视觉通讯例程库文件“iQ-R_RJ71EIP91.usl”(需提前从工控机复制该文件),单击 打开

    ../../../../_images/import_file_31.png
  3. 返回 GX Works3 软件窗口,在右侧 部件选择 中,选中两个例程文件“CameraSignalsMove”和“CameraTest”,右键依次选择 添加到工程 ‣ 扫描

    ../../../../_images/import_file_4.png

    弹出如下提示窗口,单击

    ../../../../_images/import_file_5.png
  4. 返回 GX Works3 软件窗口,在左侧工程树下,确认例程程序、功能块、标签均已导入,然后依次单击菜单栏中 转换 ‣ 全部转换

    ../../../../_images/import_file_6.png

    弹出如下提示窗口,单击 确定

    ../../../../_images/import_file_7.png

下载 PLC 程序至 PLC

  1. 程序转换成功后,单击菜单栏 在线 ‣ 写入至可编程控制器

    ../../../../_images/download_plc_1.png
  2. 在线数据操作 窗口,选择 写入 选项卡,单击 参数+程序 ,然后单击 执行

    ../../../../_images/download_plc_2.png
    1. 弹出如下提示窗口,单击

      ../../../../_images/download_plc_3.png
    2. 确保安全的前提下,在如下弹出的提示窗口中单击

      ../../../../_images/download_plc_4.png
    3. 是否覆盖 窗口,单击 全部是

      ../../../../_images/download_plc_5.png
    4. 下载成功后,弹出如下提示窗口,确保安全的前提下,单击

      ../../../../_images/download_plc_6.png
    5. 已完成 窗口,单击 确定 。返回 在线数据操作 窗口,单击 关闭

      ../../../../_images/download_plc_7.png

检查通信是否成功

  1. 返回 GX Works3 软件窗口,在导航窗口,双击 程序本体

    ../../../../_images/establish_communication_11.png
  2. 依次单击菜单栏中 在线 ‣ 监视‣ 监视开始(全窗口)

    ../../../../_images/establish_communication_2.png

    若连接成功,FromCamera.HEARTBEAT 心跳信号监视值会在不断改变。

    ../../../../_images/establish_communication_3.png
  3. 在 Mech-Vision 主窗口中,若连接成功,则在日志窗口的 Console 标签页下会显示 连接ETHERNET IP控制器成功

    若无该日志,请检查以下是否正常:

    1. 硬件网络连接是否正常;

    2. Mech-Vision 的接口服务是否开启;

    3. PLC 程序是否成功下载到 PLC 硬件。

视觉工程测试

本部分介绍如何使用例程功能块触发 Mech-Vision 工程并获取视觉点,以及触发 Mech-Viz 工程并获取规划路径。

准备工作

  1. 搭建 Mech-Vision 方案,并设置 自动加载当前方案 ,此时方案下的工程也会设置为自动加载,同时工程名称前会出现具体工程编号。

    ../../../../_images/preparation_11.png
  2. 搭建 Mech-Viz 工程,并设置 自动加载 。Mech-Viz 工程的搭建,请参考 Mech-Viz 相关教程

    ../../../../_images/preparation_31.png

    测试所使用的 Mech-Viz 工程中需使用一个步骤名称为 1 的“消息分支”步骤,如下图所示。

    ../../../../_images/preparation_41.png

从 Mech-Vision 获取视觉点

设置参数

  1. 返回 GX Works3 软件窗口,在 CameraTest 程序本体下,将使能开关 ToCamera.COMM_ENABLE 处于常开状态。

    ../../../../_images/test_vision_11.png
  2. 单击 MM_Start_Vis 功能块,设置如下端口值。

    1. 将 Vision_Proj_Num 的端口值设为 1 ,表示运行工程编号为 1 的 Mech-Vision 工程。

    2. 将 Req_Pose_Num 的端口值设为 0 ,表示 Mech-Vision 返回全部位姿结果。

    3. 将 Robot_Pose_Type 的端口值设为 0 ,表示工程是 Eye to Hand 模式,不需要发送拍照位姿。

      ../../../../_images/test_vision_21.png

触发 Mech-Vision 工程运行

  1. 在 GX Works3 窗口,右键单击“MM_Start_Vis”输入侧的“Camera_User.Start_Vis”标签,依次单击 调试 ‣ 当前值更改 ,将其修改为 1 以触发 Mech-Vision 工程运行,然后将此标签复位。

    ../../../../_images/test_vision_31.png
  2. 检查 STATUS_CODE 的返回值是否为 1102。

    1. 依次单击菜单栏中 在线 ‣ 监看 ‣ 登录至监看窗口 ‣ 监看窗口1

      ../../../../_images/test_vision_41.png
    2. 在监看窗口 1 内,在名称栏中找到 FromCamera 标签。

      ../../../../_images/test_vision_51.png
    3. 展开标签层级,查看 STATUS_CODE 的返回值。

      ../../../../_images/test_vision_61.png

      注意

      若返回值为 1102 ,则表示成功触发 Mech-Vision 工程。若返回值为 10XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。

获取 Mech-Vision 计算的位姿结果

  1. 在 GX Works3 窗口,右键单击“MM_Get_VisData”输入侧的“Camera_User.Get_VisData”标签,依次单击 调试 ‣ 当前值更改 ,将其修改为 1 以获取位姿结果,然后将此标签复位。

    ../../../../_images/test_vision_71.png
  2. 在监看窗口 1 内,查看 STATUS_CODE 的返回值。

    ../../../../_images/test_vision_8.png

    注意

    若返回值为 1100 ,则表示从 Mech-Vision 成功获取视觉点。若返回值为 10XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。

  3. 检查 Target_Pose 的返回值。

    1. 依次单击菜单栏中 在线 ‣ 监看 ‣ 登录至监看窗口 ‣ 监看窗口2

      ../../../../_images/test_vision_9.png
    2. 在监看窗口 2 内,在名称栏中找到 Camera_User 标签。

      ../../../../_images/test_vision_10.png
    3. 展开标签层级,查看 Target_Pose 的返回值,图中为本例收到视觉软件发送的 2 组位姿数据(数值为实际值乘以 10000)。

      ../../../../_images/test_vision_111.png

从 Mech-Viz 获取规划路径

设置参数

  1. 在 GX Works3 窗口,右键单击“MM_Get_VisData”输入侧的“Camera_User.Start_Empty”标签,依次单击 调试 ‣ 当前值更改 ,将其修改为 1,清除上一次获取的视觉结果,然后将此标签复位。

    ../../../../_images/test_viz_11.png

    在监看窗口 2 内,查看清除视觉结果后的 Target_Pose 值。

    ../../../../_images/test_viz_21.png
  2. 单击 MM_Set_Branch 功能块,设置如下端口值。

    1. 将 Branch_Name 的端口值设为 1 ,表示分支编号为 1。

    2. 将 Branch_Exit_Port 的端口值设为 1 ,表示 Mech-Viz 工程执行到分支 1 时沿出口 1 继续执行。

    ../../../../_images/test_viz_31.png
  3. 单击 MM_Get_VizData,将 Request_Pose_Type 的端口值设为 1 ,表示 Mech-Viz 返回的数据是关节角类型。

    ../../../../_images/test_viz_41.png

触发 Mech-Viz 工程运行

  1. 在 GX Works3 窗口,右键单击“MM_Start_Viz”输入侧的“Camera_User.Start_Viz”标签,依次单击 调试 ‣ 当前值更改 ,将其修改为 1 以触发 Mech-Viz 工程运行,然后将此标签复位。

    ../../../../_images/test_viz_51.png
  2. 在监看窗口 1 内,查看 STATUS_CODE 的返回值。

    ../../../../_images/test_viz_61.png

    注意

    若返回值为 2103 ,则表示成功触发 Mech-Viz 工程。若返回值为 20XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。

设置 Mech-Viz 的分支出口

  1. 在 GX Works3 窗口,右键单击“MM_Set_Branch”输入侧的“Camera_User.Set_Branch”标签,依次单击 调试 ‣ 当前值更改 ,将其修改为 1,以选择 Mech-Viz 分支出口,然后将此标签复位。

    ../../../../_images/test_viz_71.png
  2. 在监看窗口 1 内,查看 STATUS_CODE 的返回值。

    ../../../../_images/test_viz_81.png

    注意

    若返回值为 2105 ,则表示分支设置成功。若返回值为 20XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。

获取 Mech-Viz 规划路径

  1. 在 GX Works3 窗口,右键单击“MM_Get_VizData”输入侧的“Camera_User.Get_VizData”标签,依次单击 调试 ‣ 当前值更改 ,将其修改为 1,以获取 Mech-Viz 规划的路径,然后将此标签复位。

    ../../../../_images/test_viz_91.png
  2. 在监看窗口 1 内,查看 STATUS_CODE 的返回值。

    ../../../../_images/test_viz_10.png

    注意

    若返回值为 2100 ,则表示成功获取规划路径。若返回值为 20XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。

  3. 单击 MM_Get_VizData,观察到 Send_Pose_Num 值为 10,表示本例程获取到 10 组关节角数据。

    ../../../../_images/test_viz_111.png
  4. 在监看窗口 2 内,查看 Target_Pose 的返回值(数值为实际值乘以 10000)。

    ../../../../_images/test_viz_12.png