前言:EtherNet/IP是由罗克韦尔自动化公司开发的工业以太网通讯协定,由ODVA(ODVA)管理,可应用在程序控制及其他自动化的应用中,是通用工业协定(CIP)中的一部分。
一. 准备工作
1.1 在对接前我们需准备如下物品(本文以罗克韦尔PLC为例)
1) 罗克韦尔AB CompactLogix系列PLC一台,和一根网线。
2) 河北蓝蜂科技的EG20网关一台,天线和电源适配器(以下用EG20作为实例)。
3) SIM卡一张,有流量,大卡(移动,联通或者电信卡)。
4) 联网电脑一台(WinXP/Win7/Win8/Win10操作系统)。
5) 电工工具、导线若干。
1.2 EG20网关准备工作
网关相关技术参数与使用说明,可参考《EG20用户使用手册》。
1、 保证网关可以正常联网,可通过4G卡(移动/联通/电信流量卡,大卡)联网(需接上随网关附带的天线)或通过网线联网(需将路由器出来的网线接到网关的WAN口);
2、 网关接12V或24V直流电源,上电。(注意,电源正负极不要接反)。
1.3 PLC准备工作
PLC连接电源(注意电源是24VDC还是220VAC),将PLC的网口和EG20网口连接到一起。
二. EMCP平台设置
用管理员账号登录EMCP平台www.lfemcp.com (建议使用360浏览器极速模式、谷歌浏览器(Google Chrome)或者支持Chromium内核的浏览器),对EMCP云平台进行设置。具体操作参照《EMCP物联网云平台用户手册》。登录EMCP后首先进入设备列表显示页面,因为我们未创建任何设备,所以是一个空页面,我们需要按照以下步骤进行操作。
2.1 新增EG设备
步骤:点击【后台管理】(只有管理账号才有此权限)→【设备中心】→【EG设备管理】→【+新增】→ 填写设备信息→点击【保存】。其中,【设备名称】必填,其余选项均可选填。
2.2 远程配置网关
EG设备管理网关配置中最主要两个地方需要配置,一是配置网口通讯参数,二是创建罗克韦尔(AB)PLC协议驱动,下面分步骤对此功能进行讲解。
2.3 网关绑定
步骤:点击【保存并下一步】后进入【②:网关、仪表管理】,填写【SN编号】和【验证码】→【保存并下一步】。
SN和验证码在网关的机壳标签上,SN为12位纯阿拉伯数字,验证码为6位英文字母,【备注】可以根据需求填写,编辑完成后点击【保存并下一步】。
此时在右侧“网关基本信息中”可以看到绑定的网关是否连接到平台(成功登录平台可以看到“在线”绿色字样,如果不成功则显示“离线”灰色字样,此时请检查网络或网络信号)。
2.4 通讯参数设置
我们需要用LAN口跟设备进行通讯,所以我们要设置LAN的通讯参数。步骤:点击【通讯口配置】→选择【LAN配置】在弹出窗口中设置通讯参数→点击【保存】。(本文以192.168.1.139为例)
2.5 创建设备驱动
在通讯参数设置完成后,点击界面中央的【添加驱动】→填写设备驱动信息→【保存】。或者点击【新增】也可以进行添加驱动的操作。
基本配置介绍:
【通讯口】:在下拉选项中选择LAN。
【通讯口配置】:此按钮可设置通讯口参数,和之前的步骤设置相同,如果之前设置过,则不需要再次点击此项。
【驱动名称】:必填项,自定义即可
【品牌】:必填项,选择“EtherNet/IP”
【型号】:默认项,“CIP”。
【IP地址】:必填项,填写下位机PLC的IP地址
【端口号】:必填项,填写下位机PLC设置的端口号
高级配置介绍:
【最小采集时间】:是网关采集设备数据的时间间隔,单位:ms。如设置1000ms,即网关1s采集一次设备数据。
【通讯等待时间】:网关接收通讯数据等待时间。可根据需要进行调整,默认1000ms。
2.5.1 添加变量
步骤:点击【③:变量管理】→【+添加变量】→填写变量信息→【保存】。
变量介绍:
【仪表、PLC】:必填,选择刚才创建的罗克韦尔即可。
【变量名称】:必填,自定义即可, 一般与标签名一致,便于识别。注意不能有重复的名称。
【单位】:非必填,自定义即可。在列表展示时,变量会带上单位展示。
【寄存器类型】:必填,默认选择“I/O”即可。
【寄存器地址】:必填,寄存器地址处填写已在PLC程序中创建的标签,标签需遵循以下规则:(1)标签名字由字符、数字、下划线构成。(2)字符型数据只是支持小于82字节的字符串。(3)驱动最多支持三维数组。(4)添加数组类型的变量时,标签名字由数组名字加上数组下标形成,如在PLC内有一个bool型数组barr[96],要创建读写下标为33的变量,则标签名字应该输入“barr[33]”。若只是输入数组名,则驱动默认创建下标为0的变量。(5)驱动读写结构体数据时,标签名字为结构体标签名称加“.”加结构体成员名称,如有结构体数据标签userdata,结构体中包含成员data_int,在创建变量时标签名应写为userdata.data_int。(6)驱动提供对SINT,INT和DINT类型按位读写功能,需要在对应标签后加上“#”,以及读写的位下标,如:
标签名称 | 标签数据类型 | 读写的数据位 | 平台填写的寄存器地址 | 平台选择的数据类型 |
test_sint | SINT | 5 | test_sint#5 | bit位 |
test_int[5] | INT | 12 | test_int[5]#12 | bit位 |
userdata.data_dint[5] | DINT | 25 | userdata.data_dint[5]#25 | bit位 |
【数据类型】:必填,请看下面的数据类型对照表。
PLC中的数据类型 | 平台选择的数据类型 |
BOOL | bit位 |
USINT | 8位整型(无符号) |
SINT | 8位整型(有符号) |
UINT | 16位整型(无符号) |
INT | 16位整型(有符号) |
UDINT | 32位整型(无符号) |
DINT | 32位整型(有符号) |
REAL | 浮点型 |
LINT | 64位整型 |
STRING | 字符串 |
【小数位数】:非必填,根据需求填写。
【死区设置】:非必填,默认即可。根据需要填写即可。更详细的说明请参考后面“?”帮助。
【状态列表】:非必填。可将数值直接与文本映射。如值为“10”,映射字段为“设备故障”,则当采集到变量的值为“10”时,会直接在设备监控和历史报表中显示“设备故障”。
【数值运算】:非必填。可将采集到的数据根据填写的公式进行计算,更详细的说明请参考后面的“?”帮助。
【读写方式】:可根据需求自行修改该寄存器的读写方式,默认为只读。
添加完成后,【变量管理】如下图所示,此时可以点击【数据测试】按钮检查变量值能否采集到,或者值是否正确。
2.6 报警信息设置
可以根据需要给变量设置报警,当产生报警时,会在电脑网页端进行报警展示,在手机APP和微信进行报警推送。设置步骤:点击需要报警的变量后面的【报警】→【新增】→填写报警信息与条件→【确定】。如下图所示:
2.7 历史报表管理
创建完变量后可以点击“④历史报表管理”根据自己的需求创建历史报表。【历史报表】可以满足不同的应用场景下,来记录历史数据,【历史曲线】是根据报表生成的曲线,方便客户以曲线形式查看变量变化趋势。如下图界面所示:
周期存储:按照固定时间间隔,定时对数据存储记录。
条件存储:当某一变量到达一定条件,对部分数据进行“间隔存储”或“单次存储”。
变化存储:当某一变量变化超出一定范围后(高低限),对部分数据进行单次记录(如:某一数据报警后对关联数据进行记录)。
2.8 画面组态
点击【⑤组态管理】即可进入组态管理界面,此处可以设置数据监控中的展示方式(组态展示或列表展示,默认为组态展示)。可以在此处选择使用组态展示形式来展示对应数据规则。
如下图界面所示:
点击界面中间的组态界面列表后方的【编辑】项,进入编辑页面。通过组态编辑页面我们可以任意绘制图片、文字、数显框、按钮、指示灯、管道、设备等控件,详细功能请参考《EG设备组态编辑使用说明》。
用户登录EMCP平台(www.lfemcp.com),点击”罗克韦尔“设备的图片或设备名称进入EG设备即可查看、修改相关数据。
三. 注意事项
在Allen-Bradley(AB)品牌的PLC中,数据地址后面带有三个星号(***)通常表示这是一个Analog_LMH数据类型的地址引用。Analog_LMH用于表示模拟信号的低、中、高范围值。
在AB PLC中,Analog_LMH数据类型通常用于处理模拟信号,例如传感器输出等。这种数据类型在PLC中可能需要多个字节来存储,通常会以特定的格式进行存储和处理。
当您在编程中看到数据地址后面带有三个星号(***)时,这表明您正在引用一个Analog_LMH数据类型的地址。这种表示方式告诉PLC系统如何解释和处理这个特定的数据地址,以确保正确地读取和处理Analog_LMH数据类型的值。
获取模拟量中的详细数据,需要具备具体的数据地址,如数据地址为AB.***的Analog_LMH数据类型模拟信号,则获取方式如下:
AB.Data:获取测量的实时数据;
AB.InMax:传感器设备信号源对应的最大原始数据;
AB.InMin:传感器设备信号源对应的最小原始数据;
AB.EuMax:传感器设备工程量范围最大值;
AB.EuMin:传感器设备工程量范围最小值;
确保您了解PLC中使用的数据类型及其相应的表示方式,以便正确地配置和处理数据。如果您需要更多关于Analog_LMH数据类型的信息,建议查阅相关的AB PLC文档或手册。