自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(496)
  • 收藏
  • 关注

原创 068、TensorFlow Lite Micro的Debugging项目:调试技巧

本文分享了在嵌入式设备上调试TensorFlow Lite Micro(TFLM)项目的实战经验。作者通过一个智能门锁项目的调试案例,总结了TFLM项目常见的陷阱和解决方案:1)模型加载阶段要检查版本和子图;2)内存分配需预留足够arena空间并验证;3)注意输入数据对齐和量化参数匹配;4)输出张量需检查NaN和概率分布;5)善用调试日志和硬件调试器。文章提出了系统性的调试流程:先确保模型加载和内存分配正确,再验证数据格式和算子支持,最后通过模型拆分定位问题。作者强调在资源受限环境下调试需要耐心和系统性方法

2026-06-25 17:31:50 105

原创 067、TensorFlow Lite Micro的Security项目:安全防护

摘要: TensorFlow Lite Micro (TFLM) Security项目为边缘设备提供轻量级安全防护,聚焦三大核心问题:模型防篡改、推理过程抗干扰和敏感数据保护。文章通过真实案例(电磁干扰导致模型崩溃)引出安全防护的必要性,详细剖析TFLM Security的三大组件:模型完整性校验(推荐SHA256替代MD5)、运行时完整性监控(周期性内存检查)和安全存储区(利用芯片级保护)。作者结合实战经验指出常见陷阱:性能开销需优化(如后台校验)、安全启动链需闭环、调试与安全的平衡,并给出分层防御建议,

2026-06-25 17:31:00 4

原创 066、TensorFlow Lite Micro的OTA Update项目:空中升级

即使做了双区备份,OTA更新后的模型也可能有问题——比如精度下降、推理速度变慢。这时候需要回滚。// 版本历史 - 最多保留3个版本// 旧模型的CRC,用于验证// 回滚次数,防止无限回滚// 触发回滚} else {// 回滚次数过多,保持当前模型并报警} else {这个自动回滚机制救过我一回。有一次新模型在某个特定光照条件下完全失效,设备在仓库里默默回滚了,等我去现场检查时,发现设备日志里记录了回滚事件,但设备本身还在正常工作。

2026-06-25 17:30:18 48

原创 065、TensorFlow Lite Micro的Real-time Inference项目:实时推理

摘要: 本文分享了TensorFlow Lite Micro(TFLM)实现实时推理的实战经验与避坑指南。作者通过工业视觉分拣项目的失败案例,指出实时推理的核心是确定性延迟而非单纯速度快,并剖析了TFLM在内存分配、算子选择、中断优先级等方面的关键问题。具体建议包括:避免循环分配内存、确保张量缓冲区对齐、优化算子实现(如查表替代Softmax)、合理配置中断优先级,以及使用GPIO而非printf测量真实延迟。此外,电源管理和裸机优先于RTOS的策略也被强调。最终通过硬件调整(SRAM扩容、DMA优化)和软

2026-06-25 17:29:40 190

原创 064、TensorFlow Lite Micro的Power Optimization项目:功耗优化

先测基线再优化:用电流探头抓24小时功耗曲线,别信数据手册。我见过标称1uA的待机模式,实际因为GPIO漏电跑了3uA。推理频率和精度做trade-off:用混淆矩阵看,很多时候降低频率对准确率影响微乎其微,但功耗能砍半。外设电源域要独立控制:别把所有外设挂在一个LDO上,否则动态开关时会有电压跌落。量化模型要逐层验证:写个脚本跑每个算子的耗时,发现异常立刻查算子注册表。最后一条铁律:任何功耗优化,都要用示波器或逻辑分析仪验证波形,别信printf打印的电流值。

2026-06-25 17:28:49 93

原创 063、TensorFlow Lite Micro的Memory Optimization项目:内存优化

这篇文章分享了作者在使用TensorFlow Lite Micro(TFLM)进行嵌入式开发时遇到的内存优化问题及解决方案。主要经验包括: 精确计算内存池大小,避免随意估计; 启用紧凑分配减少内存碎片; 仅注册模型实际需要的算子; 量化模型是最高效的优化手段; 谨慎使用共享缓冲区等高级技巧; 善用调试工具监控内存使用。 作者通过真实案例(智能门锁项目)展示了如何在64KB RAM限制下,通过量化、精确内存配置和算子精简,最终将内存占用优化至6.8KB。文章强调嵌入式开发中内存优化需要精确计算和实测验证,而非

2026-06-25 17:28:05 1

原创 062、TensorFlow Lite Micro的Custom Operator项目:自定义算子

本文分享了在TensorFlow Lite Micro(TFLM)中实现自定义算子的实战经验。作者通过一个手势识别项目的案例,说明了自定义算子的必要性,并详细介绍了实现自定义算子的四个核心方法(Init、Free、Prepare、Eval)及常见陷阱。文章提供了取绝对值算子的完整代码示例,强调了注册自定义算子和模型转换时的注意事项,最后还讨论了如何为自定义算子添加int8量化支持。这些经验对于在嵌入式设备上优化TFLM模型具有实用价值。

2026-06-25 17:27:24 59

原创 061、TensorFlow Lite Micro的Multi-model Pipeline项目:多模型流水线

TensorFlow Lite Micro多模型流水线实现指南 本文介绍了在资源受限的MCU(如STM32U5)上实现TensorFlow Lite Micro多模型流水线的关键技术要点: 内存管理问题:多个TFLite Micro解释器共享内存池时容易发生"模型打架",应使用MicroAllocator统一管理内存分配。 模型桥接:模型间数据传递需注意量化参数匹配,避免直接memcpy导致的语义错误,建议使用反量化-再量化流程或统一训练量化配置。 状态机设计:推荐采用状态机模式管理多模型流水线执行流程,避

2026-06-25 17:26:37 143

原创 060、TensorFlow Lite Micro的Sensor Data Classification项目:传感器分类

摘要:本文分享了在TensorFlow Lite Micro上实现传感器数据分类的经验教训。项目涉及数据采集预处理、模型推理和后处理三大模块,作者重点剖析了滑动窗口实现、模型初始化、输入输出张量处理等关键环节的常见陷阱,如滑动窗口步长设置错误导致数据错乱、归一化因子不匹配导致输出饱和、推理时间过长影响实时性等问题。通过实战案例(如memmove与memcpy的选择、推理性能优化、调试技巧等),提供了嵌入式AI开发的实用建议。

2026-06-25 17:25:55 258

原创 059、TensorFlow Lite Micro的Audio Classification项目:音频分类

摘要: 本文分享了TensorFlow Lite Micro音频分类项目在Cortex-M4嵌入式设备上的实战经验。重点解析了MFCC特征提取的量化陷阱、推理实时性优化、后处理平滑策略及内存优化技巧。作者通过血泪教训总结出关键要点:硬件需独立供电以降低噪声影响;采样率偏差需通过定时器硬件校准;模型量化需包含真实噪声数据;调试时建议逐层对比PC与嵌入式端中间结果。最终在64KB RAM限制下,通过跳帧推理、模型剪枝和精确内存分配(arena优化至32KB)实现了稳定运行。

2026-06-24 23:06:50 160

原创 058、TensorFlow Lite Micro的Object Detection项目:目标检测

本文分享了在STM32H743上部署TensorFlow Lite Micro(TFLM)目标检测项目的实战经验。重点包括:1)模型必须完全量化为int8格式,校准需用真实场景数据;2)内存管理需要精细规划,建议采用三段式分配策略;3)后处理优化技巧,如定点数NMS实现;4)性能调优方法,包括算子替换、模型剪枝和双缓冲技术。文章特别指出MCU部署与PC环境的关键差异,如数据类型转换、内存对齐等问题,并提供了具体代码示例和调试建议。作者强调理解底层实现比盲目调参更重要,建议从简单模型入手逐步优化。

2026-06-24 23:06:09 94

原创 057、TensorFlow Lite Micro的Image Classification项目:图像分类

这篇文章分享了在STM32H743上部署TensorFlow Lite Micro图像分类项目的实战经验,重点剖析了模型加载、预处理、推理和后处理过程中的关键问题和解决方案。作者总结了多个实际踩坑案例,包括内存对齐要求、Arena大小设定、CMSIS-NN加速的必要性、量化参数获取等核心问题,并提供了优化后的代码实现方案。文章特别强调了预处理流程对分类精度的决定性影响,以及MCU环境下特有的性能考量,对嵌入式AI开发者具有直接的参考价值。

2026-06-24 23:05:24 133

原创 056、模型参考自适应控制

摘要(150字): 模型参考自适应控制(MRAC)通过动态调整控制器参数应对电机参数漂移问题。以永磁同步电机为例,MRAC基于参考模型与实际输出的误差,利用MIT规则设计自适应律,实时修正控制参数。关键点包括:参考模型需“可实现”(带宽略高于实际系统),自适应增益γ需平衡收敛速度与稳定性,调试时需加入死区和限幅等保护机制。MRAC不适用于参数突变极快、存在纯延迟或激励不足的场景。实际应用中需遵循“参考模型留余量、增益先粗后细、设置安全网”三原则,虽调试复杂,但在参数变化显著的系统中优势显著。

2026-06-23 17:30:02 93

原创 055、自适应控制基础

摘要: 自适应控制通过实时辨识系统参数并调整控制器,解决电机控制中的参数漂移问题(如温度变化、负载突变)。核心方法包括模型参考自适应控制(MRAC)和自校正控制(STC),前者通过理想模型跟踪调整参数,后者直接在线辨识并更新PI参数。实现时需注意收敛性(持续激励)、鲁棒性(抑制干扰)和实时性(避免复杂运算)。适用场景包括大惯量变化或高温工况,但需谨慎调参(如自适应增益γ)、添加限幅与退出机制。工程实践中,MRAC的MIT规则虽不完美但易调试,参考模型设计应保守。自适应控制是工具而非银弹,需结合实际需求选择。

2026-06-23 17:29:12 75

原创 054、滑模控制在电机控制中的应用

本文分享了滑模控制在电机控制中的应用经验。作者通过一次炸管事故引出传统PI调节器在非线性系统中的局限性,阐述了滑模控制的核心思想——通过设计滑模面实现对不确定性的鲁棒控制。重点分析了抖振问题及其工程解决方案(边界层法和趋近律法),并以永磁同步电机为例详细说明了滑模电流环的设计实现。文章结合实践经验,指出了参数选择、离散化实现、保护逻辑等关键点,并建议根据实际工况合理选择控制策略,强调工程实现需要理论与实践的平衡。最后提醒滑模控制不是万能方案,在特定场景下可采用滑模观测器+PI控制器的折中方案。

2026-06-23 17:28:05 124

原创 053、滑模控制基础

本文从电机控制调试事故入手,深入浅出地讲解了滑模控制的原理与实践。作者通过亲身经历指出,滑模控制以鲁棒性换取抗干扰能力,但会产生抖振问题。文章详细分析了滑模面设计、趋近律选择(等速/指数/幂次)及其参数调节技巧,推导了电机位置控制律,并给出抖振抑制的多种方法(边界层法、高阶滑模、低通滤波等)。最后强调滑模控制适用于强扰动场景,但需接受抖振与稳态误差的权衡,建议从保守参数开始调试,重视实物测试而非单纯依赖仿真。全文融合理论分析与工程经验,为滑模控制的实际应用提供了宝贵指导。

2026-06-23 17:27:22 163

原创 130、飞控中的看门狗与系统监控

看门狗超时时间别设太短。飞控在启动阶段、传感器校准阶段、参数加载阶段,都可能出现短暂的“假死”状态(比如等待传感器自检完成)。我见过有人把IWDG设成100ms,结果每次上电都复位,最后发现是传感器初始化时I2C通信卡了50ms。飞控的看门狗超时,建议至少是最大控制周期的3倍。喂狗代码要放在“执行完”之后,不是“执行前”。很多人习惯在任务开头喂狗,觉得这样安全。但如果你在喂狗之后、任务结束之前卡死了,狗照样不会复位。正确的做法是:任务执行完关键逻辑后,再喂狗。硬件看门狗和软件看门狗要配合使用。

2026-06-22 09:46:43 7

原创 129、飞控中的任务间通信:消息队列与邮箱

摘要: 飞控系统中任务间通信的可靠性直接关系到飞行安全。本文通过炸机事故案例,分析了共享变量方式的风险,详细介绍了消息队列和邮箱两种通信机制。消息队列适合需要缓冲历史数据的场景(如IMU数据),设计时需合理设置队列深度并采用非阻塞操作;邮箱则适用于只需最新数据的场景(如遥控指令),但需警惕内存泄漏问题。文章提供了通信机制选型决策树,并通过实际调试案例说明消息队列积压数据的处理方法。最后总结飞控通信设计核心原则:确保非阻塞和关键数据不丢失,强调监控队列使用率的重要性。

2026-06-22 09:45:33 143

原创 128、飞控中的多线程同步:互斥锁与信号量

本文探讨了飞控系统中多线程同步的核心机制——互斥锁与信号量的应用实践。作者通过实际炸机事故案例,揭示了线程间数据竞争导致的危险后果。文章详细分析了互斥锁在保护传感器数据缓冲区时的正确使用方法,包括锁粒度优化和优先级反转问题解决方案。同时阐述了信号量在生产者-消费者模式中的应用场景,比较了二值与计数信号量的区别。最后提供了调试技巧和场景选择指南,强调在飞控这种实时性要求高的系统中,合理使用同步机制对系统稳定性的关键影响。全文基于作者实际开发经验,包含多个代码示例和性能优化建议。

2026-06-22 09:44:48 109

原创 127、飞控中的内存管理:堆栈与动态分配

飞控内存管理实战总结 本文通过真实炸机事故引出飞控系统中内存管理的重要性。重点分析了三种内存管理方式: 栈空间 - 适合函数局部变量,需防止溢出,建议通过RTOS工具监控使用量 动态堆 - malloc/free易导致碎片化和执行时间不确定,应避免在控制循环和中断中使用 静态分配 - 最可靠方案,推荐配合编译时断言确保容量 文中提供了实用解决方案: 内存池技术代替通用堆分配 GPS数据解析等案例的优化实践 内存泄漏检测的调试技巧 核心建议:飞控作为硬实时系统,应优先采用静态预分配,谨慎使用动态内存,并留足余

2026-06-22 09:43:51 72

原创 052、无差拍电流预测控制

摘要: 无差拍电流预测控制通过模型预测实现电流环的"一步到位"响应,相比传统PI控制具有更快动态性能。本文以SPMSM为例推导了离散化电压方程,指出需补偿一拍延迟并处理参数敏感性问题。实际应用中需注意电压饱和时的矢量缩放和电流反计算,建议采用无差拍前馈+PI反馈的混合方案提升鲁棒性。测试数据显示混合方案在参数偏差30%时仍稳定,恢复时间比纯PI快4倍。关键经验包括:采样频率需超电气频率20倍、调试时先验证开环模型精度、结合在线参数辨识提升适应性。无差拍技术揭示了电流环的模型预测本质,是理解更高级控制算法的基

2026-06-21 13:25:31 107

原创 051、无差拍控制原理

摘要: 无差拍控制(Deadbeat Control)是一种基于电机模型的快速电流控制方法,通过精确计算下一周期所需电压,实现电流一步到位跟踪。相比传统PI控制,其动态响应更快,但存在模型参数敏感、计算延迟、电压饱和等工程挑战。实际应用中需采用参数辨识、两步预测、抗饱和等补偿措施。该方案适合高控制频率(如50kHz以上)且参数稳定的场景(如高端伺服),但在低频或参数变化大的系统中优势不明显。调试时可先用PI反推实际参数,并注意无差拍可能带来更大电流纹波,必要时可结合PI混合使用。

2026-06-21 13:24:48 105

原创 050、模型预测转矩控制

去年夏天,我在调试一台永磁同步电机的伺服驱动器。客户反馈电机在低速重载工况下会发出尖锐的啸叫声,电流波形像被狗啃过一样。我翻遍了传统的PI参数整定手册,试了各种前馈补偿,啸叫声依然顽固。直到我尝试了模型预测转矩控制(MPTC),问题才真正解决。今天这篇笔记,就聊聊这个让我又爱又恨的算法。

2026-06-21 13:23:16 75

原创 056、逻辑分析仪使用与数字信号调试

摘要 本文分享了逻辑分析仪在数字信号调试中的实际应用经验。通过I2C死锁和SPI丢字节等案例,对比了逻辑分析仪与示波器的核心差异:逻辑分析仪专注于数字电平采样,具备多通道、大存储深度和精确触发的优势。文章详细解析了采样率、存储深度和触发这三个关键参数的选型策略,强调采样率只需信号频率4-5倍即可。同时指出协议解码需要结合原始波形验证,避免被自动解析误导。最后提供了从物理连接到压力测试的标准调试流程,并给出设备选型和脚本分析等实用建议,强调逻辑分析仪应与示波器互补使用。

2026-06-19 20:11:40 125

原创 055、示波器基础与波形测量

摘要 本文从I2C调试案例切入,系统介绍了示波器的使用要点。首先揭示了测量误差的常见来源,如接地噪声导致的信号失真。接着解析示波器三大核心参数(带宽、采样率、垂直分辨率)的选购要点,强调探头质量的重要性。在操作层面,详细讲解了触发设置、波形测量技巧和存储深度的作用,并以SPI信号测量为例演示标准流程。最后总结五大实用习惯:定期探头校准、最短接地路径、多通道协同观测、活用数学功能以及保存完整测量参数。文章强调,理解测量系统本身的局限性是准确解读波形的关键,提醒工程师要辩证看待示波器呈现的数据。

2026-06-19 20:10:53 9

原创 054、万用表使用与电路通断测试

【摘要】本文分享了万用表在电路故障排查中的实用技巧与经验教训。通过实际案例说明:1)板子到手应先测量电源对地阻抗;2)区分通断档(快速筛查)与电阻档(精确测量)的使用场景;3)测量电阻时避免人体接触干扰;4)电压档能检测通断档无法发现的隐性断路;5)电流测量必须串联且注意安全。文中还以"上电重启"故障为例,演示了万用表分步排查法,并给出选表建议(推荐UT61E/Fluke 15B+)和维护要点(定期更换表笔、检查电池)。作者强调万用表是最快速的故障定位工具,关键在于理解各档位特性并建立标准操作流程。

2026-06-19 20:10:14 138

原创 053、焊接质量检查与返修方法

焊接质量检查与返修实用指南 核心要点: 目检技巧:焊点光亮不等于可靠,需检查助焊剂残留、焊锡爬升形态和通孔透锡情况 隐蔽焊点检测:BGA/QFN必须用X光检查焊球塌陷、连锡和空洞情况 精准测量:通断测试要用四线法测毫欧级电阻,普通万用表易误判 专业返修:拆焊需预热+温度控制,修复焊盘要分情况处理 验证三步法:热循环、振动和老化测试缺一不可 经验总结:焊接质量源于工艺控制,检查只是发现问题的手段,关键在于优化焊接参数和操作规范。

2026-06-19 20:09:31 103

原创 052、回流焊与波峰焊基础

本文详细介绍了回流焊和波峰焊两种主要焊接工艺的关键要点及常见问题。回流焊部分重点解析了预热区、浸润区、回流区和冷却区的温度控制要点;波峰焊部分则阐述了助焊剂喷涂、预热、波峰接触等环节的技术细节。针对混合工艺应用场景,文章特别指出了两种工艺配合使用时可能出现的"打架"问题及解决方案。最后,作者分享了温度曲线调试方法和五项实用建议,包括钢网设计、助焊剂选择、氮气保护等提升焊接质量的关键要素。全文基于大量工程实践经验,对电子制造过程中的焊接工艺控制具有实际指导价值。

2026-06-18 12:18:29 139

原创 051、手工焊接技巧:BGA与QFN焊接

摘要 本文分享了硬件工程师手工焊接BGA和QFN封装芯片的实战经验。作者通过自身踩坑经历,总结出关键技巧:BGA焊接需控制温度曲线(280℃低温锡膏+预热),使用专用风嘴和RMA助焊剂;QFN焊接要注意散热焊盘锡膏用量和芯片定位技巧。文章强调焊接工具选择(刀头烙铁、防静电镊子)、返修注意事项(吸锡带使用)以及焊后检测流程(目检/X光检查)。作者指出,手工焊接BGA/QFN成功率与心态密切相关,建议新手接受合理失败,通过实践积累经验。文末特别提醒助焊剂残留清洗的必要性,以及"慢工出细活"的焊接哲学。

2026-06-18 12:17:46 208

原创 056、TensorFlow Lite Micro的Anomaly Detection项目:异常检测

本文分享了在微控制器(MCU)上实现异常检测的实战经验。作者通过一个电机振动监测案例,揭示了TinyML项目的核心挑战在于信号链路的端到端对齐,而非模型结构。重点介绍了自编码器+重构误差的方案设计、信号预处理的关键步骤(滑动窗口、FFT变换)、轻量级模型优化技巧,以及动态阈值调整策略。文章特别强调了部署时的注意事项,包括采样率对齐、量化实现、调试接口等实用技巧,并总结了五个血泪教训。最后建议初学者从简单统计方法入手,逐步过渡到更复杂的模型方案,同时强调真实环境验证的重要性。

2026-06-18 12:10:59 149

原创 055、TensorFlow Lite Micro的Micro Speech项目:语音关键词识别

摘要:本文深入解析TensorFlow Lite Micro的Micro Speech项目在嵌入式设备上的实战经验。核心内容包括:1)模型架构采用18K参数的DS-CNN,强调MFCC特征处理的数值精度问题;2)系统流程从音频采集到推理结果平滑处理的全链路实现;3)关键调试技巧如内存管理(建议16KB arena)、静音检测优化(RMS能量门限)和GPIO调试方法;4)落地经验指出麦克风选型比模型优化更重要,需针对性训练"unknown"类别,并强调硬件实测的必要性。作者通过误触发案例揭示嵌入式AI开发中容

2026-06-18 12:09:43 101

原创 126、飞控中的中断优先级与嵌套

本文总结了飞控系统中断处理的经验教训。作者通过一次炸机事故,分析了中断优先级设置的关键点:PWM更新中断必须最高优先级,IMU数据中断次之,串口通信最低。文章详细探讨了中断嵌套的堆栈风险、共享数据的临界区保护方法,以及中断延迟对系统的影响。特别强调中断服务函数应保持精简,避免复杂运算,推荐使用DMA和双缓冲机制。最后给出实用建议:合理设置STM32 NVIC优先级分组(推荐分组2),用GPIO和示波器调试中断时序,并设置看门狗监控关键中断。这些经验对保证飞控系统实时性和稳定性至关重要。

2026-06-17 10:27:01 117

原创 125、飞控中的时间管理:系统时钟与定时器

文章摘要 本文以作者亲身经历的一次炸机事故为切入点,深入探讨了飞控系统中的时间管理问题。文章系统性地分析了系统时钟、定时器三种典型用法、多传感器时间同步、时钟漂移补偿等关键技术要点,并分享了实用的调试技巧。作者特别强调中断服务函数的编写规范,指出不当的时间操作会导致严重后果。文章通过具体案例(如PWM配置、转速测量、软件定时器等)揭示了飞控开发中常见的时间陷阱,并提供了DWT时间戳、PPS校准等解决方案。最后总结出"在正确时间做正确事"的核心原则,为飞控开发者提供了宝贵经验。

2026-06-17 10:25:06 167

原创 124、飞控中的Bootloader设计与固件升级

飞控的Bootloader看起来是个小功能,但它是飞控系统的“生命线”。一个设计良好的Bootloader,能让飞控在恶劣环境下依然可靠升级;一个设计糟糕的Bootloader,可能让价值几万的无人机变成砖头。我见过太多人把Bootloader当成“最后才做”的功能,结果项目快结束了才发现Flash空间不够、升级协议有bug、掉电保护没做。Bootloader应该从项目第一天就开始设计,和主控芯片选型、Flash分区一起确定。

2026-06-17 10:23:40 115

原创 123、飞控中的存储系统:SD卡与Flash

摘要 飞控存储系统设计面临SD卡掉电损坏和Flash寿命有限的双重挑战。作者通过实际炸机案例,分析了SD卡和Flash的优缺点:SD卡容量大但怕掉电,Flash可靠但擦写次数有限。建议采用SD卡主存+Flash备份的组合方案,并详细探讨了FATFS与LittleFS文件系统的选择策略。文章总结了代码实现的四大教训:SD卡初始化重试机制、Flash擦写顺序、DMA异步写入和文件系统恢复流程,特别强调了掉电保护设计和性能优化方法。最后给出六条实用建议,包括选用工业级SD卡、二进制日志格式和强制格式化功能等。

2026-06-17 10:23:00 92

原创 049、有限集模型预测电流控制

文章摘要 本文通过实际案例分享了有限集模型预测电流控制(FCS-MPC)在电机控制中的调试经验。作者发现FCS-MPC存在三大核心问题:预测模型精度、代价函数权重设置和计算延迟影响。文中详细分析了前向欧拉离散化方法的补偿策略、多目标优化的优先级拆分策略,以及两步预测法的实施要点。针对参数敏感性问题,提出了离线标定与在线修正相结合的解决方案。最后指出工程实践中不应过度追求理论最优,而应注重实际效果,建议通过开环验证预测模型、限制开关频率、观测相电流波形等方法优化控制性能。文章强调FCS-MPC适合高动态响应场

2026-06-16 11:59:29 121

原创 048、模型预测控制基础

摘要:本文以电机控制实际问题为切入点,探讨模型预测控制(MPC)的核心原理与工程实践。通过对比PID控制的局限,阐述了MPC"建模-预测-优化"的三步框架,重点分析了电机建模离散化、代价函数设计、约束条件处理等关键环节。文章结合实战经验,指出求解器选择、计算延迟补偿、参数整定等常见陷阱,强调MPC适用于带约束的多变量耦合系统。作者建议从简化模型入手逐步迭代,并提醒MPC并非万能方案,需根据实际需求选择控制策略。(149字)

2026-06-16 11:57:38 174

原创 047、DTC与FOC对比分析

本文通过一个电机啸叫案例对比分析了FOC(磁场定向控制)和DTC(直接转矩控制)的特点。FOC通过解耦控制实现高精度,但对参数敏感且响应慢;DTC响应快但波动大,对参数要求低。作者发现FOC在低速重载时易引发机械谐振,而DTC的高频波动反而避开了谐振点。文章从控制架构、电流波形、参数敏感度、动态响应、实现难点等方面展开对比,建议根据应用场景选择:低速重载选DTC,高速高精度选FOC。最终解决方案是在FOC中增加陷波滤波器,体现了工程实践中灵活解决问题的思路。

2026-06-16 11:56:47 110

原创 046、DTC磁链与转矩滞环控制

滞环宽度不是越小越好。我见过有人追求“完美圆形磁链”,把滞环设到1%,结果IGBT炸了。工程上,磁链轨迹有点毛刺没关系,只要转矩脉动在允许范围内就行。异步电机我一般设3%-5%,永磁同步设2%-3%。开关频率要“软约束”。不要硬性限制开关频率,而是通过调整滞环宽度间接控制。我写过一个自适应算法:如果开关频率超过上限,自动增大滞环宽度;如果低于下限,自动减小。这样系统能自动适应工况变化。零矢量是双刃剑。低速时多用零矢量可以降低开关频率,但高速时少用。

2026-06-16 11:55:51 83

原创 054、TensorFlow Lite Micro的Person Detection项目:人检测

本文分享了在TensorFlow Lite Micro上实现Person Detection项目的实战经验与踩坑总结。作者从模型选型、工程结构、预处理、推理优化、后处理等多个环节详细解析常见问题,包括MobileNetV1模型的资源占用陷阱、tensor arena内存配置、量化模型处理技巧等。重点指出嵌入式开发中容易忽视的细节:GPIO控制失效可能源于张量维度错位、默认内存配置不足、中断服务函数滥用等。文章提供了分层架构设计、统计信息调试、PC端验证等实用建议,强调预处理归一化和后处理反量化的正确实现方式

2026-06-15 08:57:21 146

空空如也

空空如也

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

TA关注的人

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