通信配置及示例程序使用¶
本节介绍三菱 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 程序下载。
交换机和网线。
硬件连接如下图所示。
软件¶
软件 |
说明 |
安装位置 |
GX Works3 1.081K |
三菱 PLC 编程软件 |
用于三菱 PLC 编程的计算机 |
EtherNet/IP 配置软件 |
用于三菱 PLC 编程的计算机 |
|
梅卡曼德系统软件版本为 1.7.0 及以上 |
Mech-Mind 软件系统 |
工控机 |
设定通讯板卡的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
文件夹下。
配置工控机及启动通信¶
检查工控机通信板卡及驱动¶
在工控机 PCI-e 插槽中,确认已安装 INpact EIP 从站 PCIe 板卡。
在工控机上,鼠标右键单击 Windows 图标,打开设备管理器,确认已安装板卡驱动软件 VCI4 INpact PCIe。
设置 Mech-Vision 中“机器人与通信配置”¶
单击 Mech-Vision 工具栏中 机器人与接口配置 。
单击 选择机器人 下拉框,选择 品牌机器人 ,然后单击 选择机器人型号 ,选择具体机器人型号,单击 下一步 。
在 通信方式 下,进行如下操作:
“接口类型”选择 标准接口 ;
“协议” 选择 ETHERNET IP ;
单击 应用 。
在 Mech-Vision 主界面,确认工具栏中的接口服务已开启。
设定工控机通信板卡 IP 地址¶
使用一根网线将工控机的一个网口和 IXXAT INpact 通信板卡网口连接。
注意
在设定通信板卡并成功通信后,临时网线便可取消。
打开 HMS IPconfig 软件,单击扫描,取消勾选 “Retrieve IP Settings Dynamically from a DHCP server” ,并设定板卡 IP 地址和子网掩码,然后单击 Apply 确认并退出软件。
创建和配置 PLC 工程¶
创建 PLC 工程¶
打开 GX Works3 软件,单击工具栏中的 新建项目 。在新建窗口中,将系列设为 RCPU ,将机型设为 R00 ,将程序语言设为 梯形图 ,然后单击 确定 。
在 添加模块 窗口,单击 设置更改 。
在 选项 窗口,在“使用模块标签”后的下拉框中,选择 是 ,单击 确定 。返回 添加模块 窗口,再次单击 确定 。
在左侧 连接目标 窗口的 当前连接目标 下,双击 Connection 。
弹出 连接目标指定 Connection 窗口。
计算机侧选择 串行 USB ;可编程控制器侧选择 CPU模块 ,工程 CPU 类型将自动填充为 RCPU 。
单击 CPU 模块直接连接设置 。在弹出窗口中,选择 USB ,单击 是 。
返回 连接目标设定 Connection 窗口,单击 通信测试 。若弹窗提示 已成功与 R00CPU 连接 ,则表示计算机中 GX Works3 软件与硬件 PLC 通信成功。
单击连接目标指定 Connection 窗口的 确定 ,返回 GX Works3 软件窗口。
在左侧导航窗口,展开 参数 ,双击 系统参数 ,弹出 系统参数 窗口。
在 系统参数 窗口的 I/O 分配设置选项卡下,选中 基板/电源/扩展电缆设置 ,单击“基板号/基本”后的选择按钮,弹出 型号选择 窗口。
在 型号选择 窗口,按照实际情况选择主基板模块和电源模块型号,单击 确定 。
弹出如下提示窗口,单击 确定 。
在 系统参数 窗口的 I/O 分配设置选项下,选中 I/O分配设置 ,单击“插槽0”后的选择按钮,弹出 添加新模块 窗口。
在 添加新模块 窗口,模块类型选择 网络模块 ,模块型号选择 RJ71EIP91 ,单击 确定 。
弹出如下窗口,单击 确定 。
在左侧导航窗口,展开 参数 ,双击新添加的 0000:RJ71EIP91 ,弹出 模块参数 窗口。
在 模块参数 窗口,选中 基本设置 ,展开 自节点设置 ,双击 IP 地址空白处。
在 IP地址设置 窗口,设定 IP 地址和子网掩码后,单击 确定 。
下载 PLC 硬件配置至 PLC¶
在左侧导航窗口,选中 程序,单击菜单栏
。在 全部转换 窗口,单击 选项设置 ,弹出 选项 窗口。
在 选项 窗口,单击左侧 基本设置 ,“执行全部转换时,重新分配标签”选择“ 是 ”,单击 确定 。
返回 全部转换 窗口,单击 确定 。
程序转换成功后,单击菜单栏
。在 在线数据操作 窗口,选择 写入 选项卡,单击 参数+程序 ,然后单击 执行 。
弹出如下提示窗口,单击 是 。
确保安全的前提下,单击 是 。
在 是否覆盖 窗口,单击 全部是 。
下载成功后,弹出如下提示窗口,确保安全的前提下,单击 是 。
在 已完成 窗口,单击 确定 。返回 在线数据操作 窗口,单击 关闭 。
重新上电 PLC 设备使配置生效。
安装及配置 EDS 文件¶
返回 0000:RJ71EIP91 模块参数 窗口,双击 EtherNet/IP Configuration Tool 图标,启动 EIP Configuration Tool for RJ71EIP91 配置软件。
弹出 Add New Element 窗口,填写 RJ71EIP91 模块的 IP 地址,需与 GX Works3 内“0000:RJ71EIP91模块参数”设定的 IP 地址保持一致,单击 确定 。
在 EIP Configuration Tool for RJ71EIP91 窗口,展开 Device Library ,右键单击 EtherNet/IP Devices ,左键单击 Add ,弹出 EDS Management 窗口。
在 EDS Management 窗口,单击 下一页 。
单击 Browse ,弹出打开窗口,选择相应 EDS 文件后(需要提前从工控机复制该文件),单击 下一页 。
单击 下一页 。
单击 完成 。
EDS 文件添加成功后,展开 EtherNet/IP Device ,右键单击 Ixxat INpact EtherNet/IP(TM) 设备,左键单击 Insert in Configuration 以加入 EtherNet IP 网络。 Ixxat INpact EtherNet/IP(TM) 配置窗口将弹出。
在 General 选项卡下,设定视觉系统从站 IP 地址(该地址与 HMS IPConfig 中的 IP 地址相同,本例中设定为 192.168.1.10)。
在 Connection 选项卡下,单击 General ,将 Input Mode 的值修改为 “Point to Point” ,并记录 Input Size 和 Output Size 通讯数据长度,最后单击 OK 。
下载 PLC EtherNet/IP 网络配置至 PLC¶
确认添加“Ixxat INpact EtherNet/IP(TM)”设备成功,如下图中所示出现设备选项。单击工具栏中 Online command 图标。
弹窗提示“在线前是否保存配置”,单击 是 ,进入在线模式。
在 在线模式 下,单击工具栏中 Download the current configuration in the module 图标,将当前设置的参数写入 EtherNet/IP 通讯模块 RJ71EIP91。
在弹窗中,勾选 configuration.apa,表示配置文件(*.apa)可下载,方便后续上传并重新编辑配置文件(*.apa)。单击 Download 。
弹出如下提示窗口,单击 确定 。
重新上电 PLC 单元使配置生效。
导入例程文件并下载 PLC 程序至 PLC¶
导入 Mech-Mind 例程文件¶
注意
导入和测试 Mech-Mind 例程文件,请使用新建的 PLC 工程;如需添加到已存在的 PLC 工程中,建议先创建新工程,再进行导入和测试,最后复制到已存在的工程中。
返回 GX Works3 软件窗口,在菜单栏中,依次单击
。弹出如下窗口,单击 确定 。
在 将用户库登录至一览 窗口,选择视觉通讯例程库文件“iQ-R_RJ71EIP91.usl”(需提前从工控机复制该文件),单击 打开 。
返回 GX Works3 软件窗口,在右侧 部件选择 中,选中两个例程文件“CameraSignalsMove”和“CameraTest”,右键依次选择
。弹出如下提示窗口,单击 是 。
返回 GX Works3 软件窗口,在左侧工程树下,确认例程程序、功能块、标签均已导入,然后依次单击菜单栏中
。弹出如下提示窗口,单击 确定 。
下载 PLC 程序至 PLC¶
程序转换成功后,单击菜单栏
。在 在线数据操作 窗口,选择 写入 选项卡,单击 参数+程序 ,然后单击 执行 。
弹出如下提示窗口,单击 是 。
确保安全的前提下,在如下弹出的提示窗口中单击 是 。
在 是否覆盖 窗口,单击 全部是 。
下载成功后,弹出如下提示窗口,确保安全的前提下,单击 是 。
在 已完成 窗口,单击 确定 。返回 在线数据操作 窗口,单击 关闭 。
检查通信是否成功¶
返回 GX Works3 软件窗口,在导航窗口,双击 程序本体 。
依次单击菜单栏中
。若连接成功,FromCamera.HEARTBEAT 心跳信号监视值会在不断改变。
在 Mech-Vision 主窗口中,若连接成功,则在日志窗口的 Console 标签页下会显示 连接ETHERNET IP控制器成功 。
若无该日志,请检查以下是否正常:
硬件网络连接是否正常;
Mech-Vision 的接口服务是否开启;
PLC 程序是否成功下载到 PLC 硬件。
视觉工程测试¶
本部分介绍如何使用例程功能块触发 Mech-Vision 工程并获取视觉点,以及触发 Mech-Viz 工程并获取规划路径。
准备工作¶
搭建 Mech-Vision 方案,并设置 自动加载当前方案 ,此时方案下的工程也会设置为自动加载,同时工程名称前会出现具体工程编号。
搭建 Mech-Viz 工程,并设置 自动加载 。Mech-Viz 工程的搭建,请参考 Mech-Viz 相关教程。
测试所使用的 Mech-Viz 工程中需使用一个步骤名称为 1 的“消息分支”步骤,如下图所示。
从 Mech-Vision 获取视觉点¶
设置参数¶
返回 GX Works3 软件窗口,在 CameraTest 程序本体下,将使能开关 ToCamera.COMM_ENABLE 处于常开状态。
单击 MM_Start_Vis 功能块,设置如下端口值。
将 Vision_Proj_Num 的端口值设为 1 ,表示运行工程编号为 1 的 Mech-Vision 工程。
将 Req_Pose_Num 的端口值设为 0 ,表示 Mech-Vision 返回全部位姿结果。
将 Robot_Pose_Type 的端口值设为 0 ,表示工程是 Eye to Hand 模式,不需要发送拍照位姿。
触发 Mech-Vision 工程运行¶
在 GX Works3 窗口,右键单击“MM_Start_Vis”输入侧的“Camera_User.Start_Vis”标签,依次单击
,将其修改为 1 以触发 Mech-Vision 工程运行,然后将此标签复位。检查 STATUS_CODE 的返回值是否为 1102。
依次单击菜单栏中
。在监看窗口 1 内,在名称栏中找到 FromCamera 标签。
展开标签层级,查看 STATUS_CODE 的返回值。
注意
若返回值为 1102 ,则表示成功触发 Mech-Vision 工程。若返回值为 10XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。
获取 Mech-Vision 计算的位姿结果¶
在 GX Works3 窗口,右键单击“MM_Get_VisData”输入侧的“Camera_User.Get_VisData”标签,依次单击
,将其修改为 1 以获取位姿结果,然后将此标签复位。在监看窗口 1 内,查看 STATUS_CODE 的返回值。
注意
若返回值为 1100 ,则表示从 Mech-Vision 成功获取视觉点。若返回值为 10XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。
检查 Target_Pose 的返回值。
依次单击菜单栏中
。在监看窗口 2 内,在名称栏中找到 Camera_User 标签。
展开标签层级,查看 Target_Pose 的返回值,图中为本例收到视觉软件发送的 2 组位姿数据(数值为实际值乘以 10000)。
从 Mech-Viz 获取规划路径¶
设置参数¶
在 GX Works3 窗口,右键单击“MM_Get_VisData”输入侧的“Camera_User.Start_Empty”标签,依次单击
,将其修改为 1,清除上一次获取的视觉结果,然后将此标签复位。在监看窗口 2 内,查看清除视觉结果后的 Target_Pose 值。
单击 MM_Set_Branch 功能块,设置如下端口值。
将 Branch_Name 的端口值设为 1 ,表示分支编号为 1。
将 Branch_Exit_Port 的端口值设为 1 ,表示 Mech-Viz 工程执行到分支 1 时沿出口 1 继续执行。
单击 MM_Get_VizData,将 Request_Pose_Type 的端口值设为 1 ,表示 Mech-Viz 返回的数据是关节角类型。
触发 Mech-Viz 工程运行¶
在 GX Works3 窗口,右键单击“MM_Start_Viz”输入侧的“Camera_User.Start_Viz”标签,依次单击
,将其修改为 1 以触发 Mech-Viz 工程运行,然后将此标签复位。在监看窗口 1 内,查看 STATUS_CODE 的返回值。
注意
若返回值为 2103 ,则表示成功触发 Mech-Viz 工程。若返回值为 20XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。
设置 Mech-Viz 的分支出口¶
在 GX Works3 窗口,右键单击“MM_Set_Branch”输入侧的“Camera_User.Set_Branch”标签,依次单击
,将其修改为 1,以选择 Mech-Viz 分支出口,然后将此标签复位。在监看窗口 1 内,查看 STATUS_CODE 的返回值。
注意
若返回值为 2105 ,则表示分支设置成功。若返回值为 20XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。
获取 Mech-Viz 规划路径¶
在 GX Works3 窗口,右键单击“MM_Get_VizData”输入侧的“Camera_User.Get_VizData”标签,依次单击
,将其修改为 1,以获取 Mech-Viz 规划的路径,然后将此标签复位。在监看窗口 1 内,查看 STATUS_CODE 的返回值。
注意
若返回值为 2100 ,则表示成功获取规划路径。若返回值为 20XX,请参考 《Mech-Mind-标准接口错误码及故障排查手册》 进行错误排查。
单击 MM_Get_VizData,观察到 Send_Pose_Num 值为 10,表示本例程获取到 10 组关节角数据。
在监看窗口 2 内,查看 Target_Pose 的返回值(数值为实际值乘以 10000)。