一种利用嵌入式控制器控制多主板设备开机的系统和方法与流程

文档序号:18703671发布日期:2019-09-17 23:19阅读:149来源:国知局
一种利用嵌入式控制器控制多主板设备开机的系统和方法与流程

本发明涉及开机系统技术领域,尤其涉及一种利用嵌入式控制器控制多主板设备开机的系统和方法。



背景技术:

对于一些大型的能耗监测设备和网安服务器来说,主机需要处理和存储的数据量非常庞大,因此单独的一块主板是无法胜任工作的。这时通常需要多块主板协同工作,通过叠加的性能来处理和存储大量的数据。

多块主板通常安装在一块底板上,由同一个atx电源来供电。对于多主板的设备来说,主板的开机是个很大的问题。如果在整机上对每一块主板都配置一个开机键,那开机时就需要一一地按下每一个按键。这样的设计不仅操作麻烦、容易出错,而且多个按键也会占用整机的前面板空间。另外如果只配置一个开机键的话,也会导致新的问题。原因在于每块主板在底板上安装的位置不一样,因此走线距离也会存在差异。如果由同一个按键来控制开机,势必会让开机信号到达每一块主板的时间存在延迟,因此经常会导致有些主板开不起来。这时,如果重新去按开机键,又会把正常开起来的主板关掉。



技术实现要素:

本发明的目的在于提供一种利用嵌入式控制器控制多主板设备开机的系统和方法。

一方面,本发明实施例提供一种利用嵌入式控制器控制多主板设备开机的方法,包括以下步骤:

步骤s1:通过开机按键发送开机信号至嵌入式控制器;

步骤s2:所述嵌入式控制器侦测到所述开机信号后,将所述开机信号同时发送至多个主板;

步骤s3:所述嵌入式控制器通过监测所述多个主板的电压来判断所述多个主板是否正常开机,其中,如果单块主板未开机,所述嵌入式控制器向所述未开机的主板重新发送所述开机信号。

在本发明提供的利用嵌入式控制器控制多主板设备开机的方法中,所述步骤s3包括以下步骤:

步骤s31:每一主板收到所述开机信号后,发送反馈信号至电源模块;

步骤s32:所述电源模块根据所述反馈信号为所述多个主板提供电压;

步骤s33:所述多个主板向所述嵌入式控制器反馈电压信号;

步骤s34:所述嵌入式控制器通过所述电压信号判断对应的主板是否正常开机。

在本发明提供的利用嵌入式控制器控制多主板设备开机的方法中,还包括:

步骤s4:在所述多个主板都开机后,所述嵌入式控制器向前面板指示灯发送正常开机信号。

在本发明提供的利用嵌入式控制器控制多主板设备开机的方法中,还包括:

步骤s5:通过温度采样,利用所述嵌入式控制器调节主风扇和冗余风扇的转速,其中,当机箱温度高于预设值时,所述嵌入式控制器控制加快所述主风扇和所述冗余风扇的转速;当机箱温度低于所述预设值时,所述嵌入式控制器控制减慢所述主风扇和所述冗余风扇的转速。

在本发明提供的利用嵌入式控制器控制多主板设备开机的方法中,还包括:

步骤s6:侦测主风扇的转速和冗余风扇的转速,通过所述嵌入式控制器进行失效控制,其中,所述主风扇正常工作时,所述嵌入式控制器输出最大转速的10%来控制所述冗余风扇的转动;当所述主风扇失效时,所述嵌入式控制器输出最大转速来控制所述冗余风扇的转动;当所述主风扇和所述冗余风扇都失效时,所述嵌入式控制器输出报警信号至前面板的指示灯。

相应地,本发明还提供一种利用嵌入式控制器控制多主板设备开机的系统,包括开机按键、嵌入式控制器和多个主板,所述开机按键和所述多个主板电连接于所述嵌入式控制器,其中,

所述开机按键用于向所述嵌入式控制器发送开机信号;

所述嵌入式控制器包括开机信号接收单元、开机信号发送单元和监测单元,所述开机信号接收单元用于接收来自所述开机按键的所述开机信号;所述开机信号发送单元用于将所述开机信号同时发送至所述多个主板;所述监测单元用于通过监测所述多个主板的电压来判断所述多个主板是否正常开机,其中,如果单块主板未开机,所述监测单元用于向所述开机信号发送单元发送重新开机信号使所述开机信号发送单元向所述未开机的主板重新发送所述开机信号。

在本发明提供的利用嵌入式控制器控制多主板设备开机的系统中,还包括连接于所述多个主板的电源模块,其中,每一主板收到所述开机信号后,发送反馈信号至电源模块;所述电源模块根据所述反馈信号为所述多个主板提供电压;所述多个主板向所述嵌入式控制器反馈电压信号;所述嵌入式控制器通过所述电压信号判断对应的主板是否正常开机。

在本发明提供的利用嵌入式控制器控制多主板设备开机的系统中,所述嵌入式控制器还包括正常开机信号发送单元,用于在所述多个主板都开机后,向前面板指示灯发送正常开机信号。

在本发明提供的利用嵌入式控制器控制多主板设备开机的系统中,还包括温度采样模块,用于采样结果发送至所述嵌入式控制器;所述嵌入式控制器根据所述采用结果调节主风扇和冗余风扇的转速,其中,当机箱温度高于预设值时,所述嵌入式控制器控制加快所述主风扇和所述冗余风扇的转速;当机箱温度低于所述预设值时,所述嵌入式控制器控制减慢所述主风扇和所述冗余风扇的转速;

所述温度采用模块包括电阻r15、电阻r16、电阻r19、电阻r20、电阻r17、电阻r18、热敏电阻tr1、热敏电阻tr2、电容c5、电容c6、电容c7、双运算放大器u2a、双运算放大器u2b,电阻r15的第一端接3.3v电压,第二端接热敏电阻tr1的第一端,热敏电阻tr1的第二端经电阻r19接地,电阻r17和电容c7并联后连接于热敏电阻tr1的第一端和地之间,所述双运算放大器u2a的正向输入端接热敏电阻tr1的第一端,双运算放大器u2a的反向输入端接输出端,双运算放大器u2a的电源端接12v电压,电容c5接双运算放大器u2a的电源端和地之间;电阻r16的第一端接3.3v电压,第二端接热敏电阻tr2的第一端,热敏电阻tr2的第二端经电阻r20接地,电阻r18和电容c6并联后连接于热敏电阻tr2的第一端和地之间,所述双运算放大器u2b的正向输入端接热敏电阻tr2的第一端,双运算放大器u2b的反向输入端接输出端,双运算放大器u2b的电源端接12v电压。

在本发明提供的利用嵌入式控制器控制多主板设备开机的系统中,还包括风扇转速侦测模块,用于侦测主风扇的转速和冗余风扇的转速,通过所述嵌入式控制器进行失效控制,其中,所述主风扇正常工作时,所述嵌入式控制器输出最大转速的10%来控制所述冗余风扇的转动;当所述主风扇失效时,所述嵌入式控制器输出最大转速来控制所述冗余风扇的转动;当所述主风扇和所述冗余风扇都失效时,所述嵌入式控制器输出报警信号至前面板的指示灯。

实施本发明实施例,具有如下有益效果:在本发明中,利用嵌入式控制器来控制多主板设备的开机过程,该方法不仅可以实时检测每一块主板的开机状态,并且可以在主板开机失败后对其单独再次开机,直至每块主板正常开机为止;另外,在多主板的整机中,由于主板数量较多,因此整机的发热量很大,导致机箱中的温度也会很高,利用嵌入式控制器来侦测主风扇和冗余风扇的状态并控制其转速,可以保障设备长时间地健康运行。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1所示为本发明一实施例提供的利用嵌入式控制器控制多主板设备开机的方法的流程图;

图2所示为本发明一实施例提供的利用嵌入式控制器控制多主板设备开机的系统的原理图;

图3所示为图2所示的用嵌入式控制器控制多主板设备开机的系统的电路图;

图4所示为本发明另一实施例提供的利用嵌入式控制器控制多主板设备开机的系统的原理图;

图5所示为图4所示的温度采样模块的电路图;

图6所示为图4所示的风扇转速侦测模块的电路图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1所示为本发明一实施例提供的利用嵌入式控制器控制多主板设备开机的方法的流程图。如图1所示,本发明提供的利用嵌入式控制器控制多主板设备开机的方法,其特征在于,包括以下步骤:

步骤s1:通过开机按键发送开机信号至嵌入式控制器(ec);

步骤s2:所述嵌入式控制器侦测到所述开机信号后,将所述开机信号同时发送至多个主板;

步骤s3:所述嵌入式控制器通过监测所述多个主板的电压来判断所述多个主板是否正常开机,其中,如果单块主板未开机,所述嵌入式控制器向所述未开机的主板重新发送所述开机信号。

本发明首先将开机键发出的低脉冲信号输入到嵌入式控制器中,当嵌入式控制器侦测到开机信号后,会同时向多块主板发出低脉冲开机信号。如果主板检测到有单块主板不开机,会在30s后继续向该主板发出开机信号,直到所有主板开机为止。

进一步地,所述步骤s3包括以下步骤:

步骤s31:每一主板收到所述开机信号后,发送反馈信号至电源模块;

步骤s32:所述电源模块根据所述反馈信号为所述多个主板提供电压;

步骤s33:所述多个主板向所述嵌入式控制器反馈电压信号;

步骤s34:所述嵌入式控制器通过所述电压信号判断对应的主板是否正常开机。

进一步地,还包括:

步骤s4:在所述多个主板都开机后,所述嵌入式控制器向前面板指示灯发送正常开机信号。

以四块主板为例,在按下前面板的开机键后,低脉冲开机信号会输入到ec中,当侦测到该信号后,ec同时输出4个低脉冲开机信号到主板a、主板b、主板c和主板d。如果4块主板都正常开机,则会发送ps_on信号到atx电源模块。atx电源模块在收到该信号后,会正常输出+12v电压、+5v电压和+3.3v电压。注意,这几个电压会在底板上做隔离,分别输入到四块主板中。接着我们将四块主板隔离后的+3.3v电压+3.3va,+3.3vb,+3.3vc,+3.3vd分别输入到ec的4个引脚中。如果主板正常开机,则ec会检测到这4个引脚为高电平。如果主板不开机,没有检测到+3.3v电压,ec会单独向没有开机的主板继续发出低脉冲开机信号。并且在30s后会做第二次检测,直到所有主板开机为止。最后在所有主板都开机后,ec的会发出all_mb_on信号到前面板指示灯中,表明所有主板都已正常开机。

由于大型整机中主板数量较多,而且处理器的功耗很大,所以需要利用风扇对机箱进行散热。在控制主风扇和冗余风扇的工作状态和转速前需要先侦测两个风扇的转速,并对机箱的温度进行采样。因此,进一步地,本发明还包括:

步骤s5:通过温度采样,利用所述嵌入式控制器调节主风扇和冗余风扇的转速,其中,当机箱温度高于预设值时,所述嵌入式控制器控制加快所述主风扇和所述冗余风扇的转速;当机箱温度低于所述预设值时,所述嵌入式控制器控制减慢所述主风扇和所述冗余风扇的转速。

具体地,在本发明中,我们将主风扇和冗余风扇的转速侦测信号输入到ec的两个引脚中,并利用2个热敏电阻来检测机箱的温度。当温度较高时,主风扇的一个引脚输出占空比较高的pwm波来加快风扇的转速。当机箱温度降下去后,重新输出pwm波来减慢风扇的转速。另外,当主风扇失效时,冗余风扇的控制同样如此。

进一步地,本发明还包括:

步骤s6:侦测主风扇的转速和冗余风扇的转速,通过所述嵌入式控制器进行失效控制,其中,所述主风扇正常工作时,所述嵌入式控制器输出最大转速的10%来控制所述冗余风扇的转动;当所述主风扇失效时,所述嵌入式控制器输出最大转速来控制所述冗余风扇的转动;当所述主风扇和所述冗余风扇都失效时,所述嵌入式控制器输出报警信号至前面板的指示灯。

在本发明中,利用嵌入式控制器来控制多主板设备的开机过程,该方法不仅可以实时检测每一块主板的开机状态,并且可以在主板开机失败后对其单独再次开机,直至每块主板正常开机为止;另外,在多主板的整机中,由于主板数量较多,因此整机的发热量很大,导致机箱中的温度也会很高,利用嵌入式控制器来侦测主风扇和冗余风扇的状态并控制其转速,可以保障设备长时间地健康运行。

图2所示为本发明一实施例提供的利用嵌入式控制器控制多主板设备开机的系统的原理图。如图2所示,本发明提供的利用嵌入式控制器控制多主板设备开机的系统,包括开机按键10、嵌入式控制器20和多个主板30,所述开机按键和所述多个主板电连接于所述嵌入式控制器,其中,

所述开机按键用于向所述嵌入式控制器发送开机信号;

所述嵌入式控制器包括开机信号接收单元210、开机信号发送单元220和监测单元230,所述开机信号接收单元用于接收来自所述开机按键的所述开机信号;所述开机信号发送单元用于将所述开机信号同时发送至所述多个主板;所述监测单元用于通过监测所述多个主板的电压来判断所述多个主板是否正常开机,其中,如果单块主板未开机,所述监测单元用于向所述开机信号发送单元发送重新开机信号使所述开机信号发送单元向所述未开机的主板重新发送所述开机信号。

进一步地,还包括连接于所述多个主板的电源模块40,其中,每一主板收到所述开机信号后,发送反馈信号至电源模块;所述电源模块根据所述反馈信号为所述多个主板提供电压;所述多个主板向所述嵌入式控制器反馈电压信号;所述嵌入式控制器通过所述电压信号判断对应的主板是否正常开机。所述嵌入式控制器还包括正常开机信号发送单元,用于在所述多个主板都开机后,向前面板指示灯发送正常开机信号。

图3所示为图2所示的用嵌入式控制器控制多主板设备开机的系统的电路图;以4块主板为例,如图3所示:从button键发出的开机信号pwr_btn_n直接输入到ec的gpc0引脚,当该引脚侦测到低脉冲信号后,会从gpf3、gpf2、gpb1、gpb0同时输出4个低脉冲开机信号sa_pwr_btn_n、sb_pwr_btn_n、sc_pwr_btn_n、sd_pwr_btn_n到主板a、主板b、主板c和主板d。4块主板收到开机信号后,会将ps_on信号发送到atx电源,接着atx电源会陆续输出一系列主板供电电压。接着我们将4块主板主供电的+3.3v电压+3p3va、+3p3vb、+3p3vc、+3p3vd输入到ec中,作为主板正常开机的指示信号。当ec检测到有主板没有开起来时,会再次发送开机信号到该主板,直到其正常开机为止。在所有主板都开机后,ec的gph1引脚会发出all_mb_on_n信号到前面板指示灯中,表明所有主板都已正常开机。

图4所示为本发明另一实施例提供的利用嵌入式控制器控制多主板设备开机的系统的原理图。如图4所示,本发明还包括温度采样模块50和风扇转速侦测模块60。温度采样模块50用于采样结果发送至所述嵌入式控制器;所述嵌入式控制器根据所述采用结果调节主风扇和冗余风扇的转速,其中,当机箱温度高于预设值时,所述嵌入式控制器控制加快所述主风扇和所述冗余风扇的转速;当机箱温度低于所述预设值时,所述嵌入式控制器控制减慢所述主风扇和所述冗余风扇的转速。风扇转速侦测模块60用于侦测主风扇的转速和冗余风扇的转速,通过所述嵌入式控制器进行失效控制,其中,所述主风扇正常工作时,所述嵌入式控制器输出最大转速的10%来控制所述冗余风扇的转动;当所述主风扇失效时,所述嵌入式控制器输出最大转速来控制所述冗余风扇的转动;当所述主风扇和所述冗余风扇都失效时,所述嵌入式控制器输出报警信号至前面板的指示灯。

图5所示为图4所示的温度采样模块的电路图;如图5所示,所述温度采用模块包括电阻r15、电阻r16、电阻r19、电阻r20、电阻r17、电阻r18、热敏电阻tr1、热敏电阻tr2、电容c5、电容c6、电容c7、双运算放大器u2a、双运算放大器u2b,电阻r15的第一端接3.3v电压,第二端接热敏电阻tr1的第一端,热敏电阻tr1的第二端经电阻r19接地,电阻r17和电容c7并联后连接于热敏电阻tr1的第一端和地之间,所述双运算放大器u2a的正向输入端接热敏电阻tr1的第一端,双运算放大器u2a的反向输入端接输出端,双运算放大器u2a的电源端接12v电压,电容c5接双运算放大器u2a的电源端和地之间;电阻r16的第一端接3.3v电压,第二端接热敏电阻tr2的第一端,热敏电阻tr2的第二端经电阻r20接地,电阻r18和电容c6并联后连接于热敏电阻tr2的第一端和地之间,所述双运算放大器u2b的正向输入端接热敏电阻tr2的第一端,双运算放大器u2b的反向输入端接输出端,双运算放大器u2b的电源端接12v电压。

在图5中,热敏电阻tr1和tr2的阻值随着环境温度的升高而变小。u2a和u2b是一个双运算放大器,在这里我们将输出电压thermal_adc0和thermal_adc1直接接到了放大器的反相输入端,因此该电路是一个电压跟随器,即输出uo=uin,输出电压的大小与同相输入端电压相同。可以看到,当机箱温度升高时,热敏电阻tr1的阻值变小,同相输入端的分压也将低,导致输出电压thermal_adc0和thermal_adc1的电压变小。当ec的gpi0和gpi1引脚检测到该电压变小时,会从gpa0或gpa1引脚输出占空比更高的pwm波ec_fan_pwm0或ec_fan_pwm1到主风扇fan1和冗余风扇fan2的gpo脚上增大风扇的转速。同理,当机箱温度降低时,tr1和tr2的阻值会增大,输出电压thermal_adc0和thermal_adc1的电压变大,ec输出的pwm波占空比会减小,使得2个风扇的转速也降低。因此通过ec芯片,我们可以更加智能地调节机箱中主冗风扇的转速,从而控制整机的运行温度。

图6所示为图4所示的风扇转速侦测模块的电路图。如图6所示,第一风扇转速侦测模块包括电阻r21、电阻r23、电阻r25、电阻r27、电容c8和二极管d2,其中,第一风扇fan1的第一引脚gnd接地,第二引脚接12v电源,第三引脚sense经电阻r27接信号ec_fan_tac0,第四引脚gpo经电阻r23接信号ec_fan_pwm0,电阻r25与二极管d2并联后接3.3v电压和电容c8的第一端,电容c8的第二端接地,电容c8的第一端还接第三引脚sense。第二风扇转速侦测模块包括电阻r22、电阻r24、电阻r26、电阻r28、电容c9和二极管d3,其中,第二风扇fan2的第一引脚gnd接地,第二引脚接12v电源,第三引脚sense经电阻r28接信号ec_fan_tac1,第四引脚gpo经电阻r24接信号ec_fan_pwm1,电阻r26与二极管d3并联后接3.3v电压和电容c9的第一端之间,电容c9的第二端接地,电容c9的第一端还接第三引脚sense。ec_fan_tac0和ec_fan_tac1为主风扇fan1和冗余风扇fan2的转速侦测信号,这两个信号直接接到了ec芯片的gpd6和gpj3引脚中,因此通过ec可以实时侦测到当前情况下2个风扇的工作状态和转速。

在本发明中,利用ec芯片我们不仅能控制多主板设备的开机过程,还可以智能调节整机中风扇的转速,从而保证整个设备能够长时间健康安全地运行。

以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

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