S7-1200(固件v4.x)/1500PLC网口接入EMCP云平台


前言:西门子S7-1200 PLC(以下简称S7-1200)是一款优秀的可编程控制器,广泛应于工业控制领域,是一款性能高,运行稳定的控制器。S7-1200具备网口进行程序的上下载和通讯,此次我们要使用MODBUS-TCP协议,通过网口把S7-1200连接到EMCP物联网云平台(简称EMCP),实现电脑Web网页、手机APP和微信对S7-1200内的MW1000、MW1002、I0.0寄存器的远程监控和MW1004和Q0.0的远程读写

一、准备工作。

1.1在对接前我们需准备如下物品;

1)西门子S7-1200(固件v4.x)PLC一台,及通讯用RJ45网线。
2)河北蓝蜂科技的GM20 DTU模块一台,天线和电源适配器(WM20 DTU使用方法相同)。
3)4G SIM卡一张,有流量,大卡,任意运营商均可。
4)联网电脑一台(WinXP/Win7/Win8/Win10操作系统)。

1.2 DTU准备工作

此处参考《GM20-DTU用户使用手册》进行操作,我们需要对DTU网关(以下均以GM20-DTU网关来介绍)连接天线、插上SIM卡、连接12V或24V的电源适配器。

1.3 PLC准备工作。

S7-1200连接220V交流电,先使用电脑通过网线连接PLC的以太网通讯口进行程序的配置,然后使用网线连接GM20的LAN口和PLC的以太网口,进行MODBUS-TCP通讯。

二,PLC的MODBUS-TCP服务器的创建。

第一步,使用西门子的《TIA Portal》(以下简称博途)软件,本文使用的软件版本是V14。将S7-1200设备组态,设置PLC通讯IP,如下图:
第二步, 在程序块中添加数据块,点击确认。如图进行设置。
在DB块参数中直接手动输入“TCON_IP_v4”,即可创建一个TCON_IP_v4类型的数据,然后点开“TCPC”前面的箭头,展开后进行填写,如下图所示    。
展开数据中包含了建立通讯连接时的所有参数,按如图修改其中的参数。
注意:数据块中的ID为连接ID编号,要与程序中其他的通讯连接编号区分开,此处默认设置为1。LocalPort为本地端口号,此处设置为502。ADDR为客户端的IP地址,这里可以默认为0.0.0.0。
第三步,在程序块中的Main[OB1],添加Modbus-TCP服务器指令块“MB_SERVER”。在创建过程中会提示生成相应指令块的背景数据块,点确认进行生成。
注意:MODBUS-TCP指令库在指令库中的“其他”分组中。
上面指令设置的参数是:通过MODBUS-TCP进行通讯,【CONNECT】指向包含建立连接所需参数的TCON_IP_v4地址,此处的“数据块_1”.TCPC即指向的DB2里的TCPC数据;【MB_HOLD_REG】是指保持寄存器区域起始地址为MW1000,长度为10个字,即为MW1000到MW1018。
注1:MB_SERVER指令块详细使用说明请参考博图帮助文档,如下图,信息系统的路径是:“对PLC进行编程”→“指令”→“通讯(S7-1200,S7-1500)”→“通讯处理器(S7-1200,S7-1500)”→“MODBUS(TCP)(S7-1200,S7-1500)”
注2:如果想要试用MODBUS-TCP访问全局数据块(DB),需要满足以下两个条件:
首先:数据块DB的属性中的优化访问必须取消;
然后:在MB_SERVER的寄存器指向中,使用指针指向该DB地址,如下图,同时在CONNECT处添加TCPC数据块。
上图设置的指令就是通过MODBUS-TCP进行通讯,【CONNECT】指向包含建立连接所需参数的TCON_IP_v4地址,此处的“数据块_1”.TCPC即指向的DB2里的TCPC数据;【MB_HOLD_REG】是指保持寄存器区域起始地址为DB3.DBW0,长度为10个字,即为DB3.DBW0到DB3.DBW9。
第三步,将修改好的程序下载到PLC中,此处需要注意,一定要使用“在线(O)”选项中的“下载并复位PLC程序”,如图:

三,EMCP平台设置。

用管理员账号登录EMCP平台www.lfemcp.com (建议使用IE9以上浏览器或谷歌浏览器),对EMCP云平台进行设置。具体操作参照《EMCP物联网云平台用户手册》。登录EMCP后首先进入设备列表显示页面,因为我们未创建任何设备,所以是一个空页面。点击右上角的“后台管理”按钮(只有管理账号才有此权限),进入EMCP平台的后台。

3.1远程配置DTU

打开“后台管理—>模块管理”页面,将DTU绑定至此管理员账号,然后就可以使用“远程配置”功能来配置DTU的各项通讯参数和功能参数。最主要两个地方需要配置,一是与PLC通讯口参数,二是设置DTU定时采集PLC数据的MODBUS通道参数,下面分步骤对此功能进行讲解。注:模块只有在线后才可以进行远程配置。

3.1.1模块绑定

模块初始绑定密码是111111,直接点击绑定即可。

3.1.2 模块远程配置

在【模块管理】中使用对应DTU的【远程管理】功能来进行DTU各项通讯参数的设置;模块的远程配置最好先【读取】再【写入】,只有写入成功后才表示该参数成功配置到DTU中,执行写入后也可以通过读取操作来检查之前的操作是否成功。第一步进入状态信息页,查看DTU状态,如下图:
第二步,进行【通讯设置】,将DTU的通讯口设置为LAN网口通讯,因为PLC的IP地址为192.168.2.2,需要设置DTU的通讯IP为同一个子网内的IP,此时设置为192.168.2.254。然后在Modbus-TCP Server 参数设置列表中,添加S7-1200的从站号、IP地址和通讯端口号(MODBUS-TPC标准为502端口号)
数据通讯口:设置为与PLC通讯口类型,可选RS485、RS232或LAN网口,此处使用LAN网口进行MODBUS-TCP通讯;
本机IP:DTU作为MODBUS-TCP通讯的客户端的IP地址,此IP必须要在通讯局域网的子网段内,且不与子网内的其他设备IP重复,直连S7-1200的话,直接设置为与PLC同一个子网段即可,本案例设置为192.168.2.254;
Modbus-TCP Server 参数:
从站号:为PLC的从站号,此从站号不与其他参与通讯的PLC重复即可,本案例设置为1;
IP地址:PLC作为MODBUS-TCP服务器的IP地址,本案例为192.168.2.2;
端口号:PLC通讯端口,MODBUS-TPC协议标准端口为502,本案例也是用502端口;
第三步,进行【Modbus配置】,配置DTU定时读取PLC的数据发送到平台的各项参数。如下图:
实时数据定制采集列表中的参数说明:
设备从站号:DTU连接的PLC的从站号,与【通讯设置】中PLC的从站号一致。本案例为1;
功能码:为模块读取设备MODBUS寄存区的标志符。“功能码01”对应“线圈”(0XXXX),“功能码02”对应“离散量输入”(1XXXX),“功能码03”对应“保持寄存器”(4XXXX),“功能码04”对应“输入寄存器”(3XXXX)。西门子PLC中,Q点对应01功能码,I点对应02功能码,MB_SERVER的【MB_HOLD_REG】指向的区域对应03功能码(上文PLC程序指向的是MW1000到MW1008),AI区对应04功能码。
起始地址:为模块所连设备的MODBUS寄存器读取的起始地址(不包含寄存区标识符)。图中第一个MODBUS指令地址1代表00001,第二个MODBUS指令地址1代表10001,第三个MODBUS指令地址1代表40001。
数据长度:为DTU读取设备数据的连续长度,图中的长度为8和10,既连续读取从00001到00008、 10001到10008以及40001到40010。
标准DTU可连接多个从站(最多4个),可点击“新建”创建MODBUS指令通道,配置规则按上述说明。
结合上文PLC从站的建立,这里实时监控的是PLC的Q0.0到Q0.7、I0.0到I0.7和MW1000到MW1018。
注:当DTU出现异常时,如无法连接网络在线,或者无法与PLC正常通讯,此时可以使用配置口(默认RS232)连接PC,使用“DTU配置软件”来查看状态及异常报警,详见《DTU配置软件使用手册》。

3.2 新建数据规则

点击网页左侧的“数据规则”进入规则设置页面,点击右上角的“新增”,在弹出的窗口中设置该数据规则的名称“S7-1200”和展示样式“列表展示”,我们可以选择列表展示或组态展示:
列表展示:我们所添加的数据会以固定的列表样式展示,列表展示方式简单方便(数据测试阶段可选用列表展示)。
组态展示:我们可以任意绘制设备数据的展示样式比如添加图形、图片、仪表盘、柱状填充和文字等内容(此功能类似传统的组态软件可参考《EMCP平台画面组态使用说明》文档)。数据规则新建完后点击“实时数据”新增实时数据(3.1.2中设置的Modbus配置),点击“读写数据”创建平台对设备手动读写操作的数据。创建规则展示如下。
注:实时数据:是DTU根据所配置的Modbus采集通道(参考上面的3.1介绍),按设定的采集间隔定时读取从站数据并上传到平台所显示的内容;
读写数据:无需在DTU配置Modbus定时采集通道,可直接通过平台对下位设备进行数据的手动读写操作;
EMCP平台所有"寄存器地址"设置均不需要带寄存器区标识符,如读写“保持寄存器”(03功能码)中40019的数据,在平台数据规则中的"寄存器地址"填写19即可(注:如果设备Modbus地址计数是从0开始的,则需要做加1处理,即填写20) 。
报警设置,在创建好的实时数据中,点击“报警”选项,进入报警设置页面。我们可以设定该数据的报警上下限和报警内容以及是否启用此报警。设定报警后当该数据超出报警上下限后平台会自动记录报警的时间和报警值,同时平台会向用户登录的APP或微信推送报警消息。

3.3 新建设备

新建“设备”, 选择菜单“设备管理”-> “新增”新建一个设备“西门子S7-1200 ”。新建设备是填写设备的基本信息,1选择设备匹配的图片(从本地上传,也可不选择,系统会以默认图片显示);
2输入模块SN,输入要绑定的SN的编码,如果此SN之前未绑定,则会弹出绑定窗口进行绑定;
3选择上面创建的数据规则;
4点击“地图”按钮选择设备所在的地理位置。完成后点击“保存”。

四,实验效果。

打开博图软件,将PLC转至在线,并且从监控表中监控当前PLC的数据,如下图:
用户登录EMCP平台(www.lfemcp.com),点击“西门子S7-1200 ”设备的图片或设备名称进入设备。首先看到的是PLC定时采集数据的显示(实时数据),通过点击“读写数据”对台达PLC进行读写操作,点击“历史数据”查看设备定时存储数据的历史数据报表,点击“报警记录”进入报警信息记录报表页面,显示如下。
--------------------END--------------------
河北蓝蜂信息科技有限公司
技术支持:400-808-6168
官方网站:www.lanfengkeji.com
帮助中心 帮助中心
大约 1 个月前
291

扫描下方二维码手机阅读文章