通信配置及示例程序使用
欧姆龙 PLC 与梅卡曼德软件系统系统进行 EtherNet/IP 通信包含以下流程:
所需软硬件
硬件
-
支持 EIP 通信功能的欧姆龙 PLC,包括以下:
-
集成 EIP 功能的 CPU 本体,如 CJ2H-CPU6□-EIP、CJ2M-CPU3□;
-
其他可安装 CJ1W-EIP21 或 CS1W-EIP21 通信模块(EtherNet/IP Unit)的 CPU。
-
-
USB Type-A 转 USB Type-B 数据线。
-
电源模块。
-
Mech-Mind 工控机或主机已安装标准 PCI-e 通信板卡:HMS Ixxat INpact EIP Slave PCIe(INpact EIP 从站 PCIe)。
-
交换机和网线。
本例程采用 CJ2H CPU65-EIP,UNIT NO. 设置为0, NODE NO. 设置为15(十六进制,十进制为21)。 |
硬件连接如下图所示。
软件
-
欧姆龙 PLC 编程软件 CX-Programmer 9.70。
-
梅卡曼德系统软件版本为 1.7.0 及以上。
-
HMS ipconfig 设定通信板卡的 IP 地址。
-
Mech-Mind EDS 文件:005A002B003A0100.EDS。 EDS 文件位于梅卡曼德系统软件安装路径下的
Mech-Center/Robot_Interface/EthernetIP
文件夹下。 -
PLC 例程文件:
-
AUTOEXEC.OBJ(程序);
-
PROGRAMS.IDX(程序索引);
-
SYMBOLS.SYM(符号);
-
COMMENTS.CMT(程序注释)。
例程文件位于梅卡曼德系统软件安装路径下的
Mech-Center/Robot_Interface/EthernetIP/Programming Samples/Omron CX-Programmer CJ2H PLC EthernetIP
文件夹下。请将该例程文件复制到已安装 CX-PROGRAMMER 的计算机中。 -
配置工控机及启动通信
检查工控机通信板卡及驱动
-
在工控机 PCI-e 插槽中,确认已安装 INpact EIP 从站 PCIe 板卡。
-
在工控机上,鼠标右键单击 Windows 图标,打开设备管理器,确认已安装板卡驱动软件 VCI4 INpact PCIe。
创建和配置 PLC 工程
创建 PLC 工程
-
打开 CX-Programmer 软件,单击工具栏中 新建 ,弹出 变更 PLC 窗口,根据实物选择 设备类型 ,单击 设定 ,弹出 设备类型设置 窗口,根据实物选择 CPU类型 ,单击 确定 进行保存。
-
单击工具栏中 保存 ,在弹出窗口中,选择 CX-Programmer 工程文件保存路径,并填写文件名称,单击 保存 。
-
单击工具栏中 在线 ,在弹出窗口中,单击 是 。
-
单击工具栏中 编程模式 ,弹窗提示是否可以停止 PLC ,在确认安全情况下,单击 是 。
-
在工程侧边栏,选择
,弹出 PLC IO 表 窗口。 -
在 PLC IO表 窗口内,展开 内置端口/插入板 (本例情况)。双击 CJ2B-EIP21 ,打开 CJ2B-EIP21编辑参数 窗口,单击 TCP/IP ,输入 IP 地址(确保 IP 地址最后一段的数值与硬件上的 NODE NO. 设置一致)和子网掩码,单击 传送[PC到单元] 。在弹出窗口中,单击 是 。
-
传送成功后,单击 关闭 。
-
弹窗提示是否重启单元,单击 是 ,重启后单击 确定 ,返回 CJ2B-EIP21[编辑参数] 窗口,单击 确定 。
安装及配置EDS 文件
-
在 PLC IO表 窗口内,右键选择
。 -
在弹出的 选择特殊程序[CJ2B-EIP21] 窗口中,选择 Network Configurator ,单击 确定 。
-
在弹出的 Untitled - Network Configurator 窗口中,单击工具栏中的 Install EDS ,弹出 Install EDS File 窗口。
-
查找并选择相应 EDS 文件,单击 打开 。
该 EDS 文件可以从 Mech-Mind 工控机中获得。EDS 文件位于梅卡曼德系统软件安装路径下的 Mech-Center/Robot_Interface/EthernetIP
文件夹下。将ETHERNETIP
文件夹复制到安装有 CX-PROGRAMMER 的计算机中,然后单击 打开 找到该文件夹。 -
在 Untitled - Network Configurator 窗口中,依次展开 EtherNet/IP HardWare/Vendor/HMS Industrial Networks AB/Generic Device ,右键单击 Ixxat INpact EtherNet/IP™ ,单击 Add to Network 。
-
使用相同方式依次展开 EtherNet/Vendor/OMRON Corporation/Communications Adapter/CJ2B-EIP21 ,右键单击 Rev 3 ,单击 Add to Network 。
-
在 EtherNet/IP_1 页面下,右键单击 Mech-Mind 设备图标,选择 Change Node Adress ,修改视觉设备 IP 为 192.168.1.10。右键单击 CJ2B-EIP21 设备图标,选择 Change Node Adress ,修改 PLC 主站 IP 为 192.168.1.21,此处 IP 需要与 IO 表中的设置相同,且两者 IP 地址处于同一网段。
-
在 EtherNet/IP_1 页面下,右键单击视觉设备图标,单击 Property 。
-
在属性窗口中,单击 I/O Information ,查看并记录输出/输入字节大小,单击 Close 。
-
在 EtherNet/IP_1 页面下,双击 CJ2B-EIP21 图标,弹出 Edit Device Parameters 窗口,选择 Tag Sets 选项,分别设定 IN、OUT 首软元件(图示首软元件地址分配与本例程匹配),注册结束后,返回 Edit Device Parameters 窗口。
-
在 Edit Device Parameters 窗口中,选择 INpact EtherNet/IP 设备,单击向下移动,双击注册窗口内的该设备,弹出 Ixxat INpact EtherNet/IP™ Edit Connection 窗口。
-
在 Ixxat INpact EtherNet/IP™ Edit Connection 窗口中,主从站 IO 信号交互设置如下图所示。设置完成后,单击 Regist ,之后单击 Close 关闭窗口。
-
返回 Edit Device Parameters 窗口,出现如下图所示的列表信息后,单击 确定 。
-
视觉从站被关联后,出现如下图所示的标识:
下载 PLC 硬件配置至 PLC
-
在 Network Configurator 窗口中,单击 Connect ,出现 Setup Interface 弹窗,单击 OK ,弹出 Select Connect Network Port 窗口。
-
在 Select Connect Network Port 窗口中,依次展开 BackPlane/#0 CJ2B-EIP21/TCP:2 ,单击 OK ,出现 Select Connected Network 窗口,选择 Using the existing network/EtherN IP_1 ,单击 OK 。
-
在 Network Configurator 窗口中,单击 Download to Network ,在弹出窗口中,单击 是 。
-
下载成功后,单击 确定 。
检查通信是否成功
-
在 Untitled-Network Configurator 窗口中,单击菜单栏
。 -
弹出 Monitor Device 窗口,单击 Connection 。若连接成功,连接状态指示显示为蓝色。
-
在 Mech-Vision 主窗口中,若连接成功,则在日志窗口的 Console 标签页下会显示 连接ETHERNET IP控制器成功 。 若无该日志,请检查以下是否正常:
-
硬件网络连接是否正常;
-
Mech-Vision 的接口服务是否开启;
-
PLC 是否下载配置到 PLC 硬件。
-
导入例程文件并下载 PLC 程序至 PLC
Mech-Mind 例程文件的导入和测试,请使用新建 PLC 工程;如需添加到已存在的 PLC 工程中,建议先创建新工程进行导入和测试,然后复制到已存在的工程中。 |
视觉工程测试
本部分介绍如何使用例程功能块触发 Mech-Vision 工程并获取视觉点,以及触发 Mech-Viz 工程并获取规划路径。IO 模块的具体功能和介绍,参见 欧姆龙 PLC 与 Mech-Mind 系统进行 EtherNet/IP 通信的指令说明 。
准备工作
-
搭建 Mech-Vision 方案。在窗口列表中,右键单击方案名称并勾选 自动加载当前方案,此时方案下的工程也会设置为自动加载,同时工程名称前会出现具体工程编号。
-
搭建 Mech-Viz 工程。在Mech-Viz工程资源面板中,右键单击工程名称,勾选 设为自动加载。
测试所使用的 Mech-Viz 工程中需使用一个步骤名称为 1 的“消息分支”步骤,如下图所示。
从 Mech-Vision 获取视觉点
设置参数
-
返回 CX-Programmer 窗口,在项目树中展开程序,双击打开 CameraTest 程序段,使能开关 ToCamera.COM_ENABLE 处于常开状态。
-
设置 Mech-Vision 工程编号,即 Mech-Vision 工程列表中工程名称前的数字编号。将 VISION_PROJ_NUM 的值设为 1,则运行工程编号为 1 的 Mech-Vision 工程。
-
设置要求 Mech-Vision 工程返回的位姿数量。将 REQ_POSE_NUM 的值设为 0,表示要求 Mech-Vision 返回全部位姿结果。
触发 Mech-Vision 工程运行
-
双击功能块 MM_Start_Vis 的输入变量 Start_Vis,弹出 设置新值 窗口,将变量值设为 1,单击 设置 ,启动 Mech-Vision 工程,触发相机拍照;随后使用相同方式操作,将该变量值重新置为 0 。
-
单击 切换查看窗口 ,在 名称 一列中,查找 FromCamera.STATUS_CODE,检查其返回值,若为 1102,则表示工程启动正常。若返回值为 10XX,请参考 标准接口状态码及错误排查 进行错误排查。
获取 Mech-Vision 计算的位姿结果
-
待 FromCamera.STATUS_CODE 反馈 1102 后,双击功能块 MM_Get_VisData 的输入变量 Get_VisData。弹出 设置新值 窗口,将变量值设为 1 ,单击 设置 ,触发获取位姿;随后使用相同方式操作,将该变量值重新置为 0。结果如下图所示,SendPoseNum 值为 3,表示获取到 3 个位姿。
-
在项目树中,双击 内存 ,出现 PLC内存 窗口,双击 D 内存表,设定首地址为 10000 ,选择数据显示格式为 有符号十进制数 、 双字 ,最后单击 监视 ,本例接收到视觉软件发送的3组位姿数据(传送值已放大10000倍)。
从 Mech-Viz 获取规划路径
设置参数
-
返回 CX-Programmer 窗口,双击功能块 MM_Get_VisData 中的输入变量 Start_Empty 。弹出 设置新值 窗口,将变量值设为 1 ,单击 设置 ,触发清除上一次获取的视觉结果;随后使用相同方式操作,将该变量值重新置为 0 。
-
设置 Branch_Name 的值为 1 ,设置 Branch_Exit_Port 的值为 1 ,控制 Mech-Viz 工程执行到分支 1 时沿出口 1 继续执行。
-
设置 Request_Pose_Type 的值为 1 ,设置 Mech-Viz 返回的是关节角数据。
触发 Mech-Viz 工程运行
-
在功能块 MM_Start_Viz 中,触发一次变量 Start_Viz,启动 Mech-Viz 工程。
-
检查 FromCamera.STATUS_CODE 变量的返回值变为 2103,则表示工程启动正常。若返回值为 20XX,请参考 标准接口状态码及错误排查 进行错误排查。
设置 Mech-Viz 的分支出口
-
在功能块 MM_Set_Branch 中,双击输入变量 Set_Branch ,选择 Mech-Viz 分支出口。
-
检查 FromCamera.STATUS_CODE 变量的返回值变为 2105,则表示分支设置成功。若返回值为 20XX,请参考 标准接口状态码及错误排查 进行错误排查。
获取 Mech-Viz 规划路径
-
在功能块 MM_Get_VizData 中,双击输入变量 Get_VizData ,获取 Mech-Viz 的规划路径。
-
检查 FromCamera.STATUS_CODE 变量的返回值变为 2100,则表示获取 Mech-Viz 的规划路径成功。若返回值为20XX,请参考 标准接口状态码及错误排查 进行错误排查。结果如下图所示,SendPoseNum 值为 10,表示获取到 10 组关节角数据。关节角数据保存在 TargetPose 中。
-
返回 PLC内存 窗口,10组位置数据如下图所示(数值为实际值乘10000)。