描述
开 本: 16开纸 张: 轻型纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787121240126
推荐购买:
作为在一线摸爬滚打几十年的工程师,我们遇到过千千万万具体的问题,这些问题的解决往往具有一定的通用性,能够帮助读者解决很多问题,因此我们就有了出版这本《LabVIEW 实用工具详解》的想法。我们在《LabVIEW 实用工具详解》中创建了大量的LabVIEW 实用工具,并从读者非常熟悉的具体问题出发,说明了解决这些具体问题的方法。这些实用工具包括数列工具、常用几何工具,等等。在这个基础上,我们针对电子、测试测量以及工业自动化专业创建了大量的相关工具,比如寄存器、触发器、比较器、定时器、计数器,等等。这些工具的实现原理,与相关的硬件基本原理是非常相似的,而且只要稍作修改就能应用到具体的工作、科研场景中。
《LabVIEW 实用工具详解》中创建了多种常用的复杂数据结构工具,这些内容对于非计算机专业的工程技术人员来说,实现起来比较困难,但在实际编程中,又经常会遇到。《LabVIEW 实用工具详解》精心封装了这些常用的数据结构,读者可以直接在项目中使用。《LabVIEW 实用工具详解》针对LabVIEW 工程技术人员详细介绍了各种界面布局技术以及常用的程序设计模式和框架,相信读者会找到适合自己实际需要的模式,不断提高解决具体问题的能力。
第1 章 简单数学工具(VI)……………………………. 1
1.1 温度转换工具……………………………………..
1
1.1.1 定制函数选板………………………….
2
1.1.2 创建温度转换工具…………………..
3
1.1.3 使用库管理温度转换VI …………
14
1.1.4 定制温度转换工具至LabVIEW
函数选板………………………………. 16
1.1.5 利用单位进行自动温度转换…… 17
1.1.6 时间差工具……………………………
20
1.2 常用数列工具……………………………………
21
1.2.1 使用帮助快速定位结构和函数… 21
1.2.2 自然数平方和………………………..
22
1.2.3 自然数倒数和………………………..
23
1.2.4 斐波那契数列………………………..
24
1.2.5 完全平方数……………………………
25
1.2.6 阶乘构成的数列之和………………
26
1.2.7 利用数列计算PI 值……………….. 27
1.3 角度与弧度的相互转换(读者练习)… 27
1.3.1 角度转换为弧度…………………….
27
1.3.2 弧度转换为角度…………………….
28
1.3.3 创建多态弧度角度转换VI,并添加到函数选板…………………. 28
第2 章 基本数学工具…………………………………….
29
2.1 牛顿迭代法……………………………………….
29
2.1.1 利用牛顿迭代法求平方根………. 29
2.1.2 利用牛顿迭代法求立方根………. 30
2.1.3 利用牛顿迭代法求N 次方根….. 30
2.2 铂电阻、热敏电阻、热电偶线性化…….
31
2.2.1 铂电阻PT100…………………………
32
2.2.2 PT100 温度阻值转换器…………..
35
2.2.3 热敏电阻(读者练习)…………..
36
2.2.4 热电偶…………………………………..
37
2.3 随机数发生器……………………………………
38
2.3.1 0~1 随机数发生器………………….
38
2.3.2 指定范围的随机数…………………
41
2.3.3 1~N 区间的自然数随机排列……
42
2.4 常用几何工具……………………………………
43
2.4.1 几何点工具……………………………
43
2.4.2 直线工具……………………………….
45
2.4.3 三角形基本公式…………………….
49
2.4.4 三角形工具VI
………………………. 51
第3 章 常用逻辑电路工具………………………………
54
3.1 值改变、边沿检测、寄存器……………….
54
3.1.1 未初始化的移位寄存器(SR)与未初始化的反馈节点………….. 54
3.1.2 值改变…………………………………..
54
3.1.3 边沿检测……………………………….
56
3.1.4 寄存器…………………………………..
57
3.2 触发器………………………………………………
59
3.2.1 RS 触发器与SR 触发器…………. 59
3.2.2 JK 触发器………………………………
60
3.2.3 同步D 触发器……………………….. 61
3.2.4 T 触发器………………………………..
61
3.3 比较器………………………………………………
62
3.3.1 数据交换器……………………………
62
3.3.2 基本比较器……………………………
63
3.3.3 峰值比较器……………………………
64
3.3.4 奇偶比较器……………………………
64
3.3.5 三段比较器……………………………
65
3.3.6 四段比较器……………………………
65
3.3.7 多段比较器……………………………
65
3.3.8 通断器…………………………………..
66
3.3.9 过零比较器……………………………
67
3.3.10 比较选择器……………………………
68
3.3.11 限幅器…………………………………..
69
第4 章 常用逻辑编程工具………………………………
70
4.1 位操作工具VI
………………………………….. 70
4.1.1 位屏蔽符……………………………….
70
4.1.2 置位………………………………………
70
4.1.3 复位操作……………………………….
71
4.1.4 位翻转操作……………………………
71
4.1.5 位状态…………………………………..
72
4.1.6 清零………………………………………
72
4.1.7 布尔数组与位操作………………….
72
4.2 运算器………………………………………………
72
4.2.1 加法运算器……………………………
72
4.2.2 减法运算器……………………………
73
4.2.3 乘法运算器……………………………
73
4.2.4 除法运算器(分频器)…………..
74
4.3 计数器………………………………………………
74
4.3.1 逐点分析库中的计数器…………..
74
4.3.2 加计数器……………………………….
75
4.3.3 减计数器……………………………….
75
4.3.4 加减计数器……………………………
76
4.3.5 自动复位加计数器…………………
77
4.3.6 自动载入减计数器…………………
77
4.3.7 n 分频器………………………………..
77
4.3.8 计数器级联……………………………
77
4.4 定时器………………………………………………
78
4.4.1 内置的时间计数器函数…………..
78
4.4.2 高精度相对于秒的时间计数器… 78
4.4.3 时间计数器工具VI
……………….. 79
4.4.4 周期触发定时器…………………….
79
4.4.5 延迟接通定时器…………………….
80
4.4.6 延迟断开定时器…………………….
83
4.4.7 已用时间定时器…………………….
84
4.4.8 脉冲定时器……………………………
84
4.4.9 记忆延迟接通定时器……………..
85
4.5 整点定时闹钟……………………………………
86
4.5.1 整点(时分秒)闹钟……………..
86
4.5.2 指定时刻(时分秒)闹钟………. 87
4.5.3 指定多时刻(时分秒)闹钟…… 87
4.5.4 等间隔(时分秒)闹钟…………..
88
4.5.5 任意时刻闹钟………………………..
88
4.5.6 已用时间定时器(时钟)………. 89
4.6 开关去抖动……………………………………….
89
4.6.1 延迟读去抖动………………………..
89
4.6.2 过滤去抖动……………………………
90
4.7 门电路测试器……………………………………
91
4.7.1 自动生成测试数据…………………
91
4.7.2 创建模拟器……………………………
92
4.7.3 自动生成真值表…………………….
93
4.7.4 三输入门电路测试VI
……………. 93
第5 章 数值工具与数组工具…………………………..
94
5.1 数值与位数工具………………………………..
94
5.1.1 数值至位数工具…………………….
94
5.1.2 位至数值工具………………………..
95
5.1.3 数值位数工具………………………..
95
5.2 数值圆整工具与浮点数拆分工具………..
95
5.2.1 圆整到2 的N 次方(对数)….. 95
5.2.2 圆整到2 的N 次方(布尔)….. 96
5.2.3 圆整至基数的倍数…………………
96
5.2.4 拆分浮点数(商与余数)………. 97
5.2.5 拆分浮点数(圆整函数)………. 97
5.3 简单离散数学工具…………………………….
98
5.3.1 判断闰年工具………………………..
98
5.3.2 阶乘工具……………………………….
98
5.3.3 阶乘工具(对数) ………………… 99
5.3.4 组合工具(公式法)…………….
100
5.3.5 组合工具(简化公式法)…….. 100
5.3.6 排列工具……………………………..
100
5.3.7 公约数工具…………………..
101
5.3.8 小公倍数工具…………………..
101
5.3.9 所有因子工具………………………
102
5.3.10 完全数工具………………………….
102
5.3.11 水仙花数工具………………………
102
5.4 索引数组工具………………………………….
103
5.4.1 LabVIEW 2012 隧道操作新特性…………………………………
103
5.4.2 索引1D 数组工具………………… 104
5.4.3 行列索引2D 数组工具…………. 104
5.4.4 依行或列索引2D 数组工具….. 105
5.5 数组相邻元素计算工具…………………….
105
5.5.1 相邻元素的加法运算工具…….. 105
5.5.2 相邻元素的减法运算工具…….. 106
5.5.3 相邻元素的乘法运算工具…….. 106
5.5.4 相邻元素的除法运算工具…….. 107
5.5.5 相邻元素的定制算法运算工具… 107
5.5.6 相邻元素的其他算法运算工具… 108
5.6 数组搜索工具………………………………….
109
5.6.1 搜索1D 数组所有匹配元素工具……………………………………. 109
5.6.2 搜索2D 数组所有匹配元素工具……………………………………. 110
5.6.3 搜索2D 数组所有匹配元素(2D 转化为1D)工具………… 110
5.7 交换数组元素工具…………………………..
111
5.7.1 交换1D 数组元素工具…………. 111
5.7.2 交换2D 数组元素工具…………. 111
5.7.3 交换数组相邻元素工具…………
112
5.8 条件查找数组元素工具…………………….
113
5.8.1 条件查找1D 数组工具…………. 113
5.8.2 条件查找2D 数组工具…………. 113
5.9 查找替换数组元素工具…………………….
114
5.9.1 查找替换1D 数组元素工具….. 114
5.9.2 查找替换2D 数组元素工具….. 114
5.10 数组排序工具………………………………..
115
5.10.1 1D 数组排序工具………………..
115
5.10.2 1D 复数数组排序工具…………
115
5.10.3 2D 数组排序工具………………..
116
5.11 删除数组元素工具…………………………
117
5.11.1 删除1D 数组元素工具……….. 117
5.11.2 删除2D 数组元素工具……….. 117
5.12 过滤数组元素工具…………………………
118
5.12.1 过滤单个数组元素工具……….
118
5.12.2 过滤多个数组元素工具……….
118
5.13 2D 数组镜像工具……………………………
119
5.13.1 2D 数组垂直镜像工具…………
119
5.13.2 2D 数组水平镜像工具…………
119
5.13.3 2D 数组旋转90°工具…………. 120
5.14 1D 数组集合工具……………………………
120
5.14.1 去除1D 数组重复元素工具… 120
5.14.2 1D 数组并集集合工具…………
122
5.14.3 1D 数组交集集合工具…………
122
5.14.4 1D 数组补集集合工具…………
122
第6 章 字符串与路径工具…………………………….
124
6.1 常用字符串工具………………………………
124
6.1.1 添加引号、百分号工具…………
124
6.1.2 删除引号工具………………………
125
6.1.3 行结束符(EOL)工具………… 126
6.1.4 字符串填充工具…………………..
126
6.1.5 缓冲字符串工具…………………..
128
6.1.6 连接与拆分字符串工具…………
129
6.2 ASCII 表工具…………………………………..
130
6.2.1 扩展ASCII 表……………………… 130
6.2.2 基本ASCII 表……………………… 131
6.3 特殊字符…………………………………………
133
6.3.1 特殊字符下拉列表……………….
133
6.3.2 特殊字符下拉列表的使用方法… 134
6.3.3 特殊字符枚举控件……………….
134
6.4 编码工具…………………………………………
135
6.4.1 英文字符与Unicode 的相互转换……………………………………. 135
6.4.2 LabVIEW 字符串转换为Unicode 字符串(API)……….. 136
6.4.3 LabVIEW 字符串转换至UTF8(内置函数) ……………………… 137
6.4.4 .NET 编码工具……………………..
137
6.5 字符串的加密与解密……………………….
139
6.5.1 按位翻转工具………………………
139
6.5.2 异或加密解密工具……………….
140
6.5.3 查表法加密解密工具…………….
140
6.6 正则表达式……………………………………..
141
6.6.1 十进制整数的正则表达式…….. 141
6.6.2 二进制、八进制与十六进制整数的正则表达式……………………
143
6.6.3 浮点数正则表达式……………….
143
6.7 常用路径工具………………………………….
144
6.7.1 有效路径工具………………………
144
6.7.2 应用程序文件夹路径工具…….. 144
6.7.3 支持文件路径工具………………..
145
第7 章 基本数据结构工具…………………………….
146
7.1 功能型全局变量………………………………
146
7.1.1 利用反馈节点创建读写功能全局变量……………………………..
146
7.1.2 利用反馈节点创建只读功能全局变量……………………………..
147
7.1.3 利用反馈节点创建可初始化功能全局变量……………………….
147
7.1.4 利用循环创建可初始化功能全局变量……………………………..
148
7.1.5 创建功能全局变量模板…………
149
7.1.6 全局停止工具………………………
150
7.2 累加器、均值器与收集器…………………
152
7.2.1 累加器…………………………………
152
7.2.2 均值器…………………………………
153
7.2.3 收集器…………………………………
154
7.3 动作机…………………………………………….
156
7.3.1 创建抽象的数据类型…………….
156
7.3.2 抽象数据映射………………………
157
7.3.3 创建动作机………………………….
158
7.4 字典………………………………………………..
159
7.4.1 字典类的私有数据………………..
159
7.4.2 字典类的属性………………………
160
7.4.3 获取字典内容方法………………..
160
7.4.4 添加方法……………………………..
161
7.4.5 添加范围方法………………………
162
7.4.6 删除方法与删除范围方法…….. 162
7.4.7 清除方法……………………………..
163
7.4.8 索引方法……………………………..
163
7.4.9 根据键获取键值方法…………….
164
7.4.10 字典类转换为组合框方法……..
164
7.4.11 组合框转换为字典类方法……..
164
7.4.12 字典类存储对象的扩展…………
165
第8 章 高级数据结构工具…………………………….
166
8.1 反馈节点FIFO…………………………………
166
8.1.1 配置反馈节点延迟属性…………
166
8.1.2 反馈节点FIFO 应用举例……… 166
8.2 数组FIFO………………………………………..
167
8.2.1 数组FIFO 项目库………………… 167
8.2.2 数组FIFO 工具输入端子与输出端子…………………………….. 167
8.2.3 数组FIFO 工具初始化动作….. 168
8.2.4 数组FIFO 元素的添加与移除动作……………………………………. 168
8.2.5 数组FIFO 应用举例…………….. 169
8.3 队列FIFO 动作机……………………………. 169
8.3.1 队列FIFO 项目库………………… 170
8.3.2 队列FIFO 动作机输入端子与输出端子……………………………………. 170
8.3.3 队列FIFO 的初始化动作……… 171
8.3.4 队列FIFO 的释放队列动作….. 171
8.3.5 队列FIFO 的加入元素动作与当前队列动作……………………… 172
8.3.6 队列FIFO 应用举例…………….. 172
8.4 LVOOP 队列FIFO
………………………….. 172
8.4.1 创建LVOOP 队列FIFO 的私有数据(队列引用)…………
173
8.4.2 LVOOP 队列FIFO 初始化方法… 174
8.4.3 LVOOP 队列FIFO 释放方法… 174
8.4.4 LVOOP 队列FIFO 的添加元素方法…………………………….. 175
8.4.5 LVOOP 队列FIFO 的状态方法… 175
8.4.6 LVOOP 队列FIFO 应用举例…. 175
8.5 数组堆栈…………………………………………
175
8.5.1 数组堆栈项目库…………………..
176
8.5.2 数组堆栈动作机输入端子与显示端子……………………………..
176
8.5.3 数组堆栈动作机…………………..
177
8.5.4 数组堆栈应用举例……………….
178
8.6 队列堆栈…………………………………………
179
8.6.1 队列三种入队方式……………….
179
8.6.2 队列堆栈动作机…………………..
179
8.6.3 队列堆栈应用举例……………….
180
8.7 LVOOP 队列堆栈…………………………….
181
8.7.1 定义队列堆栈类的私有数据…. 181
8.7.2 队列堆栈的初始化方法与释放方法……………………………..
182
8.7.3 队列堆栈的进栈方法与出栈方法…………………………………….
182
8.8 批量功能型全局变量(内置)………….
182
8.8.1 lvconfig.llb 库……………………….
183
8.8.2 封装lvconfig.llb 库函数……….. 183
8.8.3 批量功能全局变量应用举例…. 184
8.9 哈希表…………………………………………….
184
8.9.1 变体属性与哈希表……………….
185
8.9.2 哈希表数据结构工具库…………
185
8.9.3 创建核心TagVar Data 动作机… 185
8.9.4 TagVar Data 动作机接口……….
189
8.9.5 TagVar Data 动作机应用举例…. 190
8.10 MemBlock 工具……………………………..
191
8.10.1 MemBlock 项目库……………….
191
8.10.2 MemBlock 动作机……………….
191
8.10.3 标签列表动作机…………………
192
8.10.4 MemBlock 初始化接口………..
194
8.10.5 MemBlock 读取接口……………
194
8.10.6 MemBlock 写入接口……………
194
8.10.7 MemBlock 静态读取接口…….
195
第9 章 API 与动态链接库工具…………………….. 196
9.1 常用API 函数…………………………………. 196
9.1.1 常用API 函数项目库…………… 196
9.1.2 窗口句柄工具………………………
197
9.1.3 窗口图标设置工具……………….
198
9.1.4 模拟击键工具………………………
198
9.1.5 模拟鼠标工具………………………
200
9.1.6 系统工具……………………………..
202
9.2 创建DLL
……………………………………….. 206
9.2.1 利用CVI 项目模板来创建DLL项目…………………………………….
207
9.2.2 添加C 函数与创建DLL ………. 207
9.2.3 LabVIEW 加载DLL……………..
208
9.3 可以直接传递的LabVIEW 基本数据类型………………………………………………. 209
9.3.1 传递指向标量数据类型的指针… 209
9.3.2 传递指向一维标量数组的指针… 210
9.3.3 传递指向二维标量数组的指针… 211
9.3.4 传递指向简单对齐数值结构的指针…………………………………
212
9.3.5 传递简单结构………………………
213
9.3.6 传递字符串………………………….
214
9.3.7 传递嵌套的简单数值结构指针… 215
9.3.8 传递包含数组的结构…………….
216
9.4 结构中元素对齐………………………………
217
9.4.1 对齐问题的产生…………………..
217
9.4.2 结构体对齐的基本原则…………
218
9.4.3 编程设置对齐方式……………….
218
9.5 DLL 函数返回指针的处理………………..
219
9.5.1 打包DLL 函数…………………….. 220
9.5.2 GetValueByPointer 工具……….. 220
9.5.3 C 接口函数…………………………..
221
第10 章 .NET 工具……………………………………… 223
10.1 通用对话框……………………………………
223
10.1.1 如何使用.NET 构造器…………. 223
10.1.2 颜色对话框………………………..
223
10.1.3 字体对话框………………………..
224
10.1.4 打开文件对话框…………………
225
10.1.5 消息框……………………………….
226
10.2 集合类…………………………………………..
226
10.2.1 迭代器……………………………….
226
10.2.2 .NET 队列数据结构…………….
227
10.2.3 .NET 哈希表……………………….
228
10.2.4 动态数组……………………………
229
10.3 状态条控件……………………………………
229
10.3.1 图像列表控件…………………….
229
10.3.2 工具标签、进度条与分隔条…
230
10.3.3 状态栏控件类…………………….
231
10.3.4 状态栏控件应用实例…………..
232
10.4 列表视图……………………………………….
233
10.4.1 列表视图类………………………..
233
10.4.2 列表视图类的重要方法与属性……………………………………
234
10.4.3 列表视图应用举例……………..
236
10.5 DataGridView 控件…………………………
237
10.5.1 Data Column 类…………………..
237
10.5.2 Data Table 类………………………
238
10.5.3 Data Set 类………………………….
239
10.5.4 DataGridView 应用示例………
240
10.6 .NET 串口通信……………………………….
243
10.6.1 串口类……………………………….
243
10.6.2 写入文本行与读取文本行……
244
10.6.3 写入文本与读取文本…………..
245
10.6.4 写入字节数组与读取字节数组…………………………………..
246
10.6.5 串口接收事件…………………….
246
10.7 .NET 发送电子邮件………………………..
248
10.7.1 Email 类……………………………..
248
10.7.2 Email 类的重要方法……………
248
10.7.3 Email 类高级接口方法………..
250
10.7.4 邮件类应用实例…………………
250
10.8 .NET 系统工具……………………………….
251
10.8.1 目录与文件管理工具…………..
251
10.8.2 驱动器信息工具…………………
252
10.8.3 进程管理工具…………………….
252
10.8.4 系统管理类………………………..
253
10.8.5 管理对象查询库…………………
254
第11 章 VI
Scripting……………………………………. 256
11.1 应用类工具……………………………………
256
11.1.1 应用类工具库…………………….
256
11.1.2 GUID 工具…………………………
256
11.1.3 获取内存中所有VI 工具……. 257
11.1.4 Tag 工具…………………………….
257
11.1.5 ClassID 和ClassName 工具…. 258
11.1.6 AppName、AppDir、AppData工具…………………………………..
259
11.1.7 判断运行环境与退出LabVIEW 工具…………………… 260
11.1.8 系统工具……………………………
260
11.1.9 VI 相关工具……………………….
261
11.1.10 剪贴板工具………………………..
261
11.1.11 VI 标签工具……………………….
262
11.1.12 全局数据工具…………………….
263
11.1.13 App 类其他工具………………….
263
11.2 VI 类工具………………………………………
264
11.2.1 获取VI 引用工具………………. 264
11.2.2 读取和写入控件值工具……….
265
11.2.3 保存前面板和程序框图到图片工具……………………………
267
11.2.4 打印VI 到HTML 文件并在浏览器中显示工具……………..
267
11.2.5 工具栏显示控制工具…………..
268
11.2.6 读取和设置运行菜单…………..
268
11.2.7 前面板布尔类型属性工具……
269
11.2.8 读取和设置前面板窗口边界与面板边界工具………………… 269
11.2.9 设置前面板居中显示工具……
270
11.2.10 读取与设置前面板的状态工具…………………………………..
270
11.2.11 设置前面板原点工具…………..
271
11.2.12 打开、居中与关闭前面板工具…………………………………..
271
11.2.13 获取前面板引用与前面板句柄工具……………………………
271
11.2.14 获取前面板子对象引用……….
272
11.2.15 获取具有焦点控件的引用……
272
11.2.16 VI 标签工具……………………….
273
11.3 通用控件类工具…………………………….
273
11.3.1 操作控件值工具………………….
273
11.3.2 读写控件的禁用、可见与闪烁工具……………………………
274
11.3.3 读写控件的位置、边界工具…
274
11.3.4 读写控件的说明与提示框信息工具……………………………….
275
11.3.5 通用对象属性工具………………
276
11.3.6 获取标签与标题引用工具……
276
11.3.7 控件分组与锁定工具…………..
276
11.3.8 获取控件UID 工具……………. 277
11.3.9 获取控件或接线端的图片工具…………………………………..
277
11.3.10 控件的高亮显示方法与控件重新初始化为默认值方法….. 278
11.3.11 控件标签工具…………………….
278
11.3.12 LabVIEW 内置的标签工具…. 278
11.4 IDE 工具………………………………………..
279
11.4.1 LabVIEW 的重要文件夹……..
279
11.4.2 IDE Menu 存储工具……………
280
11.4.3 LabVIEW内置的Menu Launch工具………………………………….. 280
11.4.4 VI 高级统计工具………………..
281
11.4.5 控件接线端图标显示工具……
281
11.5 VI Scripting 自动生成VI 工具………… 282
11.5.1 VI 脚本函数……………………….
282
11.5.2 放置控件、函数与结构……….
283
11.5.3 内置的未公开的装饰控件……
284
11.5.4 内置的未公开的控件………….
285
11.5.5 内置的未公开CIN 函数……… 285
11.5.6 自动生成枚举控件、下拉列表控件、组合框控件…………. 285
11.5.7 字符串类型条件结构自动生成工具……………………………….
287
第12 章 列表框、表格和树形控件应用工具….
289
12.1 列表框…………………………………………..
289
12.1.1 列表框工具库…………………….
289
12.1.2 列表框常用属性工具………….
290
12.1.3 渐变颜色工具…………………….
292
12.1.4 交替与渐进背景色列表框工具…………………………………..
293
12.1.5 用户自定义符号动作机……….
293
12.1.6 列表框项目操作工具………….
294
12.1.7 列表框应用举例…………………
295
12.2 多列列表框工具…………………………….
296
12.2.1 多列列表框工具库……………..
297
12.2.2 四通道模拟数据采集………….
297
12.2.3 多列列表框嵌入其他类型控件…………………………………..
298
12.3 表格控件工具………………………………..
301
12.3.1 表格控件工具库…………………
302
12.3.2 表格控件特有的工具………….
302
12.3.3 表格控件应用举例……………..
305
12.4 树控件工具……………………………………
307
12.4.1 树形控件工具库…………………
307
12.4.2 树形控件工具库的基本用法….
308
12.4.3 树形控件显示INI 文件内容…. 309
12.4.4 树形控件内置的拖动功能……
310
12.4.5 树形控件拖动功能(内置数据源)……………………………….
310
12.4.6 父项与子项………………………..
311
12.4.7 动态更新项目…………………….
313
12.4.8 设置自定义符号…………………
314
第13 章 图片实用工具…………………………………
316
13.1 颜色工具……………………………………….
316
13.1.1 图片工具库………………………..
316
13.1.2 RGB 和HSL 颜色转换工具… 316
13.1.3 系统颜色工具…………………….
318
13.1.4 颜色渐变工具…………………….
319
13.2 矩形工具……………………………………….
321
13.2.1 矩形不同表达形式的相互转换工具……………………………….
321
13.2.2 矩形操作基本工具………………
321
13.2.3 偏移矩形工具…………………….
322
13.3 基本形状绘制工具…………………………
323
13.3.1 基本图形绘制工具的底层工具…………………………………..
323
13.3.2 箭头工具……………………………
324
13.3.3 绘制旋转矩形工具………………
325
13.3.4 绘制星形工具…………………….
325
13.3.5 其他基本图形绘制工具……….
326
13.4 渐变图形绘制工具…………………………
326
13.4.1 渐变圆形绘制工具………………
326
13.4.2 渐变矩形绘制工具………………
327
13.4.3 提取图片像素点工具…………..
327
13.5 图片工具应用举例…………………………
328
13.5.1 利用图片文件屏蔽图片……….
328
13.5.2 编程绘制屏蔽图片………………
329
13.5.3 移动图片……………………………
329
13.5.4 RGB 通道…………………………..
330
13.5.5 图片的透明叠加…………………
331
13.5.6 图标浏览器………………………..
332
13.5.7 滚动字幕……………………………
333
13.5.8 RGB 图像转换为灰度图……..
333
13.5.9 渐变颜色饼图…………………….
334
13.5.10 排列图片与图片加框…………..
335
13.5.11 图片的变换………………………..
336
13.6 简单动画制作………………………………..
337
13.6.1 利用GIF 文件播放动画……… 337
13.6.2 利用装饰控件制作动画……….
338
13.6.3 利用图片下拉列表控件制作动画…………………………………..
338
13.6.4 利用图片控件制作动画……….
339
13.6.5 利用二维图片控件数组制作动画…………………………………..
339
第14 章 高级数据显示控件………………………….
340
14.1 数值显示……………………………………….
340
14.1.1 数值控件的高级显示…………..
340
14.1.2 选择开关……………………………
341
14.1.3 多值的数值控件…………………
341
14.1.4 定制数值控件颜色梯度……….
342
14.1.5 定制时间标识符…………………
342
14.1.6 变长数组……………………………
343
14.1.7 簇的数组……………………………
343
14.2 自定义控件……………………………………
344
14.2.1 自定义布尔控件…………………
344
14.2.2 自定义数值控件…………………
346
14.2.3 透明控件……………………………
347
14.3 波形图表……………………………………….
347
14.3.1 波形图表的组成对象…………..
347
14.3.2 上下限波形图表…………………
348
14.3.3 时间波形图表……………..
349
14.3.4 多颜色曲线波形图表…………..
350
14.3.5 降采样波形图表…………………
350
14.3.6 多标尺波形图表…………………
352
14.3.7 不可预知数量的多曲线波形图表…………………………………..
352
14.4 波形图…………………………………………..
353
14.4.1 波形图的游标图例……………..
353
14.4.2 基本波形生成器…………………
354
14.4.3 公式波形发生器…………………
355
14.4.4 控制波形是否可见……………..
356
14.4.5 降采样……………………………….
357
14.4.6 波形图与图片绘制……………..
357
14.4.7 抽取子波形………………………..
358
14.4.8 动态添加与删除游标…………..
359
14.4.9 波形图注释
本书是笔者自《LabVIEW 宝典》之后,推出的第二本有关LabVIEW 的专业书籍。与目前市场上流行的LabVIEW 有关书籍风格不同,这是一本完全由具体实例构成的书籍,从编程语言本身出发,致力于解决具体的实际问题。每个实例都构成了专门的函数,读者可以直接使用和扩充。
主要内容
在第1 章与第2 章中笔者创建了许多初等数学相关的工具VI,包括数列工具、基本几何工具,等等。由于所有的读者都非常熟悉这部分内容,所以特别适合初学者入手学习LabVIEW。
在第3 章和第4 章中,笔者创建了多种模拟逻辑电路工具,比如寄存器、触发器、比较器等工具以及定时器和计数器,等等,对于这些内容,理工科各专业的同学会非常熟悉,同时,这些工具可以被直接应用于控制类实用项目中。
在第5~8 章中,笔者创建了大量有关数据结构的工具,包括簇工具、数组操作工具以及堆栈、字典工具,等等。这些工具利用LabVIEW 基本数据类型,构建了丰富的复杂类型工具,供读者直接在具体项目中使用。
在第9~10 章中,笔者创建了大量的系统应用工具,包括多种API 函数工具以及常用的.NET工具,等等。这些内容对于工程技术人员来说,理解起来可能比较困难,因此笔者对这些工具进行了精心的封装,读者可以直接使用。
在第12~14 章中,笔者针对各种高级显示控件,比如波形图、波形图表、列表框、表格控件等,创建了多种实用工具,工具中涉及大量的控件属性和方法操作。直接调用这些工具,可以极大地简化编程,使读者在有关界面编程方面不需要耗费更多精力,可以更加关注项目本身需要实现的功能。
在第15 章中,笔者介绍了常用的程序主界面布局,根据项目的复杂程度,读者可以选择其中合适的布局方式。
在第16 章中,笔者介绍了面向对象编程,其中实现了多种常用的设计模式,比如工厂模式、策略模式、命令模式,以及观察者、中介者模式等。面向对象编程是LabVIEW 的新增功能,每个新版本在面向对象编程方面,都有不断的改进。
在第17 章中,笔者介绍了LabVIEW 常用的程序框架结构,与具体项目应用密切相关,读者肯定会找到适合自己的框架结构。
读者对象
本书的内容根据章节,难度逐渐增加。因此适合于不同层次的读者,特别适合高校学生的毕业设计用作参考以及与LabVIEW 相关的工程技术人员使用。建议读者首先熟悉LabVIEW的基本操作,再阅读本书。在具体编程遇到困难时,一定会找到相应的解决方法。
本书特色
本书没有关注LabVIEW 的基础知识介绍,而是重点创建了各种针对具体问题的实用工具。这些工具不仅能直接应用在具体的项目之中,从工具创建的本身,读者也可以学到LabVIEW 编程的大量技巧和应用原理。
本书更像是一份编程疑难解答,每一种工具都针对某个具体问题,不但回答了如何通过LabVIEW 解决这些问题,而且精心地封装了这些工具,使读者可以直接使用这些工具。所有的工具都是开源代码,在此基础上,读者可以根据实际需要,进行扩充和拓展,形成针对自己特定领域的实用工具库。
致谢
本书从构思到创作完稿前后花费了几年的时间,首先感谢家人的大力支持;其次,在创作过程中也反复与成都道然科技有限责任公司沟通交流,从各个细节来完善这个作品。虽然我们尽力做好每个细节,但疏漏之处难免,恳请专家、读者来信交流:[email protected]。
本书的相关配套资源也可以从mit.dozan.cn/labview 下载。
评论
还没有评论。