资源预览内容
第1页 / 共74页
第2页 / 共74页
第3页 / 共74页
第4页 / 共74页
第5页 / 共74页
第6页 / 共74页
第7页 / 共74页
第8页 / 共74页
第9页 / 共74页
第10页 / 共74页
亲,该文档总共74页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1 LabVIEW高级编程技巧 议程 NationalInstruments公司简介LabVIEW高级编程技巧用户定义的调试指示器巧用LabVIEW控件定时结构基于事件触发的编程优化LabVIEW程序内存管理程序模板的使用LabVIEW状态图 议程 NationalInstruments公司简介LabVIEW高级编程技巧用户定义的调试指示器巧用LabVIEW控件定时结构基于事件触发的编程优化LabVIEW程序内存管理程序模板的使用LabVIEW状态图 持续强劲的增长和收益记录2006年财政年度的收入达到6 6亿美元全球超过4000名员工 在40多个国家拥有办事处连续8年被 财富 杂志评为美国最适合工作的100家公司之一 NetRevenueinMillions NationalInstruments虚拟仪器技术倡导者 2005 2006 2003 2005 1998 2000 1993 1997 1990 1992 1986 LabVIEW1 0Macintosh LabVIEW2 0编译语言程序 LabVIEWSun Windows LabVIEW3 0多平台 LabVIEW4 0专业化开发 LabVIEW6i联网 LabVIEW5 0Undo 和实时 LabVIEW7ExpressPDA和FPGA LabVIEW嵌入式和DSP LabVIEW8 2020周年纪念版简体中文版 LabVIEW8分布式智能 LabVIEW 持续20多年的创新和发展 LabVIEW8 5多核处理器状态图模块 2007 议程 NationalInstruments公司简介LabVIEW高级编程技巧用户定义的调试指示器巧用LabVIEW控件定时结构基于事件触发的编程优化LabVIEW程序内存管理程序模板的使用LabVIEW状态图 调试指示器 灵活的调试工具 可详细显示数据线上通过的数据指示器的操作可以体现VI的灵活性和强大功能传统的调试指示器存在一些缺点 如只能显示数组中的一个元素 用户定义的调试指示器 能显示各种数据类型可定制指示器外观可定制指示器处理功能设置条件断点 定制你的需求 指示器不仅仅可以显示数据将数据录入文件对两个指示器之间的执行进行定时计算总的调用次数或是每秒的调用次数 演示 自定义调试指示器 议程 NationalInstruments公司简介LabVIEW高级编程技巧用户定义的调试指示器巧用LabVIEW控件定时结构基于事件触发的编程优化LabVIEW程序内存管理程序模板的使用LabVIEW状态图 LabVIEW界面出色 LabVIEW控件助您设计专业美观的人机界面 LabVIEW界面出色 LabVIEW控件助您设计专业美观的人机界面 LabVIEW界面出色 LabVIEW控件助您设计专业美观的人机界面 LabVIEW界面出色 LabVIEW控件助您设计专业美观的人机界面 LabVIEW内置控件 LabVIEW内置多种工业级控件 LabVIEW内置控件 波形图 波形图表XY图强度图Picture控件3D图片控件LabVIEW8 0新控件机械部件的状态显示 自定义控件 LabVIEW控件基础上修改使用贴图 ActiveX控件 与第三方程序通讯扩展LabVIEW的显示方式和效果 Xcontrol控件 添加新属性及方法组合多个控件创建全新控件 演示 3D直升机控制系统界面 议程 NationalInstruments公司简介LabVIEW高级编程技巧用户定义的调试指示器巧用LabVIEW控件定时结构基于事件触发的编程优化LabVIEW程序内存管理程序模板的使用LabVIEW状态图 定时结构 精确的定时while循环精确的定时顺序结构多个时钟频率的定时反馈 动态定时特性多优先级设置examples general timedloop llb 定时顺序结构 类似添加内置定时功能的顺序结构 定时循环 定时循环 演示 定时循环 可具体手动设置定时循环运行的核 NEW 可具体手动设置定时循环运行的核 NEW 议程 NationalInstruments公司简介LabVIEW高级编程技巧用户定义的调试指示器巧用LabVIEW控件定时结构基于事件触发的编程优化LabVIEW程序内存管理程序模板的使用LabVIEW状态图 基于事件的编程 管理用户界面 通常采用的方法有中断响应和事件驱动中断响应采用轮询机制处理 非常占用CPU资源 还可能会丢失用户界面的响应事件驱动无需轮询即可捕捉到相关事件 顺序处理捕捉到的所有事件 不会丢失也不会颠倒顺序 事件举例 事件结构不需要轮询就可以捕捉到自定义菜单上的用户选择ItemTag返回菜单条目MenuRef返回菜单的refnum VirtualInstrument 事件类型 Application 事件举例 退出应用程序超时 Control 事件举例 关闭前面板VI上的鼠标移动 事件举例 改变控件数值特定控件上的鼠标移动 LabVIEW新事件 更多的用户界面事件动态注册的事件用户定义的事件ActiveX事件 NET事件 事件结构的基本使用 通常在While循环中使用每次循环只处理一次事件 其它时间休眠在事件结构的左侧边框端口上可获得事件数据 事件结构的配置 通过对话框来配置事件 右击事件结构的边框 选择 EditEventsHandledbyThisCase 事件注册和面板锁定 包含事件结构的VI被预留以后 事件就成为已注册的已注册事件发生后 会进入队列等待直到相应的事件结构开始执行 事件不会丢失也不会出现顺序混乱默认情况下 前面板被锁定直到事件被处理完可以关闭锁定 但只针对过滤事件VI变成空闲后 事件被注销 动态事件 下列情况时 需要动态注册事件 事件注册只能发生在应用程序的某些部分在程序运行过程中需要改变哪些VIs或控件可以发生事件在subVI中处理事件 而不是仅在注册事件的VI中 动态事件 RegisterForEventsEventStructureUnregisterForEventsCreateUserEventGenerateUserEventDestroyUserEvent 编程模型 注册事件 连接到事件结构 选择动态事件 注销事件 演示 动态事件 程序产生的 用户 事件 RegisterForEventsEventStructureUnregisterForEventsCreateUserEventGenerateUserEventDestroyUserEvent 用户事件编程模型 创建并注册用户事件 产生用户事件 注销用户事件 消灭用户事件 用户事件举例 演示 用户事件 ActiveX事件 RegisterEventCallback ActiveX编程模型 注册ActiveX事件 选择事件 创建和编辑CallbackVI 演示 ActiveX事件 小结 事件处理结构 允许在subvi中处理事件代码提供统一的 简化的事件处理机制用户界面接口控制外部代码用户定义事件注册和非注册事件 议程 NationalInstruments公司简介LabVIEW高级编程技巧用户定义的调试指示器巧用LabVIEW控件定时结构基于事件触发的编程优化LabVIEW程序内存管理程序模板的使用LabVIEW状态图 为什么要优化LabVIEW程序内存管理 LabVIEW的自动管理内存特性方便用户开发 满足一般应用需求LabVIEW应用程序趋向大型化 复杂化项目规模大 需求复杂数据处理量大 性能要求高好的编程风格帮助LabVIEW优化内存管理可以显著提高程序运行效率需要了解LabVIEW的内存分配机制 监测VI内存占用和运行时间的工具 帮助定位和分析程序中的瓶颈部分 工具 性能分析 性能和内存 显示VI内存分配情况的工具 帮助分析程序中各个数据变量的内存拷贝情况目标 消除黑点 工具 性能分析 显示缓存区分配 演示 监测内存使用 优化LabVIEW程序内存管理 适时选择动态调用子VI避免强制类型转换合理分配数组内存灵活使用LabVIEW自带的VI使用元素同址操作结构InPlaceElementStructure 在程序中动态调用子VI 3 2 1 减少程序占用内存以及载入时间打开VI引用通过引用节点调用关闭引用 2 配置VI加载 1 数据类型转换 强制点表明连接了两种不同的数据类型LabVIEW中类型强制转换需要数据备份涉及大数组的类型强制转换会占用大量内存 推荐的类型转换方式 更好的解决方式是在随机数创建时进行转换避免转换大块数据缓存 14 3KB 22 7KB 合理分配数组内存 过多进行内存重新分配占用很大开销慎用可能导致内存重新分配的相关函数创建数组连接字符串 演示 LabVIEW数组分配 灵活使用LabVIEW自带的VI 基本线性代数子程序VI BasicLinearAlgebraSubroutines 合理归并基本线性代数操作减少不必要的内存复制开销使程序更加简洁 数学 线性代数 BLAS NEW 元素同址操作结构 更新数组或簇中的元素时 避免元素数据备份 应用控制 内存控制 NEW 元素同址操作结构的优点 方便实现多种情况的缓存重用 消除元素复制开销数组索引和替换簇的绑定和解除绑定波形的绑定和解除绑定变体的缓存重用任意元素的缓存重用 举例 数组索引和替换 将数组第2个元素增大10倍 方法一 方法二 元素数据备份 举例 簇的绑定和解除绑定 个人纳税信息的更新 演示 嵌套的元素同址操作结构 使用事件结构模板 状态机并行循环VI架构队列信息处理器生产者 消费者 数据 用户接口事件处理器生产者 消费者 事件 根据需要组合或扩展各种结构 议程 NationalInstruments公司简介LabVIEW高级编程技巧用户定义的调试指示器巧用LabVIEW控件定时结构基于事件触发的编程优化LabVIEW程序内存管理程序模板的使用LabVIEW状态图 通向高效工作的最佳捷径 NI培训和认证 LabVIEWBasicsI II课程内容丰富 细致 与实践相结合 在这几天的培训课程中 我得以系统完善自己关于NI硬件与LabVIEW软件的认识 对我们后来的系统维护和系统开发起到非常重要的指导作用 北京艾科泰电子有限公司车殿丰 确保项目成功机会提升专业开发技能开发大型应用实现轻松维护 NI培训会员将尊享整体费用的折扣 节约最高达70 的费用根据学员水平 分级别定制专业课程在指定时限内 无限次数选择收费培训课程轻松获得全球通用的权威认证 NI专业程序员认证 了解详情或报名参加活动 请拨打NI培训中心免费电话 800 820 3622 技术课程 尽收囊中 加入NI培训会员计划投资30 的费用 节省50 的时间 只为您100 的成功 NI公司联系方式 免费咨询电话 8008203622Email china info 知识回顾KnowledgeReview
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号