行业资讯

mqtt云服务器〖「教程」设备使用华为云接入MQTT上报数据〗

2025-02-06 11:40:41 行业资讯 浏览:24次


哇塞!这也太让人吃惊了吧!今天由我来给大家分享一些关于mqtt云服务器〖「教程」设备使用华为云接入MQTT上报数据〗方面的知识吧、

1、第一步:开通MQTT服务,完成华为云账号注册并实名认证。进入华为云物联网平台的管理控制台,选择服务套餐,如开通免费单元。创建MQTT实例后,即可获取MQTT通信的接入地址和端口号。第二步:在控制台的“设备接入”页面创建设备,查看接入信息并获取MQTT通信要素。

2、MQTT用户属性设置将ESP8266设为发布者角色。配置MQTTBroker(华为云IoT平台的MQTT连接服务)的连接参数,如设备ID、密码等。这些信息在IoT平台设备管理页面可获取。3连接MQTT代理使用AT指令建立与MQTT代理的连接。参数包括MQTTBroker地址、端口号等。

3、在Package.Swift中添加huaweicloud-iot-device-sdk-swift作为依赖项,可以从Github仓库中获取最新的commitId使用swiftsdk的最佳实践进行设备的连接和上报消息在上述代码中,我们首先导入了必要的库,然后初始化**DeviceClient**对象,并连接到华为云IoTDA服务。

4、MQTT协议是广泛应用的物联网协议,使用测试MQTT协议需要MQTT的代理。有两种方法使用MQTT服务,一是租用现成的MQTT服务器,如阿里云,百度云,华为云等公用的云平台提供的MQTT服务,使用公用的MQTT服务器的好处是省事,但如果仅仅用于测试学习还需要注册帐号,灵活性差些,有的平台还需要付费。

5、首先,打开Wireshark,选择对应网卡,进入数据抓取界面。接着,利用过滤功能,如支持的逻辑运算符和代码补全,对报文进行精准筛选。例如,可以通过指定目标IP和端口过滤出关键信息,如NA111设备在mqtt连接华为云时,通过对比首次订阅报文中的messageidentifier,发现设备发送的是0,而正确的是1,从而定位问题。

PLC利用函数块连接MQTT服务器

在使用PLC连接MQTT服务器时,首先需要搭建博图开发环境,熟悉西门子SLC编程语言,利用函数块连接MQTT服务器,通常可从西门子全球技术支持中心下载MQTT连接实例。在“国际版”下载实例中,详细介绍了如何利用“SIMATIC控制器作为MQTT客户端”的过程。

连接:首先将物通博联MQTT网关与现场PLC设备连接,确保数据传输链路的畅通。配置:随后进行网关的上网与采集参数配置,为数据上传做好基础准备。适配:在网关中输入移动OneNET平台的云服务地址,完成与OneNET平台的适配与连接。

通过采用IGT-DSER智能网关,利用免费MQTT服务端(Broker:broker.hivemq.com:1883)与MQTT客户端进行双向通讯。无需为PLC和网关进行编程或二次开发,仅需配置IP地址与PLC数据地址即可。智能网关采用MODBUSTCP协议与PLC通讯,采用地址区域代码+寄存器地址模式,如HR0对应400001。

在现场增加一个modbus转mqtt的网关,以mqtt方式建立设备连接,PLC协议转换网关。用户可以通过这个嵌入式网关硬件将各种品牌的PLC直接连接到MQTT服务器。我们将此嵌入式硬件称为MQTT网关。用户不再需要单独的做PLC协议的转换解析,大大降低了成本和应用难度。

MQTT报文详解

〖壹〗、MQTT协议报文格式解析:MQTT控制报文结构由固定报头、可变报头及有效载荷组成。固定报头由两个字节构成,第一个字节包含协议类型与标志位,第二个字节表示报文剩余长度。可变报头长度不固定,根据协议需求而定。有效载荷为控制报文之外的有效信息,根据协议需求而变化。

〖贰〗、MQTT协议基于TCP协议运行,直接使用TCP服务器进行通信无需MQTT服务器。只要服务器正确回复客户端发起的请求连接报文和订阅报文,普通TCP服务器就能接收并处理客户端发布的消息,且能轻松抓取设备发送的数据包。类似抓包工具能实现此功能,但无法直观展示整个过程。

〖叁〗、MQTT的关键特性包括三种服务质量(QoS0-2),保证消息的可靠传输。报文结构由固定报头、可变报头和负载数据组成,最大理论报文大小可达256M。固定报头中包含了消息类型、重复标记和质量等级等信息,可变报头则包括协议名称、版本、连接标志等,其中遗嘱机制在客户端异常断开时起到通知作用。

分享到这结束了,希望上面分享对大家有所帮助