文章目录

  • 一、前言
    • 1.1 项目介绍
      • 【1】项目开发背景
      • 【2】设计实现的功能
      • 【3】项目硬件模块组成
      • 【4】设计意义
      • 【5】国内外研究现状
      • 【6】摘要
    • 1.2 设计思路
    • 1.3 系统功能总结
    • 1.4 开发工具的选择
      • 【1】设备端开发
      • 【2】上位机开发
    • 1.5 参考文献
    • 1.6 系统框架图
    • 1.7 系统原理图
    • 1.8 实物图
    • 1.9 模块的技术详情介绍
      • 【1】ESP8266-WIFI模块
      • 【2】MQTT协议
      • 【3】lora模块
      • 【4】SHT30温湿度模块
  • 二、硬件选型
    • 2.1 STM32开发板(买2份)
    • 2.2 USB下载线(买2份)
    • 2.3 ESP8266 WIFI
    • 2.4 SHT30温湿度模块
    • 2.5 PCB板(买2份)
    • 2.6 蜂鸣器模块
    • 2.7 电源扩展板(买2份)
    • 2.8 母对母杜邦线(买2份)
    • 2.9 OLED显示屏(买2份)
    • 2.10 LoRa模块(节点通信)
    • 2.11 红外接收与发送头
    • 2.12 绿色LED灯
  • 三、部署华为云物联网平台
    • 3.1 物联网平台介绍
    • 3.2 开通物联网服务
    • 3.3 创建产品
      • (1)创建产品
      • (2)填写产品信息
      • (3)产品创建成功
      • (4)添加自定义模型
          • 【1】创建服务ID
          • 【2】Ctrl_SW 充电开关 布尔类型
          • 【3】Charge 当前电量 浮点数
          • 【4】StatChg 充电状态 布尔类型
          • 【5】SHT30_T 环境温度 浮点数
          • 【6】SHT30_H 环境湿度 浮点数
          • 【7】BlkStat 遮挡状态 布尔类型
      • (5)创建完成
    • 3.4 添加设备
      • (1)注册设备
      • (2)根据自己的设备填写
      • (3)保存设备信息
      • (4)设备创建完成
      • (5)设备详情
    • 3.5 MQTT协议主题订阅与发布
      • (1)MQTT协议介绍
      • (2)华为云平台MQTT协议使用限制
      • (3)主题订阅格式
      • (4)主题发布格式
    • 3.6 MQTT三元组
      • (1)MQTT服务器地址
      • (2)生成MQTT三元组
    • 3.7 模拟设备登录测试
      • (1)填入登录信息
      • (2)打开网页查看
      • (3)MQTT登录测试参数总结
    • 3.8 项目凭证
    • 3.9 创建IAM账户
    • 3.10 获取影子数据
    • 3.11 修改设备属性
  • 四、Qt开发入门与环境搭建
    • 4.1 Qt是什么?
    • 4.2 Qt版本介绍
    • 4.3 Qt开发环境安装
    • 4.4 开发第一个QT程序
    • 4.5 调试输出
    • 4.6 QT Creator常用的快捷键
    • 4.7 QT帮助文档
    • 4.8 UI设计师使用
    • 4.9 按钮控件组
    • 4.10 布局控件组
    • 4.11 基本布局控件
    • 4.12 UI设计师的布局功能
  • 五、上位机开发
    • 5.1 Qt开发环境安装
    • 5.2 新建上位机工程
    • 5.3 切换编译器
    • 5.4 编译测试功能
    • 5.5 设计UI界面与工程配置
      • 【1】打开UI文件
      • 【2】开始设计界面
    • 5.6 设计代码
      • 【1】获取token
      • 【2】获取影子数据
        • (1)获取当前时间并更新界面上的时间标签
        • (2)设置请求URL和初始化网络请求
        • (3)构造API请求URL
        • (4)设置请求的头部信息
        • (5)设置请求URL并发送请求
        • (6)总结
      • 【3】解析数据更新界面
    • 5.5 编译Windows上位机
    • 5.6 配置Android环境
      • 【1】选择Android编译器
      • 【2】创建Android配置文件
      • 【3】配置Android图标与名称
      • 【4】编译Android上位机
    • 5.7 设备仿真调试
  • 六、 ESP8266-WIFI模块调试过程
    • 6.1 接电脑USB口调试
    • 6.2 ESP8266的STA+TCP客户端配置
  • 七、STM32代码设计【激光发射端】
    • 7.1 硬件连线说明
    • 7.2 硬件原理图
    • 7.3 硬件组装过程
    • 7.4 硬件实物图
    • 7.5 KEIL工程截图
    • 7.6 程序下载
    • 7.7 程序正常运行效果
    • 7.8 取模软件的使用
    • 7.9 WIIF模块与服务器通信
      • 【1】代码解释
      • 【2】总结
    • 7.10 硬件初始化
      • 【1】代码解释
      • 【2】总结
    • 7.11 WIFI模块-初始化
      • 【1】代码解释
      • 【2】总结
    • 7.12 数据采集与显示
      • 【1】代码解释
        • (1)**定时操作(轮询)**
        • (2)**激光数据发送**
        • (3)**OLED 显示屏更新:显示环境数据和充电状态**
        • (4)**上传数据到 MQTT 云端服务器**
      • 【2】总结
    • 7.15 按键代码
      • 【1】代码解释
        • (1)**按键扫描**
        • (2)**控制充电开关**
      • 【2】逻辑总结
    • 7.16 上位机命令处理
        • 【1】**接收数据处理**
        • 【2】**接收数据的步骤详解**
        • 【3】**上传数据至云服务器**
        • 【4】**总结**
    • 7.17 LoRa模块从机上传的命令处理
      • 【1】**接收数据处理**
      • 【2】**代码解析**
        • 2.1 **接收数据标志**
        • 2.2 **清空缓冲区并调试输出**
        • 2.3 **字符串解析**
        • 2.4 **去掉 `#`,并解析字段**
        • 2.5 **调试输出解析结果**
        • 2.6 **错误处理**
        • 2.7 **重置接收标志和计数器**
      • 【3】**总结**
  • 八、STM32代码设计【激光接收端】
    • 8.1 硬件连线说明
    • 8.2 硬件原理图
    • 8.3 硬件组装过程
    • 8.4 硬件实物图
    • 8.5 KEIL工程截图
    • 8.6 程序下载
    • 8.7 程序正常运行效果
    • 8.8 取模软件的使用
    • 8.9 代码含义解释
      • 【1】**全局变量及定义**
      • 【2】**硬件初始化**
      • 【3】**主要控制流程**
        • 3.1 按键操作和充电开关控制
        • 3.2 温湿度数据采集
        • 3.3 OLED显示更新
        • 3.4 激光接收信号处理
        • 3.5 LoRa模块通信
        • 3.6 充电电量管理
        • 3.7 OLED显示与更新
      • 【4】**定时器与延时管理**
  • 八、使用STM32代码的流程以及注意事项
    • 8.1 第1步
    • 8.2 第2步
    • 8.3 第3步
  • 九、代码移植更改
    • 【1】STM32代码
    • 【2】Qt上位机代码
  • 十、完整STM32代码
    • 10.1 激光发射设备
    • 10.2 激光接收设备
  • 任务书
        • 一、课题名称
        • 二、课题背景与研究意义
        • 三、设计目标
        • 四、研究内容与任务
        • 五、技术路线与方法
        • 六、预期成果
        • 七、进度安排
        • 八、考核要求与评价标准
  • 开题报告
        • 一、课题名称
        • 二、课题背景与意义
        • 三、研究目标与任务
        • 四、研究内容与方法
        • 五、技术路线与实现方法
        • 六、预期成果
        • 七、计划进度安排
        • 八、参考文献
      • 九、结论

基于STM32设计的激光充电控制系统(华为云IOT)

一、前言

1.1 项目介绍

【1】项目开发背景

随着科技的不断发展,无线充电技术在各类电子设备中得到了广泛应用,尤其是在智能手机、穿戴设备和物联网设备等领域。传统的无线充电技术主要采用电磁感应原理,而激光无线充电技术作为一种新兴的无线电力传输方式,具有更高的能量传输效率和更长的传输距离。因此,激光无线充电技术逐渐引起了科研人员和工程师的广泛关注,并成为未来无线充电技术的重要发展方向。

在激光无线充电系统中,激光发射和接收模块是关键组件,能够将电能通过激光束传输到设备中进行充电。与传统的充电方式相比,激光无线充电不需要复杂的电缆连接,极大地提升了充电的灵活性和便捷性。然而

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/921514.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/921514.shtml
英文地址,请注明出处:http://en.pswp.cn/news/921514.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【牛客拼数最大对比从左至右每位break与continue】2022-11-5

缘由牛客拼数最大问题,不从结果出发那种做法-编程语言-CSDN问答 思路倒序数后从右逐位比较大小 int 反序数(int n) {int nn 0;while (n)nn nn * 10 n % 10, n / 10;return nn; } void 牛客拼数位最大对比() {//4 7 13 4 246;3 13 312 343;3 1 2 3int a[20]{}, x…

【考研C语言编程题】数组元素批量插入实现(含图示+三部曲拆解)

【考研C语言编程题】数组元素批量插入实现(含图示三部曲拆解) 一、题目要求 编写C语言程序,实现将数组b的所有元素批量插入到数组a的指定位置(位置从0开始计数)。要求严格遵循“腾出空间→插入元素→更新长度”的操作三…

监控系统 | 脚本案例

1、监控系统中的cpu、内存、硬盘、、使用率超过80%进行邮件告警(可使用邮箱QQ)详细步骤说明:1. 脚本初始化#!/bin/bash:指定使用bash shell执行dateMax80:设置资源使用率阈值(80%)2. 资源监控CP…

Vulkan 学习(20)---- UniformBuffer 的使用

目录UniformBufferDescriptorSetLayout 和 VkBuffer顶点着色器定义描述符布局(DescriptorSetLayout)创建 UniformBuffer描述符池(DescriptorSet Pool)描述符集(DescriptorSet)更新描述符集使用描述符集使用多个 DescriptorUniformBuffer 本篇文档是通过 Uniform Buffer 的使用…

[光学原理与应用-461]:波动光学 - 波片实现偏振态的转换或调整

波片(Wave Plate)是一种基于双折射效应的光学元件,其核心功能是通过控制光波中寻常光(o光)和非寻常光(e光)的相位差,实现偏振态的转换或调整。以下是波片的主要功能及其原理的详细说…

Flutter之riverpod状态管理详解

一、riverpod状态管理中所涉及到的provider对比分析Provider 类型核心用途最佳适用场景优势劣势/注意事项Provider(v1)暴露一个恒定不变的(或不需要Riverpod管理的)对象或值。依赖注入(如:Repository, Logger, ApiClient&#xff…

昇腾310i Pro固件说明

目录 驱动和固件 驱动固件文件 firware固件 24.2版本对应的固件 驱动和固件共同文件 烧结到flash中的固件 总结 启动流程 固件关系猜测 启动关键信息 efuse atu大小 GPU的bar 总结 驱动和固件 以最新的25.2 对应的驱动和固件为例说明: 驱动固件文件…

【LeetCode热题100道笔记】二叉树的右视图

题目描述 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入:root [1,2,3,null,5,null,4] 输出:[1,3,4] 解释:示例 2&am…

Redis《RedisSerializer》

文章目录RedisSerializer为什么要使用如何使用RedisSerializer总结RedisSerializer 为什么要使用 RedisTemplate 有默认的序列化器,但默认使用的 JdkSerializationRedisSerializer 存在一些问题: 序列化后的数据包含类信息等额外内容,导致…

基于开源AI大模型AI智能名片S2B2C商城小程序的文案引流与社交传播运营策略研究

摘要:本文聚焦开源AI大模型AI智能名片S2B2C商城小程序,探讨其文案引流与社交传播运营策略。阐述文案在引流中的重要性,分析开源AI大模型AI智能名片S2B2C商城小程序的特性,研究文案设计策略、社交传播机制及运营策略实施与效果评估…

NGINX vs HAProxy vs LVS:优势与选型分析

目录 1. 负载均衡的江湖:三巨头初探 2. NGINX:全能选手的多面魅力 NGINX 核心优势 NGINX 的短板 NGINX 实战案例 3. HAProxy:调度大师的精细之道 HAProxy 核心优势 HAProxy 的短板 HAProxy 实战案例 4. LVS:内核猛兽的极致性能 LVS 核心优势 LVS 的短板 LVS 实…

AI+ 行动意见解读:音视频直播SDK如何加速行业智能化

引言:国家战略、技术基座与行业落地 8 月底,国务院发布了《“人工智能”行动意见》,明确将人工智能提升为继“互联网”之后的新一轮国家级战略抓手。这份文件的关键词已经不再是“连接”与“优化”,而是“重塑”与“跃迁”&#…

2025年华为HCIA人工智能认证发展前景如何?客观分析!

大家好!7月世界人工智能大会即将揭幕首款重载机器人,AI产业化进程再次加速。不少朋友开始转移关注到和它有一点点关系的——华为HCIA-AI Solution认证(人工智能解决方案工程师),但它是否真能搭上这趟技术快车&#xff…

AutoGPT 原理与实践:从AI助理到“自主任务完成者” (人工智能入门系列)

Elon Musk 曾预言,“AIAgent 终将比人类聪明,并能自动完成大部分工作,这既是机遇也是威胁。” 而 AutoGPT,正是当前 AI 领域涌现出的、最能体现这一预言雏形的产品。它不再是那个需要你一句一句精确指令的“AI助手”,而…

自适应滤波器:Ch4 最小均方(LMS)算法

随机梯度下降算法简介 之前的章节中介绍了利用最速下降算法可以实现维纳滤波器的最优解(LMMSE),其最优解的形式为: w0R−1Pw_{0} R^{- 1}Pw0​R−1P 它基于两个假设:环境的联合平稳,即输入u(n)u(n)u(n)以及…

AI生成内容的版权问题解析与实操指南

针对个人使用AI工具生成视频/音乐的版权问题深度解析,从法律归属、侵权边界到确权实操,结合最新司法实践提炼核心要点: 一、版权归属核心逻辑:人类智力投入的可视化 当用户深度参与创作过程时,可主张版权。关键看操作…

4.2 机器学习 - 欠拟合和过拟合

模型训练的核心挑战是让模型既 “学好” 训练数据,又能 “适应” 新数据。欠拟合(Underfitting)和过拟合(Overfitting)是阻碍这一目标的两大典型问题,其本质是 “模型复杂度” 与 “数据复杂度” 不匹配。本…

LeetCode 468. 验证IP地址 - 详细解析

文章目录LeetCode 468. 验证IP地址 - 详细解析题目描述IPv4验证规则:IPv6验证规则:最优Java解决方案(注释完整版)关键变量含义及代码技巧代码技巧详解1. 前导零检查的最佳实践2. IPv6为什么不能用Character.isDigit()3. 针对性注释…

新能源研发,用新型实验记录本:ELN

新能源(材料)研发如火如荼,竞争激烈。以电池为例,新能源汽车的崛起、储能技术的突破,让电池成为了能源领域的“新宠”。电池研发已经成为热门赛场,各研发团队都在与时间赛跑,试图维持优势或弯道…

大语言模型领域最新进展

CSDN大礼包《人工智能大模型课程》 CSDN大礼包《人工智能平台设计开发课程课程》