一种柔性测控平台系统及开发方法转让专利

申请号 : CN201210401375.X

文献号 : CN102929620B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 季白杨易建军

申请人 : 杭州信雅达科技有限公司

摘要 :

本发明公开了一种柔性测控平台系统及开发方法,包括:数据采集层、数据计算层、参数设置层、多端口多协议数据采集通道及各数据采集设备终端等,数据采集层支持采集设备数据输入采集,将采集数据发送至数据计算层或直接上传至数据显示层和/或数据存储层;参数设置层根据不同的测试任务设置参数,使其与采集端口对应;数据计算层根据参数设置调用相应的模块,对数据进行计算与处理,提取有效数据统一格式,将统一数据发送至数据显示层和/或数据存储层。本发明克服了传统测试系统的缺陷,保证对多种通信协议的兼容,提高测控平台的数据采集速度,改善测控平台的可操作性与可定义性,降低测控平台的开发成本和风险,并满足用户个性化定制的需求。

权利要求 :

1.一种柔性测控平台系统,其特征在于,包括:数据采集层、数据计算层、参数设置层、数据显示层、数据存储层及数据处理层;以及多端口多协议数据采集通道、各数据采集设备终端;

数据采集层,通过多端口多协议数据采集通道与数据采集设备终端相连,用于支持各数据采集设备终端的数据输入采集,并将采集到的数据发送至数据计算层或直接上传至数据显示层和/或数据存储层;

参数设置层,与数据采集层的输出端相连接,用于根据不同的测试任务设置参数,使其与采集端口一一对应,保证数据采集速度及多通道大数据量的数据采集;

数据计算层,根据参数设置层中设置的参数调用相应模块,对数据采集层传送来的数据进行计算与处理,提取有效数据后得到统一的帧格式数据,并将统一帧格式的数据发送至数据显示层和/或数据存储层;

数据存储层,用于对发送过来的数据进行实时存储,并将存储的数据发送至数据处理层或数据显示层;

数据显示层,与数据存储层互连,用于通过多种形式对数据进行实时显示,并提供给用户各种自定义操作界面;

数据处理层,用于从数据存储层中读取数据并进行数据的后期处理与分析;

其中,所述参数设置层根据用户的自定义操作界面,使参数与采集端口形成一一对应的采集通道,通过定义各采集通道的参数属性,使高速采集数据与低速采集数据在不同的采集通道中分开,并存储在不同的数据库表中,完成多通道大数据量数据的实时采集。

2.根据权利要求1所述的柔性测控平台系统,其特征在于,所述数据采集层通过安装设备驱动,调用相应的动态链接库DLL,兼容至少包括串口、USB、CAN及TCP/IP的各种数据传输端口,以便与不同规格的数据采集设备终端连接。

3.根据权利要求1所述的柔性测控平台系统,其特征在于,所述多通道大数据量数据的实时采集是基于Windows的多线程技术,通过调用AfxBeginThread函数,采用多媒体高速定时器timeSetEvent、高精度计数器QueryPerformanceFrequency及循环缓存技术,实现多通道的并行采集。

4.根据权利要求3所述的柔性测控平台系统,其特征在于,所述数据计算层包含至少一个虚拟的设备库,根据不同的通信协议及采集端口,调用不同的设备库内的代码,对采集数据进行数据计算与处理;当添加新设备时,通过在设备库内设立相关属性,添加对应代码,来对新设备的采集数据进行数据计算与处理。

5.根据权利要求4所述的柔性测控平台系统,其特征在于,所述参数设置层设置的参数的属性包括:端口类型、优先级,其中,端口类型属性定义在数据计算层要调用设备库内的代码,使采集端口与相关通信协议相对应;优先级属性定义数据的采集速度。

6.根据权利要求1或5所述的柔性测控平台系统,其特征在于,所述数据存储层采用ADO技术,根据测试任务的需要及参数设置,动态的创建数据库及表。

7.根据权利要求6所述的柔性测控平台系统,其特征在于,所述数据存储层动态创建的表包括:至少一个低速数据存储数据库表和至少一个高速数据存储数据库表,用于分别接收低速采集数据和高速采集数据。

8.根据权利要求7所述的柔性测控平台系统,其特征在于,所述数据显示层包含teechart插件,该插件包括曲线显示模块、数字显示模块和仪表显示模块,通过用户的设定进行实时显示,数据以上述三种形式中的任意形式进行显示。

9.一种柔性测控平台系统的开发方法,其特征在于,包括如下步骤:

数据采集层通过多协议数据采集通道支持各种数据采集设备终端进行数据输入采集,将采集到的数据发送至数据计算层或直接上传至数据显示层和/或数据存储层;

数据计算层根据参数设置层中根据不同的测试任务设置的参数,调用相应模块,对发送的采集数据进行计算与处理,提取有效数据后得到统一的帧格式数据,并将统一的帧格式数据分成不同的通道发送至数据显示层和/或数据存储层;

数据存储层对发送过来的数据进行实时存储,并将存储的数据发送至数据处理层或数据显示层;

数据显示层与数据存储层互连,通过多种形式对数据进行实时显示,同时提供给用户各种自定义操作;

数据处理层从数据存储层中读取数据并进行数据的后期处理与分析;

其中,所述参数设置层根据用户的自定义操作界面,使参数与采集端口形成一一对应的采集通道,通过定义各采集通道的参数属性,使高速采集数据与低速采集数据在不同的采集通道中分开,并存储在不同的数据库表中,完成多通道大数据量数据的实时采集。

说明书 :

一种柔性测控平台系统及开发方法

技术领域

[0001] 本发明涉及计算机工业测试领域,具体涉及接入层的传感器多种类、接入总线的异构性、用户对测试界面个性化要求等测试领域,尤其涉及一种柔性测控平台系统及开发方法。

背景技术

[0002] 对于现代工业测控平台,一般通过传感器感知测控对象的性能参数或特征参数,经信号调理将信号传送给工控机或PC机等主机,主机对不同的传感器进行数据处理、数据分析、数据显示等,并根据测试结果对测控对象进行控制输出。在此过程中,一方面接入的传感器的形式多种多样,传感器输出的信号类型、与主机的通讯方式也不尽相同。
[0003] 对于不同传感器的信号,其实时性不尽相同,有的实时性要求高,有的实时性要求并不十分严格,因此需要针对具体测试任务,对不同传感器信号处理的实时性要进行具体分配,以满足实时测试任务的要求。
[0004] 另一方面,不同使用用户对用户界面的风格、界面的内容、功能等要求不尽相同,一个柔性的测控系统,用户需要根据自己的需要灵活定义不同传感器参数的含义,且需要将用户界面的内容与数据接入端的传感器进行很好地匹配。随着测试任务对系统灵活性和测试成本要求的越来越严格,传统的测试系统逐渐暴露了其最大的缺陷:传统测试和控制系统绝大多数都是针对生产厂商的某一特定产品开发的,实现特定的测试功能,专机专用,即测试任务一旦更改需要重新搭建软硬件系统,硬件仪器需要重新选择,上位机应用程序重新编写,通信协议的多样性使系统的搭建更加复杂。
[0005] 由上述可知,传统测试方法最大缺点是功能单一,价格昂贵,灵活性及开放性差。这延长了测试任务的周期,增加了测试的成本,提高了多任务测试的复杂性,不符合测试任务对测试系统灵活搭建和快速搭建的发展要求,且可操作性差,系统采集速度慢。

发明内容

[0006] 本发明的目的在于克服现有技术的不足,提供一种柔性测控平台系统及方法,其能保证对多种通信协议的兼容,提高测控平台的数据采集速度,改善测控平台的可操作性与可定义性,降低测控平台的开发成本和风险,并满足用户个性化定制的需求。
[0007] 本发明的目的是通过以下技术方案来实现的:
[0008] 提供了一种柔性测控平台系统,包括:数据采集层、数据计算层、参数设置层、数据显示层、数据存储层及数据处理层;以及多端口多协议数据采集通道、数据采集设备终端;
[0009] 数据采集层,通过多端口多协议数据采集通道与数据采集设备终端相连,用于支持各数据采集设备终端的数据输入采集,并将采集到的数据发送至数据计算层或直接上传至数据显示层和/或数据存储层;
[0010] 参数设置层,与数据采集层的输出端相连接,用于根据不同的测试任务设置参数,使其与采集端口一一对应,保证数据采集速度及多通道大数据量的数据采集;
[0011] 数据计算层,根据参数设置层中设置的参数调用相应的模块,对数据采集层传送来的数据进行计算与处理,提取有效数据后得到统一的帧格式数据,并将统一帧格式的数据发送至数据显示层和/或数据存储层;
[0012] 数据存储层,用于对发送过来的数据进行实时存储,并将存储的数据发送至数据处理层或数据显示层;
[0013] 数据显示层,与数据存储层互连,用于通过多种形式对数据进行实时显示,并提供给用户各种自定义操作界面;
[0014] 数据处理层,用于从数据存储层中读取数据并进行数据的后期处理与分析。
[0015] 在一种变化的实施方式中,所述数据采集层可兼容串口、USB、CAN及TCP/IP等多种通信协议,用户可根据测试任务及参数需求对采集端口及通信协议进行选择,且在系统框架下可通过安装设备驱动,调用设备的动态链接库(DLL)方便的添加新的采集设备或通信协议,如有需要用户也可以根据实际测试所需重新编写已有数据处理DLL内的数据处理过程。所述数据采集通过使用多线程技术、高速定时器timeSetEvent、高精度计数器QueryPerformanceFrequency及循环缓存技术,可以保证多通道高速数据采集的实时性要求。
[0016] 在一种变化的实施方式中,所述数据计算层包含一个虚拟的“设备库”,根据不同的通信协议及端口设备,调用不同的“设备库”内的代码,对采集数据进行不同的计算、分割、求平均值等数据处理。添加新设备后,需在“设备库”内设立相关属性,添加对应代码,来对新设备的采集数据进行数据计算与处理。
[0017] 在一种变化的实施方式中,所述参数设置层包含为参数设立的各个属性,如“参数上下限”,“端口类型”,“优先级”等,其中“端口类型”属性可使参数与采集端口及相关通信协议对应,且标明了在数据计算层要调用“设备库”内的代码,“优先级”则表明了参数的采集速度输。
[0018] 在一种变化的实施方式中,所述数据显示层包含teechart插件,这一插件构建了曲线显示模块、数字显示模块和仪表显示模块,通过VC++面向对象的编程方法,提供给用户丰富灵活的操作,参数可以以上述三种形式中的任意形式显示、曲线纵坐标大小可以设置、数字显示模块及仪表显示模块可以拖动等。
[0019] 在一种变化的实施方式中,所述数据存储层使用ADO技术,可根据测试任务的需要及参数的设定,动态建立数据库及表,根据字段名进行存储和读取。
[0020] 本发明还提供了一种柔性测控平台系统的开发方法,包括如下步骤:
[0021] 数据采集层通过多协议数据采集通道支持各种数据采集设备终端进行数据输入采集,将采集到的数据发送至数据计算层或直接上传至数据显示层和/或数据存储层;
[0022] 数据计算层根据参数设置层中根据不同的测试任务设置的参数,调用相应的模块,对发送的采集数据进行计算与处理后,得到统一的帧格式数据,并将统一的帧格式数据分成不同的通道发送至数据显示层和/或数据存储层;
[0023] 数据存储层对发送过来的数据进行实时存储,并将存储的数据发送至数据处理层或数据显示层;
[0024] 数据显示层与数据存储层互连,通过多种形式对数据进行实时显示,同时提供给用户各种自定义操作;
[0025] 数据处理层从数据存储层中读取数据并进行数据的后期处理与分析。
[0026] 与现有测试系统相比,本发明的积极效果是:
[0027] (1)基于Visual C++构建的测试系统框架,采用了“柔性测试”技术,使得系统具有通用性、合理性和良好的扩展性。
[0028] (2)数据采集层采用安装设备驱动及开发动态链接库(DLL)的方式进行开发,使基于虚拟仪器理念开发的数据采集层“模块库”能支持多种设备及不同通信协议,针对用户不同的测量要求依据规定好的接口规则开发新的数据采集模块,或修改现有数据采集模块DLL中的数据处理过程,与现有技术相比,明显提高了测控平台的开发效率,降低了开发的成本和风险。
[0029] (3)数据采集层兼容串口、USB、CAN及TCP/IP等多种通信协议及采集设备,当测试任务更换后,如有需要部分数据采集设备可在新的测试任务中重复使用,且可方便的添加新的采集设备,与现有技术相比,明显提高了采集的重用效率,及新设备的兼容性。
[0030] (4)系统系统使用多线程技术,为每个参数提供一个采集通道,使用高速定时器timeSetEvent、高精度计数器QueryPerformance Frequency及循环缓存技术,提高了每个通道的采集速度及精度,与现有技术相比,提高了系统多通道高速采集的能力。
[0031] (5)基于C++面向对象的编程思想及采用teechart插件开发的系统操作界面,提供了丰富灵活的用户自定义功能,参数设置层和用户界面自定义功能可使用户在无需掌握系统开发语言的情况下,通过了解测试任务,设置不同的参数,来针对新的测试任务使用柔性测控平台。
[0032] (6)数据存储层使用ADO技术,根据采集速度需求创建高速存储表和低速存储表,使高速采集数据与低速采集数据分离,避免采集速度之间的相互干扰,同时使用ADO技术存储读取时仅按字段名进行,无需遍历整个数据库字段进行搜索,与现有技术相比提高了存储及读取速度。
[0033] 下面结合附图对本发明的实施和优点作进一步解释。

附图说明

[0034] 图1是本发明实施例的柔性测控平台系统的结构层次示意图;
[0035] 图2是本发明实施例的数据多通道高速采集处理示意图;
[0036] 图3是本发明实施例的低速通道循环缓存技术示意图;
[0037] 图4是本发明实施例的柔性测控平台系统的开发方法流程示意图。

具体实施方式

[0038] 有关本发明的实施例的说明是参考附加的图式,用来例示本发明可以实施的特定实施例。在以下实施例中,在不同的图中,相同部分是以相同标号表示。
[0039] 图1是本发明实施例的柔性测控平台系统的结构层次示意图10,图4是本发明实施例的柔性测控平台系统的开发方法流程示意图,下面依据附图1结合附图4对本发明实施例充分说明。本发明系统中包括硬件数据采集设备11,用于与其连接并向柔性测控平台的上位机发送数据的多端口多协议采集通道12;柔性测控平台的上位机采用Viusal C++面向对象的编程思想进行编写,包括数据采集层13、参数设置层14、数据计算层15、数据显示层16、数据存储层17及数据处理层18;数据采集层13与通过多端口多协议采集通道12与硬件数据采集设备11相连接,其兼容多种通信协议及通信端口,且可方便扩展,用户设立测试项目时不需过多的考虑硬件采集设备兼容问题;数据采集层13与数据计算层15、数据存储层17和数据显示层16相连接;参数设置层14设置于数据采集层13的输出端,根据参数设定的相关属性,将参数与相应的采集端口一一对应,并调用相应模块,例如,设备库142(参见图2中所示)内的代码,对相应采集端口的数据在数据计算层15作特定的数据计算,或不经数据计算层15,直接向上一层传递给数据存储层17或数据显示层16;数据计算层15与数据显示层16连接,数据计算层15根据参数设置层中设置的参数调用相应模块,例如,包括求平均计算模块、数据分割模块、数据计数模块及数据交互模块等模块,对数据采集层传送来的数据进行计算与处理,提取有效数据后得到统一的帧格式数据,并将统一帧格式的数据发送至数据显示层和/或数据存储层;数据显示层16与数据存储层17互连,数据显示层16、数据存储层17分别用于根据用户的设置进行显示和/或存储;数据存储层17可根据设置于数据采集层
13的输出端的参数设置层14对参数设置优先级属性,将高速数据与低速数据分别存储;数据处理层18采用ADO技术,即ActiveX Data Objects,ActiveX数据对象,它是Microsoft提出的应用程序接口用以实现访问关系或非关系数据库中的数据的技术,从数据存储层17中读取数据进行数据的后期处理与分析。
[0040] 作为另一优选实施方式,对于数据采集层13,用户可根据测试任务及参数需求对采集端口及通信协议进行选择,且在系统框架下可通过安装设备驱动,调用设备的动态链接库DLL,方便的添加新的采集设备或通信协议。如有需要,用户也可以根据实际测试所需,重新编写已有数据处理动态链接库DLL内的数据处理过程。数据采集层13代替实际仪器提高了程序的灵活性和扩展性,当测试任务发生变化时,用户只需要针对测试任务重新设置参数设置层14中的参数即可,这样显著地提升了开发测试系统的效率,符合柔性测试的理念;另一方面,数据采集层13采用类似于虚拟仪器的编程方式,显著降低了针对硬件设备更改的风险和成本。
[0041] 作为另一优选实施方式,用户可以通过参数设置层14提供的用户自定义界面,使参数与采集端口形成一一对应的采集通道,从而规定各个采集通道的参数属性,其中主要包括采集频率,端口类型,数据包长度,触发采集/循环采集类型,优先级等。用户可以通过参数设置层14设置的参数的优先级属性,如附图143所示,使高速采集数据与低速采集数据通过多线程技术在不同的采集通道中分开进行,且存储在不同的数据库表中,从而保证了多通道大数据量采集的实时性。
[0042] 作为另一优选实施方式,所述数据显示层16,使用了teechart插件(Teechart,即为Teechart for.NET、TeeChart Pro ActiveX V2010等控件的简称,是由Steema公司研发的一系列图表控件的简称)可以提供的用户丰富的自定义功能,其中包括数据是否实时显示、数据显示的控件类型、数据是否保存、数据存储的位置、存储频率等显示界面各控件属性设置中的一种或多种。
[0043] 图2是本发明实施例的数据多通道高速采集处理示意图,该示意图表明了本发明实施例对于保证多通道高速数据采集的实施过程。数据由硬件数据采集设备11进行采集,然后通过多端口多协议采集通道12将数据传递给柔性测控平台的数据采集层13;由于本发明是通用柔性测试平台系统,为了针对不同的测试任务,提供给用户灵活的设置与操作,所以参数与端口并不是固定的,而是通过在参数设置层14中设置的参数相关属性,通过调用端口对应模块建立参数采集通道使用户设置的参数与设置的端口完成对应的;其中端口类型模块141使用了VC++面向对象的编程思想,在参数设置层14提供给用户相关的设置选项,为每一个定义好的参数选择其数据来源的端口,这样,就使参数与其数据来源在数据采集层上实现了“软连接”。
[0044] 在数据采集层13通过设置参数1、参数2、参数3……参数N等参数采集到相应的数据后,便将数据传递给数据计算层15,此时参数的“端口类型”属性141及“其他属性”144模块就成为了参数调用参数设置层14中设备库模块142的标志。举例说明,例如,参数1的数据来源为串口,且包含3个有效数据,每个数据的有效位数为8,那么在参数设置层14提供的参数设置界面上会有相应的属性供用户选择,然后根据这些属性设置好的串口波特率进行数据采集,并在数据计算层15通过调用相应模块,例如设备库模块142内对应的代码或函数,将该参数的数据源按标志位分割为3分,并提取出每份的8为有效数据。再例如,参数2与CAN总线的计数器发送的计数值软连接,由于参数是定时采集,所以需对定时周期内获得的数据进行求平均值计算,则可根据参数相关设置属性,调用设备库模块142内对应的代码或函数,对该数据进行平均值计算,从而获得有效值。此外,数据计算层15将所有的有效数据设定为统一的格式,以便后续的数据处理,存储及显示;设备库模块142的理念与现有计算相比,保证了系统的通用性、兼容性,且对于程序员来说扩展方便,只需设立调用的标志位,及相关代码或函数即可。
[0045] 参数数据经数据计算层15处理后得到统一的帧格式数据,然后按照优先级属性,通过参数设置层14中的优先级模块143将不同优先级,即不同采集速度的数据分成不同通道向上层传输,示意图中只表示了两个通道,但在实际使用时可根据用户对优先级等级的设置开多个通道。作为举例,以图2所示的两个通道进行说明,若某几个参数的优先级为高,则通过调用高速定时器timeSetEvent函数及高精度计数器QueryPerforman ceFrequency函数进行,设立一个高速数据传输通道,该通道的采集周期很短,一般为毫秒级。同时在参数显示层16,可根据实时显示界面提供的曲线显示模块161、数字显示模块162及仪表显示模块163通过用户的设定进行实时显示,在数据存储层17动态创建一个高速数据存储数据库表171,用来接收高速采集数据。优先级低的数据,则将定时器timeSetEvent函数及高精度计数器QueryPerformanceFrequency函数的周期值设置的较大,例如,设置成500ms,同时也可根据用户的设置于曲线显示模块161、数字显示模块162及仪表显示模块163连接进行实时显示,在数据存储层17动态创建一个低速数据存储数据库表172,用来接收低速采集数据。此外,在低速通道还应采用循环缓存技术,以避免优先级较低的低速采集通道由于线程阻塞而造成的数据丢失。与现有技术相比,本发明通过上述方法保证了系统的多通道大数据量采集。
[0046] 特别的,数据显示层16中的曲线显示模块161、数字显示模块162、仪表显示模块163及其他设置模块164,具有可添加、拖动、编辑、删除等功能操作,提供了丰富多样的用户操作,充分体现了柔性测试技术的特点。
[0047] 作为优选实施方式,由于高速采集数据量较大及用户操作过于频繁或占用资源过多时,低速采集数据优先级较低,则可能对低速采集线程通道造成堵塞。而与此同时,恰好有从数据采集层向该低速线程采集通道发送数据,那么在堵塞的这段时间发来某一段数据就会被其他数据处理线程遗漏掉,从而造成了数据的丢失。为了解决这一问题我们可以采用循环缓存技术,即将可能采集到的长度最长的数据,作为假设数据采集设备每一次向数据低速采集线程通道发送的数据长度,然后根据这一长度创建一个缓冲队列,用来存储采集线程发来的数据。低速采集线程通道一旦获得资源,即用户操作减少或占用资源不是很多时开始对这段数据进行处理。在代码中想要实现缓冲队列最简单的办法,就是建立一个类似ReadBuffer[Count][DataLen]的二维数组,将数组中的DataLen,即横向长度视为每次低速采集线程通道可能发送的最大长度的数据,将数组中的Count,即纵向大小视为缓冲队列的成员个数。根据数据的大小和实际使用情况来对这个数组进行设定。
[0048] 图3是本发明实施例的低速通道循环缓存技术示意图,如图3所示,在使用时,我们以每一次最大的采集数据长度作为基准,优选的,在本测试环境中,以double类型数据作为缓冲区的基础存储单元,那么取30个这样的单元就已足够保证数据的横向存储空间,此外将缓冲队列22的纵向存储单元个数设定为32个,那么实际上ReadBuffer[32][30]这个数组的形式即为上面所描述的缓冲队列22。数据采集线程21和数据处理线程22分别通过改变ReadCount和StoreCount的值,来填充动态指针的地址值并改变指针指向的数据缓冲区,且每一缓冲区的长度相同,都为DataLen,为了防止互相干扰,我们使用两个变量,即ReadCount和StoreCount来分别存储数据采集线程21和数据处理线程22的指针下标变量。当采集设备,如串口、CAN等初始化后,数据采集线程即开始工作,第一次进行数据采集时,要将ReadCount的值设置为0,即是指针指向第一个缓冲区221,并用该缓冲区进行采集设备的数据接收。当一段数据采集完后,通过消息相应模式向数据处理线程发送相应的消息,此时SegIndex变量加1(SegIndex变量为两个线程的公共变量,该变量记录了由于线程堵塞,造成的数据采集线程采集并向数据处理线程发送的缓冲区个数,与数据处理线程已经进行数据处理的缓冲区数量的差值,及采集后没有被处理的缓冲区个数),然后ReadCount将自加l,使指针指向第二个缓冲区222,使用该缓冲区对数据进行采集。接着SegIndex自加1,如此循环执行,当ReadCount值等于3l时,对该值进行重置,使指针指向缓冲区的起始位,重新开始存取。而对于数据处理线程,则要通过SetEvent()函数设置一个事件响应过程,在每次数据存储在缓冲区后,发送一个消息,该线程接收到消息后,对由于线程堵塞而没有进行数据处理的缓冲区个数进行判断,然后在线程获取资源时进行逐个的处理,每处理一个,SegIndex变量自减1,直到SegIndex为0时表示缓冲区已没有未处理的数据。因此,当测试系统程序突然负荷增大时,我们可以首先保证数据的采集速度和采集效率,在缓冲区队列的缓冲作用的保证下,数据处理线程不必对数据进行实时处理。这种情况下采集数据被采集线程连续缓存在缓冲区中,并进行一定时间的缓存,这样不会因为数据处理线的堵塞造成数据丢失。使用这种技术,还可以对两个线程的公共变量SegIndex的值加以实时判断,如果其值大于32,则肯定因为测试程序过于繁忙,造成数据处理线程堵塞时间超出了允许的范围,此时缓冲区已经溢出,可通过报警的方式提醒操作人员。因此采用这种技术使得测试程序的容错处理能力得到了提高。
[0049] 本发明实施例针对传统的测控平台系统及开发方法的缺陷,在一种柔性测控平台的开发过程中,融入了“柔性测试”技术的思想。柔性测试的思想主要体现在以下至少一方面:(一)数据采集层,具有多端口多通信协议的兼容性,可支持多种采集设备的输入,使用者可以根据系统框架定义柔性开发和扩展数据采集层,从而针对不同的测试任务开发相应的测试系统;(二)参数设置层,提供柔性的用自定义功能,可使参数与采集通道软连接,从而保证新测试任务的快速开发;(三)使用Windows的多线程技术,采用多媒体高速定时器timeSetEvent、高精度计数器QueryPerformanceFrequency及循环缓存技术,实现了数据的多通道高速采集;(四)使用Visual C++面向对象的编程方法及teechart插件,使用者可以自定义数据的后续处理,包括数据是否即时显示,数据是否保存,数据存储频率,显示界面的控件类型,各控件的属性设置等,实现柔性设置的目的。
[0050] 本发明实施例通过数据采集层与采集设备及端口通信,根据设置信息进行数据采集,然后通过参数设置层的调配进行数据计算,接着发送给数据显示层进行显示,报警、控制等操作,同时在数据存储层进行存储。本发明克服了传统测试系统的缺陷,满足了现代测试任务的需求,提高了更新测试任务的效率,降低了系统开发的风险和成本,柔性测试技术的引入解决了传统测试系统扩展性、灵活性不足的问题。
[0051] 上述内容是对本发明的综合说明,而不应该被理解为对本发明的限制。应当指出,对于本技术领域的普通技术人员,在不脱离本发明构思的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围内。