随着当今的系统在更小的外壳中实现不断提高的性能,其功耗带来了日益严重的问题。保持适当的温度对于防止热关机甚至系统故障至关重要。因此,许多系统现在需要额外的风扇来维持足够的气流。本应用笔记概述了风扇控制模块,并介绍了一个简单的风扇控制器电路,该电路使用MAX6870来监控六个风扇。
风扇控制模块概述
大型电信和网络系统通常配备高性能处理器,可在单个“机架”内提供更多功能。例如,曾经支持12 条ADSL 线路的线卡现在最多可支持64 条线路。因此,曾经功耗24W(每条ADSL 线路2W)的主板现在必须功耗128W。这种程度的耗散可以通过强大的冷空气流来调节,从而减少相关的热阻。
大多数电信系统都包含大量风扇。为了确保风扇故障时的正常运行,系统通常包含比所需数量更多的风扇(N+1 架构),因此典型的系统可能有六到八个风扇。每个风扇都有自己的电源,因此可以在不关闭系统电源的情况下轻松更换风扇。子架风扇组件(图1)由多个风扇模块(本例中为6 个)组成,由-48V 电池总线供电并由风扇控制模块监控。
图1. 典型的风扇模块框。
基本风扇模块(图2)包括一个隔离式DC-DC 转换器,可根据风扇类型将-48V 电池电源转换为+12V 或+24V。热插拔控制器位于转换器之前,允许在不关闭系统电源的情况下更换风扇。每个风扇都会产生与其转速成比例的数字输出(PWM 或PFM),供控制模块使用。
图2. 风扇模块框图。
此类风扇系统可使用多种IC。例如,许多热插拔控制器具有不同的性能级别。例如,MAX5901提供简单的解决方案,而MAX5920提供高精度。这两款器件均可直接使用-48V 电源供电。 MAX5021非常适合隔离电源,而MAX5043则非常适合带有板载功率MOSFET的高度集成转换器。 MAX5043仅需一个变压器、电容器、输出二极管和几个电阻即可产生50W功率,无需散热器。
可以集成风扇控制单元来完善系统。这种控制必须提供与许多风扇模块的接口,并且必须能够检测模块是否正常工作。当风扇出现故障时,它必须向主控制单元发出标记。还必须诊断并确定哪个风扇出现故障。这样的控制器可以采取多种形式。例如,它可以通过一组定时器和附加分立组件来实现。然而,随着风扇数量的增加,分立元件的数量也随之增加,使得这种方法不太受欢迎。另一种技术是微控制器(C) 上的多个串行I/O,它最大限度地减少了分立元件,但需要正确的编程。
第三种相当简单的替代方案使用高度集成、EEPROM 可配置、可编程十六进制电源定序器/监视器以及ADC。例如,MAX6870包括四个可配置输入电压检测器、通用输入、可配置看门狗、可编程输出和1 kb用户EEPROM。所有产品均可通过I2C 兼容串行接口提供和编程。除了监控电压、看门狗信号、外部温度和其他逻辑输入信号外,该器件还可以用作风扇控制器,最多能够监控10 个风扇。
实施6 风扇系统
为了说明这一点,我们将从单风扇系统开始,然后将该系统扩展到六个风扇。
我们首先定义一个警报信号,用于断言受监控的风扇是否停止。目前大多数风扇都提供集电极开路(V 超频),可以使用电阻将输出信号上拉至外部电压电平(V S)。 (本例中的上拉电压为4V 至30V。这样,V 从0V 超频至V。风扇每转一圈,输出脉冲S 数倍M(图3)。
图3. 图2 中风扇模块的输出详细信息。
如果风扇每秒旋转N 转,Voverclock 每秒会产生N M 个脉冲。输出是频率为N M Hz 的方波。如果该输出连接到MAX6870的可编程输入之一,则当风扇停止旋转时,其PO_输出之一被置位。
例如,如果VS=5V,则输出脉冲在0V和5V之间。根据风扇停止时的电压水平(VS或0V),将输入欠压或过压阈值设置为2.5V,以便当输入电压高于(低于)2.5V时监控器输出为真(反之亦然) )。在此配置中,当风扇旋转时,PO_ 输出无效,并且输出电压在5V 和0V 之间连续脉冲。如果风扇停止旋转,则会设置输出并且电压保持高或低,具体取决于风扇的活动极性的编程方式。
对于此实现,选择一个为每个PO_ 输出提供正确时间常数的毛刺滤波器非常重要。然而,滤波器必须足够宽松,以允许风扇电源振荡引起的频率脉冲瞬变。 MAX6870所需的时间常数范围为25s至1600ms。
例如,考虑M=2 且N=54rps 的场景。第五次超频的脉冲频率为108Hz,脉冲周期约为9.26ms。如果需要严格控制风扇,请选择25ms 的PO_bounce 时间常数,该常数相当于风扇大约1.35 圈。考虑到风扇供电振荡(以及由于热特性造成的任何限制),我们假设风扇在停止大约两秒时发生故障。对于本示例,1.6 秒的超时比较合适。这意味着PO_ALARM 在风扇故障后25 毫秒或1.6 秒变高(或变低,取决于编程)。
上面的示例展示了如何为风扇实现此功能。对于6风扇系统,我们仅使用1个MAX6870,并将上述扩展至4个输入和4个输出。这种布置允许为六个风扇中的每一个提供一个监视器,假设每个风扇模块都有独立的转速计输出。输出可配置为漏极开路并通过“或”运算组合在一起以提供报警信号(图)。如果在触发警报之前需要反转信号极性或额外延迟,请将上述公共信号连接到GPI_ 引脚和另一个PO_ 输出,并添加另一个时间常数。
图4. 基于MAX6 电源定序器/监视器的6870 风扇监视器。
配置这样的器件可能看起来很耗时,但MAX6870不需要软件工程师编写用于控制C或其他器件的代码。 Maxim 提供带有图形用户界面的评估板,可简化配置过程(图5)。
图5. MAX6870 编程软件的屏幕截图。
没有软件经验的工程师只需指向接口块并输入适当的值(输入信号、时序等)即可轻松配置MAX6870。一旦您对设置感到满意,即可对IC 进行编程并单击“加载到存储器”按钮以准备好应用。 MAX6870是首款专为复杂系统监控而设计的多输入控制器。它精确且可配置,简化了现代系统的设计。
审稿编辑:郭婷