基于PXI总线的虚拟数字示波器软件设计

发布者:吾道明亮最新更新时间:2013-02-05 来源: 21IC 关键字:PXI总线  虚拟数字示波器  数据采集 手机看文章 扫描二维码
随时随地手机看文章

测试总线在近几十年发展非常迅速:从早期的通用接口总线GPIB到近期的VXI、外围设备接口总线(Peripheral Component Interconnection,PCI)、PXI、IEEE1394、通用串行(Universal Serial Bus,USB)测试总线。其中PXI总线是最新一代的测试总线技术,是PCI总线在测试领域的扩展(PCI eXtensions for Instruments),于1997年被美国NI公司首次提出,并于次年被采用为工业标准。PXI总线可简单地认为是MicorosoftWindows、Compact PCI(CPCI)和VXI技术的综合:机械规范方面采用CPCI的核心技术,即欧式插卡机械机构和气密式针孔接头,特别适用于恶劣的工业环境;电气规范方面在保持了PCI/CPCI总线所有优点的前提下增加了专门的系统参考时钟、触发总线、星形触发总线和模块间的局部总线,以此来满足高精度的定时、同步与数据通信要求;软件规范方面也与PCI/CPCI一致,核心是Microsoft公司的Windows操作系统,所以PXI系统与PC兼容,方便选择很多现成的应用软件开发工具。PXI总线系统将PC机性能价格的优势、CPCI优越的机械性能和VXI易于系统集成化等优点集合了起来,所以是当今发展最快的总线技术。迄今为止,已经有美国NI等数十家公司推出PXI(CPCI)模块上千种。基于此,本文采用PXI总线,利用现有的PXI工控机及高速数据采集板,设计了基于PXI总线的虚拟数字存储示波器软件。

基于PXI总线的数字示波器硬件与软件结构

硬件结构
数字示波器硬件即通常说的数据采集板,其原理框图如图1所示(图中省略电源和时钟部分):双通道被测信号经过模拟信号调理通道送入高速模数转换器,所得数字数据先送入2个先入先出(First In First Out,FIFO)缓存再送给本地总现最后由接口芯片PCI9030送入PXI机箱中。硬件的控制和状态读取需要根据用户指令由相应的软件完成,送入PXI工控机的数据也要由软件进行处理,最后得到显示波形和测量结果。

图1 PXI数据采集板原理框图

软件构成
Windows系统为了保证系统的安全性、稳定性和可移植性,对系统底层操作采取了屏蔽的措施,利用设备驱动程序将硬件与用户隔开。所以,软件分为两部分:底层设备驱动程序、高层应用软件。设备驱动程序从广义上来讲是指直接操作硬件的一组函数,完成硬件控制和数据采集。驱动程序在装入后成为操作系统内核的一部分。高层应用软件可以认为是虚拟示波器用户态程序,将用户界面,即面板上各种开关、按钮等控件以及波形、测量数据结果显示区和数据采集、数据分析联系在一起。当用户在界面上发出一定的命令后,应用程序首先调用应用程序接口(Application Programming Interface,API)函数,相关的系统服务将调用内核模式的驱动程序实现API,将命令信息转换成数据采集板认识的数据格式,按照数据采集板的物理地址送到底层硬件。同时数据采集板采集到的数据和底层硬件的各种状态信息也通过API传送给应用程序做显示和控制用。

驱动程序开发

Windows驱动程序编制可以采用Windows设备驱动程序开发包(Device Drivers Kit,DDK),但需要程序员了解复杂的操作系统内核。简捷的方法是利用KRFTech公司的设备驱动程序开发工具WinDriver。WinDriver是主要用于编写针对ISA/PCI插卡和USB等硬件设备驱动程序的工具包。对于硬件的访问,应用程序从WinDriver用户模式库调用WinDriver的功能接口,再由这个功能调用WinDriver的内核模块,即WinDriver自身提供的的驱动程序WinDriver.vxd和WinDriver.sys去完成硬件的访问。

分析数据采集板,知道驱动程序要完成的基本功能包括设备初始化、对I/O和内存的读写、直接存储器存取(Direct Memory Access,DMA)以及中断等操作。首先利用WinDriver完成对硬件的诊断操作,获得数据采集板硬件参数,如端口地址范围、I/O方式、存储器地址、内存映射方式、中断号等。然后再根据硬件的这些参数生成一些源代码和框架函数,如:
SHBK_HANDLE SHBK_LocateAndOpenBoard(DWORD dwVendorID,DWORD dwDeviceID,BOOL
fUseInt)//定位并开启数据采集板;
void SHBK_EnableDisableInterrupts(SHBK_HANDLE hSHBK)//定义开启或终止中断;
DWORD SHBK_ReadPCIReg(SHBK_HANDLE hSHBK, DWORD dwReg)//读配置寄存器;
BYTE SHBK_ReadByte (SHBK_HANDLE hSHBK, SHBK_ADDR addrSpace, DWORD dwOffset)//读出某内存1字节内容,该内存地址为基地址加偏移量dwOffset;
void SHBK_WriteByte (SHBK_HANDLE hSHBK, SHBK_ADDR addrSpace, DWORD dwOffset, BYTE
data)//向内存写内容为data的1字节数据。

限于篇幅,只是举例给出了小部分函数,所有函数都未给出具体的实现代码。利用所有这些框架函数可以对硬件直接进行操作,为方便多个功能均要引用它们,将其封装在一个动态连接库(Down-Line Load,DLL)中,再根据实际的硬件设计进行调用,通过对内存和IO进行具体读写操作,编制对数据采集板硬件进行操作的功能函数,这些功能函数也被封装在此DLL中,供给高层应用软件调用。[page]

虚拟数字示波器应用软件设计

LabWindows/CVI是NI公司开发的基于C语言的软件开发平台,选用LabWindows/CVI用于虚拟示波器开发主要是基于LabWindows/CVI适用于各种测试、控制、故障分析及信息处理软件的开发,尤其是大型、复杂的测试软件,使用LabWindows/CVI开发可获得优良的测试性能[3]。为方便用户,设计的示波器面板使用方式与通用示波器无异,所有操作都与通用示波器类似,如图2所示,它包含如下内容:
(1) 控制设置区:可由用户控制相应控件设置时基、量程、测量通道、触发方式、触发极性、触发电平、触发位置、触发通道、耦合方式和是否平滑和反相显示波形,另外还专门有一个自动设置按钮,按下此按钮,软件将自动为用户设定合适的以上参数。
(2) 波形显示区:软面板左上部分按照标准示波器显示规范,横向分为10格,纵向分为8格;有可移动的两个光标,可供用户在波形显示区任意拖动。

图2示波器面板

(3) 光标及测量结果显示区:分别可显示光标1、2位置,光标相对位置及相应的时间/幅度差值。另外,还显示出所测量信号的周期、频率、峰峰值、有效值和平均值5个量值。

整个系统软件总体模块如图3所示,主要包括:初始化模块、结束程序模块、控件消息处理模块、波形数据采集处理显示模块、光标及测量结果显示模块。其中后两部分软件模块严格说来也属于一种特殊控件的消息处理。在CVI中有一类特殊控件称为定时器(Timer),它在用户界面上是隐藏的,根据预先设置的时间间隔不断产生消息,利用其消息回调函数处理需要重复执行的代码。波形采集处理显示程序和数据显示程序分别为20 ms和1.2 s周期循环执行。在执行这两部分循环程序的同时,如果示波器面板上有控件被操作,应用程序将在两次循环中间处理控件消息,如需要还将调用底层驱动程序对硬件进行相应的设置,例如用户通过鼠标改变量程控件档位时,对该控件消息的处理是根据改变后的量程档位设置数据采集板上模拟调理通道上相应的衰减率。初始化模块包括定位和开启数据采集板、初始化用户界面和设置相应初始硬件参数,然后可开始采集数据。另外,软面板右下角有一个特殊按键“退出程序”,按下它则结束上述循环,退出应用程序。

图3程序总框图

要完成如图2所示示波器功能,最终显示波形和数据,波形数据采集处理和显示是最重要的过程。当面板上“RUN/STOP”键状态为“RUN”后,调用驱动程序开始数据采集过程,首先要根据触发通道的不同和触发方式的不同,选取不同的数据采集方式,同时根据用户设置的触发电平和触发位置的不同也应该选择采集不同时间段的被测数据。得到的数据在送做显示之前,采集回来的波形数据根据需要可能还要经过一定的处理,如平滑、插值、防抖等。由于示波器的数字存储功能、实时采样特点,以及其单次触发、滚动显示、自动时基量程、波形停留、自动光标测量等特点,决定了此部分程序模块时序复杂、分支庞多,是设计和调试的重点。

结束语

本文所述虚拟数字存储示波器技术已运用在某自动测试系统中,其实现的示波器可双通道同时工作于100MHz采样频率,检测输入范围在10 mV~100V的信号(灵敏度为10mV)。该自动测试系统基于测试领域最先进的PXI总线技术,体积小巧、使用方便,抗干扰能力强,能满足军用研究所、基地维修中心等需要。

关键字:PXI总线  虚拟数字示波器  数据采集 引用地址:基于PXI总线的虚拟数字示波器软件设计

上一篇:LabVIEW环境下的GPIB总线虚拟仪器开发
下一篇:基于PCI-9846数字化仪的变频器输出性能测试系统

推荐阅读最新更新时间:2024-03-30 22:34

基于PXI总线的宽带频率计设计
    频率信号具有抗干扰性强,易于传输,易于保持信息完整性和可以获得较高测量精度等优点,被广泛应用于日常生活、工业等各个领域,频率测量成为信息提取、设备检测等过程中的一个重要环节。频率检测作为电子测量领域最基本的测量之一,随着数字电子技术的发展而得到了长足的进步,数字频率测量也得到了越来越广泛的应用,从而使测频原理和测频方法的研究受到越来越多的关注。本文在简述频率测量原理和方法的基础上,主要介绍一种基于PXI总线的宽带、高精度数字频率计的设计与实现。 1 测频原理     目前对频率的测量采用的方法主要有:围绕电子计数器计一定时间内的脉冲个数来确定频率;对信号时频变换的算法进行研究。本文主要讨论前者。 1.1 直接测频法    
[测试测量]
基于USB的高精度多通道数据采集卡设计
  在电子测量中,不仅需要对多路信号进行高精度的采集和预处理,而且要将其快速地传送到计算机,以便于对测量的监测。文中选用ADS8364来进行多通道信号采集,通过CY7C68013芯片采用USB2.O协议进行数据的快速传输。   1 多通道,高精度的A/D转换   ADS8364是美国TI公司生产的高速、低功耗,6通道同步采样16位模数转换器。ADS8364采用+5 V工作电压,并带有80 dB共模抑制的全差分输入通道以及*μs连续近似的模数转换器、6个差分采样放大器。   当ADS8364采用5 MHz的外部时钟来控制转换时,它的取样率是250 kHz,同时对应于4μs的最大吞吐率,这样,采样和转换共需花费20个时钟周
[嵌入式]
基于虚拟仪器技术和高速USB 2.0接口的智能数据采集卡的设计
1 引言 数据采集是现代电子系统中不可缺少的重要组成部分,在测量、制造、自动控制等场合都需要高质量的信号采集环节,由于ADC技术和微控制器技术的相对成熟,基于PCI,ISA等接口的数据采集卡被广泛地应用在众多科研和工控领域。在测试技术日益变革的今天,测试任务更加复杂多变,需要采集和处理的信息量更加冗长,同时要求测试环节与计算机的接口更加无缝化和标准化,基于虚拟仪器技术(Virtual Instruments)和高速USB 2.0接口的数据采集有着更为广泛的应用前景和市场,是当前测试技术研究的热点之一。 以运算速度更快,位数更宽,资源更为丰富的ARM 处理器作为控制核心,配合USB 2.0数据传输和灵活的上位机软件,新一代的数据
[测试测量]
基于<font color='red'>虚拟</font>仪器技术和高速USB 2.0接口的智能<font color='red'>数据采集</font>卡的设计
超低功耗低测量频率数据采集记录系统的设计
【摘 要】 介绍了一种基于集成数据采集芯片ADμC812的超低功耗、低测量频率的数据采集系统的软硬件设计以及在线可编程技术在该系统中的应用。研究了降低采集系统功耗以延长系统工作时间的数据采集记录系统的设计方法。 关键词:超低功耗数据采集,低频率测量,在线可编程技术    1 引 言   在诸如环境监测、气象监测中,常常需要长时间地采集记录变化缓慢的过程。这对数据采集记录系统提出了低测量频率、低功耗、微型化和可与计算机联接的要求,以适于电池供电、现场化安装以及便于计算机存储和分析。传统的基于微控制器A/D采样芯片外部存储器的系统有功耗大、集成度低等缺点。为克服这些缺点,我们以AD公司数据采集器芯片ADμC812为核心,采用多种方
[模拟电子]
超低功耗低测量频率<font color='red'>数据采集</font>记录系统的设计
中国普天无线智能室内空气质量监测系统
  “2010年中国国际信息通信展览会”于10月11日至15日在北京中国国际展览中心隆重举行。“创新引领发展、融合成就未来”是本届通信展览会的主题,来自国内外的500多家电信运营商、手机终端厂商、技术联盟等将在展会上展示最新的技术成果。中国普天的无线智能室内空气质量监测系统将引领大家体验物联网时代的智慧生活。   作为新一代信息技术的重要组成部分,物联网正在逐渐走入我们的生活,通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物体与互联网相连接,进行信息交换和通信,以实现对物体的智能化识别、定位、跟踪、监控和管理。通过电信网、计算机网和有线电视网三大网络的相互渗透、互相兼容、
[嵌入式]
CS5396/97的超高精度数据采集系统中的应用
    摘要: 24位∑-Δ A/D变换器CS5397/97的特性及其在超高精度数据采集系统中的应用。在给出的由DSP(TMS320C32)、FPGA(XC3064)、FIFO寄存器等构成的实际应用系统中,数据采集的动态范围可达100dB(当正弦信号的峰-峰值为3V时)。     关键词: ∑-ΔA/D变换器 FPGA DSP 在测量、工业控制系统中,A/D变换器的数据采集精度对系统的性能有着至关重要的影响。传统的A/D器件,大都采用逐次逼近方式,而CS5396/97 采用了∑-Δ技术,可实现24位的高分辨率。∑-Δ技术的本质是采用负反馈方式逐步减小输入模拟信号与DAC反馈信号的差值,∑-Δ
[应用]
基于MC9S12DT128B的电池数据采集系统设计
  1 前言   目前, 电池在实际使用中普遍存在的问题是电荷量不足, 一次充电行驶里程难以满足实用要求。   另外, 用可测得的电池参数对电池荷电状态( SOC,S tate- O f- Charge)作出准确、可靠的估计, 也一直是电动汽车和电池研究人员关注并投入大量精力的研究课题。因此有必要建立动力电池测试平台, 利用该平台对电池相关参数进行全面、精确的测量, 实现电池性能试验, 工况模拟和算法研究, 确定最合理的充放电方式及更为精确的SOC 估算方法, 从而合理的分配和使用电池有限的能量, 尽可能延长电池的使用寿命, 进一步降低电动汽车的整车成本。与以往的电池测试系统相比, 该测试平台可全面监测电池相关参数,
[电源管理]
基于MC9S12DT128B的电池<font color='red'>数据采集</font>系统设计
austriamicro新推出低功率ADC
austriamicrosystems新近推出AS1530/31系列全差分12位、8通道低功率模数转换器,部分参考电压为2.5V。AS1530/31系列适合电池供电产品和便携式数据采集系统使用,如远程传感器和笔式数字转换仪,该设备功率低,速率高(400ksps),有四个模拟输入模式,动态性能优异(SINAD大于70dB),它采用无铅TSSOP-20封装。 AS1530使用4.5V至5.5V电源,速度达400ksps时电流消耗仅为2.8mA。AS1531使用2.7V至3.6V电源,传输速率300ksps,电流消耗为2.2mA。它们的软件节电功能可将电流消耗降至0.4mA,进一步降低了功耗,当采样速率为10ksps,每个通道为27.
[新品]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved