尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

智能汽车竞赛电磁组技术方案:从传感器设计到稳定调参

智能汽车竞赛电磁组技术方案:从传感器设计到稳定调参 简介资源围绕智能汽车竞赛电磁组“超声波避障”技术方案展开来自南昌大学启天电磁一队的参赛总结适合智能车竞赛选手、嵌入式与单片机开发爱好者阅读。方案从HC-SR04超声波测距模块切入讲解了发射超声波并计算回波时间的基本原理以及测距时序、发射角、模块安装高度与倾斜角度设计同时结合障碍预见区、左右可分辨区、接近绕开区三阶段避障流程给出了分阶段减速、判障与打角绕开的程序控制思路。温度校正、低成本硬件选型和绕障策略等内容能帮助读者理解从传感器选型到算法落地的完整链路。压缩包内为1个docx文档大小约630KB以技术方案说明为主便于直接查看或用Word编辑整理。目前已有43人学习既可用于备赛方案参考也可作为智能避障小车课程设计或入门开发的参考资料。1. 这是一份什么样的“技术赛方案”把时间拉回到备赛周期全国大学生智能汽车竞赛的电磁组是每年参赛人数最多、竞争也最激烈的组别之一。南昌大学启天电磁一队这份技术赛方案本质上不是赛后总结而是赛前、赛中的“施工图纸”——它记录了队伍从零到一搭建一辆能稳定跑完赛道的电磁循迹车的完整思路包括机械结构怎么改、传感器怎么排布、控制策略怎么定、参数怎么调以及最终怎么在有限时间内把车调到能出成绩的状态。如果你正准备参加下一届智能汽车竞赛或者刚刚进入实验室、被分到电磁组这份方案里最值得看的不是某个具体参数而是它的“决策链路”每一项设计为什么这么做做了之后带来了什么收益代价又是什么。这种思考方式比抄一辆现成的车重要得多。这篇文章我会以第一人称的视角把这套方案的骨架拆开结合我自己调车踩过的坑把电磁组从方案设计到落地调试的关键点讲清楚。适合正在备赛的队员读也适合刚接手学长代码、还摸不着头脑的新手快速建立全局认知。2. 方案整体设计先定框架再扣细节2.1 电磁组的比赛本质是什么电磁组的赛道是一根通有20kHz交变电流的导线车模通过车头前方的电感线圈感应磁场强度判断导线相对车体的位置从而完成循迹。所以整个技术方案的核心都是围绕“感应信号-处理-控制”这条链路展开的。但如果你只把它理解成“循线跑”就低估了它的难度。实际赛道上会有十字弯、圆环、坡道、障碍加上今年规则里新增的若干元素车既要快又要稳还必须在各种电磁干扰下保持判断一致。说白了电磁组的本质是一个“弱传感器条件下的鲁棒控制问题”——你手上的信息量远比摄像头组少但要把车控到接近极限。这决定了方案设计的第一原则信息量不够就用结构凑。传感器排布、机械调校、控制冗余都是为这个原则服务的。2.2 方案选型背后的逻辑一套完整的电磁组方案通常包含四大部分车模机械改装、传感器阵列设计、控制算法、调试方法论。启天电磁一队的这份方案在结构上并没有另辟蹊径但它有一个很突出的特点——每个环节都做了“针对赛道元素的显式处理”。这不是炫技而是因为电磁组的赛道元素就那么几类每一类都会对传感器信号产生特定干扰提前在方案里预留对策比现场临时调参靠谱得多。先说车模。电磁组标准车模是D车模不同届可能微调但原厂车的机械精度和重心分布远达不到高速行驶的要求。方案里对前轮束角、后轮差速、悬挂软硬、重心高度都做了调整。关键改动有两处一是降低电池安装位置把整车重心压到接近底盘平面这在高速过弯时直接决定会不会翻车二是更换轴承并调整差速松紧保证两个后轮在过弯时转速差自然释放而不是靠轮胎硬蹭。这两处改动不增加任何代码复杂度但对速度上限的提升立竿见影。很多队伍前期忽略机械猛调PID死活上不了速度其实问题根本不在算法上。传感器部分方案选的是水平电感加竖直电感的组合。水平电感负责识别车身与导线的横向偏移竖直电感配合八字绕法提供前瞻信息用于提前感知弯道方向和曲率变化。这套组合是电磁组的主流方案优点是信号解耦比较清晰水平电感的关系式近似线性竖直电感的比值则对远场更敏感。控制算法上方案并没有上多复杂的模型转向环用的是PD速度环用的是PI外加一个基于电感比值的差速控制。整体思路是“用简单控制器把系统做稳再用逻辑处理覆盖特殊元素”而不是一上来就上卡尔曼滤波、模糊控制这些花活。这个取舍很务实——比赛比的不是代码复杂度而是圈速稳定性。2.3 为什么不做“全能车”很多队伍喜欢追求“什么赛道光都能处理”结果代码里堆满了if-else每加一种情况就引入一批bug最后调车调成一团乱麻。启天这边的做法正好相反方案里明确写清楚了哪些场景必须覆盖十字、圆环、坡道哪些场景可以放弃部分速度急弯减速通过哪些场景根本不需要做比如电磁组的障碍物靠近后用超声波和电感融合判断就行不用刻意检测。这种“优先级排序”在备赛后期价值极强。队伍不会因为追求完美而陷入无限优化的泥潭而是把有限的时间投入到对圈速影响最大的环节上。我个人非常赞同这个思路先让车稳定跑完赛道再去追求每个弯的极限走线。3. 传感器系统电磁感知的底层逻辑3.1 电感阵列的核心公式电磁组传感器的工作原理可以归结为一个简单的物理关系导线中通入20kHz交变电流周围会激发同频交变磁场电感线圈处在磁场中会感应出同频电动势且感应电压的大小和线圈与导线的相对位置有关。线圈越靠近导线感应的电压越强线圈轴线与磁场方向夹角越大感应电压越小。实际电路里电感线圈会并联一个电容构成LC谐振回路。谐振频率选在20kHz附近相当于一个窄带滤波器把其他频段的干扰压制掉。这里有一个新手非常容易踩的坑谐振频率一旦偏了信号幅度会断崖式下降而且可能整个赛道的信号都偏弱怎么调增益都没用最后发现是电容选错了容值。计算很简单感值10mH的工字电感配102电容1nF时谐振频率约50kHz要匹配20kHz感值10mH需要配约6.8nF电容或者用更小的感值配nF级电容。所以很多队伍直接买10mH电感然后随手插个104电容是完全错误的。正确做法是先用示波器看谐振峰或者用信号发生器扫频确认实际谐振点。这个细节写进方案里可以帮新手省掉一整周的排查时间。3.2 排布方式决定感知维度常见的电感排布有三种水平一字排布、垂直一字排布、八字排布。三种方式不是互相替代的关系而是各有侧重水平电感对横向偏移最敏感信号与距离的关系近似线性适合做近距离的精确循线垂直电感对远场信号更敏感能够提前感知弯道方向适合做前瞻八字排布通过左右两对电感差比可以有效消减共模干扰同时对导线的偏移方向判断更稳健。启天电磁一队的布置方案我印象比较深的是他们的前瞻处理不加额外支架而是把竖直电感的安装位置尽量靠前、略向外侧倾斜配合八字排布的信号融合形成一个“近处精确、远处趋势”的复合感知。这个设计没有增加机械复杂度却让车在入弯前就能提前判断方向等于变相拉长了控制回路的“眼睛”距离。信号处理方面方案里用的是归一化差比和方式——先通过标定记录每个电感的空载基准值再把实时数据和基准值做归一化处理消除供电波动和温漂的影响。这个步骤看起来不起眼但如果不做车的信号会在电池电压下降后发生漂移跑一会儿赛道就开始“发飘”很多人把这个误判为PID没调好其实根子在标定。3.3 关于“更多电感是否更好”不少队伍喜欢堆电感数量八个十个往上加。我的看法是电感数量够用就行多一个电感多一份标定和排错的负担。电磁组的赛道信息本身是连续的五个电感基本足够覆盖一个车宽范围内的电磁场变化再多边缘电感的信号已经非常弱信噪比并不好。启天方案里用的五路融合我实测下来是性价比最高的组合。4. 控制策略让车知道“什么时候该做什么”4.1 转向控制PD是最稳的起跑线电磁组的转向控制绝大多数队伍的起点都是PD控制器。P项负责把车拉回赛道中心D项负责抑制过冲防止车在直道上左右蛇形。但PD的控制周期和参数匹配很关键。启天方案里的转向控制周期是5ms也就是200Hz而速度环控制周期是10ms两个环路错开执行。为什么这么做因为转向是快变量必须高频刷新速度是慢变量低频更新反而更稳定。如果两个环都用同一个中断要么转向响应不够快要么速度控制太激进导致电机发热都不理想。PD参数的整定方案里给了一个非常实用的调试顺序先只加P让车能勉强循迹跑起来增大P直到车开始震荡再退回80%加D消除震荡D从0.1倍P开始往上试反复在直道和弯道上验证超调量。这套流程最大的价值在于“让参数有迹可循”而不是靠感觉乱试。4.2 速度控制不能只踩油门不刹车电磁组速度控制的核心矛盾在于车既要尽量全速跑直线又要在急弯前及时减速。如果只用一个固定的目标速度要么直道太慢要么弯道冲出去。启天方案里的做法是根据归一化电感差值给出一个“曲率估计值”再把这个值映射到目标速度上。电感差大说明车离导线远大概率在入弯目标速度就降下来电感差小说明车在直线目标速度就往上升。这个映射不是线性的而是用了一个带死区的分段函数直线段附近速度变化平缓弯道段速度下降快速避免车在微幅摆动时频繁加减速。这个逻辑的实现并不复杂但很多队伍会把它做“抖”。原因在于速度环的输出直接给到了电机的PWM而PWM和实际车速之间存在积分滞后。如果速度环P参数太大整车会像“点头”一样一窜一窜。解决办法是给速度环的输出加一个限幅让电机电压变化速率可控。启天方案里的限幅值我记得是每周期最大变化不超过8%实测下来整车平顺很多。速度控制同样需要考虑差速配合。过弯时如果只靠转向舵机硬打内外轮会因为转速一致而产生侧滑轻则掉速重则甩尾。方案里给转向输出乘以一个差速系数叠加到左右后轮的PWM上转向越急差速越大。这样做既减轻了转向机构的负担也让车在弯道中的走线更顺畅。调试时注意一个点差速系数不能太大否则直道上会跑偏。4.3 特殊元素用逻辑而不是模型十字、圆环、坡道这三类是电磁组的固定考点。启天方案并没有为它们专门建立复杂的模型而是用了“信号特征 状态机”的轻量方案。简单说就是先提取每种元素的信号特征十字左右电感信号同时剧增水平电感的归一化输出超出常规范围圆环一侧电感持续保持高电平另一侧信号持续偏低且持续时间超过一个阈值坡道前方垂直电感的信号整体增强同时车速发生波动。状态机监测这些特征一旦触发就切换到对应的处理策略。比如十字时强制直行圆环时限制最大转向角和目标速度坡道时提高PWM上限补偿电机负载增加带来的掉速。这种做法的优点是逻辑清晰、调试方便出bug也容易定位。缺点是需要手动标定特征阈值而且对信号的稳定性要求较高。如果信号波动大状态机可能误触发所以底层的归一化和滤波必须做扎实。5. 调试实录从零到能跑的完整路径5.1 调试前的准备工作拿到新车模第一步不是写代码而是装车。机械务必先装好轮胎要清洗并打磨差速要调到用手拨动后轮能自然滑行一段距离转向机构要顺滑没有卡滞。然后才是传感器标定、控制逻辑空跑验证最后才是上赛道实测。我见过太多队伍车还没装利索就急着烧程序结果跑起来整车异响、转向响应慢还以为是代码问题查了一个星期最后发现是舵机连杆球头卡死。机械是1代码是01没立住0再多也没用。一个实用的装车自检清单两个后轮悬空时手拨动一侧另一侧应反向轻转说明差速正常舵机左右打死连杆不碰底盘转向顺畅无死角车放平地上用手推着走能直线滑行很远说明无偏磨电池固定牢固重心位置符合设计预期。5.2 调车顺序和参数整定节奏正式调试阶段建议按下面的顺序来不要把顺序打乱第一步开环验证传感器。先不上控制用手拿着车在赛道上模拟各种位置观察上位机里每一路电感的数值变化确认信号响应符合预期。这一步能发现传感器排布错误、接反、谐振偏频等基础问题。第二步低速循迹。目标速度先给到0.5m/s左右只加小幅P值让车能缓慢沿导线走。跑通之后逐步提速同时根据车在弯道的过冲情况调整D参数。第三步高速测试和特殊元素验证。速度往上提到1.5m/s以上重点观察圆环和坡道两个环节的稳定性。这两个元素处理不好圈速直接崩而且很难通过调PID救回来。第四步打磨圈速稳定性。连续跑10圈以上记录每一圈的耗时和跑飞次数。车快不难难的是每次都快而且不翻。这一步考验的是电气系统的稳定性和参数的鲁棒性。下表是调试中最常遇到的几类问题和排查方向直接照着查能省不少时间现象可能原因排查方向直道蛇形摆动D参数过小或过度转向增大D值检查转向中心位置高速入弯甩尾差速不足或刹车过晚增大差速系数提前曲率判断圆环内打转圆环判据阈值不当拉长特征持续时间调整状态机触发条件上坡掉速严重电机补偿不够增大速度环输出上限信号忽大忽小电池电压波动检查归一化基准值增加滤波上电后无信号谐振电容配置错误用示波器检查谐振峰5.3 团队分工和备赛节奏这一条虽然是管理层面的但它和技术方案一样重要。一支队伍三到四个人建议按“机械 电路/感知 控制算法 现场调试”来分工但两个关键角色不能重叠一是算法主调二是机械负责人。电磁组是一个高度耦合的系统机械改动会直接影响传感信号传感信号又决定算法表现如果机械和算法频繁互相改现场会乱成一锅粥。备赛节奏上前期前6周固定每周跑一次全赛道记录数据中期第7-10周开始专注特殊元素优化最后两周只做稳定性验证不再做大的结构改动。越到后期越要克制改动的冲动很多队伍就是在赛前最后一天大幅度改参数结果第二天直接翻车。关于数据记录强烈建议给每次调试录视频并且配套记下当时的参数版本。调车最怕“昨天还好好的今天突然不行了”如果没有版本记录回溯问题会非常痛苦。启天方案里用了一个简单的Excel表记录日期、参数组号、跑圈结果、备注。这个习惯坚持下来备赛效率至少提升一倍。5.4 参赛当天的注意事项比赛当天最考验的不是技术而是心理和流程管理。有几个小细节分享给你电池提前充满三块以上并且至少跑过一轮完整赛道确认电压稳定性所有工具按清单整理尤其是烙铁、焊锡、万用表、备用电容电感这些可能突发维修用到的东西上位机调试软件提前安装到比赛电脑上现场临时装驱动非常尴尬赛前试跑时不要只跑一圈至少要连续跑三圈确认车在满电和半电状态下都稳定。还有一个很多人忽略的赛前不要让算法主调一晚上不睡。熬夜调出来的参数第二天脑子不清醒出问题根本反应不过来。宁可提前一天收工让参数固定下来跑决赛也不要赛前最后一刻还在动代码。6. 写在最后从我个人的体会来说电磁组的备赛像是一场“和系统做朋友”的过程你没办法用蛮力让车跑得更快必须理解每一个信号、每一颗螺丝、每一行代码之间微妙的耦合关系。启天电磁一队这套方案给我的最大启发不是它的某个具体参数有多巧妙而是它在整个设计过程中始终保持了“克制”——在传感器上克制到够用为止在算法上克制到简单为好在调试上克制到稳定优先。这份方案适用的场景很广无论你是第一次参赛还是准备冲刺国赛先把自己的车调到“稳定跑完”再谈“跑得快”永远是最快的路径。如果你手头的代码已经能跑但成绩上不去回头检查一下机械精度和信号标定往往比死磕PID更有收获。本文还有配套的精品资源点击获取
返回列表