自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(361)
  • 资源 (4)
  • 收藏
  • 关注

原创 桑拿卡路里模块设计

📘 **桑拿卡路里模块设计文档**1. **模块目标**2. **卡路里消耗计算规则(核心公式)**🟧 A 区间:40–55°C🟥 B 区间:56–65°C🔥 卡路里计算公式3. **模块整体结构**4. **卡路里数据模型(已完成)**5. **CalorieController 设计(核心)**6. **卡路里主界面 UI(卡路里6)**✔ A. 大圆形卡路里显示✔ B. 温度与时间✔ C. 对比昨日✔ D. 目标完成进度条(300 kcal 为 100%)✔ E. 健康建议✔ F. 历史记录。

2025-11-21 08:36:43 846

原创 桑拿控制器项目持久化层笔记

GetStorage 负责简单状态(KV),Hive 负责结构化历史记录(对象)。整个项目所有持久化入口都在 AppStorage(),main.dart 启动时必须 init() 一次。

2025-11-20 17:38:32 687

原创 基于设备返回信息实现App界面按钮状态同步:原理与实践

首先在设备管理控制器(// 用.obs将布尔值转为响应式RxBool// 其他设备管理逻辑...这里的.obs是关键,它让普通布尔值变成了可被监听的响应式数据。当发生变化时,所有依赖它的UI组件都会收到通知。通过GetX的响应式机制,我们可以轻松实现"设备返回信息驱动UI状态更新"的需求。用.obs定义可监听的响应式数据在UI中用Obx建立数据依赖正确处理设备返回信息并更新响应式变量这种模式不仅适用于开关按钮,还可推广到所有需要与设备状态同步的UI组件,为用户提供真实、一致的操作体验。

2025-11-19 09:52:52 802

原创 温度单位切换(°C ↔ °F)方案设计

查询当前设定单位返回:AB 24 ... 表示摄氏AB A4 ... 表示华氏。

2025-11-17 14:45:41 560

原创 温度单位切换到底应该由谁负责

UI 发指令给 controller(如:dm.switchUnitToC()、dm.switchUnitToF())否则会出现“你的 UI 显示 °F,但设备仍然认为自己在 °C 运作”的矛盾。controller 发 BLE 0x23 切换设备。那到底哪一种是“正确、专业、工程上最合理”的?UI 仅根据 controller 的单位显示。设备还以为 65°C 是上限。UI 换算显示 149°F。UI 点击切换 °C/°F。但设备内部依然是摄氏逻辑。如果设备协议不支持切单位。需要设备端安全逻辑严格。

2025-11-17 14:43:13 337

原创 app中时间刻度为什么不做成环形

从 技术上 来说,时间刻度当然可以画成 闭环(360° 完整刻度),但如果你这么改,会出现一系列 设计、视觉与交互逻辑上的冲突。你的 温度表盘 是:起点:-210°弧长:240°不是整圈是“开口圆弧(倒 U 型)”如果右边“时间表盘”变成:360°整圈刻度进度还是 240° 的渐变弧那么两个表盘:视觉会产生 风格冲突:左边是「弧形盘」右边是「完整仪表盘」用户看起来会感觉像是「两个完全不同风格的组件」。现在两个表盘共用:意思是:如果时间刻度变成“整圈刻度”,但进度弧还是 240°:视觉起点不对齐进度对

2025-11-17 14:39:01 704

原创 Python串口通信与MQTT物联网网关:连接STM32与物联网平台

在典型的物联网应用场景中,STM32作为下位机负责硬件层面的操作,包括传感器数据采集、GPIO控制等;而运行Python程序的设备(如树莓派、工控机或普通电脑)则作为网关,负责串口通信与网络通信之间的协议转换。系统数据流上行数据:STM32传感器数据 → 串口 → Python程序 → MQTT服务器 → 云端/监控系统下行数据:云端/监控系统 → MQTT服务器 → Python程序 → 串口 → STM32控制指令这种架构的优势在于分工明确。

2025-10-11 17:17:31 478

原创 物联网二级平台设计与实现:从Home Assistant到JetLinks的设备协同架构实践

属性(标识,类型:浮点数,单位:℃)、humidity(标识,类型:浮点数,单位:%);功能:(可选)如“校准传感器”(输入参数:校准值);事件:(可选)如“温度超限告警”(输出参数:超限值、时间)。原因:自定义Jar包协议的编解码逻辑与实际MQTT消息结构不匹配(如字段名错误、JSON层级错误)。解决:在自定义协议的decode方法中添加日志(如log.info("收到消息:{}", payload)),打印实际收到的消息结构,再针对性调整解析逻辑。

2025-10-11 17:16:04 374

原创 从嵌入式到社区物联网:基于Pegasus智能家居套件的全栈实验方案

如何把单片机、智能家居设备与云端社区系统(如Home Assistant、JetLinks)打通?Pegasus 智能家居开发套件为我们提供了理想的实验平台——它不仅支持 OpenHarmony 系统,还能通过 MQTT 与各类物联网平台互联。本文将以一个“鸿蒙小车+智能家居+社区平台”的实验为主线,展示一个完整的端到端方案。从串口读取数据并发布到 MQTT 主题;订阅 MQTT 消息并发送回串口;支持多个主题(Topic)和设备映射。

2025-10-11 16:57:31 782

原创 从 Home Assistant 到 JetLinks:构建双层智能家居与社区管理平台实训全景

在mqtt:button:Pegasus 小车端订阅这些 Topic,接收到指令后执行对应动作。设备侧嵌入式开发家庭级智能控制(Home Assistant 自动化);平台级物联网运维(JetLinks 云端管理);协议对接与数据解析(MQTT、物模型、规则引擎)。这正是当下智能物联网岗位所需的核心能力。从家居实验走向工业级物联网应用,从“物理连接”到“数据价值”,这,就是物联网教育最有生命力的方向。📘集成 JetLinks 时序数据库 InfluxDB 实现数据可视化;

2025-10-11 16:48:17 974

原创 Home Assistant(HA)与传统嵌入式实验仪(普中玄武F103)对接的最简通信方案(一)

Home Assistant 本质是“家庭物联网中枢”,它不直接操作硬件,而通过网络协议(MQTT、Modbus、HTTP、ESPHome等)与设备通信。F103 属于裸机 / RTOS 微控制器,不带网络栈或操作系统,因此要。确保本地MQTT服务器(如Mosquitto)已启动,默认端口1883。(或修改代码中的串口号为实际端口),波特率。命令,执行开灯操作(取决于设备固件逻辑)。接收到MQTT消息后,通过串口发送命令。用MQTT客户端(如MQTTX)订阅。:用MQTT客户端向。,程序会通过串口发送。

2025-10-10 20:49:57 748

原创 JetLinks安装 运行

它要依赖如下软件,先要安装这4个镜像编排一下:D:\WHU\Docker-Compose\docker-compose.yml启动docker后接着启动四个容器:基于四个服务运行 JetLink:java 要求11的版本:基于 “Java 源码”“前端 Vue 源码”“docker-compose 基础服务”,本质是 JetLinks 前后端分离架构的组成部分,以及其运行依赖的 “基础设施”:概念作用版本分支 “2.2” 的意义JetLinks Java 源码后端服务(用 Java 开发),负责

2025-10-07 11:27:16 992

原创 重点梳理一下数据特征分析方法与常见图表表示

Python 数据分析是一个系统性强、工具链完整的流程。从数据获取到建模可视化,每一个环节都有成熟的工具和方法支持。掌握这些工具和流程,不仅能提升数据分析的效率,也能更好地从数据中挖掘业务价值。未来趋势:自动化分析、低代码平台、实时数据处理将成为数据分析的主流方向。Python 作为生态最完善的语言之一,将继续在这一领域发挥核心作用。附:推荐学习资源Kaggle 数据集天池数据集Matplotlib 官方文档Pandas 用户指南后续将继续分享更多 Python 数据分析与机器学习实战内容。

2025-10-01 19:59:55 929

原创 Jupyter 中指定 Python 环境的几种方法

在 Jupyter 页面:Kernel → Change kernel → 选择其他环境。很可能 Jupyter 运行的是其他环境的 Python。用上面的方法2注册内核。选择方法1或方法2都很简单,试试看!这样启动的 Notebook 默认就使用当前环境。

2025-09-23 21:36:41 587

原创 mqtt 环境搭建

​​​​​​MQTT(MQ Telemetry Transport)是一种消息传递协议,创建该协议是为了满足对向低功耗设备(如工业应用中使用的设备)传输数据的简单而轻量级方法的需求。随着物联网(IoT)设备的日益普及,MQTT的使用也在增加,导致其被OASIS和ISO标准化。该协议支持单一的消息传递模式,即发布-订阅模式:客户端发送的每条消息都包含一个相关的“主题”,代理使用该主题将其路由到订阅的客户端。

2025-09-23 16:23:21 870

原创 WiFi网络:从协议到拓扑的解析

在如今的数字时代,WiFi已成为我们生活和工作中不可或缺的一部分。无论是居家上网、办公室办公,还是公共场所连接网络,都离不开WiFi技术。但你是否真正了解WiFi网络背后的原理?今天,我们就通过一篇深度解析,带大家走进WiFi网络的世界,从核心协议到网络拓扑,全方位认识WiFi。

2025-09-23 06:14:13 1148

原创 AI大模型时代,Python数据分析与挖掘

文章从工具链、工作重心、新维度和技能要求四个方面,为你解读如何成为新时代的“超强数据分析师”。ChatGPT、Copilot等工具的强大能力,似乎让传统的SQL查询、Pandas数据处理、Sklearn建模变得触手可及,甚至不再需要人工深度参与。AI大模型非但没有让Python数据分析与挖掘过时,反而像给它装上了一台“超级引擎”,彻底重塑了工作流,将数据分析师的价值天花板提升到了一个前所未有的高度。传统分析中,数据清洗、特征工程等准备工作(“数据脏活”)可能占据了80%的时间。,这是革命性的突破。

2025-09-21 10:35:15 1003

原创 openharmony1.1.3 通过i2c进行温湿度采集

温湿度传感器 也是挂载这个i2c总线上初始化?读数据写数据1.1.3 版本的i2c底层接口:默认 系统没有开启i2c开启i2c写一套通过i2c 读写温湿度的文件:#define AHT20_I2C_IDX 0 // OpenHarmony标准I2C总线索引/*** @brief 内部函数:I2C读取数据(调用OpenHarmony HAL层接口)*/// 调用HAL层I2C读函数/**

2025-09-18 09:42:04 1167

原创 HiBurn 测试

最高可以2000000再高就容易丢包了。然后打开HiBurn.exe。然后插入开发板,选择串口设备。如果没有就安装CH340驱动。记得勾选auto burn。点击connect开始烧录。按下芯片复位键就开始烧录了。如果还是不行就重启软件。

2025-09-10 11:28:51 151

原创 VMware + Ubuntu 桥接模式不能联网 的常见原因、排查思路和解决步骤

如果获取不到 IP → DHCP 没成功,说明 VMware 没桥接好或路由器拒绝。

2025-09-02 19:59:17 526

原创 vmware 启动虚拟机后蓝屏问题的解决办法

在注册表编辑器中,找到Scenarios目录下的HypervisorEnforcedCodeIntegrity项,把其中的Enabled项的值设置为0(本PC已经没有了这个文件,换成CredentialGuard了)之后输入bcdedit 查看启动管理器,查看hypervisorlaunchtype是不是off状态的,重启之后生效。将其中的Enabled项的值设置为0,重启计算机,即可关闭“内存完整性”选项。CPU 虚拟化(Intel VT-x / AMD-V)在 BIOS 关闭。

2025-09-02 19:58:30 1658

原创 Qt5 多媒体大纲

熟悉 Qt 的信号槽机制、事件循环掌握.pro工程文件配置(熟悉常见的音视频格式与编解码器基础确认安装了multimedia模块与插件熟悉调试方式(如设备权限、驱动、插件依赖)

2025-09-02 19:55:33 297

原创 虚拟机没有网络图标问题的解决办法

2️⃣ 检查宿主机 VMware 服务。4️⃣ 检查 Ubuntu 内部网卡。5️⃣ 修复 VMware 网络配置。3️⃣ 检查宿主机虚拟网卡。1️⃣ 检查虚拟机设置。

2025-08-30 09:48:11 458

原创 多线程消息发送处理器的设计与实现

避免消息打包、压缩等耗时操作阻塞主线程(特别是UI线程)控制消息发送节奏,防止网络拥塞提供线程安全的消息缓冲机制SendText 类展示了多线程编程中生产者-消费者模型的典型实现,通过合理的线程同步和资源管理,实现了高效、安全的消息处理。这种设计模式在网络编程、GUI应用程序等需要异步处理的场景中有着广泛的应用。线程安全是首要考虑因素资源管理需要精心设计异常处理必不可少性能优化要在保证正确性的前提下进行。

2025-08-29 14:10:15 803

原创 多线程图像发送处理器的设计与实现

避免图像编码、压缩等耗时操作阻塞主线程(特别是UI线程和视频采集线程)控制图像发送节奏,防止网络拥塞提供线程安全的图像缓冲机制优化图像传输效率(编码、压缩、格式转换)SendImg类展示了多线程图像处理与传输的典型实现,通过合理的线程同步和图像处理技术,实现了高效、安全的图像传输。这种设计模式在视频通话、远程监控、图像分享等需要实时图像处理的场景中有着广泛的应用。图像处理与网络传输的平衡内存管理的正确性和效率异常情况的全面处理性能监控和优化。

2025-08-29 14:09:55 606

原创 多线程网络数据接收与处理框架设计

从网络接收队列中获取数据并分发给处理模块避免网络数据接收阻塞主线程(UI线程)提供线程安全的数据接收和分发机制实现优雅的线程停止和资源清理RecvSolve类展示了多线程网络数据接收与处理的典型实现,通过生产者-消费者模型和Qt信号槽机制,实现了高效、安全的数据接收和分发。这种设计模式在网络编程、实时数据处理等场景中有着广泛的应用。线程安全是首要考虑因素资源管理需要精心设计性能监控和优化是持续过程异常处理必不可少。

2025-08-29 14:09:37 902

原创 Partner 类开发:会议参与者可视化控件

在会议界面中可视化展示参与者信息提供参与者视频缩略图显示功能实现参与者选择与交互功能支持IP地址显示和传递Partner类是一个典型的自定义Qt控件,展示了如何通过继承和扩展现有控件来实现特定功能。自定义控件开发:了解如何基于现有Qt控件创建自定义控件图像处理:掌握图像显示、缩放和优化的基本技术交互设计:实现鼠标事件处理和用户交互功能信号槽机制:使用信号槽实现组件间通信性能优化:了解界面渲染和内存管理的优化技巧。

2025-08-29 14:09:22 792

原创 Qt自定义UI组件的创建与使用

本课程将深入讲解Qt框架中自定义UI组件的开发方法与使用技巧。通过实际案例Partner类(会议参与者可视化控件)的分析,帮助学生掌握自定义控件的完整开发流程,从设计思路到实际应用。设计理念:选择最接近需求的Qt现有控件作为父类,最大化代码复用Partner类实现class Partner : public QLabel // 继承QLabel,复用其图像显示功能// 类实现...选择依据QLabel已具备图像显示能力,符合Partner的主要功能需求。

2025-08-29 14:09:02 960

原创 Qt自定义聊天消息控件ChatMessage:初步实现仿微信聊天界面

ChatMessage是一个继承自QWidget的自定义控件,专门用于聊天场景中的消息展示。用户自己发送的消息(右对齐,蓝色气泡)他人发送的消息(左对齐,白色气泡)系统通知消息(居中,灰色文本)时间戳消息(居中,浅灰色时间分隔符)

2025-08-28 22:04:46 339

原创 VMware + Ubuntu 桥接模式不能联网 的常见原因、排查思路和解决步骤

如果获取不到 IP → DHCP 没成功,说明 VMware 没桥接好或路由器拒绝。

2025-08-28 22:03:45 1263 1

原创 音视频开发实训:从零到一的四个关键里程碑

M1验证技术可行性 - 做出"能跑的原型"M2解决核心需求 - 打造"可用的语音工具"M3完善功能体验 - 实现"完整的视频会议"M4优化性能体验 - 准备"正式上线的产品"通过这种分阶段、渐进式的开发方法,团队能够有效控制风险,保持开发节奏,最终交付一个高质量的音视频应用。

2025-08-22 18:31:29 917

原创 音视频处理工作室:实时通信的媒体层设计

媒体层就像是一个组织有序的音视频处理工作室,每个组件各司其职又协同工作。理解每个"工作室成员"的角色和职责,有助于我们在开发实时通信应用时做出正确的技术选择。分工明确:每个组件专注自己的职责易于扩展:可以单独升级某个组件而不影响整体灵活配置:根据需求选择启用哪些功能就像实际的工作室一样,你可以根据项目需求和资源状况,决定是组建一个"基础工作室"(仅采集和播放),还是一个"全功能工作室"(包含完整的编解码处理)。

2025-08-22 17:43:00 676

原创 从快递运输与排队办事,看实时通信的MVP方案与增强方案

特性MVP方案增强方案传输协议所有数据统一走TCP媒体走UDP/RTP,控制走TCP/TLS穿墙难度简单(TCP易穿透)较复杂(需处理UDP穿透)延迟表现一般(TCP有确认机制)优秀(UDP低延迟)可靠性高(TCP保证送达)媒体可丢,控制可靠安全性无加密SRTP加密媒体,TLS加密控制音质处理基本优先传输有jitter buffer抗抖动实现复杂度低,适合快速原型高,需要专业优化。

2025-08-22 17:32:48 601

原创 CloudMeeting 客户端(Qt6)设计方案

目标:用 Qt 6.5+/6.7 LTS 实现一款跨平台(Windows/macOS/Linux,后续可扩展 Android)的音视频会议客户端,支持实时音视频、文本聊天、成员管理、日志与监控,满足教学与中小型团队实际使用。本地视频:QCamera → QVideoSink(QVideoFrame)→ 转 QImage(或 GPU 纹理)→ (H.264/JPEG) → videoSendQ → 服务器 → UI 渲染。├─ SignalingClient(TCP/TLS:登录、心跳、控制信令)

2025-08-22 16:26:08 557

原创 Qt5 → Qt6 教学差异对照表与迁移检查清单

编译器升级到 C++17(GCC ≥ 8, MSVC ≥ 2019, Clang ≥ 10)。 Qt6 安装完成(推荐 6.5 LTS 或 6.7 以上版本)。 项目构建工具迁移: Qt Multimedia Qt Web Qt Script Qt XMLPatterns Qt Sensors / Bluetooth / Positioning 正则表达式: OpenGL: 打印/文档: 事件循环: QML 导入模块版本检查: QtQuick Controls 1 已移除,UI 需要用 QtQuick Co

2025-08-22 16:25:19 773

原创 网络通信中的消息打包机

writetofd标准化格式- 统一消息结构安全转换- 处理字节序差异严谨内存管理- 动态分配即时释放错误处理- 确保完整发送实现了服务器到客户端的高效可靠通信。这种设计模式不仅适用于会议系统,也可广泛应用于各类需要结构化网络通信的场景,如游戏服务端、物联网平台、金融交易系统等。在分布式系统中,良好的通信协议设计就像精确的物流系统——每个包裹都有清晰的标签和包装,确保从起点到终点准确无误。writetofd正是这样一个精心设计的"快递打包系统",让数据在复杂的网络环境中安全抵达目的地。

2025-08-16 09:03:44 258

原创 高并发会议系统消息架构:多类型消息的统一处理机制

系统通过MSG_TYPE// 媒体传输类(双向)IMG_SEND = 0, // 客户端→服务端:图片IMG_RECV, // 服务端→客户端:图片转发AUDIO_SEND, // 客户端→服务端:音频AUDIO_RECV, // 服务端→客户端:音频转发TEXT_SEND, // 客户端→服务端:文本TEXT_RECV, // 服务端→客户端:文本转发// 会议控制类(客户端→服务端)CREATE_MEETING, // 创建会议EXIT_MEETING, // 退出会议。

2025-08-16 08:34:03 966

原创 解决网络传输中可能出现的“粘包”

TCP 就像一条水管,数据通过水管从一端传到另一端。不会按“发送时的小包”来划分,而是把数据当成连续的字节流。你分两次发数据:第一次发“hello”(5字节),第二次发“world”(5字节);接收方可能一次收到“helloworld”(10字节,两个包粘在一起),也可能第一次收到“hel”(3字节),第二次收到“loworld”(7字节)。这种“数据没按预期分成小包,要么粘在一起,要么被拆成碎块”的情况,就叫“粘包”。如果直接用普通的read函数,可能读不全或读多了,导致数据解析错误。

2025-08-15 14:22:00 259

原创 准备用Qt6 重写音视频会议系统服务端

用 Qt6 重写该服务端程序不仅技术可行,还能显著提升开发效率、跨平台兼容性和功能扩展性。Qt6 的高级封装(网络、线程、进程、同步机制)可简化原程序的底层细节处理,同时其跨平台特性和 UI 支持为后续功能迭代(如可视化监控、多平台部署)提供了便利。对于中小型会议通信场景,Qt6 是更优的技术选型。

2025-08-15 13:43:56 1047

原创 房间进程与主进程之间的通信及状态更新

fill:#333;发送状态信号解析信号类型获取进程索引返回索引i更新状态调整可用计数记录日志获取进程索引返回索引i更新用户计数记录日志alt[收到'Q'(用户退出)信号]

2025-08-15 10:16:30 913

foodmart_mysql.tar.gz

mondrian foodmart mysql 脚本,

2019-05-09

accp6认证标准等

附件1:ACCP 6.0模块划分及课程名称对照表 附件2:ACCP6.0与ACCP5.0技能点差异 附件3:ACCP6.0 产品使用标准 附件4:ACCP6.0产品教员认证升级考试申请表

2014-08-21

hibernate4+spring4+springmvc+ehcache+自己写的cache系统

hibernate4+spring4+springmvc+ehcache+自己写的cache系统

2018-06-10

accp6.0 y2

accp6.0 y2 hibernate 第一章

2013-01-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除