软 EIP 的配置安装流程
一、软 EIP 在汇川 PLC 中的应用
1 软 EIP 的配置环境准备
1.1 环境准备
点击下载资料包
安装汇川PLC调试软件AutoShop
AutoShop 软件
版本:V4.10.0.0
EDS 文件
compatible_eip_slave_v0.0.1.eds硬件
汇川Easy 521
机械臂本体,笔记本电脑,网线,HUB或交换机软件版本
0.29.3-rc.9
及以上版本;0.31.0-beta.1
及以上版本0.32.0-alpha.9
及以上版本修改配置文件
aubo_control.conf
,增加如下代码:eip_enable = true eip_ifname = "enp1s0" #网卡名根据实际情况更改
1.2 硬件接线
将PLC、控制柜、本机电脑通过交换机连在同一个网络;
1.3 PLC设置静态IP
双击打开
AutoShoop
软件,进入主页面,选择【文件】>【新建工程】,如下图所示,并按照步骤标注操作,填写工程名称,并选择汇川 PLC 的型号 Easy521;点击菜单栏
工具
,选择通讯设置
,通讯类型
下拉框选择对应的网口,点击搜索PLC,正常连接后可以搜索到已通讯的PLC ;点击
修改IP/设备名
,设置新IP地址,该地址需要和机械臂,笔记本在同一网段;
备注 :若在线搜索不到PLC,可使用
type-C
转USB线连接PLC与笔记本,通讯类型选择USB
,即可修改PLC设备的IP;
1.4 机械臂设置静态IP
打开arcs软件,设置静态IP,静态IP地址需要和PLC,笔记本在同一网段;
1.5 通讯测试
点击
测试
,连接状态为已连通,此时PLC与笔记本已建立了正常通讯;测试连接状态为未联通,需要排查下网线连接,PLC的IP设置在否和笔记本在同一网段;
1.6 PLC 导入 EDS 文件
点击软件左侧【工程管理】> 【配置】> 【Ethernet/IP】
点击软件右侧菜单栏【工具箱】> 【Ethernet/IP Device】,鼠标右键单击【Ethernet/IP Device】,会出现【导入EDS】,点击【导入EDS】导入事前准备好的 EDS 文件;如下图所示:
备注:EDS文件由 AUBO 开发人员提供,可以找相关工程师获取最新版本;
1.7 设备站 IP 设置
双击【Aubo_Robot】,
IP地址
设置为机械臂的真实IP;电子匹配
中选择精确匹配
,其它使用默认值即可,如下图所示:点击【连接】>【添加连接】
1.8 保存项目 > 下载 > 运行 > 监控
所有配置完成后,保存项目,然后点击【下载】>【运行】 > 【监控】,如下图所示步骤:
将 PLC 切换至运行模式,点击【运行】 > 【监控】后,左侧【配置】>【Ethernet/IP】,【Ethernet/IP】 和 【Aubo_Robot】都变为绿色,表示PLC 与机械臂连接成功,并且能够正常通信;
添加监控的地址变量,在左侧点击【变量监控表】> 【Main】,在 Main 表中点击【...】会弹出选择变量对话框【变量输入助手】,然后点击【UserVar】>【SYS_EIP】选择分配地址;
SYS_EIP
里面的地址是根据 EDS 文件导入的,里面的地址是开发人员事先根据 EIP 地址表分配好的地址,这里的地址表跟开发人员提供的 EIP 的通信地址表对应;可以根据 EIP的地址表来选择相应的地址字段;以下是根据EIP的地址表添加的一些监控地址,包括IO信号、位置坐标、关节角、电压、电流、温度、机器人状态、通用线圈(Robot => PLC)、通用寄存器(Robot => PLC)、通用线圈(PLC => Robot)、通用寄存器(PLC => Robot)、控制工程等等;
1.9 PLC与控制器通信示例
1.9.1 卡槽1数字输出监控
通过EIP地址表查询,DO00-DO07的EIP地址是_IP1_5.0
至_IP1_5.7
,变量监控表
中添加监控地址,打开【arcs软件】>【IO】> 【机器人】> 【数字输出】,通过操作DO01-DO07信号高亮,观察变量监控表的值是否同步变化;
1.9.2 卡槽2 机器人状态监控
通过EIP地址表查询,工程速度限制、末端速度、机器人状态、安全状态的EIP地址是_IP1_99
_IP1_101
_IP1_103
_IP1_105
,监控变量表中输入该地址,可以观察获取的值,来判定机器人的状态。
2 常见问题
2.1 修改PLC地址失败
1.1 检查硬件接线是否正确,网线是否有松动,交换机和 PLC 的电源线是否松动;
1.2 通过Type-C
转USB连接笔记本和PLC,修改PLC的IP地址;
2.2 目标设备离线
- 排查下网线连接,PLC的IP设置在否和笔记本在同一网段;
- 使用PING工具,测试PLC和笔记本网络是否可以正常
ping
通; - 重启
AutoShop
,重新连接测试;
2.3 搜索不到SYS_EIP地址
SYS_EIP
里面的地址是根据 EDS 文件导入的,里面的地址是开发人员事先根据 EIP 地址表分配好的地址;- 【EtherNet/IP】下删除【Auto_Robot】,删除EDS文件后,重新导入;
- 双击添加【Auto_Robot】,删除原来的连接,重新添加连接;
- 下载PLC,点击【运行】【监控】,检查是否可以搜索到
SYS_EIP
地址; - 若流程2-4未解决,重启控制柜和
AutoShop
软件,重复步骤2-4;
2.4 通讯成功,读取数据错误
- 数据不变化,但是结果不正确,需要检查变量监控监控表的地址是否和EIP地址表一致;
- 数据变化,但是结果不正确,若地址是两个字节,必须把两个字节组成的数据都下发(例如末端速度,机器人状态的地址是两个字节),若获取地址是四个字节,必须把四个字节组成的数据都读取(例如位置坐标,关节角是四个字节);
二、软 EIP 在欧姆龙 PLC 中的应用
1 软 EIP 的配置环境准备
1.1 环境准备
Sysmac Studio 软件
版本:V1.52.0.64010
EDS 文件
compatible_eip_slave_v0.0.1.eds硬件
欧姆龙NXP1P2-9024DT
机械臂本体,笔记本电脑,网线,HUB或交换机软件版本
0.29.3-rc.9
及以上版本;0.31.0-beta.1
及以上版本0.32.0-alpha.9
及以上版本修改配置文件
aubo_control.conf
,增加如下代码:eip_enable = true eip_ifname = "enp1s0" #网卡名根据实际情况更改
1.2 硬件接线
将PLC、控制柜、本机电脑通过交换机连在同一个网络,接线完毕后,需要使用 ping
命令测试 PLC IP、控制柜 IP、本机 IP 相互之间能否连通,网络通信没有问题后才能进行下面的后续操作;
1.3 PLC设置静态IP
- 双击打开 Sysmac Studio 软件,进入首界面,如果之前配置过 PLC,并新建保存上次的工程,则可直接点击【在线】-> 【链接到设备】选项,在对话框中选择连接类型为
Ethernet-Hub连接
,连接设置中 IP 地址配置为192.168.250.1
, 然后点击【连接】;若还没有配置过 PLC 和新建过工程,则跳过该步骤;
- 直接点击【新建工程】选项弹出对话框,如下图所示,并按照步骤标注操作,填写工程名称,并选择欧姆龙 PLC 的型号
NX1P2-9024DT
;然后点击【创建】来新建一个工程;
- 进入到 Sysmac Studio 软件的主界面后,点击【控制器】-> 【通信设置】;弹出通信设置对话框,在对话框中按照下图步骤依次选择连接类型为
Ethernet-Hub连接
,连接设置中 IP 地址配置为192.168.250.1
, 然后点击【Ethernet 通信测试】,如果显示通信成功,则点击确定,继续后面的操作,如果显示通信失败,则按步骤 4 操作,重新设置下 PLC 的地址;
- 如果步骤 3 测试与 PLC 通信时发现通信失败,则需要重新设置 PLC 的IP地址;点击左侧目录树【配置和设置】-> 【控制器设置】-> 【内置 EtherNet/IP 端口设置】进入端口设置页面,在 IP 地址的选项中选择固定 IP 地址,填写 IP 和子网掩码;一般欧姆龙 PLC 的 IP 默认地址为
192.168.250.1
, 子网掩码为255.255.255.0
, 可以直接使用,无需更改;
- 设置完后,点击【工具】-> 【更新额配置和设置传送数据】,将配置更新到 PLC 中;
1.4 机械臂设置静态IP
打开arcs软件,设置静态IP,静态IP地址需要和PLC,笔记本在同一网段;
1.5 PLC 导入 EDS 文件
- 点击【工具】-> 【EtherNet/IP 连接设置】,会显示 EtherNet/IP 设备列表,双击设备列表中的目标 PLC 设备;会打开【内置etherNet/IP 端口设置 连接设置】,进行连接的相关配置;
- 在右侧【工具箱】-> 【目标设备】中,如果没有加载过eds文件,不会显示目标设备,在空白处鼠标右键,弹出菜单,选择【显示 eds 库】;
- 点击【显示 eds 库】后,会弹出导入 eds 文件的对话框;点击【安装】,选择事先准备好的 eds 文件;之后【Vendor】列表中会显示加载后的
Aubo Robot
; 点击【关闭】;
1.8 设备站 IP 设置
- 如下图,点击这个添加按钮,添加目标设备;
- 在右侧显示的工具箱中,分别输入节点地址(EIP 服务的IP地址,即机器人的IP地址),型号名称输入
Aubo Robot
, 修订版输入 2;之后点击【添加】按钮添加该目标设备;
- 添加成功后,目标设备列表会显示设备名称,如下图;
1.9 PLC 和设备栈的连接设置
- 添加全局变量,在左侧目录树中点击【编程】-> 【数据】-> 【全局变量】,进入全局变量设置页面,添加以下两个输入、输出变量,变量的相关设置如下图;
- 点击选项卡将页面切换至【内置etherNet/IP 端口设置 连接设置】,首先检查设备信息是否正确,主要看型号名称和节点地址;然后开始添加标签组,点击【全部注册】按钮,会弹出【标签组注册设置对话框】;
- 在【标签组注册设置对话框】中选中输入标签和输出标签,然后点击【注册】按钮;
- 标签组添加成功后,标签组的显示如下图;
- 切换到连接选项卡页面,点击添加按钮,添加连接,然后按照下图的连接参数来设置,注意这里的参数不是随便设置的,必须按照下图显示的参数来设置;
1.10 保存项目 > 传送到控制器 > 运行 > 监控
- 所有配置完成后,保存项目,点击【在线】按钮,然后点击【传送到控制器】,弹出传送到控制器对话框,选择“是”后,连接配置将会下载到 PLC 中,步骤如下图;
- 点击【运行】-> 【监控】后,就可以开始监控相关地址的信号值变化,点击【监视(工程)】开始添加信号,步骤如下图;
- 添加一些示例信号如下图,如果能读到机器人的状态,并且可以设置机器人速度,表明 PLC ==> Robot、Robot ==> PLC 通信没有问题:
2. PLC 与 控制器通信示例
使用 EIP 协议,从地址表中可以看到,PLC 与机械臂进行通信包括的内容有
•机械臂 IO 状态(slot_1)
•机械臂位姿(slot_2)
•机械臂关节电流电压温度(slot_3)
•通用线圈和通用保持寄存器(slot_4、slot_5)
其中 slot_1、slot_2、slot_3 可通过 PLC 直接进行读取,slot_4、slot_5 包含了线圈和保持寄存器的内容, 通过 ARCS 系统脚本调用的方式实现PLC跟机器臂通信。
本次通信示例只演示通用保持寄存器和通用线圈的使用;
2.1 通用线圈(Robot ==> PLC)
setBoolOutput(0,true)
,将 PLC slot_4 起始地址第一个 bool 量置为 true。
根据地址表中的第一个通用线圈(Robot => PLC)的地址,在 Sysmac Studio 软件中的监控(工程)表中添加监控地址 NX1P_IN[110]
;
在 Sysmac Studio 软件中的监控(工程)表中添加监控地址 NX1P_IN[110]
; 此时监控的数据从右到左来看,第0位 false, 第1位 true, 第2位 true, 第3位 false,如下图;
2.2 通用保持寄存器(Robot ==> PLC)
setInt16Register(32,183)
,将 PLC slot_4 保持寄存器 ( slot_4 第9个字节作为保持寄存器起始地址) 第一个数据写入值183,其中 setInt16Register 的起始地址为 32, 过1s后,再将数据改为99。
根据地址表中的第一个通用寄存器(Robot => PLC)的地址,在 Sysmac Studio 软件中的监控(工程)表中添加监控地址 NX1P_IN[118]
和NX1P_IN[119]
;
在 Sysmac Studio 软件中的监控(工程)表中可以看到,此时监控的数据为183,过1s后,监控的数据变为99;可以看到监控的数据在183和99变换;
2.3 通用线圈(PLC ==> Robot)
根据地址表中的第一个通用线圈(PLC => Robot)的地址,在 Sysmac Studio 软件中的监控(工程)表中添加监控地址 NX1P_OUT[3]
;
在 Sysmac Studio 软件中的监控(工程)表中对地址 NX1P_OUT[3]
写入0000 0001
;
bool0 = getBoolInput(0)
,读取 PLC slot_5 起始地址第一个 bool 量,并保存在变量 bool0 中,此时读到PLC的对应地址的值为 true;
2.4 通用保持寄存器(PLC ==> Robot)
根据地址表中的第一个通用寄存器(PLC => Robot)的地址,在 Sysmac Studio 软件中的监控(工程)表中添加监控地址 NX1P_OUT[8]
和 NX1P_OUT[9]
;
在 Sysmac Studio 软件中的监控(工程)表中对地址 NX1P_OUT[8]
和 NX1P_OUT[9]
写入100;
tmp0 = getInt16Register(0)
,机器人读取 PLC slot_5 的第9个字节开始的第一个 寄存器(16Bit) ,并保存在变量tmp0 中, 此时读到PLC的对应地址的值为 100;
3 常见问题
3.1 修改PLC地址失败
检查通信是否正常,如果通信不正常,则检查硬件接线是否正确,网线是否有松动,交换机和 PLC 的电源线是否松动等;
3.2 通讯成功,读取数据错误
- 数据不变化,结果也不正确,需要检查变量监控表的地址是否和EIP地址表一致,有可能是地址用错;
- 数据变化,但是结果不正确,若地址是两个字节,必须把两个字节组成的数据都下发(例如末端速度,机器人状态的地址是两个字节),若获取地址是四个字节,必须把四个字节组成的数据都读取(例如位置坐标,关节角是四个字节);