Image by xresch from Pixabay

LabView-04

技术与改进

Posted by Yvan on October 16, 2021

一 [L5] 文件IO

image-20211016151028934

部分 字符串格式化            
%d 十进制整数 %b 二进制 %o 八进制 %x 十六进制
%f 浮点型 %e 科学计数法 %s 字符串    
%t 程序运行相对时间 %T 绝对时间        
%Y %y 两位年份 %m %d
% H %M %S    

创建路径

  1. 固定路径
  2. 使用 File Dialog VI 弹出窗口选择路径,可以设定起始路径限制文件拓展名
  3. 可变路径,file_00.txt, file_01.txt 等等

Application Directory VI 可以返回调用它的VI所在的路径,如果未保存VI(编程过程中),将返回 <Not A Path>。所以下图中,如果程序保存了应该选A,但未说程序有没有保存,所以选D。

image-20211016160529157

ASCII文件

读取文件

image-20211016153819021

  1. 横向读取,根据属性名查找值:

    image-20211016153836074

  2. 纵向读取,读取一个频道的信息:

    image-20211016153918736

注:当search 1D array找不到对应元素使返回-1。当array需要获取第-1个元素是,返回该array属性的默认值(0/空字符串/假 等)。

TDMS文件

结构:

三层结构,各有各的属性

image-20211016154252106

读取文件

查找属性值见5,7;读取频道信息见8

image-20211016155806925

二 [L6] 改进VI

Refactoring

及时重新设计程序,使可读性增高,可维护性增高,防止随时间增加的改变成本。

常见情况:

  1. VI名字和图表不能清晰地表明作用
  2. 过于复杂,没有很好地利用LabView的性质,如Auto Indexing 和 Polymorphism
  3. 重复的代码,需要封装成SubVI
  4. 杂乱或过大的程序框图
  5. 中断的data flow,尽量使用data flow,状态机等来编程,而不是各种variable,property node和sequence结构。
  6. 早期版本不再支持

三 [L7] 制作App

准备文件

  1. 重新编译一次并保存所有的VI

  2. 设置VI属性,比如窗口大小,隐藏工具栏等

  3. 确保路径设置正确

  4. 添加关闭LabView的功能

    Conditional Disable Structure

    image-20211016162731336

Build Specifications

可以创建

  1. Stand-alone app 独立运行的应用程序 (.exe Executable / .app )

  2. installer

  3. .NET Interop Assemblies

  4. Packed project libraries

  5. Shared libraries

  6. Source distributions

  7. Zip files

独立运行的应用程序

注意:

  • LabVIEW开发环境中的代码和创建的EXE应用具有几乎相同的系统需求,
  • 内存需求取决于不同的应用大小。
  • 应用可以在没有安装LabVIEW的电脑上运行,
  • 但运行stand-alone app 和 shared libraries时,必须装有 LabVIEW Run-Time Engine

应用在不同系统中表现不同的原因:

  • 文件路径

  • 缺少驱动和支持文件

  • 内存/CPU速度不同

  • .ini设置文件不同

  • run-time engine不支持部分特性

安装程序

  1. 需要包括run-time engine
  2. 需要包括使用到的驱动

image-20211016163351733