10分钟西门子SMART200PLC轻松实现连接自建MQTT云平台操作教程

news2024/11/29 14:52:00

目录

一. 使用流程

二. 准备工作

2.1 需要准备如下物品

2.2 LF220网关准备工作

2.3 PLC准备工作

2.4 电脑的准备工作

2.5 MQTT服务器

三. MQTT网关登陆平台配置步骤

3.1 登录

3.2 网关概况

3.3 MQTT连接配置

3.4 驱动管理

3.5 变量管理

四. MQTT客户端数据采集配置步骤

4.1 实时采集数据配置

4.2 写变量配置

4.3 状态上报

4.4 系统变量

五. 其他功能

六. 注意事项

前言:MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议的特点是轻量、简单、开放和易于实现的,同时,西门子PLC广泛应于工业控制领域,是一款性能高、稳定性强的PLC设备。

此文档将介绍如何使用MQTT协议网关串口连接西门子200SMART PLC,将PLC的数据通过MQTT协议传输到数据平台,电脑使用MQTTX软件可以实时接收到200SMART PLC的数据,实现将PLC数据上云,远程监控数据的功能。

  • 使用流程

流程如下,首次使用网关按照以下流程就可以实现PLC数据上云的功能,实现数据采集。

  • 准备工作
    1. 需要准备如下物品

1) 西门子200SMART PLC一台

2) MQTT协议网关一台,天线和电源适配器(以下用LF220作为实例)。

3) SIM卡一张,有流量,大卡(移动,联通或者电信卡)。

4) 联网电脑一台(WinXP/Win7/Win8/Win10操作系统)。

5) 支持MQTT协议的平台(云服务器、实体服务器均可)。

6) 可以访问MQTT平台的软件(MQTTX等,本文以MQTTX介绍)。

7) USB转RS232线、网线、电工工具、导线若干。

    1. LF220网关准备工作

网关相关技术参数与使用说明,可参考《LF220边缘计算网关使用手册V1.1》。

  1. 保证网关可以正常联网,可通过4G卡(移动/联通/电信流量卡,大卡)联网(需接上随网关附带的天线)或通过网线联网(需将路由器出来的网线接到网关的WAN口);
  2. 网关接12V24V直流电源,上电。(注意,电源正负极不要接反)。
    1. PLC准备工作

PLC连接电源(注意电源是24VDC还是220VAC),将PLC网口和LF220的LAN口用网线连接起来。

 

    1. 电脑的准备工作
  1. 电脑安装“蓝蜂MQTT网关配置工具压缩包”。

进入蓝蜂官网(工业iot物联网平台-工业物联网智能网关-plc远程控制-蓝蜂物联网),点击【资源中心】→【技术手册】→【蓝蜂MQTT网关配置工具压缩包】,如图:

 

※本客户端为免安装客户端,下载后请使用解压软件进行解压缩操作,打开解压缩后的文件夹,双击“蓝蜂MQTT网关配置工具.exe”文件,即可启动蓝蜂MQTT网关配置工具。

使用方式:启动蓝蜂MQTT网关配置工具,会开启命令行窗口并启动电脑内默认浏览器,在浏览器内进行配置操作,请勿关闭已打开的命令行窗口,或修改浏览器内地址,否则将无法正常使用配置工具。

推荐浏览器:Chrome浏览器,Edge浏览器,360浏览器。

不推荐浏览器:不推荐使用IE浏览器,火狐浏览器,世界之窗浏览器。

  1. 电脑安装MQTTX软件。

MQTTX软件下载地址:MQTTX:跨平台 MQTT 5.0 桌面客户端工具,也可以自行搜索下载安装。

:其他MQTT客户端均可使用,本文以MQTTX软件为例进行介绍。

    1. MQTT服务器

需要准备一台MQTT服务器,实体服务器、云服务器(阿里云、华为云等)均可。

注意:

  1. 如果网关是使用外网上网的方式进行上网,实体服务器端需要开放外网端口。
  2. 如使用云服务器,需要配置网关的MQTT上报脚本,必须满足云服务器的格式。

本文以本地服务器介绍。

  • MQTT网关登陆平台配置步骤
    1. 登录

MQTT网关支持本地串口配置和远程无线配置两种方式连接网关进行配置。

※本地串口配置方式

使用本地串口配置方式,如图:

使用232串口进行本地配置,将网关的RS232口使用USB转232线接到电脑上,填写配置参数,包括选择通讯口,波特率,数据位,数据校验,停止位。默认参数为115200,8,无,1。

【读取网关串口参数】:如果对于串口参数并不了解,可点击“读取网关串口参数”按钮,客户端会主动搜索并填入已选中的串口的参数。

【记住配置】:点击“记住配置”按钮后,会记住当前配置,避免每次进入时需要重新配置的问题,再次进入时可直接进行连接操作。

点击“立即连接”按钮,可进入网关配置工具进行配置。

※远程无线配置方式

当第一次拿到设备时,网关内部默认服务器为蓝蜂的MQTT服务器,使用“远程无线配置”可直接通过蓝蜂MQTT服务器对网关进行远程配置,修改网关参数。

 

需填写对应的参数:

【网关SN码】:网关SN码必须为要连接的目标网关。SN码位于网关机身。

【客户端id】:电脑登录MQTT服务器的ID,随机生成,也可以自行填写,最多200个字符,不能与其他设备设置的客户端id重复。

【用户名】【密码】: 蓝蜂默认用户名、密码均为test

【IP/域名】:蓝蜂MQTT服务器网址为110.249.137.42

【端口】: 蓝蜂MQTT服务器端口号为1883

其余项目不需要修改,连接成功后即可进入网关配置界面对网关设置进行修改。

注意,远程无线配置功能对于一般实体MQTT服务器来说可以直接使用,只需要填写好对应MQTT服务器参数即可进行远程无线配置。针对于阿里云、腾讯云等部分有限制的MQTT服务器来讲,此功能不建议使用。

    1. 网关概况

当连接成功后,即可进入网关配置页面,在此界面中可以查看到网关的基本信息、资源使用情况、服务器连接状态等,同时也可以对网关进行相应的配置。

 

关于网关基本信息的具体介绍,见《蓝蜂MQTT网关配置工具使用说明》第4.1节。

注意:LF220最多支持添加2000个变量。

    1. MQTT连接配置

MQTT配置页面可用于填写MQTT服务器参数,以及设置是否开启透传、数据采集异常上报和网关状态上报。具体介绍内容见《蓝蜂MQTT网关配置工具使用说明V1.0》第4.2节。

首次拿到网关需要进行MQTT连接配置,可用于配置连接的MQTT服务器的参数。配置完成后,网关即可连接MQTT服务器。如图:

 

【客户端id】:为网关登录MQTT服务器的ID,默认为网关SN编号,可根据需求可自行修改,为网关登录MQTT平台的ID。不能与其他设备设置的客户端id重复。

【用户名】【密码】:登录MQTT服务器的用户名和密码。需要MQTT服务器端提供。

【IP/域名】:MQTT服务器的地址。需要MQTT服务器端提供。

【端口】:MQTT推送的服务器地址的端口号。需要MQTT服务器端提供。

【超时时间】:客户端连接服务器连接开始到失败的等待响应时间。

【心跳时间】:在没有任何其他控制报文从客户端发送给服务端的时间间隔。

【SSL/TLS】:可选择关闭认证,单向认证或双向认证。

※单向认证:指的是只有客户端校验服务器的合法性,需要上传服务器的根证书;

※双向认证:指的是相互校验,服务器需要校验每个客户端,客户端也需要校验服务器,需上传服务器根证书和客户端的公钥和私钥文件。

注:除【客户端id】【超时时间】【心跳时间】【SSL/TLS】之外,其余参数均为MQTT服务器端提供,和网关登录MQTT平台的配置相同。

    1. 驱动管理

驱动管理用来配置网关与下位机的驱动管理,支持创建/编辑,删除驱动,设置通讯口配置信息等,如图。由于是第一次配置,此处为空,需要进行添加驱动的操作。

 

 

【通讯口配置】:点击通讯口配置下面有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。

完成后点击确定即可看到新创建的驱动。

    1. 变量管理

变量管理可用来配置网关数据变量,支持新增、编辑、导入、导出、复制等功能。由于是第一次配置,此处为空,需要进行新增变量的操作。

 

支持变量的复制/导入/导出功能,使用【复制】可以快速添加变量。

如果变量较多,可以先点击【导出】,在导出文件中进行修改,修改完成后再点击【导入】即可。

具体内容介绍见《蓝蜂MQTT网关配置工具使用说明V1.0》第4.5.2节和4.5.3节。

※变量名称说明:

【仪表、PLC】:必填,选择刚才创建的西门子smart200即可。

【变量表示(key)】:必填,自定义即可。注意不能有重复的名称。

【寄存器类型】:必填,填写对应西门子smart200PLC的寄存器类型。

【寄存器地址】:必填,与实际寄存器地址一致。具体可见下方地址表示例。

【数据类型】:必填,根据实际需要选择即可。

【死区设置】:具体内容见后方“?”。

【读写方式】:可根据需求自行修改该寄存器的读写方式,默认为只读。

【采集公式】:可根据需求自行编写公式,需要使用英文字符。具体内容介绍见《蓝蜂MQTT网关配置工具使用说明V1.0》第4.5.4节。

地址表示例:

 

至此,使用蓝蜂MQTT网关配置工具配置完成,用户可使用MQTT客户端访问MQTT服务器读取相关变量。

  • MQTT客户端数据采集配置步骤

准备:在变量管理中,我们添加如下变量(可以根据需求自行添加):

 

    1. 实时采集数据配置

步骤一:在蓝蜂MQTT网关配置工具中点击“数据传输配置”→“数据上报配置”,设置数据上报配置参数,如下图。

此案例中选择定时上报,上报主题为“wz”,自动上报时间设置为10S。用户可以根据自己的需求自行选择。网关会按照此处设置的主题和时间上报给MQTT平台。

 

步骤二:打开电脑的MQTTX软件(也可以使用其他软件,本文以MQTTX软件展示),登录MQTT平台。MQTTX软件配置如下:

 

步骤三:添加订阅消息。

步骤四:设置完成后即可点击查看数据,如下图。可以看到,数据是10秒自动上报的。

至此,PLC数据已经成功上传到MQTT服务器,用户可以使用任意MQTT客户端软件或者其他工具读取此PLC的数据。

    1. 写变量配置

步骤一:在蓝蜂MQTT网关配置工具中点击“数据传输配置”→“写变量配置”,设置数据上报配置参数,如下图。

此案例中选择定时上报,请求主题为“wz写”,相应主题为“write/resp/${sn}”。用户可以根据自己的需求自行编辑。

同时,客户可以根据自己的需求自定义脚本,此处我们选择默认。默认代码可点击查看后方“?”。

 

步骤二:打开电脑的MQTTX软件(也可以使用其他软件,本文以MQTTX软件展示),登录MQTT平台。MQTTX软件配置如下:

 

步骤三:添加订阅消息:

步骤四:在MQTTX软件中修改“请求主题”,同时写代码(由于我们选择的是默认,此处代码按照默认进行编辑)。

请求默认格式示例为:

{

      "data": [

            {

                  "key": "temp1",

                  "value": "1"

            },

            {

                  "key": "temp2",

                  "value": "2"

            },

            {

                  "key": "temp3",

                  "value": "3"

            }

      ]

 

步骤五:设置完成后即可点击查看数据,如下图。可以看到,发送和接收的格式与默认格式一致。

 

至此,PLC数据已经成功上传到MQTT服务器,用户可以使用任意MQTT客户端软件或者其他工具读取此PLC的数据。

    1. 状态上报

开启此状态可在网关检测到设备状态变化时,设备会发送消息,下文以“设备插拔网线”为例进行步骤讲解。

步骤一:在蓝蜂MQTT网关配置工具中点击系统配置→状态上报配置,开启状态上报配置,设置状态上报的主题,设置完成后点击保存。如图

 

步骤二:在MQTTX中对该上报主题进行订阅,当网关联网方式、运行状态发生变化时,可接收网关状态变化的消息,如图:

 

步骤三:订阅完成后,我们插拔网线进行测试:

 

    1. 系统变量

系统变量用来描述某种状态或设备标识(如车牌号、设备ID、型号、物联网卡号等),可自定义设置,网关上报数据过程中可将系统变量与设备变量数据共同上报。

步骤一:点击【+新增】按钮,会弹出新增系统变量弹窗。

步骤二:添加一个系统变量,如图:

【key】:可自定义设置,必填项。不限中英文,不限标点符号,包括空格,最多支持20个字符。

【value】:key所对应的数据或说明,必填项,不限中英文,不限标点符号,包括空格,最多支持50个字符。

注意:

1.LF220支持最多添加10个系统变量,系统变量和变量中的key不能重复。

2.系统变量默认有记录网关编号sn和消息ID msgId,这些不能修改。

步骤三:在MQTTX软件中查看实时数据:

另外,如需要远程读取PLC数据,使用透传功能,方法类似。具体操作方法,参考内容见《蓝蜂MQTT网关配置工具使用说明》第6节。

蓝蜂MQTT网关配置工具订阅和发布使用的是默认脚本,如需要修改,具体操作方法,参考内容见《蓝蜂MQTT网关配置工具使用说明》第7节。

LF220支持PLC远程下载、断网续传、透传、脚本功能。功能介绍可查看《LF220边缘计算网关用户手册》,或点击对应功能页中的“?”跳转帮助界面进行查看。

  • 注意事项

1、LF220网关暂时不支持web配置页,目前暂时不能设置交换机和路由器模式。

2、在打开蓝蜂MQTT网关配置工具之后,请勿关闭已打开的命令行窗口,或修改浏览器内地址,否则将无法正常使用配置工具。

3、在线配置MQTT平台参数时,电脑和网关需要同时访问到相同的MQTT平台,否则无法在线配置。

4、同一台电脑,mqtt方式登录后,一次只能操作一个网关(如同时打开多个网页,同时连接不同的网关,客户端是不支持的)。

5、如果串口232是7位时,串口连接点击升级,升级成功客户端不会提示升级成功,但是网关实际会升级成功。

6、蓝蜂MQTT网关配置工具的网关编码格式为UTF-8。

7、兼容性:win7, win10, win11系统,不支持winxp及更低版本windows系统,不支持linux、MacOS、android和ios系统。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/532744.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

全网首次公开,阿里巴巴新产Java性能优化小册(2023版),理论实战起飞

性能优化可以说是很多一线大厂对其公司内高级开发的基本要求(其中以Java岗最为显著)。其原因有两个:一是提高系统的性能,二是为公司节省资源。两者都能做到,那你就不可谓不是普通程序员眼中的“调优大神了”。 那么如…

pyqt5界面+myql+跳绳系统设计

pyqt5界面myql跳绳系统设计 改项目主要是学习界面的设计开发,已把一些流行的算法做成功能较好的系统,这里以跳绳计数算法为例子,进行一个开发流程。 跳绳计数算法 1.基于Mediapipe(本文使用0.8的版本)进行人体骨架关…

yolo v8

这个系列代码被封装的非常的精致,对二次开发不太友好,虽然也还是可以做些调节 模型的导出 有三种方式试过,都可以导出onnx的模型 1. 用yolov8 源码来自:ultralytics\yolo\engine\exporter.py (不固定尺寸) yolo export modelpa…

Unity HybridCLR 热更工具学习日记(一)

目录 导入HybridCLR包、安装设置相关选项 导入HybridCLR包 先找到HybridCLR包的git地址:https://github.com/focus-creative-games/hybridclr 复制包的http地址,打开unity - window - package Manager;点击左上角的 选择Add Package for…

Ch4.字符串

文章目录 4.字符串KMP算法next数组nextval数组 (优化后的next数组)4.字符串 1.串: 串是一种特殊的线性表,数据直接呈线性关系 2.字符集编码 3.串的存储 (1)顺序存储 ①静态数组 ②动态数组 王道教材采用静态数组 (2)链式存储 4.字符串模式匹配 (1)概念

7.免交互

文章目录 Here Document免交互Expect例子 Here Document免交互 Here Document 免交互 使用I/O重定向的方式将命令列表提供给交互式程序或命令,比如ftp、 cat或read命令。是标准输入的一种替代品,可以帮助脚本开发人员不必使用临时文件来构建输入信息&a…

深度学习笔记2——CNN识别手写数字

深度学习笔记2——CNN识别手写数字 本文将介绍LeNet-5和MNIST手写数字识别的PyTorch实现案例。 参考文献:《Gradient-Based Learning Applied to Document Recognition》数据集(MNIST):THE MNIST DATABASE完整代码(G…

ChatGPT接入微信公众号(手把手教学)

前言 本篇文章参考国内服务器 3 分钟将 ChatGPT 接入微信公众号(超详细)配置,纠正了一些过时的信息。 准备 一个微信公众号 一个能访问外网的梯子 一个ChatGPT账号 有了这些就可以配置了 注册免费服务器,并部署代码 前往Laf…

CloudCompare二次开发之如何通过PCL进行点云配准?

文章目录 0.引言1.CloudCompare界面设计配准(registrate)按钮2.ICP配准(ICP_Reg)3.多幅点云逐步配准(Many_Reg) 0.引言 因笔者课题涉及点云处理,需要通过PCL进行点云数据一系列处理分析,查阅现有网络资料&a…

ChatgGPT生成Excel统计公式

需求背景 编写excel公式,提取下图中符号之前的内容并填充到“修改后的内容”这一列 流程思路 借助ChatGPT完成Excel公式的大致流程如下: 确定要解决的问题:明确你需要在Excel中实现的具体任务或计算需求。例如,求和、平均值、…

优思学院|用ChatGPT人工智能制作FMEA可以吗?

问题和缺陷是昂贵的,它们是质量成本的主要构成部分。同时,顾客可以对制造商和服务提供商抱有很高的期望,希望他们提供高质量和高可靠性。 通常,很多企业只会在产品和服务的开发后期,通过广泛的测试和檢查来发现问题。…

提高 Maya 渲染质量和速度的4个小技巧

Autodesk Maya,通常简称为Maya,是一种3D计算机图形应用程序,可在Windows、macOS和Linux上运行,最初由Alias开发,目前由Autodesk拥有和开发。它用于为交互式3D应用程序、动画电影、电视剧和视觉效果创建资产。 您可以通…

以 29K 成功入职字节跳动,这份《 软件测试面试笔记》让我受益匪浅

朋友入职已经两周了,整体工作环境还是非常满意的!所以这次特意抽空给我写出了这份面试题,而我把它分享给小伙伴们,面试&入职的经验! 大概是在3月中的时候他告诉我投递了简历,4月的时候经过了3轮面试收…

【C++】4. 类和对象终章

专栏导读 🍁作者简介:余悸,在读本科生一枚,致力于 C方向学习。 🍁收录于 C专栏,本专栏主要内容为 C初阶、 C 进阶、STL 详解等,持续更新中! 🍁相关专栏推荐: …

做F牌独立站要做好功课,拒绝被割韭菜!

做过爆品独立站的朋友们都知道,遇到爆品不容易,很多都具有滞后性,都是当你发现了之后,这个帖子/视频/产品已经被人跑烂了,你再去跑,这样只会浪费大量的广告费。既然爆品独立站的广告费烧不过大卖&#xff0…

知识图谱学习笔记——(五)知识图谱推理

一、知识学习 声明:知识学习中本文主体按照浙江大学陈华钧教授的《知识图谱》公开课讲义进行介绍,并个别地方加入了自己的注释和思考,希望大家尊重陈华钧教授的知识产权,在使用时加上出处。感谢陈华钧教授。 (一&…

Java配置方式使用Spring MVC:实战练习

文章目录 续写任务1、创建登录页面、登录成功与登录失败页面1、创建登录页面2、创建登录成功页面3、创建登录失败页面 任务2、首页添加登录链接,单击可跳转到登录页面1、 修改首页,添加超链接2、修改Spring MVC配置类,定义视图控制器3、创建登…

Spark - 创建 _SUCCESS 文件与获取最新可用文件

目录 一.引言 二.增加 _SUCCESS 标识 1.SparkContext 生成 2.FileSystem 生成 3.Hadoop 生成 三.获取最新文件 1.获取 SparkContext 2.按照时间排序 3.遍历生成 Input 四.总结 一.引言 有任务需要每小时生成多个 split 文件分片,为了保证线上任务读取最新…

Linux实操篇---常用的基本命令5(进程管理类和crontab系统定时任务)

一、进程管理类 进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。 守护进程和系统服务就是一一对应的关系。 有系统级别的进程和用户级别的进程。 进程管理:所有的进…

如何使用自定义知识库构建自定义ChatGPT机器人

目录 隐藏 使用自定义数据源为您的 ChatGPT 机器人提供数据 1. 通过Prompt提示工程提供数据 2. 使用 LlamaIndex(GPT 索引)扩展 ChatGPT 如何添加自定义数据源 先决条件 怎么运行的 最后的总结 使用自定义数据源为您的 ChatGPT 机器人提供数据…