完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
MQTT开发——连接阿里云【项目复现】本文基于文档中提供的项目教程,复现ELF 1连接阿里云物联网平台,进行MQTT开发;记录ELF1 个人物联网开发的过程,可以提供参考; MQTT 简述MQTT(消息队列遥测传输)是ISO标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在 TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个消息中间件。MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。 MQTT的特点包括:
项目部署环境开发板:ELF1 开发环境:window10+VMware+ubuntu 18.04 交叉编译环境:arm-poky-linux-gnueabi-gcc 阿里云 平台部署没有账号的可以进行一个简单的登录并实名认证: 阿里云登陆页面:https://account.aliyun.com/login/login.htm 进行如下操作: 点击“管理控制台”,进入: 进行新建产品,进行设置,下边参数使用默认参数即可: 查看我们的产品,自定义topic,进行如下操作: 添加设备,添加到我们的产品下,进行命名: 以上,我们的产品(项目),和设备就加入成功了,这时候需要获取三元组,即:ProductKey,DeviceName,DeviceSecret,和MQTT连接参数: 直接查看设备信息就可以看到所有的信息了: 这里建议把数据都按以下格式整理,方便我们后面使用:
然后就可以进行发布操作: 我们是基于阿里云的SDK进行案例开发的,所以获取一手阿里云提供的SDK: 我们会获得一个压缩包,解压做自己的工作区或者桌面就行,命名就为:“LinkSDK” 以上,我们阿里云端的部署就完成了 编译,运行修改源码接下来,要修改部分我们的源码: 将刚刚记录的三元组,MQTT连接参数填入我们的代码: 位置:/LinkSDK/demos/mqtt-rrpc-demo.c 往下配置我们的topic功能,大概在245行开始: 修改Makefile: 位置:/LinkSDK/Makefile 我们使用交叉编译环境,注释即可: 开发板编译 拷贝将“LinkSDK”文件夹拉入我们的编译环境: 虚拟机 | linux环境即可; 环境导入:
官方教程中提供了一个报错的可能,我没遇到:
可执行文件位于:/LinkSDK/output/mqtt-rrpc-demo 拷贝文件到我们的/home/root 下:
连接开发板,本文使用的是SSH连接方式: 不了解可以看笔者的前文: 在调试前,我们要先测试我们的网络是否可用,是否连接了外网:
开发板连接不上外网的可以参考前文: 运行我们的程序
运行成功,服务器也受到连接回报; 后续会更新基于MQTT自定义数据格式的开发。 如果需要参考更多资料,请参考ELF 1官方文档;以上是本人进行部署的过程; |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
【飞凌嵌入式OK3588J-C开发板体验】OK3588J-C开发板开箱评测
2571 浏览 1 评论
[技术] 【飞凌嵌入式OK3576-C开发板体验】llama2.c部署
7152 浏览 0 评论
7618 浏览 0 评论
【飞凌嵌入式OK3576-C开发板体验】ssh连接与文件传输
7547 浏览 0 评论
8969 浏览 0 评论
6808浏览 2评论
11210浏览 1评论
5299浏览 1评论
85359浏览 1评论
【飞凌RK3568开发板试用体验】12-USB摄像头AI物品识别分类代码实现
2314浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 21:03 , Processed in 0.820593 second(s), Total 39, Slave 30 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号