当前位置: 代码网 > it编程>编程语言>C/C++ > 华为云MQTT使用(基于MQTT.fx和mosquitto上报温度到华为云物联网平台)

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

2024年07月31日 C/C++ 我要评论
摘自。

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开源库连接测试

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

 

连接+上报属性成功! 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com