本书系统、全面地讲解了LabVIEW的编程技术,主要内容包括LabVIEW开发环境介绍、数据结构、程序结构、属性节点、子VI与内存管理、多线程应用、程序设计模式、动态调用、常用控件的编程、文件操作、程序界面构建、面向对象编程、LabVIEW与外部组件的通信、LabVIEW与硬件的通信、应用程序制作和安装包的生成。本书的特色是实例多,作者将多年的编程经验精心制作为例题,例题中的程序代码反映了LabVIEW编程中的重点和难点,而且浅显易懂,可以满足不同层次读者的需要。LabVIEW的编程思想和传统的文本编程语言是有差别的,书中很多程序代码提供了多种实现方法,通过这种举一反三的形式帮助读者理解LabVIEW的编程思想。
宋铭,中国石化集团中原油田分公司工程师,主要从事虚拟仪器(LabVIEW)及工程检测技术的研究,具有丰富的虚拟仪器设计开发与实践经验。
第1章 初识LabVIEW
1.1 虚拟仪器
1.2 LabVIEW
1.3 LabVIEW的控件
1.4 LabVIEW的修饰
1.5 LabVIEW编程元素
1.6 选中VI对象
1.7 完整的LabVIEW程序―VI
1.8 LabVIEW的项目
第2章 LabVIEW编程环境
2.1 前面板窗格
2.2 工具选板
2.3 VI菜单
2.4 工具栏
2.5 常用组合键
2.6 VI属性
2.7 程序代码调试
第3章 数据类型与运算
3.1 数值类型
3.1.1 数值类型分类
3.1.2 数值型存储
3.1.3 浮点数误差
3.2 字符串类型
3.2.1 字符串存储
3.2.2 字符串函数
3.3 布尔类型
3.4 数组
3.5 簇
3.6 变体
3.7 波形数据
3.8 枚举类型
3.9 自定义类型
3.10 常量和变量
3.11 运算类型
第4章 程序结构
4.1 循环结构
4.1.1 While循环
4.1.2 For循环
4.1.3 数据进出循环的途径
4.1.4 反馈节点
4.1.5 For循环的退出机制
4.1.6 While循环的退出机制
4.1.7 数据出循环的条件
4.1.8 循环结构与数组函数
4.2 条件结构
4.2.1 布尔类型输入
4.2.2 整型标量输入
4.2.3 字符串类型输入
4.2.4 枚举类型
4.2.5 错误簇
4.3 事件结构
4.3.1 创建事件分支
4.3.2 通知事件
4.3.3 过滤事件
4.3.4 LabVIEW的事件源
4.3.5 多事件分支
4.3.6 事件结构应用
4.4 顺序结构
4.4.1 平铺式顺序结构
4.4.2 层叠式顺序结构
4.4.3 平铺式顺序与层叠式顺序的转换
4.5 公式节点
第5章 属性节点和方法
5.1 控件的属性节点
5.2 属性的类层次结构
5.3 LabVIEW的属性类
5.3.1 通用类
5.3.2 图形对象类
5.3.3 修饰类
5.3.4 文本类
5.3.5 控件类
5.3.6 字符串类
5.3.7 布尔类
5.3.8 数值类
5.3.9 数字类
5.3.10 簇类
5.3.11 VI类
5.3.12 前面板类
5.4 LabVIEW的方法
5.4.1 控件的方法
5.4.2 VI的方法
5.5 属性和方法的多线程
第6章 子VI与内存管理
6.1 子VI的创建
6.1.1 从普通VI创建子VI
6.1.2 从程序框图创建子VI
6.2 VI的四个内存单元
6.3 多态VI
6.4 子VI中的程序结构
6.5 子VI的执行模式
6.5.1 不可重入VI
6.5.2 可重入VI
6.6 共享副本与数据窜改
6.7 子VI加载内存的形式
6.8 子VI与属性节点
6.9 子VI的生命周期
6.10 LabVIEW的内存再分配
6.11 LabVIEW中的缓存重用
6.12 数据类型的转换
6.13 合理的编程习惯
6.14 应用程序的内存管理
第7章 多线程
7.1 LabVIEW的执行系统与多线程机制
7.2 多线程的执行机制―时间片
7.3 LabVIEW多线程分类
7.4 多线程通信
7.4.1 局部变量
7.4.2 全局变量
7.4.3 队列
7.4.4 LV2型全局变量
7.4.5 共享变量
7.4.6 数据传递机制读/写速度
7.4.7 LabVIEW变量的深入分析
7.4.8 子VI与主VI的实时通信
7.5 多线程同步
7.6 并行循环的停止机制
7.7 多线程的优势
7.8 多线程优先级
7.9 多线程应用
第8章 LabVIEW的设计模式
8.1 连续循环模式
8.2 事件处理器
8.3 状态机
8.3.1 顺序状态机
8.3.2 改进型状态机
8.3.3 标准状态机
8.3.4 事件状态机
8.3.5 超时状态机
8.3.6 自定义事件状态机
8.4 队列消息处理器
8.4.1 查询模式的队列消息处理器
8.4.2 事件驱动的队列消息处理器
8.4.3 基于超时事件的队列消息处理器
8.4.4 基于自定义事件的队列消息处理器
8.4.5 基于回调机制的队列消息处理器
8.4.6 多重嵌套的队列消息处理器
8.5 顶层程序设计模式
8.6 多线程的模块化
8.7 LabVIEW程序的构建策略
8.8 连续循环时的事件响应
第9章 动态调用技术
9.1 VI服务器与引用
9.2 动态控制VI
9.3 动态事件
9.4 LabVIEW的回调机制
9.5 多线程传递事件
第10章 常用控件的编程
10.1 列表框
10.1.1 列表框的属性
10.1.2 列表框的方法
10.1.3 列表框的应用
10.2 多列列表框
10.2.1 多列列表框的属性
10.2.2 多列列表框的应用
10.3 选项卡
10.4 树形控件
10.5 波形图表
10.5.1 波形图表的外观
10.5.2 波形图表的数据输入形式
10.5.3 图形图表类属性
10.5.4 标尺类属性
10.5.5 波形图表类属性
10.6 波形图
10.7 XY图
10.8 XControl控件
第11章 文件I/O操作
11.1 常用的文件类型
11.2 常用的文件操作函数
11.3 报表
11.3.1 LabVIEW工具包
11.3.2 自动化函数
第12章 程序界面构建
12.1 菜单
12.1.1 自定义菜单的创建
12.1.2 自定义菜单的响应
12.2 快捷菜单
12.2.1 快捷菜单的创建
12.2.2 快捷菜单的响应
12.3 工具栏
12.3.1 工具栏的创建
12.3.2 工具栏的响应
12.4 对话框
12.5 状态栏编程
12.6 界面的构建实例
第13章 面向对象编程
13.1 面向对象的编程思想
13.2 面向对象的基本概念
13.3 LabVIEW的类
13.3.1 创建基类
13.3.2 类的继承
13.4 面向对象的编程应用
13.5 LabVIEW面向对象的利弊分析
第14章 LabVIEW与外部组件的通信
14.1 DLL
14.1.1 DLL的概念
14.1.2 DLL文件的制作
14.1.3 DLL文件的调用
14.2 Windows API
14.3 Active X
14.4 多进程通信
第15章 接口通信和驱动程序开发
15.1 串口通信
15.1.1 串口通信的硬件介绍
15.1.2 基于LabVIEW的串口通信
15.2 USB总线通信
15.2.1 CH372概述
15.2.2 单片机与CH372的接口电路
15.2.3 单片机USB通信程序
15.2.4 基于DLL的USB通信
15.2.5 基于VISA的USB通信
15.3 计算机声卡通信
第16章 LabVIEW应用程序制作
16.1 修改主程序外观
16.2 修改路径
16.3 创建LabVIEW项目
16.4 生成应用程序(EXE文件)
16.5 制作程序安装包
LabVIEW是美国国家仪器公司推出的应用程序开发环境,配合高效的数据采集设备,可以快速构建虚拟测控系统。随着科技的不断进步,传统仪器正逐渐向虚拟仪器方向发展。虚拟仪器具有可编程的特点,借助计算机和通用的数据采集设备,可以编程实现或修改仪器的功能,实现了硬件的可重用性。
LabVIEW是一门高级编程语言,使用LabVIEW不仅可以构建虚拟测控系统,还可以开发Windows应用程序并能生成程序安装包。由于LabVIEW的这些优势,它正逐渐得到广泛应用,国内外高等学校的工科专业一般都开设相关课程,学好LabVIEW对专业课的学习也是很有帮助的。对于LabVIEW的学习者,尤其是初学者,拥有一本容易入门、系统全面的编程教材是非常重要的。作者从事LabVIEW编程多年,在LabVIEW程序开发方面积累了大量的实践经验,现将这些经验编写成书奉献给读者,希望对机械、电子、通信等相关专业学生的专业课学习有所帮助。
对于LabVIEW的学习者,掌握高效的学习方法是学好LabVIEW的重要因素。作为一门编程语言,编程实践是极其重要的环节。在作者接触的一些LabVIEW学习者中,有很多人说自己的编程水平提高得很慢。这些初学者都是在阅读他人的程序,但自己很少动手编写程序,这是学习编程语言的大忌。编程水平是在编程过程中得到提高的,只有多动手编程,才能尽快熟悉LabVIEW的开发环境。学习LabVIEW时,应该多动手编程,思考为什么要这样编程,有没有更好的方法实现这段程序,仅通过阅读程序是无法提高编程水平的。根据作者的经验,对于初学者而言,大量抄写已有的程序是快速提高编程水平的好方法。本书中有大量的例题,配套的程序都是作者精心编写并通过调试的。初学者可以按照例题步骤反复抄写例题的程序,以达到熟练掌握这些程序的目的。当已经熟悉了LabVIEW的编程环境并可以独立完成VI的编写时,可以尝试思考为什么要这样编程,并在理解的基础上独立编写书中例题。在编程时,可以尝试用不同的方法实现一段相同功能的程序,并比较程序运行效率的高低。经过这种举一反三的编程,可以更加深入地理解LabVIEW的编程思想。
作者本着交流学习的态度撰写本书,由于自身水平有限,书中难免有错误之处,欢迎广大读者提出宝贵意见。如果您对书中的程序代码有更精妙的实现方法,或者指出本书中的错误,可以与作者联系(songming82@163.com)。
宋铭
这本书的出版,对于正在摸索LabVIEW编程的工程师们来说,无疑是一场及时雨。我作为一名初学者,在实际项目中常常会遇到各种各样的难题,尤其是在处理复杂的数据采集和仪器控制时,感觉力不从心。市面上关于LabVIEW的书籍不少,但往往侧重点不同,有的偏重理论,有的流于表面,真正能够深入浅出地讲解核心概念、提供实用技巧的书籍却不多见。我希望这本书能够填补这一空白,它应该能提供清晰的结构和易于理解的语言,引导读者从基础的VI设计到复杂的应用开发,一步步建立起扎实的LabVIEW编程功底。比如,对于子VI的创建和管理,如何有效地组织和复用代码,这部分内容我非常期待。还有,在数据处理方面,如何运用LabVIEW内置的函数和工具来高效地对采集到的数据进行滤波、分析和可视化,这对我来说至关重要。书中是否能包含一些实际案例,展示如何在不同的应用场景下,如工业自动化、科学研究等,运用LabVIEW解决实际问题,这将极大地提升这本书的实用价值。我特别看重的是,这本书能否帮助我掌握一些进阶的编程技巧,比如如何优化VI的性能,如何处理并发任务,以及如何与外部硬件和软件进行接口。如果能有关于LabVIEW在嵌入式系统开发中的应用介绍,那就更好了。总而言之,我希望这本书能成为我学习LabVIEW道路上的得力助手,帮助我快速成长,独立完成更具挑战性的项目。
评分我是一名正在从事机械设计和仿真的工程师,在工作过程中,我常常需要利用LabVIEW进行一些实验数据的分析和可视化,以便更好地理解和验证我的设计。目前我遇到的瓶颈在于,虽然我能采集到数据,但在如何高效地进行数据处理、特征提取以及将结果直观地呈现出来方面,还有很大的提升空间。我特别希望能在这本书中找到关于LabVIEW在信号处理方面的深入讲解,比如如何运用FFT、滤波、小波分析等技术来处理传感器采集到的动态信号。对于数据可视化,我希望书中能提供多种图表类型的创建方法,包括但不限于波形图、频谱图、三维图、热力图等,并且能够讲解如何根据不同的数据类型和分析需求来选择最合适的图表。我还期待书中能够包含一些关于如何将LabVIEW与其他工程软件,如MATLAB、Python,进行数据交互的技巧,这对于我整合不同工具链来完成更复杂的分析任务非常有益。此外,在数据管理方面,如何有效地存储、读取和组织大量的实验数据,例如使用数据库或者文件管理系统,这也是我非常关心的一部分。这本书能否帮助我构建一个完整的“数据采集-处理-分析-可视化”的工作流程,并且提供一些优化性能和提高效率的策略,这将是我衡量其价值的重要标准。
评分作为一名自动化领域的开发者,我一直对LabVIEW在工业控制和嵌入式系统中的应用深感兴趣。我希望这本书能够不仅仅停留在基础的GUI设计,更能深入探讨LabVIEW在实时操作系统(RTOS)上的开发,以及如何实现高效的PLC通信和运动控制。我期待书中能有关于如何使用LabVIEW Real-Time模块来开发嵌入式应用程序的详细介绍,包括如何进行交叉编译、部署和调试。在工业通信方面,我希望能够看到关于Modbus、PROFINET、Ethernet/IP等常用工业协议在LabVIEW中的实现方法和示例。对于运动控制,我非常关注如何利用LabVIEW来控制伺服电机、步进电机,以及如何实现轨迹规划和同步运动。这本书是否能提供关于LabVIEW在HMI(人机界面)开发中的高级技巧,例如如何设计更加现代化、用户友好的界面,以及如何实现远程监控和诊断功能,这也是我非常期待的。此外,对于如何将LabVIEW与PLC、SCADA系统集成,实现更复杂的自动化解决方案,我希望能够从中找到宝贵的经验和指导。
评分在学术研究的实验室里,我们经常需要利用LabVIEW来搭建各种实验平台,进行数据采集和初步分析。我曾经遇到过的一个难题是,如何将LabVIEW采集到的数据导入到专业的统计分析软件中,或者如何直接在LabVIEW中实现一些复杂的统计模型。因此,我特别希望这本书能够在这方面提供一些实用的指导。比如,书中是否会详细讲解如何利用LabVIEW来进行数据预处理,包括数据的清洗、规范化、缺失值填充等。对于各种统计方法的实现,例如回归分析、方差分析、聚类分析等,我希望能有具体的LabVIEW实现思路和代码示例。此外,在实验设计方面,如果书中能够包含一些关于如何利用LabVIEW来辅助进行实验设计(DOE)的内容,例如如何设置实验参数、如何规划实验步骤,那将会非常有价值。我对于如何将LabVIEW与其他科学计算工具,如R语言、Python的科学计算库,进行有机结合,以实现更强大的数据分析能力,也抱有很大的期待。书中能否提供一些关于如何构建可重用的分析模块,以及如何进行代码优化以提高分析效率的建议,这将极大地帮助我提升科研效率。
评分读完市面上一些LabVIEW教材后,我发现很多书在讲到仪器驱动的开发和通信协议的实现时,往往只是简单介绍概念,缺乏具体的代码示例和调试技巧。我经常在尝试与新设备连接时遇到各种协议层面的问题,例如RS232、GPIB、VISA的配置,以及如何解析不同仪器返回的数据格式。我期待这本书能够在这方面提供更详尽的指导,详细阐述不同通信接口的原理和LabVIEW中的实现方法。特别是对于如何编写和调试自定义的仪器驱动,我希望书中能提供一些实用的方法论,例如如何分析仪器手册、如何使用LabVIEW的调试工具来定位通信错误。此外,对于一些常见的仪器,比如示波器、函数发生器、频谱分析仪等,如果书中能提供相关的驱动开发范例,那就太有帮助了。我尤其关注的是,书中是否会涉及如何利用LabVIEW来创建用户友好的仪器控制面板,以及如何实现远程控制和数据记录功能。对于数据采集的同步问题,以及如何处理大量实时数据,我也希望能够从中找到解决方案。这本书的深度应该能够触及到LabVIEW在高级测试测量领域的应用,比如设计复杂的测试序列、实现自动化校准流程等。
评分终于等到你,还好没错过,快递小哥服务不错,给5分!
评分不错,满减挺滑算的
评分内容详细、适合初学者入门
评分书不错,收到时没有明显变形
评分不错,适合入门!!!!!!!
评分书很不错,值得购买
评分给家人买的书籍,很实用,字迹很清楚,快递很快
评分不过依旧有一点分量
评分全新的数 很好
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有