服务器风扇转速控制系统及方法与流程

文档序号:16217455发布日期:2018-12-08 08:38阅读:1204来源:国知局
服务器风扇转速控制系统及方法与流程

本发明涉及服务器通信技术领域,尤其涉及一种服务器风扇转速控制系统及方法。

背景技术

现有的获取硬盘温度的方法一般是通过系统下的smartctl的命令获取硬盘的smart信息,其中包括硬盘的温度。也有的是在系统下通过sas卡厂商提供的工具(例如arcconf)获取。现有的服务器调整风扇的转速在硬盘上的温度的参考点一般是通过在最接近硬盘的背板上的一个温度传感器获取,用此温度来作为硬盘温度的参考。

现有的技术中,获取硬盘的信息都需要进入linux系统中,通过一定的命令获取,此方法是非常不便的,在非系统界面,如bios界面,此时获取不到硬盘温度,不方便用户实时监测硬盘的温度。另外,现有的调整风扇转速一般是通过参考cpu、主板、背板、硬盘等温度综合调整风扇转速,其中硬盘温度参考一般是通过背板上一个距离硬盘很近的传感器来获取,此温度只是一个近似温度,并不准确,导致不能准确调节风扇的转速。

由此,有必要提出一种能准确的实时监测硬盘温度,以调节风扇转速的解决方案。



技术实现要素:

本发明的主要目的在于提出一种服务器风扇转速控制系统及方法,旨在准确的实时监测硬盘温度,由此准确的调节风扇转速。

为实现上述目的,本发明提供一种服务器风扇转速控制系统,所述风扇转速控制系统包括bmc、与所述bmc连接的sas卡、与所述sas卡连接的背板、安装于所述背板上的cpld、与所述背板连接的硬盘,所述sas卡内设置有pbsi模块,所述bmc分别与所述sas卡、cpld通过i2c总线连接,所述sas卡与所述背板通过sas线缆连接,所述硬盘通过sata或者sas接口与所述背板连接。

为实现上述目的,本发明还提出一种服务器风扇转速控制方法,所述方法应用于如上所述的服务器风扇转速控制系统,所述方法包括以下步骤:

在系统开机,且所述硬盘在位时,通过所述sas卡的pbsi模块获取所述硬盘的温度;

将所述硬盘的温度与第一预设阈值相比对;

若所述硬盘的温度大于或等于所述第一预设阈值,则根据预设的硬盘温度与pwm的占空比的映射关系、以及所述硬盘的温度增加所述pwm的占空比,以控制所述风扇的转速。

本发明的进一步的技术方案是,所述将所述硬盘的温度与第一预设阈值相比对的步骤之后还包括:

若所述硬盘的温度小于所述第一预设阈值,则以所述风扇的初始转速控制所述风扇运行。

本发明的进一步的技术方案是,所述第一预设阈值为50°。

本发明的进一步的技术方案是,所述预设的硬盘温度与pwm的占空比的映射关系为所述硬盘温度每增加1°,则所述pwm的占空比增加8%。

本发明的进一步的技术方案是,所述在所述硬盘在位时,通过所述sas卡的pbsi模块获取所述硬盘的温度的步骤之前还包括以下步骤:

通过所述背板上的cpld侦测所述硬盘是否在位;

若在位,则执行通过所述sas卡的pbsi模块获取所述硬盘的温度的步骤;

若不在位,则通过所述sas卡的pbsi模块获取所述背板的温度;

将所述背板的温度与第二预设阈值相比对;

若所述背板的温度大于或等于所述第二预设阈值,则根据预设的背板温度与pwm的占空比的映射关系、以及所述背板的温度增加所述pwm的占空比,以控制所述风扇的转速。

本发明的进一步的技术方案是,所述将所述背板的温度与第二预设阈值相比对的步骤之后还包括:

若所述背板的温度小于所述第二预设阈值,则以所述风扇的初始转速控制所述风扇运行。

本发明的进一步的技术方案是,所述若所述背板的温度大于或等于所述第二预设阈值,根据预设的背板温度与pwm的占空比的映射关系、以及所述背板的温度增加所述pwm的占空比,以控制所述风扇的转速的步骤包括:

若所述背板的温度大于或等于所述第二预设阈值,则将所述背板的温度与第三预设阈值相比对;

若所述背板的温度小于所述第三阈值,则执行根据预设的背板温度与pwm的占空比的映射关系、以及所述背板的温度增加所述pwm的占空比,以控制所述风扇的转速的步骤;

若所述背板的温度大于或者等于所述第三阈值,则控制所述风扇全速运转。

本发明的进一步的技术方案是,所述第二预设阈值为45°,所述第三预设阈值为60°,所述预设的背板温度与pwm的占空比的映射关系为所述背板的温度每增加1°,则所述pwm的占空比增加10%。

本发明的进一步的技术方案是,其特征在于,在系统开机后还包括以下步骤:

通过所述sas卡的pbsi模块获取所述服务器的cpu的温度、以及所述服务器的主板的温度;

根据所述硬盘的温度、cpu的温度、主板的温度、以及预先配置的优先级原则控制所述风扇的转速。

本发明通过在系统内设置bmc、与所述bmc连接的sas卡、与所述sas卡连接的背板、安装于所述背板上的cpld、与所述背板连接的硬盘,所述sas卡内设置有pbsi模块,所述bmc分别与所述sas卡、cpld通过i2c总线连接,所述sas卡与所述背板通过sas线缆连接,所述硬盘通过sata或者sas接口与所述背板连接,在系统开机,且所述硬盘在位时,通过所述sas卡的pbsi模块获取所述硬盘的温度;将所述硬盘的温度与第一预设阈值相比对;若所述硬盘的温度大于或等于所述第一预设阈值,则根据预设的硬盘温度与pwm的占空比的映射关系、以及所述硬盘的温度增加所述pwm的占空比,以控制所述风扇的转速,能准确的实时监测硬盘温度,以调节风扇转速的解决方案。

附图说明

图1是本发明提出的服务器风扇转速控制系统较佳实施例的结构示意图;

图2是本发明服务器风扇转速控制方法第一实施例的流程示意图;

图3是本发明服务器风扇转速控制方法第二实施例的流程示意图;

图4是本实施例中风扇转速的pwm的duty与背板的温度的关系示意图,

图5是本实施例中风扇转速的pwm的duty与硬盘的温度的关系示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例涉及的术语包括:

sas:(serialattachedscsi),是一种电脑的集线技术,主要作为硬盘的等设备的传输;

cpu:(centerprocessingunit),中央处理器;

ipmi:(intellingentplatformmanagementinterface),智能平台管理接口,是一种开放标准的硬件接口规格;

bmc:(baseboardmanagementcontroller),基板管理控制器,一般内置在主板上,支持行业标准的ipmi协议规范;

pwm:(pulsewidthmodulation),脉冲宽度调制,是一种模拟的控制方式;

i2c:(interintegratedcircuit),一种简单的全双工的串行总线;

pd:(physicaldevice),物理设备;

cpld:(complexprogrammablelogicdevice),复杂可编程逻辑器件。

考虑到目前获取硬盘的信息都需要进入linux系统中,通过一定的命令获取,不方便用户实时监测硬盘的温度,另外,现有的硬盘温度参考一般是通过背板上一个距离硬盘很近的传感器来获取,此温度只是一个近似温度,并不准确,导致不能准确调节风扇的转速,由此,本发明提出一种能解决上述技术问题的服务器风扇转速控制系统及方法。

本发明提供一种bmc和sas卡通信获取硬盘温度的方法,并将温度显示在bmc网页硬盘信息中,此方法是一种新的便捷直观的查看硬盘温度的方法。bmc作为i2c主机,sas卡和cpld做为bmci2c从机,通过cpld判断硬盘是否在位,通过sas卡的pbsi模块获取各个连接在sas卡上的硬盘的真实温度,并且结合cpu温度,主板上各个传感器,背板上各个传感器调整风扇转速,使服务器所有重要器件运行在一个合理的温度范围之内。

具体地,如图1所示,图1是本发明提出的服务器风扇转速控制系统较佳实施例的结构示意图。

如图1所示,本实施例提出的服务器风扇转速控制系统包括bmc、与所述bmc连接的sas卡、与所述sas卡连接的背板、安装于所述背板上的cpld、与所述背板连接的硬盘,所述sas卡内设置有pbsi模块,所述bmc分别与所述sas卡、cpld通过i2c总线连接,所述sas卡与所述背板通过sas线缆连接,所述硬盘通过sata或者sas接口与所述背板连接。

本实施例的工作原理为:如图1所示,bmc作为i2c主机,sas卡和cpld作为i2c从机,然后sas卡的两个宽端口通过两跟sas线缆连接到背板上,硬盘通过sata或sas接口连接到背板上,以此组成一个通路,同时cpld通过gpio侦测硬盘是否在位传给bmc,bmc通过sas的ibpi模块获取硬盘温度,同时由bmc综合cpu等温度用一定的算法,通过输出不同占空比的pwm来控制风扇转速,以此来使整个系统保持在一个稳定的温度范围。

为了便于用户直观的实时掌握硬盘温度,本实施例中,还设置有硬盘信息显示模块:bmc系统通过i2c与sas卡通信,获取到硬盘信息后,通过bmc的webui将硬盘温度显示到硬盘信息一页,用户可以通过网页浏览器访问bmcfw中的硬盘信息一页检测实时的硬盘温度。

由此,本发明服务器风扇转速控制系统通过在系统内设置bmc、与所述bmc连接的sas卡、与所述sas卡连接的背板、安装于所述背板上的cpld、与所述背板连接的硬盘,所述sas卡内设置有pbsi模块,所述bmc分别与所述sas卡、cpld通过i2c总线连接,所述sas卡与所述背板通过sas线缆连接,所述硬盘通过sata或者sas接口与所述背板连接,能准确的实时监测硬盘温度,以调节风扇转速。

为实现上述目的,本发明还提出一种服务器风扇转速控制方法,所述方法应用于上所述的服务器风扇转速控制系统,请参照图2,图2是本发明服务器风扇转速控制方法第一实施例的流程示意图。

如图2所示,本实施例提出的服务器风扇转速控制方法包括以下步骤:

步骤s100,在系统开机,且所述硬盘在位时,通过所述sas卡的pbsi模块获取所述硬盘的温度。

步骤s200,将所述硬盘的温度与第一预设阈值相比对。

其中,所述第一预设阈值可以根据实际经验值进行设定,本实施例中,所述第一预设阈值为50°。

步骤s300,若所述硬盘的温度大于或等于所述第一预设阈值,则根据预设的硬盘温度与pwm的占空比的映射关系、以及所述硬盘的温度增加所述pwm的占空比,以控制所述风扇的转速。

其中,所述预设的硬盘温度与pwm的占空比的映射关系可以根据实际经验值进行设定,本实施例中,所述预设的硬盘温度与pwm的占空比的映射关系为所述硬盘温度每增加1°,则所述pwm的占空比增加8%。

本实施例中,所述sas卡的pbsi模块部分可以读到的信息如下表所示:

其中硬盘温度在pdinfo中,故首先需向i2c中写一个偏移0x8700,然后通过i2c读出pdinfo,其中pdinfo占81920字节,其中每个pdinfo占80个字节,故其最多支持1024个物理设备。

其数据结构为如下所示,其中temperature为第72个字节;

本实施例通过上述技术方案,在系统内设置bmc、与所述bmc连接的sas卡、与所述sas卡连接的背板、安装于所述背板上的cpld、与所述背板连接的硬盘,所述sas卡内设置有pbsi模块,所述bmc分别与所述sas卡、cpld通过i2c总线连接,所述sas卡与所述背板通过sas线缆连接,所述硬盘通过sata或者sas接口与所述背板连接,在系统开机,且所述硬盘在位时,通过所述sas卡的pbsi模块获取所述硬盘的温度;将所述硬盘的温度与第一预设阈值相比对;若所述硬盘的温度大于或等于所述第一预设阈值,则根据预设的硬盘温度与pwm的占空比的映射关系、以及所述硬盘的温度增加所述pwm的占空比,以控制所述风扇的转速,能准确的实时监测硬盘温度,以调节风扇转速。

请参照图3,图3是本发明服务器风扇转速控制方法第二实施例的流程示意图。本实施例与上述图1所示的第一实施例的区别在于,上述步骤s200,将所述硬盘的温度与第一预设阈值相比对的步骤之后还包括:

步骤s301,若所述硬盘的温度小于所述第一预设阈值,则以所述风扇的初始转速控制所述风扇运行。

进一步的,本实施例中,上述步骤s100,在所述硬盘在位时,通过所述sas卡的pbsi模块获取所述硬盘的温度的步骤之前还包括以下步骤:

s000,通过所述背板上的cpld侦测所述硬盘是否在位。

若在位,则执行上述步骤s100,通过所述sas卡的pbsi模块获取所述硬盘的温度。

若不在位,则执行下列步骤:

步骤s101,通过所述sas卡的pbsi模块获取所述背板的温度。

步骤s102,将所述背板的温度与第二预设阈值相比对。

其中,所述第二预设阈值可以根据实际经验值设定,本实施例中设定为45°。

步骤s103,若所述背板的温度大于或等于所述第二预设阈值,则根据预设的背板温度与pwm的占空比的映射关系、以及所述背板的温度增加所述pwm的占空比,以控制所述风扇的转速。

其中,所述预设的背板温度与pwm的占空比的映射关系可以根据实际经验值设定,本实施例中,所述预设的背板温度与pwm的占空比的映射关系为所述背板的温度每增加1°,则所述pwm的占空比增加10%。

进一步的,本实施例中,上述步骤s102,将所述背板的温度与第二预设阈值相比对的步骤之后还包括:

步骤s104,若所述背板的温度小于所述第二预设阈值,则以所述风扇的初始转速控制所述风扇运行。

进一步的,本实施例中,上述步骤s103,若所述背板的温度大于或等于所述第二预设阈值,根据预设的背板温度与pwm的占空比的映射关系、以及所述背板的温度增加所述pwm的占空比,以控制所述风扇的转速的步骤具体可以包括以下步骤:

若所述背板的温度大于或等于所述第二预设阈值,则执行步骤,将所述背板的温度与第三预设阈值相比对。

其中,所述第三预设阈值可以根据实际经验值进行设定,本实施例中,将所述第三预设阈值设定为60°。

若所述背板的温度小于所述第三阈值,则执行根据预设的背板温度与pwm的占空比的映射关系、以及所述背板的温度增加所述pwm的占空比,以控制所述风扇的转速的步骤;

若所述背板的温度大于或者等于所述第三阈值,则控制所述风扇全速运转。

此外,为了进一步的准确的调节风扇转速,本实施例在系统开机之后,还执行以下步骤:

通过所述sas卡的pbsi模块获取所述服务器的cpu的温度、以及所述服务器的主板的温度;

根据所述硬盘的温度、cpu的温度、主板的温度、以及预先配置的优先级原则控制所述风扇的转速。

其中,本实施例中,根据所述cpu的温度控制所述风扇的转速的调速策略为:当cpu低于一定温度时,风扇设置一个初始转速,始终以初始转速转动,当温度超过此温度之后,风扇转速随温度上升而增加,每升温一度,转速增加5%,当cpu大于一定温度之后,风扇全速转动。

根据所述主板的温度控制所述风扇的转速的调速策略为:当服务器进风口的温度小于等于40度时,以初始转速转动,当进风口温度大于40度时,没增加一度,风扇转速增加6%,同时,主板上的传感器满足以下任何一个,风扇立即全速,进风口温度大于50度,主板温度大于60度,出风口温度大于60度。

所述预先配置的优先级原则为根据所述硬盘的温度、cpu的温度、主板的温度结合一定的算法所得出的风扇的最大转速值控制所述风扇的运行。

此外,请参照图4及图5,图4是本实施例中风扇转速的pwm的duty与背板的温度的关系示意图,图5是本实施例中风扇转速的pwm的duty与硬盘的温度的关系示意图。

综上所述,本发明服务器风扇转速控制方法通过在系统内设置bmc、与所述bmc连接的sas卡、与所述sas卡连接的背板、安装于所述背板上的cpld、与所述背板连接的硬盘,所述sas卡内设置有pbsi模块,所述bmc分别与所述sas卡、cpld通过i2c总线连接,所述sas卡与所述背板通过sas线缆连接,所述硬盘通过sata或者sas接口与所述背板连接,在系统开机,且所述硬盘在位时,通过所述sas卡的pbsi模块获取所述硬盘的温度;将所述硬盘的温度与第一预设阈值相比对;若所述硬盘的温度大于或等于所述第一预设阈值,则根据预设的硬盘温度与pwm的占空比的映射关系、以及所述硬盘的温度增加所述pwm的占空比,以控制所述风扇的转速,能准确的实时监测硬盘温度。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1