MQTT协议网关网口连接西门子SMART200PLC操作说明v1.0
前言:MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议的特点是轻量、简单、开放和易于实现的,同时,西门子PLC广泛应于工业控制领域,是一款性能高、稳定性强的PLC设备。
此文档将介绍如何使用MQTT协议网关串口连接西门子200SMART PLC,将PLC的数据通过MQTT协议传输到阿里云MQTT数据平台,用户可以在亚马逊云的MQTT台上实时接收到200SMART PLC的数据,实现将PLC数据上云,远程监控数据的功能。
一. 准备工作
1.1 需要准备如下物品
1) 西门子200SMART PLC一
2)MQTT协议网关一台,天线和电源适配器(以下用LF220作为实例)。
3)SIM卡一张,有流量,大卡(移动,联通或者电信卡)。
4)联网电脑一台(WinXP/Win7/Win8/Win10操作系统)。
5)能登录亚马逊云的账号(本文以新开通的账号为例)。
6)网线、电工工具、导线若干。
1.2 网关准备工作
网关相关技术参数与使用说明,可参考《LF220边缘计算网关使用手册》。
保证网关可以正常联网,可通过4G卡(移动/联通/电信流量卡,大卡)联网(需接上随网关附带的天线)或通过网线联网(需将路由器出来的网线接到网关的WAN口);
网关接12V或24V直流电源,上电。(注意,电源正负极不要接反)。
1.3 PLC准备工作
PLC连接电源(注意电源是24VDC还是220VAC),将PLC网口和LF220的LAN口用网线连接起来。
1.4 平台账号准备工作
在浏览器中输入蓝蜂智控MQTT网关管理平台的,
在登录页面,点击注册账号按钮,进行账号注册,为接下来的设备绑定做好准备工作。
推荐浏览器:Chrome浏览器,Edge浏览器,360浏览器。
不推荐浏览器:不推荐使用IE浏览器,火狐浏览器,世界之窗浏览器。
二. 亚马逊云服务器设置
2.1 登录亚马逊云
点击下面可打开亚马逊云进行登录或注册。
2.2 注册账号
如果没有相关亚马逊云账号,点击“创建AWS账户”按钮创建亚马逊账号
输入邮件地址和用户名,进行注册账号,并且按照亚马逊云要求进行认证,即可。
2.3 使用IOT Core 服务
登录亚马逊云后,点击左上角的服务按钮,在弹出的下拉菜单中,选择“物联网”,在展开的菜单中,继续选择“IoT Core”服务,进入到IOTCore服务。
2.4 创建策略
点击左侧菜单,选择 安全性 →策略菜单,进入策略管理页面
点击创建策略,创建一个新的策略
在策略名称中,填写一个新的策略名称,可任意起名字。
选择策略声明,选择“JSON”选项卡,在 内容中,修改内容如下:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iot:*",
"Resource": "*"
}
]
}
点击下方 “创建”按钮,建立一个新的策略。
2.5 创建设备
点击左侧菜单,所有设备→物品,在打开的物品管理页面中,点击“创建物品按钮”。
选择创建单个物品,点击下一步:
在物品属性页面,按照如下进行字段填写。
设备名称:填写一个设备的名称,不可以重复
其他配置:默认选项即可
设备影子:选择无影子
设置完成后,点击下一步。
在配置设备证书页面,选择"自动创建新证书"。
在附加策略到整数页面中,选择上一个步骤中创建的策略,点击"创建物品按钮"
2.6 下载证书
在弹出的对话框中,请将对应的证书和秘钥全部都下载下来,并妥善保存到电脑中(此步骤很重要),稍后用于在网关中进行使用。
下载完成后,点击“已完成”按钮,表示该设备已创建完成。
2.7 获取亚马逊云服务器地址
点击左侧菜单,选择 “设置”菜单,打开设置页面,在页面中,选择所属节点,请复制此地址,并妥善保存,稍后用于在网关中进行使用。
三. MQTT云平台配置步骤
蓝蜂MQTT管理平台网站,使用请点击【注册账号】,如已经申请过账号,可直接登录,支持手机验证码登录和账号密码登录两种方式。
3.2 绑定网关
登录账号后,点击右上角的绑定网关,输入网关的基本信息(SN编号和网关验证码贴于网关机身)即可将该设备绑定至自己账号下。
点击右上角,可添加设备,填写设备名称、SN编号、验证码,备注等字段,点击确定按钮,添加成功网关。
3.3 打开配置界面
准备工作:网关上电,插4G卡或者将能上网的网线插在网关WAN口上。
之后点击后方的【远程配置】即可进入配置页面。
注意:1、网关状态必须为“在线”才可进行远程配置。
2、如不能在线或不能连接网络,请使用本地连接,具体方法见硬件产品说明书。
3.4 MQTT连接配置
成功进入远程配置页面后,点击左侧菜单,选择服务器配置,在打开的页面中,选择“MQTT连接配置”选项卡,用于配置连接的MQTT服务器的参数。
具体配置内容如下:
【客户端ID:】可任意填写。
【用户名】、【密码】可不填,或者任意填写。
【ip/域名】:填写本文2.7节步骤中复制的地址。
【端口号】:填写8883。
【超时时间】、【心跳时间】,按照默认值即可。
【SSL/TLS】,选择双向认证
在证书上传过程中,请选择之前步骤中获取的证书进行上传
1)根证书,上传“AmzonRootCA1.pem” 文件
2)客户端证书,请上传后缀名为“certificate.pem.crt” 的文件
3)客户端私钥,请上传后缀名为:“private.pem.key”的文件
点击保存按钮,重启网关后,配置生效。
3.5 驱动管理
驱动管理用来配置网关与下位机的驱动管理,支持创建/编辑,删除驱动,设置通讯口配置信息等,如图。需要进行添加驱动的操作。点击【通讯口设置】→【LAN口配置】。
【通讯口配置】:点击通讯口配置下面有3个通讯端口项,【RS232】、【RS485】和【LAN】,分别对应网关上的3个数据通讯端口,3个通讯口可以同时和下位机进行通讯。可按照需要对相应通讯口进行配置。
我们需要使用网线与PLC进行通讯,所以需要配置网口的参数。如下图。本案例中,PLC的IP地址为192.168.1.55。同时,建议使用手动设置IP的方式。需要填写和PLC同一网段的地址,任意即可,这里填写192.168.1.10,子网掩码为255.255.255.0。
【+新增】:点击此处创建驱动,可根据实际使用需求进行选择填写。
【驱动名称】:自定义。不限中英文,不限标点符号,包括空格,最大支持20个字。
【品牌】、【型号】:根据需要选择品牌型号,网关会根据您选择的品牌型号的专有协议跟设备进行通讯。本案例连接西门子200SMART PLC,所以【品牌】选择“西门子”,【型号】选择“S7-200 SMART”。
【IP地址】:必填项,填写PLC的IP地址。
【端口号】:西门子默认为102。
完成后点击确定即可看到新创建的驱动。
3.6 变量管理
首先我们需要拿到PLC端的地址表, 此处的【寄存器类型】和【寄存器地址】需要和PLC的地址表一致。地址表见后方说明。
点击变量管理功能,根据项目需求进行配置变量,用于网关进行数据的采集和上报。
添加变量功能中,可以根据点位表,自行定义寄存器类型,数据类型,小数位数,读写类型。
※变量名称说明:
【仪表、PLC】:必填,选择刚才创建的西门子smart200即可。
【变量表示(key)】:必填,自定义即可。注意不能有重复的名称。
【寄存器类型】:必填,填写对应西门子smart200PLC的寄存器类型。
【寄存器地址】:必填,与实际寄存器地址一致。具体可见下方地址表示例。
【数据类型】:必填,根据实际需要选择即可。
【死区设置】:具体内容见后方“?”。
【读写方式】:可根据需求自行修改该寄存器的读写方式,默认为只读。
【采集公式】:可根据需求自行编写公式,需要使用英文字符。具体内容介绍见《蓝蜂MQTT网关配置工具使用说明》
地址表示例:
3.7 设置主题
在左侧菜单中,点击“主题列表”菜单,选择【数据上报】
点击右侧【新增】按钮,新增一个新主题:
可根据项目需求,对主题内容进行配置:
1. 上报主题(示例):data/report
2. 上报方式:可根据实际需求填写。本例中选择定时上报,时间间隔为60秒。
3. 加工脚本:选择默认,可按照提供的默认格式进行数据上报,也可以点击【自定义脚本】根据自己的格式需求编写脚本。默认数据格式如下图:
{
"code": "200",
"data": {
"msgId": "29",
"sn": "200121011016",
"time": 123456789777,
"value": {
"temp": "20.5",
"pressure": "10.1",
"PH": "6.8"
}
}
}
四. 亚马逊云平台测试上报数据
打开亚马逊云平台,点击左侧菜单“MQTT测试客户端”,在打开的页面中,点击订阅主题选项卡,用于订阅上一个步骤中,网关的发布主题。
订阅主题中,输入网关中设置的上报主题,举例“data/report”
在订阅主题的数据中,可以看到数据已经成功上报至亚马逊云
五. 其他功能
LF220支持PLC远程下载、断网续传、脚本功能,(透传功能不适用于阿里云服务器)功能介绍可查看《LF220边缘计算网关用户手册》,或点击对应功能页中的“?”跳转帮助界面进行查看。
六. 注意事项
1、LF220网关暂时不支持web配置页,目前暂时不能设置交换机和路由器模式。
2、在打开蓝蜂MQTT网关配置工具之后,请勿关闭已打开的命令行窗口,或修改浏览器内地址,否则将无法正常使用配置工具。
3、如果串口232是7位时,串口连接点击升级,升级成功客户端不会提示升级成功,但是网关实际会升级成功。
7、蓝蜂MQTT网关配置工具的网关编码格式为UTF-8。
8、兼容性:win7, win10, win11系统,不支持winxp及更低版本windows系统,不支持linux、MacOS、android和ios系统。