目录 1
前言 1
第1章 绪论 1
1.1 虚拟仪器的基本概念 1
1.2 虚拟仪器的基本结构和类型 2
1.2.1 GPIB仪器控制系统的构成方法 3
1.2.2 数据采集系统的构成方法 3
1.2.3 VXI仪器系统构成方法 4
1.3 虚拟仪器的发展与演变 4
1.3.1 计算机的发展是动力 4
1.3.2 软件是关键 5
1.3.3 虚拟仪器的发展趋势 6
第2章 数据采集和信号分析理论基础 8
2.1 模拟信号数字化处理 8
2.1.1 概述 8
2.1.2 采样过程及采样定理 8
2.1.3 模拟信号的采样控制方式 11
2.1.4 量化与量化误差 12
2.1.5 编码 15
2.2 信号的时域和频域分析 17
2.2.1 信号的时域分析 17
2.2.2 信号的频域分析 19
2.3 相关函数和相关检测基础 24
第3章 虚拟仪器体系与总线接口设备 29
3.1 虚拟仪器体系结构分析 29
3.1.1 总体结构分析 29
3.1.2 非电量虚拟仪器体系结构分析举例 30
3.2 PC-DAQ(数据采集)基础及设备 35
3.2.1 DAQ仪器与总线 35
3.2.2 DAQ仪器的特点 36
3.2.3 DAQ仪器设计的关键技术 37
3.2.4 DAQ仪器的发展趋势 38
3.2.5 DAQ卡式仪器设计基础 39
3.2.6 DAQ卡的基本性能指标 45
3.3 智能仪器通信接口 46
3.3.1 GPIB通用接口总线 46
3.3.2 串行口通信接口 52
3.4 VXI及PXI总线设备 54
3.4.1 VXI标准体系结构 54
3.4.2 VXlbus的系统结构与控制方案 56
3.4.3 PXI总线系统结构 60
第4章 虚拟仪器常用传感器及其误差分析 65
4.1 虚拟仪器常用传感器 65
4.1.1 概述 65
4.1.2 电阻式传感器 69
4.1.3 电容式传感器 70
4.2 典型传感器的特性及信号调理要求 72
4.3 信号调理的一般作用及对测试系统体系结构的影响 74
4.4 虚拟仪器测量系统误差分析 75
4.4.1 误差的基本概念 75
4.4.2 测量误差的合成 76
4.4.3 测量误差的分配 78
4.4.4 最佳测量方案的选择 79
4.5 采集系统与传感器标定 79
4.5.1 标定的基本概念 79
4.5.2 静态标定 80
4.5.3 传感器的动态标定 81
第5章 虚拟仪器系统编程语言 83
5.1 虚拟仪器常用编程语言简介 83
5.1.1 LabVIEW简介 83
5.1.2 LabWindows/CVI简介 85
5.2 虚拟仪器开发语言LabWindows/CVI快速入门 88
5.3 基于LabWindows/CVI编程设计及数据采集 99
5.3.1 设计步骤 99
5.3.2 LabWindows/CVI编程环境 100
5.3.3 CVI中数据采集的应用 102
5.4.1 概述 108
5.4 虚拟仪器编程语言LabVIEW快速入门 108
5.4.2 循环结构 115
5.5 基于LabVIEW编程语言的数据采集 120
5.5.1 数据采集系统的概述 120
5.5.2 LabVIEW数据采集模块的分类 120
第6章 虚拟仪器的信号分析与处理 132
6.1 概述 132
6.2 基于LabWindows/CVI的信号分析与处理 133
6.2.1 信号的时域分析 133
6.2.2 信号的频域分析 143
6.3 基于LabVIEW编程环境的信号处理与分析 149
6.3.1 信号的产生 150
6.3.2 数字信号处理 152
6.3.3 窗函数 154
6.3.4 谐波失真与频谱分析 155
6.3.5 数字滤波 158
6.3.6 曲线拟合 161
第7章 虚拟仪器的仪器驱动器设计 163
7.1 虚拟仪器软件结构VISA 163
7.1.1 VISA简介 163
7.1.2 VISA的结构 165
7.1.3 VISA的特点 165
7.1.5 VISA的应用举例 166
7.1.4 VISA的现状 166
7.1.6 VISA资源描述 169
7.1.7 VISA事件的处理机制 171
7.2 可编程仪器标准命令——SCPI 173
7.2.1 SCPI仪器模型 173
7.2.2 SCPI命令句法 174
7.2.3 常用SCPI命令简介 178
7.3 VPP仪器驱动程序开发 180
7.3.1 VPP概述 180
7.3.2 VPP仪器驱动程序的特点 181
7.3.3 仪器驱动程序的结构模型 182
7.3.4 仪器驱动程序函数简介 185
7.3.5 仪器驱动程序功能面板 187
7.3.6 仪器驱动器的设计实例 189
7.4 IVI仪器驱动程序 196
7.4.1 IVI规范及体系结构 197
7.4.2 开发IVI的特定驱动程序 198
第8章 虚拟仪器系统的抗干扰设计 203
8.1 常见的系统干扰 203
8.1.1 概述 203
8.1.2 干扰源及干扰模式 204
8.1.3 干扰耦合途径 207
8.2.2 信号传输电缆抗干扰技术 208
8.2 虚拟仪器系统抗干扰设计 208
8.2.1 抗干扰设计应采取的措施 208
8.2.3 接地 209
8.2.4 隔离与耦合 211
8.2.5 布线抗干扰设计 212
8.2.6 软件抗干扰设计 214
8.3 电磁兼容试验标准介绍 215
8.3.1 信息技术设备定义 215
8.3.2 限值 215
8.3.3 测量方法 217
9.1.1 网络体系结构 220
第9章 网络虚拟仪器的原理与设计 220
9.1 网络体系结构与协议 220
9.1.2 LabWindows/CVI中的主要协议 223
9.1.3 DataSocket技术 227
9.2 组建网络化虚拟传感器系统的模式 229
9.2.1 C/S模式 229
9.2.2 B/S模式 230
9.3 基于C/S组网的虚拟正弦波发生器设计 231
9.3.1 仪器功能描述 231
9.3.2 仪器设计 231
9.3.3 编译运行 238
9.4 虚拟仪器系统在远程教学中的应用简介 239
第10章 总体设计技术分析 242
10.1 系统设计的基本原则 242
10.2 系统总体设计的一般步骤 243
10.3 软件设计总体分析 245
10.3.1 概述 245
10.3.2 虚拟仪器系统对应用软件的要求 246
10.3.3 软件评价 247
10.4.1 软件框架的提出和核心内容 249
10.4 虚拟仪器系统软件框架举例分析 249
10.3.4 总体规划 249
10.4.2 自动测试软件框架结构 250
10.4.3 自动测试软件框架的使用方法 251
10.4.4 自动测试流程库的结构 252
10.4.5 自动测试软件框架的主调流程 253
10.4.6 自动测试软件框架的扩充升级 253
10.5 实时多任务处理技术 254
10.5.1 问题的提出 254
10.5.2 实时多任务处理的基本要求 255
10.5.3 实时多任务处理方法 255
10.6.1 基于VXI中断事件举例 259
10.6 实时多任务处理技术举例 259
10.6.2 多线程技术 261
10.7 虚拟仪器操作软件及其设计 264
第11章 工程实例设计与应用分析 267
11.1 虚拟仪器系统的代表—自动检测系统的组建与设计 267
11.1.1 机柜(或机箱)的选择 268
11.1.2 测试资源选型 269
11.1.3 测试接口 269
11.1.4 软件平台内核 270
11.1.5 安全接地和金属件地线 277
11.1.6 测试程序示例 278
11.2.1 VXI模块接口设计 284
11.2 基于VXI总线的任意波形发生器设计 284
11.2.2 波形产生电路设计 285
11.3 基于数据采集的虚拟数字存储示波器 287
11.3.1 虚拟数字示波器 287
11.3.2 主要功能及软件设计 288
11.3.3 结果与讨论 288
11.4 基于虚拟仪器的应变测量技术 289
11.5 虚拟数字滤波器演示仪 291
11.6 调幅波解调器 294
11.7 LabVIEW在教学测试实验中的应用 297
参考文献 299