【物联网】手把手完整实现STM32+ESP8266+MQTT+阿里云+APP应用——第3节-云产品流转配置

🌟博主领域:嵌入式领域&人工智能&软件开发
本节目标:本节目标是进行云产品流转配置为后面实际的手机APP的接入做铺垫。云产品流转配置的目的是为了后面能够让后面实际做出来的手机APP可以控制STM32/MCU,STM32/MCU可以将数据发给实际的手机APP。
配置步骤主要分为三步:1.创建数据源;2.创建数据目的;3.创建解析器
需要注意:手机APP数据传至STM32的数据源是手机APP,数据目的是STM32,反过来就是STM32数据传至手机APP的数据源是STM32,数据目的是手机APP。即需要来回配置两次。
其余章节见本专栏:https://blog.csdn.net/m0_61712829/category_12545281.html
1.手机APP发送指令至STM32云流转配置
实现为后续做铺垫:实际的手机APP将数据发给阿里云设备APP-v0,阿里云设备APP-v0就流转给阿里云设备mqtt_stm32,然后阿里云设备mqtt_stm32将数据给ESP8266,ESP8266再将数据发给STM32设备。
首先新建设备APP-v0,选择当前的产品,填入名称及备注。需要注意:新建的设备APP-v0为阿里云平台流转时用到的设备,并不是实际上的手机APP。

1.创建数据源
首先点击消息转发一栏,点击云产品流转,点击创建解析器,输入解析器名称及描述,点击确定。需要注意:当前是手机APP发送指令至STM32的解析器配置,所以解析器名称是APP-TO-MCU

创建解析器成功后,点击关联数据源,再点击创建数据源。

点击创建数据源后,输入数据源名称及描述fromAPP。需要注意:当前创建的数据源是来自于手机APP

创建完数据源后,选择刚刚创建的数据源fromAPP,点击确定。

然后在APP-TO-MCU处点击查看,接下来进行Topic的配置

点击添加Topic,选产品,选APP-v0,选user/update,然后点击确定。有关于Topic的解释见本文末尾。需要注意:此时的设备为APP-v0(即你在阿里云平台创建的手机APP设备对应的名称)

创建成功Topic后,结果如下

2.创建数据目的
首先点云产品流转一栏,点击数据目的,点击关联数据目的。

然后点击创建数据目的。需要注意:当前创建的数据目的是STM32/MCU

创建数据目的,写上数据目的名称及描述toMCU,选择自己创建的产品,然后点击确定。

然后关联数据目的选择刚创建的数据目的fromMCU,点击确定

创建成功如下所示。注意:此处的数据目的ID与后面填写解析器脚本时的ID保持一致。2024年阿里云已自动帮我们填写了数据目的ID,此处可不需注意(多讲了一下ID出处)

3.创建解析器
首先点击解析器脚本,查看是否是自己的数据目的ID(可省略)、在括号内填写设备mqtt_stm32的productKey、deviceName(设备mqtt_stm32即为你在阿里云创建的STM32设备名称)

需要注意,这里的productKey、deviceName为设备mqtt_stm32的。点击设备一栏,然后点击DeviceSecret处查看设备mqtt_stm32的 productKey、deviceName

最终修改为如下。填入设备mqtt_stm32的 productKey、deviceName

最后,返回云产品流转处一栏,点击启动,确认启动,最后显示为运行中。即创建手机APP发送指令至STM32云流转成功。

以上就实现了实际的手机APP发送数据到我们创建的阿里云设备APP-v0,然后阿里云设备APP-v0会将数据发送到我们创建的阿里云设备mqtt_stm32,然后阿里云设备mqtt_stm32会将数据发送到我们实际的板子上
接下来就是反过来,stm32将数据发送给esp8266,然后esp8266再将数据发给阿里云的设备mqtt_stm32,然后阿里云的设备mqtt_stm32再将数据发送给阿里云的设备APP-v0,然后阿里云的设备APP-v0再将数据发给我们实际的手机APP上
2.STM32发送数据至手机APP云流转配置
同理,接下来反过来再建一条路径
1.创建数据源
首先创建解析器,输入名称及描述,点击确定。需要注意:当前是STM32发送数据至手机APP云流转配置,所以解析器名称是MCU-TO-APP

然后点击关联数据源,进行创建数据源

创建数据源,输入数据源名称以及描述fromMCU,点击确定

选择数据源为我们刚创建的数据源fromMCU,点击确定

然后在数据源中点击查看,进行添加Topic。

然后点击添加Topic,选择自己的产品、设备,选择user/update,点击确定。需要注意:此时的设备为mqtt_stm32(即你在阿里云平台创建的STM32对应的设备名称)

2.创建数据目的
选择数据目的,点击关联数据目的

点击创建数据目的,输入数据目的名称及描述toAPP,选择自己创建的产品,点击确定

然后选择刚刚创建的数据目的toAPP,点击确定,创建成功数据目的

3.创建解析器
需要注意:在括号内填写设备APP-v0的productKey、deviceName。查看方式为:点击设备一栏,在DeviceSecret处点击查看设备APP-v0的productKey、deviceName,一键复制

然后再返回云产品流转的解析器脚本处,将设备APP-v0的productKey、deviceName填入相应的括号内,查看ID与解析器ID是否保持一致(可省略)。然后点击发布。

然后点击启动,确定启动该解析器。

以上就配置好了。为后续让实际的手机APP可以控制STM32/MCU,STM32/MCU可以将数据发给实际的手机APP做好了铺垫。
有关Topic解释如下:
- MQTT(Message Queuing Telemetry Transport)协议是一种轻量级的消息传输协议,常用于物联网设备间的通信。在MQTT中,Topic用于定义消息传输的通道和路径。
- 设备通过将消息发布到一个特定的Topic,将消息发送给物联网平台。物联网平台会根据订阅规则,将消息发送给订阅了该Topic的设备。这种发布/订阅模式使得设备可以方便地进行异步通信,消除了直接点对点通信的限制。
- 为了方便海量设备基于Topic进行通信,并简化授权操作,物联网平台定义了产品Topic类和设备Topic。
- 产品Topic类:每个产品都有一个唯一的产品Topic类,用于定义该产品的消息发布和订阅的前缀。产品Topic类通常包含产品的唯一标识符和产品所属的组织信息。
- 设备Topic:每个设备都有一个唯一的设备Topic,用于定义该设备的消息发布和订阅的完整路径。设备Topic由产品Topic类和设备的唯一标识符组成,形式为"{产品Topic类}/{设备唯一标识符}"。
- 通过使用产品Topic类和设备Topic,设备可以方便地根据自己的标识和所属产品进行消息传输,同时也确保了消息的安全性和权限控制。
- 总结起来,MQTT协议使用Topic来定义消息传输的通道和路径,设备通过Topic将消息发布到物联网平台,物联网平台根据订阅规则将消息发送给订阅Topic的设备。为了方便海量设备基于Topic进行通信,简化授权操作,物联网平台定义了产品Topic类和设备Topic。

🌟个人主页:阿齐Archie
🌟个人vx公众呺:阿齐Archie
相关文章:
【物联网】手把手完整实现STM32+ESP8266+MQTT+阿里云+APP应用——第3节-云产品流转配置
🌟博主领域:嵌入式领域&人工智能&软件开发 本节目标:本节目标是进行云产品流转配置为后面实际的手机APP的接入做铺垫。云产品流转配置的目的是为了后面能够让后面实际做出来的手机APP可以控制STM32/MCU,STM32/MCU可以将数…...
Spring Cloud Config相关问题及答案(2024)
1、什么是 Spring Cloud Config,它解决了哪些问题? Spring Cloud Config 是一个为微服务架构提供集中化外部配置支持的项目。它是构建在 Spring Cloud 生态系统之上,利用 Spring Boot 的开发便利性,简化了分布式系统中的配置管理…...
【Azure 架构师学习笔记】- Azure Databricks (4) - 使用Azure Key Vault 管理ADB Secret
本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Databricks】系列。 接上文 【Azure 架构师学习笔记】- Azure Databricks (3) - 再次认识DataBricks 前言 Azure Databricks有access token,是具有ADB内部最高权限的token。在云环境中这些高级别权限的sec…...
[每周一更]-(第50期):Go的垃圾回收GC
参考文章: https://juejin.cn/post/7111515970669117447https://draveness.me/golang/docs/part3-runtime/ch07-memory/golang-garbage-collector/https://colobu.com/2022/07/16/A-Guide-to-the-Go-Garbage-Collector/https://liangyaopei.github.io/2021/01/02/g…...
【嵌入式学习笔记-01】什么是UC,操作系统历史介绍,计算机系统分层,环境变量(PATH),错误
【嵌入式学习笔记】什么是UC,操作系统历史介绍,计算机系统分层,环境变量(PATH),错误 文章目录 什么是UC?计算机系统分层什么是操作系统? 环境变量什么是环境变量?环境变量的添加&am…...
【动态规划】LeetCode-10. 正则表达式匹配
10. 正则表达式匹配。 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。 ‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。 …...
lenovo联想拯救者8.8英寸掌上游戏机Legion Go 8APU1(83E1)原装出厂Windows11预装系统
链接:https://pan.baidu.com/s/1d586XWXcAWVxlLyV2Oku7Q?pwdd74t 提取码:d74t 系统自带所有驱动、出厂主题壁纸、Office办公软件、联想电脑管家等预装程序 所需要工具:16G或以上的U盘 文件格式:ISO 文件大小:…...
经典目标检测YOLO系列(一)复现YOLOV1(4)VOC2007数据集的读取及预处理
经典目标检测YOLO系列(一)复现YOLOV1(4)VOC2007数据集的读取及预处理 之前,我们依据《YOLO目标检测》(ISBN:9787115627094)一书,提出了新的YOLOV1架构,并解决前向推理过程中的两个问题,继续按照此书进行YOLOV1的复现。 经典目标检…...
Android Studio xml布局代码补全功能失效问题
这里写目录标题 前言:问题描述原因分析:解决方案:1.更新 Android Studio 版本2.原版本解决XML补全失效 小结 前言: 在开发过程中,你可能遇到很多奇奇怪怪的问题。Android Studio 编译器出现问题也是常有的事情&#x…...
算法每日一题:队列中可以看到的人数 | 单调栈
大家好,我是星恒 今天是一道困难题,他的题解比较好理解,但是不好想出来,接下来就让我带大家来捋一捋这道题的思路,以及他有什么特征 题目:leetcode 1944有 n 个人排成一个队列,从左到右 编号为 …...
报表控件Stimulsoft 2023回顾:都做了哪些产品的改变?
在2023年过去一年中,报表控件Stimulsoft 针各类控件都做了重大改变,其中新增了某些产品、同时加强了很多产品的性能和UI设计,更加符合开发者需求,下面就跟随小编一起来回顾,具体都有哪些↓↓↓ Stimulsoft Ultimate &…...
Mybatis缓存实现方式
文章目录 装饰器模式Cache 接口及核心实现Cache 接口装饰器1. BlockingCache2. FifoCache3. LruCache4. SoftCache5. WeakCache 小结 缓存是优化数据库性能的常用手段之一,我们在实践中经常使用的是 Memcached、Redis 等外部缓存组件,很多持久化框架提供…...
C#用StringBuilder高效处理字符串
目录 一、背景 二、使用StringBuilder便捷、高效地操作字符串 三、实例 1.源码 2.生成效果 四、实例中知识点 1.StringBuilder 构造函数 (1)定义 (2)重载 (3)StringBuilder() (4&…...
python开发案例教程-清华大学出版社(张基温)答案(4.2)
目录 练习 4.2 1. 代码分析题 2. 程序设计题 练习 4.2 1. 代码分析题 阅读下面的代码,给出输出结果。 (1) class A:def __init__(self,a,b,c):self.xabca A(3,5,7);b getattr(a,x);setattr(a,x,b3);print(a.x)18 (2&…...
【MATLAB】【数字信号处理】线性卷积和抽样定理
已知有限长序列:xk1,2,1,1,0,-3, hk[1,-1,1] , 计算离散卷积和ykxk*h(k) 。 程序如下: function [t,x] My_conv(x1,x2,t1,t2,dt) %文件名与函数名对应 %自写的卷积函数 x conv(x1,x2)*dt; t0 t1(1) t2(1); L length(x1) length(x2)-2; t t0:dt…...
什么是 MVVM ?
课堂笔记 什么是 MVVM ? MVVM 是一种架构模式,它最初是由微软的两位工程师在 2005 年的时候所提出的。 Model:Model代表的是你的数据View:视图,直接和用户打交道的ViewModel:ViewModel 是 View 和 Model…...
Redis(一)
1、redis Redis是一个完全开源免费的高性能(NOSQL)的key-value数据库。它遵守BSD协议,使用ANSI C语言编写,并支持网络和持久化。Redis拥有极高的性能,每秒可以进行11万次的读取操作和8.1万次的写入操作。它支持丰富的数…...
自动驾驶预测-决策-规划-控制学习(1):自动驾驶框架、硬件、软件概述
文章目录 前言:无人驾驶分级一、不同level的无人驾驶实例分析1.L2级别2.L3级别3.L4级别①如何在减少成本的情况下,实现类似全方位高精度的感知呢?②路侧终归是辅助,主车的智能才是重中之重:融合深度学习 二、无人驾驶的…...
SSM建材商城网站----计算机毕业设计
项目介绍 本项目分为前后台,前台为普通用户登录,后台为管理员登录; 管理员角色包含以下功能: 管理员登录,管理员管理,注册用户管理,新闻公告管理,建材类型管理,配货点管理,建材商品管理,建材订单管理,建材评价管理等功能。 用…...
js逆向第9例:猿人学第2题-js混淆-动态cookie1
题目2:提取全部5页发布日热度的值,计算所有值的加和,并提交答案 (感谢蔡老板为本题提供混淆方案) 既然题目已经给出了cookie问题,那就从cookie入手,控制台找到数据请求地址 可以看到如下加密字符串m类似md5,后面跟着时间戳 m=45cc41dcdb15159ebb50564635f8e362|1704301…...
目前专业的LED数码管屏厂商哪家好
在现代显示技术领域,LED数码管屏因其高亮度、低功耗和长寿命等特点,广泛应用于各种电子设备中。选择一家专业的LED数码管屏厂商至关重要。本文将为您推荐几家市场上表现突出的厂商,并进行详细对比。1. 杭州斡能电子有限公司公司简介ÿ…...
EDK II代码格式化集成指南:IDE集成步骤详解
EDK II代码格式化集成指南:IDE集成步骤详解 【免费下载链接】edk2 EDK II 项目地址: https://gitcode.com/gh_mirrors/ed/edk2 EDK II作为现代UEFI固件开发的核心框架,其代码质量直接影响到固件的稳定性和安全性。本文将详细介绍如何将EDK II代码…...
Cadence原理图网表导入Allegro PCB的5个关键步骤与避坑指南(2024最新版)
Cadence原理图网表导入Allegro PCB的5个关键步骤与避坑指南(2024最新版) 在电子设计自动化(EDA)领域,Cadence和Allegro的协同工作流程是硬件工程师日常开发的核心环节。网表作为连接原理图设计与PCB布局的桥梁…...
手把手教你windows下如何部署copaw
前言: 本文内容主要讲解通过手工部署python并使用pip安装部署copaw,在官网有一键部署脚本等等教程,都很方便,但为什么作者要通过手工部署python环境,原因很简单,解决环境冲突的问题,通过conda能…...
HarmonyOS6 ArkTS List 设置编辑模式
文章目录一、功能概述二、官方核心知识点1. 编辑模式实现原理2. 列表数据驱动3. 列表项操作三、完整可运行代码四、代码功能详解1. 编辑模式状态控制2. 编辑按钮切换3. 列表项动态显示删除按钮4. 删除列表项5. LazyForEach 高性能渲染五、运行效果总结一、功能概述 List 编辑模…...
BiliRoamingX集成开发:Android 14兼容性优化与高级模块注入技术解析
BiliRoamingX集成开发:Android 14兼容性优化与高级模块注入技术解析 【免费下载链接】BiliRoamingX-integrations BiliRoamingX integrations powered by revanced. 项目地址: https://gitcode.com/gh_mirrors/bi/BiliRoamingX-integrations BiliRoamingX作为…...
技能组合玩法:OpenClaw串联百川2-13B-4bits与Stable Diffusion技能
技能组合玩法:OpenClaw串联百川2-13B-4bits与Stable Diffusion技能 1. 为什么需要技能组合? 去年我运营技术博客时,最头疼的就是内容生产的全流程管理。写一篇文章需要经历选题构思、文案撰写、配图制作、格式调整、发布上线等多个环节。每…...
Redis管理效率革命:AnotherRedisDesktopManager实战指南
Redis管理效率革命:AnotherRedisDesktopManager实战指南 【免费下载链接】AnotherRedisDesktopManager qishibo/AnotherRedisDesktopManager: Another Redis Desktop Manager 是一款跨平台的Redis桌面管理工具,提供图形用户界面,支持连接到Re…...
Python AI 用例工具部署踩坑实录:Docker镜像体积暴增300%、GPU显存泄漏、模型热加载失败的5个根因与秒级修复方案
第一章:Python AI 用例工具部署的典型失败图谱在真实生产环境中,Python AI 工具链(如 LangChain、LlamaIndex、FastAPI 封装的推理服务)的部署失败往往并非源于模型能力缺陷,而是由基础设施、依赖冲突与配置漂移引发的…...
PaddleOCR-VL-1.5:0.9B VLM实现文档解析新SOTA
PaddleOCR-VL-1.5:0.9B VLM实现文档解析新SOTA 【免费下载链接】PaddleOCR-VL-1.5-GGUF 项目地址: https://ai.gitcode.com/paddlepaddle/PaddleOCR-VL-1.5-GGUF 导语:百度飞桨团队推出PaddleOCR-VL-1.5,以0.9B参数量的轻量化视觉语言…...
