LabVIEW程序设计进阶解读.pptVIP

  • 23
  • 0
  • 约3.53千字
  • 约 43页
  • 2016-03-07 发布于湖北
  • 举报
养成良好的编程习惯 程序框图不要太大 尽量在一屏中放下,或者至多只需在一个方向上拖动 程序如果实在太大,应考虑使用子VI (将在后续介绍) 添加必要的注释 清晰直观的子VI风格 * 习惯数据流的编程方式 有些顺序帧结构可以用状态机替换 尽量不要用变量代替连线 利用错误簇 错误解析 可以输入错误代码,查看LabVIEW对错误的解释 错误分支 界面设计原则: 清晰直观 Labels (标签) – 简短说明 (程序框图中也会显示) Captions (标题) – 较长的说明 界面设计原则: 清晰直观 如有必要,可增加说明信息 界面设计原则: 不杂乱 不使用过多的字体、色彩 默认的经典黑白灰方案最保险 界面设计原则: 整洁 如果前面板控件较多,可利用Tab控件整理分类 范例程序展示 访问GSD代码展览馆可下载更多炫酷LabVIEW程序 更多LabVIEW编程技巧 参考阮奇桢著《我和LabVIEW——一个NI工程师的十年编程经验》 希望同学们能在后续的Project中,有意识利用这些LabVIEW程序设计技巧,活学活用 LabVIEW学生版和试用版不支持生成安装文件,不过可以告诉学生通过Build Specification来生成 * 这两种方法都是不行的: 第一种: 根据数据流,循环一但开始执行,说明数据流已经进入循环,就不会再读取循环外的数据改变 第二种:根据数据流,只有当进入循环的数据准备好时,循环才会开始执行,所以第一个循环执行完,把布尔数据流输出之后,才会开始执行第二个循环 * 建立之后,可以通过属性对话框设置类型 * 由于有可能发生同时写入的竞争状态, 代码执行的结果四种皆有可能 * 教师可以向学生简要介绍时间数据节点和时间过滤器节点的作用 * 问题: 如何在生产者和消费者循环之间有效地传递数据,并保持同步? * * 左右两边分辨是针对VI的调用节点 和 针对控件的调用节点 * 课时有限,所以该课程重点放在与测控和仪器相关的内容上,LabVIEW学习的重点主要放在编程基础及编程架构方面,至于一些纯LabVIEW编程的专题内容则推荐学生有兴趣自学 * 这是一个反面例子,其实完全可以用While循环+移位寄存器的形式来替换 * 利用错误簇除了可以了解错误信息之外,还可以利用错误簇数据流控制程序执行的顺序,这比利用顺序帧结构控制程序执行看上去简洁 * 后者字号太多就显得比较混乱 * * 声明 本课件供《虚拟仪器技术》、《自动测试技术》等相关课程教师授课使用与参考. 教师可根据课程需要和实际情况在此课件基础上增删内容 本课件版权属NI(中国)公司所有,供中国大陆地区高校教师无偿使用或在课程中引用,但使用或引用之前请联系NI(中国)公司高校市场部获得免费使用授权 (联系方式 zheng.xu@) 本课件不得用于公开出版或其他商业用途. 如需在公开出版物中引用其中部分内容, 请与NI(中国)公司高校市场部联系获得授权 第六讲 LabVIEW程序设计进阶 复习 通过前面的学习和实验,已掌握 LabVIEW开发环境及基本编程和调试方法 简单的数据采集 在LabVIEW中进行信号处理 进阶 LabVIEW项目 通过变量传递数据 典型程序设计架构 属性节点与调用节点 养成良好的编程习惯 界面设计 LabVIEW项目 借助LabVIEW项目 管理文件 (LabVIEW VI或项目相关的其他文件) 生成可执行文件(exe)或安装包 将LabVIEW程序发布到其他目标上 (如实时控制器、FPGA等) 理解: LabVIEW数据流与并行 问题: 如何同时停止两个循环? 变量 解决方案: 利用LabVIEW中的局部变量 LabVIEW中的变量 局部变量 VI内部 全局变量 同一机器上的VI之间, 不一定建立项目 单进程共享变量 可用于需要在不同机器之间共享变量的情况, 需要建立项目 通过网络传输数据的相关内容可通过参考书自学 在LabVIEW项目中建立共享变量 单进程共享变量的使用 变量使用的注意事项 避免不必要的使用(比如仅仅为了减少连线) 初始化变量(避免出现不确定状态) 避免竞争状态 避免同时写入共享资源 例: 右边程序的执行结果? Value = (Value * 5) +2 Value = (Value + 2) * 5 Value = Value * 5 Value = Value +2 常用的LabVIEW程序设计架构 单循环架构 状态机 事件结构 多循环架构 生产者/消费者结构 基于事件的生产者/消费者结构 单循环架构 如前面提到的简单数据采集(连续模拟输入)程序 前面提到的状态机结构 复习: 状态机结构 事件结构 常用于响应前面板控件操作 自定义事件 (自学内容) 前面板 用户动作 程序框图 执行 事件结构的使用 通常

文档评论(0)

1亿VIP精品文档

相关文档