虚拟仪器自动校准系统的实现
动态数据采集系统中虚拟仪器的设计与实现

5万美 元 , 当时世 界上 最 先 进 的产 一 1 O 期 01 l一 l 作 者 筒 卉 : 田湛 君 ( 9 5 . , 宁 沈 阳人 , 15 一) 女 辽 讲师 . 大学 本 科 , 要 事科 学 仪 器 研 究 和 计 算 机 教 学 等方 面 的工 作 。 主
越显 示 出其 强大的生命力。 关 键 词 :虚拟仪 器技术 ; 程挂放 大; 信号调理 器 文献 标识码 :B 中圉分类号 :T 7 P2 4
1 引
言
年, 随着 计算 机技 术 的快 速 发展 , 虚拟 技术 问 世 , 作为新 兴的 交 叉学 科 , 拟技 术 目前 尚 未形 成 成 虚 熟 的理 论 体 系。虚拟 仪 器是面 向对 象的 思想在 智 能 化仪器 领域 中的发展 。它 采用 强大 的 图形 化语 言 编程 , 有 非常 友好 的人机 界面 , 具 以灵 活 可靠 的 方式适 应瞬 息 万 变 的 市 场需 求 , 分 体 现 了现 代 充 仪器 的设计 方 法和 技术 。1 9 9 7年 , 尔滨 工业 太 哈 学在 国内率 先开 发 出“ 器王 ” 仪 系列 产 品 , 功 能 其
维普资讯
第 2期
田湛君 :动 态数 据采 集 系统 中虚拟仪 器的设 计 与 实现
・3 1
i 型 _! 磊 望1 r竺丝 _ l 箍 皇] 匮
3 数 据 采 集 应 力分 析 系 统 的技 术 指 标
本 系统 技 术 指标完 全符 合 国际标 准 。 当被测 体的 某部 位 因受 力 而 产 生 形 变时 , 导 致 贴在 其上 面 的应 变 片( 或装 八 的传 感器 ) 电桥失 衡, 产生 微 伏级 的失 衡 电信 号 , 信 号送人信 号 调 此 理器 的程 控放 大器 放 大 , 按计 算 机 指令 校 准修 并 正后 , 高速 A/ 经 D变为 数字信 号 送 人计 算机 进行
虚拟仪器技术的国内外研究现状分析

对虚拟仪器技术的研究不仅有助于提高测试效率,降低测试成本,还可以推动相关领域的技术创新和产业升级。
背景
研究背景与意义
研究目的与方法
本文旨在分析虚拟仪器技术的国内外研究现状,探讨其发展趋势和应用前景,为相关领域的研究人员和从业人员提供参考和借鉴。
研究目的
首先,通过查阅大量国内外文献,了解虚拟仪器技术的发展历程、研究现状及最新研究成果;其次,对虚拟仪器技术的原理、特点、应用领域等方面进行深入分析;最后,结合实际案例,探讨虚拟仪器技术在生产实践中的应用和优势。
嵌入式系统应用
大数据处理技术应用
云计算和云服务应用
研究趋势预测
05
结论与展望
虚拟仪器技术在国内发展迅速,应用领域广泛,包括工业自动化、智能家居、医疗健康等。
国内研究主要集中在软件算法优化和硬件设备研发,在虚拟仪器技术应用领域的研究相对较少。
国外虚拟仪器技术发展水平较高,对于应用领域的研究较为深入,且具有广泛的实际应用价值。
研究结论
研究不足与展望
国内虚拟仪器技术在某些领域的应用研究尚不深入,需要加强实践和应用研究。
未来虚拟仪器技术将进一步与人工智能、物联网等技术融合,实现更加智能化、自动化的应用。
缺乏具有自主知识产权的虚拟仪器核心技术和产品,需要加强自主研发和创新。
未来需要进一步加强虚拟仪器技术的标准化和规范化工作,促进其广泛应用和发展。
仪器仪表行业的发展趋势
国内仪器仪表行业正朝着产业规模化、技术高端化、产品智能化等方向发展,以满足不断升级的市场需求。
国内研究现状
虚拟仪器技术的研发与应用
国内科研机构和企业正在加大虚拟仪器技术的研发力度,拓展其在航空航天、汽车制造、电子电气等领域的应用。
基于Labview平台的自动检测系统设计

其是 3 4 4 0 1 A, 设 计 了一 个 以 3 4 4 0 1 A为 基 础 的 自动
1 引 言
在现 代计 量检 测 中 , 对 于被检 测仪器 的准 确性 ,
实 时 陛的要求 越来越 高 。这就 意 味着 只有 通 过计算
检测 系统 , 从 而 大大解 放工厂 的人力 。
的串口最普遍 , 最简单 , 足 以胜任常规测量。如果对
采集 速度 有较 高要 求 , 或 需 同 时运 行 多 台设 备 则可
基金项 目: 贵州省工业攻关项 目( 黔科合 G Y字 [ 2 0 1 1 ] 3 0 5 8 ) 作者简介 :林清馨( 1 9 8 8 一 ), 女, 硕 士研 究 生 。研 究 方 向: 电路 系 统 自
贵 州 科 学 3 1 ( 1 ) : 5 3- 5 5 , 2 0 1 3
Gu  ̄ h o u S c i e r v c e
基于 L a b v i e w 平 台 的 自动 检 测 系 统 设 计
林清馨 梁 潇
5 5 0 0 2 5 )
( 贵州 大学 理学 院 , 贵阳
摘
要 : 虚拟仪 器是 当今仪 器发展 的热点, 本文基 于 L a b v i e w设计 的虚拟 3 4 4 0 1 A对 于多种常见 的计量仪 器进 行检测 , 发撂
Abs t r a c t : Vi  ̄u a l i n s t r ume n t i S a h o t s p o t t o d e v e l o p i ns t r u me n t . Ba s e d o n L a bv i e w v i r t u a l 3 4 4 0 1 A d e s i g n u s e d f o r de t e c t i o n o f v a r i o u s me a s u r i n g i n s t r u me n t s,t h e p a pe r h a s d e s c r i b e d le f x i b i l i t y o f t h e c o mp u t e r f u nc t i o n a n d s o f t — wa r e de s i g n. Th i s d e s i g n n o t o n l y i n c l ud e s t h e f un c t i o ns o f p a r a me t e r me a s u r e me n t ,s i g n a l a n ly a s i s a nd s i g n a l wa v e f o r m d i s p l a y,b u t a l s o s h o ws t h e f e a t u r e s o f o r i g i n a l r e c o r d s,v e if r ic a t i o n,c li a b r a io t n c e r t i ic f a t e a n d s t o r a g e, t h us g r e a t l y i mpr o v i n g e f i c i e n c y a n d a c c u r a c y o f p e fo r r ma n c e . Ke y wo r d s: La bv i e w,a u t o ma t i c c li a br a t i o n,a u t o ma t i c d e t e c t i o n
基于虚拟仪器的力传感器标定程序

力传感器是 目前广泛使用 的传感器 , 长期使用过程 中, 在 由于使用 环境 、 本身结构的变化 , 需要对其进行标定 , 以此保证测量 的精度。近年 来, 随着虚拟仪器技术 的出现 和发展 , 越来越 多的技术 人员 开始基 于该 技术来开发 自动化测量设备 。 虚拟仪器是基于计算机 的仪器。 计算 机和 仪器的密切结合是 目前仪器发展 的一个重要 方向【 而在众多的虚拟仪 1 J 。 器开发平台中 , 国国家仪器公 司( ) L b IW 应用最为广泛 。本 美 M 的 a VE 文主要介 绍了基 于 L b IW 的力传感器标定程序的设计 。 aV E 2标 定 的原 理 , 所谓标定 ( 现场校准 )就 是指用相对标准 的量来确 定测试系统 或 日 电输出量与物理输入量之 间的函数关 系的过程 。标定是测试 中极其重 要的一环。 标定 除了能够确定输入量和输 出量之 间的 函数关系之外 , 还 可以最大限度地消除测量系统中的系统误差 。 传感器 的校准采用静态的方法 , 即在静态标准条件下 , 采用一定标 准等级( 其精度 等级为被较传感器 的 3 5倍 )  ̄ 的校准设 备 , 对传感器重 复( 不少于 3 ) 次 进行全量程逐级加载和卸载测试 , 获得各次校准数据 , 以确定传感 器的静态基本性能指标和精度的过程 。 为简化系统 的设计 , 此处标准量采用砝码加载 的方式获得。
,
系统 的硬 件 组 成 如 图 1所 示 :
:
io =
,
L 器 C SC 块 l 感 I C模 传 I
— — — — — — — —
J
L—— —— _ —— ——_ J
I 线 I l 据 集 I= 计 机 I 接 盒 数 采 卡 c> 算 =l
虚拟仪器的结构和组成方式

虚拟仪器的结构和组成方式虚拟仪器是一种基于计算机技术的仪器系统,它通过软件模拟实际仪器的功能和性能,提供了一种更加灵活、便捷、可扩展的测试和测量解决方案。
虚拟仪器的结构和组成方式可以分为硬件和软件两个方面。
在硬件方面,虚拟仪器通常由计算机、数据采集卡和外部传感器等组成。
计算机是虚拟仪器的核心部件,它负责处理数据、控制仪器和显示测量结果。
数据采集卡是连接计算机和外部传感器的接口,它负责将传感器采集到的模拟信号转换成数字信号,并传输给计算机进行处理。
外部传感器包括温度传感器、压力传感器、光电传感器等,它们负责将被测量物理量转换成电信号,并通过数据采集卡传输给计算机。
在软件方面,虚拟仪器通常由测量和控制软件组成。
测量软件用于采集、处理和显示测量数据,它可以提供多种测量方式和数据处理算法,同时支持数据的保存和导出。
控制软件用于控制外部设备和执行测量操作,它可以实现自动化测试、远程控制和仪器校准等功能。
虚拟仪器的软件通常具有友好的用户界面,使操作简单直观,并提供了丰富的测量和分析工具,满足不同应用领域的需求。
虚拟仪器的优势在于其灵活性和可扩展性。
由于虚拟仪器的核心是计算机和软件,因此可以根据实际需求选择适合的硬件配置和软件功能。
同时,虚拟仪器的软件可以进行升级和更新,以适应新的测量要求和技术发展。
此外,虚拟仪器还可以与其他仪器和设备进行联网,实现数据共享和远程控制,提高工作效率和数据的可靠性。
虚拟仪器的应用领域非常广泛。
它可以用于科学研究、工业过程控制、医疗诊断、环境监测等领域。
在科学研究中,虚拟仪器可以提供高精度的测量和分析工具,帮助科学家进行实验和数据处理。
在工业过程控制中,虚拟仪器可以实现自动化生产和质量控制,提高生产效率和产品质量。
在医疗诊断中,虚拟仪器可以进行生物信号的采集和分析,帮助医生进行疾病诊断和治疗。
在环境监测中,虚拟仪器可以实时监测环境参数,并生成相应的报告和预警,保护环境安全和人民健康。
虚拟仪器技术与设计2章

图2.5 数据交换格式结构示例
• 2.2.3 常用SCPI命令简介 • (1)常用仪器公用命令
• ①*IDN?
• ②*RST • ③*TST?
仪器标识查询命令。
复位命令。 自检命令。
• ④*CLS? 消除命令。 • ⑤*ERR? 错误信息查询命令。
• (2)SCPI主干命令 • ①MEASure? 测量命令。 • 一般命令形式为: • MEASure:VOLTage:AC?[<range>[,<resolution>]][,<channel-list>] • ②CONFigure • ③Read? 配置命令。
新的仪器硬件改进系统的方法。
• 目前, IVI 基金会共制订了五类仪器的规范:
• ①示波器/数字化仪(IVIScope);
• ②数字万用表(IVIDmm); • ③任意波形发生器/函数发生器(IVIFGen); • ④开关/多路复用器/矩阵(IVISwitch); • ⑤电源(IVIPower)。
• (1)语法和式样
• 第一种形式就是采用 IEEE 488.2 命令,也 称为SCPI公用命令。 • 第二种形式是采用以冒号“:”分隔的一 个或数个SCPI助记符构成。 • 关键词组成短形助记符的规则如下:
• ①如果关键词不多于四个英语字母,则关 键词就是短形助记符。
图2.4 程控命令题头
• ②如果关键词多于四个英语字母,则通常 保留关键词的前四个字母作为短形助记符。 • ③所有长形、短形助记符均允许有数字后 缀,以区别类似结构的多种应用场合。 • (2)命令标记
图2.1 NI-VISA层次图
• 2.1.3 仪器驱动器
• 仪器驱动器(Instrument Driver)又称仪器驱 动程序,是完成对某一特定仪器控制与通 信的软件程序集,也可认为是仪器的软件 描述,它是应用程序实现仪器控制的桥梁。
虚拟仪器-labview-课件PPT
数据存储与回放
LabVIEW可以将采集的数据存储 到文件中,并支持数据的回放和 分析,便于后续的数据处理和挖
掘。
05
虚拟仪器与现实世界
虚拟仪器与现实世界的接口
硬件接口
虚拟仪器通过硬件接口与现实世界的 物理设备连接,实现数据采集和控制 。常见的硬件接口包括串口、USB、 GPIB等。
软件接口
虚拟仪器软件提供各种软件接口,如 函数面板、脚本语言等,方便用户进 行数据分析和处理。
集成与调试
对虚拟仪器进行集成和调试,确保其 功能和性能符合设计要求。
04
LabVIEW在虚拟仪器中 的应用
LabVIEW在信号处理中的应用
信号生成
LabVIEW提供了多种信号生成函数, 如正弦波、方波、噪声等,可用于模 拟各种实际信号。
信号分析
信号处理算法
LabVIEW支持多种信号处理算法,如 傅里叶变换、小波变换、滤波器设计 等,可用于信号的降噪、特征提取和 模式识别。
可靠性
虚拟仪器应具备高可靠性和稳定性, 能够保证实验结果的准确性和可靠性。
虚拟仪器的硬件选型
01
02
03
04
数据采集卡
根据实验需求选择合适的数据 采集卡,确保能够采集到准确
、稳定的数据。
信号调理器
根据测试信号的类型和幅度选 择合适的信号调理器,确保信
号的质量和稳定性。
传感器
根据测试需求选择合适的传感 器,确保能够准确、稳定地测
实时控制系统
LabVIEW可以与硬件设备进行通信, 实现实时控制系统的构建和调试。
LabVIEW在数据采集中的应用
数据采集卡驱动
LabVIEW支持多种数据采集卡, 如示波器、数据采集卡等,可实
基于GRNN的虚拟仪器非线性校准方法研究
入输出特 性 曲线 成 为线性 , 实 际上 绝 大多 数传 但
感 器输入 输 出特性 都存 在一定 程 度 的非线 性 , 调 理电路 ( 如放 大器 ) 和数 据采集 卡也存 在 非线 性 。
一
— g( 丁)一 广 ; Y; ( 丁)一 . 2 7
.
() 4
从 式 ( ) 以看 出 , 过 校 准 环节 后 的输 出 4 可 经 与被测 量 的值 X 一致 , 得 校 准后 的 系统 具有 使
’
No i e r Ca i r to f Vi t a n t u e s d o nln a lb a i n o r u lI s r m ntBa e n GRNN
TANG a L h — i g S Ch o. IS i n , UN n q n , HANG a p J — ig Z u Xin
. 机 十翳=
. 其 传 器 卜 卡 序 L V W 发 _ 它 感 { .路 l a I 开 、 bE 台
图 1 基 于 P —IAQ 的 虚 拟 仪 器 系 统 结 构 图 C )
若有 :
g( 丁)一 厂 ; Y; ( 丁) () 3
类 系统要 达到 高性 能 , 线性 是一 个 需要 认 真考 非 虑的问题 。通 常 总 是 希 望 系 统 的 各 个 环节 的输
so w a bviusy i pr ve in so o l m o d.
K e r s v rua n t u e ; nlne r c lbr ton; RN N y wo d : it li s r m nt no i a ai a i G
差 , 以, 所 为了 获得高 精度 的测 量 , 进行 系统 的非
虚拟仪器在动态压力标定系统中的应用
( c o l f nt m nai c n e& O t l t n sE g e r g e igU ie i f eo a t sa d A  ̄ n u S h o o s u e t o S i c I r tn e p e cr i n i e n .B i n nv r t o rn ui n s o a — oe oc n i j sy A c t s e i 0 0 3 hn ) i ,B in 10 8 ,C ia c jg
V0 . 3 No 7 J 1 0 6 2 1 . u .2 0
虚 拟仪 器 在 动 态 压 力 标 定 系统 中的应 用
彭志 萍 ,万聪 梅 ,周 浩敏
( 北京航 空航 天大学 精 密仪 器与光 电.程 学院 ,北京 3 - 10 8 ) 0 0 3
摘
要:该文将虚拟仪器应用于动态压力标定系统 ,使用具 有预触 发功能 的双通 道同步数 据采集 装置 ,很
维普资讯
!
= 鉴
实
验
技
术
与
管
理
第2 3卷
第 7期
20 0 6年 7月
CNl l一2 3 / 0 4 T
Ex e i n a c n lg n n a e n p rme t l Te h o o y a d Ma g me t
测量对象 的采 集 、分析 、判 断 、显示 和数据 存储等 。
动态压 力校 准 ,是 以某一 高精 度压力 传感 器作
为标 准传感 器 ,与被 校传 感器 同时 测量某 一压 力信 号 ,比较 两测量 结果 ,获 得被校 传感 器 的动 态性能
指标 。
便对 测试 数据 作全 面 的评价 。正 脉 冲压 力 信号变 化 幅度 最大 可达 3 a以上 ,上 升 时 间 很短 ( 于 0Mp 小 2m ) s ,这里 选 用 P I12数 字 化 仪 ,采 样 率 可 达 X5 2
虚拟仪器应用技术实验指导书
实验一、LabVIEW8.2软件基本操作、运用实验目的:熟悉LabVIEW8.2操作、功能,了解相关控件。
实验要求:编写程序实现:1.产生一个值为0.0~1.0的随机数a,放大10倍后与某一常数b比较,若a>b,则指示灯亮。
2.创建一个子VI,子VI功能:输入3个参数后,求其和,再开方。
编一个VI调用上述子VI。
3.单步调试程序;应用探针观察各数据流。
实验内容:1.启动LabVIEW8.2,出现启动窗口后,在这个窗口中新建VI。
在程序窗口按要求放入所需的函数控件如图。
然后按照实验要求3调试程序,调试完成后存盘。
2.重新启动LabVIEW8.2,出现启动窗口后,在这个窗口中新建VI。
这次我们做个子VI,+v+=。
按要求在程序窗口中放入如图所示的函数,调试成功后按子VI设b完成ca计的方法编辑窗口右上方的图标。
保存子VI后,我们可以再设计一个实现z+×=的VI,其中就可以调用++byxcw+a刚才做的子VI完成。
实验二、使用数据类型实验实验目的:熟悉、运用各种数据类型的变量。
实验要求:加深理解LabVIEW8.2数据类型的特点,特别是数组和簇。
实验内容:1.在程序的前面板上创建一个数值型控件,为它输入一个数值;把这个数值乘以一个比例系数,再由该控件显示出来。
2.生产一个正弦波,并显示在Chart波形控件上,由另外一个程序把该波形显示出来。
调节两个程序运行的速度,观察对比两个波形的差异。
3.创建一个3行4列的数组,(1)求数组的最大与最小值;(2)求出创建数组的大小;(3)将该数组转置;(4)将该二维数组改为一个一维数组。
4.创建一个簇控件,成员维字符型姓名,数值型学号,布尔型注册。
从该控件中提取簇成员注册,并显示在前面板上。
实验三、应用多种程序结构编程实验目的:熟悉、运用各种程序结构。
实验要求:加深理解LabVIEW8.2图形编程的特点,特别注意与字符编程的不同点。
实验内容:1.产生100个0.0~100.0的随机数,求其最小值、最大值、平均值,并将数据在Graph中显示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
收稿日期:2003-09-09作者简介:孙宇(1973)),男,陕西省白水县人,工程师,工学、经济学双学士,主要从事计量测试技术研究,研究方向为线性测量系统评价、模式识别、动态校准、精确测量、自动化测试;梁志国(1962)),男,黑龙江省巴彦县人,研究员,工学硕士,现从事计量测试技术研究,目前研究方向为线性测量系统评价、模式识别、动态校准、精确测量、自动化测试。文章编号:1000-8829(2004)08-0023-03虚拟仪器自动校准系统的实现RealizationofAutomaticCalibrationSystemforVirtualInstruments(北京长城计量测试技术研究所,北京 100095) 孙宇,梁志国摘要:虚拟仪器系统具有许多特点,正是由于这些特点,使得其在进行校准与测试时与通用的台式仪器有较大的区别。笔者就虚拟仪器的自动化校准,以及虚拟仪器自动校准系统的实现提出一种可供操作的解决方案。关键词:计量学;虚拟仪器;自动化校准;程序中图分类号:TP23;TP311文献标识码:AAbstract:Virtualinstrumentsystemhassomespecialcharacters.Forthesecharacters,itmakesagreatdifferencetogeneralinstrumentswhentheyaretobecalibratedand/ortested.Anautomaticcalibrationprocessforvirtualinstruments,andasolutionfortherealizationofautomaticcalibrationsystemforvirtualinstrumentsareintroduced.Keywords:metrology;virtualinstrument;automaticcalibration;program 虚拟仪器的提出,主要针对并区别于传统的具有通用显示与操作面板的台式仪器,例如常见的VXI、PXI系统,以及计算机插卡式的数据采集系统、信号发生器及各种适配器、开关等。它具有许多特点:¹虚拟仪器是一种计算机化的仪器设备,离开了计算机的软件平台它便无法正常工作;º虚拟仪器是一种模块化组合式仪器设备,同时包含软件模块和硬件模块;它们极易组合和集成,形成强大的具有专用或通用功能和性能的仪器系统;»虚拟仪器是一种数字化信息传输变换系统,软件和具有明确边界条件的数学模型是其最重要的核心组成部分;¼虚拟仪器的输入输出外特性与非虚拟仪器没有明显区别。也正是由于这些特点,并且因为对其实际的操作一般需要借助于嵌入式或外部的计算机系统进行控制,而其提供的通用软面板程序或相应的仪器驱动程序一般并不针对于校准进行专门的设计,给虚拟仪器的校准带来极大的不便[1]。本研究的主要内容是提供了一种虚拟仪器自动化校准的方案,用于解决多种典型虚拟仪器模块的全自动化校准问题。1 虚拟仪器的校准方法关于虚拟仪器的校准,国家目前并没有专门的计量法规,因此一般参照相应的台式仪器国家计量法规进行。参照这些计量法规,选取满足计量校准要求的标准器具,进行相应的计量校准工作。而对于虚拟仪器特殊特性与功能的校准,可以参照仪器提供的说明手册进行。由于虚拟仪器一般不具有通常意义下的显示和操作面板,即使仪器制造厂商提供有简单的软面板功能,但大多数只是为了提供简单的功能验证而设计的,一般只提供仪器所具有的最基本的操作,不仅功能极其简单,而且不具有通用性和适用性;另一方面,对于许多仪器的校准过程,不仅操作步骤繁琐,而且需要获取的数据量庞大,处理过程也极其复杂,这种条件下如果不借助于计算机的参与实现校准过程的自动化,其实现将是困难甚至是不可能的。因此,实现对虚拟仪器的自动化校准从某种意义上而言是必要的,甚至是必需的。2 虚拟仪器自动化校准的实现如上所述,虚拟仪器的自动化校准,可以参照国家相应的(台式仪器)计量校准法规进行,一般需要开发独立的校准程序。关于仪器系统的程序开发工具目前具有多种选择,如专门应用于仪器开发与应用领域的图形化设计语言(所谓G语言),如NILabVIEW,AgilentVEE等,另外可以使用通用开发语言工具,如VisualBasic,VisualC++等。前者由于其设计的初衷针对于仪器开发与应用领域,因此作为校准程序的开发与应用较为方便;缺点是开发的应用程序要求运行的目标机器上具有相同的软件平台,因此对于程序的移植、功能扩充(二次开发)带来不便[4,5]。通用的开发语言由于其设计是针对于广泛的用途而并非专门针对于仪器应用领域,因此应用于仪器开发时需要做大量的底层工作,工作量大而且深入细微;但优点是开发的应用程序可以脱离开特定的软件平台独立运行,对环境具有较强的适应性,便于进行系统功能的扩展。这里介绍的实现方案主要是基于通用开发语言工具VisualC++进行的。考虑到系统的可扩展性及运行的效率,参照VPP及IVI标准[2,3],自动校准系统采用了层次式模块化设计方式。系统将常用的几类仪器定义为仪器类,如数字多用表类、数据采集系统类、数字示波器类、函数信号发生器类等;对于这些类型仪器的校准过程在相应的仪器类接口中完成。根据定义的仪器类规范,实际的仪器(如AgilentE1412A)提供统一的仪器接口,实现
#23#虚拟仪器自动校准系统的实现图1 接口设计的编程模型仪器类所要求的与实际仪器的通信与控制。这样的一个编程模型如图1所示。3 虚拟仪器自动校准系统的程序设计根据上述设计方案,虚拟仪器自动校准系统的实现主要是完成仪器类接口和仪器接口。3.1 仪器类接口的实现仪器类表征的是某一类具有共同功能与属性的仪器设备。由于对于这类仪器的操作(校准)具有共同或相似的步骤,故将其定义为一个仪器类,相应的实现接口称为仪器类接口。在仪器类接口中主要实现对于该类仪器的完整校准过程,而该过程是通过调用该仪器类所约定的仪器接口实现与实际仪器的通信与控制的。为此定义如下统一的仪器类接口函数:#defineVINST_API _declspec(dllexport)#define_VI_CALL /*APIENTRY*/typedefVINST_APILRESULT(_VI_CALL*VICLS_CALI-BRATE_PROC)(DWORDdwOperateCode,LPARAMlParaml,LPARAMlParam2,VINST*pInst);其中,dwOperateCode为操作码,表明调用的目的。例如,定义VIO_CALIBRATE为校准过程的操作码,VIO_DATA_MAN-AGEMENT为数据管理的操作码;lParam1,lParam2为辅助参数,其定义依赖于dwOperateCode的不同可具有不同的定义;pInst为指向将欲操作(例如校准)的仪器的结构体指针(VINST),该结构体定义表征仪器的各种属性。该结构体的部分定义如下:typedefstructtagVINST{ LPTSTRpszIDName; //IDNnameoftheinst.LPTSTRpszDescription; //inst.descriptionLPTSTRpszDllName; //DLL-filenameLPTSTRpszfnExport; //nameoftheexportfunctionLPTSTRpszAddr; //addressstringLPTSTRpszIDName2; //internalinst.name,, }PVINST,*PVINST; 实际的校准过程可通过如下方式完成(假设数字多用表类校准接口名称为viClsCalib_Dmm,被校准数字多用表为AgilentE1412A,代表其结构体的变量指针为pInstE1412):,,viClsCalib_Dmm(VIO_CALIBRATE,0,0,pInstE1412);,,在viClsCalib_Dmm(仪器类接口)调用中完成根据国家相应校准/检定规程规定的校准/检定过程,其中通过调用pInstE1412定义的仪器接口(如下面例子中的viIo_hpe1412)实现与具体仪器(AgilentE1412A)的通信。3.2 仪器接口的实现仪器类接口与实际仪器的通信是通过仪器接口实现的,在仪器接口中完成仪器类与实际仪器设备的通信。仪器接口的定义具有与仪器类接口同样的形式:typedefVINST_APILRESULT(_VI_CALL*VINST_IO_PROC)(DWORDdwOperateCode,LPARAMlParam1,LPARAMlParam2,VINST*pInst); 同样地,其中各参数的定义与仪器类接口定义中的参数定
义具有类似的定义,只是操作码dwOperateCode具有不同的定义,例如定义VIO_INIT/VIO_CLOSE为仪器初始化/关闭与清除操作码,而VIO_INPUT/VIO_OUTPUT为仪器输入/输出操作码等。例如在上述例子中为了与AgilentE1412A进行通信可以下述方式调用其接口(假设其实现的仪器接口为viIo_hpe1412):,,
viIo_hpe1412(VIO_INPUT,&io,0,pInstE1412);,,
其中,io为用于输入/输出的结构体,其部分定义如下:typedefstruct_VINST_IO{ DWORDdwMode; //[in]I/OfunctionDWORDdwSigType; //[in]signaltypeunion{LONGnChan; //[in]1-basedchannalno.whennChanCount<=1PLONGpChanGroup; //[in]channelgroup,suchas1,2,3,5}LONGnChanCount; //[in]channelcounts;//when>1,thechan.arrayisplacedinpChanGroupunion{ DOUBLEdfVoltPk; //[in/out]peekvalueofvoltageDOUBLEdfCurPk; //[in/out]peekvalueofcurrentDOUBLEdfResist; //[in/out]resist.};DOUBLEdfFreq; //[in/out]frequencyDOUBLEdfOffset; //[in/out]offsetofthevolt./curr.
PVINST_RANGEpRange; //[in]rangesused(mainlyforinput)LONGnSizePerChan; //[in]datasizeperchannelDOUBLE*pdfBuf; //[out]bufferforreceivingdataLONGlRetCount; //[out]totalcountofreturneddata(mainlyforin-put)PVOIDpvSelfDef1,pvSelfDef2; //[in/out]sel-fdefinedparam.,,