第1章 绪论 1
1.1 虚拟仪器概述 3
1.1.1 虚拟仪器的基本概念 3
1.1.2 虚拟仪器的构成及其分类 4
1.1.3 虚拟仪器的设计方法 7
1.2 虚拟仪器的发展及特点 7
1.2.1 仪器的发展过程 8
1.2.2 虚拟仪器的发展方向 8
1.2.3 虚拟仪器的特点 9
第2章 虚拟仪器开发语言LabWindows/CVI 11
2.1.1 LabWindows/CVI软件的特点 13
2.1 LabWindows/CVI简介 13
2.1.2 如何安装LabWindows/CVI 14
2.1.3 LabWindows/CVI中对象编程的概念 15
2.1.4 LabWindows/CVI下虚拟仪器软件的组成 17
2.1.5 用LabWindows/CVI设计虚拟仪器的步骤与方法 19
2.2 LabWindows/CVI编程环境 19
2.2.1 工程窗口 19
2.2.2 用户界面编程窗口 24
2.2.3 源代码编辑窗口 30
2.2.4 函数面板 31
2.3.1 设计要求及目的 33
2.3 虚拟仪器设计示例——虚拟温度显示仪的设计与实现 33
2.3.2 实现原理 34
2.3.3 设计步骤 34
2.3.4 创建用户界面 35
2.3.5 程序代码的设计 42
2.3.6 保存工程文件并运行 46
第3章 I/O接口设备的软件驱动 47
3.1 数据采集卡 49
3.1.1 数据采集卡的组成 50
3.1.2 数据采集卡的安装 51
3.1.3 数据采集卡参数设置 51
3.1.4 I/O接口设备PCI-MIO-16E-4数据采集卡 52
3.1.5 PCI-MIO-16E-4数据采集卡的安装测试与参数设置 53
3.2 PCI-MIO-16E-4数据采集卡应用示例 60
3.2.1 数据采集演示仪 60
3.2.2 正弦波信号发生器 66
3.3 非NI公司数据采集卡的应用 71
第4章 LabWindows/CVI与MATLAB语言的接口 73
4.1 MATLAB语言简介 75
4.1.1 MATLAB环境介绍 75
4.1.2 向量与矩阵的生成与运算 77
4.1.3 MATLAB的绘图功能 80
4.1.4 在MATLAB环境下编译自己的功能函数 85
4.2 LabWindows/CVI与MATLAB的接口原理与方法 87
4.3 在LabWindows/CVI中实现与MATLAB的混合编程示例 99
第5章 基于一般信号分析技术的虚拟仪器设计 105
5.1 相关基础知识概述 108
5.1.1 SineWave()正弦波产生函数的使用 108
5.1.2 Correlation()相关计算函数的使用 113
5.1.3 FFT()快速傅里叶变换函数的使用 115
5.1.4 基于后向差分法的连续时间模拟滤波器等效数字滤波器的实现 123
5.2 设计举例[1]——虚拟正弦波扫频信号发生器 125
5.2.1 功能描述 125
5.2.3 设计步骤 126
5.2.2 设计原理 126
5.3 设计举例[2]——基于相关法的相位差计 132
5.3.1 功能描述 132
5.3.2 设计原理 133
5.3.3 设计步骤 136
5.4 设计举例[3]——基于谱分析技术的虚拟相位差计 147
5.4.1 功能描述 147
5.4.2 设计原理 147
5.4.3 设计步骤 148
5.5 设计举例[4]——基于数字滤波技术的虚拟频率补偿仪 154
5.5.1 功能描述 154
5.5.2 设计原理 154
5.5.3 设计步骤 159
第6章 基于相关伪随机技术的虚拟仪器设计 171
6.1 相关辨识的基础知识 174
6.1.1 系统数学模型的主要描述形式 174
6.1.2 系统输入输出关系的卷积表述形式 175
6.1.3 由系统的冲激响应函数求系统的频率特性 177
6.1.4 相关辨识法的优点 177
6.2 伪随机信号——相关辨识实际采用的激励信号 179
6.2.1 伪随机信号的性质 180
6.2.2 M序列伪随机信号的产生 182
6.2.3 Labwindows/CVI环境中M信号的产生 184
6.3.1 例[1]-一阶系统辨识仿真仪 194
6.3 设计举例[1]和[2]——伪随机相关辨识仿真仪 194
6.3.2 例[2]-二阶系统辨识仿真仪 208
6.4 设计举例[3]——系统参数辨识实测仪 215
6.4.1 功能描述 216
6.4.2 设计原理 216
6.4.3 设计步骤 223
6.4.4 系统参数辨识仪的性能检验 236
6.4.5 小结 239
第7章 基于神经网络的虚拟仪器设计 241
7.1 概述 244
7.2 神经网络基础知识 244
7.2.1 神经网络结构 244
7.2.2 神经元模型 246
7.2.3 神经元作用函数 247
7.2.4 BP神经网络 250
7.2.5 径向基(RBF)神经网络 255
7.3 MATLAB工具箱中的BP与RBF函数 257
7.3.1 BP与RBF网络创建函数 257
7.3.2 网络训练函数 259
7.3.3 网络初始化函数 263
7.3.4 网络学习函数 264
7.3.5 网络仿真函数 266
7.4 设计举例[1]——虚拟压力传感器温度补偿器 266
7.4.2 工作原理 267
7.4.1 功能描述 267
7.4.3 设计步骤 271
7.5 设计举例[2]——虚拟三组分气体成分分析仪的设计 283
7.5.1 功能描述 283
7.5.2 工作原理 283
7.5.3 设计步骤 287
7.5.4 设计小结 297
第8章 基于小波分析的虚拟仪器设计 299
8.1 小波分析基础 301
8.1.1 小波分析与短时傅里叶变换 301
8.1.2 离散小波与小波对偶 306
8.1.3 小波级数 308
8.1.4 多分辨分析初步 309
8.1.5 正交小波 316
8.1.6 小波包分析 323
8.2 MATLAB工具箱中小波分析函数 325
8.2.1 小波包函数 334
8.3 设计举例[1]——虚拟小波消噪仪 340
8.3.1 小波消噪原理 340
8.3.2 虚拟小波噪仪设计 342
8.4 设计举例[2]——虚拟特征信号提取仪 349
8.4.2 仪器功能 350
8.4.3 仪器设计 350
8.4.1 特征信号小波提取原理 350
8.4.4 运行测试 356
第9章 基于混沌技术的虚拟仪器设计 357
9.1 概述 359
9.2 混沌技术基础知识 360
9.2.1 基于Duffing方程实现频率测量检测原理 360
9.2.2 基于Logist迭代方程产生白噪声的原理 369
9.3 设计举例——基于Logist方程的虚拟白噪声发生器 375
9.3.1 设计举例[1]-基于Logist方程的虚拟白噪声仿真仪 375
9.3.2 设计举例[2]-基于Logist方程的虚拟简易白噪声发生器 380
9.3.3 设计举例[3]-基于Logist方程的虚拟白噪声发生器及其性能评估仪 384
9.4.1 功能描述 389
9.4 设计举例[1]——基于混沌技术的频率仿真测试仪 389
9.4.2 工作原理 390
9.4.3 混沌精密频率仿真测试仪的实现 396
9.4.4 性能校验 399
9.5 设计举例[2]——基于混沌技术的精密频率实测仪 399
第10章 基于模糊理论的虚拟仪器设计 401
10.1 模糊集合理论概述 403
10.1.1 模糊集合的定义及其表示方法 404
10.1.2 隶属函数的确定方法及常用形式 406
10.1.3 模糊集合的基本运算 410
10.1.4 模糊关系的定义及合成 411
10.1.5 语言变量与模糊推理 413
10.2.1 测量结果“符号化表示”的概念 415
10.2 模糊传感器系统 415
10.2.2 模糊传感器的基本概念和功能 416
10.2.3 模糊传感器的结构 417
10.2.4 模糊传感器语言描述的产生方法 420
10.2.5 模糊传感器对测量环境的适应性 424
10.2.6 模糊传感器隶属函数的训练算法 426
10.3 设计举例[1]——虚拟模糊热点温度分析仪 430
10.3.1 功能描述 430
10.3.2 工作原理 431
10.3.3 设计步骤 432
10.4.2 实现原理 438
10.4 设计举例[2]——高级虚拟模糊热点温度分析仪 438
10.4.1 功能描述 438
10.4.3 设计步骤 443
第11章 网络化虚拟智能传感器系统 461
11.1 网络体系结构与协议 463
11.1.1 网络体系结构 463
11.1.2 LabWindows/CVI中的主要协议 467
11.1.3 DataSocket技术 472
11.2 组建网络化虚拟智能传感器系统的模式 475
11.2.1 C/S模式 476
11.2.2 B/S模式 476
11.3.1 设计原理 477
11.3 设计举例[1]——网络化虚拟正弦波发生器 477
11.3.2 仪器功能描述 478
11.3.3 仪器设计 478
11.3.4 编译运行 487
11.4 设计举例[2]——基于C/S模式的远程开关控制器的设计 488
11.4.1 系统的工作原理 488
11.4.2 仪器功能描述 488
11.4.3 仪器设计 489
11.4.4 编译运行 493
参考文献 495