C#MQTT编程10--MQTT项目应用--工业数据上云

本文介绍了使用C#进行MQTT编程的系列文章,详细讲解了从MQTT协议入门到实际项目应用,包括云端服务器和终端客户的搭建,以及PLC数据采集与上传的过程。文章最后阐述了在工业互联网背景下,MQTT在工业数据上云中的重要性,并展示了云端部署的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、文章回顾 

这个系列文章已经完成了9个内容,由浅入深地分析了MQTT协议的报文结构,并且通过一个有效的案例让伙伴们完全理解理论并应用到实际项目中,这节继续上马一个项目应用,作为本系列的结束,奉献给伙伴们,真是帅呆了,我也是醉了,特别是第9节内容,那绝对是项目的经典,将技术应用到完美。

C#MQTT编程01--MQTT介绍_mqtt协议c#-优快云博客

C#MQTT编程02--报文格式-优快云博客

C#MQTT编程03--连接报文-优快云博客

C#MQTT编程04--订阅报文_c#mqtt订阅消息-优快云博客

C#MQTT编程05--发布报文-优快云博客

C#MQTT编程06--MQTT服务器和客户端(winform版)_c# mqtt服务器-优快云博客

C#MQTT编程07--MQTT服务器和客户端(wpf版)_c# 开发mqtt 服务器-优快云博客

C#MQTT编程08--MQTT服务器和客户端(cmd版)_c# 编写mqtt服务端-优快云博客

 C#MQTT编程09--MQTT项目实战--数据实时采集_利用mqtt 实现性能采集-优快云博客

2、应用场景

 随着物联网技术的快速发展,工业互联网应运而生,工业互联网是指将互联网和物联网技术应用于工业生产和制造过程中,实现设备、工厂、企业和供应链等各种资源的智能互联,工业互联网云平台是将工业互联网与云计算相结合的平台,旨在为制造业提供全生命周期服务。

在这里需求就是将生产现场的PLC中的实际数据上传到云端,也就是工业数据上云,而数据上云,有多种方案,但MQTT肯定是非常强大的满足这方面要求,从而我们确定了通过MQTT协议实现工业数据上云,其应用模型是:

 在这个应用场景中,云端服务器就是MQTT服务器,上位机软件就是MQTT客户端,两者通过MQTT协议实现internet数据传输,处理,存储,应用,由此我们得到技术模型如下:

在这个应用中,我们的目的就是将现场PLC中的数据上传到internet,然后另一个应用程序从云端服务器获取数据并应用。

3、开始干

有了第9节的项目应用,这个应用的话就可以通俗多了,其实质也是实时数据采集,同样需要将数据发到服务器,但技术原理是一样的,不过这里数据是来自PLC,而PLC数据来自现场实际数据。

1、云端服务器搭建

云端服务器是一个MQTT服务器,具体搭建过程较复杂  

 

2、终端客户机搭建

对PLC不熟悉的可以看另一个系列文章,当然内容有些多,如果是PLC方面的工程师就好说,这里涉及欧姆龙PLC的FINS协议,内容较复杂,需要一些过程来消化。

C#上位机与欧姆龙PLC通信


 终端客户机是一个MQTT客户端,它有两个作用:

1)采集PLC的实时数据,注意是实时的,也就是每隔一定时间读取PLC的生产数据

2)将数据上传到MQTT服务器,这就需要发布主题这个操作

案例是采集欧姆龙PLC的数据,涉及数据有温度,湿度,转速,转角,设备状态,更多的指标数据是一样的,我们都可以将它写在EXCEL文件中

 3、工业客户端搭建

工业客户端其实也是一个MQTT客户端,它从MQTT服务器订阅数据,当服务器收到数据时,主动推送给这个客户端,客户端要怎么显示加载数据,都可以,可以是winform可以是wpf也可以是web网页,或者是手机的微信小程序,总之它是从服务器订阅数据,数据是从云端来的,而不是自己从哪里获取的,本项目中wpf窗体应用程序。

4、本地测试

 可以看到,成功订阅到了数据,加载完美,帅啊。

 4、云端部署

以上程序运行只是在本地测试成功的,但本篇既然是讲云端应用,那自然是要将应用程序部署到公网上才算成功,因此这么干。

1、项目代码

服务器的代码应该部署在公网IP上,两个客户机部署在本地局域网,但他们可以连接到互联网,这个意思要搞明白。

2、公网部署云服务器

这里需要云服务器,也就是具备公网IP的服务器,通过购买阿里云,华为云,腾讯云产品就可以有自己的公网服务器了。很多开发者会写程序代码,但没有掌握程序如何部署到公网下

1)购买云服务器产品,这里是选择的阿里云服务器,并在安全组中打开端口号1869

 2)  修改服务器的IP地址

 

3)利用远程桌面功能将下面的文件复制到某个目录下

把vs生成的bin下的debug目录下的所有文件复制到自己的云服务器硬盘目录下

 

这里我是将本地程序复制到云端服务器的ServerCode目录下

4)启动云端服务器的程序

5)启动欧姆龙PLC

6)修改终端客户机程序的配置,并启动程序,连接服务器

7)连接PLC,数据成功送到公网服务器

8)修改工业客户机的配置,并启动程序

服务器收到数据

服务器推送数据到订阅者,订阅者收到数据并展示

自动更新数据数据 

5、小结

 随着数字化转型的加快和工业互联网平台的发展,工业企业云设备数据已成为一种趋势,通过云设备数据,工业企业可以更好地实现设备的智能化和自动化运行,提高生产效率和产品质量,也可以将设备数据转化为有价值的信息,为企业数字化转型提供基本的数据支持。

写作不易,图文不易,思路不易,打字不易,分享不易,多多点赞。 

欢迎伙伴们点赞,关注,收藏,抄袭,复制,分享,打赏,共同致富

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hqwest

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值