基于pxi总线多功能采集卡的多通道波形同步输出方法
【技术领域】
[0001]本发明涉及一种多通道波形同步输出方法,特别涉及一种基于PXI总线多功能采集卡的多通道波形同步输出方法。
【背景技术】
[0002]PXI总线的多功能采集卡由于自身集成模拟量采集、模拟量输出、数字I/O和多路定时/计数器等多种功能,广泛应用于自动化测试领域,可满足通常应用需求,然而,由于这种多功能采集卡在设计时其时钟信号、触发信号及板载Buffer管理信号等主要信号是复用的非独立关系,其多路模拟量输出通道只能同步输出同一类型的波形信号,不能同步输出不同类型的波形信号,无法满足在一块多功能采集卡上同步输出不同类型的波形信号应用需求。使用多功能采集卡在需要输出直流信号时,先执行直流创建任务函数进行任务创建、输出范围设定等操作,然后执行直流波形输出函数,进行输出通道号、通道幅值设定等操作,最后执行直流结束任务函数,进行任务停止、任务清除等操作;在需要输出交流信号时,先停止前述直流波形信号输出,然后执行交流创建任务函数进行交流任务创建、输出范围设定等操作,再执行交流波形输出函数,进行输出通道号、通道幅值、通道频率设定等操作,最后执行交流结束任务函数,进行任务停止、任务清除等操作。为此,在需要输出不同类型的波形信号应用中,通常使用多块多功能采集卡,其中每一块多功能采集卡只输出一种类型的波形信号,这样,使用过程不方便,同时增加了使用成本。
[0003]而在某型产品检测过程中,需要同步输出交流信号和直流信号两种类型模拟信号,而目前该产品使用的检测设备中的多功能采集卡虽然具备4路模拟量输出功能(分辨率:16bit,更新率:1.25MSa/s,输出范围:土 10V),但同一块多功能采集卡的4路模拟量输出通道必须同时输出同一类型模拟量信号,即同为直流信号或同为交流信号,而不能同时输出不同类型的模拟量信号,无法满足相应检测需求,从而制约了对该型产品的功能及性能检测。
[0004]因此,针对多功能采集卡模拟量输出通道不能同时输出直流信号和交流信号的特点,急需构建一种基于PXI总线多功能采集卡的多通道不同类型波形信号同步输出方法,不仅可实现对该型产品的检测和性能评估,同时可满足自动测试系统中一块多功能采集卡同步输出不同类型波形信号的应用需求。
【发明内容】
[0005]为了克服现有多通道波形同步输出方法同步输出性能差的不足。本发明提供一种基于PXI总线多功能采集卡的多通道波形同步输出方法。该方法采用模块化、层次化设计思路,利用COM技术构建分层的服务组件,将软件的应用层、业务层、服务层单独封装,分别在检测软件的应用层、业务层及服务层构建不同组件,在组件中封装相应的功能函数,这样在测试过程中多功能采集模块模拟输出不同波形信号时,只需修改相应组件波形输出函数的设定参数即可;输出直流信号时,只需将相应组件波形输出函数的频率参数设为O即可,解决了多功能采集卡多路模拟量输出通道不能同步输出不同类型波形信号的技术难题,扩展了多功能采集卡的功能,提高了多通道不同类型波形信号同步输出性能。
[0006]本发明解决其技术问题所采用的技术方案是:一种基于PXI总线多功能采集卡的多通道波形同步输出方法,其特点是包括以下步骤:
[0007]步骤一、在服务层的驱动函数动态链接库中构建创建任务函数、波形输出函数和结束任务函数三个函数,整体打包形成动态链接库供业务层和应用层调用。其中在波形输出函数中构建四个一维数组变量,分别为通道号、通道幅值、通道频率和输出数据,通道号、通道幅值和通道频率为形式参数,数组长度为4,输出数据变量数组长度为每通道输出数据点数与通道数之积,利用特殊插值算法插值计算出各通道不同波形信号输出数值,并将其写入多功能采集卡的板载Buffer中;
[0008]步骤二、在应用层调用动态链接库API中的创建任务函数,实现对多功能采集卡的初始化等操作;然后调用波形输出函数,根据需要设定不同通道及各通道幅值和频率参数,通过函数调用和参数传递,在系统时钟作用下通过触发按照设定的通道、幅值、频率同步输出板载Buffer中的数据,实现多通道不同类型波形信号的同步连续输出;
[0009]步骤三、在应用层调用动态链接库API中的结束任务函数,按照要求停止不同通道波形信号的输出,释放资源。
[0010]本发明的有益效果是:该方法采用模块化、层次化设计思路,利用COM技术构建分层的服务组件,将软件的应用层、业务层、服务层单独封装,分别在检测软件的应用层、业务层及服务层构建不同组件,在组件中封装相应的功能函数,这样在测试过程中多功能采集模块模拟输出不同波形信号时,只需修改相应组件波形输出函数的设定参数即可;输出直流信号时,只需将相应组件波形输出函数的频率参数设为O即可,解决了多功能采集卡多路模拟量输出通道不能同步输出不同类型波形信号的技术难题,扩展了多功能采集卡的功能,提高了多通道不同类型波形信号同步输出性能。
[0011 ]下面结合附图和【具体实施方式】对本发明作详细说明。
【附图说明】
[0012]图1是本发明方法构建的服务层动态链接库函数图。
[0013]图2是采用本发明方法运用服务层动态链接库函数进行多功能采集卡多通道波形同步输出的检测软件流程图。
【具体实施方式】
[0014]参照图1-2。本发明基于PXI总线多功能采集卡的多通道波形同步输出方法具体步骤如下:
[0015]1、软件构架设计。
[0016]为实现自动测试系统的通用性目标,以及检测软件的模块化、层次化、兼容性要求,为将软件的编程量缩减到最小,采用COM技术构建分层的服务组件,可将软件的应用层、业务层、服务层单独封装、充分隔离,同时又方便灵活组装与调用。为此,分别在检测软件的应用层、业务层及服务层采用构建不同组件,在组件中封装相应的功能函数,这样在测试过程中使用多功能采集卡模拟输出不同波形信号时,只需修改相应组件波形输出函数的设定参数即可;输出直流信号时,只需修改相应组件波形输出函数的频率参数设为O即可。
[0017]2、服务层驱动函数动态链接库设计。
[0018]在服务层的驱动函数动态链接库中构建创建任务函数、波形输出函数、结束任务函数三个函数,整体打包形成动态链接库供业务层和应用层调用。具体步骤如下:
[0019]①构建创建任务函数MWA_Init(),进行任务句柄创建、输出范围设定、输出增益设定,输出方式设定等操作;
[0020]②构建波形输出函数MffA_0utput(),进行输出通道号、通道幅值、通道频率设定等操作,构建四个一维数组变量,分别为通道号、通道幅值、通道频率和输出数据(通道号、通道幅值、通道频率为形式参数,数组长度为4,输出数据变量数组长度为每通道输出数据点数与通道数之积),利用特殊插值算法插值计算出各通道不同波形信号输出数值,首先将其写入多功能采集卡的板载Buffer中,然后在系统时钟的作用下通过触发实现多通道同步输出不同类型的波形信号;
[0021]③构建结束任务函数MffA_Stop(),进行任务停止、任务清除等操作,清除波形输出函数中的数组变量,释放系统资源。
[0022]3、应用层软件设计。
[0023]在应用层调用驱动函数动态链接库中的创建任务函数,实现对多功能采集卡的初始化等操作;然后调用波形输出函数,根据需要设定不同通道及各通道幅值、频率参数(实际参数),通过函数调用和参数传递,在系统时钟作用下通过触发按照设定的通道、幅值、频率同步输出板载Buffer中的数据,实现多通道不同类型波形信号的同步连续输出;最后,调用结束任务函数,按照要求停止不同通道波形信号的输出,释放资源。
【主权项】
1.一种基于PXI总线多功能采集卡的多通道波形同步输出方法,其特征在于包括以下步骤: 步骤一、在服务层的驱动函数动态链接库中构建创建任务函数、波形输出函数和结束任务函数三个函数,整体打包形成动态链接库供业务层和应用层调用;其中在波形输出函数中构建四个一维数组变量,分别为通道号、通道幅值、通道频率和输出数据,通道号、通道幅值和通道频率为形式参数,数组长度为4,输出数据变量数组长度为每通道输出数据点数与通道数之积,利用特殊插值算法插值计算出各通道不同波形信号输出数值,并将其写入多功能采集卡的板载Buffer中; 步骤二、在应用层调用动态链接库API中的创建任务函数,实现对多功能采集卡的初始化等操作;然后调用波形输出函数,根据需要设定不同通道及各通道幅值和频率参数,通过函数调用和参数传递,在系统时钟作用下通过触发按照设定的通道、幅值、频率同步输出板载Buffer中的数据,实现多通道不同类型波形信号的同步连续输出; 步骤三、在应用层调用动态链接库API中的结束任务函数,按照要求停止不同通道波形信号的输出,释放资源。
【专利摘要】本发明公开了一种基于PXI总线多功能采集卡的多通道波形同步输出方法,用于解决现有多通道波形同步输出方法同步输出性能差的技术问题。技术方案是采用模块化、层次化设计思路,利用COM技术构建分层的服务组件,将软件的应用层、业务层、服务层单独封装,分别在检测软件的应用层、业务层及服务层构建不同组件,在组件中封装相应的功能函数,这样在测试过程中多功能采集模块模拟输出不同波形信号时,只需修改相应组件波形输出函数的设定参数即可;输出直流信号时,只需将相应组件波形输出函数的频率参数设为0即可,解决了多功能采集卡多路模拟量输出通道不能同步输出不同类型波形信号的技术难题,提高了多通道不同类型波形信号同步输出性能。
【IPC分类】G06F9/44, G06F9/445
【公开号】CN105487862
【申请号】CN201510836286
【发明人】屈明宝, 闫彦, 王敬堂, 李彦, 李玉华
【申请人】中国船舶重工集团公司第七〇五研究所
【公开日】2016年4月13日
【申请日】2015年11月26日