IoT设备的上云方法介绍——AliOS Things MQTT实验

简介:

本文描述STM32MCU如何通过AliOS ThingsSDK, 由MQTT协议连接到阿里云IoT平台。实验包括如下步骤:
1) AliOS Things的介绍
2) 实验准备
3) 开发环境
4) 开发流程
5) MQTT连接
6) 云端数据查看

1. AliOS Things 的介绍

AliOS Things 是 AliOS 家族旗下、面向 IoT 领域的、高可伸缩的物联网操作系统。 AliOSThings 将致力于搭建云端一体化 IoT 基础设施,具备极致性能、极简开发、云端一体、丰富组件、安全防护等关键能力,并支持终端设备连接到阿里云Link,可广泛应用在智能家居、智慧城市、工业,新出行等领域。

2. 实验准备

a) MCU开发板

使用STM32 BL475底板+MXCHIPWIFI模组的组合板,WIFI模组通过BL475的Arduino的IO接口与底板连接。网络协议栈跑在WiFi模块,主控MCU和WiFi模块之间的通信通过SPI串口协议。、

STM32BL475E是意法半导体推出的基于ARM Cortex 32bit 低功耗、多路传感芯片,片上资源丰富。


MXCHIP3080 WIFI模组是上海庆科推出的单3.3V供电的、集成Wi-Fi和Cortex-M4F MCU的嵌入式Wi-Fi模块,最高支持133M主频和256KRAM,强大的浮点运算。

b) ST-LINK驱动程序及下载工具安装

[1] 安装板上的USB ST-LINK(CN7)的驱动程序。完成后,可以在设备管理器中看到VirtualCOM Port[2];


[2] 安装ST-LINK Utility用于烧写程序;

c) 云端设备注册

在IoT Console(https://iot.console.aliyun.com/)完成注册设备,并得到设备三元组。

3.开发环境

这里给出Windows 开发环境的配置。

a) VSCode —— IDE开发环境;

b) AliOSThings Studio VS插件;

c) ARM GCC 编译工具链;

d) aos-cube项目管理工具。

4. 开发流程

a) 建立工程;

b) 修改设备三元组信息;

c) 编译

aos make mqttapp@b_l475e

d) 烧写bin文件

5. MQTT连接

a) 程序启动 ——上电自启动;

b) 配网——需要配置WIFI接入信息

STM32L475E只支持netmgr手动配网,通过串口助手向MCU发送配置命令:

netmgr connect ssid password

配置完成后,重启设备,可以看到如下输出,说明WIFI连接完成。

6. 云端数据查看

登录IoT Console,打开设备IOTPCX1,通过日志信息来检查收到的MQTT消息内容。

[1] AliOS https://github.com/alibaba/AliOS-Things
[2] STM32BL475 http://www.st.com/
[3] https://github.com/alibaba/AliOS-Things/wiki/AliOS-Things-Windows-Environment-Setup

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
6月前
|
消息中间件 API RocketMQ
消息队列 MQ产品使用合集之设备在国外收不到指令,是什么原因
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
2月前
|
人工智能 安全 物联网
|
4月前
|
存储 Ubuntu 安全
在Ubuntu 16.04上安装和保护Mosquitto MQTT消息代理的方法
在Ubuntu 16.04上安装和保护Mosquitto MQTT消息代理的方法
119 1
|
4月前
|
存储 监控 安全
使用IoT设备优化家庭生活的技术探索
【8月更文挑战第4天】IoT设备以其智能化、便捷性和高效性,正逐步成为现代家庭不可或缺的一部分。从智能照明到智能安防,从智能恒温器到智能厨房,再到智能语音助手,这些设备不仅优化了我们的家庭生活,还提升了我们的生活质量和幸福感。随着技术的不断进步和应用场景的不断拓展,我们有理由相信,未来的智能家居将会更加智能、更加人性化,为我们的生活带来更多惊喜和便利。
|
3月前
|
机器学习/深度学习 人工智能 算法
物联网(IoT)就像是一个大型派对,无数的设备都在欢快地交流着信息
【9月更文挑战第4天】在这个万物互联的时代,物联网(IoT)犹如一场盛大的派对,各类设备欢聚一堂。然而,如何让这些设备互相理解并协同工作呢?这就需要机器学习与人工智能的助力。例如,智能空调通过学习你的使用习惯来调节温度,使你更加舒适;智能安防系统则能识别异常行为并及时报警,保障家庭安全。此外,智能农业、交通等领域也因机器学习和人工智能的应用变得更加高效。下面通过一个简单的温度预测代码示例,展示机器学习在物联网中的实际应用,让我们一起感受其强大潜力。
69 0
|
4月前
|
存储 SQL JSON
【Azure IoT Hub】从设备端如何向IOT发送海量数据,可以使用从设备到IoT连接的直接传输吗?如何把IoT Hub中的数据存储到Azure Storage中?
【Azure IoT Hub】从设备端如何向IOT发送海量数据,可以使用从设备到IoT连接的直接传输吗?如何把IoT Hub中的数据存储到Azure Storage中?
|
4月前
|
消息中间件 存储 Ubuntu
简单记录一下常规安装 RabbitMQ 的方法步骤
这篇文章详细介绍了在本地环境下安装和配置RabbitMQ消息队列的过程,包括RabbitMQ的基本概念、安装步骤、不同模式的特点以及在Linux和Windows系统下的安装方法。
86 0
|
6月前
|
传感器 安全 物联网
物联网(IoT)设备的硬件选型与集成技术博文
【6月更文挑战第28天】物联网设备硬件选型与集成聚焦关键要素:功能匹配、性能稳定性、兼容扩展及成本效益。嵌入式系统、通信协议、数据处理和安全性技术确保集成效果,支撑高效、智能的IoT系统,驱动家居、城市与工业自动化变革。
|
6月前
|
消息中间件 存储 网络性能优化
消息队列 MQ产品使用合集之一个设备的离线消息的数量限制是多少
阿里云消息队列MQ(Message Queue)是一种高可用、高性能的消息中间件服务,它允许您在分布式应用的不同组件之间异步传递消息,从而实现系统解耦、流量削峰填谷以及提高系统的可扩展性和灵活性。以下是使用阿里云消息队列MQ产品的关键点和最佳实践合集。
111 1
|
7月前
|
安全 物联网 测试技术
构建未来:Android与IoT设备的无缝交互深入探索软件自动化测试的未来趋势
【5月更文挑战第30天】在物联网(IoT)技术快速发展的当下,Android系统因其开放性和广泛的用户基础成为了连接智能设备的首选平台。本文将探讨如何通过现代Android开发技术实现智能手机与IoT设备的高效、稳定连接,并分析其中的挑战和解决方案。我们将深入挖掘Android系统的底层通信机制,提出创新的交互模式,并通过实例演示如何在Android应用中集成IoT控制功能,旨在为开发者提供一套可行的指导方案,促进IoT生态系统的进一步发展。