基于虚拟仪器的某弱信号处理模块测试系统设计与实

时间:2009-12-17来源:网络

3 测试系统软件设计
整个软件系统设计分为4个模块:人机界面、数据处理、仪器控制和数据传输,如图3所示。其中,仪器控制和数据传输是在测试过程中联合作用的,作为底层的程序进行开发,并按照功能整合成子程序,划分为多个子模块分别进行设计,供测试主程序进行调用,提高了软件的可靠性、可维护性和可扩展性。前台是人机界面,检测并判断用户输入的测试相关信息,形成测试流程并调用相应子程序。后台数据处理部分,将仪器传回的测量数据进行分析判断,形成报表存档。测试软件的工作方式分为两种:自动测试和程控测试。自动测试模式可按顺序依次进行全部项目的测试;程控测试模式可以对选中的单项或多项测试项目进行单独测试。通过软件功能更改可以兼容不同设计的弱信号处理模块。测试系统的软件开发平台采用美国NI公司的LabVIEW8.2。

根据功能需要设置了5个主要界面,分别为登陆、用户管理、参数设置、测试和报表管理。登录界面通过校验屏幕输入的用户名及密码,判断相应的权限。软件系统控制实际仪器对被测模块进行7个大项的测试。控制信号及测得数据均通过GPIB总线传输。在测试过程中,在底层进行数据的处理和分析,判断是否符合指标要求,并进行整理汇总。该测试系统软件将所有硬件资源的驱动程序以驱动程序库的形式加以组织,使测试应用程序通过访问驱动程序库函数实现对各种硬件资源的操作,提高了系统的计算能力。
3.1 登陆界面的实现
通过对用户名和密码的判断可得出对应的权限。如果是系统管理员,则进入Case框的“True条件,通过对登陆界面上的功能可视属性的设置,显示数据管理、参数修改、测试等所有功能。如果是普通用户登录,则进入Case框的“False'’条件。在内层Case框内,程序对四个功能按钮的Visible属性进行设置,并对右下方的布尔型全局变量“是系统管理员”进行赋值。该全局变量的赋值是为了与数据管理界面进行通信,在数据管理界面上对不同的用户权限进行功能区分。
用户登录后,程序不断检测屏幕上各个功能按钮的状态,一旦有按钮按下,则进入其相应的子界面。子界面均做成VI,存放在于登录界面同一根目录下。在程序中,运用Call By Reference Node函数,对子界面进行动态调用,实质上就是对VI进行动态控制。子界面动态调用程序中,首先分别使用Refnum函数和Open VI Reference函数生成和打开被调用子界面VI的Reference(参考号),再使用Invoke Node函数中的Open FP动作打开子界面的前面板窗口,并通过Property Node函数设置被调用VI的属性。设置被调用的子界面状态为Activate,即可对被调用的子界面上的控件进行操作。使用Call By Refer-ence Node函数进行调用,在调用完毕之后,再使用Invoke Node关闭子界面前面板窗口。最后释放Reference。在整个软件系统中,将相关功能集成在1个子界面中,通过动态调用子界面,使程序运行合理,使用方便。
3.2 测试主界面的实现
测试主界面是整个测试软件中最复杂和功能最集中的部分,对操作者输入的测试信息进行判别并形成测试流程,通过测试流程调用相应测试功能的子VI完成测试任务。需要通过程序对工控机上的数字I/O卡和GPIB接口卡进行控制,使其按照程序的设置进行输入输出;测试过程中实时显示测试进度和测试数据,对于部分测试项目按照要求在界面上显示测得的信号波形;要对测试过程中测得的数据讲行判别。在丰界面设计时,将各个测试项目独立编写形成子VI以便调用。测试项目完成后进行一系列报表整理和数据库的插入等操作,及时更新测量的数据。
由于模块针对不同的温度的合格指标不同,因此主界面上设计了常温、低温和高温三个选项。使用While循环框及Event Structure(事件结构)实现上述功能。外层的While框是令程序循环等待操作者的选择动作的发生,Event Structure框中是响应该动作的程序。
操作者按下“初始化”按钮,系统运行初始化子程序,检测万用表、信号发生器、示波器、稳压电源等是否工作正常,并检查夹具选定测试位置上是否装有模块。初始化程序还测量被测模块的电源电流,并进行测试所需激励信号的自适应校正。以上各项均通过后,初始化程序结束。程序等待操作者按下“开始测试”按钮。取得所测模块的信息和所测项目,形成测试程序流程,按照流程分别进入各测试项目子程序中。

1 2 3 4

关键词: 虚拟仪器 弱信号 处理模块 测试

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版