一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种风扇控制方法、系统及相关组件与流程

2021-12-01 02:04:00 来源:中国专利 TAG:


1.本技术涉及服务器领域,特别涉及一种风扇控制方法、系统及相关组件。


背景技术:

2.目前服务器的温度控制系统包括bmc(baseboard management controller,基板管理控制器)和cpld(complex programmable logic device,复杂可编程逻辑器件),其中,bmc收集服务器内部的温度数据,根据温度数据计算出所需的风扇转速,通过iic(inter

integrated circuit,集成电路总线)将风扇转速发送给cpld,然后cpld再根据风扇转速生成控制风扇的pwm信号。风扇的实际转速会通过tach信号反馈给cpld,cpld将tach信号的值存到寄存器,然后bmc再通过iic来读取寄存器中的值来确认转速是否正确。
3.当bmc异常时,cpld会直接接管风扇的控制,根据统一的预设转速控制风扇运行。但由于现有技术方案只能按预设转速控制,若预设转速设置的过高,而当前服务器内部温度还未达到高温状态时,会造成资源浪费,若预设转速设置的过低,服务器可能还是存在高温宕机风险,影响服务器的正常运行。
4.因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。


技术实现要素:

5.本技术的目的是提供一种风扇控制方法、系统、装置及计算机可读存储介质,能够对风扇转速进行按需调控,避免按照统一转速调控造成的高温宕机问题以及资源浪费问题。
6.为解决上述技术问题,本技术提供了一种风扇控制方法,应用于cpld,所述cpld与服务器内部的每一温度设备的数据传输口通过第一iic链路连接,该风扇控制方法包括:
7.检测bmc的硬件状态;
8.当所述硬件状态为硬件故障状态,控制所述bmc和每一所述温度设备的所述数据传输口之间的第二iic链路断开,通过所有所述第一iic链路获取各个所述温度设备的温度数据,生成基于所有所述温度数据的pwm信号并发送至风扇;
9.当所述硬件状态为硬件正常状态,生成基于所述bmc发送的风扇转速控制信号的pwm信号并发送至所述风扇;所有所述第二iic链路在所述bmc为硬件正常状态时导通。
10.可选的,所述检测bmc的硬件状态的过程包括:
11.判断当前检测周期内是否接收到bmc发送的看门狗信号;
12.若是,判定所述bmc的硬件状态为硬件正常状态;
13.若否,判定所述bmc的硬件状态为硬件异常状态。
14.可选的,所述检测bmc的硬件状态之后,该风扇控制方法还包括:
15.当所述硬件状态为硬件正常状态,判断所述bmc输出的风扇转速控制信号是否异常;
16.若是,基于所有所述第二iic链路上传输的温度数据生成pwm信号并发送至所述风扇;
17.相应的,所述当所述硬件状态为硬件正常状态,生成基于所述bmc发送的风扇转速控制信号的pwm信号并发送至所述风扇的过程包括:
18.当所述bmc输出的风扇转速控制信号正常,生成基于所述风扇转速控制信号的pwm信号并发送至所述风扇。
19.可选的,所述检测bmc的状态之后,该风扇控制方法还包括:
20.当所述状态为硬件正常状态,按获取周期获取并解析所有所述第二iic链路上传输的温度数据;
21.所述判断所述bmc输出的风扇转速控制信号是否异常的过程包括:
22.当连续多个所述获取周期获取到的温度数据为持续上升状态,且连续多个所述获取周期对应的所述风扇转速控制信号无变化或所述风扇转速控制信号处于低转速控制范围,判定所述风扇转速控制信号异常。
23.可选的,所述当连续多个所述获取周期获取到的温度数据为持续上升状态,且连续多个所述获取周期对应的所述风扇转速控制信号无变化或所述风扇转速控制信号处于低转速控制范围,判定所述风扇转速控制信号异常的过程包括:
24.所述当连续多个所述获取周期获取到的温度数据为持续上升状态、且连续多个所述获取周期对应的所述风扇转速控制信号无变化或所述风扇转速控制信号处于低转速控制范围、且当前获取周期的每一所述温度数据均达到其对应的预设上限温度值,判定所述风扇转速控制信号异常。
25.可选的,所述判断所述bmc输出的风扇转速控制信号是否异常之后,该风扇控制方法还包括:
26.若是,输出报警信号至bmc。
27.可选的,每一所述第二iic链路上设有开关;
28.所述控制所述bmc和每一所述温度设备的所述数据传输口之间的第二iic链路断开的过程包括:
29.控制每一所述第二iic链路上的所述开关断开,以使所述bmc和每一所述温度设备的所述数据传输口之间的第二iic链路断开。
30.为解决上述技术问题,本技术还提供了一种风扇控制系统,应用于cpld,所述cpld与服务器内部的每一温度设备的数据传输口通过第一iic链路连接,该风扇控制系统包括:
31.第一检测模块,用于检测bmc的硬件状态;
32.第一控制模块,用于当所述硬件状态为硬件故障状态,控制所述bmc和每一所述温度设备的所述数据传输口之间的第二iic链路断开,通过所有所述第一iic链路获取各个所述温度设备的温度数据,生成基于所有所述温度数据的pwm信号并发送至风扇;
33.第二控制模块,用于当所述硬件状态为硬件正常状态,生成基于所述bmc发送的风扇转速控制信号的pwm信号并发送至所述风扇;所有所述第二iic链路在所述bmc为硬件正常状态时导通。
34.为解决上述技术问题,本技术还提供了一种风扇控制装置,包括:
35.存储器,用于存储计算机程序;
36.处理器,用于执行所述计算机程序时实现如上文任意一项所述的风扇控制方法的步骤。
37.为解决上述技术问题,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文任意一项所述的风扇控制方法的步骤。
38.本技术提供了一种风扇控制方法,cpld与服务器内部的每一温度设备的数据传输口通过第一iic链路连接,当bmc为硬件异常状态时,cpld利用第一iic链路获取当前各温度设备的温度数据,并根据当前获取到的温度数据对风扇转速进行按需调控,避免按照统一的预设转速调控造成的高温宕机问题以及资源浪费问题。此外,对于每一温度设备,由于第一iic链路和第二iic链路均与该温度设备的同一数据传输口连接,为避免bmc硬件异常拉住该数据传输口的iic信号,本技术在检测到bmc为硬件异常状态时,先断开所有第二iic链路,以便cpld可以通过第一iic链路获取到准确的温度数据,从而提高cpld的风扇转速控制的精准性。本技术还提供了一种风扇转速控制系统、装置及计算机可读存储介质,具有和上述风扇控制方法相同的有益效果。
附图说明
39.为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
40.图1为本技术所提供的一种监控系统的结构示意图;
41.图2为本技术所提供的一种风扇控制方法的步骤流程图;
42.图3为本技术所提供的另一种监控系统的结构示意图;
43.图4为本技术所提供的一种风扇控制系统的结构示意图。
具体实施方式
44.本技术的核心是提供一种风扇控制方法、系统、装置及计算机可读存储介质,能够对风扇转速进行按需调控,避免按照统一转速调控造成的高温宕机问题以及资源浪费问题。
45.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
46.为便于理解本技术的方案,下面对本技术所提出的风扇控制方法所适用的监控系统进行说明。请参照图1,图1为本技术所提供的一种监控系统的结构示意图,该监控系统包括多个温度设备,cpld 02及bmc 03,其中,温度设备包括温度传感器011或具有温度计算功能的设备012。cpld 02和bmc 03与各个温度设备通过iic总线连接。具体的,cpld 02与各个温度设备通过第一iic链路连接,bmc 03与各个温度设备通过第二iic链路连接,其中,cpld 02与bmc 03的iic链路均与各温度设备的同一数据传输口连接,以一个温度传感器011为例,第一iic链路的一端连接cpld 02,另一端连接温度传感器011的数据传输口,第二iic链
路的一端连接bmc 03,另一端也连接该温度传感器011的数据传输口。第一iic链路可以有多条,参照图1所示,cpld 02通过第一条第一iic链路iic11与多个温度传感器011连接,cpld 02通过第二条第一iic链路iic12与多个具有温度计算功能的设备012连接,第二iic链路也可以有多条,参照图1所示,bmc 03通过第一条第二iic链路iic21与多个温度传感器011连接,bmc 03通过第二条第二iic链路iic22与多个具有温度计算功能的设备012连接。可以理解的是,采用本技术所提供的监控系统的结构,bmc 03和cpld 02均可按需查询温度设备的温度数据。
47.请参照图2,图2为本技术所提供的一种风扇控制方法的步骤流程图,该风扇控制方法包括:
48.s101:检测bmc的硬件状态;
49.可以理解的是,当bmc可以正常工作时,默认由bmc按规则查询各温度设备的温度数据,bmc根据获取到的温度数据生成对应的风扇转速控制信号,cpld根据bmc发送的风扇转速信号生成pwm信号,以控制各个风扇。但是当bmc硬件异常时,bmc无法正常查询各个温度设备的温度数据,从而无法正常向cpld发送风扇转速信号,此时,就会影响服务器内部的正常散热控制。因此,需要对bmc的硬件状态进行检测,硬件状态包括硬件正常状态和硬件异常状态,对于bmc不同的硬件状态,cpld执行的控制逻辑不同。
50.具体的,bmc按预设的检测周期向cpld发送看门狗信号,作为一种优选的实施例,检测bmc的硬件状态的过程包括:判断当前检测周期内是否接收到bmc发送的看门狗信号,若是,判定bmc的硬件状态为硬件正常状态,若否,判定bmc的硬件状态为硬件异常状态。
51.s102:当硬件状态为硬件故障状态,控制bmc和每一温度设备的数据传输口之间的第二iic链路断开,通过所有第一iic链路获取各个温度设备的温度数据,生成基于所有温度数据的pwm信号并发送至风扇;
52.具体的,由于bmc的iic链路和cpld的iic链路是与温度设备的同一个数据传输口连接,且所有第二iic链路的默认状态为导通状态,当判定bmc为硬件故障状态时,首先控制bmc和各温度设备之间的第二iic链路断开,以避免bmc硬件故障时拉住iic信号,使cpld无法通过第一iic链路查询各温度设备的温度数据。当控制bmc和各温度设备之间的iic链路断开后,cpld通过第一iic链路查询各个温度设备的温度数据,并直接根据各温度数据生成pwm信号发送至风扇,从而实现由cpld对风扇转速的精准控制。
53.其中,cpld在获取到各温度数据后通过pid算法计算风扇所需转速,从而生成对应的pwm信号。
54.作为一种优选的实施例,参照图3所示,每一第二iic链路上设有开关04,可以通过控制每一第二iic链路上的开关04断开,以使bmc和每一温度设备的数据传输口之间的第二iic链路断开,可以理解的是,第二iic链路上的开关04默认为闭合状态,以便bmc查询各温度设备的温度数据。
55.s103:当硬件状态为硬件正常状态,生成基于bmc发送的风扇转速控制信号的pwm信号并发送至风扇;所有第二iic链路在bmc为硬件正常状态时导通。
56.具体的,若判定bmc的硬件状态为硬件正常状态,cpld不会通过第二iic链路查询各温度设备的温度数据,cpld则基于bmc发送的风扇转速控制信号生成pwm信号并发送至风扇,以控制风扇按所需转速运行。
57.可见,本实施例中,首先令cpld与服务器内部的每一温度设备的数据传输口通过第一iic链路连接,当bmc为硬件异常状态时,cpld利用第一iic链路获取当前各温度设备的温度数据,并根据当前获取到的温度数据对风扇转速进行按需调控,避免按照统一的预设转速调控造成的高温宕机问题以及资源浪费问题。此外,对于每一温度设备,由于第一iic链路和第二iic链路均与该温度设备的同一数据传输口连接,为避免bmc硬件异常拉住该数据传输口的iic信号,本技术在检测到bmc为硬件异常状态时,先断开所有第二iic链路,以便cpld可以通过第一iic链路获取到准确的温度数据,从而提高cpld的风扇转速控制的精准性。
58.在上述实施例的基础上:
59.作为一种优选的实施例,检测bmc的硬件状态之后,该风扇控制方法还包括:
60.当硬件状态为硬件正常状态,判断bmc输出的风扇转速控制信号是否异常;
61.若是,基于所有第二iic链路上传输的温度数据生成pwm信号并发送至风扇;
62.相应的,当硬件状态为硬件正常状态,生成基于bmc发送的风扇转速控制信号的pwm信号并发送至风扇的过程包括:
63.当bmc输出的风扇转速控制信号正常,生成基于风扇转速控制信号的pwm信号并发送至风扇。
64.具体的,本实施例中还对bmc的软件状态进行检测,这里的软件状态具体指bmc的转速计算功能是否异常,即bmc可以正常查询各温度设备的温度数据,但是无法根据查询到的温度数据准确计算出对应的风扇转速,此时bmc输出的风扇转速控制信号即为错误的风扇转速控制信号,错误的风扇转速控制信号导致对风扇转速无法准确控制,从而使服务器内部存在高温宕机风险。
65.可以理解的是,当bmc的硬件状态为硬件正常状态时,bmc可以通过第二iic链路正常查询各温度设备的温度数据,因此,当cpld检测到bmc为硬件正常状态时,cpld可以获取并解析第二iic链路上传输的温度数据,而无需自主查询各温度设备的温度数据。cpld检测到bmc存在软件状态异常时,则不再响应bmc发送的风扇转速控制信号,而根据其自身解析到的第二iic链路上传输的温度数据生成pwm信号,并发送至风扇,以控制风扇运行。在cpld检测到bmc软件、硬件均正常时,即bmc的硬件状态为硬件正常状态,且bmc输出的风扇转速控制信号也正常时,cpld根据bmc发送的风扇转速控制信号生成pwm信号,以控制风扇运行。作为一种优选的实施例,检测bmc的状态之后,该风扇控制方法还包括:
66.当状态为硬件正常状态,按获取周期获取并解析所有第二iic链路上传输的温度数据;
67.判断bmc输出的风扇转速控制信号是否异常的过程包括:
68.当连续多个获取周期获取到的温度数据为持续上升状态,且连续多个获取周期对应的风扇转速控制信号无变化或风扇转速控制信号处于低转速控制范围,判定风扇转速控制信号异常。
69.参照上文所述,当bmc的硬件状态为硬件正常状态时,bmc可以通过第二iic链路正常查询各温度设备的温度数据,即第二iic链路上是有温度数据传输,因此,当bmc为硬件正常状态时,cpld可以通过获取并解析第二iic链路上传输的iic信号来获取到当前获取周期各温度设备的温度数据。当cpld解析到连续多个周期获取到的温度数据,处于持续上升状
态,但是风扇转速控制信号无变化,或处于与当前温度数据不符的转速范围,如温度持续上升,但风扇转速控制信号还处于低转速控制范围,则说明此时bmc的温度计算功能或者转速计算功能异常,bmc无法根据查询到的温度数据生成正确的风扇转速控制信号,从而判定cpld接收到风扇转速控制信号是异常的。
70.具体的,本实施例所提供的连续多个获取周期,即包括当前获取周期在内的连续多个获取周期,比如连续五个获取周期,假设当前获取周期为第七个获取周期,那么连续五个获取周期即为第三个获取周期、第四个获取周期、第五个获取周期、第六个获取周期及第七个获取周期。
71.作为一种优选的实施例,当连续多个获取周期获取到的温度数据为持续上升状态,且连续多个获取周期对应的风扇转速控制信号无变化或风扇转速控制信号处于低转速控制范围,判定风扇转速控制信号异常的过程包括:
72.当连续多个获取周期获取到的温度数据为持续上升状态、且连续多个获取周期对应的风扇转速控制信号无变化或风扇转速控制信号处于低转速控制范围、且当前获取周期的每一温度数据均达到其对应的预设上限温度值,判定风扇转速控制信号异常。作为一种优选的实施例,判断bmc输出的风扇转速控制信号是否异常之后,该风扇控制方法还包括:
73.若是,输出报警信号至bmc。
74.具体的,当cpld判断bmc硬件正常,但软件异常时,说明此时bmc是可以实现相应功能的,并不是完全不能工作,此时cpld向bmc输出报警信号,以提示bmc软件异常,以便进行后续的处理操作,如复位重启等操作。
75.请参照图4,图4为本技术所提供的一种风扇控制系统的结构示意图,该风扇控制系统包括:
76.第一检测模块11,用于检测bmc的硬件状态;
77.第一控制模块12,用于当硬件状态为硬件故障状态,控制bmc和每一温度设备的数据传输口之间的第二iic链路断开,通过所有第一iic链路获取各个温度设备的温度数据,生成基于所有温度数据的pwm信号并发送至风扇;
78.第二控制模块13,用于当硬件状态为硬件正常状态,生成基于bmc发送的风扇转速控制信号的pwm信号并发送至风扇;所有第二iic链路在bmc为硬件正常状态时导通。
79.可见,本实施例中,首先令cpld与服务器内部的每一温度设备的数据传输口通过第一iic链路连接,当bmc为硬件异常状态时,cpld利用第一iic链路获取当前各温度设备的温度数据,并根据当前获取到的温度数据对风扇转速进行按需调控,避免按照统一的预设转速调控造成的高温宕机问题以及资源浪费问题。此外,对于每一温度设备,由于第一iic链路和第二iic链路均与该温度设备的同一数据传输口连接,为避免bmc硬件异常拉住该数据传输口的iic信号,本技术在检测到bmc为硬件异常状态时,先断开所有第二iic链路,以便cpld可以通过第一iic链路获取到准确的温度数据,从而提高cpld的风扇转速控制的精准性。
80.作为一种优选的实施例,检测bmc的硬件状态的过程包括:
81.判断当前检测周期内是否接收到bmc发送的看门狗信号;
82.若是,判定bmc的硬件状态为硬件正常状态;
83.若否,判定bmc的硬件状态为硬件异常状态。
84.作为一种优选的实施例,该风扇控制系统还包括:
85.第二检测模块,用于当硬件状态为硬件正常状态,判断bmc输出的风扇转速控制信号是否异常,若是,触发第三控制模块;
86.第三控制模块,用于基于所有第二iic链路上传输的温度数据生成pwm信号并发送至风扇;
87.相应的,第二控制模块13具体用于:
88.当bmc输出的风扇转速控制信号正常,生成基于风扇转速控制信号的pwm信号并发送至风扇。
89.作为一种优选的实施例,该风扇控制系统还包括:
90.获取模块,用于当状态为硬件正常状态,按获取周期获取并解析所有第二iic链路上传输的温度数据;
91.判断bmc输出的风扇转速控制信号是否异常的过程包括:
92.当连续多个获取周期获取到的温度数据为持续上升状态,且连续多个获取周期对应的风扇转速控制信号无变化或风扇转速控制信号处于低转速控制范围,判定风扇转速控制信号异常。
93.作为一种优选的实施例,当连续多个获取周期获取到的温度数据为持续上升状态,且连续多个获取周期对应的风扇转速控制信号无变化或风扇转速控制信号处于低转速控制范围,判定风扇转速控制信号异常的过程包括:
94.当连续多个获取周期获取到的温度数据为持续上升状态、且连续多个获取周期对应的风扇转速控制信号无变化或风扇转速控制信号处于低转速控制范围、且当前获取周期的每一温度数据均达到其对应的预设上限温度值,判定风扇转速控制信号异常。
95.作为一种优选的实施例,该风扇控制方法还包括:
96.报警模块,用于当判定bmc输出的风扇转速控制信号异常,输出报警信号至bmc。
97.作为一种优选的实施例,每一第二iic链路上设有开关;
98.控制bmc和每一温度设备的数据传输口之间的第二iic链路断开的过程包括:
99.控制每一第二iic链路上的开关断开,以使bmc和每一温度设备的数据传输口之间的第二iic链路断开。
100.另一方面,本技术还提供了一种风扇控制装置,包括:
101.存储器,用于存储计算机程序;
102.处理器,用于执行计算机程序时实现如上文任意一个实施例所描述的风扇控制方法的步骤。
103.对于本技术所提供的一种风扇控制装置的介绍请参照上述实施例,本技术在此不再赘述。
104.本技术所提供的一种风扇控制装置具有和上述风扇控制方法相同的有益效果。
105.另一方面,本技术还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上文任意一个实施例所描述的风扇控制方法的步骤。
106.对于本技术所提供的一种计算机可读存储介质的介绍请参照上述实施例,本技术在此不再赘述。
107.本技术所提供的一种计算机可读存储介质具有和上述风扇控制方法相同的有益效果。
108.还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
109.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其他实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献