同样 48V20Ah,为什么别人跑 80 公里你只跑 40?

举报
deli007 发表于 2026/11/10 07:13:18 2026/11/10
【摘要】 同样 48V20Ah,为什么别人跑 80 公里你只跑 40?

同一块 48V20Ah 电池,我在页面里算了两遍。铅酸、35km/h、载重 75kg,续航 40.4 公里;换成锂电、25km/h、载重 65kg,续航 79.9 公里。

差了近一倍。差的不是电池牌子,是电压、容量、放电深度、温度、载重和车速这几个变量。

电动车续航实验室首屏

为什么同一块电池能跑出 80 和 40

先把电池拆开。48V20Ah 的标称电量是 48×20=960Wh。

铅酸只放出 70%,可用 672Wh。锂电放出 90%,可用 864Wh。

再看每公里耗电。25km/h、75kg、平地、25℃时,铅酸 11.18Wh/km,锂电 10.82Wh/km。

672÷11.18=60.1 公里,864÷10.82=79.9 公里。

同样 48V20Ah 铅酸,把车速提到 35km/h,每公里耗电涨到 16.64Wh/km,续航只剩 40.4 公里。

空气阻力按速度平方涨。这是高速掉续航最快的一段。

温度也直接改可用电量。0℃时温度系数 80%,672Wh 变 576Wh,续航从 60.1 掉到 51.5 公里。

载重从 75kg 加到 150kg,整车质量 121kg 变 196kg,续航再掉到 46.9 公里。

配置 车速 温度 载重 可用 Wh 每公里 Wh 续航
48V20Ah 铅酸 25km/h 25℃ 75kg 672 11.18 60.1km
48V20Ah 铅酸 35km/h 25℃ 75kg 672 16.64 40.4km
48V20Ah 铅酸 25km/h 0℃ 75kg 576 11.18 51.5km
48V20Ah 铅酸 25km/h 25℃ 150kg 672 14.32 46.9km
48V20Ah 锂电 25km/h 25℃ 75kg 864 10.82 79.9km
48V20Ah 铅酸 15km/h 25℃ 75kg 672 7.69 87.4km
60V20Ah 铅酸 25km/h 25℃ 75kg 840 11.18 75.1km
72V32Ah 锂电 25km/h 25℃ 75kg 2074 10.88 190.6km

这张表里,40.4 和 79.9 是同一块 48V20Ah 电池。差别来自电池类型和车速,不是电池容量变了。

把公式做成一个能拖动的页面

页面左边是七个输入,右边是实时结果,下面是对照表和 12km 路线。

计算不是查表,是先把阻力算出来,再换成电功率。

const fRoll = crr * mass * G;
const fAir = 0.5 * RHO * CDA * vms * vms;
const fSlope = mass * G * Math.sin(Math.atan(grade));
const pElec = (fRoll + fAir + fSlope) * vms / ETA + AUX;
const whPerKm = pElec / speed;

我拿 12 组配置和 Python 独立复算对了一遍,最大差 0.01 公里。

配置 自重 kg 可用 Wh 25km/h 35km/h 0℃ 元/km
48V20Ah 铅酸 46.0 672 60.1km 40.4km 51.5km 0.0061
48V24Ah 锂电 37.9 1037 95.7km 63.6km 82.0km 0.0060
60V20Ah 铅酸 46.0 840 75.1km 50.5km 64.4km 0.0061
60V32Ah 锂电 38.8 1728 158.9km 105.7km 136.2km 0.0060
72V20Ah 铅酸 46.0 1008 90.2km 60.6km 77.3km 0.0061
72V32Ah 锂电 38.8 2074 190.6km 126.9km 163.4km 0.0060

对比表里,48V24Ah 锂电在 25km/h 能跑 95.7 公里,72V32Ah 锂电能跑 190.6 公里。

但 0℃ 那一列全部缩水,72V32Ah 也从 190.6 掉到 163.4 公里。

六组配置对照与路线模拟

验证与踩坑

页面加载会跑 12 条自检,当前 12/12 通过。

自检覆盖 960Wh 标称、672Wh 可用、续航公式、温度单调、载重单调、车速单调、锂电比铅酸远、60V32Ah 可用 1728Wh、骑行时间、胎压和坡度。

我又用 Python 独立写了同一套公式,12 个场景逐项对照,结果一致到小数点后两位。

复现可以在本地开一个静态服务:python -m http.server 8080,再打开页面。

控制台也能直接算:window.__ebikeLab.compute({v:48,ah:20,type:'lead',load:75,speed:35,temp:25,terrain:'flat',tire:'normal'})。

第一个真问题是电机功率边界。500W 电机、35km/h、5% 坡、166kg,需求功率 1321W,负载 264%。

原来的提示只写在 title 属性里,读者看不到,页面照样给出 17.8 公里。

我把它改成页面内的黄色警告,明确写「需求功率超出电机额定,实际可能达不到该车速」。

冬季载重与电机超载

第二个是路线和匀速续航的差别。48V5Ah 铅酸、150kg、-10℃、35km/h,匀速续航只有 2.4 公里。

同一套配置跑 12km 路线,因为前几段限速 15/25km/h,实际在 5.4 公里处耗尽。

这两个数不矛盾,但拿匀速续航直接当路线续航会误判。

路线中途断电

第三个是非法输入。电压填 abc、容量填 0,页面没有白屏。

错误条原文是「电压必须是数字;容量必须大于 0。已保留上一次有效结果,修正后自动刷新。」

结果区仍然是上一次的 60.1 公里,输入恢复合法后错误自动消失。

非法输入与结果保留

使用码道生成页面的体会

这次用码道 Web 生成,一轮拿到 72KB 单文件,没有外部请求。

它把输入、结果、电池包、能量流、对照表、路线图和自检都放在一个 HTML 里,打开就能跑。

省事的地方是不用搭前端工程。麻烦的地方是生成后仍要自己验边界。

电机超载提示和错误路径,都是生成后我手动补的。

所以它适合快速做出可运行的第一版,最后的质量判断还得自己来。

准备环境:进入码道 Web

码道有三种使用方式:WebUI、TUI 和桌面 IDE。本文用 WebUI 演示。

浏览器打开码道 Web 版:https://devcloud.cn-north-4.huaweicloud.com/chat?source=dmzntgwlb&sourcead=dmzntgwlb1&invitecode=INV-IXhxk5bwWx_qKSP1FcgSuiOEf6ruDXtjvLFiCH9nMs5dZGLapaSSylwt-cKRj5LoT3MlxikWxy8VhqplfvtQjefQOq31Tbp3R3wYP3K535Cn4XTaUzqqExKPYTWvvw4LijV14IS1torXdTGp7oyXb6SR5VxgYTg50jM,登录后直接在对话框输入需求,不需要装软件。

直接下载试玩

案例和源码在 Demo Park:https://atomgit.com/deli007/demo_park/tree/main/codearts-ebike-range-lab

结果与下一步

页面把「一块电池能跑多远」拆成了可调的五个变量,适合买电池前先算一遍。

它的边界也要说清楚:这是匀速稳态估算,没有计入风变、刹车、电池老化和控制器限流。

实际路况走走停停,续航通常比页面数字更短。

下一步可以接 GPS 路线、加入电池循环衰减,或者把控制器限流做成硬约束。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。