一 [L5] 文件IO
部分 | 字符串格式化 | ||||||
---|---|---|---|---|---|---|---|
%d | 十进制整数 | %b | 二进制 | %o | 八进制 | %x | 十六进制 |
%f | 浮点型 | %e | 科学计数法 | %s | 字符串 | ||
%t | 程序运行相对时间 | %T | 绝对时间 | ||||
%Y | 年 | %y | 两位年份 | %m | 月 | %d | 日 |
% H | 时 | %M | 分 | %S | 秒 |
创建路径
- 固定路径
- 使用 File Dialog VI 弹出窗口选择路径,可以设定起始路径和限制文件拓展名
- 可变路径,file_00.txt, file_01.txt 等等
Application Directory VI 可以返回调用它的VI所在的路径,如果未保存VI(编程过程中),将返回 <Not A Path>。所以下图中,如果程序保存了应该选A,但未说程序有没有保存,所以选D。
ASCII文件
读取文件
-
横向读取,根据属性名查找值:
-
纵向读取,读取一个频道的信息:
注:当search 1D array找不到对应元素使返回-1。当array需要获取第-1个元素是,返回该array属性的默认值(0/空字符串/假 等)。
TDMS文件
结构:
三层结构,各有各的属性
读取文件
查找属性值见5,7;读取频道信息见8
二 [L6] 改进VI
Refactoring
及时重新设计程序,使可读性增高,可维护性增高,防止随时间增加的改变成本。
常见情况:
- VI名字和图表不能清晰地表明作用
- 过于复杂,没有很好地利用LabView的性质,如Auto Indexing 和 Polymorphism
- 重复的代码,需要封装成SubVI
- 杂乱或过大的程序框图
- 中断的data flow,尽量使用data flow,状态机等来编程,而不是各种variable,property node和sequence结构。
- 早期版本不再支持
三 [L7] 制作App
准备文件
-
重新编译一次并保存所有的VI
-
设置VI属性,比如窗口大小,隐藏工具栏等
-
确保路径设置正确
-
添加关闭LabView的功能
Conditional Disable Structure
Build Specifications
可以创建
-
Stand-alone app 独立运行的应用程序 (.exe Executable / .app )
-
installer
-
.NET Interop Assemblies
-
Packed project libraries
-
Shared libraries
-
Source distributions
-
Zip files
独立运行的应用程序
注意:
- LabVIEW开发环境中的代码和创建的EXE应用具有几乎相同的系统需求,
- 内存需求取决于不同的应用大小。
- 应用可以在没有安装LabVIEW的电脑上运行,
- 但运行stand-alone app 和 shared libraries时,必须装有 LabVIEW Run-Time Engine
应用在不同系统中表现不同的原因:
-
文件路径
-
缺少驱动和支持文件
-
内存/CPU速度不同
-
.ini设置文件不同
-
run-time engine不支持部分特性
安装程序
- 需要包括run-time engine
- 需要包括使用到的驱动