实现自动开关机测试的系统及方法

文档序号:6587699阅读:379来源:国知局
专利名称:实现自动开关机测试的系统及方法
技术领域
本发明属于计算机系统测试领域,特别是关于一种实现自动开关机测试的系统及方法。
背景技术
随着时代的发展,计算机已成为人们生活、工作中的重要组成部分,人们对计算机的性能及其稳定性也提出了越来越高的要求。因此,生产厂家在计算机出厂前对其进行严格的检测也显得尤为重要。
开关机测试是检测过程中的一个重要环节。厂家对计算机的硬盘、主板、内存等主要部件以及整套计算机系统都要进行反复的开关机强度测试,由于市场上没有整套的开关机测试系统出售,大部分计算机厂家仍采用手工开关测试的方法。这种方法需要投入大量的人力,而且也不可能对每一台计算机都实现上百次或者上千次的开关机测试,所以手工测试的效率非常低,测试质量也难于保证。
另外,也有公司自行研发出的一些简单的开关机测试设备,这些设备都是进行一对一的开环式测试,也就是说,这种设备只能实现一台主控机测试一台被测机,并且由于主控机是单方面发出开关机控制指令,对于被测机是否完成测试次数或被测机是否出现异常等,主控机无法知道。比如,在被测机出现死机现象时,主控机还会继续向被测机发送开关机指令直到运行结束,主控机发出的测试次数和被测机实际执行的测试次数就会不一致。
所以,用户希望了解被测机的测试状态和配置等信息,以便能迅速地排除或解决开、关机中出现的异常情况。
总之,目前各计算机厂家的开关机测试水平不一,多数计算机开关机测试采用手工方式,这种测试方式效率低,测试质量难于保证。而少数实现自动测试的系统也有很多不足,主要表现在以下几个方面1、只能进行一对一的测试,测试效率低;2、只能实现开环式的测试,测试效率低,测试质量不高;3、测试对象只局限于计算机整机系统。

发明内容
有鉴于此,本发明的目的是提供一种实现自动开关机测试的系统,该系统能方便、快捷、自动地进行一对多的、闭环式的开关机测试。
本发明的另一个目的是提供一种实现自动开关机测试的方法。通过该方法能实现自动地控制多台被测机进行开关机测试,并能监测被测机的测试状态。
本发明的一种实现自动开关机测试的系统,该系统是这样实现的。
一种实现自动开关机测试的系统,其特征在于该系统包括主控机,用于发出控制命令、接收被测机220V电源和主板电源的状态信息以及显示被测机系统配置信息,与电源控制盒相连;电源控制盒,用于选择被测机、控制被测机220V电源上下电、开关机以及转接被测机的电源和主板电源的状态信息,与主控机、被测机的电源输入端和多功能计算机检测卡相连;多功能计算机检测卡,用于检测被测机的220V电源和主板电源的状态、获得被测机自检信息,并将被测机的电源和主板电源的状态信息和系统配置等信息反馈给主控机,且与被测机的启动开关、复位开关和输出自检信息、配置信息的接口和电源控制盒相连。
所述的电源控制盒包括单片机控制模块,用于解析控制命令、选择被测机和命令类型,与通讯控制模块、电源继电器控制模块和220V电源插座相连;通讯控制模块,用与传送被测机的配置信息、自检信息,与单片机控制模块、主控机的发出控制命令、接收反馈信息的串口和多功能计算机检测卡的接收电源控制盒的控制信号、输出被测机电源状态和主板电源状态及被测机的系统配置信息的接口相连;电源继电器控制模块,用于控制相应的被测机电源220V上下电,与单片机控制模块和被测机的电源输入端相连。
所述的多功能计算机检测卡包括通信控制模块,用于接收来自电源控制盒的控制信号并将其传送给单片机控制模块、接收来自单片机控制模块和PCI芯片的信息并传给电源控制盒,与单片机控制模块、PCI芯片和电源控制盒的发出控制信号、接收被测机电源状态和主板电源状态及系统配置信息的接口相连;单片机控制模块,用于控制信息传输、控制显示错误代码、控制开关机、复位和POST功能检测,与通信控制模块、LCD显示、开关机控制模块和POST功能检测模块相连;开关机控制模块,通过来自单片机控制模块的控制信号控制被测机的开关机、复位以及实时检测被测机的电源状态,与单片机控制模块和被测机的启动开关、复位开关相连;POST功能检测模块,用于获取被测机的自检信息以及将自检信息存储在存储单元,与单片机控制模块和被测机的PCI接口相连;存储单元,用于存储来自POST功能检测模块、经PCI芯片传入的被测机系统配置信息和通信控制模块传入的热启动命令的控制信号,与单片机控制模块PCI芯片和POST功能检测模块相连;LCD显示,用于显示单片机控制模块从存储单元中取出的自检信息代码和内容,与单片机控制模块相连;PCI芯片,用于转换信息格式,与单片机控制模块、存储单元和被测机的PCI接口相连;其中,所述的单片机控制模块、通信控制模块和开关机控制模块的电源由电源控制盒提供,所述的POST功能检测模块和PCI芯片的电源由被测机提供。
所述的电源控制盒包括D/A转换卡,用于转换主控机发出的控制命令为模拟量,与多路信号转换模块和主控机的发出控制命令的接口相连;A/D转换卡,用于转换来自多功能检测卡的被测机主板上下电信息为数字量,与电源检测模块和主控机接收被测机电源和主板电源状态的接口相连;多路信号控制模块,用于解析主控机发出的命令类型和选择被测机,与继电器控制模块、主板开关控制模块和主板复位控制模块相连;继电器控制模块,用于接通或断开对应的被控设备的220V电源,与多路信号控制模块和被测机的电源输入端相连;主板开关控制模块,用于控制被测机主板电源开、关,与多路信号控制模块和多功能计算机检测卡接收开关控制信号的接口相连;主板复位控制模块,用于控制被测机复位,与多路信号控制模块和多功能计算机检测卡接收复位控制信号的接口相连;电源检测模块,用于向主控机传送被测机电源和主板电源状态信息,与A/D转换卡和多功能计算机检测卡输出被测机电源和主板电源的状态信息的接口相连。
所述的D/A转换卡为ADLINK PCI-6216 D/A卡。
所述的A/D转换卡为ADLINK PCI-9113 A/D卡。
所述的多功能计算机检测卡包括计算机检测卡和传送被测机系统配置信息、转接热启动命令的装置,所述的传送被测机系统配置信息和转接热启动命令的装置,包括置于被测机内的网卡、集线器和置于主控机内的网卡,其中,集线器与置于被测机内的网卡和置于主控机内的网卡相连,
计算机检测卡,用于转接来自电源控制盒的开关机、复位控制信号、检测被测机的电源和主板电源状态、显示被测机自检信息代码以及将被测机的电源和主板电源的状态信息通过电源控制盒反馈给主控机,与被测机的启动开关、复位开关和输出自检信息、配置信息的接口和电源控制盒的发出控制信号和接收被测机电源状态和主板电源状态信息的接口相连。
所述的计算机检测卡包括通信控制模块,用于接收来自电源控制盒的控制信号并将其传送给单片机控制模块、接收来自单片机控制模块的信息并将其传给电源控制盒,与单片机控制模块和电源控制盒的发出控制信号和接收被测机电源状态和主板电源状态信息的接口相连;单片机控制模块,用于控制信息传输、控制显示错误代码、控制开关机、复位和POST功能检测,与通信控制模块、LCD显示、开关机控制模块和POST功能检测模块相连;开关机控制模块,通过来自单片机控制模块的控制信号控制被测机的开关机、复位以及实时检测被测机的电源状态,与单片机控制模块和被测机的启动开关、复位开关相连;POST功能检测模块,用于获取被测机的自检信息以及将自检信息存储在存储单元,与单片机控制模块和被测机的PCI接口相连;存储单元,用于存储来自POST功能检测模块、经PCI芯片传入的被测机系统配置信息和通信控制模块传入的热启动命令的控制信号,与单片机控制模块、PCI芯片和POST功能检测模块相连;LCD显示,用于显示单片机控制模块从存储单元中取出的自检信息代码,与单片机控制模块相连;其中,所述的单片机控制模块、通信控制模块和开关机控制模块的电源由电源控制盒提供,所述的POST功能检测模块的电源由被测机提供。
本发明的一种实现自动开关机测试的方法,该方法是这样实现的。
一种应用权利要求1所述的系统实现自动开关机测试的方法,其特征在于该方法包括以下步骤A.主控机发出检测信号,选择被测机,检测对应被测机的电源和主板电源状态;B.判断该被测机的电源和主板电源状态是否与要发出的测试命令相抵触,如果不抵触,执行步骤C,如果抵触,执行步骤A;C.主控机发出控制命令,选择该被测机、控制该被测机作出相应的动作;D.发出检测信号,选择该被测机,检测对应被测机的电源和主板电源状态;E.判断被测机是否作出相应的动作,如果没有,执行步骤C,否则,判断是否还有控制命令要发出,如果有,执行步骤A,如果没有,测试结束。
所述步骤B包括如果发出检测信号的次数为N次,且N>1,该被测机的电源和主板电源状态与要发出的测试命令仍相抵触,系统发出报警,提示需要人为干预。
所述的所述步骤E包括发出控制命令的次数为N次,且N>1,被测机仍没有作出相应的动作,系统发出报警,提示需要人为干预。
所述的控制命令为220V上电命令、或220V下电命令、或开机命令、或关机命令、或复位命令、或热启动命令。
所述的主控机发出控制命令为开机命令、或热启动命令、或复位命令后,并且在被测机进入POST自检阶段,该方法进一步包括读取被测机PCI接口,获取被测机自检信息,并用数码显示管显示自检信息代码。
所述的方法进一步包括将自检信息代码传送至主控机,主控机解析后,用文字和图形的形式显示。
所述的方法进一步包括在主控机内,预先输入被测机的标准的系统配置信息;
所述步骤C中当主控机发出控制命令为开机、或复位、或热启动命令,并且在所述步骤E中判断被测机已执行了控制命令之后,被测机进入操作系统,读取ROM区的内存信息,获取内存、BIOS、CPU、Onboard设备和显卡等系统配置信息;通过与IDE控制芯片的通信来读取IDE硬盘的容量等信息;通过调用Windows API函数、驱动程序来读取SCSI硬盘的容量、ID号等信息;通过与商品化软件的接口的通讯获取RAID卡的信息;将获取到的被测机的系统配置信息传到主控机;主控机显示被测机系统配置信息内容,并比较这些配置信息与预先输入的标准信息是否有差异,如果有差异,将被测机系统配置信息保存成文件。
根据以上所述,可以看出本发明方案具有如下特点1、本发明的自动开关机测试系统实现了自动开关机测试,并且能同时控制多台被测机,大大提高了测试效率;2、该系统采用闭环式测试方法,确保了测试质量;3、该系统应用面广,不仅可以应用于计算机整机系统的测试,也可以应用于主板、内存、硬盘等部件的开关机的测试;4、该系统还具有良好的控制、显示界面,可以任意设定四种开关机测试方式和时间参数,使用方便。


图1为实施例一的自动开关机测试系统的外部示意图;图2为实施例一的多功能计算机检测卡的功能模块图;图3为实施例一的电源控制盒的结构示意图;图4为实施例一中主控机与单台被测机之间的连接示意;图5为主控机中的软件流程;图6为被测机中的软件流程;图7为实施例二的自动开关机测试系统的外部结构示意图;图8为实施例二的电源控制盒的结构示意图;
图9为实施例二的多功能计算机检测卡的功能模块图;图10为实施例二中的主控机与单台被测机之间的连接示意;图11为系统的开关机控制方式流程;图12为自动开关机测试系统的界面图。
具体实施例方式
为使本发明的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本发明作进一步详细说明。
参见图1所示,为可以容纳10台被测机的自动开关机测试系统,该测试系统包括主控机101、电源控制盒102和被测机103,并且每台被测机内置有一个多功能计算机检测卡104,电源控制盒102通过电缆连接主控机101和每台被测机。其核心内容是主控机101通过电源控制盒102控制每台被测机进行开关机测试;多功能计算机检测卡104检测被测机103的测试状态和系统配置等信息,并将其反馈给主控机。
需要说明的是,被测机机的测试状态是指被测机电源和主板电源的上下电状态。这里的被测机既可以是主板或外围部件,也可以是完整的计算机系统,其运行状态受主控机的控制。多功能计算机检测卡104实现检测被测机的测试状态、获取被测机自检信息、传递被测机103系统配置信息以及转接电源控制盒102输出的开关机控制信号等;而电源控制盒102是用来控制被测机103交流220V电源和开关机以及实现信息传递功能。
如图2所示,为多功能计算机检测卡的功能模块图。多功能计算机检测卡包括开关机控制模块201、POST功能检测模块205、通信控制模块203、单片机控制模块209、PCI芯片207、存储单元206和液晶显示LCD 202。
开关机控制模块201是用于控制被测机系统的启动和关闭、复位以及检测被测机电源等,与被测机的启动开关、复位开关和单片机控制模块209相连;POST功能检测模块205是获取被测机POST上电检测过程中的自检信息代码,与被测机的PCI总线接口208相连;通讯控制模块203是通过485串口实现的,该串口可以实现较长的通讯线路,也方便扩展,与单片机控制模块209和15PIN串口204相连;单片机控制模块209是多功能计算机功能卡的控制核心,用于协调控制信息传输和逻辑控制等功能,与液晶LCD显示202、开关机控制模块201、存储单元206和通讯控制模块203相连;存储单元206,用于存储来自POST功能检测模块205、经PCI芯片207传入的被测机系统配置信息和通信控制模块传入的热启动命令的控制信号,与单片机控制模块209、PCI芯片207和POST功能检测模块205相连;液晶LCD显示202,用于显示单片机控制模块209从存储单元206中取出的自检信息代码和内容,与单片机控制模块209相连;PCI芯片207,用于转换信息格式,与单片机控制模块209、存储单元206和被测机的PCI总线208接口相连,PCI芯片207、存储单元206和通讯控制模块203一起,实现主控机和被测机之间传输信息和热启动命令等。
其中,所述的单片机控制模块209、通信控制模块203和开关机控制模块201的电源由电源控制盒提供,所述的POST功能检测模块205和PCI芯片207的电源由被测机提供。
如图3所示,为电源控制盒的结构示意图。该电源控制盒包括单片机控制模块302、通讯控制模块303和电源继电器控制模块301。来自主控机的控制命令传入通讯控制模块303,通讯控制模块303将该命令送入单片机控制模块302,单片机控制模块302解析此命令、选择被测机并判断命令类型,如果是交流220V电源控制命令,单片机控制模块302将接通控制这台被测机电源的继电器,被测机电源接通;如果是PSW的开关、RESET的复位或热启动的开关控制命令,单片机控制模块302通过通信模块将该命令送到这台被测机中的多功能计算机检测卡,由多功能计算机检测卡来控制被测机开关机。另外,来自多功能计算机检测卡的信息将通过通讯控制模块303传到主控机。
图4为主控机与单台被测机之间的连接示意,其连接关系如下
主控机的电源线410连接~220V电源插座409,并且主控机402通过串口通讯线411连接电源控制盒403。电源控制盒403上有两个电源线和10个接线器,一组电源线408连接~220V电源插座409;另外一组电源线405连接被测机406的电源接口,这组电源线405为被测机提供~220V电源;每个接线器通过一个15针电缆404连接一台被测机中的多功能计算机检测卡407,这个电缆中包括系统Power Switch控制、复位RESET控制以及5V和5VSB检测信号。多功能计算机检测卡407插在被测机的PCI槽上,插针上包括检测主板是否正常上电和下电的信号5V、用于检测电源~220V是否正常上电和断开的信号5VSB、用于控制主板的启动信号PSW和用于系统复位的信号RESET等。
另外,在主控机和被测机内分别置有软件程序,主控机中的软件程序实现测试参数、控制数据传输和数据显示等功能,它在整个系统中起到总控作用;被测机内的软件程序包括信息获取程序和心跳程序,分别用于获得被测机的系统配置信息并将其发送给主控机、向主控机发送被测机处于正常测试状态的信号。
参见流程图5所示,主控机中的软件流程如下501、配置被测机的控制参数和标准信息;502、系统发出检测信号;503、接收被测机的测试状态信息,判断要发出的控制命令是否与被测机的状态相抵触,如果抵触,执行步骤502,并且如果发出检测信号的次数大于4,仍然抵触,主控机将出错信息保存于主控机的内存中并发出报警,否则进入下一步504;504、系统发出控制命令;505、系统发出检测信号;506、接收被测机的测试状态信息,判断被测机是否执行控制命令,如果执行,执行步骤507,如果没有执行,并且发出此控制命令的次数小于4,执行步骤504,否则报警;507、主控机等待接收被测机发送的信息,如果接收到,则向被测机发出确认信号,然后执行步骤508;508、判断被测机发送的信息类别,如果是系统配置信息,则执行步骤509,如果是系统自检信息,执行步骤510;509、比较被测机系统配置和标准信息,如果出现错误,将出错信息保存于主控机的内存中并发出出错显示,然后执行步骤512;510、解析自检信息代码,显示自检信息内容,然后执行步骤512;511、判断接收到的信息处理是否完毕,没有执行完毕,执行步骤508,否则,执行步骤512;512、判断控制命令是否执行完毕,如果没有执行完毕,执行步骤502,否则进入下一步513;513、将内存中的错误记录保存成文件,测试完成。
在开关机的过程中,如果被测机出现异常,系统检测出的配置信息就会出错,但这种错误并不会影响开关机测试,异常原因不需要立即解决。所以我们采取预先输入被测机的内存、CPU、IDE硬盘、SCSI硬盘、RAID卡、BIOS信息、Onboard信息、显卡等配置信息的方法,将这些信息作为标准信息,在收到被测机传来的系统配置信息后,将其与标准信息进行比较,如果两者不匹配,系统就会报错,并将错误信息保存成文件。这样一来,在测试完成后,工作人员可以根据文件分析出错原因。另外,主控机在发出控制命令之前要对被测机的测试状态进行检测,其目的是判断是否需要发出命令、要发出的命令是否与被测机的现行状态相抵触。例如如果主控机在发出开机命令前,被测机已经是开机状态,开机命令就不需要发送;但是在同样的情况下,如果被测机根本无法上电——在被测机的电源线没有连接的情况下,那么主控机将会发出出错报警,系统需要人为干预才可以继续进行。并且,主控机发出控制命令之后也要对被测机的测试状态进行检测,其目的是确定被测机是否执行控制命令。如果被测机没有执行命令,主控机会继续发送此命令,再检测执行结果,这种循环最多将持续4次,第4次检测后,如果被测机仍然没有执行,主控机则发出报警。
参见图6所示,被测机进入操作系统后,被测机中的软件流程如下601、调用信息获取程序;602、初始化信息获取程序;603、向主控机发送IPX地址;604、判断主控机是否收到IPX地址、将被测机机号与IPX地址建立对应,如果主控机没有,执行步骤603;605、获取系统的基本配置信息,被测机一方面通过显示配置信息内容,另一方面向主控机发送配置信息;606、配置信息是否发送完毕,如果没有,执行步骤605,如果完毕,执行步骤607;607、向主控机发送心跳程序,等待主控机的下一个命令。
需要说明的是,在POST自检阶段,计算机将检测包括内存、BIOS、CPU、Onboard设备和显卡等信息,自检结束后,这些配置信息被存放到系统内存中的ROM区内。所以,如果要获取这些信息,读取这部分内存,解析后即可。并且,计算机进入系统后,可以通过读取某些接口获得其他的系统配置信息。
下面为被测机启动信息获取程序,获取系统配置信息的方法。
A.读取系统内存中的ROM区,获取包括内存、BIOS、CPU、Onboard设备和显卡等配置信息;B.读取主板上的硬件控制器和寄存器等硬件端口获取IDE硬盘的容量等信息;C.通过调用Windows的API编程接口、驱动来读取SCSI硬盘的容量、ID号等信息;
D.通过读取商品化软件的接口获取RAID卡的信息。这里的商品化软件一般是RAID卡生产厂家提供的。比如Adeptec公司的RAID卡提供了软件程序,可以获取RAID卡的所有信息。
下面结合图4介绍自动开关机测试系统工作原理。
主控机401通过串口402和串口通讯线411发出检测命令至电源控制盒403,电源控制盒403将解析命令,区分出要检测的被测机并将此时该被测机的测试状态信息传给主控机。
主控机401通过串口402及串口通讯线411将控制命令传输到电源控制盒406,电源控制盒403解析主控机401传来的命令,选择被测机及传送命令。
如果主控机401发出的是电源220V上下电控制命令,电源控制盒将区分出要控制的被测机并接通或断开该被测机对应的电源控制盒内部的继电器,控制被测机406的220V上下电。
如果主控机401发出的是开关机、复位或热启动控制命令,电源控制盒403会区分是控制哪一台被测机的命令,并通过15PIN电缆404传输到该被测机406中的多功能计算机检测卡407,该检测卡将控制被测机406进行开关机、复位或热启动。
并且,多功能计算机检测卡407实时采样被测机406的220V的电源状态5V和被测机主板电源状态5VSB,并将其采样的测试状态传给电源控制盒。电源控制盒将根据主控机发出的检测命令,向主控机传送测试状态。
在被测机406进入POST自检过程中,被测机406将自检信息一方面在多功能计算机检测卡407上用16进制代码进行显示,另一方面将自检信息通过电源控制盒403转接到主控机401,由主控机401解析后,用文字和图片的形式显示出来。
不论被测机406是以何种方式进入操作系统,被测机406都将启动信息获取程序,获取被测机的系统配置信息等,并将获得的信息通过PCI总线送到多功能检测卡,多功能检测407将通过电源控制盒403的转接将信息传到主控机401,主控机401将接到的配置信息与系统欲先设置的标准信息相比较,如果出现错误,主控机401将会报警,并将错误保存在内存中。
被测机406向主控机401发送完系统基本配置信息后,开始运行心跳程序,通过多功能计算机检测卡盒电源控制盒定时向主控机401发送确认信息,表明被测机406运行的运行状态。这时,主控程序将判断控制命令是否执行完毕,如果没有完毕,则运行主控程序,准备发出下一个控制命令,如果完毕,主控机将所有保存在内存中的出错信息保存为文件,提示系统测试完成。
下面举实施例二进一步说明本发明的具体实施方案。
如图7所示,为自动开关机测试系统的外部结构示意图。该自动开关机测试系统包括主控机、被测机、电源控制盒和多功能计算机检测卡。与实施例一中的不同之处是电源控制盒502和多功能计算机检测卡发生了变化。
参见图8所示,为电源控制盒的结构示意。该电源控制盒包括一个A/D转换卡801、一个D/A转换卡802、多路信号控制模块803、继电器控制模块804、主板PSW控制模块805和主板RESET控制模块806。并且,这里的D/A转换卡采用ADLINK PCI-6216 D/A卡,A/D转换卡采用ADLINKPCI-9113 A/D卡。主控机发出的控制命令送入D/A转换卡802,经D/A转换卡802转换为模拟信号后,送入多路信号控制模块803,多路信号控制模块803将判定此命令是控制哪一台被测机的何种命令。如果该命令是检测命令,多路信号控制模块803则要选通电源检测模块807,电源检测模块807将计算机检测卡808实时采样的被测机的测试状态信息经A/D转换卡801转换为数字量后传送给主控机;如果该命令是220V电源上下电控制命令,多路信号控制模块803则要选通继电器控制模块804,由继电器控制模块804控制对应被测机的220V电源上下电;如果是开、关机控制命令,多路信号控制模块803则要选通主板PSW控制模块805,由主板PSW控制模块805发出开关机的信号至计算机检测卡808;如果是复位控制命令,多路信号控制模块803则要选通主板RESET控制模块806,主板RESET控制模块806将发出复位信号至计算机检测卡808。
多功能计算机检测卡包括计算机检测卡和传送被测机系统配置信息、转接热启动命令的装置,所述的传送被测机系统配置信息和转接热启动命令的装置,包括置于被测机内的网卡、集线器和置于主控机内的网卡,其中,集线器与置于被测机内的网卡和置于主控机内的网卡相连。
如图9所示,为计算机检测卡的功能模块图。计算机检测卡包括开关机控制模块901、POST功能检测模块904、通信控制模块903、单片机控制模块902、液晶显示LCD907和存储单元905。
其中,开关机模块901用于控制被测机的系统启动和关闭、系统复位以及检测被测机电源等功能;POST功能检测模块904用来获取被测机POST上电自检过程中的自检信息代码,并将通过存储单元在LCD907上显示自检信以及代码对应的字符串解释;通讯控制模块903是通过485串口实现的,该串口通讯可以实现较长的通讯线路,也方便扩展;单片机控制模块902是多功能计算机检测卡的控制核心,用于协调控制信息传输和逻辑控制等功能;液晶显示LCD 907用来显示自检信息代码和及其相应的字符串。
图10为主控机与单台被测机之间的连接示意,其连接关系如下9116A/D 1013和6216D/A 1018的一端直接插在主控机1010主板的PCI槽上,另一端分别通过37针的电缆1009和1011连接电源控制盒1007。电源控制盒1007上有两组电源线和10个接线器。一组电源线1012连接220V电源插座1015;另外一组电源线1004连接被测机1003的电源插座,这组电源线为每台被测机提供交流220V电源;每个接线器通过一个15针电缆1005连接一台被测机中的计算机检测卡1001,这个电缆中包括系统PowerSwitch控制、复位RESET控制以及5V和5VSB检测信号。计算机检测卡插1002在被测机1003的PCI槽上,插针上包括检测主板是否正常启动和关闭的+5V信号、用于检测电源~220V是否正常上电和断开的5VSB信号、用于控制主板的启动Power SW信号和用于系统的复位Reset的信号。被测机1003中的网卡通过网线1006连接集线器(HUB)1008,HUB 1008通过网线1016连接主控机的网卡1017上。HUB 1008的电源线1014连接交流220V电源插座1015。
下面结合图10来说明自动开关机测试系统的工作过程。
用户进入主控界面选择被测机并配置测试参数和信息;然后运行主控程序,发出开关机测试命令,系统检测被测机的状态与发出的命令是否相抵触,如果出现抵触,主控机发出报警,显示出错内容,这时需要测试人员改变状态才可以继续进行。
如果主控程序发出的是热启动命令,则该控制命令通过主控机的网卡1017、集线器1008和被测机的网卡1001将命令传输到被测机,被测机获得热启动命令后执行热启动程序,进行热启动。
如果发出的命令是220V上下电、开关机或复位等控制命令,则该控制命令至主控机PCI上的D/A转换卡1018,D/A转换卡1018将信息和命令转换成模拟信号,模拟信号经过37PIN电缆1011传输到电源控制盒1007。
电源控制盒1007将区分出被测对象并判断命令。如果该命令是220V上下电控制命令,电源控制盒1007将选出要控制的被测机并接通或断开该被测机的电源对应的电源继电器,达到控制该被测机220V电源的目的;如果是开关机或复位等控制命令,电源控制盒1007发出相应的控制信号给计算机检测卡1002,计算机检测卡1002将转接电源控制盒1007的控制信号至被测机1003,被测机1003则进行开关机或热启动操作。
在被测机执行控制命令时,计算机检测卡1002将检测被测机电源状态5VSB,并将检测的结果通过15PIN电缆1005传送给电源控制盒1007,电源控制盒1007通过37PIN电缆1009将检测结果传到主控机的A/D卡1013上,A/D卡1013将模拟信号转换为数字信号后传到主控机1010。主控机1010收到被测机的测试状态信息,确定此次发送控制命令的结果。
另外,无论被测机是以开机、复位或热启动中哪一种方式进入操作系统,都将启动被测机内的信息获取程序,获取包括BIOS信息、CPU信息、内存信息、硬盘信息、显卡信息、系统端口和插槽等被测机的系统配置信息,并将获取的信息进行汇总,在被测机上显示,同时使用IPX/SP通信协议将配置信息通过网线传到主控机,主控机得到被测机的配置信息后,一方面给被测机反馈信息,表示确认收到,一方面将收到的信息与主控机内预先设置的标准配置信息进行比较,如果出现错误,主控机则报警以示错误,并将错误的结果保存在主控机的内存中。
被测机向主控机发送完系统基本配置信息后,开始运行心跳程序,定时向主控机发送信号,表明被测机运行的运行状态。主控程序判断设置的命令是否执行完毕,如果没有完毕,则运行主控程序,执行下一个控制命令,如果完毕,主控机将所有保存在内存中的出错信息保存为文件,然后作出相应的显示,提示系统已完成测试。
以上实施例中的可以实现控制10台被测机进行测试,主控机将根据命令的先后,逐一发出10台被测机的控制命令,被测机之间不会相互影响。并且,该系统具有交流220V电源上下电、开关机、复位和热启动四种开关机控制方式,还包括220V上电到启动的时间、PowerOff维持时间、系统开机维持时间、220V下电到上电的时间、系统开机到系统关机的时间和死机等待时间等6种时间参数。用户可以根据自己或者产品强度的需要选择被测机并任意设置开关机测试方式、测试次数和时间参数等,系统将根据预先的设置对被测机进行循环测试。
下面对系统执行循环控制命令再作进一步说明。
如图11所示,为系统的开关机控制方式流程。
1101、系统发出220V上电命令至电源控制盒,电源控制盒根据命令控制被测机系统220V上电;1102、计算机检测卡检测被测机220V电源得到5VSB,并将5VSB送至电源控制盒;1106、电源控制盒判断被测机已上电后,发出启动命令并通过计算机检测卡至被测机;1104、计算机检测卡将检测被测机的主板PCI上的5V,并将检测到的5V信息传送到电源控制盒;1105、被测机执行信息获取程序,获取被测机的系统配置信息;1106、系统发送关机命令至电源控制盒,电源控制盒发出控制命令经多功能检测卡转接到被测机;1107、计算机检测卡检测被测机的主板电源5V,并将检测到的信号传送至电源控制盒,电源控制盒再将信息反馈给主控机;1108、主控机发出220V断电的命令至电源控制盒,电源控制盒发出控制信号经计算机检测卡至被测机;1109、计算机检测卡检测被测机的220V电源5VSB的状态,并将检测到的结果送至电源控制盒,电源控制盒将命令传送至主控机。
在上述的流程中,如果系统发出冷启动方式的循环控制命令,系统执行完1101~1102的控制命令后,将循环执行步骤1106~1107;如果系统发出复位方式的循环控制命令,系统将执行完1101~1106后,循环执行步骤1104~1105;如果系统发出热启动方式的循环控制命令,系统将执行完1101~1106后,循环执行步骤1104~1105,如果系统发出~220V上下电方式的循环控制命令,系统将循环执行步骤1104~1105。
主控机将根据输入的控制命令依次发出控制信号来接通被测机电源及相应开关机方式的电源,由于电源控制盒内部的连接每一台被测机的控制线都是单一的,所以在多台被测机同时进行测试的情况下,如果一台被测机出现测试故障,不会影响其他被测机进行测试。
如图12所示为自动开关机测试系统的界面图。
图内显示的具体设置选项如下1)测试信息的选项BIOS、CPU、内存、SCSI硬盘、RAID卡、插槽、Onboard设备、显卡、IDE硬盘、端口等选项;2)四种自动测试的开关方式220V断电测试方式,PowerOn/Off开关机测试方式,复位开关机测试方式和热启动开关机测试方式;6)6种时间参数220V上电到启动的时间,PowerOff维持时间,系统开机维持时间,220V下电到上电的时间,系统开机到系统关机的时间,死机等待时间;4)可以手动控制任意一台被测机的220V上下电、系统启动和关闭、系统复位、参数的复位。
5)可以设定错误报告文件的名称和路径;6)控制界面设计独特、实用、使用方便。
操作人员可以通过此界面设置任意一台被测机的控制参数,并且还可以查看错误信息以及被测机的正在进行状态、次数等。
本发明的自动开关机测试系统不仅实现了自动进行开关机测试,而且还实现了信息反馈功能,使得系统能及时、清楚地了解被测机的测试状态以及结果;该系统可以同时控制10台被测机的开关机测试,如果一台被测机出现问题,并不影响其他被测机进行测试;该系统应用面广,不仅可以应用于计算机整机系统的测试,也可以用于主板、内存、硬盘等部件的开关机测试;另外,该系统还具有良好的控制、显示界面,用户可以通过界面任意设定四种开关机测试方式和时间参数。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种实现自动开关机测试的系统,其特征在于该系统包括主控机,用于发出控制命令、接收被测机220V电源和主板电源的状态信息以及显示被测机系统配置信息,与电源控制盒相连;电源控制盒,用于选择被测机、控制被测机220V电源上下电、开关机以及转接被测机的电源和主板电源的状态信息,与主控机、被测机的电源输入端和多功能计算机检测卡相连;多功能计算机检测卡,用于检测被测机的220V电源和主板电源的状态、获得被测机自检信息,并将被测机的电源和主板电源的状态信息和系统配置等信息反馈给主控机,且与被测机的启动开关、复位开关和输出自检信息、配置信息的接口和电源控制盒相连。
2.根据权利要求1所述的实现自动开关机测试的系统,其特征在于所述的电源控制盒包括单片机控制模块,用于解析控制命令、选择被测机和命令类型,与通讯控制模块、电源继电器控制模块和220V电源插座相连;通讯控制模块,用与传送被测机的配置信息、自检信息,与单片机控制模块、主控机的发出控制命令、接收反馈信息的串口和多功能计算机检测卡的接收电源控制盒的控制信号、输出被测机电源状态和主板电源状态及被测机的系统配置信息的接口相连;电源继电器控制模块,用于控制相应的被测机220V电源上下电,与单片机控制模块和被测机的电源输入端相连。
3.根据权利要求1或2所述的实现自动开关机测试的系统,其特征在于所述的多功能计算机检测卡包括通信控制模块,用于接收来自电源控制盒的控制信号并将其传送给单片机控制模块、接收来自单片机控制模块和PCI芯片的信息并传给电源控制盒,与单片机控制模块、PCI芯片和电源控制盒的发出控制信号、接收被测机电源状态和主板电源状态及系统配置信息的接口相连;单片机控制模块,用于控制信息传输、控制显示错误代码、控制开关机、复位和POST功能检测,与通信控制模块、LCD显示、开关机控制模块和POST功能检测模块相连;开关机控制模块,通过来自单片机控制模块的控制信号控制被测机的开关机、复位以及实时检测被测机的电源状态,与单片机控制模块和被测机的启动开关、复位开关相连;POST功能检测模块,用于获取被测机的自检信息以及将自检信息存储在存储单元,与单片机控制模块和被测机的PCI接口相连;存储单元,用于存储来自POST功能检测模块、经PCI芯片传入的被测机系统配置信息和通信控制模块传入的热启动命令的控制信号,与单片机控制模块PCI芯片和POST功能检测模块相连;LCD显示,用于显示单片机控制模块从存储单元中取出的自检信息代码和内容,与单片机控制模块相连;PCI芯片,用于转换信息格式,与单片机控制模块、存储单元和被测机的PCI接口相连;其中,所述的单片机控制模块、通信控制模块和开关机控制模块的电源由电源控制盒提供,所述的POST功能检测模块和PCI芯片的电源由被测机提供。
4.根据权利要求1所述的实现自动开关机测试的系统,其特征在于所述的电源控制盒包括D/A转换卡,用于转换主控机发出的控制命令为模拟量,与多路信号转换模块和主控机的发出控制命令的接口相连;A/D转换卡,用于转换来自多功能检测卡的被测机主板上下电信息为数字量,与电源检测模块和主控机接收被测机电源和主板电源状态的接口相连;多路信号控制模块,用于解析主控机发出的命令类型和选择被测机,与继电器控制模块、主板开关控制模块和主板复位控制模块相连;继电器控制模块,用于接通或断开对应的被控设备的220V电源,与多路信号控制模块和被测机的电源输入端相连;主板开关控制模块,用于控制被测机主板电源开、关,与多路信号控制模块和多功能计算机检测卡接收开关控制信号的接口相连;主板复位控制模块,用于控制被测机复位,与多路信号控制模块和多功能计算机检测卡接收复位控制信号的接口相连;电源检测模块,用于向主控机传送被测机电源和主板电源状态信息,与A/D转换卡和多功能计算机检测卡输出被测机电源和主板电源的状态信息的接口相连。
5.根据权利要求1或4所述的实现自动开关机测试的系统,其特征在于所述的多功能计算机检测卡包括计算机检测卡和传送被测机系统配置信息、转接热启动命令的装置,所述的传送被测机系统配置信息和转接热启动命令的装置,包括置于被测机内的网卡、集线器和置于主控机内的网卡,其中,集线器与置于被测机内的网卡和置于主控机内的网卡相连,计算机检测卡,用于转接来自电源控制盒的开关机、复位控制信号、检测被测机的电源和主板电源状态、显示被测机自检信息代码以及将被测机的电源和主板电源的状态信息通过电源控制盒反馈给主控机,与被测机的启动开关、复位开关和输出自检信息、配置信息的接口和电源控制盒的发出控制信号和接收被测机电源状态和主板电源状态信息的接口相连。
6.根据权利要求5所述的实现自动开关机测试的系统,其特征在于所述的计算机检测卡包括通信控制模块,用于接收来自电源控制盒的控制信号并将其传送给单片机控制模块、接收来自单片机控制模块的信息并将其传给电源控制盒,与单片机控制模块和电源控制盒的发出控制信号和接收被测机电源状态和主板电源状态信息的接口相连;单片机控制模块,用于控制信息传输、控制显示错误代码、控制开关机、复位和POST功能检测,与通信控制模块、LCD显示、开关机控制模块和POST功能检测模块相连;开关机控制模块,通过来自单片机控制模块的控制信号控制被测机的开关机、复位以及实时检测被测机的电源状态,与单片机控制模块和被测机的启动开关、复位开关相连;POST功能检测模块,用于获取被测机的自检信息以及将自检信息存储在存储单元,与单片机控制模块和被测机的PCI接口相连;存储单元,用于存储来自POST功能检测模块、经PCI芯片传入的被测机系统配置信息和通信控制模块传入的热启动命令的控制信号,与单片机控制模块、PCI芯片和POST功能检测模块相连;LCD显示,用于显示单片机控制模块从存储单元中取出的自检信息代码和内容,与单片机控制模块相连;其中,所述的单片机控制模块、通信控制模块和开关机控制模块的电源由电源控制盒提供,所述的POST功能检测模块的电源由被测机提供。
7.根据权利要求4所述的实现自动开关机测试的系统,其特征在于所述的D/A转换卡为ADLINK PCI-6216 D/A卡。
8.根据权利要求4所述的实现自动开关机测试的系统,其特征在于所述的A/D转换卡为ADLINK PCI-9113 A/D卡。
9.一种应用权利要求1所述的系统实现自动开关机测试的方法,其特征在于该方法包括以下步骤A.主控机发出检测信号,选择被测机,检测对应被测机的电源和主板电源状态;B.判断该被测机的电源和主板电源状态是否与要发出的测试命令相抵触,如果不抵触,执行步骤C,如果抵触,执行步骤A;C.主控机发出控制命令,选择该被测机、控制该被测机作出相应的动作;D.发出检测信号,选择该被测机,检测对应被测机的电源和主板电源状态;E.判断被测机是否作出相应的动作,如果没有,执行步骤C,否则,判断是否还有控制命令要发出,如果有,执行步骤A,如果没有,测试结束。
10.根据权利要求9所述的实现自动开关机测试的方法,其特征在于所述步骤B包括如果发出检测信号的次数为N次,且N>1,该被测机的电源和主板电源状态与要发出的测试命令相抵触,系统发出报警,提示需要人为干预。
11.根据权利要求9所述的实现自动开关机测试的方法,其特征在于所述的所述步骤E包括发出控制命令的次数为N次,且N>1,被测机没有作出相应的动作,系统发出报警,提示需要人为干预。
12.根据权利要求9所述的实现自动开关机测试的方法,其特征在于所述的控制命令为220V上电命令、或220V下电命令、或开机命令、或关机命令、或复位命令、或热启动命令。
13.根据权利要求9所述的实现自动开关机测试的方法,其特征在于所述的主控机发出控制命令为开机命令、或热启动命令、或复位命令后,并且在被测机进入POST自检阶段,该方法进一步包括读取被测机PCI接口,获取被测机自检信息,并用LCD显示自检信息代码和内容。
14.根据权利要求13所述的实现自动开关机测试的方法,其特征在于所述的方法进一步包括将自检信息代码传送至主控机,主控机解析后,用文字和图形的形式显示。
15.根据权利要求9或13所述的实现自动开关机测试的方法,其特征在于所述的方法进一步包括在主控机内,预先输入被测机的标准的系统配置信息;在所述步骤C中,当主控机发出控制命令为开机、或复位、或热启动命令,并且在所述步骤E中判断被测机已执行了控制命令之后,被测机进入操作系统,读取ROM区的内存信息,获取内存、BIOS、CPU、Onboard设备和显卡等系统配置信息;通过与IDE控制芯片的通信来读取IDE硬盘的容量等信息;通过调用Windows API函数、驱动程序来读取SCSI硬盘的容量、ID号等信息;通过与商品化软件的接口的通讯获取RAID卡的信息;将获取到的被测机的系统配置信息传到主控机;主控机显示被测机系统配置信息内容,并比较这些配置信息与预先输入的标准信息是否有差异,如果有差异,将错误的被测机系统配置信息和预先输入的标准信息保存成文件。
全文摘要
本发明公开了一种实现自动开关机测试的系统和方法。该系统包括主控机、电源控制盒和多功能计算机检测卡,系统通过电源控制盒控制被测机开关机,通过多功能计算机检测卡检测被测机的测试状态信息等。该方法为A.主控机选择被测机,检测被测机的状态;B判断被测机的状态是否与要发出的控制命令相抵触,如果抵触,执行步骤A;C.主控机选择被测机,控制该被测机作出相应的动作;D.主控机选择被测机,检测被测机的状态;E.主控机判断被测机是否作出相应的动作,如果没有执行,执行步骤C;F.主控机判断是否还有控制命令要发出,如果有,执行步骤A。本发明实现了闭环式的、一对多的、自动开关机测试,大大提高了测试效率,确保测试质量。
文档编号G06F11/00GK1484147SQ02131010
公开日2004年3月24日 申请日期2002年9月20日 优先权日2002年9月20日
发明者崔吉顺, 金正操, 顾光导, 黄迅, 李签路, 龚仲涛, 丁建华 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1