保姆级快速搭建一套基于Linux环境下的MQTT开发程序模版(基于腾讯云IoT Explorer)...
Posted Engineer-Bruce_Yang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了保姆级快速搭建一套基于Linux环境下的MQTT开发程序模版(基于腾讯云IoT Explorer)...相关的知识,希望对你有一定的参考价值。
点击上方“嵌入式应用研究院”,选择“置顶/星标公众号”
干货福利,第一时间送达!
来源 | 嵌入式应用研究院
整理&排版 | 嵌入式应用研究院
在这里,测试的MQTT客户端环境我已经帮大家搭建好了:
https://github.com/Yangyuanxin/EasyMqttClient
关于这个项目的介绍可以参考文章:
可以直接通过git clone
下载工程,目前工程拥有两套构建机制,一套是直接通过CMake进行构建,另一套是直接通过Makefile,直接在Linux环境下编译即可。
接下来,我们直接通过腾讯云IoT Explorer
来搭建基于一个MQTT
的开发环境。
1、注册一个腾讯云账号并登录
网址:
https://cloud.tencent.com/developer
过程:略。
2、腾讯云Iot Explorer平台实例开发
(1)进入控制台
(2)选择物联网开发平台
(3)点击选择公共实例进入项目列表
(4)新建项目
以上我们创建了一个Linux_MQTT项目。
(5)点击进入 Linux_MQTT 项目,然后新建一个产品
按如图所示新建一个产品。
(6)点击进入MQTT测试
这时候我们就能看到云平台为我们生成的物模型模板,当然我们也可以在上面修改Json文件进行定制:
(7)新建设备
(8)查看设备三元组
点击进入设备:
查看产品ID、设备密钥、设备名称,这三个东西叫做腾讯云平台的三元组,我们的MQTT就需要这三个基本信息。
(9)启用设备交互开发-腾讯连连小程序面板
如果不选择其它面板进行开发,则默认就是标准模板,无需进行任何设置,点击保存即可。
(10)使用腾讯连连小程序添加设备
然后用手机打开微信搜索腾讯连连小程序,然后使用手机扫码将设备添加到腾讯连连小程序中:
3、让EasyMqttClient接入腾讯云Iot Explorer平台
3.1、编译连接参数生成工具并生成连接参数
在 ubuntu Linux 下clone腾讯云物联网平台 MQTT 连接参数生成工程:
git clone https://github.com/tencentyun/qcloud_iot_mqtt_sign.git
然后在终端执行:
修改make.settings
替换为目标编译工具:
PLATFORM_CC = gcc
PLATFORM_AR = ar
PLATFORM_OS = linux
然后执行 make 修改cmake.settings
替换为目标编译工具与系统平台:
SET(PLATFORM_CC "gcc")
SET(PLATFORM_OS "linux")
然后执行bash cmake_build.sh
接下来进入output/bin
目录下,执行qcloud-mqtt-sign
生成MQTT连接参数:
该命令后面要带三个参数,分别是上面所提到的三元组,顺序是产品ID、设备名称、设备密钥,中间要以空格作为间隔。
然后将生成的client ID
、username
和password
保存起来。
3.2、将连接参数填写到EasyMqtt的测试函数中
然后修改代码:
此部分规则参考腾讯云 MQTT 接入文档:
https://cloud.tencent.com/document/product/634/32546
3.3、添加订阅Topic,实现APP下发指令
这里使用腾讯云平台的物模型Topic、系统级Topic以及自定义Topic
我们先使用其中一个订阅的Topic,修改代码:
3.4、编译EasyMqttClient工程进行测试
使用cmake生成Makefile:
执行make编译工程:
执行测试程序:./a.out
然后在手机端和网页端可以看到设备显示在线:
当点击手机上的开关灯时,Linux终端上能够收到MQTT回调函数打印的来自腾讯云IoT Explorer平台下发的消息:
尝试修改小程序面板上的数据:
关于订阅发布以及数据模板部分可参考以下文档学习:
https://cloud.tencent.com/document/product/1081/44921
全篇完!
往期精彩
我为OpenHarmony 写代码,战“码”先锋第二期正式开启!
嵌入式Linux QT开发之如何实现获取磁盘空间大小的应用逻辑
Linux内核设备树语法 | 设备树实例解析之全网最强科普文
觉得本次分享的文章对您有帮助,随手点[在看]
并转发分享,也是对我的支持。
以上是关于保姆级快速搭建一套基于Linux环境下的MQTT开发程序模版(基于腾讯云IoT Explorer)...的主要内容,如果未能解决你的问题,请参考以下文章
保姆级快速搭建一套基于Linux环境下的MQTT开发程序模版(基于腾讯云IoT Explorer)...
ESP 保姆级教程玩转巴法云篇② ——MQTT设备云,MQTT协议下的数据通信