基于LabWindows/CVI虚拟示波器的设计与实现
0 引 言
随着虚拟仪器技术的发展,采用“虚拟仪器”来取代传统仪器的新的测控方法正在取代传统的测控系统,即利用数据采集卡、信号调理卡或其他计算机外围硬件进行信号的采集与检测,然后由计算机来实现对信号的处理、计算和分析以及测试结果的显示。
Labwindows/CⅥ是基于标准C语言的集成软件开发环境,其开发虚拟仪器的步骤主要是先确定程序的基本框架,创建用户界面,然后完成程序代码的编写,最后创建工程文件,将程序文件、头文件、用户界面文件加入工程中,编译调试生成可执行文件。
1 数据采集卡的设计
传统的数据采集卡包括多路开关、放大器、采样/保持器、A/D转换器、D/A转换器等器件组成。PCI(peripheral component interconnect)总线即外部部件互连总线,是一种高性能32/64位地址数据复用高速外围设备接口局部总线。随着微处理机的性能不断提高,人们对微机系统的I/O带宽不断提出新的要求,原有的标准总线,如ISA、EISA和Mc已经逐渐不能胜任现代数据采集技术的要求。PCI局部总线的引入,打破了数据传输的瓶颈,以其优异的性能和适应性,成为微机总线的主流,基于PCI总线的数据采集系统是高速数据采集系统的发展方向。基于PCI总线的数据采集卡的整体结构可以设计如图1所示:
完成数据采集卡的硬件设计后,需要进行板卡的驱动程序编写。其中的WDM(Window Driver Model)是Microsof讼司力推的驱动模型,其提供了更多特性,包括即插即用、电源管理、WMI等,且WDM还是一个跨平台的驱动程序模型,可以在不修改代码的情况下重新编译就可以在不同平台上运行了。
2虚拟示波器软件设计
虚拟示波器测试系统是通过外围硬件电路获得离散数据并对该信号进行时域的显示和分析。从而获得近似真实仪器的测试结果。本设计利用数据采集卡获得模拟信号,其软件结构如图2所示:
1)信号采集模块
由于本设计采用非NI数据采集卡,不能直接运用LabWindows/CVI的函数库来实现。但是板卡设计的驱动程序一般是以动态链接库的形式提供的,所以对于LabWindows/CVI而言,可以直接利用驱动程序中的动态链接库来实验数据文件的采样。我们把采集到的数据存储在一个一维数组中以便进行分析运算。
评论