79.9999kW 的功率上限并非技术瓶颈,而是 “数据格式 + 应用场景” 双重匹配的结果,其主要原因是数据编码格式的物理限制:
该协议对瞬时功率的存储采用3 字节 BCD 码(二进制编码十进制) 设计:1 字节可存储 2 位十进制数,3 字节共 6 位十进制数;同时协议定义功率单位为 “kW”,且固定保留 4 位小数(即精度为 0.0001kW)。

小知识:BCD码能以最少的硬件来实现二进制与十进制数字的转换。BCD码是用一组四位二进制码来表示一位十进制数字的一种方法。 它只取四位二进制码可能有的十六种组合中的十种来表示0一 9十个数字。 在BCD码中(8421码),1001是最大的四位组。
按此格式,6 位十进制数的分配为 “2 位整数 + 4 位小数”,最大可表示的数值即为 “79.9999kW”。
你可能会疑惑,那为什么是不是99.9999kW呢,这是因为功率有正向和反向,也就是数字“7”的四个二进制中,最高位是功率的方向,0表示正,1表示负。那么只剩三个二进制,三个二进制数最大表示的数值是“111”,转换为十进制,可不就是数字“7”了。
若真的要设计为 “99.9999kW”,按以上所述,则需增加字节长度,改为4字节存储,而当时的电能表硬件(如 MCU 存储资源)无需如此设计。