当前位置:睿龙PCB抄板 >> 新闻中心 >> 行业新闻 >> 数字示波器自动检定系统软硬件设计实例

数字示波器自动检定系统软硬件设计实例

时间:  热度:

 一、硬件设计

  基于GPIB的数字示波器自动检定系统的硬件由GPIB控制器、FLUKE5500A、被检定数字示波器和PC机以及打印机等外围设备组成。系统组成如图1所示。 

  1GPIB接口控制器

  GPIB总线

  GPIB是惠普公司于20世纪60年代末、70年代初开发的实用仪器接口系统。由于对测试仪器的控制很方便,并且具有较高的传输速度(1Mbps),GPIB1975年被定为IEEE488标准,1987年修定为IEEE488.1-1987GPIB总线是数字化的24脚并行总线,有8根线是地线和屏蔽线,另外16根线是TTL电平信号传输线,包括8根数据线、5根接口管理线和3根数据传输控制线。GPIB使用8位并行、字节串行、异步通讯方式,所有字节通过总线顺序传送。

  GPIB系统设备有控者、讲者和听者三种属性。实际设备具有其中的一种、两种或三种。作为控者,它可以通过寻址指定连接到总线上具有讲者属性的器件成为讲者和具有听者属性的器件作为听者,包括指定它自己。讲者能通过总线向其他器件发送数据。听者能从总线上接收讲者发送的数据。一般来说在GPIB系统中计算机是控者,具有讲、听、控三种属性。为避免总线冲突,IEEE488规定一次只能有一个讲者,但可以同时有几个听者。由于GPIB系统中各器件的工作速度可能相差悬殊,为了保证多线消息能够双向、异步、可靠地传输,GPIB母线中设置了三条握手线,分别为数据有效线、未准备好接收线和未收到数据线。

  BC-1402-2接口控制器

  在本系统中采用的GPIB控制器是贝卡科技公司开发的BC-1401-2USB-GPIB接口控制器,它带有USB接口,把USB总线转换成GPIB总线,操作GPIB仪器。其特点是:完全符合IEEE488.1IEEE488.2国际标准,支持PCIUSBEthernet工业标准;数据传输率为900kbps,适合PC机与仪器之间的高速数据传输;提供了一套I/O GPIB操作函数库,其函数与ISA总线的ES1400系列接口控制器相同;提供了一套符合VPP规范的虚拟仪器软件架构VISAVirtual Instrument Software Architecture)函数库,实现了凡是采用VISA函数开发的应用程序,在更换不同厂家的不同型号的GPIB接口控制器时,应用程序不需要作任何修改;该接口控制器可以用C/C++VC++VBLabViewLabWindows/CVIHP-VEEDelphi等多种语言编制测试程序,方便而灵活。

  2FLUKE5500A

  FLUKE5500A是美国福禄克公司的一款高性能的多功能校准仪,可以对手持式和台式多用表、示波器、示波表、功率计、电子温度表、数据采集器、功率谐波分析仪、过程校准器等多种仪器进行校准。FLUKE5500A提供了GPIBIEEE-488)、RS-2325725A三种标准接口;在安全性方面满足IEC 1010-11992-1)、ANSI/ISA-S82.01-1994CAN/CSA-C22.2NO.1010.1-92标准;FLUKE5500A输出电压可以达到1100V,电流输出可达11A,可以提供直流电压和电流、交流电压和电流的多种波形和谐波,同时输出两路电压,或者是一路电压和一路电流,模拟功率、电阻、电容热电偶和RTD。其示波器校准件还提供了稳幅正弦波、快沿、时间标记和幅度信号。

  3、主控PC

  PC作为系统的主控者,通过发布命令给GPIB接口控制器实现对FLUKE5500A和被检定示波器的控制,主要包括以下几个方面的内容:仪器的初始化、复位、仪器参数设置;命令FLUKE5500A产生标准信号,同时被检示波器显示;读取/保存仪器数据并传给PC等。

  二、软件设计

  2、软件平台的选择

  软件是本数字示波器自动检定系统的核心,软硬件能否稳定、协调地工作是系统能够对数字示波器快速、可靠检定的基础。本系统采用性能稳定的Windows2003 Server操作系统、SQL Sever2005(开发版)数据库以及Visual.NET2005作为开发平台,以C/C++作为编程语言,同时在驱动程序方面选用NI公司的Lab Windows/CVI7.0做部分程序的驱动开发。同时采用MAXMeasurement&Automation)作为IVI驱动配置程序。

  3、测试软件架构

  测试软件模块

  测试软件分为测试数据管理模块、测试参数管理模块、测试程序模块三部分。测试数据管理模块是管理对仪器的检定日期、检定人员、对具体仪器的已检定项目、检定的数据等。测试参数管理是在数据库中管理具体仪器的各检定项、检定项的标准值等。测试程序模块是根据用户在软面板上选定的测试参数,调用相应的测试仪器进行测试,把测试数据和数据库中的标准相比较,判断是否合格。

  测试软件结构化流程

  在开机系统自检后,检定操作员在软件界面上选择/输入需要检定的仪器型号,程序由仪器型号在数据库中调出相应的检定项目、被检项目的标准值、被检仪器与FLUKE5500AGPIB控制器的连接图。检定员按连接图(FLASH动画)连接仪器,在确认连接正确后,检查是否有IVI驱动程序,在安装驱动程序后运行MAX配置工具,完成配置后即可运行相应的测试程序,把测试结果保存到数据库,并打印相应的合格/不合格报告。其流程图见图3  开发IVI驱动程序

  对于IVI仪器,厂家会提供IVI驱动程序只需要编写少量代码即可实现对仪器的检定,主程序简单,便于管理。IVI基金会的目标是支持95%的仪器。基于IVI技术的数字仪器的检定将会是仪器检定的必然之路。

  但是并不是所有的仪器都支持IVI。对于非IVI仪器,使用LabWindows/CVI中的IVI驱动开发向导把仪器程控命令树中所有底层命令封装成一系列带有图像面板的高层函数,完成IVI驱动程序的开发,使它成为IVI仪器。其特点是前期开发IVI驱动程序工作量大,但是后期测试程序开发和维护工作量少。

  数据库管理

数据库管理主要包括用户管理、被检仪器型号管理、检定项目管理、检定报告管理、检定项目指标管理以及数据查询6个模块。

3、关键技 VISAIVI

  VISAVXI plug&play联盟制定的I/O接口软件标准。制定VISA的目的是确保不同厂商、不同接口标准的仪器能相互兼容、可以通讯和进行数据交换。其显着特点是:VISA是采用了先进的面向对象编程思想来实现的;它是当前所有仪器接口类型功能函数的超集成,而且十分简洁,只有90多个函数;VISA作为标准函数,与仪

  器的I/O接口类型无关,方便程序移植。对于驱动程序、应用程序开发者而言,VISA库函数是一套可以方便调用的函数,可以控制各种设备如GPIBVXIPXI等。

  IVIInterchangeable Virtual Instrument)是IVI基金会为了进一步提高仪器驱动程序的可执行性能,达到真正意义上的仪器互换,实现应用程序完全独立于硬件而推出的仪器驱动程序编程接口。IVI系统由IVI类驱动程序、具体驱动程序、IVI引擎、IVI配置实用程序、IVI配置信息文件五部分组成。类驱动程序实现了上层统一功能的封装,面对的是操作者,而具体驱动程序完成与具体仪器的通信。测试程序是调用类驱动程序,用类驱动程序调用具体驱动程序来实现测试程序和硬件的无关性。IVI引擎完成状态缓存、仪器属性跟踪、分类驱动程序到具体驱动程序的映射功能。IVI配置实用程序是采用软件MAX创建和配置IVI逻辑名,在测试程序中通过传送逻辑名给一个分类驱动程序初始化函数,将操作映射到具体仪器及仪器驱动程序。IVI配置信息文件记录了所有逻辑名和从类驱动程序到具体仪器驱动程序的映射信息。其结构如图2所示。