去年帮一家做大型卷帘门的客户做选型,机构要求 120V 母线、2kW 级输出,减速比算下来最高转速只要 1200rpm。翻规格书看到一款写着「24V-500W / 48V-1000W / 72V-1500W / 96V-2000W / 120V-2500W」,五档全覆盖,客户当场说"这正好,一台机器通吃整个产品线"。
样机做出来,24V 档跑得挺稳。切到 120V 档,高速段也没问题,但关门前的最后几十毫米对位段,电机走走停停,速度给到很低时干脆不转了。客户第一反应是"高压档是不是控制环没调好"。
查下来,控制环没问题。问题在死区时间把占空比分辨率吃光了。「宽电压覆盖」在高速段是优势,在低速段是负担,而且越往高压端越严重。
这件事让我意识到,读这类规格表的人大多只盯功率那一列,从来没人算过占空比。
这类高压款的参数摊开来看:
母线电压 | 标称功率 | 峰值电流 | 额定电流 |
|---|---|---|---|
24V | 500W | 45A | 30A |
48V | 1000W | 45A | 30A |
72V | 1500W | 45A | 30A |
96V | 2000W | 45A | 30A |
120V | 2500W | 45A | 30A |
规律很明确:电流能力五档完全相同,变化的只有功率。因为 P = U × I,电流能力是硬件决定的,功率上限随电压水涨船高。
所以「宽电压」的准确含义是:功率级的电流能力固定,靠提高母线电压来提升输出功率。它不意味着"任意电压下都能输出标称功率"。
直接推论:负载功率固定在 2kW 时,只有 96V 和 120V 两档能用。24V 档接 2kW 负载需要 83A,远超 30A 额定值。
选型算电流必须用电输入功率,不是机械输出功率。 电机效率 75% 时,2kW 机械输出要 2.67kW 电输入,差出来的 670W 全变成热。
这部分是常识,下面说真正容易翻车的地方。
为避免上下桥臂直通,必须插入死区时间。死区期间输出电压为零,等效于损失了一部分占空比。
关键是:死区损失的绝对值是固定的,但它占指令占空比的比例随母线电压升高而急剧放大。
死区损失只与死区时间和开关频率有关:
D_lost = 2 × t_dead × f_sw取 t_dead = 1.5µs、f_sw = 20kHz,每次损失 6%。注意这个 6% 与母线电压无关。
但指令占空比是与电压成反比的:D_cmd = V_out / V_bus。母线越高,同样的输出电压需要的占空比越小,6% 的固定损失占比就越大。
def duty_report(v_out, t_dead_ns=1500, f_sw=20000):
lost = 2 * t_dead_ns * 1e-9 * f_sw
print(f"-- 需要输出相电压 {v_out}V --")
for v in (24, 48, 72, 96, 120):
d_cmd = v_out / v
d_eff = d_cmd - lost
flag = " <-- 指令小于死区,电机不转" if d_cmd < lost else ""
print(f"{v:>3}V 指令 {d_cmd*100:5.2f}% 死区损失 {lost*100:4.1f}% "
f"实际 {d_eff*100:6.2f}%{flag}")
print()
for v_out in (20, 10, 5, 2):
duty_report(v_out)输出:
-- 需要输出相电压 20V --
24V 指令 83.33% 死区损失 6.0% 实际 77.33%
48V 指令 41.67% 死区损失 6.0% 实际 35.67%
72V 指令 27.78% 死区损失 6.0% 实际 21.78%
96V 指令 20.83% 死区损失 6.0% 实际 14.83%
120V 指令 16.67% 死区损失 6.0% 实际 10.67%
-- 需要输出相电压 10V --
24V 指令 41.67% 死区损失 6.0% 实际 35.67%
48V 指令 20.83% 死区损失 6.0% 实际 14.83%
72V 指令 13.89% 死区损失 6.0% 实际 7.89%
96V 指令 10.42% 死区损失 6.0% 实际 4.42%
120V 指令 8.33% 死区损失 6.0% 实际 2.33%
-- 需要输出相电压 5V --
24V 指令 20.83% 死区损失 6.0% 实际 14.83%
48V 指令 10.42% 死区损失 6.0% 实际 4.42%
72V 指令 6.94% 死区损失 6.0% 实际 0.94%
96V 指令 5.21% 死区损失 6.0% 实际 -0.79% <-- 指令小于死区,电机不转
120V 指令 4.17% 死区损失 6.0% 实际 -1.83% <-- 指令小于死区,电机不转
-- 需要输出相电压 2V --
24V 指令 8.33% 死区损失 6.0% 实际 2.33%
48V 指令 4.17% 死区损失 6.0% 实际 -1.83% <-- 指令小于死区,电机不转
72V 指令 2.78% 死区损失 6.0% 实际 -3.22% <-- 指令小于死区,电机不转
96V 指令 2.08% 死区损失 6.0% 实际 -3.92% <-- 指令小于死区,电机不转
120V 指令 1.67% 死区损失 6.0% 实际 -4.33% <-- 指令小于死区,电机不转负数意味着什么?意味着控制器已经请求输出,但实际电压是零甚至反向,电机输出不了有效力矩,只能被负载拖着走。
从表里能读出三条很实用的结论:
第一,120V 档的可靠出力下限在 7.5V 相电压左右。 因为 6% × 120V = 7.2V,指令占空比低于这个值就全部被死区吃掉。
第二,24V 档的可靠出力下限在 1.44V 相电压。 同样 6%,但基数低,绝对损失只有 1.44V。所以低压档的低速性能天生更好。
第三,低速能力的绝对门槛差 5 倍。 同一条死区设置,24V 档能平稳输出到相电压 1.4V,120V 档要到 7.2V 才起步。按反电动势常数折算,这直接反映在最低稳定转速上。
客户那台机器的对位段需要相电压 3V 左右(低速、小力矩、精确位置)。在 24V 档完全没问题,在 120V 档就是死区。现象对上了。
相电压和转速的换算关系:
V_phase = I × R + Ke × ω低速时 I × R 项占主导。假设相电阻 0.8Ω、负载电流 2A,电阻压降 1.6V。这部分是恒定开销,剩下的才用来产生反电动势。
def min_speed(v_bus, t_dead_ns, f_sw, r_phase, i_load, ke_v_per_krpm):
lost_ratio = 2 * t_dead_ns * 1e-9 * f_sw
v_dead = lost_ratio * v_bus # 死区吃掉的相电压
v_ir = i_load * r_phase # 电阻压降
v_bemf = v_dead - v_ir # 还需要抵消电阻压降后才剩给反电动势
if v_bemf <= 0:
return None, v_dead, v_ir
rpm = v_bemf / ke_v_per_krpm * 1000
return rpm, v_dead, v_ir
print(f"{'母线':>6} {'死区吃掉':>10} {'电阻压降':>10} {'最低转速':>10}")
for v in (24, 48, 72, 96, 120):
rpm, vd, vr = min_speed(v, 1500, 20000, 0.8, 2.0, 12.0)
s = f"{rpm:8.0f}rpm" if rpm else " 无法起动"
print(f"{v:>5}V {vd:9.2f}V {vr:9.2f}V {s:>10}")输出:
母线 死区吃掉 电阻压降 最低转速
24V 1.44V 1.60V 无法起动
48V 2.88V 1.60V 107rpm
72V 4.32V 1.60V 227rpm
96V 5.76V 1.60V 347rpm
120V 7.20V 1.60V 467rpm这个结果比预期的还严重:24V 档在这个负载下反而起不来,因为死区只吃掉 1.44V,还不够抵消 1.6V 的电阻压降。
这里暴露了一个容易被忽略的事实:
死区损失和电阻压降是两个方向相反的因素。 高压档死区损失大、电阻压降占比小;低压档死区损失小、电阻压降占比大。中间存在一个"两头都不难受"的电压区间。
把两档拉开看更清楚:24V 档的问题是电压不够抵消 I·R,120V 档的问题是死区把可用电压吃掉了。这台机器的合理工作点在 48V~72V 之间。
客户原来的方案是"一台机器通吃 24V 到 120V",实际上两头都不在最优点。最后的分档方案是 48V 和 96V 两个版本,各自的低速门槛都在 200rpm 以内,满足对位需求。
顺带说一下另一个常被误判的因素。
开关损耗确实随母线电压上升,主导因素是米勒平台持续时间随电压拉长:
def switching_loss(vbus, i_phase, f_sw, t_base_ns=120, v_ref=48.0, k=0.35):
t_edge = t_base_ns * (1 + k * (vbus / v_ref - 1))
return vbus * i_phase * t_edge * 1e-9 * f_sw, t_edge
print(f"{'母线':>6} {'边沿时间':>9} {'单管损耗':>9} {'六管合计':>9} {'占输出':>8}")
outputs = {24: 500, 48: 1000, 72: 1500, 96: 2000, 120: 2500}
for v, p_out in outputs.items():
p_one, te = switching_loss(v, 30, 20000)
p_all = p_one * 6
print(f"{v:>5}V {te:8.0f}ns {p_one:8.1f}W {p_all:8.1f}W {p_all/p_out*100:7.1f}%")输出:
母线 边沿时间 单管损耗 六管合计 占输出
24V 99ns 1.4W 8.6W 1.7%
48V 120ns 3.5W 20.7W 2.1%
72V 141ns 6.1W 36.5W 2.4%
96V 162ns 9.3W 56.0W 2.8%
120V 183ns 13.2W 79.1W 3.2%占比只从 1.7% 涨到 3.2%,看着不严重。但绝对热量从 8.6W 涨到 79.1W,翻了 9 倍。
散热器是按绝对热量设计的。所以正确的读法是:开关损耗占比不高不代表散热不难,因为功率本身也放大了 5 倍,两个放大因子叠在一起。 120V 档需要风扇,24V 档自然对流就够,这个差异是真实存在的。
但要说清楚:这不是"高压档效率低",3.2% 对 1.7% 的差别在实际系统里被电机效率的波动完全淹没。开关损耗影响的是散热设计,不是能耗账。
回到具体产品。AQMD12H30NS-E2B 有刷电机驱动器,电机控制方式为有刷直流电机的 PWM 调速(H 桥四象限):额定 30A / 峰值 45A,母线覆盖 24V–120V(24V 500W 递进到 120V 2500W),内置刹车电阻、风扇散热,带独立电刹接口和编码器接口,控制信号隔离,RS485/CAN 通讯,178×108×68mm 铝合金机壳。
在卷帘门、闸机、升降平台这类场景里,几个实际用得上的点:
内置刹车电阻。 2kW 级负载带 1.5 米高门体,下降时的重力势能必须泄放。粗算:门重 80kg、下降 0.3m/s,P = mgh/t = 80 × 9.8 × 0.3 ≈ 235W。外置电阻要占空间、布线、做防护,内置省一整块。但内置电阻按间歇工况设计,连续下放要核算热容量(算法见第 10 篇)。
独立电刹接口。 卷帘门的机械抱闸必须在断电时自动抱死。如果抱闸由相线顺带控制,驱动器一故障门就失去保护。独立接口的价值是断电默认安全 + 时序可控(先释放再出力、先减速再抱死),逻辑在第 25 篇展开。
控制信号隔离。 高压场景下驱动器母线与控制侧(PLC、限位开关、安全光幕)电位差可达几十伏。共模电压超限时烧的是整条控制链路。控制信号隔离和通讯隔离是两回事 —— 前者保护模拟量/数字量输入,后者保护 485/CAN。这款是控制信号隔离,总线侧要不要加隔离看布线长度和接地。
编码器闭环。 上面第三节算的最低转速是基于开环估算的。这台机器带独立编码器接口,闭环下低速性能会好得多 —— 编码器能解决"转不稳",但解决不了"不转"。死区吃光占空比时,闭环也无力回天。这仍是个硬门槛。
「120V 档能不能当 24V 档用?」
物理上能通电,工程上不该。24V 负载在 120V 档下需要占空比 20%,死区损失占比 30%,低速段基本不可用。而且高压型号体积更大、更贵、需要风扇。
「功率表里的 2500W 是输入还是输出?」
是适配电机的机械输出功率。驱动器自身损耗另算,按 90% 效率估,输入侧要 2780W。电源、断路器、线径按输入功率选。
「降开关频率能改善低速吗?」
能。死区损失与 f_sw 成正比,20kHz 降到 10kHz,6% 变 3%,最低转速门槛直接减半。代价是电流纹波 ΔI = V×D×(1-D)/(L×f_sw) 翻倍,10kHz 下 120V 档纹波可能达到额定电流的 20%~30%,电机发热和噪音都会变明显。这是个必须实测的平衡点。
「能不能缩短死区时间?」
受功率管关断时间和驱动电路能力限制,是硬件设计决定的,用户在应用层改不了。选型时如果明确有低速需求,应该直接问供应商最低死区设置是多少。
「一台机器要覆盖 24V 和 120V 两种母线怎么办?」
做两个硬件版本。用高压型号跑低压负载,等于花钱买用不上的电流余量,还背上更大的体积和风扇噪音。
看到「宽电压」三个字,按这个顺序看:
第一,先看电流能力那一栏是不是每档都一样。 一样说明是同一功率级靠升压扩功率,那么高压档的低速性能和散热都要打折。不一样说明是不同功率模块拼在一个系列里,要问清楚各档对应的具体硬件。
第二,用「电输入功率 ÷ 母线电压」算电流,不是机械输出功率。 这是最常犯的错,也是烧驱动器最常见的原因。
第三,把低速需求单独拎出来算一遍。 死区损失 2×t_dead×f_sw×V_bus 是多少伏,减去 I×R 还剩多少给反电动势,换算成转速是多少。如果算出来的最低转速高于工况要求,这个电压档就不能用 —— 无论它的功率标称多合适。
那家客户最后分了 48V 和 96V 两个版本。虽然多了个 SKU,但每档都工作在舒适区,对位段的调试时间从两周压到三天。
宽电压覆盖的价值在于减少 SKU,不在于提升单机性能。 把它当成"一台顶多台"来卖,迟早会在低速段翻车。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。