怎么通过MQTT查看数据是否上云端_C#通过OPC UA+MQTT将设备数据采集至云端自动化工程师的数字化之路...

↑ 点击上方

“智能制造之家”

关注我们

d9aff62f967d4cbebca0b97b589f04f1.png

写在前面:

在前面的爆款文章:

西门子、施耐德、罗克韦尔等巨头告诉你,为何你大爷始终是你大爷

当中,有这样一句话:所有面向未来的自动化供应商,都在加速拥抱软件的步伐。面向数字化转型的当下和未来,工程师也应如此,为此在本刊的文章中,特意发了几篇相关的实例:

当树莓派+S7-1500与阿里云跨界相遇-自动化工程师的数字化之路

当WinCC OA遇上Mindsphere,自动化工程师的数字化之路

随着物联网时代的到来,大家对于OPC UA、MQTT我想应该都已经并不陌生,作为工业巨头的西门子,也第一时间对自己的PLC提供了对应的MQTT库: 使用S7-1200和1500 轻松连接物联网MQTT 消息服务器 为什么一定要了解OPC UA TSN——未来的工业通信标准 今天我们就来聊一聊如何使用C#,并通过OPC UA和MQTT将数据采集至云端~ 文章底部有彩蛋 ~ 本次内容有: 1.整体网络架构 2.服务层 3.数据层 4.应用层0 1PART

整体网络架构

很多时候,我们的需求是这样的:现场有N台不同的设备或系统,每台设备或者系统的协议是各不相同的,希望可以用一种通用并且简单的方法,将这些数据传到云端,实现远程访问。

这样的需求,其实是物联网最典型的应用之一,那么采用OPCUA+MQTT或许是个不错的选择,整体的框架设计如下:

3051d92b64e21bbf0a669f8e8ef79066.png

图表 1 整体网络架构

为了实现整体功能,这里的设备层,采用Modbus Slave,基于Modbus TCP协议来做仿真测试,增加5个变量,分为为压力1-压力5,对应地址从40001-40010,数据类型为浮点型,运行Modbus Slave仿真结果如下:

b0916ac82d8f36e6354a46411a946b34.png

图表 2 ModbusTCP服务器

0 2PART

服务层

至于服务层,主要是OPCUA服务器的开发应用,这里我们有两个选择,一种是采用第三方的OPC软件,比如Kepware、Knight、Matrikon这些公司的产品,这种比较容易,做下相关配置即可,另外一种方式就是自己开发,相对来说难度要大一些。

这里我使用自己开发的一款软件——CMS配置一体化软件,通过简单配置,在10秒内,实现了ModbusTCP客户端数据通信,结果如下:

4fdfebf0227bdc96fad5fd834d465729.png

图表 3 ModbusTCPClient通信测试

然而,这部分,仅仅是实现了ModbusTCP客户端的功能,如果要实现OPCUA服务器的功能,需要激活一下OPCUA服务器,在服务器节点下添加一台OPCUA服务器即可,添加完成后,保存重新运行,结果如下:

3da7c1e34c4276efac00194c50cf6626.png

图表 4 开启OPCUAServer

为了测试OPCUA服务器是否开启成功,需要进行测试,可以使用官方软件UAExpert软件来测试一下:

459f178351b7f74a8fffb5035dd43cb6.png

图表 5 OPCUAClient通信测试

0 3PART

数据层

(1)在实现数据层功能之前,需要创建一个MQTT服务器,这里采用的是基于.NET CORE编写的一个MQTT服务器的程序,在阿里云服务器中部署运行(这里要注意开放端口1883),运行效果如下:

56654c89fef92699df0e760186b92e16.png

图表 6 MQTT服务器

(2)MQTT服务器创建完成之后,重新打开一个CMS配置软件来进行OPCUAClient的功能测试,上一节中的UAExpert是官方的OPCUA客户端软件,仅用于测试使用,这里的使用的CMS配置软件的OPCUAClient是自己开发的客户端程序,经过配置之后,运行结果如下:

606f13b5198ae790ae2c87ffe9bf4ab1.png

图表 7 OPCUAClient

(3)在CMS配置人家的服务器节点中,右击添加一个MQTTClient,根据MQTT服务器配置相关IP、用户、密码、主题及更新时间等信息,具体如下:

47e5188dc0fed23379d009f89603e8a4.png

图表 8 MQTT客户端配置

(4)配置完成后点击启动按钮,整体运行之后,可以看到MQTT连接成功,并按照设定的周期将最新的数据发布到指定的主题中,效果如下:

2f017aade445150c7564bc9d187a432f.png

图表 9 启动MQTT客户端

(5)打开MQTT服务器,也可以看到不断地有数据发布过来,这里为了便于观察结果,将压力1的数据仿真成每秒加1,MQTT服务器数据接收如下:

c66252aa6e0470200b844b4b50e60838.png

图表 10 MQTT服务器数据接收

0 4PART

应用层

通过以上的相关部署,即可实现整个OPCUA+MQTT的实现,实际应用时,只需要开启一个MQTT客户端,连接指定的MQTT服务器,并订阅相应的主题,即可获取到设备层的实时数据,这里使用一个常用的MQTT客户端软件,即MQTT.fx:

012111ef52b4db743dd9a14dddefb296.png

图表 11 MQTT.fx通信测试

0f84ae66c4390a587411328db0ff9da0.png 写在最后:

本文旨在结合当下主流的OPCUA统一架构和MQTT通信协议,实现一种数据上云的途径,对于自动化行业的工程师来说,可以拓展大家的思路。未来更多是IT和OT相结合的一种趋势,因此,作为每个工控技术人员,都要时刻保持危机感,不断学习,不断进步,这样才能更好地面对未来工业的快速发展。

由于篇幅有限,很多细节问题可能无法通过文字描述清楚,因此我们准备了一次针对自动化行业的物联网公开课,名额有限,先到先得。

9e6ad7deb52fc79baa9cf165cd4dffa7.pngEND

df21050aff5a9c0e3f8065e1358fe795.png

d18fdd88760f5eaa87ff8df4bbe79752.png

小编说1分钟前

创作不易,如果感觉不错,欢迎大家前来听直播课! 👇

(下图扫码加微信哦~↓↓↓)

f1be91e3322b3cef8ac9f54b65b047d0.png

免责申明:本公众号所载文章为本公众号原创或根据网络搜索编辑整理,文章版权归原作者所有。因转载众多,无法找到真正来源,如标错来源,或对于文中所使用的图片,资料,下载链接中所包含的软件,资料等,如有侵权,请跟我们联系协商或删除,谢谢!

往期推荐 最全解读西门子MES/MOM平台Opcenter,100多亿美金的数字化之路西门子是谁?爆笑揭秘伟大的电子电气之父传奇一生,一个“不愿出狱”的企业家解密西门子超大型/分布式SCADA–WinCC OA的软件架构OPC UA + MQTT =物联网扩展的热门组合盘点常见的自动化仓储系统类型2020制造业热门岗位薪酬分析,又到了装X和卖惨的时候了西门子是谁?爆笑揭秘伟大的电子电气之父传奇一生,一个“不愿出狱”的企业家使用S7-1200和1500 轻松连接物联网MQTT 消息服务器 2821c21958e4f866e4e42c0880a19a0c.png

我们是一群智能制造技术的爱好者,我们乐于分享,我们积极向上,我们也许有些宅,但是我们很有爱,我们期待您的加入

--智能制造之家

多重福利哦

1.若您有智能制造相关资料需求,可以到留言区进行留言~

2.进入知识星球智能制造之家,提升自我认知,认识更多朋友,掌握更多资源,更多技巧~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值