前言
作为一支直到大二才接触 STM32 的“小白”团队,我们最终能拿奖,初期的AI 辅助确实功不可没 。
但在系列文章的最后,我更想聊一点不一样的东西——关于项目“含 AI 量”的深度反思。
我们经历过“代码全靠生成”的虚假繁荣,也经历了“亲手重构底盘逻辑”的痛苦蜕变。希望这段踩坑与觉醒的心路历程,能给同样在用 AI 辅助开发的你带来真实的启发。


一、初期的困境:被 AI 锁死的“性能上限”

🚫 误区:沉迷“复制粘贴”的虚假繁荣
项目刚起步时,我们和很多同学一样,把循迹需求直接扔给 AI,复制粘贴回 IDE,一编译跑通,车动了 。那时候瞬间膨胀:“哇,AI 真强,我也真强。”

但很快,当系统需要提速进阶时,我们一头撞上了一堵看不见的墙 :

痛点维度 现场表现 💡 底层致命伤
逻辑黑盒 整个系统框架由 AI 搭建,面对多层嵌套的状态机根本看不懂 。 代码虽然能跑,但完全是个“黑盒”,一旦出现赛道元素误判,排错根本无从溯源 。
盲目调参 车跑不稳时只能去问 AI,或照着网上流传的“玄学口诀”(如:打不过来就加大 Kp,抖动就减小 Kd)胡乱修改 。 压根不知道 KpKd 在代码流里究竟乘在了哪一步,不知其然更不知其所以然 。
上限锁死 随着车速提升、物理特性剧变,小车开始各种“玄学失控” 。 因为不懂核心逻辑,只能像无头苍蝇般不断试错。系统的性能上限,被死死卡在了 AI 最初生成的那份代码里

二、中期的觉醒:痛苦的重构

🚫 痛点:陷入调参“死循环”
到了备赛中期,最让人崩溃的现象出现了:每当尝试将车速提升一点点,之前辛辛苦苦调好的 PID 参数就会瞬间全部失效,几乎每次都要从零开始重新盲调。这种低水平的重复试错,彻底击碎了我们的耐心。

破局:勇敢的“断奶”与重构
痛定思痛,我们做出了一个极其大胆的决定:推翻重构
这是一次非常痛苦的“断奶”过程,但恰恰是从亲手敲下新架构的第一行代码开始,我们才真正触碰到了工程的内核。

💡 核心逻辑:告别“能跑就行”
在重构中,我们再也没法躲在 AI 背后依赖“能跑就行”的侥幸心理,而是被逼着去死磕每一行代码背后的物理与数学意义:

🔍 变量流向溯源:这个增益系数,究竟是乘在前端的 ADC 数据处理阶段,还是作用于末端的 PID 输出阶段?
⚖️ 滤波的本质权衡:这里为什么要强加一阶滤波?它到底是在有效抑制电磁噪声,还是在致命地牺牲系统的高频响应速度(导致相位滞后)?
🧮 算法降维打击:“差比和差”算法相比普通的基础作差处理,其数据拟合的线性度到底优越在哪里?它又为什么比其他算法更完美地契合当前的赛道场景?


三、同AI协作的真谛:谁才是“拍板”的人?

经历过痛苦的重构后,笔者终于悟透了当前技术阶段下,人机协作效率相对更高的姿势:

💡 核心逻辑:AI 理应是助手,而你必须是那个最终“拍板”的决策者。

为了直观对比这两种思维模式的差距,我们来看一个典型的场景:

协作姿势 提示词示例 💡 底层思维差异
🚫 错误示范 (交出大脑) “请帮我写一个智能车循迹代码。” 本质上是放弃了工程设计权,把思考和决策一并外包给了 AI,注定产出无法调试的“黑盒”。
正确示范 (掌控全局) “我决定使用差比和差算法来解决丢线时的线性度问题,请帮我补全具体的计算函数。” 核心的架构和方向由你来定,AI 仅仅退化为一个高配版的“打字员”负责辅助执行。

🔍 深度解析:理解逻辑是调试的绝对前提
只有当你真正从数学层面理解了“一阶滤波必然会带来相位滞后”这个底层原理,你才会知道在高速飙车状态下,导致晚打方向的元凶是滤波算法,从而果断把滤波系数从0.3调大到 0.7,而不是像无头苍蝇一样去瞎改 PID。

🚀 进阶推荐:Codex 的“计划模式”
顺着这个话题,我想“吹捧”一下在 VSC 中使用 Codex 的实战感受。强烈建议大家多尝试它的计划模式。如果你能在使用时把工程目标、架构思路和物理约束条件与 AI 充分沟通,逼着它先把整体计划和细节步骤拆解出来,那么最终生成的代码往往会极其贴近你的真实意图,大幅降低返工成本。

⚠️ 认知边界
这一点再往下深挖,就已经进入“提示词工程”的深水区了,本文不打算在此过度展开。我真正想提醒大家的是:无论 AI 工具进化得多强,大前提永远是你得先理解自己所选算法的底层逻辑,才能精准地切分任务,决定让 AI 帮你补全哪一块拼图。


四、从“碰运气”到“做实验”

🚀 工程觉醒:通透的“爽”感
当你顶着痛苦重构完代码,彻底看懂了整个工程架构,清晰地知道每一个微弱的电磁信号从 ADC 采集到 PWM 输出,究竟经历了几层数学变换和逻辑过滤,那种感觉是无与伦比的**“爽”**。

这种底层认知的蜕变,直接重塑了我们的日常调车模式:

调试模式 核心动作与心态 💡 实战效率与结果
🚫 以前:碰运气 盲目改一个参数,把车放下跑一圈,双手合十祈祷它能奇迹般地过弯。 毫无逻辑的试错,不仅效率极低,而且换个赛道马上原形毕露。
现在:做实验 精准知道微调这个变量,会引发哪条数据链路的连锁反应。 降维打击:以前要跑 20 趟才能碰出来的玄学参数,现在跑 3 趟就能通过数据死死锚定。

💡 终极内核:系统的“掌控感”
这种无可匹敌的“掌控感”意味着,我们不再只是凑巧“调出”了一台能跑的车,而是在亲手构建一个可预测、可复现的强鲁棒性控制系统。当你的状态机逻辑和底层数学模型,能够完美覆盖并兜底小车偏离赛道时的各种极限反馈时,站在赛道旁那份“稳如泰山”的底气,才是这场比赛中最迷人的瞬间。

写在最后:致敬纯粹的工程精神

💡 终极内核
智能车竞赛的核心壁垒,从来不是谁的 AI 提示词写得更花哨,而是谁对底层物理与工程架构的理解更透彻。

🛠️ 进阶法则
不要害怕面对数百行的陌生代码和复杂的逻辑嵌套。去暴力拆解它,去痛苦重构它,去无情质疑它。

🚀 完成蜕变
当你终于不再仰视并依赖 AI 赐予的“黑魔法”,而是能游刃有余地把它降级为你手中精准剔除 Bug 的“手术刀”时……
🎓 恭喜你,你已经正式从一个只会复制粘贴的“小白”毕业,成为了一名真正的嵌入式开发者。

🏁 祝大家在赛道上:参数一次过,车不飞,人不累,所向披靡!


(《智能车电磁组进阶之路》全系列完结,感谢阅读与见证)

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐