华为云MQTT使用(基于MQTT.fx和mosquitto上报温度到华为云物联网平台)

1.MQTT介绍

1.1 MQTT协议介绍

摘自菜鸟教程MQTT入门介绍 

1.1.1 简述

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。

MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。

1.1.2 mqtt实现方式

实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中,MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。

MQTT传输的消息分为:主题(Topic)和负载(payload)两部分:

(1)Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload);
(2)payload,可以理解为消息的内容,是指订阅者具体要使用的内容。

1.1.3 mqtt客户端

一个使用MQTT协议的应用程序或者设备,它总是建立到服务器的网络连接。客户端可以:

  • (1)发布其他客户端可能会订阅的信息;
  • (2)订阅其它客户端发布的消息;
  • (3)退订或删除应用程序的消息;
  • (4)断开与服务器连接。

1.1.4 mqtt服务器端 

MQTT服务器以称为"消息代理"(Broker),可以是一个应用程序或一台设备。它是位于消息发布者和订阅者之间,它可以:

  • (1)接受来自客户的网络连接;
  • (2)接受客户发布的应用信息;
  • (3)处理来自客户端的订阅和退订请求;
  • (4)向订阅的客户转发应用程序消息。

2. 华为云MQTT使用

2.1 华为云平台注册

点击注册

注册成功后,进行实名认证

回到首页,点击控制台

2.2 华为云创建模型

搜索“设备接入iotDA”,并点击进入

创建产品

创建产品

创建成功后,会提示创建产品成功,点击“确定”即可 

 

点击“详情 ”

点击“自定义模型” 

 添加服务

添加属性

添加命令

新增参数

服务,属性,命令添加成功后的界面

点击所有设备,注册设备

 单设备注册

 

点击设备详情

查看设备MQTT参数

 

建议将所有参数放在文本备用,像下面这样

查看Topic主题

建议将主题参数放在文本备用 ,如下

 

2.3 MQTT.fx测试连接

打开MQTT.fx

 

设备消息上报

设备属性上报

华为云请求示例可参考以下连接

https://support.huaweicloud.com/devg-iothub/iot_01_2127.html#ZH-CN_TOPIC_0240834853__zh-cn_topic_0251997880_li365284516112

属性上传成功

 

平台下发消息

 

 

平台命令下发

 

2.4 mosquitto开源库连接测试

代码已编辑好,需要的私聊

 

连接+上报属性成功! 

  • 30
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
华为云 MQTT(消息队列遥测传输)是华为云提供的一种消息传输协议,旨在简化物联网设备与云端的通信。MQTT采用发布-订阅模式,设备可以通过订阅特定的主题来接收来自云端或其他设备发布的消息,也可以通过发布消息来将数据发送到云端。 使用华为云MQTT可以实现以下功能: 1. 设备接入与认证:物联网设备可以连接到华为云,并通过认证机制保障通信的安全性。设备可以使用MQTT客户端连接到云端,同时需要提供认证信息以确保身份合法。 2. 消息传输:设备可以通过订阅主题接收来自云端或其他设备发布的消息。可以根据实际需要订阅不同的主题,以便获取感兴趣的消息。同时,设备也可以通过发布消息将数据发送到云端,实现设备与云端之间的双向通信。 3. 消息质量保证:MQTT在传输过程中提供了三种不同级别的消息质量保证,包括至多一次、至少一次和刚好一次。这样可以确保消息能够可靠地传递到接收方,避免数据丢失或重复传输。 4. 低功耗通信:MQTT协议具有较小的消息头,传输的消息量较小,可以降低设备的能耗,延长设备电池的使用寿命。此外,MQTT还提供了心跳机制,设备可以定期向云端发送心跳消息以保持连接状态。 5. 水平扩展:华为云MQTT支持高可用性和水平扩展,可以轻松应对海量设备的接入需求。使用华为云提供的云服务,可以弹性伸缩的方式部署和管理MQTT集群,确保系统的可靠性和稳定性。 总之,华为云MQTT提供了一种可靠、高效、安全的物联网设备与云端通信解决方案,适用于各种物联网场景,包括智能家居、智能城市、工业自动化等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值