FSAE电动方程式算法开发:牵引力控制、扭矩矢量与能量管理实践
发布时间:2026/9/5 5:44:02 锦皓数字建站

1. 从零开始搭一套FSAE电动赛车算法到底在搭什么这几年大学生电动方程式FSAE Electric在国内越来越火但很多车队在整车机械设计上已经卷到相当高的水准真正拉开差距的反而是隐藏在电池箱和逆变器背后那套算法。我当年带车队的时候最头疼的不是电机选型不是电池排布而是——车造出来了电门踩下去扭矩却给得乱七八糟电机在低速抖得像筛子到了高速弯又不敢给油最后跑出来的圈速还不如上一代燃油车。这篇是我打算写的“从零开始开发一套大学生电动方程式赛车算法”系列的第一篇先把整体框架和相关基础理清楚。后面几篇会具体展开牵引力控制、扭矩矢量分配、能量管理、状态估计等模块的详细设计。先说清楚这套算法到底是什么、能干什么。简单讲电动方程式赛车的算法核心是解决三个问题一是怎么把驾驶员踩下的电门踏板信号映射成合理的前后轴扭矩请求二是怎么在极限工况下保证赛车稳定可控不让后轮烧胎打滑三是怎么把有限的电池能量在比赛中最大化利用。这套东西适合谁来参考如果你是车队电控组或动力总成组的新人被分到“写控制算法”这个任务但还不知道从哪儿下手或者你已经在用Simulink做基础模型但对整个算法架构、各模块之间的信号流还比较模糊——这篇文章就是给你打底子的。我下面所有内容都会围绕一套我实际参与过的、可以在大学生车队条件下落地实现的算法架构来讲。不说虚话直接拆开揉碎了讲。2. 整车算法架构设计与信号流梳理2.1 算法不只是“写代码”它是在做一套整车决策系统很多同学一听说“写赛车算法”第一反应就是PID、卡尔曼滤波、神经网络这些名词。但实际上一个能稳定跑完耐久赛的算法本质上是一套分层决策系统从驾驶员输入到执行器输出中间隔了好几层逻辑。我习惯把整个算法架构分成五层感知层接收各类传感器信号——油门踏板位移、制动压力、四个轮速、横摆角速度、纵向加速度、横向加速度、转向角度、电池SOC、电机转速等。估计层基于传感器信号估算车辆当前状态——车速对电动方程式来说用轮速估算车速是个大坑、质心侧偏角、轮胎附着利用率等。决策层根据驾驶员意图和车辆状态计算整车需求扭矩、前后轴分配比、单轮扭矩修正量。执行层把扭矩请求转化成对逆变器/电机的电流或扭矩指令同时监控电机温度、逆变器温度、电池放电功率限制。监控层故障诊断与安全冗余逻辑——这是电动方程式赛车的刚需绝缘检测、紧急断电、扭矩监控监控扭矩无请求时驱动扭矩必须为零都在这一层。这五层不是拍脑袋分的。FSAE规则里对“扭矩安全监控”有硬性要求你的算法必须保证某些故障状态下能立即切到零扭矩。所以从一开始设计架构就要把监控层独立出来而不是写到最后临时加。2.2 算法开发平台选型Simulink还是纯C代码这个问题几乎每个车队都会纠结。我自己的经验是如果你追求开发效率和团队协作方便Simulink 自动代码生成显然是主选如果你的车队电控组功力深厚、目标控制器资源非常紧张或者你想更深入地掌握底层逻辑那纯手写C也可以。但现实一点讲大学生车队的人员流动率很高每年都有新人加入。Simulink模型的可视化程度高新人上手快而且模型本身就是文档比手写代码的可读性好很多。我们当年用的是MATLAB/Simulink建模 Embedded Coder自动生成C代码跑在英飞凌AURIX TC277三核单片机上。主核跑控制算法辅核跑通信和监控互不干扰。这套方案的好处是从Simulink模型到烧录进控制器的代码中间只隔一个自动生成过程你可以在模型里做大部分调试和验证工作。不过Simulink不是万能的。有一样东西它做不了底层驱动和中断配置。这需要在目标控制器的工程环境里手写或者借助对应的底层代码库。2.3 核心信号流电门踏板到车轮扭矩的完整路径讲架构不能只讲空壳我画一条完整的信号链路这条链路你后面做任何算法模块脑子里都要有数。驾驶员踩下电门踏板 → 踏板位移传感器产生模拟电压信号 → ADC采样得到数字量 → 换算成踏板开度百分比0%到100%→ 踏板开度经过油门映射曲线简单场景下是对应比例实际上需要标定曲线得到需求扭矩系数 → 需求扭矩系数 × 当前允许最大扭矩由电池功率限制、电机外特性、温度降额等决定得到驾驶员需求扭矩 → 进入扭矩分配模块按照当前工况直线/转向、加速/制动计算出前后轴各分配多少、左右轮各分配多少 → 交给底层执行器逆变器输出三相电流驱动电机。这条链路里任何一个环节出问题都会直接反映在驾驶感受上。最典型的例子轮速信号毛刺没滤波好导致估计车速跳变扭矩突然往上冲一下驾驶员就会觉得车“窜”了一下。这种问题在仿真里很难发现往往是装车后车手反馈“这个车开起来不舒服”然后你就要花一晚上看CAN日志找问题。3. 核心模块拆解牵引力控制与扭矩矢量分配3.1 为什么电动方程式一定要做牵引力控制电动方程式和燃油方程式最大的不同在于电机在低转速区就能输出峰值扭矩而且响应速度快到毫秒级轮胎的附着极限瞬间就会被突破。说白了电动机可以在不到50毫秒内把扭矩从零拉到200牛米以上但轮胎和地面的附着系数是有限的你在加速瞬间如果给满扭矩后轮就是在地上空转冒烟。燃油车发动机扭矩响应慢牵引力控制系统TCS的工作条件相对宽松。电动车的电机扭矩响应基本没有延迟这就意味着TCS的判断和执行必须快到极致。而且比赛中如果轮胎空转除了损失驱动力还会带来轮胎过度磨损、温度急剧升高等问题直接毁掉你的一套新胎。所以电动方程式赛车必须要自己做牵引力控制不能靠电机控制器自带的“防滑”功能一般是防溜坡的不是防加速打滑的。3.2 牵引力控制的两种实现思路滑转率控制 vs 扭矩降额控制我把目前车队里比较常用的TCS方案分成两大类基于滑转率的闭环控制和基于滑转率阈值的扭矩降额控制。基于滑转率的闭环控制思路是实时估算当前驱动轮的滑转率和目标滑转率根据轮胎-路面附着特性一般峰值附着系数出现在滑转率10%~20%之间做差通过PID控制器计算出需要减少的扭矩值。这套方案的好处是控制精度高能在不同路面自适应调整坏处是需要比较准确的轮速和车速参考而车速估算恰恰是最容易出问题的地方。基于滑转率阈值的扭矩降额控制思路简单粗暴当驱动轮滑转率超过设定阈值时按一定比例降低扭矩请求直到滑转率回到安全范围。实现起来容易调参成本低很多车队用这套方案就能取得不错的效果。我们当年选的是滑转率闭环PI控制因为电动方程式的电机响应足够快闭环控制在台架和赛场上表现都很稳定。但我也见过不少车队用阈值降额方案在低附着路面上依然跑得不错关键在于算法要跟车手的驾驶风格匹配。下面给一个简化版的TCS扭矩修正逻辑伪代码方便讲清思路每个控制周期比如1ms执行一次 1. 读取四个轮速计算后轮驱动轮轮速 ω_R 2. 估算车辆车速 v_x从非驱动轮或GPS/IMU融合 3. 计算滑转率 λ (ω_R * r_eff - v_x) / (ω_R * r_eff) // r_eff 是轮胎有效滚动半径 4. 如果 λ λ_target比如0.15 // 说明驱动轮在打滑需要降扭矩 slip_error λ - λ_target torque_reduction Kp * slip_error Ki * ∫slip_error dt 最终扭矩请求 驾驶员扭矩请求 - torque_reduction 5. 如果 λ λ_target - 死区 // 打滑已经控制住逐渐恢复扭矩 最终扭矩请求 驾驶员扭矩请求按照一定斜率恢复防止扭矩突变这个控制逻辑的核心是Kp和Ki两个参数的整定以及扭矩恢复的斜率设定。调得太激进会导致扭矩频繁波动车一冲一冲的调得太保守又会导致动力明显受限。我们当年在干燥沥青路面上的经验是滑转率目标设在12%~15%区间Kp从0.5开始往上调Ki取Kp的十分之一左右起步最后标定结果大概是Kp1.2、Ki0.15扭矩恢复斜率设为500 Nm/s。但这只是参考每个车队的轮胎、地面、车重都不一样必须实际测试后标定。3.3 扭矩矢量分配Torque Vectoring的入门逻辑扭矩矢量分配是电动方程式区别于燃油方程式的一大杀手锏。传统燃油车想给左右轮分配不同扭矩需要差速器加复杂的机械结构。电动车就简单了——左右后轮各自独立电机驱动我在程序里直接给左后电机和右后电机下发不同的扭矩请求就行。扭矩矢量的核心原理是通过左右驱动轮扭矩差产生一个额外的横摆力矩帮助车辆更灵活地入弯或更稳定地出弯。用人话说就是你在入弯时给外侧轮多一点扭矩内侧轮少一点车头会自动往里扎让转向更听话。具体实现上扭矩矢量分配首先要计算一个“横摆力矩修正系数”。我常用的是基于转向角度和纵向加速度的前馈控制加基于横摆角速度误差的反馈修正整车需求扭矩 T_total由驾驶员踏板决定 前轴/后轴分配比例 r_axle比如直线全加速时后轴占80%弯道中根据转向角度调整 后轴总扭矩 T_rear T_total * r_axle 加入横摆力矩修正左右扭矩差 ΔT K_ω * (ω_target - ω_yaw) K_δ * δ_steer 左后轮扭矩 (T_rear - ΔT) / 2 右后轮扭矩 (T_rear ΔT) / 2这里有一个必须注意的限制条件左右扭矩差ΔT不能无限大因为单个电机有峰值扭矩限制而且大扭矩差可能让内侧轮反拖制动超出电机的再生制动能力。我们当时设定的限制是ΔT不超过后轴总扭矩的60%。此外扭矩矢量分配不能独立于TCS工作。如果你在出弯时给了很大的横摆扭矩差可能导致外侧轮突破附着极限这时候TCS就必须介入把整车扭矩降下来。两个模块的优先级关系一定要在代码里明确TCS的扭矩降额优先级最高扭矩矢量的修正必须在TCS降额之后的基础上计算。4. 状态估计算法车速估算与卡尔曼滤波实践4.1 车速估算为什么这么重要且困难你可能觉得“车速”这个信号嘛不就是一个车速传感器的事但在赛车上真不是。我们车上没有专门测车速的传感器车速是从轮速和IMU信息里“估计”出来的。难点在于四个轮子在驱动和制动时都存在不同程度的打滑或滑移任何一个轮子的转速都代表不了真实车速。电动方程式刹车时会启动再生制动制动力分配前后轴都有后轮在某些重刹工况下可能抱死轮速瞬间降到很低。高速弯道中内外侧轮速差很大你用哪一侧的轮速都不准确。所以车速估算必须融合多方面信息。我介绍两种最常用的方法基于最大轮速的修正法和卡尔曼滤波融合法。4.2 方法一基于最大/最小轮速的修正法适合起步阶段这个方法是纯逻辑判断的代码量少理解起来也简单正常驱动时非驱动轮的轮速通常更接近真实车速前轮不驱动打滑概率低所以用前轮平均轮速作为车速参考。如果四个轮子都在减速制动工况取四个轮速的最大值作为车速参考因为抱死的轮子转速低最大轮速最接近真实车速。如果四个轮子都在加速驱动工况取四个轮速的最小值作为车速参考因为空转的轮子转速高最小轮速最接近真实车速。这个方法在大多数情况下表现良好而且计算简单适合车队算法开发的第一阶段使用。但它有一个致命缺陷在四个轮子同时处于极端工况时比如重刹加打滑无法准确判断。所以想要追求更高的精度就需要上卡尔曼滤波。4.3 方法二卡尔曼滤波融合车速估计进阶方案卡尔曼滤波的本质是利用两个独立的信息源互相修正一个是利用IMU加速度信号对车速进行时间更新积分另一个是利用轮速/GPS信号对车速进行量测更新观测。加速度计短期精度高但会漂移轮速长期稳定但受打滑影响两者融合正好互补。我这里给一个简化版本的滤波设计思路状态量x [v_x, a_x_bias]^T即纵向车速和加速度计偏置。输入量a_x_imuIMU测得的纵向加速度。量测量z v_wheel_ref通过轮速逻辑选出来的参考车速。状态方程v_x(k1) v_x(k) (a_x_imu - a_x_bias) * dt加速度计偏置假设慢变。量测方程z(k) v_x(k)。看起来简单但工程实现上有很多细节量测噪声R要动态调整当轮速不可靠时比如检测到驱动轮打滑剧烈把R调大让滤波器更信任加速度积分值当轮速可靠时把R调小让滤波器更快收敛到轮速参考值。加速度计偏置估计很重要IMU安装难免存在零偏如果不估计这个偏置纯积分几分钟后车速就会严重漂移。我们第一次实车测试时就踩过这个坑跑了两圈显示的车速已经比GPS车速大了差不多20km/h。时间同步问题IMU和轮速信号通过CAN总线传输CAN帧在总线上传输的时间戳不是绝对同步的。如果你发现滤波结果有明显滞后多半是时间对准的问题。4.4 质心侧偏角估算要还是不要质心侧偏角β角是很多高级稳定性控制算法的必要输入。但在大学生方程式阶段我建议前期不要急着上质心侧偏角估算原因很简单这个量没有便宜好用的直接传感器纯靠估算很难保证精度而估算不准的β角反而会误导控制算法做错误决策。我们队当时在C级高级算法里的路线图是这样的第一阶段只做车速估计第二阶段加入横摆角速度的量测有IMU就能拿到第三阶段才开始考虑质心侧偏角估算。如果你的车在低速场地赛大部分FSAE赛事的赛道平均速度其实不超过80km/h中比赛横摆角速度反馈的稳定性控制基本够用β角估算可以后置。5. 能量管理算法不只是省电是电池SOC和功率限制的最优策略5.1 电动方程式的“心脏”是电池但“灵魂”是能量管理很多人忽略了电动方程式赛车的比赛尤其是耐久赛本质上是一场能量分配的比赛。电池里存储的能量是固定的规则限制电池总能量比如就是28kWh左右你要做的就是把这有限的能量在整个比赛过程中最优地分配出去。假设你跑一场22公里的耐久赛平均速度需要保持在一定水平以上而电池能量就那么多。如果你的算法在第一个弯道就满扭矩输出开得确实爽但跑到最后一圈可能电池没电了直接被拖回维修区——这就是典型的“算法没有能量管理眼光”带来的结果。能量管理算法的核心目标预测性功率限制基于剩余SOC和赛事剩余里程或时间动态计算当前允许的最大功率。比如前几圈SOC充足限制功率为电池峰值功率的95%后几圈SOC偏低限制功率可能降到峰值功率的70%。功率限制对扭矩请求的影响电池管理系统BMS会实时上报允许放电功率上限算法端需要把功率限制换算成扭矩限制通过电机效率和当前转速查表得到再对驾驶员扭矩请求做限幅。能量回收策略制动时的再生制动扭矩大小直接决定回收多少能量。再生制动太强可能导致后轮抱死太弱则回收太少。这个要跟ABS/制动平衡策略联合标定。5.2 一个可落地的功率限制算法例子我见过不少车队直接在BMS上报的功率限制值上做了一个低通滤波就拿来用这其实不够。因为功率限制不仅是电池端的物理限制还应该加入你比赛策略的计算结果。具体思路可以这样做维护一个“策略功率限制”值 P_strategy 比赛前根据赛道长度和电池容量预设一个平均功率目标值 P_avg P_avg E_battery_total / T_race_target 比赛过程中每10秒更新一次 P_strategy P_avg K_soc * (SOC_actual - SOC_target_profile) // SOC_target_profile 是根据比赛进度设定的目标SOC曲线 // 比如比赛初期允许SOC略高于目标曲线放电保守一点后期再放开 最终允许功率 P_allowed min(P_strategy, P_bms_peak, P_inverter_limit, P_motor_thermal)这段逻辑里的关键是怎么设定SOC目标曲线。我们当时的做法是把整个比赛等分成若干段每一段设定一个SOC下限比赛前半段SOC下限设得高一些比如完赛时SOC要大于20%后半段可以适当降低下限到5%。这样既能保证完赛又不至于前半段太保守损失圈速。5.3 关注电机和逆变器的热降额能量管理还要考虑一个常被忽略的物理约束电机和逆变器有热上限。连续大功率输出几分钟之后电机温度会迅速飙升控制器为了保护硬件会主动降功率这个降额逻辑通常由电机控制器硬件本身实现。但如果你的算法只是傻傻地请求最大扭矩不看温度信号就会出现“前几圈发疯跑、后几圈电机过热降功率、圈速掉一大截”的尴尬局面。所以在算法里加入温度前瞻性的功率管理非常有用。比如检测到逆变器温度超过80°C且还有上升趋势时提前把功率上限往下调一点让温度稳定在一个可控区间而不是等硬件降额强制一刀切。从比赛策略的角度看这种“平滑的功率限制”比“后知后觉的硬降额”对圈速影响更小。6. 算法开发流程与实车验证避坑指南6.1 从仿真到实车一步一步来不要跳过我见过太多车队犯同一个错误Simulink模型里跑了一下阶跃响应觉得没问题直接烧到赛车上结果一踩电门车就乱窜。仿真和实车的差距非常大主要体现在信号噪声仿真里传感器信号是完美的没有毛刺、没有时延。实车上轮速信号可能因为齿圈加工误差或传感器安装间隙问题出现异常尖峰。执行器延时控制器发一个扭矩请求给逆变器逆变器真正执行出来中间可能经过几毫秒甚至几十毫秒的延时。仿真里如果不把延时建模进去控制器的相位裕度可能不够实车就会振荡。环境不确定性路面附着系数变化、温度变化导致胎压波动、电池电压在加减速时的大幅波动这些在静态仿真里都模拟不了。所以我的建议是算法开发流程一定要走这几步模型在环MIL测试纯Simulink环境里验证逻辑正确性。软件在环SIL测试把自动生成的代码放到PC上跑配合车辆动力学模型做联合仿真。硬件在环HIL测试把代码刷到目标控制器里控制器通过硬件接口连接一个实时仿真机比如Speedgoat或NI PXI仿真机模拟整车和传感器信号。这一步能发现大量控制器底层驱动、中断优先级、CAN通信时序的问题。台架测试电机台架上验证扭矩输出精度和响应时间。实车测试低附着力场地先测再逐步上高附着场地。6.2 实车测试中的常见坑与排查思路我把这些年实车测试中遇到的高频问题整理成下面这个速查表每个问题背后都是血泪教训现象可能原因排查思路低速起步时电机抖动扭矩请求有高频振荡抓CAN日志看扭矩请求信号是否有振荡检查滤波器截止频率检查PI控制器是否振荡车在直线加速时向一侧偏左右轮扭矩分配不均检查两个电机控制器的扭矩偏移检查左右轮速信号是否一致确认扭矩矢量分配模块没有异常介入刹车时后轮先抱死再生制动扭矩分配过大降低再生制动扭矩调整前后制动力分配考虑添加后轮防抱死逻辑SOC下降速度远超预期能量管理策略太激进检查功率限制是否实际生效查看驾驶风格数据平均功率、峰值功率出现的频率电机温度过高触发降额散热不足或功率模型偏差检查冷却系统在算法里加入温度预测模块提前降低功率上限轻踩油门时车突然窜一下轮速信号毛刺导致车速估计跳变检查轮速信号滤波检查车速估算模块对轮速异常的鲁棒性加入信号合理性检查6.3 数据记录与分析是算法迭代的基础最后说一个很多车队初期不重视、但后期发现无比重要的东西数据记录系统。你的算法再高级没有高速、可靠的数据记录就等于盲人摸象。我们的方案是用控制器上的一块CAN通道专门接一个CAN数据记录仪去赛事前某宝采购的便宜记录仪或者用树莓派 CAN扩展板自制以10ms周期记录以下关键信号踏板开度、制动压力驾驶员输入四个轮速、方向盘转角车辆状态前后电机扭矩请求和实际扭矩控制效果电机转速、电机温度、逆变器温度动力系统状态电池SOC、电池电压、电池电流能量流状态车辆速度、纵向/横向加速度、横摆角速度动力学状态拿到这些数据后赛后分析就成了算法迭代的核心驱动。我记得有一次车手反馈“高速弯里车尾不稳定”刚开始怀疑是悬架问题后来看数据发现入弯前驾驶员轻点了刹车结果后轴再生制动介入产生了一个横摆扰动——这个如果不看数据光靠体感盲调不知道要折腾多少天。7. 写给车队新人的算法开发路线建议7.1 建议按这个顺序从易到难推进如果你所在的学校车队刚起步准备开发自己的电动方程式算法我建议严格按下面这个路线推进不要贪快先跑通基础通信链路确保控制器能正确读入所有传感器信号、能正确发出电机扭矩命令。这一步花两周时间都不为过因为后面所有算法都建立在可靠的数据之上。实现基本的踏板扭矩映射电门踏板到扭矩请求加一阶低通滤波来平滑扭矩变化。让车能开起来、能刹车。搭建数据记录和分析流程从第一次台架测试就要记录数据养成看数据调车的习惯。加入最简版TCS基于轮速差的逻辑判断扭矩直接按比例降低先保证不烧胎。加入车速估计和闭环TCS用前面说的方法实现车速估计把TCS升级为闭环PI控制。最后再考虑扭矩矢量和能量管理的精细优化这两个模块对车手体验和比赛成绩的提升很大但如果前几步基础没打好就是空中楼阁。7.2 对标定和验证成本要有心理准备做算法开发的“成本”大头其实不在写代码而在标定和验证。你写TCS的PI参数可能需要一整天场地测试反复调整Kp、Ki和滑转率目标值中间还要应付天气变化带来的路面附着变化。你写能量管理策略如果不提前算好SOC曲线实车跑一次耐久赛就能验证一次而每一次验证的成本都是大量人力、轮胎损耗和电池循环寿命。所以但凡能在仿真阶段解决的问题绝对不要带到实车阶段。我强烈建议新人花时间搭建一个哪怕很简化的车辆动力学模型哪怕只是自行车模型加一个轮胎魔术公式把算法逻辑先在仿真里验证到“逻辑自洽、趋势合理”再上实车。这样你的实车调试次数会大幅度减少。7.3 关于代码规范和团队协作大学生车队的人员流动性决定了你的代码必须有良好的可读性和文档。我当时给车队定了几条简单的规范每个Simulink模块必须写明作者、日期、输入输出单位、版本号。所有标定量PID参数、阈值、滤波系数集中放在一个标定参数表里方便集中查看和调整。代码里不允许出现魔法数字所有常量必须有名字和单位。每次实车测试后当天整理测试报告包括修改了哪些参数、测试之后的效果、下一步计划。听起来简单但坚持下来你会发现半年后当上一届学长毕业离队新队员接手项目时这套规范能省下无数摸索时间。当年我们就是因为第一年没记录好第二年接手时很多参数不知道当初为什么这么设不得不推倒重来白白浪费了大半个赛季。8. 第一个版本的算法从“能跑”到“跑得快”8.1 第一版算法的关键设计决策结合我们车队实例如果你问我开发第一版算法时最重要的设计决策是什么我会说三个字简化、简化、简化。第一版不要追求高级算法把基础逻辑做扎实、做健壮比什么锦上添花的花活都有用。以我们队当年第一版能完赛的算法为例它的完整结构非常朴素驾驶员扭矩请求 踏板开度0~100%映射到最大可用扭矩的一个比例值加一阶低通滤波截止频率约10Hz。最大可用扭矩 从电机外特性曲线上查当前转速下的峰值扭矩再和电池允许功率换算出的扭矩限值取最小。前后轴分配比例固定为 前轴0 / 后轴100%因为我们是后驱车不做动态分配。TCS用最简版轮速差判断如果后轮平均轮速比车速估计值大15%以上扭矩请求乘以0.7如果大20%以上扭矩请求直接置零再以较快斜率恢复。车速估计用前轮平均轮速直线时最大轮速修正制动时。这套算法用现在眼光看简陋得很但它在当年的校园赛和区域赛上稳定发挥顺利完赛这就是第一版算法的目标——把车安全可靠地开回来而不是在维修区里刷最快圈速。8.2 从第一版到第二版哪些优化优先级最高等到第一版算法能稳定完赛了你可能会问下一步升级什么我的答案是按这个优先级来把TCS从阈值降额升级为闭环PI控制这一步直接提升出弯加速能力圈速提升最明显。完善速度估计引入卡尔曼滤波所有依赖车速的算法模块都会受益包括TCS、能量管理、后续的扭矩矢量。加入扭矩矢量分配FSAE赛道上弯道多扭矩矢量带来的灵活性提升非常可观尤其是中低速组合弯里出弯速度的提升。精细化的能量管理策略如果你的耐久赛成绩目前受限于“电量不够跑完”这一步优先级甚至可以提到扭矩矢量前面。整车状态监测与故障诊断增强比如电机温度趋势预测、绝缘阻抗趋势监测、CAN节点在线监测等让你在车手说“车有点怪”之前就能从数据上发现问题。8.3 一个很现实的问题你们队真的需要这么多算法吗在做这一系列内容的过程中我总是喜欢反问团队一个问题你们的机械设计水平、车手水平、赛道经验已经能完全发挥出现有算法的潜力了吗如果车手本身对车辆极限的感知还很粗糙你给他上一套复杂的TCS反而可能干扰他的驾驶节奏。FSAE赛事是一个系统工程算法是其中一环但不是万能灵药。先把整车的可靠性、人机工程、车手训练做好再叠加算法优势才是一条更稳妥的获胜路线。不过反过来讲电动方程式的赛场上算法能力已经成为决定胜负的关键因素之一。谁的能量管理更精确、谁的牵引力控制更细腻、谁的扭矩矢量策略更贴合赛道布局谁就能在同等硬件水平下圈速更快、完赛更稳。这也是我写这个系列文章的初衷——希望能帮助更多大学生车队在算法这条路上少踩一些我们踩过的坑。最后我再分享一个这几年带车队下来最深的体会算法开发是一个“90%时间在调试、10%时间在写代码”的工作。很多新人以为算法工程师的工作是在电脑前写代码实际上大多数时候你是在看数据、调参数、跟车手沟通感受、在赛道上反复测试。你的代码可能只写了几百行但背后的验证工作可能是几百倍的工作量。做好这个心理准备你才能真正享受这个过程。
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。