第1章 认识LabVIEW 1
1.1 什么是LabVIEW 1
1.2 LabVIEW2011新特性 5
1.3 安装LabVIEW 6
1.4 思考与练习 11
第2章 开始LabVIEW编程 12
2.1 启动LabVIEW 12
2.2 基本概念介绍 13
2.2.1 VI与子VI 13
2.2.2 前面板 13
2.2.3 后面板 16
2.3 菜单栏及工具栏 18
2.3.1 菜单栏 18
2.3.2 工具栏 19
2.4 设置个性化编程环境 20
2.4.1 工具选板 20
2.4.2 控件选板 22
2.4.3 函数选板 24
2.4.4 其他编程选项设置 24
2.5 VI的基本操作 28
2.5.1 VI的创建与编辑 28
2.5.2 VI的运行与调试 31
2.5.3 子VI的操作 33
2.6 获取LabVIEW帮助 36
2.6.1 即时上下文帮助 36
2.6.2 查找范例 36
2.6.3 在线帮助 36
2.7 综合实例:创建一个“虚拟信号源”程序 37
2.8 思考与练习 39
第3章 了解LabVIEW的数据类型 40
3.1 基本数据类型 40
3.1.1 数值型 43
3.1.2 布尔型 46
3.1.3 字符串型与路径 46
3.1.4 枚举型 47
3.1.5 簇 48
3.1.6 数组 48
3.2 特殊数据类型 50
3.2.1 波形数据 50
3.2.2 时间标识 50
3.2.3 变体 51
3.3 数据类型之间的转换 51
3.3.1 不同数字类型之间的转换 51
3.3.2 数字/字符串转换 53
3.3.3 字符串/数组/路径转换 56
3.3.4 布尔值/数字值转换 57
3.3.5 数字与时间标识的转换 58
3.4 数据运算与操作 59
3.4.1 基本数学运算与操作 59
3.4.2 字符串运算与操作 61
3.4.3 布尔运算与操作 64
3.4.4 比较运算 65
3.4.5 数组与矩阵操作 69
3.4.6 簇操作 74
3.4.7 波形数据操作 76
3.5 综合实例:温度报警装置 77
3.6 思考与练习 78
第4章 数据表达与显示 79
4.1 基本数据表达与显示 79
4.1.1 数值型数据的表达与显示 79
4.1.2 布尔型数据的表达与显示 87
4.1.3 字符型数据的表达与显示 91
4.2 二维图形 94
4.2.1 波形图与波形图表 94
4.2.2 XY图和Express XY图 105
4.2.3 强度图表与强度图 106
4.2.4 数字波形图和混合波形图 107
4.3 三维图形 109
4.3.1 三维曲面图 110
4.3.2 三维参数图 112
4.3.3 三维曲线图 113
4.4 其他图形显示控件 113
4.4.1 极坐标图 114
4.4.2 最小-最大曲线显示控件 115
4.5 综合实例:绘制同心圆 116
4.6 思考与练习 116
第5 章程序结构 117
5. 1基本程序结构 118
5.1.1 For循环 118
5.1.2 While循环 122
5.1.3 顺序结构 123
5.2 特殊程序结构 127
5.2.1 条件结构 127
5.2.2 事件结构 130
5.2.3 定时结构 134
5.2.4 禁用结构 138
5.3 变量 140
5.3.1 局部变量 140
5.3.2 全局变量 142
5.3.3 共享变量 145
5.4 综合实例:等差序列求和 146
5.5 思考与练习 147
第6章 外部程序接口与扩展 148
6.1 DLL调用 148
6.2 Windows API调用 152
6.3 可执行程序的调用 156
6.4 ActiveX调用 157
6.5 LabVIEW与MATLAB混合编程 166
6.6 综合实例:通过调用动态链接库实现驱动开发 167
6.7 思考与练习 169
第7章 数学分析 170
7.1 基本数学分析 170
7.1.1 初等与特殊函数 170
7.1.2 线性代数 172
7.1.3 微积分 175
7.1.4 多项式 178
7.2 数理统计与最优化问题 180
7.2.1 概率与统计 180
7.2.2 最优化 181
7.3 曲线拟合与插值 184
7.3.1 曲线拟合 184
7.3.2 插值 186
7.4 其他操作 187
7.4.1 微分方程 187
7.4.2 几何 189
7.4.3 脚本与公式 190
7.5 综合实例:水箱问题 191
7.6 思考与练习 193
第8章 信号处理 194
8.1 信号发生器 195
8.1.1 基本函数发生器 195
8.1.2 多频信号发生器 197
8.1.3 噪声信号发生器 199
8.1.4 用公式节点产生信号 202
8.1.5 用Express VI产生信号 202
8.2 时域分析 203
8.2.1 基本平均值与均方差测量 203
8.2.2 过渡态测量 205
8.2.3 提取信号单频信息 208
8.2.4 相关 209
8.2.5 谐波失真分析 211
8.3 频域分析 213
8.3.1 傅里叶变换 213
8.3.2 拉普拉斯变换 215
8.3.3 功率谱分析 216
8.4 信号调理 219
8.4.1 滤波器 219
8.4.2 窗函数 221
8.4.3 波形调理 222
8.5 波形监测 226
8.5.1 边界检测 227
8.5.2 波峰波谷检测 227
8.5.3 触发与门限 229
8.6 逐点分析 232
8.7 综合实例:绘制信号包络曲线 234
8.8 思考与练习 235
第9章 文件操作 237
9.1 文件I/O基本概念介绍 237
9.2 常用文件类型与操作 238
9.2.1 二进制文件(.dat) 238
9.2.2 文本文件(.txt) 242
9.2.3 电子表格文件(.xls) 244
9.3 特殊文件类型与操作 248
9.3.1 波形文件(Waveform Files) 248
9.3.2 XML文件 248
9.3.3 数据存储文件(TDM) 249
9.3.4 高速数据流文件(TDMS) 251
9.3.5 测量文件(LVM) 253
9.4 其他文件类型与操作 255
9.4.1 音频文件(.wav) 255
9.4.2 压缩文件(.Zip) 256
9.4.3 配置文件(.ini) 257
9.5 文件工具 257
9.5.1 路径、目录操作 257
9.5.2 获取文件、目录的信息 259
9.5.3 文件位置与大小设置 259
9.5.4 文件操作 260
9.6 综合实例:读取EXCEL文件 262
9.7 思考与练习 263
第10章 多线程技术 265
10.1 LabVIEW对多核CPU的支持 265
10.2 LabVIEW中的自动多线程 266
10.2.1 执行系统 266
10.2.2 运行队列 269
10.2.3 LabVIEW多线程中的DLL 270
10.2.4 定制线程配置 272
10.3 生产者/消费者模式 275
10.3.1 生产者/消费者的优势 275
10.3.2 生产者/消费者基本组成结构 276
10.3.3 多消费者循环 279
10.3.4 基于队列状态机的生产者/消费者结构 282
10.4 综合实例:多线程计时器 283
10.5 思考与练习 284
第11章 数据采集与仪器控制 285
11.1 数据采集 285
11.1.1 数据采集系统基本组成 286
11.1.2 NI数据采集硬件产品及其应用领域 287
11.1.3 硬件选型重要参数 289
11.1.4 配置管理软件MAX 289
11.1.5 NI-DAQ应用举例 294
11.2 仪器控制 299
11.2.1 常用总线介绍 300
11.2.2 仪器驱动程序 302
11.2.3 LabVIEW仪器控制 303
11.2.4 LabVIEW与第三方硬件的连接 310
11.3 综合实例:多通道数据采集软件 311
11.4 思考与练习 313
第12章 通信 314
12.1 串口通信 314
12.1.1 串口介绍 314
12.1.2 串口接线定义与连接方式 316
12.1.3 LabVIEW中的串口编程 319
12.2 网络通信 323
12.2.1 TCP协议通信 325
12.2.2 UDP协议通信 329
12.3 DataSocket通信 335
12.3.1 DataSocket技术 335
12.3.2 DataSocket逻辑构成 336
12.3.3 DataSocket编程 338
12.4 远程面板 341
12.4.1 配置LabVIEW Web Server 342
12.4.2 在LabVIEW环境中操作Remote Panels 344
12.5 综合实例:基于串口通信的控制软件 347
12.6 思考与练习 350
第13章 界面设计与美化 352
13.1 界面设计的一般原则 352
13.2 常用界面风格 354
13.3 菜单设计 356
13.4 子VI的调用与重载 358
13.4.1 子VI的创建与调用 358
13.4.2 多面板程序设计 361
13.4.3 动态载人界面 363
13.5 界面美化 366
13.5.1 使用布局工具排列对象 366
13.5.2 添加背景图片 367
13.5.3 自定义控件 368
13.5.4 动画 371
13.5.5 利用控件选板与工具选板 372
13.5.6 巧用属性节点与调用节点 375
13.5.7 VI属性设置 378
13.6 综合实例:利用属性节点与Tab控件控制界面的显示 381
13.7 思考与练习 382
第14章 项目管理与报表生成 384
14.1 项目管理 384
14.1.1 项目浏览器 384
14.1.2 源代码管理工具 385
14.1.3 LLB管理器 387
14.2 报表生成 388
14.2.1 报表生成VI介绍 388
14.2.2 简易报表生成 392
14.2.3 高级报表生成 394
14.2.4 报表生成工具包 395
14.3 综合实例:报表生成 400
14.4 思考与练习 402
第15章 应用程序发布 403
15.1 LabVIEW程序生成规范 403
15.2 发布应用程序前的准备 404
15.3 创建源代码发布 406
15.4 创建独立应用程序(EXE) 410
15.5 创建安装程序(SETUP) 417
15.6 创建共享库(DLL) 423
15.7 思考与练习 427
第16章 技巧与解惑 428
16.1 常用技巧 428
16.2 常用快捷键 436
16.3 常见问题及解决方案 437
16.3.1 人机交互 437
16.3.2 数据与文件操作 439
16.3.3 仪器控制与驱动 441
16.3.4 程序运行与应用程序发布 442
16.3.5 其他问题 445
参考文献 448