數位電源供應器的過電流保護以及恆流電路的硬體是如何實現的?
可以這樣想——過電流保護基本上就是在問:「電流是不是太大了?」然後在東西壞掉之前先把電路關掉。
在數位電源供應器中,量測電流的方式是在路徑上放一個很小的電阻(稱為感測電阻)。當電流流過它時,兩端會產生很小的電壓降。你把這個電壓放大,送進 ADC,然後由微控制器讀取。如果數值超過你的門檻,砰——MCU 就關閉 PWM 訊號,開關停止導通。
定電流在概念上類似,但它不是單純切斷,而是主動調整輸出,讓電流保持穩定。例如你在驅動 LED 時,會希望電流維持在例如 350mA,不管負載怎麼變都一樣。電路會持續量測電流,並微調 duty cycle,把電流維持在那個值。
所謂「數位」的部分,意思只是由一顆晶片(MCU/DSP)來做運算和決策,而不是完全靠類比比較器和運算放大器。兩種方法都可行;數位方式給你更高的彈性,但類比方式通常更快。
这个帖子的问题其实挺大的,过流保护和恒流电路虽然都跟电流检测有关,但完全是两个东西啊。
过流保护重点在"保护"——检测到异常就切断,恒流重点在"控制"——主动调节让电流恒定。想问楼主具体是想了解哪个方向?是做数字电源的保护设计,还是想用数字方案做恒流输出?
另外你说的"数字电源"具体是什么拓扑?Buck?Boost?还是隔离的?不同拓扑下电流检测的位置和方式差别挺大的。如果是Buck的话电感电流检测和输出电流检测就不一样,保护逻辑也不同。
还有个关键问题——你的过流保护要求多快响应?如果是短路保护那可能需要ns级的硬件比较器直接拉gate,如果只是过载保护那软件采样加判断完全够用。
说句实话,这个问题本身有点把两个不相关的东西混在一起了。
过流保护是保护机制,恒流电路是控制方式,这俩唯一的共同点就是都需要检测电流。而且"数字电源的过流保护"这个说法也不太准确——不管是数字电源还是模拟电源,过流保护的硬件实现本质上都是一样的:检流+比较+关断。区别只是数字电源里MCU可以做一些更花哨的东西,比如分级保护、故障记录、自动恢复策略之类的。
真正值得讨论的应该是:在数字控制架构下,软件保护和硬件保护怎么配合?哪些保护必须交给硬件做,哪些可以放给软件?响应速度和灵活性的tradeoff怎么权衡?
另外恒流电路如果只是说硬件实现,那跟"数字"没什么关系。模拟恒流方案几十年前就有了,数字恒流的优势在于可编程和自适应,但你得先把电流检测做准了再说。
从系统控制的角度来看,这两者的实现需要平衡“响应速度”与“控制精度”:
-
过流保护(OCP)的分级设计:
-
瞬态过流(短路):触发阈值高,响应要求在微秒甚至纳秒级。硬件上采用窗口比较器(Window Comparator)监测采样电阻两端电压,输出直接触发硬件互锁,彻底切断驱动。
-
持续过载(软件OCP):触发阈值低,允许一定的延时。通过ADC定时采样,在数字域进行数字滤波(如IIR低通滤波)后,由软件状态机(State Machine)判断是否触发打嗝(Hiccup)或锁死关断。
-
-
恒流电路(CC)的硬件架构: 恒流的本质是电压到电流的负反馈转换器。在数字电源中,最常见的架构是“数字给定 + 模拟环路”。即MCU通过SPI/I2C控制数字电位器或直接通过内置DAC输出恒流参考电压(Vref),而真正的环路控制(包括采样放大、PI调节和误差消除)全部由高带宽的模拟运放及RC补偿网络在硬件上完成。这种架构既保留了数字控制的灵活性,又具备模拟环路的高速瞬态响应。